¿Qué opciones están disponibles para _losslessly_ recortar video mp4 / m4v en 10.8 o superior?

16

Tengo un video m4v sin DRM que me gustaría editar recortando aquí y allá.

  • QuickTime X ($ 0)

    • Pros: gratis, integrado en OS X
    • Contras: el selector para elegir los tiempos de "inicio" y "fin" no es muy fácil de usar para obtener entradas / salidas precisas
  • iMovie ( $ 15 o gratis si ha comprado una Mac reciente)

    • Pros: gratis
    • Contras: no puede manejar mp4 / m4v directamente, tiene que volver a codificarse [creo]
  • QuickTime 7 Pro ( $ 30 )

    • Pros: puede realizar ediciones muy precisas (al marco)
    • Contras: guarda solo como .mov no .mp4 / .m4v
  • SimpleMovieX ( $ 40 )

    • Pros: afirma ser capaz de hacer esto (aunque probé la demostración y encontré la interfaz de usuario tan terrible que ni siquiera puedo verificar si funciona, y si funciona, si hace algo que QuickTime X no puede)
    • Contras: parece ser 'abandonware' ya que ni siquiera ha visto una actualización menor en más de un año, las revisiones de MacUpdate son casi completamente negativas, desde 2009, incluidas las respuestas lentas o nulas del desarrollador.

¿Hay otras buenas opciones por ahí *? Si es así, ¿cuáles son y cuáles son sus pros / contras?

* Especifiqué "bueno" porque Google es inútil para el tema, ya que los resultados están llenos de sitios que ofrecen "reseñas" de software que por alguna simple coincidencia también se venden. (La mayoría de los sitios y la mayoría del software también parecen muy similares.) Claramente, hay mucha basura por ahí

