我需要在一个C#的WinForms应用程序中嵌入并控制播放AVI文件,视频需要嵌入到表单中,而不是在单独的媒体播放器窗口中打开。
如何实现最佳效果?我找到了System.Media命名空间,听起来很有希望,但似乎只适用于声音。
我是否应该使用DirectX来完成这个任务?还是MCI?或者其他方法?
axWindowsMediaPlayer1.URL =
@"http://go.microsoft.com/fwlink/?LinkId=95772";
http://msdn.microsoft.com/en-us/library/bb383953(v=vs.90).aspx
Daok和Brian Genisio的建议都是不错的选择。让我再加一个第三个:DirectShow。它曾经是DirectX的一部分,但现在已经被提升为Windows SDK的一部分。有很多好的C#示例应用程序可以参考,它可以完全控制播放。
我会考虑使用WPF媒体控件,并使用ElementHost将您的WPF控件放置在WinForms应用程序中。我认为您将获得更丰富的体验。
有关更多信息,请参见System.Windows.Forms.Integration。