最近代码写了一大堆,但是没传多少,改天找个时间梳理下!废话不多说,
Qt5貌似在音频和视频的处理上和Qt4不同,Qt4用Phonon,Qt5用QMediaPlayer。
1、修改pro文件
在pro文件中添加QT +=multimedia //音频处理
在pro文件中添加QT +=multimediawidget //支持QVideoWidget,播放视频
2、
//窗口设置为支持播放视频流
setAttribute(Qt::WA_TranslucentBackground,true);
player = new QMediaPlayer(this,0);
playlist = new QMediaPlaylist(this);
videowidget = new QVideoWidget(this);
nextBtn = new QPushButton(tr("next"), this);
QGridLayout *mainLayout = new QGridLayout(this);
//向播放列表中添加媒体文件
playlist->addMedia(QUrl::fromLocalFile("C:/Users/zgw/Music/old.mp3"));
playlist->addMedia(QUrl::fromLocalFile("C:/Users/zgw/Music/her.mp3"));
playlist->addMedia(QUrl::fromLocalFile("C:/Users/zgw/Music/hua.mp3"));
playlist->addMedia(QUrl::fromLocalFile("C:/Users/zgw/Music/Wildlife.wmv"));
//设置列表从哪里开始播放
playlist->setCurrentIndex(playindex);
player->setPlaylist(playlist);
player->setVideoOutput(videowidget);
videowidget->show();
mainLayout->addWidget(videowidget, 1, 1, 3, 3);
mainLayout->addWidget(nextBtn, 4, 1, 1, 1);
this->setLayout(mainLayout);
//设置音量,开始播放
player->setVolume(100);
player->play(); connect(nextBtn, SIGNAL(clicked()), this, SLOT(On_next_click()));
void MyWidget::On_next_click()
{
if(playindex == 4)
{
playindex = 1;
}
else
{
playindex++;
}
player->stop();
playlist->setCurrentIndex(playindex);
player->play();
} 功能方面实现的很简单,界面更简单 - -|||。 下一步继续扩展功能:1、播放列表可视化,2、手动添加播放文件,3、实现网络功能(下载歌曲,缓存听歌) 4、歌词功能
时间: 2024-11-09 18:56:54