我是靠谱客的博主 虚心蜻蜓,最近开发中收集的这篇文章主要介绍windows 视频采集开源库,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

现在进行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 视频采集开源库所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(71)

评论列表共有 0 条评论

立即
投稿
返回
顶部