1

Androidでライブhttpストリーミングを再生するアプリを作成しようとしています(私はすでにiphoneで同じことをしました)。Android の公式チュートリアルでは、http ライブ ストリーミングを行う方法に関するサンプルコードを示しています。

public class liveStream extends Activity implements OnClickListener {
    Button streamButton;
    MediaPlayer mediaPlayer = null;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_live_stream);

        streamButton = (Button) findViewById(R.id.streamButton);
        streamButton.setOnClickListener(this);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.activity_live_stream, menu);
        return true;
    }

    public void onClick(View v) {       
        String url = "http://d2233avv69kunu.cloudfront.net/hds-live/livepkgr/_definst_/liveevent/livestream.f4m"; 
        mediaPlayer = new MediaPlayer();
        mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);

        try {
            mediaPlayer.setDataSource(url);
        } catch (IllegalStateException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

        try {
            mediaPlayer.prepare();
        } catch (IOException e) {
            e.printStackTrace();
        }
        mediaPlayer.start();
    }
}

問題は、プレーヤーを準備しようとすると IOException が発生し続けることです..いくつかの調査を行ったところ、Android のフラッシュ クライアントからこれを再生する必要があるようです。その場合、サードパーティのフラッシュ プレーヤーを使用せずにライブ HTTP ストリーミングを直接再生するにはどうすればよいですか? iPhoneに似ている

4

2 に答える 2

2

Android は、Flash マニフェスト ファイル (.f4m) ライブ ストリーミングをサポートしていません。

ストリーミング用に Android がサポートする形式

于 2012-08-07T10:48:08.520 に答える
0

2.3 以降のほとんどの Android デバイスは、何らかの形で Apple の HLS をネイティブにサポートしています。一部のデバイスでは、http:// の代わりに httplive://.../playlist.m3u8 を使用する必要がありますが、私が知る限り、ほとんどのデバイスは http だけで m3u8 URL をサポートしています。 Android 3.0 を超える

于 2012-11-08T14:22:52.517 に答える