【问题标题】:Editing Video Effects panel on VLC for Mac在 VLC for Mac 上编辑视频效果面板
【发布时间】:2015-05-13 10:08:00
【问题描述】:

好的,所以这个问题实际上分为两部分。

我为 VLC 编写了一个视频过滤器,我想在 OS X UI 上的视频效果面板中添加一个控件。到目前为止,我已经能够通过劫持现有控件之一将我的插件链接到 UI,但这并不理想。

现在,如果我打开 Xcode 项目(我正在运行 Xcode 6.3.1)并尝试打开 VideoEffect.xib 文件,我会收到以下错误:

我试图用谷歌搜索,但听起来唯一的选择是扮演考古学家并挖掘 Xcode 3 的旧副本。有没有其他方法可以打开这个文件并以某种方式编辑它?我试图查看 XML 代码,但如果我开始更改它,我会弊大于利。

我想做的第二件事是将值从效果模块发送回 UI。目前(通过劫持现有滑块之一),我所能做的就是从面板中读取一个值

config_ChainParse(p_filter, FILTER_PREFIX, ppsz_filter_options, p_filter->p_cfg);
p_filter->p_sys->i_factor = var_CreateGetIntegerCommand(p_filter, FILTER_PREFIX "factor");

然后,在回调函数内部:

p_sys->i_factor = VLC_CLIP( newval.i_int, 0, 255 );

但是,我无法写回该值。我希望过滤器在开始时将p_sys->i_factor 设置为随机值。这有效(使用var_SetInteger()),但它不会反映在视频效果面板中滑块的位置。我怀疑我需要为此进行更深入的破解。有什么想法吗?

【问题讨论】:

    标签: objective-c xcode macos vlc xcode6.3


    【解决方案1】:

    关于 xib 文件的第一个问题。考虑从 git://git.videolan.org/vlc.git 下载和使用我们即将推出的 3.0 代码 - 它允许在没有 Xcode 3 的情况下编辑所述文件。

    关于您的第二个问题,您为什么希望您的视频过滤器干扰用户界面?这不是 VLC 架构的工作方式,目前还没有正确的方法来做到这一点。您需要编辑核心以执行另一个全局变量回调,以要求 UI 重新加载呈现的过滤器配置。 也许,如果您详细说明您的过滤器的作用以及您想要实现的目标,我们会找到一种更受支持的方式:)

    【讨论】:

    • 感谢您回复我。我不会详细介绍过滤器的作用,但我正在尝试使用它进行偏好实验。用户将移动滑块并将过滤器设置为他们的首选设置。但是,为了避免引入偏差,我希望滑块从某个随机位置开始,而不是“0”。考虑到我的时间限制,我可能不得不以某种方式手动完成。但是感谢有关 VLC 3 的提示,我会尽快查看代码。
    猜你喜欢
    • 2012-09-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多