.NET 使用 VLC 播放视频
使用 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());
初始化的时候传字符串的参数。
.NET 使用 VLC 播放视频的更多相关文章
- (转)VLC播放RTP打包发送的.264文件
VLC播放RTP打包发送的.264文件 1,要有一个发送RTP包的264文件的服务器; 具体代码如下: rtp.h #include <WinSock2.h> #pragma commen ...
- 使用vlc播放器播放rtsp流视频
可参考: 使用vlc播放器做rtsp服务器 web网页中使用vlc插件播放相机rtsp流视频 使用vlc进行二次开发做自己的播放器 首先需要安装vlc播放器,下载及安装步骤略 使用vlc播放器播放rt ...
- WPF VlC 实现视频的播放(1)
WPF 使用VLC实现视频的播放:网上开源代码我复制了一份: https://github.com/someonehan/Vlc.DotNet 1. 准备阶段 (I) libvlc.dll 和 l ...
- 用vlc SDK创建一个播放视频文件和RTSP流视频的Demo
#include <stdio.h> #include <tchar.h> #include <time.h> #include <windows.h> ...
- VLC播放RTSP视频延迟问题 (转)
原帖地址:http://blog.chinaunix.net/uid-26611383-id-3755283.html ======================================== ...
- VLC播放RTSP视频延迟问题
VLC播放RTSP视频延迟问题 配置 VLC 以播放 RTSP/RTP 流 实测发现RTP都不如TCP快? vlc播放rtp封装的h.264延时很大是什么原因? 开启打印: VLC的工具->消息 ...
- 嵌入式 vlc从接收到数据流到播放视频的过程分析(经典)
个人整理: Vlc流播放流程 vlc源码目录树: 目录名称 说明 bindings Java, CIL 和Python绑定 doc 帮助文档 (不是更新的) extras 另叙. include VL ...
- 使用vlc播放器做rtsp流媒体服务器
可参考: 使用vlc播放器播放rtsp视频 web网页中使用vlc插件播放相机rtsp流视频 使用vlc进行二次开发做自己的播放器 首先需要安装vlc播放器,下载及安装步骤略 使用vlc播放器做rts ...
- WPF播放视频
在现在的项目中需要使用到播放视频的功能,本来打算使用VLC来做的.后来发现WPF 4.0之后新增了MediaElement类,可以实现视频播放. <Grid> <Grid.RowDe ...
随机推荐
- ajax中如何使用全局变量?
在ajax中一般都是采取默认的异步请求,但是有时候参数是需要做到全局通用,这时候发起同步请求. 如下: $.ajax({ type:"post", url:"url路径& ...
- python3 安装 pyinstaller 时报错的解决办法
如上图所示,在安装的过程中发现是所关联的一个 future模块安装失败,庵后我有单独安装了一下这个future,发现还是失败 然后在网上寻找解决办法,最后找到了这个指令,pip install fut ...
- java网站架构演变过程
网站架构演变过程. .传统架构.传统的SSH架构,分为三层架构web控制层.业务逻辑层.数据库访问层..传统架构也就是单点应用,就是大家在刚开始初学JavaEE技术的时候SSH架构或者SSM架构,业务 ...
- Http、RESTful、RPC、MQ、Socket 概念与区别
若要转载本文,请务必声明出处:https://www.cnblogs.com/zhongyuanzhao000/p/11700815.html 1. 关于HTTP: HTTP,即超文本传输协议,是一个 ...
- vue-cli中轮播图vue-awesome-swiper使用方法
1 npm 安装 npm install vue-awesome-swiper --save 2在所用的组件中引入 import 'swiper/dist/css/swiper.css' import ...
- C# vb .net实现大小调整特效滤镜
在.net中,如何简单快捷地实现Photoshop滤镜组中的大小调整效果呢?答案是调用SharpImage!专业图像特效滤镜和合成类库.下面开始演示关键代码,您也可以在文末下载全部源码: 设置授权 第 ...
- 记一次线上问题排查:C#可选参数的坑
线上报了大量异常,错误信息为:找不到XX方法实现 代码调用关系是: 查看代码历史记录,发现最近上线前对 GetUserDottedLineSuperiors 方法做过修改,增加了一个可选参数. 跟相关 ...
- python安装和pycharm安装与笔记
目录 计算机的基础知识 python安装和使用 pycharm安装和使用 [TOC] 计算机的基础知识 计算机是由什么组成的 cpu-----大脑 主板----身体 电源----心脏 内存----临时 ...
- javascript中attribute和property的区别详解
DOM元素的attribute和property很容易混倄在一起,分不清楚,两者是不同的东西,但是两者又联系紧密.很多新手朋友,也包括以前的我,经常会搞不清楚. attribute翻译成中文术语为“特 ...
- caement Archaic spelling of cement
caement Archaic spelling of cement. caement Alternative forms[edit] caement (archaic) cæment (archai ...