10

私は現在、Android の ExoPlayer を介して Dash を利用するアプリケーションの開発を検討しています。

まず、デモ プロジェクトを実行していますが、mp3 などをストリーミングできる ExoPlayer の単純な作業インスタンスを作成することさえできません。

非常に単純な exoplayer インスタンスを動作させることに関連して誰かが提供できる助けを本当に感謝します.

すべての助けに感謝します!

4

3 に答える 3

9

新しい ExoPlayer 2 API とSimpleExoPlayer.

最初にプレーヤーを作成します。

DefaultBandwidthMeter bandwidthMeter = new DefaultBandwidthMeter();
DataSource.Factory dataSourceFactory = new DefaultDataSourceFactory(context, bandwidthMeter);

TrackSelection.Factory videoTrackSelectionFactory = new AdaptiveTrackSelection.Factory(bandwidthMeter);
DefaultTrackSelector trackSelector = new DefaultTrackSelector(videoTrackSelectionFactory);
LoadControl loadControl = new DefaultLoadControl();

SimpleExoPlayer player = ExoPlayerFactory.newSimpleInstance(context, trackSelector, loadControl);

player.addListener(...); // To receive events from the player

次に、を作成しますMediaSource。MP3 の場合は、次を使用できますExtractorMediaSource

ExtractorsFactory extractorsFactory = new DefaultExtractorsFactory();
Uri uri = Uri.parse(mp3UriString);
Handler mainHandler = new Handler(Looper.getMainLooper());
MediaSource mediaSource = new ExtractorMediaSource(uri, dataSourceFactory, extractorsFactory, mainHandler, mediaSourceListener); // Listener defined elsewhere

次に準備をして、準備ができたらプレイします。

player.prepare(mediaSource);
player.setPlayWhenReady(true);

DASH の場合、 の代わりにDashMediaSourceExtractorMediaSourceを使用します。

于 2017-05-01T15:50:58.047 に答える