概述
现在进行windows上视频采集,主要的库有 opencv ffmpeg videoinput。
下面简单介绍下 videoinput
官网: http://www.muonics.net/school/spring05/videoInput/
源代码:https://github.com/ofTheo/videoInput
videoinput 正常同时进行多路采集,通过传递设备索引号即可。
直接上简单的代码:
videoInput VI;
int devideNumber = 0;
VI.setIdealFramerate(devideNumber, 50);
VI.setupDevice(devideNumber, 320, 240);
int width = VI.getWidth(devideNumber);
int height = VI.getHeight(devideNumber);
int size = VI.getSize(devideNumber);
unsigned char * bgr = new unsigned char[size];
while (true) {
//to get the data from the device first check if the data is new
if(VI.isFrameNew(devideNumber)){
VI.getPixels(devideNumber, bgr, false, false); //fills pixels as a BGR (for openCV) unsigned char array - no flipping
} else {
Sleep(10);
continue;
}
}
在Qt的mingw 环境下,直接包含 videoinout.h videoinout.cpp,
需要这样修改:
在遇到HEADER 找不到时,替换成 PBITMAPINFOHEADER 即可。
Qt的工程文件如下:
#-------------------------------------------------
#
# Project created by QtCreator 2014-11-16T05:09:09
#
#-------------------------------------------------
QT += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = VideoInput_Test
TEMPLATE = app
LIBS += -L$$PWD/libs/DShow/lib -ldxguid -lole32 -loleaut32 -lstrmiids -luuid -lstrmbasd -lstrmbase
LIBS += -L$$PWD/libs/glfw -lglfw
SOURCES += main.cpp
mainwindow.cpp
videoInput.cpp
HEADERS += mainwindow.hpp
videoInput.h
FORMS += mainwindow.ui
最后
以上就是虚心蜻蜓为你收集整理的windows 视频采集开源库的全部内容,希望文章能够帮你解决windows 视频采集开源库所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复