-fflags nobuffer는 초기 속도에 영향을 안주는 것 같네..

probesize integer (input)

Set probing size in bytes, i.e. the size of the data to analyze to get stream information. A higher value will enable detecting more information in case it is dispersed into the stream, but will increase latency. Must be an integer not lesser than 32. It is 5000000 by default.

[링크 : https://www.ffmpeg.org/ffmpeg-formats.html#Format-Options]

-r[:stream_specifier] fps (input/output,per-stream)

Set frame rate (Hz value, fraction or abbreviation).

As an input option, ignore any timestamps stored in the file and instead generate timestamps assuming constant frame rate fps. This is not the same as the -framerate option used for some input formats like image2 or v4l2 (it used to be the same in older versions of FFmpeg). If in doubt use -framerate instead of the input option -r.

As an output option, duplicate or drop input frames to achieve constant output frame rate fps.

[링크 : https://ffmpeg.org/ffmpeg.html#Video-Options]

Also setting -probesize and -analyzeduration to low values may help your stream start up more quickly (it uses these to scan for "streams" in certain muxers, like ts, where some can appears "later", and also to estimate the duration, which, for live streams, the latter you don't need anyway). This should be unneeded by dshow input.

Reducing cacheing at the client side can help, too, for instance mplayer has a "-nocache" option, other players may similarly has some type of pre-playback buffering that is occurring. (The reality is mplayers -benchmark option has much more effect). 

[링크 : https://trac.ffmpeg.org/wiki/StreamingGuide#Latency]

    [링크 : https://stackoverflow.com/.../how-to-minimize-the-delay-in-a-live-streaming-with-ffmpeg]



ffmpeg -h full | grep 'analyzeduration\|probesize'

-probesize         <int>        .D.... set probing size (from 32 to INT_MAX)

-analyzeduration   <int>        .D.... specify how many microseconds are analyzed to probe the input (from 0 to INT_MAX) 

[링크 : https://lists.ffmpeg.org/pipermail/ffmpeg-user/2013-March/014297.html]

고정적으로 5초 이상 잡히는건 이 녀석 때문이었던 듯?

analyzeduration integer (input)

Specify how many microseconds are analyzed to probe the input. A higher value will enable detecting more accurate information, but will increase latency. It defaults to 5,000,000 microseconds = 5 seconds. 

[링크 : https://www.ffmpeg.org/ffmpeg-all.html]


-probesize 32 -analyzeduration 0 


'프로그램 사용 > ffmpeg & ffserver' 카테고리의 다른 글

ffmpeg h264 encoding 옵션  (0) 2019.02.22
ffmpeg으로 비디오 비트레이트 바꾸기  (0) 2019.02.22
ffmpeg 레이턴시 관련 옵션 조사  (0) 2018.12.16
ffmpeg / ffplay cli interactive interface  (0) 2018.11.30
ffmpeg concat  (0) 2018.11.05
ffmpeg concat  (0) 2018.10.10
Posted by 구차니

댓글을 달아 주세요