#include "QMutPlayer.h"
#include "ui_QMutPlayer.h"
#include<QFileDialog>
#include<QDebug>
QMutPlayer::QMutPlayer(QWidget *parent) :
QWidget(parent),
ui(new Ui::QMutPlayer)
{
ui->setupUi(this);
mVideoPlayer = new QMediaPlayer(this);
mSurfacePlayer = new QMediaPlayer(this);
mVideoSurface = new VideoSurface(this);
mQmlWidget = new QmlLoadWidget(ui->lab_qmlwidget);
mVideoWidget = new QVideoWidget(ui->lab_videowidget);
mVideoPlayer->setVideoOutput(mVideoWidget);
mSurfacePlayer->setVideoOutput(mVideoSurface);
connect(mVideoSurface,SIGNAL(showImage(QImage)),SLOT(onShowImage(QImage)));
}
QMutPlayer::~QMutPlayer()
{
delete ui;
}
void QMutPlayer::on_btn_select_video_clicked()
{
QString fileName = QFileDialog::getOpenFileName(this, tr("Open File"),"", tr("video (*.mp4 *.wav *.avi)"));
if(fileName.isEmpty())
return;
mVideoPlayer->setMedia(QUrl(fileName));
mSurfacePlayer->setMedia(QUrl(fileName));
mVideoPlayer->play();
mSurfacePlayer->play();
}
void QMutPlayer::onShowImage(QImage image)
{
mQmlWidget->addImage(image);
QPixmap pixmap = QPixmap::fromImage(image);
ui->lab_video_1->setPixmap(pixmap);
ui->lab_video_2->setPixmap(pixmap);
}
void QMutPlayer::showEvent(QShowEvent *event)
{
Q_UNUSED(event)
mVideoWidget->resize(ui->lab_videowidget->size());
mQmlWidget->resize(ui->lab_qmlwidget->size());
}