参考上一篇  使用vlc打开usb摄像头

理论上输入下面地址

"dshow:// :dshow-size=1600*1200:dshow-vdev=USB CAM2"
C#就能打开摄像头了
类似打开本地文件或者rtsp之类的网络地址

但实际测试怎么着都是打开第一个摄像头,第二个怎么也打不开

实际上vlc打开网络串流那里复制这个地址进去也是只能打开第一个摄像头

注意到

media.AddOption
这个方法
就试了一下,发现分辨率可以控制了,摄像头也可以选择了

但这里需要摄像头名字
:dshow-vdev

就只好根据上一篇AForge来获取了

使用AForge.NET Framework打开摄像头并截图 C#

反正研究这个就是为了补充AForge不支持的摄像头打开。AForge开发轻松得多,也更好用

Vlc.DotNet.Forms.VlcControl cc = new  Vlc.DotNet.Forms.VlcControl();
cc.Width = ;
cc.Height = ;
cc.Top = ;
cc.Left = ; Vlc.DotNet.Core.Medias.MediaBase media = new Vlc.DotNet.Core.Medias.LocationMedia("dshow:// ");
media.AddOption(":dshow-size=1600*1200");
media.AddOption(":dshow-vdev=USB CAM2"); cc.Play(media);
this.Controls.Add(cc);
cc.BringToFront(); //cc.TakeSnapshot("D:\\111.jpg", 1600, 1200);//截图

 注意

Vlc.DotNet.Core.Medias.MediaBase media = new Vlc.DotNet.Core.Medias.LocationMedia("dshow:// ");
初始化MediaBase 时只需
"dshow:// "
即可

选择哪个相机需要AddOption
,选择分辨率之类的参数也要AddOption

但不支持相机index,必须相机name,可以参考使用AForge.NET Framework打开摄像头 C#获取对应index的name

使用Vlc.DotNet打开摄像头并截图 C#的更多相关文章

  1. JS打开摄像头并截图上传

    直入正题,JS打开摄像头并截图上传至后端的一个完整步骤 1. 打开摄像头主要用到getUserMedia方法,然后将获取到的媒体流置入video标签 2. 截取图片主要用到canvas绘图,使用dra ...

  2. 使用AForge.NET Framework打开摄像头并截图 C#

    videoDevices = new FilterInfoCollection(FilterCategory.VideoInputDevice); if (videoDevices.Count == ...

  3. DxPackNet 1.打开摄像头

    好久没写博客了 ,这个系列将给大家介绍.net下一个非常好用的视频控件 ------ DxPackNet, 用这个控件大家可以轻松开发出 视频会议,视频监控,远程桌面,远程教学,远程白板,视频直播,视 ...

  4. Unity打开摄像头占满全屏

    Unity打开摄像头占满全屏 AR项目需求,Unity打开摄像头作为背景渲染占满全屏~ Unity对设备硬件操作的API并不是太友好~打开一个摄像头,渲染到屏幕上也都得自己写,虽然步骤少,提取摄像头t ...

  5. OpenCV Open Camera 打开摄像头

    这是一个用OpenCV2.4.10打开摄像头的一个例子,参见代码如下: #include <iostream> #include <stdio.h> #include < ...

  6. 如何使用 OpenCV 打开摄像头获取图像数据?

    OpenCV 如何打开摄像头获取图像数据? 代码运行环境:Qt 5.9.1 msvc2015 32bit OpenCV 3.3.0 #include "include/opencv2/ope ...

  7. OpenCV x64 vs2010 下打开摄像头录制视频写成avi(代码为转载)

    首先参照下面这里进行opencv x64位机器下面的配置 http://wiki.opencv.org.cn/index.php/VC_2010%E4%B8%8B%E5%AE%89%E8%A3%85O ...

  8. python3脚本打开摄像头

    openCamera 脚本地址:https://github.com/Mrlshadows/openCamera Mac OS 安装 OpenCV Python 环境为 python3 终端执行如下指 ...

  9. opencvbase 实现opencv打开摄像头和初步处理等效果操作(附源码)

    // TwoCameraOnTimer2Dlg.cpp : 实现文件 /* CvMat, Mat, IplImage之间的互相转换 IpIImage -> CvMat CvMat mathead ...

随机推荐

  1. java10.0.2和java 11.0.1配置环境变量

    java10.0.2 在网上找了各种方法一直也没配好打开jak下的lib文件夹发现并没有tools.jar,后经查询jdk-9后就没有了上述.jar文件所以我的配置方法如下 ClASSPATH C:\ ...

  2. mysql5.7不支持group by的解决办法

    1.查看sql_mode select @@global.sql_mode 查询出来的值为: ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DAT ...

  3. CSS盒子模型(Box Model)

    一.背景 作为CSS的重点,三大模块之一的盒子模型,这部分无论如何也要精通透彻.在任何一个网页当中,都有自己的布局方式,所谓网页布局方式就是如何把网页里面的文字.图片,很好的排版成美工设计的样式,这时 ...

  4. c/c++ 继承与多态 容器与继承2

    c/c++ 继承与多态 容器与继承1说明了容器里使用继承关系的方法,这里再弄一个练习,巩固一下. 做一个类Basket,它有个multiset成员,key是智能指针std::shared_ptr< ...

  5. awk、grep、sed是linux操作文本的三大利器,也是必须掌握的linux命令之一

    awk.grep.sed是linux操作文本的三大利器,也是必须掌握的linux命令之一.三者的功能都是处理文本,但侧重点各不相同,其中属awk功能最强大,但也最复杂.grep更适合单纯的查找或匹配文 ...

  6. Java多线程基础(二)

    1.多线程数据安全 线程同步:多个线程需要访问同一资源时,需要以某种顺序来确定该资源某一时刻只能被一个线程使用.从而,解决并发操作可能带来的异常. 2.同步代码块实现同步(部分代码的访问,我们希望它同 ...

  7. 安装指定版本的docker服务

    参考博客:Docker CE 镜像源站 参考博客:docker启动异常driver not supported 1. 说明 之前部署docker服务的时候都是安装最新的docker版本,并使用dock ...

  8. 【初学必备】Win10环境下Anaconda安装

    Anaconda集合了python,Spyder,Jupyter notebook及conda-----包管理器与环境管理器(含常用的panda,numpy等),省去单独下载的繁琐步骤,方便使用. 注 ...

  9. 线程池工厂方法newFixedThreadPool()和newCachedThreadPool()

    newFixedThreadPool()方法: 该方法返回一个固定数量的线程池,当一个新的任务提交时,线程池中若有空闲线程,则立即执行. 若没有.则新的任务被暂存在一个任务队列中,待线程空闲时,便处理 ...

  10. git-将dev代码合并到test

    1. 在dev分支上刚开发完项目,执行以下命令: git add git commit -m 'dev' git push -u origin dev 2.切换到test分支上 如果是多人开发,先把远 ...