海康的格式比较特殊,几乎是私有的,解码的话要使用海康的库才行。
先要下载SDK,地址如下:
http://www1.hikvision.com/cn/download_more_406.html
我这里下载的是64位的,我本地的环境是Win10 64位, Qt是5.9.0 64bit,编译器使用VS2013
使用的话,还是挺方便的
pro中导入海康的库:
LIBS += -L$$PWD/hik -lPlayCtrl
代码中的使用:
#include "mainwindow.h"
// Qt lib import
#include <QDebug>
#include <QMetaObject>
#include <QPixmap>
#include <QImage>
#include <QFileDialog>
#include <QStandardPaths>
#include <QThread>
// UI import
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui_(new Ui::MainWindow)
{
ui_->setupUi(this);
qRegisterMetaType< QPixmap >( "QPixmap" );
connect( ui_->pushButton, &QPushButton::clicked, this, &MainWindow::play );
}
MainWindow::~MainWindow()
{
delete ui_;
}
bool MainWindow::yv12ToRGB888(const unsigned char *yv12, unsigned char *rgb888, int width,