我用下面的代碼通過ExaPlayer播放音樂蒸汽:ExoPlayer:從HTTP流獲取歌曲的元數據
exoPlayer = ExoPlayer.Factory.newInstance(numRenderers, minBufSize, maxBufSize);
String url = Helper.getPr().getString("url", "http://mp3.nashe.ru:80/ultra-128.mp3");
Uri uri = Uri.parse(url);
Log.i(TAG, "Going to open " + url);
Allocator allocator = new DefaultAllocator(BUFFER_SEGMENT_SIZE);
DataSource dataSource = new DefaultUriDataSource(getApplicationContext(), USER_AGENT);
ExtractorSampleSource sampleSource = new ExtractorSampleSource(uri, dataSource, allocator, BUFFER_SEGMENT_COUNT * BUFFER_SEGMENT_SIZE);
audioRenderer = new MediaCodecAudioTrackRenderer(sampleSource);
exoPlayer.addListener(this);
exoPlayer.sendMessage(audioRenderer, MediaCodecAudioTrackRenderer.MSG_SET_VOLUME, volume);
exoPlayer.prepare(audioRenderer);
exoPlayer.setPlayWhenReady(true);
但我無法找到如何獲取元數據像當前的藝術家和名稱的任何信息歌..有可能得到這樣的信息?
非常感謝。
我自流獲取元數據面臨的,但我沒有與音頻工作。你必須看看com.google.android.exoplayer.audio.AudioTrack有初始化方法,並且在這個方法中lib與audioTrack一起工作,也許它會幫助你。 – Dima
任何你可以分享代碼的方式?即時通訊尋找一種方式來升級我的應用程序從媒體播放器到exoplayer?謝謝 – alexistkd
@Alexistkd,我在下面的答案中使用了IcyStreamMeta。 –