如何将媒体文件添加到 QMediaPlaylist
How do I add media files to QMediaPlaylist?
我是Qt和C++的初学者,并制作了一个示例媒体播放器。我只想使用 QMedia播放列表类创建一个播放列表。
我只是想要它,以便当我单击一个图标时,它会弹出一个窗口,我可以在其中选择多个视频文件,并使用 QMedia播放列表附加这些文件。
我已经完成了多项选择部分。但是我无法弄清楚如何使用QMediaPlaylist附加这些文件。
playlist = new QMediaPlaylist(player);
QStringList filenames = QFileDialog::getOpenFileNames(this,"Open a File","","Video File(*.*)");
playlist->addMedia(filenames); //error has occurred in this line
player->setPlaylist(playlist);
on_actionPlay_triggered();
语义问题
error:no matching member function for call to 'addMedia"
qmediaplaylist.h:90:10:note:candidate function not viable:no known
conversion from 'QStringList' to const QMediaContent' for 1st argument
qmediaplaylist.h:91:10:note:candidate function not viable:no known
conversion from 'QStringList' to 'const QList<QMediaContent>'for 1st
argument
您必须使用 QUrl::fromLocalFile()
转换QMediaContent
中的每个路径:
playlist = new QMediaPlaylist(player);
QStringList filenames = QFileDialog::getOpenFileNames(this, "Open a File","","Video File(*.*)");
for(const QString & filename: filenames){
playlist->addMedia(QMediaContent(QUrl::fromLocalFile(filename)));
}
player->setPlaylist(playlist);