C#实现视频播放器

在介绍怎么用C


使用C

1、使用MediaPlayer ActiveX控件;

2、使用VLC ActiveX控件

3、使用LIB VLC库

4、使用FFMPEG库


第1、2种,都一定依赖客户端环境。如果客户端较少,可以人工维护的话,可以考虑。


第4种,使用ffmpeg,就拥有了更加底层的api了,此时可以实现更加强大的功能。并且它是跨平台的,对于移动平台的音视频开发也是非常有帮助的。


今天我们就是采用第3种方式,它不依赖客户端环境,在Github上也有比较完善的对它的封装:https://github.com/ZeBobo5/Vlc.DotNet。采用这种方式可以实现一些底层的控制,当然了相对于ffmpeg,会少一些。


一、什么是Vlc.DotNet


C#实现视频播放器


我们从NuGet可以看到,它包含了这5个类库:

Vlc.DotNet.Core 

Vlc.DotNet.Core.Interops 
Vlc.DotNet.Wpf 

Vlc.DotNet.Forms 

VideoLAN.LibVLC.Windows


1)Vlc.DotNet.Forms :是包含winform界面控件的库,使用的时候需要加入到工具箱,在拖拽到界面;是对VLC.DotNet.Core的再次封装。
2)Vlc.DotNet.Wpf : 包括wpf的,在hood方式下是使用WinForm控件。
3)Vlc.DotNet.Core 、Vlc.DotNet.Core.Interops : 基础依赖包,如果是转换、编解码、做服务不需要界面的,可以考虑用这个来实现。

4)VideoLAN.LibVLC.Windows:用用于安装libvlc库,分为win-x64和win-x86。


今天我们是开发界面应用,使用到是Vlc.DotNet.Forms和VideoLAN.LibVLC.Windows,我们只要安装这两个就可以。


二、控件使用


C#实现视频播放器

我们安装相应的类库后,在工具箱就可以看到相应的控件,只要把它拖进相应的界面就可以。

这一步做完后,使用上有一个需要注意的,就是需要指定一下libvlc库的位置,否则会报错。虽然装了VideoLAN.LibVLC.Windows包,但这里不会自动配置。控件初始化是会触发VlcLibDirectoryNeeded事件,在这个事件中配置libvlc的地址,如果,你不安装上面的VideoLAN.LibVLC.Windows包,可以制定另外的地址。

三、视频播放

//网络媒体播放var videoUri =new Uri("udp://@:ip:port");vlcControl.Play(videoUri );

//本地文件播放vlcControl.Play(new FileInfo("本地视频路径"));


四、实际效果

最后我们一起来看看最终实现的效果,以下视频是我开发的视频、图片去水印的工具。

好了,今天就分享到这边了,如果需要工具的,请在公众号回复【水印工具】获取。

C#实现视频播放器》来自互联网,仅为收藏学习,如侵权请联系删除。本文URL:http://www.hashtobe.com/198.html