[FFmpeg-user] Fwd: Fifo muxer with ISMV output results in corrupted video

Louis Geuten louis.geuten at freecaster.com
Tue Jun 23 13:03:55 EEST 2020


Hello,

I'm using ffmpeg to transcode vod or live content using h264 through the
ISMV protocol.
I have had a few issues with networking recently, and decided to try to use
the fifo muxer to decouple the output I/O from the encoding.

However it seems that the video packets produced by the muxer are not
valid. The audio seems fine.
Saving the file on disk allow me to probe it, and it fails with the
following error:

[extract_extradata @ 0x48c9900] No start code is found.
bonjour/Stream(v-0-1280): Invalid data found when processing input

I have attached the output logs for both commands.

The *fifo* command, which produces corrupt video files *(Job-7-Run-36.err)*
/usr/local/bin/ffmpeg -nostdin -loglevel trace -probesize 20M
-analyzeduration 10M -y -re -stream_loop -1 -i kuro_demo.mp4 -map 0:0 -vf
"scale=1280:720" -pix_fmt yuv420p -preset veryfast -tune zerolatency
-x264opts no-sliced-threads:nal-hrd=cbr:scenecut=0:qpmax=45:keyint=25
-minrate 2600K -maxrate 2600K -bufsize 5200K -b:v:0 2600K -flags +cgop -g
25 -keyint_min 25 -r 25.000000 -c:v:0 libx264 -an -bsf:v dump_extra -f fifo
-fifo_format ismv -queue_size 200 -drop_pkts_on_overflow 1
-attempt_recovery 1 -recovery_wait_time 1 -restart_with_keyframe 1
-format_opts
frag_duration=1920000:movflags=isml+frag_keyframe:write_prft=wallclock:fflags=+genpts
bonjour/Stream(v-0-1280) -map 0:1 -c:a:0 aac -b:a:0 96K -ac 2
-metadata:s:a:0 language=und -bsf:v dump_extra -f fifo -fifo_format ismv
-queue_size 200 -drop_pkts_on_overflow 1 -attempt_recovery 1
-recovery_wait_time 1 -restart_with_keyframe 1 -format_opts
fflags=+genpts:frag_duration=1920000:movflags=isml+frag_keyframe:write_prft=wallclock
bonjour/Stream(a-0-und)

The same command without using the fifo muxer: (*Job-7-Run-37.err*)
/usr/local/bin/ffmpeg -nostdin -loglevel trace -probesize 20M
-analyzeduration 10M -y -re -stream_loop -1 -i kuro_demo.mp4 -map 0:0 -vf
"scale=1280:720" -pix_fmt yuv420p -preset veryfast -tune zerolatency
-x264opts no-sliced-threads:nal-hrd=cbr:scenecut=0:qpmax=45:keyint=25
-minrate 2600K -maxrate 2600K -bufsize 5200K -b:v:0 2600K -flags +cgop -g
25 -keyint_min 25 -r 25.000000 -c:v:0 libx264 -an -f ismv -movflags
isml+frag_keyframe -write_prft wallclock -fflags +genpts -frag_duration
1920000 bonjour/Stream(v-0-1280) -map 0:1 -c:a:0 aac -b:a:0 96K -ac 2
-metadata:s:a:0 language=und -f ismv -fflags +genpts -frag_duration 1920000
-movflags isml+frag_keyframe -write_prft wallclock bonjour/Stream(a-0-und)

I am using the latest git HEAD commit
(44ce333f03e5daf7883147938f74018cec287aec) built from source.

Is there some option I am missing to make the output ISMV file correct ?
Or is this a bug in the fifo muxer ?

Thanks for the help.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Job-7-Run-37-0.err
Type: application/octet-stream
Size: 116563 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-user/attachments/20200623/9191a12c/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Job-7-Run-36-0.err
Type: application/octet-stream
Size: 296971 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-user/attachments/20200623/9191a12c/attachment-0001.obj>


More information about the ffmpeg-user mailing list