
Estoy trabajando con transmisiones rtmp y estoy seguro de que las marcas de tiempo no serían monótonas. Entonces, agregué muchas banderas para asegurarme de que eso no sería un problema, pero aún lo es.
El comando que uso es:
ffmpeg -fflags +genpts+igndts+ignidx -rtbufsize 2000M -re -vsync drop -i "rtmp://input" -vsync cfr -async 1 -c copy -f flv "rtmp://output"
Sin embargo, a pesar de todos estos indicadores, me envía toneladas de mensajes
[flv @ 0x563303498580] Non-monotonous DTS in output stream 0:1; previous: 52544, current: 26606; changing to 52544. This may result in incorrect timestamps in the output file.
y además el flujo de salida realmente parece corrupto.
También arroja los siguientes errores:
[NULL @ 0x56330347c380] illegal reordering_of_pic_nums_idc 26
[NULL @ 0x56330347c380] reference overflow 1275 > 15 or 0 > 15
[NULL @ 0x56330347c380] reference count 1 overflow
[NULL @ 0x56330347c380] illegal memory management control operation 32
Todo lo que quiero es que ffmpeg ignore las marcas de tiempo y genere otras nuevas para los flujos de salida. Pero aún así no logré ningún éxito.
Utilizo el último ffmpeg 3.4, los encabezados son los siguientes:
ffmpeg version 3.4-1~16.04.york0 Copyright (c) 2000-2017 the FFmpeg developers
built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.5) 20160609
configuration: --prefix=/usr --extra-version='1~16.04.york0' --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --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-libmp3lame --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --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-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
libavutil 55. 78.100 / 55. 78.100
libavcodec 57.107.100 / 57.107.100
libavformat 57. 83.100 / 57. 83.100
libavdevice 57. 10.100 / 57. 10.100
libavfilter 6.107.100 / 6.107.100
libavresample 3. 7. 0 / 3. 7. 0
libswscale 4. 8.100 / 4. 8.100
libswresample 2. 9.100 / 2. 9.100
libpostproc 54. 7.100 / 54. 7.100