如何编写可与操作系统交互的VLC插件。

我需要找出是否可能以及如何制作一个用于VLC播放器的插件,其目的是在视频流的特定时间调用,并执行某些操作。

我需要执行的操作是打开一个UDP套接字,并发送从当前播放的视频随附的文件中读取的一些数据。

我需要制作类似字幕阅读器的东西,最好能够初始化UDP套接字并将读取的数据发送到服务器。

我不确定在Lua中创建UDP套接字是否可行,也许更好的选择是二进制C/C ++插件,但找不到任何示例。

一般来说,我最好的要求是:

  1. 在VLC启动时加载设置文件
  2. 需要在视频流的特定时间被播放器触发
  3. 获取源视频流的文件名
  4. 打开具有相同名称但扩展名不同的文件(脚本)
  5. 打开一个UDP套接字
  6. 组成消息
  7. 发送消息
  8. 继续循环直到视频流结束

我非常感谢任何信息、示例、网站和链接。

点赞
用户2626233
用户2626233

看起来你想要创建一个控制接口模块。这些模块在 VLC 上下文中用 C/C++ 编写,而且需要为每个你想要支持的平台进行(重新)编译。

看看 audioscrobbler 模块,了解如何与当前输入流进行交互,以及如何检索元数据(如文件名等)。由于这些模块是用 C 写的,所以打开套接字并传输数据并不是一件大事。

最大的注意点可能是,如果您想要针对 Windows 平台进行目标设置,则需要一个复杂的编译环境。在进行任何编码之前,可以查看维基上的编译 HOWTO's http://wiki.videolan.org/Compile_VLC/,因为这可能是您想要尝试的内容。

思考一下,你可能可以使用更容易开发的 lua 来实现类似的扩展(因为你不需要自己编译 VLC,而且它能够跨平台)。但是打开 UDP 套接字可能有问题。 TCP 将正常工作。这个页面可能是一个不错的起点:http://www.coderholic.com/extending-vlc-with-lua/

2013-08-03 08:17:09