最近代码写了一大堆,但是没传多少,改天找个时间梳理下!废话不多说,


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、歌词功能