Qt
мультимедиа
Поиск…
замечания
Qt Multimedia - это модуль, обеспечивающий обработку мультимедийных (аудио, видео), а также функций камеры и радио.
Однако поддерживаемые файлы QMediaPlayer зависят от платформы. Действительно, в Windows QMediaPlayer использует DirectShow, в Linux он использует GStreamer. Поэтому в зависимости от платформы некоторые файлы могут работать на Linux, но не на Windows или наоборот.
Воспроизведение видео в Qt 5
Давайте создадим очень простой видеоплеер с помощью QtMultimedia модуля Qt 5.
В файле .pro вашего приложения вам понадобятся следующие строки:
QT += multimedia multimediawidgets
Обратите внимание, что для использования QVideoWidget
необходимо использовать multimediawidgets
QVideoWidget
.
#include <QtMultimedia/QMediaPlayer>
#include <QtMultimedia/QMediaPlaylist>
#include <QtMultimediaWidgets/QVideoWidget>
QMediaPlayer *player;
QVideoWidget *videoWidget;
QMediaPlaylist *playlist;
player = new QMediaPlayer;
playlist = new QMediaPlaylist(player);
playlist->addMedia(QUrl::fromLocalFile("actualPathHere"));
videoWidget = new QVideoWidget;
player->setVideoOutput(videoWidget);
videoWidget->show();
player->play();
Вот и все - после запуска приложения (если в системе установлены кодеки), начнется воспроизведение видеофайла.
Точно так же вы можете воспроизводить видео с URL-адреса в Интернете, а не только локального файла.
Воспроизведение аудио в Qt5
Поскольку это аудио, нам не нужен QVideoWidget. Таким образом, мы можем сделать:
_player = new QMediaPlayer(this);
QUrl file = QUrl::fromLocalFile(QFileDialog::getOpenFileName(this, tr("Open Music"), "", tr("")));
if (file.url() == "")
return ;
_player->setMedia(file);
_player->setVolume(50);
_player->play();
в .h:
QMediaPlayer *_player;
это откроет диалог, в котором вы можете выбрать свою музыку, и она будет воспроизводить ее.