gpt4 book ai didi

android - Exoplayer 无法播放某些音频流

转载 作者:行者123 更新时间:2023-11-29 15:39:22 27 4
gpt4 key购买 nike

我开发了一些 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 at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:345) at android.os.Handler.dispatchMessage(Handler.java:98) at android.os.Looper.loop(Looper.java:154) at android.os.HandlerThread.run(HandlerThread.java:61) at com.google.android.exoplayer2.util.PriorityHandlerThread.run(PriorityHandlerThread.java:40) Caused by: com.google.android.exoplayer2.source.UnrecognizedInputFormatException: None of the available extractors (MatroskaExtractor, FragmentedMp4Extractor, Mp4Extractor, Mp3Extractor, AdtsExtractor, Ac3Extractor, TsExtractor, FlvExtractor, OggExtractor, PsExtractor, WavExtractor) could read the stream. at com.google.android.exoplayer2.source.ExtractorMediaPeriod$ExtractorHolder.selectExtractor(ExtractorMediaPeriod.java:713) at com.google.android.exoplayer2.source.ExtractorMediaPeriod$ExtractingLoadable.load(ExtractorMediaPeriod.java:636) at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:295) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607) at java.lang.Thread.run(Thread.java:761)

最佳答案

查看您用于启动 exoplayer 的一些代码可能会有所帮助,我假设您使用的是标准的 ExtractorMediaSource

.m3u8 文件实际上是播放列表、文本文件,它们链接到媒体文件 -- 通常用于直播。您将需要另一个 MediaSource,尝试使用 HLSHlsMediaSource 而不是 ExtractorMediaSource

HLS 代表 HTTP 直播。

关于android - Exoplayer 无法播放某些音频流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43644730/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com