我正在开发一个使用 Exoplayer2 进行 HLS 视频流的项目。自适应流在我的 exoplayer 中运行良好,但我想实现一个功能,用户可以从 UI 手动更改视频的分辨率(144p、240p、480p ..)。我从 TrackGroup API 获得了播放视频的分辨率。但不知道如何手动将分辨率值设置到播放视频中。谢谢
13511 次
1 回答
1
您可以使用 Exoplayer2 中的轨道选择器功能来做到这一点 - 它本质上限制了播放器中的自适应比特率选择功能可以选择的轨道。
它只能从流索引文件,清单文件中的可用轨道中选择。因此,您对分辨率/比特率的选择仅限于流提供商提供的任何比特率、分辨率等 - 即用户不能只选择他们想要的任意比特率或分辨率,如果它不是其中之一清单文件(视频轨道索引文件)中的可用文件。
要只有一首曲目,您只需允许该曲目。
此功能包含在演示中 - 这是他们的博客之一的示例屏幕截图:
更多关于曲目选择的详细信息(也链接自 Exoplyar GitHub 页面):https ://medium.com/google-exoplayer/exoplayer-2-x-track-selection-2b62ff712cc9
于 2017-05-19T11:13:06.963 回答