gpt4 book ai didi

LibVLC:字幕和全屏问题

转载 作者:行者123 更新时间:2023-12-02 05:35:56 28 4
gpt4 key购买 nike

我目前正在尝试使用LibVLC播放视频,有一些问题:

  1. 在具有多个屏幕的计算机上,如何让 LibVLC 在特定屏幕上显示全屏?
  2. 我尝试使用 libvlc_video_set_marquee_int。经过一些尝试和错误后,我发现,当我在设置选取框文本之前启动视频约 70 毫秒后暂停主线程时,它会起作用。为什么?我怎样才能做得更好?
  3. 我想显示字幕文本,但没有视频标题(LibVLC 在开头显示视频标题或文件名)。我了解到您可以通过将 --no-video-title-show 选项传递给 libvlc_new() 来禁用视频标题。然而,这有两个问题:首先,文档说不应该传递选项。好吧,好吧......但是其次使用这个选项对字幕文本有一个奇怪的影响:你可以设置一个文本,但它只会闪烁一次然后立即消失,无论 libvlc_marquee_Timeout 设置成什么。

最佳答案

就在今天早上,在 videolan 论坛上的人们的帮助下,我想我已经弄清楚了。我应该提一下,我在 linux 系统上工作,我不知道你使用的是什么操作系统,但我知道它们之间存在一些差异。这是我所做的:

首先,我发现首先在命令行上运行选取框很有用。以下是有关此主题的讨论的链接:

http://forum.videolan.org/viewtopic.php?f=13&t=110743

对我有用的命令行选项:

 cvlc --extraintf=http:logger --verbose=2 --file-logging --logfile=vlc-log.txt --sub-source="marq{marquee=marquee text here}" test.mpg

我遇到了一个问题,即使使用上述命令我也无法显示选取框。在我的 gentoo 系统上,我需要在启用 fontconfig 和 truetype 的情况下重建 vlc。

现在使用 cvlc 在视频上显示选取框,我又回到了 libvlc。我遗漏了一些东西,所以我在这里开始了另一个讨论:

http://forum.videolan.org/viewtopic.php?f=32&t=110783

C/libvlc 代码片段最终允许我在没有文件名选取框的情况下按需显示选取框。

主要内容:

const char * const vlc_args[] = {
"--extraintf=http:logger",
"--verbose=1",
"--file-logging",
"--logfile=/home/user/data/logs/vlc",
"--no-video-title-show", // <- this option disables the filename marquee
"--sub-filter=marq"}; // <- this option allows the on demand marquee to display properly

vlc_inst = libvlc_new (sizeof(vlc_args) / sizeof(vlc_args[0]), vlc_args);

在按键回调中:

        libvlc_video_set_marquee_int(media_player, 0, 1);       /* enable marquee */
libvlc_video_set_marquee_int(media_player, 6, 32); /* set marquee font size */
libvlc_video_set_marquee_int(media_player, 7, 2000); /* set marquee timeout (ms) */
libvlc_video_set_marquee_string(media_player, 1, "on demand marquee string here");

希望其中的一些内容能帮助您找到可行的解决方案。

关于LibVLC:字幕和全屏问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11727423/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com