12

ライブ TV フィードを表示する Android アプリを作成する必要があります。アプリは、UDP または RTP をストリーミングできるゲートウェイ ベンダーによると、DVB ゲートウェイのマルチキャストからライブ ビデオ ストリームを再生することになっています。コンピューターに vlc をセットアップして UDP と RTP をストリーミングし、Android プレーヤーにそれらを表示させようとして指を骨折しました。しばらくして、Android は HTTP/S と RTSP のライブ ストリームしかサポートしていないことがわかりました。すべての FFMPEG ソリューションとさまざまなメディア プレーヤーを試しましたが、まだ成功していません。私は動画の専門家ではありませんが、RTSP は RTP のカプセル化であると理解しています。RTP フィードをラップしてストリーミングすることはできますか (プロキシ経由でも) ? 機能しているUDPソリューションを知っている人はいますか?

ありがとう

ポート 1234 からポート 8888 の TCP 接続にローカル UDP ストリームを渡すトンネルの作成を開始しました。VLC でテストしています。UDP ペイロードは正しいように見えます。待機時に VLC が http 接続を開始するのを確認できます。 TCP リスナーが接続を受け入れるようにします。それでもVLCは結果のHTTPストリームを再生しません、私のコード:

public void Bridge()
    {
        //endpoints
        IPEndPoint myRemoteEndpoint = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 1234);

        //communications objects
        UdpClient myUdpClient = new UdpClient(myRemoteEndpoint);
        TcpListener myTcpListener = new TcpListener(IPAddress.Any, 8888);

        //buffer
        byte[] buffer = new byte[2048];

        //start tcp listener
        myTcpListener.Start();
        Socket tcpAcceptedSocket = myTcpListener.AcceptSocket();            

        while (true)
        {
            try
            {
                //get data from UDP client
                buffer = myUdpClient.Receive(ref myRemoteEndpoint);

                //send bytes received from UDP over TCP
                tcpAcceptedSocket.Send(buffer);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }

        //close sockets
        myUdpClient.Close();
        myTcpListener.Stop();

    }

何かご意見は ?

4

1 に答える 1

2

うまくいけば、あなたはすでにこれを解決しましたか?

私が最初に考えたのは、「そのwhile (true)ループから抜け出すにはどうすればよいか」ということでした。笑

RTP は、API レベル 12 で Android SDK に追加されました。

http://developer.android.com/reference/android/net/rtp/package-summary.html

android.net.rtpおそらく、ストリーミングビデオをキャッチするために使用できます。この分野ではチュートリアルが大幅に不足しているようです。そのため、これを機能させることができれば、簡単な記事を書くだけで大きな G の検索結果に飛びつくことができると確信しています。「android udp rtp」検索で出てくる、stackoverflow に関する 600 以上の他の質問のポスターを支援することは言うまでもありません。

blog-o-sphere より:

http://burcudogan.com/2011/06/05/android-rtp-implementation-is-based-on-udp/

そして、有望に見えるので、WebRTC のプラグインを投げます。

http://www.html5rocks.com/en/tutorials/webrtc/basics/

于 2012-11-16T08:34:40.277 に答える