LibVLC C# 为着色器公开 opengl 纹理
LibVLC C# expose opengl texture for shaders
有没有什么方法可以在加载帧时为视频获取 opengl 纹理,以便在图像上应用某种效果着色器(如 obs 或 mpv)?我想应用一个图像过滤器(https://github.com/bloc97/Anime4K) on the source, but for that I need the base texture binding to edit it. For this I need something like the built in videoeffects in standard vlc, but I dont see any bindings for that in LibVLC. If someone could point me in the right direction on how to aquire the texture or override something like https://github.com/videolan/vlc/blob/e7e608e84e9e218886700a6c90e8788a01f46b4f/modules/video_filter/ripple.c 来自 c# 代码,这将是惊人的。
libvlc 4 将有一个 API : https://www.videolan.org/developers/vlc/doc/doxygen/html/group__libvlc__media__player.html#gafae363ba4c4655780b0403e00159be56
它在 libvlcsharp(版本 4)中尚不可用,因为我们不知道 API 是否为最终形式,但欢迎贡献,这绝对是我们应该添加的内容。
虽然您将能够在 libvlc 4 中使用新的输出回调 API,正如 cube45 指出的那样,您已经可以在 libvlc 3 中设置视频过滤器之一。
要检索可用视频过滤器列表,运行
var videoFilters = LibVLC.VideoFilters;
您应该在控制台上打印它们并将它们保存在某个地方。在下一个运行,你可以将它们添加到LibVLC构造函数中,像这样
--video-filter=<string> Video filter module
This adds post-processing filters to enhance the picture quality, for
instance deinterlacing, or distort the video.
https://wiki.videolan.org/VLC_command-line_help
请注意,LibVLC 4 中的过滤器性能将得到改进,目前处理是在 CPU(将是 GPU)中完成的。
还有可用的音频过滤器。
有没有什么方法可以在加载帧时为视频获取 opengl 纹理,以便在图像上应用某种效果着色器(如 obs 或 mpv)?我想应用一个图像过滤器(https://github.com/bloc97/Anime4K) on the source, but for that I need the base texture binding to edit it. For this I need something like the built in videoeffects in standard vlc, but I dont see any bindings for that in LibVLC. If someone could point me in the right direction on how to aquire the texture or override something like https://github.com/videolan/vlc/blob/e7e608e84e9e218886700a6c90e8788a01f46b4f/modules/video_filter/ripple.c 来自 c# 代码,这将是惊人的。
libvlc 4 将有一个 API : https://www.videolan.org/developers/vlc/doc/doxygen/html/group__libvlc__media__player.html#gafae363ba4c4655780b0403e00159be56
它在 libvlcsharp(版本 4)中尚不可用,因为我们不知道 API 是否为最终形式,但欢迎贡献,这绝对是我们应该添加的内容。
虽然您将能够在 libvlc 4 中使用新的输出回调 API,正如 cube45 指出的那样,您已经可以在 libvlc 3 中设置视频过滤器之一。
要检索可用视频过滤器列表,运行
var videoFilters = LibVLC.VideoFilters;
您应该在控制台上打印它们并将它们保存在某个地方。在下一个运行,你可以将它们添加到LibVLC构造函数中,像这样
--video-filter=<string> Video filter module
This adds post-processing filters to enhance the picture quality, for
instance deinterlacing, or distort the video.
https://wiki.videolan.org/VLC_command-line_help
请注意,LibVLC 4 中的过滤器性能将得到改进,目前处理是在 CPU(将是 GPU)中完成的。
还有可用的音频过滤器。