8

私がやろうとしているのは、.flvメディアファイルをRTMPサーバーに公開して、サブスクライバーがそれを視聴できるようにすることです。いくつかのサブスクライバー(oflaDemo)とでストリームを表示するためにテストしていffplayます。

問題は、ffmpegが5分の.flvファイルをほぼ20秒でサーバーに公開し、この20秒でストリームがサブスクライブに表示されますが、その後は切断されることです。私が使用するコマンドは次のとおりです。

ffmpeg -i file.flv -re -acodec copy -vcodec copy -f flv "rtmp://localhost/oflaDemo/aaa live=1"

5分ファイルを5分で強制的ffmpegにストリーミングする方法やその他の解決策を教えてください。

ありがとう。

4

1 に答える 1

18

私はそれを解決しました

-reこれを最初のパラメータにする必要があります。

ffmpeg -re -i file.flv -acodec copy -vcodec copy -f flv rtmp://localhost/oflaDemo/a3

ffmpegの公式ドキュメントから

一般的な構文は次のとおりです。

ffmpeg [global options] [[infile options][‘-i’ infile]]... {[outfile options] outfile}...

-re (入力)

ネイティブフレームレートで入力を読み取ります。主にグラブデバイスのシミュレーションに使用されます。デフォルトでは、ffmpegは入力をできるだけ速く読み取ろうとします。このオプションは、入力の読み取りを入力のネイティブフレームレートまで遅くします。

ドキュメントには、-reオプションは入力フラグであると記載されています。これは、フラグinfile optionsの直前にある必要があることを意味します-i

于 2012-10-20T18:26:49.237 に答える