0

アンドロイドサービスを使用して、explayerバージョンrc2.x.xを使用してオンラインラジオをストリーミングします。Android:exoplayer 2.x.xを使用してラジオリンクをストリームする方法

私はすべてのチュートリアルから学べるよう努力してきましたが、それらはすべて2.x.xより前のバージョンであり、多くはビデオストリーミング関連です(私は必要ありません)。

誰かが非常に良いチュートリアルを持っていますか?

+0

をなぜあなたはまったくExoPlayerを使用するようにしたいですか? –

+0

Mediaplayerは実際には限られており、あるデバイスから別のデバイスへの互換性の問題が数多く発生しています。私が知っている限りExoplayerを使用し始めることを今でもお勧めします – user3793589

答えて

5

私はExoPlayerに関する深い知識は持っていませんが、mp3リンクをストリームできるこのコードスニペットを用意しました。

EXOプレーヤーVerison:r2.0.4

private void initMediaPlayer() { 
     Handler mHandler = new Handler(); 

     String userAgent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:40.0) Gecko/20100101 Firefox/40.0"; 
     Uri uri = Uri.parse("http://feedproxy.google.com/~r/TheCombatJackShow/~5/s_9fWPxLDu0/188058705-thecombatjackshow-the-j-cole-episode.mp3"); 
     DataSource.Factory dataSourceFactory = new DefaultHttpDataSourceFactory(
       userAgent, null, 
       DefaultHttpDataSource.DEFAULT_CONNECT_TIMEOUT_MILLIS, 
       DefaultHttpDataSource.DEFAULT_READ_TIMEOUT_MILLIS, 
       true); 
     MediaSource mediaSource = new ExtractorMediaSource(uri, dataSourceFactory, Mp3Extractor.FACTORY, 
       mHandler, null); 

     TrackSelector trackSelector = new DefaultTrackSelector(mHandler); 
     DefaultLoadControl loadControl = new DefaultLoadControl(); 
     ExoPlayer exoPlayer = ExoPlayerFactory.newSimpleInstance(this, trackSelector, loadControl); 
     //exoPlayer.addListener(this); 

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

    } 

このリンクはまた、あなたを助けるかもしれない: https://medium.com/@emuneee/migrating-from-exoplayer-1-x-to-2-0-58fbda36b46c#.b8joifc36

+0

ありがとう。これはうまくいった。それにもかかわらず、メソッド外にexoPlayer変数の参照を保持しようとすると(exoPlayer変数をグローバル変数に変更するなど)、もはや機能しません。何か案が? – user3793589

+0

例外が発生していますか? –

+0

いいえ、私は1つを取得していません。 exoplayer変数を自分のServiceクラスのグローバル変数として宣言すると、何も動作しません。あなたの場合は、変数をローカルに宣言してから、途中でプレーヤーを停止させる方法はありますか? – user3793589

関連する問題