The QMediaPlaylist class provides a list of media content to play. 更多...
头: | #include <QMediaPlaylist> |
qmake: | QT += multimedia |
继承: | QObject and QMediaBindableInterface |
enum | Error { NoError, FormatError, FormatNotSupportedError, NetworkError, AccessDeniedError } |
enum | PlaybackMode { CurrentItemOnce, CurrentItemInLoop, Sequential, Loop, Random } |
QMediaPlaylist (QObject * parent = nullptr) | |
virtual | ~QMediaPlaylist () |
bool | addMedia (const QMediaContent & content ) |
bool | addMedia (const QList<QMediaContent> & 项 ) |
bool | clear () |
int | currentIndex () const |
QMediaContent | currentMedia () const |
QMediaPlaylist::Error | error () const |
QString | errorString () const |
bool | insertMedia (int pos , const QMediaContent & content ) |
bool | insertMedia (int pos , const QList<QMediaContent> & 项 ) |
bool | isEmpty () const |
bool | isReadOnly () const |
void | load (const QNetworkRequest & request , const char * format = nullptr) |
void | load (const QUrl & location , const char * format = nullptr) |
void | load (QIODevice * device , const char * format = nullptr) |
QMediaContent | media (int index ) const |
int | mediaCount () const |
bool | moveMedia (int from , int to ) |
int | nextIndex (int steps = 1) const |
QMediaPlaylist::PlaybackMode | playbackMode () const |
int | previousIndex (int steps = 1) const |
bool | removeMedia (int pos ) |
bool | removeMedia (int start , int end ) |
bool | save (const QUrl & location , const char * format = nullptr) |
bool | save (QIODevice * device , const char * format ) |
void | setPlaybackMode (QMediaPlaylist::PlaybackMode mode ) |
virtual QMediaObject * | mediaObject () const override |
void | next () |
void | previous () |
void | setCurrentIndex (int playlistPosition ) |
void | shuffle () |
void | currentIndexChanged (int position ) |
void | currentMediaChanged (const QMediaContent & content ) |
void | loadFailed () |
void | loaded () |
void | mediaAboutToBeInserted (int start , int end ) |
void | mediaAboutToBeRemoved (int start , int end ) |
void | mediaChanged (int start , int end ) |
void | mediaInserted (int start , int end ) |
void | mediaRemoved (int start , int end ) |
void | playbackModeChanged (QMediaPlaylist::PlaybackMode mode ) |
const QMetaObject | staticMetaObject |
QMediaPlaylistPrivate * | d_ptr |
The QMediaPlaylist class provides a list of media content to play.
QMediaPlaylist is intended to be used with other media objects, like QMediaPlayer .
QMediaPlaylist allows to access the service intrinsic playlist functionality if available, otherwise it provides the local memory playlist implementation.
playlist = new QMediaPlaylist; playlist->addMedia(QUrl("http://example.com/movie1.mp4")); playlist->addMedia(QUrl("http://example.com/movie2.mp4")); playlist->addMedia(QUrl("http://example.com/movie3.mp4")); playlist->setCurrentIndex(1); player = new QMediaPlayer; player->setPlaylist(playlist); videoWidget = new QVideoWidget; player->setVideoOutput(videoWidget); videoWidget->show(); player->play();
Depending on playlist source implementation, most of the playlist mutating operations can be asynchronous.
另请参阅 QMediaContent .
This enum describes the QMediaPlaylist error codes.
常量 | 值 | 描述 |
---|---|---|
QMediaPlaylist::NoError
|
0
|
No errors. |
QMediaPlaylist::FormatError
|
1
|
Format error. |
QMediaPlaylist::FormatNotSupportedError
|
2
|
Format not supported. |
QMediaPlaylist::NetworkError
|
3
|
Network error. |
QMediaPlaylist::AccessDeniedError
|
4
|
Access denied error. |
The QMediaPlaylist::PlaybackMode describes the order items in playlist are played.
常量 | 值 | 描述 |
---|---|---|
QMediaPlaylist::CurrentItemOnce
|
0
|
The current item is played only once. |
QMediaPlaylist::CurrentItemInLoop
|
1
|
The current item is played repeatedly in a loop. |
QMediaPlaylist::Sequential
|
2
|
Playback starts from the current and moves through each successive item until the last is reached and then stops. The next item is a null item when the last one is currently playing. |
QMediaPlaylist::Loop
|
3
|
Playback restarts at the first item after the last has finished playing. |
QMediaPlaylist::Random
|
4
|
Play items in random order. |
Current position.
访问函数:
int | currentIndex () const |
void | setCurrentIndex (int playlistPosition ) |
通知程序信号:
void | currentIndexChanged (int position ) |
Current media content.
访问函数:
QMediaContent | currentMedia () const |
通知程序信号:
void | currentMediaChanged (const QMediaContent & content ) |
This property defines the order that items in the playlist are played.
访问函数:
QMediaPlaylist::PlaybackMode | playbackMode () const |
void | setPlaybackMode (QMediaPlaylist::PlaybackMode mode ) |
通知程序信号:
void | playbackModeChanged (QMediaPlaylist::PlaybackMode mode ) |
另请参阅 QMediaPlaylist::PlaybackMode .
Create a new playlist object with the given parent .
[虚拟]
QMediaPlaylist::
~QMediaPlaylist
()
Destroys the playlist.
Append the media content to the playlist.
Returns true if the operation is successful, otherwise returns false.
Append multiple media content 项 to the playlist.
Returns true if the operation is successful, otherwise returns false.
Remove all the items from the playlist.
Returns true if the operation is successful, otherwise return false.
Returns position of the current media content in the playlist.
注意: getter 函数对于特性 currentIndex .
另请参阅 setCurrentIndex ().
[signal]
void
QMediaPlaylist::
currentIndexChanged
(
int
position
)
Signal emitted when playlist position changed to position .
注意: 通知程序信号对于特性 currentIndex .
Returns the current media content.
注意: getter 函数对于特性 currentMedia .
[signal]
void
QMediaPlaylist::
currentMediaChanged
(const
QMediaContent
&
content
)
Signal emitted when current media changes to content .
注意: 通知程序信号对于特性 currentMedia .
Returns the last error condition.
Returns the string describing the last error condition.
Insert the media content to the playlist at position pos .
Returns true if the operation is successful, otherwise returns false.
Insert multiple media content 项 to the playlist at position pos .
Returns true if the operation is successful, otherwise returns false.
Returns true if the playlist contains no items, otherwise returns false.
另请参阅 mediaCount ().
Returns true if the playlist can be modified, otherwise returns false.
另请参阅 mediaCount ().
Load playlist using network request 。若 format is specified, it is used, otherwise format is guessed from playlist name and data.
New items are appended to playlist.
QMediaPlaylist::loaded () signal is emitted if playlist was loaded successfully, otherwise the playlist emits loadFailed ().
Load playlist from location 。若 format is specified, it is used, otherwise format is guessed from location name and data.
New items are appended to playlist.
QMediaPlaylist::loaded () signal is emitted if playlist was loaded successfully, otherwise the playlist emits loadFailed ().
Load playlist from QIODevice device 。若 format is specified, it is used, otherwise format is guessed from device data.
New items are appended to playlist.
QMediaPlaylist::loaded () signal is emitted if playlist was loaded successfully, otherwise the playlist emits loadFailed ().
[signal]
void
QMediaPlaylist::
loadFailed
()
Signal emitted if failed to load playlist.
[signal]
void
QMediaPlaylist::
loaded
()
Signal emitted when playlist finished loading.
Returns the media content at index in the playlist.
[signal]
void
QMediaPlaylist::
mediaAboutToBeInserted
(
int
start
,
int
end
)
Signal emitted when items are to be inserted at start and ending at end .
[signal]
void
QMediaPlaylist::
mediaAboutToBeRemoved
(
int
start
,
int
end
)
Signal emitted when item are to be deleted at start and ending at end .
[signal]
void
QMediaPlaylist::
mediaChanged
(
int
start
,
int
end
)
This signal is emitted after media has been changed in the playlist between start and end positions inclusive.
Returns the number of items in the playlist.
另请参阅 isEmpty ().
[signal]
void
QMediaPlaylist::
mediaInserted
(
int
start
,
int
end
)
This signal is emitted after media has been inserted into the playlist. The new items are those between start and end 包括在内。
[override virtual]
QMediaObject
*QMediaPlaylist::
mediaObject
() const
重实现自 QMediaBindableInterface::mediaObject ().
返回 QMediaObject instance that this QMediaPlaylist is bound too, or 0 otherwise.
[signal]
void
QMediaPlaylist::
mediaRemoved
(
int
start
,
int
end
)
This signal is emitted after media has been removed from the playlist. The removed items are those between start and end 包括在内。
Move the item from position from to position to .
Returns true if the operation is successful, otherwise false.
该函数在 Qt 5.7 引入。
[slot]
void
QMediaPlaylist::
next
()
Advance to the next media content in playlist.
Returns the index of the item, which would be current after calling next () steps times.
Returned value depends on the size of playlist, current position and playback mode.
另请参阅 QMediaPlaylist::playbackMode () 和 previousIndex ().
[signal]
void
QMediaPlaylist::
playbackModeChanged
(
QMediaPlaylist::PlaybackMode
mode
)
Signal emitted when playback mode changed to mode .
注意: 通知程序信号对于特性 playbackMode .
[slot]
void
QMediaPlaylist::
previous
()
Return to the previous media content in playlist.
Returns the index of the item, which would be current after calling previous () steps times.
另请参阅 QMediaPlaylist::playbackMode () 和 nextIndex ().
Remove the item from the playlist at position pos .
Returns true if the operation is successful, otherwise return false.
Remove items in the playlist from start to end 包括在内。
Returns true if the operation is successful, otherwise return false.
Save playlist to location 。若 format is specified, it is used, otherwise format is guessed from location name.
Returns true if playlist was saved successfully, otherwise returns false.
Save playlist to QIODevice device using format format .
Returns true if playlist was saved successfully, otherwise returns false.
[slot]
void
QMediaPlaylist::
setCurrentIndex
(
int
playlistPosition
)
Activate media content from playlist at position playlistPosition .
注意: setter 函数对于特性 currentIndex .
另请参阅 currentIndex ().
[slot]
void
QMediaPlaylist::
shuffle
()
Shuffle items in the playlist.