Qt仿音乐播放器:媒体类

一、铺垫

我暂时只会音频系列的操作,我只能演示音频部分;但是QMediaPlayer是一个可以播放视频、音频的类;请同学们细读官方文档;

二、头文件

#include<QMediaPlayer> 头文件

#include<QMediaPlaylist>

三、演示

我会先演示套路;再补充细节:

复制代码
QMediaPlayer* player=new QMediaPlayer(this); //创建对象,并挂在对象树上
QMediaPlaylist* playList=new QMediaPlaylist(this);//创建对象,并挂在对象树上

//2.设置默认播放模式
playList->setPlaybackMode(QMediaPlaylist::Random);//设置播放回放模式为随机循环

//3.将播放列表设置到播放媒体对象中;
player->setPlaylist(playList);

细节:

QMediaPlayer:我愿意称之为是一个播放者

QMediaPlaylist:称之为播放列表

当将播放列表设置到播放者里时,播放者就是按照播放列表来依次播放内容

四、常用函数

请原谅我使用英文,允许我解释

1.软件是外国的,我翻译再牛逼,也是半吊子,带有我自己的个人色彩;

2.我行告诉诸位同学;都是从官方文档中找的,请诸君共勉;

QMediaPlayer* player=new QMediaPlayer(this); //创建播放者,并挂在对象树上

player->setVolume(20); //设置默认音量大小-默认设置成20%

player->state() //获取播放者的状态;播放、暂停或停止状态

player->setMuted(bool); //设置是否静音

play->play() //Start or resume playing the current source.音乐播放

player->pause() //Pause playing the current source.音乐停止

player->stop() //Stop playing, and reset the play position to the beginning

//停止播放,并将播放位置重置为刚开始的位置;
QMediaPlaylist* playList=new QMediaPlaylist(this);//创建对象,并挂在对象树上

那么如何往播放列表里填充数据呢?此类中有一个函数时addMedia();向播放列表中添加媒体源(所谓的添加媒体源;并不是真正的把二进制数据加载到内存;而是给了一个地址)

复制代码
playList->addMedia(music.getMusicUrl());

他有两个重载类型,一个是单纯的类,一个是填一个容器类;我们单讲第一个;

bool QMediaPlaylist::addMedia(const QMediaContent &content)

bool QMediaPlaylist::addMedia(const QList<QMediaContent> &items)

QMediaContent的构造函数

QMediaContent(const QUrl &url)

这就与我们前面所讲的QUrl连在一起;使用QUrl来构建QMediaContent,再构建QMediaPlaylist播放列表;

相关推荐
用户805533698033 天前
不止三件套:QObject 属性系统全关键字与运行时反射!
c++·qt
xcyxiner3 天前
DicomViewer (vcpkg Windows和ubuntu编译)7
qt
Quz8 天前
QML Hello World 入门示例
qt
xcyxiner11 天前
DicomViewer (dcmtk读取dcm文件)5
qt
xcyxiner11 天前
DicomViewer (后台线程处理文件)4
qt
xcyxiner12 天前
DicomViewer (添加模型类)3
qt
xcyxiner12 天前
DicomViewer (目录调整) 2
qt
xcyxiner13 天前
dcmtk vtk vtk-dicom(gdcm) 编译(debug) v2
qt
LDR00614 天前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
雪碧聊技术14 天前
Tree.js是什么?一文讲透
开发语言·javascript·ecmascript