¿Qué opciones están disponibles para recortar videos mp4/m4v sin pérdidas en macOS?

Tengo algunos videos 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 las horas de 'inicio' y 'finalización' no es muy fácil de usar para obtener una entrada/salida precisa
  • iMovie ( Gratis si compraste una Mac reciente)

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

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

    • Pros: dice poder hacer esto (aunque probé la demostración y encontré la interfaz de usuario tan terrible que ni siquiera puedo verificar si funciona, y si lo hace, 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 ventajas y desventajas?

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

Nunca supe exactamente cómo, pero a veces iMovie importa archivos mp4/m4v sin volver a codificarlos. 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 en la pista de audio... si puede averiguarlo, puede ser la mejor opción.
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.
El códec (H264) es lo que importa. Mientras no vuelva a codificar el m4v, lo editará sin pérdidas.
Daniel: ¿hay videos MP4 de muestra en línea? (ya sea un video de muestra de la misma cámara o ¿podría publicar aquí sus requisitos para qué contenido/códec codificado específico hay dentro del contenedor mp4? ¿Quizás un video de iTunes U sería equivalente?
El Avidemux gratuito y de código abierto - fixounet.free.fr/avidemux - es la herramienta perfecta para esto.
Avidemux también es bueno para cortar secciones del medio del video, así como también de los extremos. Sin embargo, en cada caso solo puede cortar con seguridad en i-frames. (A diferencia de QuickTime Player, que puede iniciarse y detenerse en cualquier cuadro. No estoy seguro de cómo; supongo que MP4 debe permitirle almacenar el i-frame anterior/siguiente y todos los cuadros intermedios, pero iniciar/detener la reproducción en uno del último.)

Respuestas (7)

Creé una herramienta gráfica que usa ffmpeg para permitirle 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.

Esta es una buena herramienta y simplifica enormemente el proceso de usar ffmpeg para editar un video. La interfaz gráfica de usuario ayuda mucho. Muy recomendable.
Fantástica herramienta súper simple. @Mikael, ¡gracias por hacerlo!
Desafortunadamente, no funciona con videos 4K MP4 de 10 bits.
Pero la tienda de aplicaciones dice que debe pagar dinero por ella. ¿Hay alguna forma en que los usuarios de Mac también puedan obtenerla gratis como lo hacen en Ubuntu?
Puede descargarlo gratis en GitHub: github.com/mifi/lossless-cut/releases

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

iMovie v10 (lanzado algún tiempo después de que se hiciera la pregunta originalmente) ahora maneja mejor más tipos de medios, por lo que evita la recodificación de importación para la mayoría del contenido H.264 (mp4, m4v, mov, AVHDC, mts, mt2s).

Sin embargo, aún 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 ser casi sin pérdidas. Sospecho que esta parte de la respuesta puede aplicarse igualmente a otro software de edición de video 'impulsado por proyectos' (por ejemplo, Premiere o Final Cut) porque creo que generalmente todos vuelven a codificar en la salida, aunque generalmente son muy fáciles de usar para un recorte preciso.

Personalmente, generalmente creo que una sola recodificación no es un gran problema, pero entiendo que solicitó 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 del mismo, y básicamente depende de la frecuencia del i-frame. Si cada cuadro es un i-frame, puede cortar en cualquier lugar, pero si solo son cada pocos segundos, solo puede cortar sin pérdidas en esos i-frames sin perder contenido o tener que volver a codificar (al menos parte del stream) para que pueda comenzar con un i-frame.

ffmpeg

Esta 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 se pueden especificar como segundos o hh:mm:ss.ssy -acodec copydecirle -vcodec copya ffmpeg que no vuelva a codificar.

No estoy exactamente seguro de qué sucede si corta demasiado pronto, pero creo que el video está esencialmente en blanco (o tal vez corrupto, según el reproductor) hasta que encuentra un i-frame. Así que probablemente querrás encontrar el i-frame más cercano antes de tu corte. Esta respuesta resuelve ese problema usando ffprobey awk, aunque un poco incómodo. Esencialmente, lo usa ffprobepara escanear los fotogramas 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 unirlo. 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

¿Dónde 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 casi sin pérdidas), con un poco de manipulación; el nivel de dificultad depende de qué tan exigente sea con el punto de partida preciso y la frecuencia de los i-frames.

Lo que más me preocupa es el tiempo que implica volver a codificar (estos son muchos videos de varias horas de los que me estoy tomando unos minutos), ¡pero ffmpeg parece prometedor!
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 recodificación de los primeros <10 y la concatenación deberían funcionar, pero no sería divertido repetirlos muchas veces.

Quicktime 7 Pro ( $30 )

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

abajo a la izquierda

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

En el menú Editar, elige "Eliminar" para deshacerte de la parte seleccionada, o elige "Recortar" para deshacerte de todo lo demás.
cultivo

Aunque Quicktime 7 solo guardará 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

Esto responde parte de la pregunta, pero no cómo usar el programa para recortar videos.
OK, pensé que el OP entendió el resto. Pero lo pondré de todos modos.
Editorial: ¿Quicktime X ya es tan bueno como Quicktime 7? No he usado Quicktime X durante años.
Me encontré esencialmente 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
Desafortunadamente, QT7 (y todas las demás aplicaciones de 32 bits) dejarán de funcionar en MacOS Catalina.

La aplicación LosslessCut parece muy prometedora.

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

Herramienta multiplataforma simple y ultrarrápida para recortar/cortar archivos de video y audio sin pérdidas. Excelente para ahorrar espacio mediante el corte aproximado de archivos de video grandes tomados de una cámara de video, GoPro, dron, etc. Le permite extraer rápidamente las partes buenas de sus videos y descartar muchos gigabytes de datos sin 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 increíble ffmpeg (incluido) para hacer el trabajo pesado. También presenta algunas otras operaciones sin pérdidas 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 potencialmente enorme del flujo de trabajo con respecto a otras herramientas, pero la interfaz de usuario / usabilidad podría mejorar. Herramienta multiplataforma. Ojalá fuera nativo de Mac.

ingrese la descripción de la imagen aquí

¿No es exactamente la misma respuesta que esta ? Me gusta que haya agregado su experiencia, pero tal vez sea mejor editar la respuesta original e incluirla allí.

Final Cut Pro X ($299.99) Este es uno de los mejores programas de edición de video para Mac. Con una edición de calidad profesional, puede exportar los archivos en un formato superior, inferior o en el mismo formato que antes. Para usar el editor, puede usar la herramienta Blade 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 programas hasta la fecha. Conocido por sus capacidades de corrección de color, DaVinci Resolve permitirá la edición de múltiples formatos, tiene muchas capacidades de transición, fotogramas clave, increíbles complementos, funciones de colaboración y la capacidad de pasar de Mac a Windows. También le permitirá actualizar su sonido envolvente, y permite volver a enmarcar, y no crea medios proxy. Para la edición de precisión y para videos que no sean 3D, la versión liviana 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.

Debería poder alternar entre fotogramas 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 puede hacer que sus Marcas se muevan con las teclas de flecha.

No estoy 100% seguro de si esto es sin pérdidas, pero (en Big Sur, no sé sobre Catalina y antes), pero si simplemente desea recortar el video, Quick Look tiene un recortador de video simple que le permite reemplazar video o crear un nuevo video en el formato original.