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

如何在当前版本VLCJ应用中启用/禁用字幕?

在当前VLCJ版本中启用/禁用字幕的实现方法

针对VLCJ 4.x及以上的最新版本,以下两种方法可以实现字幕的启用/禁用控制:

方法1:快速切换字幕渲染状态

如果只需临时开启或关闭字幕(保留当前选中的字幕轨道配置),直接调用MediaPlayer的启用状态控制方法:

// 禁用字幕渲染
mediaPlayer.setSubTitleEnabled(false);

// 重新启用字幕渲染
mediaPlayer.setSubTitleEnabled(true);

这个操作不会改变当前选中的字幕轨道,只是暂停/恢复字幕的显示。

方法2:通过选择字幕轨道精确控制

如果需要彻底关闭字幕(相当于手动选择"无字幕"选项),或者切换到特定字幕轨道,可以通过轨道索引来操作:

// 获取当前媒体的所有字幕轨道
List<TrackInfo> subtitleTracks = mediaPlayer.subTitleTracks();

// 关闭字幕:选择索引为-1的"无轨道"选项
mediaPlayer.subTitleTrack().setSelected(-1);

// 选择第一个可用的字幕轨道(索引从0开始)
if (!subtitleTracks.isEmpty()) {
    mediaPlayer.subTitleTrack().setSelected(0);
}

关键注意点

  • 必须确保媒体已完成加载,否则subTitleTracks()会返回空列表,setSelected()操作也不会生效。
  • 若需要监听字幕轨道的加载或变化,可以注册轨道变更监听器:
mediaPlayer.events().addTracksChangedListener(event -> {
    List<TrackInfo> updatedSubtitleTracks = mediaPlayer.subTitleTracks();
    // 在这里处理轨道更新后的逻辑,比如更新UI选项
});

内容的提问来源于stack exchange,提问作者Factor Three

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 12:03:14