¿Cómo convierto un archivo MKV a H.264/AVC con una resolución de 640x360 usando FFMPEG?

¿Cómo convierto un archivo MKV a H.264/AVC con una resolución de 640x360 usando FFMPEG?

Tengo un vídeo MKV que quiero poner en mi móvil (un Nokia XM 5800) y basado enestePuedo reproducir vídeos en formato H.264/AVC. Basado en quehe leído, el contenedor debe ser MP4 y puedo codificarlo usando el códec XVID. El problema es que no sé cómo.

Como uso Linux (Arch), me preguntaba si puedo lograr esto usando FFMPEG. Si es así, por favor explíqueme cómo hacer esto. Quiero que el vídeo utilice el tamaño de pantalla nativo del dispositivo, 640x360, con una calidad de vídeo y audio razonablemente buena.

Si también puede sugerir otras herramientas que lo hagan más fácil, sugiera.

También prefiero las herramientas de línea de comandos a las de GUI.

Respuesta1

Avidemuxtiene una útil interfaz GUI que le permitirá cambiar el tamaño y transcodificar. mencoder(parte dereproductor MP) también puede hacerlo, pero también es una línea de comando.

Creo que la ffmpeglínea que quieres es algo como esto:

ffmpeg -s 640x360 -i in.mkv -vcodec libx264 -o new.mp4
  • -sestablece el tamaño de salida
  • -ies el archivo de entrada
  • -vcodecestablece el códec de salida (consulte ffmpeg -codecsla lista completa)
  • -oestablece el nombre del archivo de salida (consulte ffmpeg -formatsla lista completa)

Respuesta2

Dividir sin volver a codificar:

ffmpeg -ss [start-time] -t [length-time] -i [in-file-path] \
       -vcodec copy -acodec copy [out-file-path]

Ejemplo:

ffmpeg -ss 00:00:00.00 -t 00:10:00.00 -i "/some/path/to/file.mp4" \
       -vcodec copy -acodec copy "/some/path/to/new file.mp4"

información relacionada