私は問題があります。 私はウェブカメラからffmpegでライブストリーミングをしたいと思います。ffmpegでライブストリーミングの遅延を最小限に抑える方法
- 私はffserverを起動して動作します。私は、このコマンド でストリーミングするためにffmpegのを起動し、それが動作する別の端末から
:私の設定ファイルで
sudo ffmpeg -re -f video4linux2 -i /dev/video0 -fflags nobuffer -an http://localhost:8090/feed1.ffm
私はこのストリームがあります
<Stream test.webm> Feed feed1.ffm Format webm NoAudio VideoCodec libvpx VideoSize 720x576 VideoFrameRate 25 # Video settings VideoCodec libvpx VideoSize 720x576 # Video resolution VideoFrameRate 25 # Video FPS AVOptionVideo flags +global_header # Parameters passed to encoder # (same as ffmpeg command-line parameters) AVOptionVideo cpu-used 0 AVOptionVideo qmin 10 AVOptionVideo qmax 42 #AVOptionVideo quality good PreRoll 5 StartSendOnKey VideoBitRate 400 # Video bitrate </Stream>
を私はストリームを起動します
ffplay http:// 192.168.1.2:8090/test.webm それは動作しますが、私は4秒の遅延があり、私のアプリケーションには不可欠なので、この遅延を最小限に抑えることになります。 ありがとう
あなたはprobesizeの値を小さくしようとすることができます:500000 HTTPを-probesize ffplay '://192.168.1.2:8090/test.webm' SDLを使用して も、最小限の待ち時間でフレームを表示すると言われています(500Kbまで、この値で試してみて、私が間違っていなければデフォルト値は5Mbです。) – pogorskiy
大丈夫です。今私はモバイルブラウザでストリームを見なければならないので、私はffplayを使うことができません。私は設定ファイルを最適化するための提案が必要です。 –
http://ffmpeg.org/sample.html http://fmpeg.org/sample.htmlを読んでください。VideoBufferSizeを試したり、GOPを減らして(帯域幅の使用量を増やしたりできる) –