【发布时间】:2017-04-26 21:21:33
【问题描述】:
我开发了一些 Android 应用程序来收听互联网广播电台。
对于音频流,我一直在使用 Vitamio 库。不幸的是,它不再受支持,并且包含与 Android 7 的兼容性问题。
经过多次尝试,我决定去 ExoPlayer 库。我对易用性和不断更新感到非常满意。此外,它还使我的 APK 大小减少了三倍。
很遗憾,ExoPlayer 库无法播放某些音频流。我尝试过调试、更改对 URL 的调用等等。不成功。
这些是我无法使用 ExoPlayer 库播放但我可以使用 Vitamio 重现的流示例:
http://42747t.lp.azioncdn.net:1935/2747t/a/mp4:access_options/rtmp-live/atl_poa.sdp/playlist.m3u8 http://192747t.lp.azioncdn.net/2747t/a/mp4:access_options/rtmp-live/gau_centro.sdp/playlist.m3u8
其中一些流对我的应用成功非常重要。
我无权访问服务器。
logcat 上的内容如下:
04-26 21:09:20.189 27953-27953/com.eneasgesing.radios.rs E/EventLogger: playerFailed [987.08] com.google.android.exoplayer2.ExoPlaybackException 在 com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:345) 在 android.os.Handler.dispatchMessage(Handler.java:98) 在 android.os.Looper.loop(Looper.java:154) 在 android.os.HandlerThread.run(HandlerThread.java:61) 在 com.google.android.exoplayer2.util.PriorityHandlerThread.run(PriorityHandlerThread.java:40) 引起:com.google.android.exoplayer2.source.UnrecognizedInputFormatException:没有可用的提取器(MatroskaExtractor、FragmentedMp4Extractor、Mp4Extractor、Mp3Extractor、AdtsExtractor、Ac3Extractor、TsExtractor、FlvExtractor、OggExtractor、PsExtractor、WavExtractor)可以读取流。 在 com.google.android.exoplayer2.source.ExtractorMediaPeriod$ExtractorHolder.selectExtractor(ExtractorMediaPeriod.java:713) 在 com.google.android.exoplayer2.source.ExtractorMediaPeriod$ExtractingLoadable.load(ExtractorMediaPeriod.java:636) 在 com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:295) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607) 在 java.lang.Thread.run(Thread.java:761)
【问题讨论】:
标签: android audio exoplayer m3u8 vitamio