0

目前我正在编写一些基于 VLCJ 的代码来播放媒体内容。

我专注于字幕轨道,我想添加功能来修改正在播放的字幕的字体名称、大小和颜色。有没有办法让这个功能工作?

你知道在未来的 vlcj 版本中是否会添加这个功能?

提前非常感谢。问候。

4

1 回答 1

0

LibVLC 中没有 API 来设置字幕属性,因此 vlcj 中也没有 API 可以做到这一点。

要查看如何在 VLC 中更改字幕属性,请转到命令行/shell 并键入:

vlc -H

然后在该输出中搜索“freetype”,您会看到一大堆用于设置字幕属性的开关,例如

--freetype-font
--freetype-fontsize
--freetype-opacity
--freetype-color

...等等。

有两种方法可以将这些命令行开关与 LibVLC/vlcj 一起使用,使用哪种方法取决于特定的选项。如果它不能以一种方式工作,请尝试另一种方式。

任何一个:

  • 当您创建时,MediaPlayerFactory您将开关作为参数传递;或者
  • 当您调用时,mediaPlayer.playMedia(mrl, options)您将开关作为选项传递。

所以通过类似的东西:

String[] args = {
    "--freetype-color"  , "12632256",
    "--freetype-opacity", "128"
};

情况有所不同,例如 DVD 字幕 - 您根本无法更改这些属性。

如果 VLC 曾经公开了新的 API 来支持字幕属性的设置,那么 vlcj 的未来版本无疑会添加它。

于 2015-01-14T08:30:27.820 回答