使用带有 Android 的 LibVLC 应用视频过滤器
Applying Video Filters Using LibVLC with Android
使用 LibVLC,我成功地将 VLC 播放器添加到 Android 应用程序。但是,我不确定是否可以使用 LibVLC 将视频过滤器应用于 VLC 播放器。基于诸如 this 之类的问题,我怀疑它可能没有内置于任何过滤器,尽管我不确定。
目前,我正在尝试在 playMRL
函数中传递视频过滤器命令,但我只是收到了未经过滤的视频。下面是相关代码:
String videoOptions[] = {"--video-filter=invert"};
this.libVLC.playMRL("http://www.sample-videos.com/video/mp4/240/big_buck_bunny_240p_1mb.mp4", videoOptions);
谢谢。
这可能有效也可能无效。将命令行参数作为 MRL 选项或库实例选项传递通常有效,但绝对不能保证也没有记录哪个选项需要在库上设置或可以设置为更灵活的 MRL 选项。这需要对 VLC 内部结构有深入的了解,并且随时可能出错。
正确的解决方案是向 libvlc 添加过滤器 API,我们打算这样做,但最终还没有实现。这里的困难在于我们不想在 API 中单独公开每个过滤器(就像已经为调整过滤器所做的那样),而是一种列出可用过滤器及其选项的方法以及一种方法调用它们是因为即使使用相同的 libvlc 版本,过滤器列表也可能因操作系统而异。
希望这能解释一些事情,如果你想让我指导你完成这样的贡献,请告诉我。API。
使用 LibVLC,我成功地将 VLC 播放器添加到 Android 应用程序。但是,我不确定是否可以使用 LibVLC 将视频过滤器应用于 VLC 播放器。基于诸如 this 之类的问题,我怀疑它可能没有内置于任何过滤器,尽管我不确定。
目前,我正在尝试在 playMRL
函数中传递视频过滤器命令,但我只是收到了未经过滤的视频。下面是相关代码:
String videoOptions[] = {"--video-filter=invert"};
this.libVLC.playMRL("http://www.sample-videos.com/video/mp4/240/big_buck_bunny_240p_1mb.mp4", videoOptions);
谢谢。
这可能有效也可能无效。将命令行参数作为 MRL 选项或库实例选项传递通常有效,但绝对不能保证也没有记录哪个选项需要在库上设置或可以设置为更灵活的 MRL 选项。这需要对 VLC 内部结构有深入的了解,并且随时可能出错。
正确的解决方案是向 libvlc 添加过滤器 API,我们打算这样做,但最终还没有实现。这里的困难在于我们不想在 API 中单独公开每个过滤器(就像已经为调整过滤器所做的那样),而是一种列出可用过滤器及其选项的方法以及一种方法调用它们是因为即使使用相同的 libvlc 版本,过滤器列表也可能因操作系统而异。
希望这能解释一些事情,如果你想让我指导你完成这样的贡献,请告诉我。API。