Bootstrap

QT:小型视频播放器

必须添加以下语句在pro文件中

QT       += multimedia multimediawidgets

设置视频播放窗口大小

    videowidget = new QVideoWidget(this);
    videowidget->resize(600,300);

将player指定窗口:

player->setVideoOutput(videowidget);

要想让Player播放MP4文件,需要手动安装:(浏览器下载即可,不安装的话只能播放wav文化,无法播放MP4文件)
在这里插入图片描述
要包含一个QFileDialog头文件来打开文件

   filename = QFileDialog::getSaveFileName(this,"openFile","..//");
   player->setMedia(QUrl::fromLocalFile(filename));
   player->play();

增加几个按键来进行操作

void Widget::on_pushButton_2_clicked()
{
    player->play();//播放
}

void Widget::on_pushButton_3_clicked()
{
    player->pause();//暂停
}

void Widget::on_pushButton_4_clicked()
{
    player->stop();//停止
}

在增加一个进度条:显示视频的播放进度,那么首先要知道视频时长,作为进度条的最大值
player->duration()无法直接获得当前视频的长度,需要用connect

connect(player,&QMediaPlayer::durationChanged,this,&Widget::Get_Duration);
void Widget::Get_Duration()
{   int x = player->duration();
    ui->horizontalSlider->setMaximum(x);
}

在将slider和视频关联起来:

connect(ui->horizontalSlider,&QSlider::valueChanged,this,&Widget::SliderChanged);
void Widget::SliderChanged()
{
    pos = ui->horizontalSlider->value();
    player->setPosition(pos);
}

代码:
链接:https://pan.baidu.com/s/1mgHTJ-55vLFU5rTo9sXzpg
提取码:g6qx

;