win音视频--qt视频显示

       使用window的directxshow显示视频真是费劲,写了半天的代码把自己绕到云里雾里,对于初学者真是费劲,找不到东西南北,在qt里开发,为了显示个window的视频预览,费了我九牛二虎之力,累的要死。

       在CreateWindow创建的窗口里能够正常调用本地摄像头并显示的的代码(参见:http://blog.csdn.net/qyee16/article/details/12072743),在qt控件里就是显示不出来。头大,无奈只能另寻出路,难道如此强大方便的Qt里没有?Qt Creator例子,拿来看看果然有,调用本地摄像头的例子,看了看,比较大,抽出了部分代码,能够显示本地摄像头预览!拿来以飨初学者!

#include <QtMultimediaWidgets/qcameraviewfinder.h>
#include <QtMultimedia/Qcamera.h>
#include <qdebug.h>
#include <QtWidgets/qlabel.h>
#include <QtWidgets/qapplication.h>
#pragma comment(lib, "Qt5Multimediad.lib")
#pragma comment(lib, "Qt5MultimediaWidgetsd.lib")
#pragma comment(lib, "Qt5Guid.lib")
#pragma comment(lib, "Qt5Widgetsd.lib")

int main(int argc, char *argv[])
{
	QApplication app(argc, argv);
	QCamera *camera;
	QByteArray devName;
	foreach(const QByteArray &deviceName, QCamera::availableDevices()) 
	{
		QString description = camera->deviceDescription(deviceName);
		devName = deviceName;
	}

	camera = new QCamera(devName);

	QLabel label("hell");
	label.setFixedSize(400, 600);

	QCameraViewfinder *find = new QCameraViewfinder(&label);
	find->setFixedSize(400, 600);
	camera->setViewfinder(find);
	camera->start();
	label.show();
	return app.exec();
}

qt的视频控制demo,名为Camera Example ,在Qt5.1.1 createor里面能够搜索找到:

                                                                                                                      

环境: vs2010 + Qt5.1.1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值