1// qmediaplayer.sip generated by MetaSIP 2// 3// This file is part of the QtMultimedia Python extension module. 4// 5// Copyright (c) 2021 Riverbank Computing Limited <info@riverbankcomputing.com> 6// 7// This file is part of PyQt5. 8// 9// This file may be used under the terms of the GNU General Public License 10// version 3.0 as published by the Free Software Foundation and appearing in 11// the file LICENSE included in the packaging of this file. Please review the 12// following information to ensure the GNU General Public License version 3.0 13// requirements will be met: http://www.gnu.org/copyleft/gpl.html. 14// 15// If you do not wish to use this file under the terms of the GPL version 3.0 16// then you may purchase a commercial license. For more information contact 17// info@riverbankcomputing.com. 18// 19// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 20// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 21 22 23class QGraphicsVideoItem /External/; 24class QVideoWidget /External/; 25 26class QMediaPlayer : QMediaObject 27{ 28%TypeHeaderCode 29#include <qmediaplayer.h> 30%End 31 32public: 33 enum State 34 { 35 StoppedState, 36 PlayingState, 37 PausedState, 38 }; 39 40 enum MediaStatus 41 { 42 UnknownMediaStatus, 43 NoMedia, 44 LoadingMedia, 45 LoadedMedia, 46 StalledMedia, 47 BufferingMedia, 48 BufferedMedia, 49 EndOfMedia, 50 InvalidMedia, 51 }; 52 53 enum Flag 54 { 55 LowLatency, 56 StreamPlayback, 57 VideoSurface, 58 }; 59 60 typedef QFlags<QMediaPlayer::Flag> Flags; 61 62 enum Error 63 { 64 NoError, 65 ResourceError, 66 FormatError, 67 NetworkError, 68 AccessDeniedError, 69 ServiceMissingError, 70 }; 71 72 QMediaPlayer(QObject *parent /TransferThis/ = 0, QMediaPlayer::Flags flags = QMediaPlayer::Flags()); 73 virtual ~QMediaPlayer(); 74 static QMultimedia::SupportEstimate hasSupport(const QString &mimeType, const QStringList &codecs = QStringList(), QMediaPlayer::Flags flags = QMediaPlayer::Flags()); 75 static QStringList supportedMimeTypes(QMediaPlayer::Flags flags = QMediaPlayer::Flags()); 76 void setVideoOutput(QVideoWidget *); 77 void setVideoOutput(QGraphicsVideoItem *); 78 void setVideoOutput(QAbstractVideoSurface *surface); 79%If (Qt_5_15_0 -) 80 void setVideoOutput(const QVector<QAbstractVideoSurface *> &surfaces); 81%End 82 QMediaContent media() const; 83 const QIODevice *mediaStream() const; 84 QMediaPlaylist *playlist() const; 85 QMediaContent currentMedia() const; 86 QMediaPlayer::State state() const; 87 QMediaPlayer::MediaStatus mediaStatus() const; 88 qint64 duration() const; 89 qint64 position() const; 90 int volume() const; 91 bool isMuted() const; 92 bool isAudioAvailable() const; 93 bool isVideoAvailable() const; 94 int bufferStatus() const; 95 bool isSeekable() const; 96 qreal playbackRate() const; 97 QMediaPlayer::Error error() const; 98 QString errorString() const; 99 QNetworkConfiguration currentNetworkConfiguration() const; 100 virtual QMultimedia::AvailabilityStatus availability() const; 101 102public slots: 103 void play(); 104 void pause(); 105 void stop(); 106 void setPosition(qint64 position); 107 void setVolume(int volume); 108 void setMuted(bool muted); 109 void setPlaybackRate(qreal rate); 110 void setMedia(const QMediaContent &media, QIODevice *stream = 0); 111 void setPlaylist(QMediaPlaylist *playlist); 112 void setNetworkConfigurations(const QList<QNetworkConfiguration> &configurations); 113 114signals: 115 void mediaChanged(const QMediaContent &media); 116 void currentMediaChanged(const QMediaContent &media); 117 void stateChanged(QMediaPlayer::State newState); 118 void mediaStatusChanged(QMediaPlayer::MediaStatus status); 119 void durationChanged(qint64 duration); 120 void positionChanged(qint64 position); 121 void volumeChanged(int volume); 122 void mutedChanged(bool muted); 123 void audioAvailableChanged(bool available); 124 void videoAvailableChanged(bool videoAvailable); 125 void bufferStatusChanged(int percentFilled); 126 void seekableChanged(bool seekable); 127 void playbackRateChanged(qreal rate); 128 void error(QMediaPlayer::Error error); 129 void networkConfigurationChanged(const QNetworkConfiguration &configuration); 130 131public: 132 virtual bool bind(QObject *); 133 virtual void unbind(QObject *); 134%If (Qt_5_6_0 -) 135 QAudio::Role audioRole() const; 136%End 137%If (Qt_5_6_0 -) 138 void setAudioRole(QAudio::Role audioRole); 139%End 140%If (Qt_5_6_0 -) 141 QList<QAudio::Role> supportedAudioRoles() const; 142%End 143 144signals: 145%If (Qt_5_6_0 -) 146 void audioRoleChanged(QAudio::Role role); 147%End 148 149public: 150%If (Qt_5_11_0 -) 151 QString customAudioRole() const; 152%End 153%If (Qt_5_11_0 -) 154 void setCustomAudioRole(const QString &audioRole); 155%End 156%If (Qt_5_11_0 -) 157 QStringList supportedCustomAudioRoles() const; 158%End 159 160signals: 161%If (Qt_5_11_0 -) 162 void customAudioRoleChanged(const QString &role); 163%End 164}; 165