You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Exoplayer如何设置trackselector参数播放360p低清/指定画质视频

ExoPlayer TrackSelector 配置360p低清播放的参数设置

核心使用DefaultTrackSelector配合自定义TrackSelectionParameters做轨道约束即可,不需要修改播放器内核逻辑,具体配置如下:

  • 首先实例化DefaultTrackSelector,不要额外开启最高画质优先的默认自适应逻辑
  • 构建轨道选择参数时,通过宽高范围把视频轨道锁定在360p区间,同时关闭自动升档到高码率的逻辑
  • 把构建好的参数传入trackSelector.setParameters()完成配置

可直接参考的实现代码:

// 初始化轨道选择器
DefaultTrackSelector trackSelector = new DefaultTrackSelector(context);

TrackSelectionParameters lowQualityParams = new TrackSelectionParameters.Builder(context)
        // 强制关闭高码率优先逻辑,避免自动跳转到更高画质
        .setForceHighestSupportedBitrate(false)
        // 横屏360p的标准高度为360px,留少量兼容冗余设置上下限,过滤掉144p/240p/720p及以上档位
        .setMinVideoHeight(320)
        .setMaxVideoHeight(400)
        // 横屏360p 16:9比例对应宽度为640px,同样留兼容冗余
        .setMinVideoWidth(480)
        .setMaxVideoWidth(720)
        // 设置尺寸容差为小档位,片源无精准360p时优先选最接近且不超过上限的分辨率
        .setVideoSizeTolerance(TrackSelectionParameters.VIDEO_SIZE_TOLERANCE_SMALL)
        .build();

// 应用配置到轨道选择器
trackSelector.setParameters(lowQualityParams);

注意:如果播放的是竖屏视频,需要把宽高的约束值互换——竖屏360p的宽度为360px、高度为640px,直接套用横屏参数会匹配不到对应轨道。
如果后续需要切换回其他画质,直接重新构建TrackSelectionParameters传入setParameters()即可,播放器会实时切换到符合新规则的轨道,不需要重建实例。

内容的提问来源于stack exchange,提问作者Chandrashekhar Reddy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 16:09:21