@nuttyaboutnatty Los mensajes "en desuso" se aplicaron solo a los " ffmpeg" viejos, muertos, falsos "de la bifurcación de Libav, no ffmpegde FFmpeg que regresó en 15.04.
Le -1indicará a ffmpeg que elija automáticamente la altura correcta en relación con el ancho proporcionado para preservar la relación de aspecto. -1también se puede usar para el ancho si proporciona una altura determinada.
Una desventaja de la escala cuando se utiliza libx264es que este codificador requiere incluso los valores y la escala puede elegir automáticamente un valor impar que resulta en un error: width or height not divisible by 2. Puede indicarle a la escala que elija un valor par para una altura dada (720 en este ejemplo):
scale="trunc(oh*a/2)*2:720"
... o un ancho dado (1280 en este ejemplo):
scale="1280:trunc(ow/a/2)*2"
Tenga en cuenta que su compilación ffmpeg podría quejarse de no reconocer -cu -filteropciones. También puede no ser compatible scale. En ese caso, debe usar un ffmpeg más nuevo, que puede descargar como una compilación estática, o compilarlo usted mismo .
Lo intenté ffmpeg -i output.mkv -filter:v scale=720:-1 -acodec copy -threads 12 output_shrink.mkv(en la versión ffmpeg 0.8.6-6: 0.8.6-0ubuntu0.12.10.1) pero obtuve el errorUnrecognized option 'filter:v'
doug65536
66
Después de buscar en la página de manual de ffmpeg varias veces, encontré que en lugar de -filter:v, la opción parece haber cambiado a -vf.
doug65536
2
@ doug65536 -filter:vy -vfambos están bien. La versión de Ubuntu que estaba usando está rota y desactualizada: no es realmente FFmpeg ffmpeg, sino el binario suministrado por Libav (la bifurcación FFmpeg) con el mismo nombre.
slhck
1
@MightyPork probablemente su compilación ffmpeg está desactualizada, ¿qué problemas suceden? De todos modos, esto realmente me ayudó (con ffmpeg version 2.4.10) a reducir el tamaño de algunos videos masivos para liberar espacio, ¡gracias!
Wilf
44
'-c' es la abreviatura de -codec, ': a' especifica la (s) secuencia (s) de audio, 'copia' especifica el códec de copia, que copia la (s) secuencia (s) (en este caso, audio) sin volver a codificar. Básicamente, las secuencias de audio pasarán. Esto es común cuando solo está manipulando la transmisión de video.
jimhark
14
Utilizo los siguientes comandos para reescalar videos e imágenes. Para ancho y altura fijos -
ffmpeg
puede estar en desuso, ver aquí y aquíffmpeg
" viejos, muertos, falsos "de la bifurcación de Libav, noffmpeg
de FFmpeg que regresó en 15.04.Respuestas:
El ejemplo más básico es este:
El uso del
scale
filtro proporcionará más flexibilidad:Le
-1
indicará a ffmpeg que elija automáticamente la altura correcta en relación con el ancho proporcionado para preservar la relación de aspecto.-1
también se puede usar para el ancho si proporciona una altura determinada.Una desventaja de la escala cuando se utiliza
libx264
es que este codificador requiere incluso los valores y la escala puede elegir automáticamente un valor impar que resulta en un error:width or height not divisible by 2
. Puede indicarle a la escala que elija un valor par para una altura dada (720 en este ejemplo):... o un ancho dado (1280 en este ejemplo):
Tenga en cuenta que su compilación ffmpeg podría quejarse de no reconocer
-c
u-filter
opciones. También puede no ser compatiblescale
. En ese caso, debe usar un ffmpeg más nuevo, que puede descargar como una compilación estática, o compilarlo usted mismo .fuente
ffmpeg -i output.mkv -filter:v scale=720:-1 -acodec copy -threads 12 output_shrink.mkv
(en la versión ffmpeg 0.8.6-6: 0.8.6-0ubuntu0.12.10.1) pero obtuve el errorUnrecognized option 'filter:v'
-filter:v
, la opción parece haber cambiado a-vf
.-filter:v
y-vf
ambos están bien. La versión de Ubuntu que estaba usando está rota y desactualizada: no es realmente FFmpegffmpeg
, sino el binario suministrado por Libav (la bifurcación FFmpeg) con el mismo nombre.ffmpeg version 2.4.10
) a reducir el tamaño de algunos videos masivos para liberar espacio, ¡gracias!Utilizo los siguientes comandos para reescalar videos e imágenes. Para ancho y altura fijos -
y si desea conservar la relación de aspecto, simplemente asigne una altura de -1 y se redimensionará automáticamente según el ancho:
Si desea escalar en función del tamaño de entrada, p. Ej. digamos que reduzca el ancho / alto que la mitad puede hacer:
NOTA :
La construcción estática se puede descargar desde - https://johnvansickle.com/ffmpeg/
Documentación: https://ffmpeg.org/ffmpeg.html#filter_005foption
fuente