TJ Luoma
fuente
Nunca he descubierto exactamente cómo, pero a veces iMovie importará archivos mp4 / m4v sin volver a codificar. No sé si hay alguna manera de averiguar con precisión cómo decide, pero puede basarse en opciones específicas de H.264, calidad, duración o incluso solo la pista de audio ... si puede averiguarlo, puede Se la mejor opción.
drfrogsplat
squared5.com/svideo/mpeg-streamclip-mac.html es otra opción que debería haber incluido. Si tuviera que hacer un proyecto hoy, probablemente sería lo que usaría.
TJ Luoma
El códec (H264) es lo que importa. Mientras no vuelva a codificar el m4v, lo está editando sin pérdidas.
njboot
Daniel: ¿hay algún ejemplo de videos MP4 en línea? (¿un video de muestra de la misma cámara o podría publicar aquí sus requisitos para qué contenido / códec codificado específico está dentro del contenedor mp4? ¿Quizás un video de iTunes U sería equivalente?
bmike

Respuestas:

12

iMovie (no sin pérdidas, pero mejor que antes)

iMovie v10 (publicado un tiempo después de que se hizo la pregunta originalmente) ahora maneja mejor más tipos de medios, por lo que evita la re-codificación de importación para la mayoría del contenido H.264 (mp4, m4v, mov, AVHDC, mts, mt2s).

Sin embargo, todavía se volverá a codificar en la exportación, por lo que no puede ser técnicamente sin pérdidas; sin embargo, otra característica nueva es la capacidad de personalizar la calidad de la exportación, que puede estar más cerca de las pérdidas. Sospecho que esta parte de la respuesta puede aplicarse igualmente a otro software de edición de video 'basado en proyectos' (por ejemplo, Premiere o Final Cut) porque creo que generalmente todos se vuelven a codificar en la salida, aunque generalmente son muy fáciles de usar para un recorte preciso.

Personalmente, en general creo que una nueva codificación no es un gran problema, pero entiendo que pediste específicamente una solución sin pérdidas, así que ...

Sin pérdidas (¡pero mucho más complicado!)

Existen limitaciones técnicas en cuanto a la precisión con la que puede cortar un video sin tener que volver a codificar al menos una parte, y básicamente depende de la frecuencia de i-frame. Si cada fotograma es un i-frame, puede cortar en cualquier lugar, pero si son solo cada pocos segundos, entonces solo puede cortar sin pérdida en esos i-frames sin perder contenido o tener que volver a codificar (al menos parte de la stream) para que pueda comenzar con un i-frame.

ffmpeg

Este SO Q&A plantea específicamente la cuestión de cómo cortar entre i-frames usando ffmpeg. No conozco ninguna aplicación GUI para hacer esto, pero básicamente ejecutas un comando como el siguiente:

ffmpeg -i input.m4v -vcodec copy -acodec copy -ss 00:01:20.000 -t 00:37:50.000 output.m4v

Los dos tiempos especificados son inicio y duración , y pueden especificarse como segundos o hh:mm:ss.ss, y el -acodec copyy -vcodec copydecirle a ffmpeg que no vuelva a codificar.

No estoy exactamente seguro de qué sucede si cortas demasiado pronto, pero creo que el video está esencialmente en blanco (o tal vez corrupto, dependiendo del jugador) hasta que encuentre un i-frame. Por lo tanto, es probable que desee encontrar el i-frame más cercano antes de su corte. Esta respuesta resuelve ese problema usando ffprobey awk, aunque un poco incómodo. Esencialmente, utiliza ffprobepara escanear los cuadros y encontrar el fotograma clave más cercano ( flags=K) antes de su punto de corte ideal. La salida completa para cada cuadro del video se puede ver así:

ffprobe -select_streams v -show_frames <INPUT>

La respuesta vinculada proporciona este comando para encontrar un fotograma clave antes de un tiempo específico:

ffprobe -select_streams v -show_frames -v quiet INPUT.mp4 | 
awk -F= ' 
  /pict_type=/ { if (index($2, "I")) { i=1; } else { i=0; } } 
  /pkt_pts_time/ { if (i && ($2 >= 150)) print $2; }  
' | head -n 1

Y finalmente, si realmente necesita cortar en algún lugar entre dos i-frames, puede dividir el video y volver a unirse. Según la información de esta respuesta , debería ser algo como:

ffmpeg -f concat -i list_of_videos.txt -c copy OUTPUT.mp4

Donde list_of_videos.txthay un archivo de texto simple que enumera los archivos que desea concatenar.

Resumen

iMovie es probablemente lo suficientemente bueno para la mayoría de los casos (desde v10), y muy fácil.

ffmpeg puede hacerlo sin pérdidas (o muy cerca de sin pérdidas), con un poco de violín; El nivel de dificultad depende de cuán exigente sea con respecto al punto de partida preciso y la frecuencia de los fotogramas i.

drfrogsplat
fuente
1
Estoy más preocupado por el tiempo involucrado en la codificación (estos son muchos videos de varias horas de duración que me tomaré unos minutos), ¡pero ffmpeg parece prometedor!
Daniel
Ah, está bien, para videos largos es razonablemente probable (dependiendo completamente de la fuente de codificación) que los i-frames estén separados por hasta 10 segundos, por lo que puede ser un problema si desea recortarlos con mayor precisión. La división, la nueva codificación de los primeros <10s y la concatenación deberían funcionar, pero no sería divertido repetir muchas veces.
drfrogsplat
8

Creé una herramienta gráfica que usa ffmpeg para que pueda recortar videos sin pérdidas seleccionando los puntos de inicio y finalización en la línea de tiempo: https://github.com/mifi/lossless-cut

Es de código abierto y multiplataforma.

Mikael Finstad
fuente
1
Esta es una buena herramienta y simplifica enormemente el proceso de usar ffmpeg para editar un video. La interfaz gráfica de usuario ayuda muchísimo. Muy recomendable.
John Mark Mitchell
Fantástica herramienta super simple. @Mikael, ¡gracias por hacerlo!
Michael Zlatkovsky - Microsoft
Desafortunadamente, no funciona con videos 4K MP4 de 10 bits.
Mattis
7

Quicktime 7 Pro ( $ 30 )

Abre tu video. Si desea ver el número de fotograma exacto: en la esquina inferior izquierda, haga clic en el temporizador para cambiar a la pantalla "Número de fotograma".

a la izquierda

Seleccione el punto de inicio (escriba i cuando esté allí) y el punto final (escriba o cuando esté allí).
Seleccione
Mueve un cuadro a la vez con las teclas de flecha; o arrastre los pequeños tiradores en la parte inferior. (Aquí vemos que el final está en el cuadro 1330).

En el menú Editar, elija "Eliminar" para deshacerse de la porción seleccionada, o elija "Recortar" para deshacerse de todo lo demás.
cosecha

Aunque Quicktime 7 guardará solo en formato MOOV, exportará en muchos formatos. Exporte como MPEG-4 (por ejemplo) y evite volver a codificar eligiendo la opción "Pasar a través"

opciones

GEdgar
fuente
Esto responde parte de la pregunta, pero no cómo usar realmente el programa para recortar video.
Daniel
OK, pensé que el OP entendió el resto. Pero lo pondré de todos modos.
GEdgar
Editorial: ¿Quicktime X es tan bueno como Quicktime 7 todavía? No he usado Quicktime X en años.
GEdgar
Me encontré con la misma necesidad y descubrí que QT7 era, con mucho, la forma más fácil y rápida de resolver el problema. apple.stackexchange.com/a/298690/24706
Jonathan van Clute
Desafortunadamente, QT7 (y todas las demás aplicaciones de 32 bits) dejarán de funcionar en MacOS Catalina.
GEdgar
2

Final Cut Pro X ($ 299.99) Este es uno de los mejores programas de edición de video para mac. Con la edición de calidad profesional, puede exportar los archivos en un formato más alto, más bajo o en el mismo formato que antes. Para usar el editor, puede usar la herramienta de cuchilla en el editor no lineal para cortar partes del video o cambiar el sonido envolvente 2.1 a 5.1. También tiene una línea de tiempo multiformato.

DaVinci Resolve 11 : hay tres versiones de este software. DaVinci Resolve Lite ($ 0). Software Davinci Resolve ($ 995), o Davinci Resolve ($ 29,995) Este es uno de los mejores software hasta la fecha. Conocido por sus capacidades de corrección de color, DaVinci Resolve permitirá la edición multiformato, tiene muchas capacidades de transición, fotogramas clave, complementos increíbles, funciones de colaboración y la capacidad de pasar de Mac a Windows. También le permitirá actualizar su sonido envolvente, y le permitirá volver a enmarcar y no crear medios proxy. Para la edición de precisión y para videos que no sean en 3D, la versión lite es para usted. Se recomiendan 8 GB de RAM.

Ambos productos permiten la edición no lineal y la capacidad de actualizar sus medios a un formato sin comprimir para una exportación más rápida a DVD.

bret7600
fuente
1

La aplicación LosslessCut parece muy prometedora.

https://github.com/mifi/lossless-cut

Herramienta multiplataforma simple y ultrarrápida para recortar / cortar sin pérdida de archivos de video y audio. Excelente para ahorrar espacio cortando en gran medida sus archivos de video grandes tomados de una cámara de video, GoPro, drone, etc. Le permite extraer rápidamente las partes buenas de sus videos y descartar muchos gigabytes de datos sin tener que volver a codificar lentamente y, por lo tanto, perder calidad. Es extremadamente rápido porque hace una copia de datos casi directa. Está alimentado por el impresionante ffmpeg (incluido) para hacer el trabajo duro. También presenta algunas otras operaciones sin pérdida en videos.

En la captura de pantalla, he seleccionado 3 regiones de recorte. Cuando presiono E, cada sección se corta y se guarda en su propio archivo de video. Este es un flujo de trabajo extremadamente agradable.

Muy rápido y una mejora del flujo de trabajo potencialmente enorme sobre otras herramientas, pero la interfaz de usuario / usabilidad podría usar algo de trabajo. Herramienta multiplataforma. Desearía que fuera nativo de Mac.

ingrese la descripción de la imagen aquí

pkamb
fuente
0

Debería poder alternar entre cuadros en Quicktime Pro con las teclas de flecha. Ciertamente, no es tan fácil como usar Avid, Final Cut, Premiere, etc., pero es factible. También puedes hacer que tus Marcas se muevan con las teclas de flecha.

Kerlix
fuente