EasyCap视频音频采集棒VS2010视频显示
2014-06-18 19:57
288 查看
EasyCap视频音频采集卡在VS2010环境下视频采集
因实验需求,购买了EasyCap视频音频采集卡来实现视频的传输,为了实现在VS2010环境下对视频的处理,需要进行一定的配置,以便对视频进一步进行配置。
本文分三部分来进行介绍:
一、直接采用Opencv中 obj >> frame 函数无法采集EasyCap传入的图像,运行时将出现蓝屏现象(该方法无法打开EasyCap);
二、采用Shiqi Yu编写的Directshow程序可以打开USB2.0 Camera摄像头,但无法打开EasyCap传入的图像(该方法无法打开EasyCap);
三、Microsoft的SDK/Samples/multimedia/directshow/capture/amcap程序可以实现EasyCap传入图像的显示(该方法可以打开EasyCap);
主要介绍OpenCv的配置、Shiqi Yu编写的Directshow的配置和Amcap程序中的配置。
一、OpenCv配置:
实验第一阶段,本以为可采用Opencv函数直接实现对EasyCap采集棒的视频传输,故在VS2010中对OpenCv进行配置。
下载OpenCv 2.3.1 superpack版:(该版本使用的人较多),http://opencv.org/downloads.html 解压OpenCv 2.3.1到D盘(其它地址也可以)
配置过程:
1、环境变量PATH
右键“计算机” --- > “属性”--- > “高级系统设置”--- > “环境变量”--- > “用户变量”--- > “新建”,在弹出的“新建环境变量”窗口中输入变量名“PATH",变量值”D:\opencv\build“
2、配置工程属性
在VS2010中新建VC++工程
在”Solution Explorer“中,右键工程名称--- > “属性”--- > “Configuration Properties”--- > “VC++ Directories”
-------------在”Include Directories“中输入”D:\opencv\build\include" ; "D:\opencv\build\include\opencv" ; "D:\opencv\build\include\opencv2"
-------------在“Library Directories”中输入“D:\opencv\build\x86\vc10\lib"
在”Solution Explorer“中,右键工程名称--- > “属性”--- > “Configuration Properties”--- > “Linker"--- > “Input"
-------------在”Additional Dependencies“中输入以下依赖库文件,分为Active Debug和Release两个配置(在窗口的左上角显示当前所配置的编译环境)
-------------Active Debug状态下:
opencv_calib3d231d.lib
opencv_contrib231d.lib
opencv_core231d.lib
opencv_features2d231d.lib
opencv_flann231d.lib
opencv_gpu231d.lib
opencv_highgui231d.lib
opencv_imgproc231d.lib
opencv_legacy231d.lib
opencv_ml231d.lib
opencv_objdetect231d.lib
opencv_ts231d.lib
opencv_video231d.lib
-------------Release状态下:
opencv_calib3d231d.lib
opencv_contrib231d.lib
opencv_core231d.lib
opencv_features2d231d.lib
opencv_flann231d.lib
opencv_gpu231d.lib
opencv_highgui231d.lib
opencv_imgproc231d.lib
opencv_legacy231d.lib
opencv_ml231d.lib
opencv_objdetect231d.lib
opencv_ts231d.lib
opencv_video231d.lib
至此Opencv2.3.1 superpack版在VS2010环境下的配置过程完成(配置过程中,无论是环境变量的配置还是VC++路径的配置,用到的都是opencv\build中的路径,可键入如下代码进行测试(代码为采用Opencv打开摄像头代码,只要编译通过即可,不必运行):
二、Shiqi Yu的Directshow环境配置
对于EasyCap采集棒,由于采用Opencv函数无法直接打开摄像头,而且会出现蓝屏现象,经上网查询得知该Easycap需要采用Directshow方式打开.
1、下载Shiqi Yu所编写的CameraDS函数,将其中的directshow文件夹放入自己所建立的VC++工程文件中
2、将Shiqi Yu所编写的CameraDS函数中的CameraDS.cpp和CameraDS.h添加到自己的工程当中(注意:一定要在VS2010环境中添加到工程中,而不是简单的将两个文件复制到自己的工程文件)。
3、编译运行即可(注意:VS2010的有些版本在编译时会出现:Error 'Link' fatal error LNK1123 failure during conversion to COEF file invalid or corrupt, 此时需要下载 vs2010 sp1 补丁包(http://www.microsoft.com/zh-cn/download/details.aspx?id=23691)即可正常编译)
至此Shiqi Yu的Directshow环境配置完成,运行该程序可以实现对Easycap设备名称的读取,但无法实现视频的传输,在opencamera阶段会报错。
三、Amcap程序的环境配置
因实验需求,购买了EasyCap视频音频采集卡来实现视频的传输,为了实现在VS2010环境下对视频的处理,需要进行一定的配置,以便对视频进一步进行配置。
本文分三部分来进行介绍:
一、直接采用Opencv中 obj >> frame 函数无法采集EasyCap传入的图像,运行时将出现蓝屏现象(该方法无法打开EasyCap);
二、采用Shiqi Yu编写的Directshow程序可以打开USB2.0 Camera摄像头,但无法打开EasyCap传入的图像(该方法无法打开EasyCap);
三、Microsoft的SDK/Samples/multimedia/directshow/capture/amcap程序可以实现EasyCap传入图像的显示(该方法可以打开EasyCap);
主要介绍OpenCv的配置、Shiqi Yu编写的Directshow的配置和Amcap程序中的配置。
一、OpenCv配置:
实验第一阶段,本以为可采用Opencv函数直接实现对EasyCap采集棒的视频传输,故在VS2010中对OpenCv进行配置。
下载OpenCv 2.3.1 superpack版:(该版本使用的人较多),http://opencv.org/downloads.html 解压OpenCv 2.3.1到D盘(其它地址也可以)
配置过程:
1、环境变量PATH
右键“计算机” --- > “属性”--- > “高级系统设置”--- > “环境变量”--- > “用户变量”--- > “新建”,在弹出的“新建环境变量”窗口中输入变量名“PATH",变量值”D:\opencv\build“
2、配置工程属性
在VS2010中新建VC++工程
在”Solution Explorer“中,右键工程名称--- > “属性”--- > “Configuration Properties”--- > “VC++ Directories”
-------------在”Include Directories“中输入”D:\opencv\build\include" ; "D:\opencv\build\include\opencv" ; "D:\opencv\build\include\opencv2"
-------------在“Library Directories”中输入“D:\opencv\build\x86\vc10\lib"
在”Solution Explorer“中,右键工程名称--- > “属性”--- > “Configuration Properties”--- > “Linker"--- > “Input"
-------------在”Additional Dependencies“中输入以下依赖库文件,分为Active Debug和Release两个配置(在窗口的左上角显示当前所配置的编译环境)
-------------Active Debug状态下:
opencv_calib3d231d.lib
opencv_contrib231d.lib
opencv_core231d.lib
opencv_features2d231d.lib
opencv_flann231d.lib
opencv_gpu231d.lib
opencv_highgui231d.lib
opencv_imgproc231d.lib
opencv_legacy231d.lib
opencv_ml231d.lib
opencv_objdetect231d.lib
opencv_ts231d.lib
opencv_video231d.lib
-------------Release状态下:
opencv_calib3d231d.lib
opencv_contrib231d.lib
opencv_core231d.lib
opencv_features2d231d.lib
opencv_flann231d.lib
opencv_gpu231d.lib
opencv_highgui231d.lib
opencv_imgproc231d.lib
opencv_legacy231d.lib
opencv_ml231d.lib
opencv_objdetect231d.lib
opencv_ts231d.lib
opencv_video231d.lib
至此Opencv2.3.1 superpack版在VS2010环境下的配置过程完成(配置过程中,无论是环境变量的配置还是VC++路径的配置,用到的都是opencv\build中的路径,可键入如下代码进行测试(代码为采用Opencv打开摄像头代码,只要编译通过即可,不必运行):
<span style="font-size:18px;"><h5>#include "stdafx.h" #include <opencv.hpp> using namespace cv; int main( int argc, char ** argv) { VideoCapture obj(0); if( !obj.isOpened() ) { return 0; } while(1) { Mat im,frame; obj >> frame; frame.copeTo(im); } }</h5> </span>
二、Shiqi Yu的Directshow环境配置
对于EasyCap采集棒,由于采用Opencv函数无法直接打开摄像头,而且会出现蓝屏现象,经上网查询得知该Easycap需要采用Directshow方式打开.
1、下载Shiqi Yu所编写的CameraDS函数,将其中的directshow文件夹放入自己所建立的VC++工程文件中
2、将Shiqi Yu所编写的CameraDS函数中的CameraDS.cpp和CameraDS.h添加到自己的工程当中(注意:一定要在VS2010环境中添加到工程中,而不是简单的将两个文件复制到自己的工程文件)。
3、编译运行即可(注意:VS2010的有些版本在编译时会出现:Error 'Link' fatal error LNK1123 failure during conversion to COEF file invalid or corrupt, 此时需要下载 vs2010 sp1 补丁包(http://www.microsoft.com/zh-cn/download/details.aspx?id=23691)即可正常编译)
至此Shiqi Yu的Directshow环境配置完成,运行该程序可以实现对Easycap设备名称的读取,但无法实现视频的传输,在opencamera阶段会报错。
三、Amcap程序的环境配置
相关文章推荐
- EXTJS学习系列提高篇:第十四篇(转载)作者殷良胜,利用Ext显示flash或者音频或者视频的效果
- ffmpeg摄像头视频采集 音频采集的正确参数
- 基于嵌入式Linux的视频采集系统6----视频在LCD上的实时显示
- Linux下视频采集及显示
- Linux 下摄像头视频采集与显示
- 使用JMF进行视频、音频的采集与实时传送
- 基于Video4linux的视频采集,用SDL显示
- 入门视频采集与处理(显示YUV数据)
- 采集音频和摄像头视频并实时H264编码及AAC编码
- 使用JMF进行视频、音频的采集与实时传送
- Linux下视频采集及其显示
- Linux 下摄像头视频采集与显示
- Linux下视频采集及其显示
- ARM11硬件编解码例程,实现视频的采集压缩以及传输显示
- Linux下视频采集及其显示
- 基于Video4linux的视频采集,用SDL显示
- 终于实现了S3C6410 video capture 方式的视频采集显示,高兴下
- 采集视频,并在PC上显示出采集到的视频的程序
- Android 视频和音频采集
- 入门视频采集与处理(显示YUV数据)