問題タブ [rtp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
10762 参照

android - Android からビデオをストリーミングする

メディアプレーヤーで視聴する必要がある Android フォンからビデオをストリーミングしようとしています。私はhttp://www.mattakis.com/blog/kisg/20090708/broadcasting-video-with-android-without-writing-to-the-file-systemを見てきましたが、それ以来行き止まりのようですストリーミング可能な形式ではなく、生のファイル データを送信します。

次に、より具体的には、SipDroid のコードをいくつか使用してみました。UDP でストリームを提供する VideoCamera.java、RtpPacket.java、および RtpSocket.java の一部ですが、これらは mplayer では再生できません (コーデックを検出できません)。Wireshark は、これが RTP パケットではなく UDP パケットであることを示しているため、何かが欠落している可能性があります。

私はちょっと立ち往生しています、このバンプを乗り越える方法について何か提案はありますか?

0 投票する
1 に答える
517 参照

silverlight - ネットワークを介した Silverlight ビデオ/オーディオ会議用の独自のリアルタイム トランスポート プロトコルをプログラムする方法は?

こんにちは、TCP を使用してオーディオ/ビデオ会議用の Silverlight アプリケーションを作成しました。ただし、ネットワーク経由でストリーム バイトを転送する際の速度が遅いためです。状況をグーグルで調べていると、Silverlight の RTP などのリアルタイム トランスポート プロトコルがサポートされていないことがわかりました。それで、誰かが私を案内したり、このタスクを実行するためのリンクを参照したりできますか? 事前に感謝します。提案やヘルプをいただければ幸いです...

0 投票する
1 に答える
381 参照

ruby - Ruby RTP 管理

RubyでRTP(オーディオストリーム)管理を可能にするgemはありますか? ありがとう

0 投票する
1 に答える
4551 参照

h.264 - H264 RTP パケットのデコード (およびレンダリング)

H264 ストリームの RTP パケットをディスクに保存するコードを書きました。RTP パケットから H264 データを抽出し、そのデータをどこかにレンダリングしてテストし、コードが機能するかどうかを確認できるようにしたいと考えています。これどうやってするの?

gstreamer が手を差し伸べてくれると思います。パケットをディスク上のファイルに保存する場合、gstreamer を使用してどこかで抽出、デコード、およびレンダリングすることは可能でしょうか? または、h264 ビデオ ファイルを作成して再生し、中身を確認しますか? ありがとう!

0 投票する
1 に答える
1272 参照

c++ - プロキシ サーバー経由で RTP パケットを送信する方法を登録する

私はpjproject1.6を使用しており、sipパケットを介してsipパケットをプロキシサーバーに送信し、rtpパケットを送信するか、サーバーを通過できませんでした。したがって、音声は両側で聞こえませんでした。

プロキシ サーバーをチェックインしました。rtp プロキシが実行されており、プロキシ サーバーが 200 Ok を送信すると、PJSIP からの SDP パケットにプロキシ サーバーの IP アドレスが含まれます。

それでもサウンド/メディアは PJMedia クライアントと受信者の両方に送信されません。私は同じシナリオを yate クライアントでテストしました。オーディオ/メディアは送信側と受信側の両方で聞こえます。

PJSIP から注意を払う必要があるその他の構成/コードの変更はありますか?

0 投票する
2 に答える
2831 参照

c - RTP パケットのソケットの問題

C で RTP パケット メトリック アナライザーを構築しようとしていますが、最終的に奇妙な問題が発生しました。公開しやすいように実装の詳細を削減しています。

RTP パケットは UDP に含まれているため、ソケットは次のパラメーターで初期化されます。

これらのパラメーターにバインドされます。

マルチキャスト グループに参加しました。

受信元のマルチキャスト グループを次のように設定します。

recvfrom 関数でパケットを受信する:

マルチキャストグループ宛ての標準UDPパケットを受信できます224.1.0.1が、RTPパケットは最初は受信されませんが、再度送信するとうまくいきます。

シナリオ 1:

n 個の UDP パケットを送信しました: 正しく受信されました

シナリオ 2:

n RTP パケットを送信します: 何も起こりません

同じn 個のRTP パケットを再度送信します: それらは正しく受信されます

n個のパケットが何であれ...とても奇妙ですが本当です。

編集: アナライザー側でスニファーを実行していて、両方のパケット バーストが表示されるため、メッセージはアナライザー側に到着します。送信者に関連する問題ではありません。

質問:

RTPシナリオとUDPシナリオのコードはまったく同じです(読み取り:同じ実行可能ファイル)。私は何を間違っていますか?

補足:

RTP 管理ライブラリまたは高レベルの RTP ライブラリの提案はノーノーです。分析する必要があるメトリックのために、このレベルの抽象化で作業する必要があります。

また、ネットワーク メトリック アナライザーはダメです。自分のコードでこれを行う必要があります。

前もって感謝します。

0 投票する
8 に答える
131796 参照

streaming - ストリーミングサーバーのRTPとRTSPの違いは何ですか?

ストリーミングサーバーの開発を考えていますが、次の質問があります。RTSP(URLの例:)rtsp://192.168.0.184/myvideo.mpgまたはRTP( URLの例:)を実行してくださいrtp://192.168.0.184

私が理解しているように、RTSPサーバーは主に、すでに存在する、つまりライブではないファイルのストリーミングに使用されます。RTPサーバーはブロードキャストに使用されます。

私が間違っていたら誰かが私を訂正します、私は正しいですか?

ライブコンテンツをパソコンの画面で放送するサーバー、つまりストリーミング放送時に表示されるサーバーを開発したい。

0 投票する
1 に答える
2264 参照

rtsp - ブラウザへの rtp および rtsp プレーヤーの統合

Web ブラウザーで音楽をストリーミングする Web サービスを構築しようとしています。サーバーを実行して、「hello world」という Web ページを開きました。問題は、rtp セッションを開始するために Web ページに入力する必要があるものを理解していないことです。開いている Web ページにある種のプレーヤーが必要であることは理解していますが、そのプレーヤーを作成する方法や Web ページに表示する方法がわかりません。誰かが私を助けることができますか?

0 投票する
3 に答える
3505 参照

linux - libpcap setfilter() 関数とパケット損失

これは@stackoverflowでの最初の質問です。

私は一部の VoIP 運用サーバー用の監視ツール、特に Perl の pcap ライブラリを使用して特定のパターンに一致するすべてのトラフィック (VoIP 呼び出し) をキャプチャできるスニフ ツールを作成しています。

「udp」などの貧弱な選択的フィルターを使用して、アプリのコードですべてのフィルタリングを行うことはできません。これは、トラフィックが多すぎて、カーネルがパケット損失の報告に対処できないためです。

次に行うことは、キャプチャ中に可能な限り選択的なフィルターを繰り返し構築することです。最初に、(すべての) SIP シグナリング トラフィックと IP フラグメントのみをキャプチャします (パターン マッチは、どのような場合でもアプリケーション レベルで実行する必要があります)。次に、RTP に関する情報を SIP パケットに見つけたら、「or」句を追加します。特定の IP と PORT を含む実際のフィルター文字列を取得し、setfilter() でフィルターを再設定します。

したがって、基本的には次のようなものです。

  1. 初期フィルター : "(udp and port 5060) or (udp and ip[6:2] & 0x1fff != 0)" -> すべての SIP トラフィックと IP フラグメントをキャプチャします

  2. 更新されたフィルター: "(udp and port 5060) or (udp and ip[6:2] & 0x1fff != 0) or (host IP and port PORT)" -> 特定の IP、PORT の RTP もキャプチャします

  3. 更新されたフィルター: "(udp and port 5060) or (udp and ip[6:2] & 0x1fff != 0) or (host IP and port PORT) or (host IP2 and port PORT2)" -> 2 番目の RTP ストリームをキャプチャします同じように

等々。

監視目的でRTPストリームの「実際の」パケット損失を取得できるため、これは非常にうまく機能しますが、ツールの選択的フィルターバージョンが不十分な場合、いくつかのパケットがあったため、RTPパケット損失率は信頼できませんでしたカーネルによるパケット ドロップが原因で欠落しています。

しかし、このアプローチの欠点に取り掛かりましょう。

キャプチャ中に setfilter() を呼び出すと、関数 set_kernel_filter() のコード コメントで pcap-linux.c (libpcap バージョン 0.9 および 1.1 を確認) に記載されているように、libpcap が「フィルターの変更中に」受信したパケットをドロップするという事実が含まれます。

setfilter() を呼び出すと、一部のパケットが IP フラグメント化されて到着し、一部のフラグメントが失われます。これは、最後に libpcap 統計によって報告されません: トレースを掘り下げているのを見つけました。

これで、このアクションが libpcap によって行われる理由がわかりましたが、私の場合、パケットをドロップする必要はまったくありません (関係のないトラフィックを取得することは気にしません)。

libpcap のコードを変更していないこの問題を解決する方法について何か考えはありますか?

0 投票する
2 に答える
6474 参照

android - Androidは、VoIPおよびPTTプロジェクトにRTP、RTSPを実装するためのAPIをサポートしていますか?

AndroidでPTTプロジェクトを作成します。Androidが開発者向けのVoiceandMultimedia API(RTP、RTSP、VoIPなど)をどの程度サポートしているか教えてください。