将视频输入/输出卡(例如BlackMagic Design和Decklink)渲染为.NET中的窗口
我正在研究将视频输入/输出卡视为窗口的可能性,以便从.NET向其渲染图形。它需要处理透明度的能力,这样我就可以在传入的视频上为渲染的图形设置关键帧将视频输入/输出卡(例如BlackMagic Design和Decklink)渲染为.NET中的窗口,.net,video,.net,Video,我正在研究将视频输入/输出卡视为窗口的可能性,以便从.NET向其渲染图形。它需要处理透明度的能力,这样我就可以在传入的视频上为渲染的图形设置关键帧 我还没有发现任何能做到这一点的东西——一些SDK允许您渲染图形,但您必须使用它们的API来绘制图形,而不是使用标准的.NET WPF/Windows窗体例程。我将decklink卡与C#一起使用,并执行类似于您希望执行的操作。我使用使用Graphics.FromImage()创建的标准图形对象(GDI+)。在每个帧完成回调时,我在图形对象上绘制,然后
我还没有发现任何能做到这一点的东西——一些SDK允许您渲染图形,但您必须使用它们的API来绘制图形,而不是使用标准的.NET WPF/Windows窗体例程。我将decklink卡与C#一起使用,并执行类似于您希望执行的操作。我使用使用Graphics.FromImage()创建的标准图形对象(GDI+)。在每个帧完成回调时,我在图形对象上绘制,然后获取一个指向连接位图的指针,并将像素复制到decklink视频帧缓冲区。在复制中,你可以对透明像素做任何你想做的事情(不是复制,而是将输入留在那里等等),基本上你只需要一个指向ARGB曲面的指针(或者你设置的任何格式),你可以将它复制到decklinks帧缓冲区 虽然我不使用视频输入(我正在对静态图像序列进行键控),但从API来看,复制输入帧,然后在其上绘制对象,然后将其复制到输出缓冲区并不困难。SDK中有一些示例(大部分是本机代码,但很容易看到发生了什么),它们提供了一个互操作dll,可以方便地从.net访问API 这里有一个黑魔法开发者的邮件列表,你也应该查看一下
Brian我用C#和decklink卡,做一些类似于你想做的事情。我使用使用Graphics.FromImage()创建的标准图形对象(GDI+)。在每个帧完成回调时,我在图形对象上绘制,然后获取一个指向连接位图的指针,并将像素复制到decklink视频帧缓冲区。在复制中,你可以对透明像素做任何你想做的事情(不是复制,而是将输入留在那里等等),基本上你只需要一个指向ARGB曲面的指针(或者你设置的任何格式),你可以将它复制到decklinks帧缓冲区 虽然我不使用视频输入(我正在对静态图像序列进行键控),但从API来看,复制输入帧,然后在其上绘制对象,然后将其复制到输出缓冲区并不困难。SDK中有一些示例(大部分是本机代码,但很容易看到发生了什么),它们提供了一个互操作dll,可以方便地从.net访问API 这里有一个黑魔法开发者的邮件列表,你也应该查看一下 布莱恩