QT 官方文档参考地址:https://doc.qt.io/qt-5/qmediaplaylist.html
| moudle | class | 说明 |
|---|---|---|
| PyQt5.QtCore 其他模块使用的核心非图形类 | QUrl | 用于处理url的方便接口 |
| PyQt5.QtMultimedia 音频,视频,广播和相机功能类 | QMediaPlayer | 从源播放媒体 |
| QMediaPlaylist | 要播放的媒体列表 |
1、 enum PlaybackMode
描述播放列表中项目的播放顺序。
CurrentItemOnce:当前曲目只播放一次CurrentItemInLoop:当前曲目循环播放Sequential:从当前曲目开始顺序播放至列表结尾,然后结束播放Loop:列表循环播放
next() 和 previous() 切歌,可以调用 setCurrentIndex 来实现切歌Random:随机播放1、currentIndex(类型:int)
当前播放曲目在播放列表中的位置
未播放时调用返回 -1
2、playbackMode(类型:QMediaPlaylist::PlaybackMode)
此属性定义播放列表中项目的播放顺序。
1、int currentIndex() const
获取当前播放曲目在播放列表中的位置
2、void setCurrentIndex(int playlistPosition)
播放指定位置的曲目
3、QMediaPlaylist::PlaybackMode playbackMode() const
获取播放列表中项目的播放顺序
4、void setPlaybackMode(QMediaPlaylist::PlaybackMode mode)
设置播放列表中项目的播放顺序。
1、void next()
进入播放列表中的下一个媒体内容
2、void previous()
返回到播放列表中先前的媒体内容。
1、void currentIndexChanged(int position)
当前播放的曲目位置改变
自动切歌或者调用setCurrentIndex()后会发射此信号
单曲循环时重新从头开始播放不会发射此信号
2、void playbackModeChanged(QMediaPlaylist::PlaybackMode mode)
播放列表中项目的播放顺序改变
调用setPlaybackMode()后会发射此信号
3、void mediaInserted(int start, int end)
该信号在媒体被插入播放列表后发出。
调用insertMedia()后会发射此信号
4、void mediaRemoved(int start, int end)
该信号在媒体从播放列表中删除后发出。
调用removeMedia()后会发射此信号
5、void mediaChanged(int start, int end)
当播放列表中的媒体在开始位置和结束位置(包括开始位置和结束位置)之间发生更改后
1、bool addMedia(const QMediaContent &content)
将媒体内容追加到播放列表。
如果操作成功返回true,否则返回false。
from PyQt5.QtCore import QUrl
from PyQt5.QtMultimedia import QMediaContent
from PyQt5.QtMultimedia import QMediaPlaylist
playerListHander = QMediaPlaylist() # 实例化播放列表句柄
mp3filepath = "./这世界那么多人.mp3"
songs_url = QUrl.fromLocalFile( mp3filepath )
content = QMediaContent(songs_url)
playerListHander.addMedia(content)
2、bool addMedia(const QList &items)
向播放列表追加多个媒体内容项。
如果操作成功返回true,否则返回false。
3、bool clear()
从播放列表中删除所有项目。
如果操作成功返回true,否则返回false。
4、bool insertMedia(int pos, const QMediaContent &content)
将媒体内容插入到播放列表的位置。
如果操作成功返回true,否则返回false。
5、bool insertMedia(int pos, const QList &items)
在播放列表的位置插入多个媒体内容项。
如果操作成功返回true,否则返回false。
6、bool isEmpty() const
如果播放列表不包含任何项目,则返回true,否则返回false。
7、int mediaCount() const
回播放列表中的曲目数返
8、bool isReadOnly() const
如果播放列表可以修改,则返回true,否则返回false。
9、bool moveMedia(int from, int to)
将项目从一个位置移动到另一个位置。
如果操作成功返回true,否则返回false。
10、int nextIndex(int steps = 1) const
返回下一曲目的索引
返回值取决于播放列表的大小、当前位置和播放模式。
11、int previousIndex(int steps = 1) const
返回上一曲目的索引
返回值取决于播放列表的大小、当前位置和播放模式。
12、bool removeMedia(int pos)
从播放列表中移除位置为pos的项目。
如果操作成功返回true,否则返回false。
13、bool removeMedia(int start, int end)
从开始到结束删除播放列表中的项目。
如果操作成功返回true,否则返回false。