6

こんにちは、ffserver を使用して Web 経由で動画をストリーミングしたいと考えています。このリンクを参照として取得しました。

今、私が理解できないのは、すべてのビデオをストリーミングするための入力としてフォルダー(ストリーミングしたいすべてのビデオを含む)を渡す方法です。また、時々このフォルダに動的にビデオを追加したいので、ストリーミングが発生するはずです(ダーウィンでの動作のように)。Darwin は iOS をサポートしていないため、使用できません。

提案をお願いします。

これを行うことができる他のオープンソースツールはありますか?

4

1 に答える 1

0

私はこれのためにbashスクリプトを書きました.ubuntu 16で動作しています.うまくいけば、他の誰かがそれほどひどい言語でそれを書くことができます.スクリプトは次のとおりです.

echo -e "HTTPPort 8090\nHTTPBindAddress 0.0.0.0\nMaxHTTPConnections 2000\nMaxClients 1000\nMaxBandwidth 1000\nCustomLog -\n<Stream stat.html>\nFormat status\n</Stream>"
num=1
for i in *.mp3; do
echo -e "<Stream \"$(urlencode $i)\">\nFile \"$(pwd)/$i\"\nFormat mp2\nAudioCodec libmp3lame\nAudioBitRate 64\nAudioChannels 1\nAudioSampleRate 44100\nNoVideo\n</Stream>"
done

これを、提供するフォルダーに bash スクリプトとして保存します。次のように参照します。

./gen_ffserver_conf.sh

mp3 用にハード コードされているため、別の形式にするには、私のエコーを並べ替える必要があります。サーバーを次のように実行します。

ffserver -f <(bash -e ./gen_ffserver_conf.sh)

URLエンコーディング用のパッケージをインストールする必要がありました:

sudo apt install gridsite-clients

(もちろん、ffmpeg パッケージには ffserver も必要です)

次の場所に移動して、ファイルをストリーミングします。

http://<ip address of streaming server>:8090/stat.html

urlencoded 値をクリックします (クロムを使用)。これにより、ストリームが開き、再生が開始されます。

説明: ffserver はワイルドカードが好きではないか、少なくとも私はそれを理解できなかったので、サーバー内の各ファイルのエントリを作成しているだけです。Urlencoding は面倒ですが、統計ページのリンクが適切に機能するために必要です。

于 2018-08-12T00:42:47.753 に答える