3

IP:192.168.1.XX のビデオ サーバーがあります。JPEG、MPEG-4、または H.264 の 3 つの形式があります。

ビデオサーバーはリアルタイムでビデオ(オーディオ付き)をブロードキャストしています

AFORGE lib でビデオのストリーミングに問題はありませんが、オーディオもストリーミングする必要があります

ビデオサーバーにはいくつかのプロトコルがあります: HTTP、RTSP、RTP、RTCP

ユーザーズ マニュアルによると、RTSP は MPEG-4 (オーディオとビデオ) を取得するために使用する必要があるプロトコルですが、C# で RTSP でストリーミングするものが見つからないため、オーディオとビデオを別々にストリーミングしようとしています。

ポートは次のとおりです。

RTSP: 554 RTP(ビデオ): 5556 RTP(オーディオ):5558 RTCP(ビデオ): 5557 RTCP(オーディオ): 5559

RTPがどのように機能するか、またはビデオサーバーからサウンドを取得する方法を知っている人はいますか?

4

2 に答える 2

1

私はgstreamerを学びます。これは C# で行っているため、Windows を使用していると想定しています。かなり安定した Windows ポートがあり、素敵な .net ラッパーを備えています。Windows を使用していない場合は、gstreamer が最適です。

gstreamer では、次のようなパイプラインを使用する可能性が最も高いでしょう。

your video src -> x264enc or ffenc_mpv4 -> rtph264pay or rtpmp4vpay -> udpsink

your audio src  -> ffenc_aac or preferably a lower latency codec like mULaw -> rtppay -> udpsink

等々。使い方はとても簡単です。実際に rtp セッションを管理したい場合に使用できる、優れた rtpbin もあります。

詳細については、次を参照してください。

http://gstreamer.freedesktop.org/

rtp を実行する方法の良いサンプルを次に示します。

http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-good-plugins/html/gst-plugins-good-plugins-gstrtpbin.html

私はダイレクト ショー フィルターを使用してこの種のことを行いましたが、はるかに複雑です。通常、rtp ペイロードとトランスポートを手動で処理する必要があります (COM の処理は言うまでもありません) が、GStreamer はこれらのメカニズムをすぐに使用できます。

于 2012-05-15T01:37:39.630 に答える
0

https://net7mma.codeplex.com/を使用できます

これはC#メディアサーバーであり、各RtpPacketを取得し、そこから、ソースストリームを停止することなく、とりわけ選択したデコーダーに取得できます。

于 2012-12-14T18:38:00.330 に答える