[C++] Qt 영상출력 및 재생 안되는 문제 해결

yeonji·2023년 5월 26일
0

QMediaPlayer, QVideoWidget 사용하여 영상(MP4, AVI 등) 재생하기

  • Visual Studio 2019
  • Qt 5.14.2
  • C++

1. Qt 영상재생

cameraTest.h

#include <QtWidgets/QMainWindow>
#include "ui_cameraTest.h"
#include <qmediaplayer.h>
#include <qvideowidget.h>

class cameraTest : public QMainWindow
{
    Q_OBJECT

public:
    cameraTest(QWidget *parent = nullptr);
    ~cameraTest();

private:
    Ui::cameraTestClass ui;

    QMediaPlayer* mMediaPlayer = nullptr;
    QVideoWidget* mVideoWidget = nullptr;
};

cameraTest.cpp

#include "cameraTest.h"

cameraTest::cameraTest(QWidget *parent)
    : QMainWindow(parent)
{
    ui.setupUi(this);

    mMediaPlayer = new QMediaPlayer(this, QMediaPlayer::VideoSurface);

    mVideoWidget = new QVideoWidget(this);
    mMediaPlayer->setVideoOutput(mVideoWidget);

    ui.verticalLayout->addWidget(mVideoWidget);

    mMediaPlayer->setMedia(QMediaContent(QUrl::fromLocalFile("동영상경로")));

    mMediaPlayer->play();
    mVideoWidget->show();
}

cameraTest::~cameraTest()
{
    if (mMediaPlayer)
    {
        delete mMediaPlayer;
        mMediaPlayer = nullptr;
    }
    if (mVideoWidget)
    {
        delete mVideoWidget;
        mVideoWidget = nullptr;
    }
}

2. 동영상 재생이 안 될 때

코덱(Codec) 설치 후 재실행
https://codecguide.com/download_kl.htm

profile
한 줄 소개

0개의 댓글