我正在使用 explayer 2.9.4,但我不知道如何使用 Exoplayer 创建流畅的流式传输。我在互联网上搜索了几天,但没有找到。 我的代码是这样的,但这是我需要使用 DASH 的正常流媒体
TrackSelector trackSelector = new DefaultTrackSelector();
exoPlayer = ExoPlayerFactory.newSimpleInstance(this, trackSelector);
Uri videoURI = Uri.parse(videoURL);
DefaultHttpDataSourceFactory dataSourceFactory = new DefaultHttpDataSourceFactory( Util.getUserAgent(this, "My Streamer"));
mediaSource = new ExtractorMediaSource.Factory(dataSourceFactory) .createMediaSource(videoURI);
并且正在尝试像这样来自 stackoverflow 的一些代码:
DefaultHttpDataSourceFactory dataSourceFactory = new DefaultHttpDataSourceFactory( Util.getUserAgent(this, "FTV Stream Albania"));
dashMediaSource = new DashMediaSource(videoURI, dataSourceFactory, new DefaultDashChunkSource.Factory(dataSourceFactory), null, null);
BandwidthMeter bandwidthMeter = new DefaultBandwidthMeter();
TrackSelector trackSelector = new DefaultTrackSelector(new AdaptiveTrackSelection.Factory(bandwidthMeter));
但我得到错误:
ExoPlayerImplInternal: Source error.
com.google.android.exoplayer2.ParserException: org.xmlpull.v1.XmlPullParserException: Unexpected token (position:TEXT G@��B�%���������...@2:79 in java.io.InputStreamReader@c587547) at com.google.android.exoplayer2.source.dash.manifest.DashManifestParser.parse(DashManifestParser.java:105) at........
文档很差。任何帮助将不胜感激。
最佳答案
解决方案是我从 ExoPlayer Github Soruce codes 添加了两个文件:
DownloadTracker.java 和 DemoDownloadService.java 然后从 PlayerActivity.java 得到我需要的代码,现在它运行良好。
关于android - Exoplayer 2.9.4 平滑流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54410256/