は、私はあなたと少しを共有することができ、音楽ストリーミングアプリを実施しました。
Android MediaPlayerクラスをストリーミングして使用する場合は、MP3またはOGGを使用することをおすすめします。
アーキテクチャがクライアントサーバー(インターネット上の実サーバがAndroidデバイス向けのストリームを配信している場合)の場合、HTTP経由でMP3またはOGGバイトをストリームするだけです。 MediaPlayerをあなたのサーバ上のURLにポイントするだけです。
独自のカスタムソケットコードでピアツーピアのアーキテクチャの場合、専用のスレッドでlocalhostをリッスンする「プロキシhttp」サーバーを作成できます。 MediaPlayerインスタンスをローカルのインプロセスソケットサーバー(例:http://localhost:54321/MyStream.mp3)に向けます。次に、HTTP取得要求フォームのMediaPlayerを解析し、カスタムP2Pソケットプロトコルとローカルhttpサーバに接続されたリスナー間のストリームバイトをプロキシするコードを実装する必要があります。多くのラジオストリーミングアプリは、MP3ストリームからICECASTメタデータを解析するためにこれを正確に行います。これを行うHere's the code I use for my radio streaming app
「ファイルの途中で開始」のシナリオでは、私のMP3 Stream Reader classが役に立ちます。これはInputStream(ファイル、ソケットストリームなど)をラップし、あなたがどこから始めたかで次の有効なフレームに同期します。 read_next_chunk
に電話して、次のオーディオブロックとそのフォーマットを取得してください。 MediaPlayerはあなたのためにこの大部分を行うかもしれないので、これは必要ではないかもしれません。
p2pストリーミングが必要な場合は、WebRTCを検討することをお勧めします。 –