1)功能需求分析
功能需求分析如图1-1所示。
图1-1 功能需求图
2)播放视频文件:用户可以通过该软件播放任意格式(例如 avi、rmvb、rm等格式)的视频文件。
3)播放音频文件:用户可以播放常规(MP3、MP4格式)的音频文件。
4)文件列表显示、移除、清空:用户打开文件的显示在列表中,点击移除,可移除当前选中的文件,点击清空,可清空所有文件。
5)播放进度控制:用户可以拖动进度条,改变视频播放位置。
6)全屏显示:视频全屏显示充满整个屏幕。
7)音频速率调整:用户可以选择0.5x、1.0x、1.5x以及2.0x的倍率。
8)音量大小控制:用户可以拖动滑动条控制音量大小。
9)视频颜色选择:用户可以选择调整播放视频的亮度、对比度、色调以及饱和度。
详细设计
QMediaPlayer可以播放经过压缩的是音频或视频文件,如mp3、mp4、wmv等文件,QMediaPlayer可以播放单个文件,也可以和QMediaPlaylist类结合,对一个播放列表进行播放。所以使用QMediaPlayer和QMediaPlaylist可以轻松设计一个音乐或视频播放器。QMediaPlayer的主要公共函数和槽函数见表3_1。
表3_1 QMediaPlayer类部分常用方法
本例使用QMediaPlayer创建视频播放器实例,通过QMediaPlayer::setVideoOutput()方法设置视频显示组件,使用QMediaPlayer::setPlaylist()方法设置播放列表,最后通过QVideoWidget::setMediaPlayer()方法将显示组件与播放器关联。
QMediaPlaylist的相关函数使用说明参见表3_2
QVideoWidget类中是用于播放显示视频的类,该类中含有设置播放视频的亮度、对比度、饱和度以及色调,本例中通过使用滑动条,释放滑动条移动信号,有该类接收信号,实现已经封装好的槽函数。QVideoWidget的相关函数使用说明参见表3_3
最后附上资源链接:https://download.csdn.net/download/exaggeration08/11286919