[FFmpeg-user] Reducing end to end streaming latency (bmd->udp->bmd) < 0.5s
Carl Eugen Hoyos
cehoyos at ag.or.at
Fri Mar 21 11:45:58 CET 2014
Anusha Balan <Anusha.Balan <at> intusurg.com> writes:
> I managed only about 1.5 - 2s which is extremely high for
> the interactive application for which I intend to use this.
> From this article, it seems feasible that with a dedicated
> and powerful what I mentioned above is possible.
> (Given it was 2010, when it was written)
Iirc, the article only covers x264 (not FFmpeg).
> ./bmdcapture -C0 -m11 -V4 -v -F nut -f pipe:1 |
> ffmpeg -i - -vcodec libx264 -preset ultrafast -crf 22
Isn't this missing -probesize and -analyzeduration?
> -pix_fmt yuv420p -tune zerolatency -threads 8 -keyint_min 5
> -maxrate 800000 -bufsize 26666 -intra-refresh 1 -f mpegts
(FFmpeg console output missing.)
> ffmpeg -i udp://10.0.0.2:6666 -probesize 100
> -analyzeduration 50 -f decklink -s 1920x1080 -fflags nobuffer
> -r 30000/1001 -g 10 -pix_fmt uyvy422 -an "DeckLink 4K Extreme"
Did you test where the latency comes from?
How does bmdcapture | ffmpeg -i - -f xv / opengl / sdl work?
What about ffmpeg -i rawfile -f decklink?
Did you test a pipe between two ffmpeg processes on one computer?
Any reason you don't set buffer_size (which is probably the
reason - or one of the reasons - for your delay)?
More information about the ffmpeg-user