
Raspberry Piでビデオをストリーミングしたいので、次のようにします。
raspivid ... -o - | nc -l -k 4242
しかし、問題は、誰かが接続されるまでパイプまたはnc
データがバッファリングされていることです。しかし、私はしたくありません。誰かが接続されるまで、すべてのデータを削除したいと思います。
答え1
データが流れる前にクライアントが接続する必要があるリスニングTCPソケットを設定しました。ただし、UDPソケットを設定しても、ストリームの解決方法を定義するメタデータなしでクライアントストリーミング接続で終わることがあります。
メタデータを頻繁に定期的に提供するプロトコルがある場合は、UDPソケットを試すことができます。私のバージョンにはnc
そのオプションはありませんが-k
(少なくとも)2つの異なるバージョンが利用可能であることがわかっているので、テストされたコマンドラインの例を提供することはできません。
ビデオをストリーミングするには、特別に作成されたソフトウェアを使用する必要があります。これは複雑な技術領域(および特許が多いため複雑な法的領域)であるため、単純なコンテンツ(例えば、MJPEG)を送信しない限り、単純な解決策(例えばnetcat
。
ソフトウェアアプリケーションのいくつかの例は、以下に見ることができる。ビデオネットワーク、アイスキャスト、露天採掘場またはレッド5。
実際に読んでください。出荷書類ビーチraspivid
xinetd
または、提供されたリスナーを使用systemd
して着信接続を処理し、raspivid
TCP接続が確立されたら起動できるようです。それでもトラフィック制御やリアルタイム帯域幅管理はできませんが、制御されたネットワークでは目標を満足させることができます。