I am transcoding live multicast using hardware (decoding using nvidia and 
encoding using nvidia (h264_nvenc) and going out multicast at fixed framerate 
and constant bitrate. Normally the output is about 3-5 seconds behind the input.

I have some streams that cause the output to eventually get minutes behind the 
input. I've narrowed down the input buffering being the culprit of holding a 
very large buffer of input frames in these situations.

Here is my command:

ffmpeg -y -threads 2 -nostats -nostdin -loglevel verbose -progress pipe:1 
-probesize 5M -filter_threads 4 -threads 2 -re -fflags +genpts -fflags 
discardcorrupt -hwaccel_device 0 -extra_hw_frames 2 -hwaccel_output_format cuda 
-hwaccel cuda -heavy_compr 1 -thread_queue_size 512 -i 
"udp://@225.105.0.27:10102?fifo_size=1073440&buffer_size=2129920&timeout=800000"
 -autoscale 0 -threads 2 -filter_complex 
"[0:v:0]fps=30000/1001,yadif_cuda,scale_npp=1920:1080:interp_algo=super:format=yuv420p
 [vout]" -map "[vout]" -map "0:a:0" -map 0:d? -filter:a:0 
"aresample=async=10000,volume=1.00"  -c:a:0 aac  -threads 2 -ac:a:0 2 -ar:a:0 
48000 -b:a:0 192k -flush_packets 0 -c:v h264_nvenc -b:v 6000k -minrate:v 6000k 
-maxrate:v 6000k -bufsize:v 12000k -a53cc 1 -tune ll -zerolatency 1 -cbr 1 
-forced-idr 1 -strict_gop 1 -threads 2 -profile:v high -level:v 4.2 -bf:v 0 
-g:v 15  -f fifo -drop_pkts_on_overflow 1 -attempt_recovery 0 -fifo_format 
mpegts -format_opts muxrate=6800440:pes_payload_size=1528 "udp://@225.
 105.0.65:10102?pkt_size=1316&bitrate=6800440&burst_bits=10528&ttl=64"

I suspect the input stream does something odd and causes ffmpeg to buffer 
frames and it gets slowly behind. I would like to make ffmpeg drop frames if 
possible, instead of forever buffering frames and getting further and further 
out of sync.

Is there anything anyone can recommend to force ffmpeg to stop buffering input 
frames?
_______________________________________________
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to