将视频片段淡化为黑色

时间:2011-01-19 20:06:07

标签: c# video directshow

我需要在C#中播放视频文件(带音频),然后才能将视频淡出为黑屏,然后淡入另一段视频。

我看过DirectShow&然而,DirectShowNet我并不聪明。我有一个简单的应用程序来播放带有计时器等的视频,但是我对使用过滤器和放大器感到困惑。的曲线图。

我需要进入哪个方向?

3 个答案:

答案 0 :(得分:1)

创建WPF应用程序并使用MediaElement控件播放视频。使用MediaElement的事件(例如MediaEnded)来检测何时启动淡出/切换流源/淡化。淡出的最简单方法是改变Mediaelement的不透明度。 MediaElement应该能够播放系统上安装了directshow过滤器的所有视频。

答案 1 :(得分:0)

您使用的是WPF吗?

使用WPF,您可以通过各种方式执行此操作。例如,您可以简单地为视频控件(MediaElement)的不透明度设置动画。

注意:您可以在Winforms应用中使用WPF控件。有关如何执行此操作,请参阅this视频。

答案 2 :(得分:0)

一种解决方案,虽然我认为它是一种黑客攻击,但是可以在视频的可视区域上绘制黑色覆盖图。您可以根据视频的帧/时间调整叠加层的透明度。从本质上讲,您可以根据要开始淡化的视频中的位置,启动定时事件,该事件会慢慢删除或添加透明度。