Hello, we're using ffmpeg ffmpeg version N-90933-g177133a0f4. We have one input multicast that has video and audio. We are transcoding the video into 4 different bitrates along with the one audio into another multicast (that we work with - package with shaka packager for live streams and capture recordings with ffmpeg into a mp4 file).
The reason we're doing 1:1 and not 1:5 multicast is because when capturing recording, its easier to record just one multicast instead of 5 of them and then having to synchronize audio and video. A sample command is: ffmpeg -y -hwaccel_device 3 -hwaccel cuvid -c:v h264_cuvid -vsync 0 -deint 2 -drop_second_field 1 -surfaces 10 -i 'udp://@ 227.10.20.137:1234?fifo_size=10000000&bitrate=12000000' \ -map i:0x6ae -filter:v:0 fps=30,scale_npp=640:360:format=same:interp_algo=lanczos -r:v:0 30 -aspect:v:0 16:9 -g:v:0 96 -vcodec:v:0 h264_nvenc -b:v:0 400K -minrate:v:0 400k -maxrate:v:0 400k \ -map i:0x6ae -filter:v:1 fps=30,scale_npp=720:410:format=same:interp_algo=lanczos -r:v:1 30 -aspect:v:1 16:9 -g:v:1 96 -vcodec:v:1 h264_nvenc -b:v:1 1000K -minrate:v:1 1000k -maxrate:v:1 1000k \ -map i:0x6ae -filter:v:2 fps=30,scale_npp=1280:720:format=same:interp_algo=lanczos -r:v:2 30 -aspect:v:2 16:9 -g:v:2 96 -vcodec:v:2 h264_nvenc -b:v:2 2500K -minrate:v:2 2500k -maxrate:v:2 2500k \ -map i:0x6ae -filter:v:3 fps=30,scale_npp=1920:1080:format=same:interp_algo=lanczos -r:v:3 30 -aspect:v:3 16:9 -g:v:3 96 -vcodec:v:3 h264_nvenc -b:v:3 4500K -minrate:v:3 4500k -maxrate:v:3 4500k \ -map i:0x6ab -ab:a:0 128k -ar:a:0 48k -acodec:a:0 aac -ac:a:0 2 \ -f mpegts "udp://@239.0.0.14:1000?overrun_nonfatal_option=1&pkt_size=1316" In a perfect situation, the output of ffmpeg looks like frame=1088278 fps= 30 q=30.0 q=26.0 q=24.0 q=24.0 size=40809966kB time=10:04:37.26 bitrate=9215.6kbits/s speed= 1x frame=1088295 fps= 30 q=30.0 q=25.0 q=24.0 q=24.0 size=40810654kB time=10:04:37.83 bitrate=9215.6kbits/s speed= 1x What we're aiming on, is to have speed 1x. Not slower. Since we're packaging the output of ffmpeg, we cannot let the ffmpeg be slower then 1x and fall behind live and be slow. What does sometimes happen is that ffmpege is running like frame= 2554 fps= 22 q=23.0 q=13.0 q=15.0 q=16.0 size= 88595kB time=00:01:26.10 bitrate=8429.4kbits/s speed=0.748x frame= 2564 fps= 22 q=21.0 q=14.0 q=16.0 q=17.0 size= 88639kB time=00:01:26.43 bitrate=8401.0kbits/s speed=0.747x that is with a low speed. It is not due to hardware issues, the server we're testing on server that has got 32 core cpu, 380gb ram and 4x Quadro P5000 GPU and we're only transcoding 2 channels like this. It seems rather random whether it's 1x or slower. most of the times, a restart is enough to get back the speed to 1x. Do you please have any idea what are we doing wrong or what we can do to force the ffmpeg to run at 1x speed? Thank you Jakub [image: jacon] *Jakub Vojacek* *Senior developer* *JACON s.r.o* *email:* [email protected] || *web:* http://www.jacon.cz <http://jacon.cz/> _______________________________________________ ffmpeg-user mailing list [email protected] http://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email [email protected] with subject "unsubscribe".
