Mac 在 VLC 上编辑视频效果面板

Editing Video Effects panel on VLC for Mac

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

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

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

我试过 google 这个,但听起来唯一的选择就是扮演考古学家并挖出一份旧的 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()),但它没有反映在“视频效果”面板中滑块的位置。我怀疑我需要为此进行更深入的破解。有什么想法吗?

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

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