ffmpeg se produce un error al abrir el codificador ... y dice que hay * quizás * parámetros incorrectos?

0

Ayer mismo, mi aplicación arrojó un error ffmpeg extraño que no puedo entender:

ffmpeg salió con el código 1: Error al abrir el codificador para el flujo de salida # 0: 0 - quizás parámetros incorrectos como velocidad de bits, velocidad, ancho o altura

El comando ffmpeg fue:

ffmpeg -f image2 -thread_queue_size 2048 -framerate 15.0 -i /var/www/blahblah/frames/%d.jpg -y -an -vcodec libx264 -pix_fmt yuv420p -preset ultrafast -crf 0 -loglevel info /var/www/blahblah/preview.mp4

Básicamente, estoy generando un MP4 basado en cuadros de imagen aquí sin sonido. Usando ffmpeg versión 3.05 aquí:

ffmpeg version 3.0.5-0ubuntu0.16.10.1 Copyright (c) 2000-2016 the FFmpeg developers built with gcc 6.2.0 (Ubuntu 6.2.0-5ubuntu12) 20161005 configuration: --prefix=/usr --extra-version=0ubuntu0.16.10.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --cc=cc --cxx=g++ --enable-gpl --enable-shared --disable-stripping --disable-decoder=libopenjpeg --disable-decoder=libschroedinger --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librubberband --enable-librtmp --enable-libschroedinger --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzvbi --enable-openal --enable-opengl --enable-x11grab --enable-libdc1394 --enable-libiec61883 --enable-libzmq --enable-frei0r --enable-chromaprint --enable-libx264 libavutil 55. 17.103 / 55. 17.103 libavcodec 57. 24.102 / 57. 24.102 libavformat 57. 25.100 / 57. 25.100 libavdevice 57. 0.101 / 57. 0.101 libavfilter 6. 31.100 / 6. 31.100 libavresample 3. 0. 0 / 3. 0. 0 libswscale 4. 0.100 / 4. 0.100 libswresample 2. 0.101 / 2. 0.101 libpostproc 54. 0.100 / 54. 0.100 Hyper fast Audio and Video encoder usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...

¿Puede detectar algún error con el comando anterior que podría causar este error? ¿Y por qué dice ffmpeg? tal vez ? ¿No debería ffmpeg poder decir exactamente qué causó el problema?

Tampoco tiene el resto de la salida ffmpeg desafortunadamente. Porque el evento stderr solo parece imprimir el mensaje de error.

Gracias por cualquier consejo.

Michael Heuberger
fuente
Debe mostrar el resultado de la consola completa desde el comando.
llogan
Tengo miedo, ya no lo tengo (era un archivo temporal). Realmente me gustaría saber lo que podría ser. ¿No puedes al menos decir lo que sospechas cuando miras el comando?
Michael Heuberger
1
Más comúnmente, ese error aparece cuando el ancho o la altura no es un número par.
Gyan
Sí, acabo de comprobar que es este error "altura no divisible por 2 (400x225) Error al abrir el codificador para la salida"
Michael Heuberger
¿que puedo hacer? ¿Es posible decirle a ffmpeg que lo redondee hasta el segundo número par?
Michael Heuberger