嗨,我正在尝试为自适应轨道(破折号或 hls)执行播放,但禁用更改为另一个分辨率的功能,这可能吗?我想让一个固定的质量,没有动态切换。
我正在尝试使用DefaultTrackSelector
带有setSelectionOverride
方法的类,但没有效果。
已编辑
我正在使用这个假定的固定质量选择进行测试,但没有成功:
FixedTrackSelection.Factory fixedTrackSelect = new FixedTrackSelection.Factory();
//here i select my desired quality
fixedTrackSelect.createTrackSelection(trackGroupArray.get(0), 3);
MappingTrackSelector.SelectionOverride selectionOverride = new MappingTrackSelector.SelectionOverride(fixedTrackSelect, exoPlayerTrackIndex, tracks);
trackSelector.setSelectionOverride(2, trackGroupArray, selectionOverride);
已编辑 2
最后我得到了一个修复,如下所示:
FixedTrackSelection.Factory fixedTrackSelect;
fixedTrackSelect = new FixedTrackSelection.Factory();
trackSelector = new DefaultTrackSelector(fixedTrackSelect);
trackSelector.setParameters(trackSelector.getParameters()
.withMaxVideoSize(300, 300) //really draw full available layout
.withMaxVideoBitrate(Integer.MAX_VALUE)
我需要对 Exoplayer 1.x 做同样的事情,但没有这些对象可用。