.NET 使用 VLC 播放视频
2024-10-01 08:45:27
使用 VLC 播放监控有几个月了,现在是多个项目中都有用到。在使用的过程中也有一些细节供大家参考。
一、对 VLC 的了解
VLC 是一个开源的跨平台多媒体播放器及框架。
VLC 官方出的有播放器、编辑器等专业工具在视频领域使用。
VLC 是基于 ffmpeg 的。对于 ffmpeg 这个算是视频方面的最底层基础的了,很多主流的播放器等都是基于此。
更多的情况可以访问 官方网站。
二、.NET 使用 VLC
在项目中右键-“管理 NuGet 程序包”,打开NuGet界面,查找 VLC 相关的包。从使用度、更新速度等,从中找出两个较好的(这里只是自己观点)。
1、Vlc.DotNet
这个包是个人开源在 GitHub 上面的,使用人数比较多,也一直在维护。
可以直接从 GitHub 上面下载源码,并且源码中还有很多例子,看例子挺容易上手。
有一个问题是,因为需要 vlc 的dll文件包,这里需要在初始化的时候指定 libDirectory。
2、VideoLAN.LibVLC
这个是 VideoLAN 官方出的包,使用人数也较多。
其源码是在官方网站下的代码路径中:代码地址,也是开源,可以下载,也包含一些实例代码。
这个不需要初始化的时候指定 libDirectory。
这两个都可以在 WinForm 和 WPF 中使用。
这两个只有引用了 NuGet 包局可以使用,运行程序的时候会自己下载所需要的 lib 文件。
三、全屏、不显示提示字体
1、全屏
这里的全屏的话只能在初始化的时候设置好,在窗体变化了后就不能再全屏。
VideoLAN.LibVLC 中:
_mediaPlayer = new MediaPlayer(_libVLC)
{
Fullscreen = true,
AspectRatio = this.Width + ":"+ (this.Height -)
};
Vlc.DotNet 中:
string ratio = border.ActualWidth + ":" + border.ActualHeight; vlcControl.Video.FullScreen = true;
vlcControl.Video.AspectRatio = ratio;
2、不显示提示字体
这个提示是:例如在截屏的时候显示截屏文件名
现在只找到在 VideoLAN.LibVLC 中的方法:
List<string> paramsStr = new List<string> { "--no-osd", "--no-snapshot-preview" };
_libVLC = new LibVLC(paramsStr.ToArray());
初始化的时候传字符串的参数。
最新文章
- C#中string.format用法详解
- 关于 Lo、Hi、LoWord、HiWord
- 使用Python和Perl绘制北京跑步地图
- 细说 C# 中的 IEnumerable和IEnumerator接口
- (IEEE-754) 字节数组与浮点数之间的互相转换(MODBUS float类型)
- 使用 google gson 转换Timestamp或Date类型为JSON字符串.
- js-小效果-瀑布流
- iOS ARC中CTCallCenter没用,无法监听电话的解决方案
- macos下sed小试
- NGif, Animated GIF Encoder for .NET
- [css] line boxes
- 给jdk写注释系列之jdk1.6容器(11)-Queue之ArrayDeque源码解析
- git http方式时保存密码
- Linux时间设置
- [MySQL]--&;gt;询5 几天之内解决在新年发行一个同事的生日过程
- 201521123016《Java程序设计》第12周学习总结
- selenium python 中浏览器操作
- Spring源码学习笔记2
- 爬虫之牛掰的scrapy框架
- MAC终端安装指定版本node