Auf dieser Seite

QMediaPlayer Class

Die Klasse „QMediaPlayer“ ermöglicht die Wiedergabe von Mediendateien. Mehr...

Header: #include <QMediaPlayer>
CMake: find_package(Qt6 REQUIRED COMPONENTS Multimedia)
target_link_libraries(mytarget PRIVATE Qt6::Multimedia)
qmake: QT += multimedia
In QML: MediaPlayer
Erbt von: QObject

Öffentliche Typen

enum Error { NoError, ResourceError, FormatError, NetworkError, AccessDeniedError }
enum Loops { Infinite, Once }
enum MediaStatus { NoMedia, LoadingMedia, LoadedMedia, StalledMedia, BufferingMedia, …, InvalidMedia }
(since 6.10) enum class PitchCompensationAvailability { AlwaysOn, Available, Unavailable }
enum PlaybackState { StoppedState, PlayingState, PausedState }

Eigenschaften

Öffentliche Funktionen

QMediaPlayer(QObject *parent = nullptr)
virtual ~QMediaPlayer() override
int activeAudioTrack() const
int activeSubtitleTrack() const
int activeVideoTrack() const
QAudioBufferOutput *audioBufferOutput() const
QAudioOutput *audioOutput() const
QList<QMediaMetaData> audioTracks() const
float bufferProgress() const
QMediaTimeRange bufferedTimeRange() const
qint64 duration() const
QMediaPlayer::Error error() const
QString errorString() const
bool hasAudio() const
bool hasVideo() const
bool isAvailable() const
bool isPlaying() const
bool isSeekable() const
int loops() const
QMediaPlayer::MediaStatus mediaStatus() const
QMediaMetaData metaData() const
(since 6.10) bool pitchCompensation() const
(since 6.10) QMediaPlayer::PitchCompensationAvailability pitchCompensationAvailability() const
QPlaybackOptions playbackOptions() const
qreal playbackRate() const
QMediaPlayer::PlaybackState playbackState() const
qint64 position() const
void setActiveAudioTrack(int index)
void setActiveSubtitleTrack(int index)
void setActiveVideoTrack(int index)
void setAudioBufferOutput(QAudioBufferOutput *output)
void setAudioOutput(QAudioOutput *output)
void setLoops(int loops)
void setVideoOutput(QObject *)
void setVideoSink(QVideoSink *sink)
QUrl source() const
const QIODevice *sourceDevice() const
QList<QMediaMetaData> subtitleTracks() const
QObject *videoOutput() const
QVideoSink *videoSink() const
QList<QMediaMetaData> videoTracks() const

Öffentliche Slots

void pause()
void play()
void resetPlaybackOptions()
(since 6.10) void setPitchCompensation(bool enabled) const
void setPlaybackOptions(const QPlaybackOptions &options)
void setPlaybackRate(qreal rate)
void setPosition(qint64 position)
void setSource(const QUrl &source)
void setSourceDevice(QIODevice *device, const QUrl &sourceUrl = QUrl())
void stop()

Signale

void activeTracksChanged()
void audioBufferOutputChanged()
void audioOutputChanged()
void bufferProgressChanged(float filled)
void durationChanged(qint64 duration)
void errorChanged()
void errorOccurred(QMediaPlayer::Error error, const QString &errorString)
void hasAudioChanged(bool available)
void hasVideoChanged(bool videoAvailable)
void loopsChanged()
void mediaStatusChanged(QMediaPlayer::MediaStatus status)
void metaDataChanged()
void pitchCompensationChanged(bool)
void playbackOptionsChanged()
void playbackRateChanged(qreal rate)
void playbackStateChanged(QMediaPlayer::PlaybackState newState)
void playingChanged(bool playing)
void positionChanged(qint64 position)
void seekableChanged(bool seekable)
void sourceChanged(const QUrl &media)
void tracksChanged()
void videoOutputChanged()

Ausführliche Beschreibung

Die Klasse `QMediaPlayer` ist eine hochrangige Klasse zur Medienwiedergabe. Sie kann zur Wiedergabe von Audio- oder Videodateien verwendet werden. Der wiederzugebende Inhalt wird als ` QUrl `-Objekt angegeben.

player = new QMediaPlayer;
audioOutput = new QAudioOutput;
player->setAudioOutput(audioOutput);
connect(player, &QMediaPlayer::positionChanged, this, &MediaExample::positionChanged);
player->setSource(QUrl::fromLocalFile("/Users/me/Music/coolsong.mp3"));
audioOutput->setVolume(0.5);
player->play();

QVideoWidget kann zusammen mit QMediaPlayer zur Videowiedergabe verwendet werden.

Siehe auch „ QVideoWidget “.

Dokumentation zu den Mitgliedstypen

enum QMediaPlayer::Error

Definiert einen Fehlerzustand des Media Players.

KonstanteWertBeschreibung
QMediaPlayer::NoError0Es ist kein Fehler aufgetreten.
QMediaPlayer::ResourceError1Eine Medienressource konnte nicht aufgelöst werden.
QMediaPlayer::FormatError2Das Format einer Medienressource wird nicht (vollständig) unterstützt. Die Wiedergabe ist möglicherweise dennoch möglich, jedoch ohne Audio- oder Videokomponente.
QMediaPlayer::NetworkError3Es ist ein Netzwerkfehler aufgetreten.
QMediaPlayer::AccessDeniedError4Es liegen nicht die erforderlichen Berechtigungen vor, um eine Medienressource abzuspielen.

enum QMediaPlayer::Loops

Einige vordefinierte Konstanten für die Eigenschaft „ loops “.

KonstanteWertBeschreibung
QMediaPlayer::Infinite-1Endlosschleife.
QMediaPlayer::Once1Die Medien einmal abspielen (Standard).

enum QMediaPlayer::MediaStatus

Gibt den Status der aktuell wiedergegebenen Medien eines Media-Players an.

KonstanteWertBeschreibung
QMediaPlayer::NoMedia0Es gibt keine aktuelle Mediendatei. Der Player befindet sich im Status „ StoppedState “.
QMediaPlayer::LoadingMedia1Die aktuelle Mediendatei wird geladen. Der Player kann sich in einem beliebigen Zustand befinden.
QMediaPlayer::LoadedMedia2Die aktuelle Mediendatei wurde geladen. Der Player befindet sich im Zustand „ StoppedState “.
QMediaPlayer::StalledMedia3Die Wiedergabe der aktuellen Mediendatei ist aufgrund unzureichender Pufferung oder einer anderen vorübergehenden Unterbrechung ins Stocken geraten. Der Player befindet sich im Zustand „ PlayingState “ oder „ PausedState “.
QMediaPlayer::BufferingMedia4Der Player puffert Daten, verfügt jedoch über genügend gepufferte Daten, um die Wiedergabe vorerst fortzusetzen. Der Player befindet sich im Status „ PlayingState “ oder „ PausedState “.
QMediaPlayer::BufferedMedia5Der Player hat das aktuelle Medium vollständig gepuffert. Der Player befindet sich im Status „ PlayingState “ oder „ PausedState “.
QMediaPlayer::EndOfMedia6Die Wiedergabe hat das Ende des aktuellen Mediums erreicht. Der Player befindet sich im Status „ StoppedState “.
QMediaPlayer::InvalidMedia7Die aktuelle Mediendatei kann nicht wiedergegeben werden. Der Player befindet sich im Status „ StoppedState “.

[since 6.10] enum class QMediaPlayer::PitchCompensationAvailability

Verfügbarkeit der Tonhöhenkompensation.

Verschiedene Backends verhalten sich bei der Tonhöhenkompensation beim Ändern der Wiedergabegeschwindigkeit unterschiedlich.

KonstantWertBeschreibung
QMediaPlayer::PitchCompensationAvailability::AlwaysOn0Der Mediaplayer führt stets eine Tonhöhenkompensation durch.
QMediaPlayer::PitchCompensationAvailability::Available1Der Mediaplayer kann so konfiguriert werden, dass er die Tonhöhenkompensation nutzt. Wenn die Tonhöhenkompensation auf der aktuellen Plattform verfügbar ist, ist sie standardmäßig aktiviert, kann aber bei Bedarf vom Benutzer deaktiviert werden.
QMediaPlayer::PitchCompensationAvailability::Unavailable2Der Mediaplayer kann auf der aktuellen Plattform keine Tonhöhenkompensation durchführen.

Diese Enumeration wurde in Qt 6.10 eingeführt.

enum QMediaPlayer::PlaybackState

Definiert den aktuellen Zustand eines Media-Players.

KonstanteWertBeschreibung
QMediaPlayer::StoppedState0Der Media Player gibt derzeit keine Inhalte wieder; die Wiedergabe beginnt am Anfang des aktuellen Titels.
QMediaPlayer::PlayingState1Der Media-Player gibt derzeit Inhalte wieder. Dies entspricht der Eigenschaft „ playing “.
QMediaPlayer::PausedState2Der Media Player hat die Wiedergabe angehalten; die Wiedergabe des aktuellen Titels wird an der Stelle fortgesetzt, an der der Player angehalten wurde.

Eigenschaftsdokumentation

activeAudioTrack : int

Gibt die derzeit aktive Audiospur zurück.

Standardmäßig wird die erste verfügbare Audiospur ausgewählt.

Setzen Sie ` index ` auf ` -1 `, um alle Audiospuren zu deaktivieren.

Zugriffsfunktionen:

int activeAudioTrack() const
void setActiveAudioTrack(int index)

Benachrichtigungssignal:

void activeTracksChanged()

activeSubtitleTrack : int

Gibt die derzeit aktive Untertitelspur zurück.

Setzen Sie „ index “ auf „ -1 “, um Untertitel zu deaktivieren.

Untertitel sind standardmäßig deaktiviert.

Zugriffsfunktionen:

int activeSubtitleTrack() const
void setActiveSubtitleTrack(int index)

Benachrichtigungssignal:

activeVideoTrack : int

Gibt die derzeit aktive Videospur zurück.

Standardmäßig wird die erste verfügbare Audiospur ausgewählt.

Setzen Sie „ index “ auf „ -1 “, um alle Videospuren zu deaktivieren.

Zugriffsfunktionen:

int activeVideoTrack() const
void setActiveVideoTrack(int index)

Benachrichtigungssignal:

[since 6.8] audioBufferOutput : QAudioBufferOutput*

Diese Eigenschaft enthält den vom Media Player verwendeten Audio-Ausgabepuffer.

Legt eine Audio-Puffer- output für den Media Player fest.

Wenn „ QAudioBufferOutput “ angegeben ist und die Medienquelle einen Audiostream enthält, gibt der Media Player das Signal „ QAudioBufferOutput::audioBufferReceived “ mit Audio-Puffern aus, die dekodierte Audiodaten enthalten. Am Ende des Audiostreams gibt „ QMediaPlayer “ einen leeren „ QAudioBuffer “ aus.

QMediaPlayer gibt Audio-Puffer aus und überträgt gleichzeitig die entsprechenden Daten an den Audioausgang, sofern dieser angegeben ist. Aufgrund der Pufferung des Audiosignals kann die Wiedergabe jedoch mit einer geringen Verzögerung erfolgen.

Das Format der ausgegebenen Audio-Puffer wird aus dem angegebenen „ output “ übernommen oder, falls „ output “ ein ungültiges Format zurückgibt, aus dem entsprechenden Audiostream. Die ausgegebenen Audiodaten werden nicht entsprechend der aktuellen Wiedergaberate skaliert.

Mögliche Anwendungsfälle für die Verwendung von „ QAudioBufferOutput “ in Verbindung mit „ QMediaPlayer “ sind beispielsweise:

  • Audio-Visualisierung. Wenn die Wiedergaberate des Media Players nicht „ 1 “ ist, können Sie die Abmessungen des Ausgabebildes oder das Bildaktualisierungsintervall entsprechend den Anforderungen des Visualisierers skalieren.
  • Jede Art von KI-basierter Klangverarbeitung, z. B. Spracherkennung.
  • Übertragung der Daten an einen externen Audioausgang. Dabei sollten Änderungen der Wiedergaberate, die Synchronisation mit Video sowie das manuelle Leeren des Puffers beim Anhalten und beim Springen berücksichtigt werden. Wir raten davon ab, die Audio-Pufferausgabe für diesen Zweck zu verwenden, es sei denn, Sie haben einen triftigen Grund dafür.

Diese Aufzählung wurde in Qt 6.8 eingeführt.

Zugriffsfunktionen:

QAudioBufferOutput *audioBufferOutput() const
void setAudioBufferOutput(QAudioBufferOutput *output)

Notifier-Signal:

void audioBufferOutputChanged()

audioOutput : QAudioOutput*

Diese Eigenschaft gibt das vom Mediaplayer verwendete Audioausgabegerät an.

Die derzeitige Audioausgabe, die bei der Wiedergabe von Medien verwendet wird. Durch das Festlegen einer neuen Audioausgabe wird die derzeit verwendete Ausgabe ersetzt.

Wird diese Eigenschaft auf „ nullptr “ gesetzt, wird jegliche Audioausgabe deaktiviert.

Zugriffsfunktionen:

QAudioOutput *audioOutput() const
void setAudioOutput(QAudioOutput *output)

Benachrichtigungssignal:

void audioOutputChanged()

[read-only] audioTracks : QList<QMediaMetaData>

Listet die verfügbaren Audiospuren innerhalb der Mediendatei auf.

Der zurückgegebene „ QMediaMetaData “ beschreibt die Eigenschaften der einzelnen Spuren.

Verschiedene Audiospuren können beispielsweise Audioinhalte in verschiedenen Sprachen enthalten.

Zugriffsfunktionen:

QList<QMediaMetaData> audioTracks() const

Benachrichtigungssignal:

void tracksChanged()

[read-only] bufferProgress : float

Diese Eigenschaft gibt den Prozentsatz an, zu dem der temporäre Puffer gefüllt ist, bevor die Wiedergabe beginnt oder fortgesetzt wird, und reicht von „ 0 “ (leer) bis „ 1 “ (voll).

Wenn das Player-Objekt puffert, gibt diese Eigenschaft den Prozentsatz des gefüllten temporären Puffers an. Der Puffer muss zu 100 % gefüllt sein, bevor die Wiedergabe gestartet oder fortgesetzt werden kann. Zu diesem Zeitpunkt gibt „ mediaStatus()“ entweder „ BufferedMedia “ oder „ BufferingMedia “ zurück. Liegt der Wert unter „ 100 “, gibt „ mediaStatus()“ „ StalledMedia “ zurück.

Zugriffsfunktionen:

float bufferProgress() const

Notifier-Signal:

void bufferProgressChanged(float filled)

Siehe auch ` mediaStatus()`.

[read-only] duration : qint64

Diese Eigenschaft enthält die Dauer des aktuellen Mediums.

Der Wert entspricht der gesamten Wiedergabezeit des aktuellen Mediums in Millisekunden. Der Wert kann sich während der Lebensdauer des Objekts „ QMediaPlayer “ ändern und steht möglicherweise zu Beginn der Wiedergabe noch nicht zur Verfügung. Verbinden Sie sich mit dem Signal „ durationChanged()“, um Statusbenachrichtigungen zu erhalten.

Zugriffsfunktionen:

qint64 duration() const

Benachrichtigungssignal:

void durationChanged(qint64 duration)

[read-only] error : Error

Diese Eigenschaft enthält eine Zeichenfolge, die den letzten Fehlerzustand beschreibt.

Zugriffsfunktionen:

QMediaPlayer::Error error() const

Benachrichtigungssignal:

void errorChanged()

Siehe auch „ error()“.

[read-only] errorString : QString

Diese Eigenschaft enthält eine Zeichenfolge, die den aktuellen Fehlerzustand genauer beschreibt.

Zugriffsfunktionen:

QString errorString() const

Benachrichtigungssignal:

void errorChanged()

[read-only] hasAudio : bool

Diese Eigenschaft gibt an, ob das Medium Audio enthält.

Zugriffsfunktionen:

bool hasAudio() const

Benachrichtigungssignal:

void hasAudioChanged(bool available)

[read-only] hasVideo : bool

Diese Eigenschaft gibt an, ob das Medium ein Video enthält.

Zugriffsfunktionen:

bool hasVideo() const

Benachrichtigungssignal:

void hasVideoChanged(bool videoAvailable)

loops : int

Legt fest, wie oft die Mediendatei wiedergegeben wird, bevor der Player stoppt. Setzen Sie den Wert auf „ QMediaPlayer::Infinite “, um die aktuelle Mediendatei endlos zu wiederholen.

Der Standardwert ist „ 1 “. Die Einstellung dieser Eigenschaft auf „ 0 “ hat keine Auswirkung.

Zugriffsfunktionen:

int loops() const
void setLoops(int loops)

Benachrichtigungssignal:

void loopsChanged()

[read-only] mediaStatus : MediaStatus

Diese Eigenschaft gibt den Status des aktuellen Medien-Streams an.

Der Stream-Status beschreibt, wie die Wiedergabe des aktuellen Streams voranschreitet.

Standardmäßig ist diese Eigenschaft QMediaPlayer::NoMedia

Zugriffsfunktionen:

QMediaPlayer::MediaStatus mediaStatus() const

Benachrichtigungssignal:

void mediaStatusChanged(QMediaPlayer::MediaStatus status)

[read-only] metaData : QMediaMetaData

Gibt Metadaten für das aktuell vom Mediaplayer wiedergegebene Medium zurück.

Metadaten können Informationen wie den Titel des Videos oder dessen Erstellungsdatum enthalten.

Hinweis: Die Windows-Implementierung stellt Metadaten nur für Medien bereit, die sich auf dem lokalen Dateisystem befinden.

Zugriffsfunktionen:

QMediaMetaData metaData() const

Benachrichtigungssignal:

void metaDataChanged()

[since 6.10] pitchCompensation : bool

Diese Eigenschaft gibt den Status der Tonhöhenkompensation des Media Players an.

Gibt an, ob die Tonhöhenkompensation aktiviert ist. Ist sie aktiviert, hat eine Änderung der Wiedergabegeschwindigkeit keinen Einfluss auf die Tonhöhe des Audiosignals.

Hinweis: Die Tonhöhenkompensation erhöht die CPU-Auslastung des „ QMediaPlayer “.

Standardmäßig lautet der Wert „ true “, sofern eine Tonhöhenkompensation verfügbar ist, andernfalls „ false “.

Diese Aufzählung wurde in Qt 6.10 eingeführt.

Zugriffsfunktionen:

bool pitchCompensation() const
void setPitchCompensation(bool enabled) const

Notifier-Signal:

void pitchCompensationChanged(bool)

[read-only, since 6.10] pitchCompensationAvailability : const PitchCompensationAvailability

Diese Eigenschaft gibt an, ob die Tonhöhenkompensation des aktuellen „ QtMultimedia “-Backends verfügbar ist.

Zeigt die Verfügbarkeit der Tonhöhenkompensation des „ QMediaPlayer “ auf dem aktuellen Backend an.

Hinweis: Verschiedene Backends können sich unterschiedlich verhalten.

Weitere Informationen finden Sie unter „ QMediaPlayer::PitchCompensationAvailability “.

Diese Aufzählung wurde in Qt 6.10 eingeführt.

Zugriffsfunktionen:

QMediaPlayer::PitchCompensationAvailability pitchCompensationAvailability() const

[since 6.10] playbackOptions : QPlaybackOptions

Erweiterte Wiedergabeoptionen zur Konfiguration der Medienwiedergabe und -dekodierung.

Diese Eigenschaft stellt die API „ QPlaybackOptions “ bereit, die eine Steuerung der Medienwiedergabeoptionen auf niedriger Ebene ermöglicht. Obwohl wir dringend empfehlen, sich auf die Standardeinstellungen von „ QMediaPlayer “ zu verlassen, kann diese API verwendet werden, um die Medienwiedergabe für bestimmte Anwendungsfälle zu optimieren, in denen die Standardoptionen nicht ideal sind.

Die Wiedergabeoptionen werden beim nächsten Aufruf von ` QMediaPlayer::setSource()` wirksam.

Diese Aufzählung wurde in Qt 6.10 eingeführt.

Zugriffsfunktionen:

QPlaybackOptions playbackOptions() const
void setPlaybackOptions(const QPlaybackOptions &options)
void resetPlaybackOptions()

Notifier-Signal:

void playbackOptionsChanged()

playbackRate : qreal

Diese Eigenschaft gibt die Wiedergabegeschwindigkeit des aktuellen Mediums an.

Dieser Wert ist ein Multiplikator, der auf die Standardwiedergaberate des Mediums angewendet wird. Standardmäßig beträgt dieser Wert 1,0, was bedeutet, dass das Medium mit Standardgeschwindigkeit wiedergegeben wird. Werte über 1,0 erhöhen die Wiedergabegeschwindigkeit, während Werte zwischen 0,0 und 1,0 zu einer langsameren Wiedergabe führen. Negative Wiedergaberaten werden nicht unterstützt.

Nicht alle Wiedergabedienste unterstützen die Änderung der Wiedergabegeschwindigkeit. Der Status und die Qualität von Audio und Video beim Vor- und Zurückspulen werden vom Framework festgelegt.

Zugriffsfunktionen:

qreal playbackRate() const
void setPlaybackRate(qreal rate)

Benachrichtigungssignal:

void playbackRateChanged(qreal rate)

[read-only] playbackState : PlaybackState

Gibt die „ PlaybackState “ zurück.

Zugriffsfunktionen:

QMediaPlayer::PlaybackState playbackState() const

Notifier-Signal:

void playbackStateChanged(QMediaPlayer::PlaybackState newState)

Siehe auch „ playing “.

[read-only, since 6.5] playing : bool

Diese Eigenschaft gibt an, ob die Medienwiedergabe läuft.

Diese Aufzählung wurde in Qt 6.5 eingeführt.

Zugriffsfunktionen:

bool isPlaying() const

Notifier-Signal:

void playingChanged(bool playing)

Siehe auch playbackState und PlayingState.

position : qint64

Diese Eigenschaft enthält die Wiedergabeposition des aktuellen Mediums.

Der Wert entspricht der aktuellen Wiedergabeposition, ausgedrückt in Millisekunden seit Beginn des Mediums. Regelmäßige Änderungen der Position werden durch das Signal „ positionChanged()“ angezeigt.

Wenn die Eigenschaft „ seekable “ auf „true“ gesetzt ist, kann diese Eigenschaft auf Millisekunden festgelegt werden.

Zugriffsfunktionen:

qint64 position() const
void setPosition(qint64 position)

Benachrichtigungssignal:

void positionChanged(qint64 position)

[read-only] seekable : bool

Diese Eigenschaft gibt den Status der Suchbarkeit des aktuellen Mediums an

Wenn das Springen unterstützt wird, ist diese Eigenschaft „true“; andernfalls „false“. Der Status dieser Eigenschaft kann sich während der Lebensdauer des „ QMediaPlayer “-Objekts ändern. Verwenden Sie das Signal „ seekableChanged “, um Änderungen zu überwachen.

Zugriffsfunktionen:

bool isSeekable() const

Notifier-Signal:

void seekableChanged(bool seekable)

source : QUrl

Diese Eigenschaft enthält die aktive Medienquelle, die vom Player-Objekt verwendet wird.

Das Player-Objekt verwendet die Eigenschaft „ QUrl “, um den abzuspielenden Inhalt auszuwählen.

Standardmäßig hat diese Eigenschaft eine Null- QUrl.

Wird diese Eigenschaft auf eine null- QUrl gesetzt, verwirft der Player alle Informationen zur aktuellen Medienquelle und bricht alle E/A-Vorgänge im Zusammenhang mit dieser Medienquelle ab.

Zugriffsfunktionen:

QUrl source() const
void setSource(const QUrl &source)

Benachrichtigungssignal:

void sourceChanged(const QUrl &media)

Siehe auch „ QUrl “.

[read-only] subtitleTracks : QList<QMediaMetaData>

Listet die verfügbaren Untertitel-Spuren innerhalb der Mediendatei auf.

Die zurückgegebene „ QMediaMetaData “ beschreibt die Eigenschaften der einzelnen Spuren.

Zugriffsfunktionen:

QList<QMediaMetaData> subtitleTracks() const

Benachrichtigungssignal:

void tracksChanged()

videoOutput : QObject*

Diese Eigenschaft legt den vom Mediaplayer zu verwendenden Videoausgang fest.

Ein Mediaplayer kann nur einen Videoausgang verbunden haben; daher wird durch das Festlegen dieser Eigenschaft der zuvor verbundene Videoausgang ersetzt.

Wird diese Eigenschaft auf „ nullptr “ gesetzt, wird die Videoausgabe deaktiviert.

Zugriffsfunktionen:

QObject *videoOutput() const
void setVideoOutput(QObject *)

Benachrichtigungssignal:

void videoOutputChanged()

[read-only] videoTracks : QList<QMediaMetaData>

Listet die verfügbaren Videospuren innerhalb der Mediendatei auf.

Die zurückgegebene „ QMediaMetaData “ beschreibt die Eigenschaften der einzelnen Spuren.

Zugriffsfunktionen:

QList<QMediaMetaData> videoTracks() const

Benachrichtigungssignal:

void tracksChanged()

Dokumentation der Member-Funktionen

[explicit] QMediaPlayer::QMediaPlayer(QObject *parent = nullptr)

Erstellt eine QMediaPlayer-Instanz als untergeordnetes Element von „ parent “.

[override virtual noexcept] QMediaPlayer::~QMediaPlayer()

Löscht das Spieler-Objekt.

float QMediaPlayer::bufferProgress() const

Gibt beim Puffern von Daten eine Zahl zwischen 0 und 1 zurück.

0 bedeutet, dass keine gepufferten Daten verfügbar sind; in diesem Fall wird die Wiedergabe in der Regel unterbrochen. Die Wiedergabe wird fortgesetzt, sobald der Puffer den Wert 1 erreicht, was bedeutet, dass genügend Daten gepuffert wurden, um die Wiedergabe fortzusetzen.

bufferProgress() gibt bei lokalen Dateien immer den Wert 1 zurück.

Hinweis: Getter -Funktion für die Eigenschaft bufferProgress.

[signal] void QMediaPlayer::bufferProgressChanged(float filled)

Gibt die Größe des lokalen Puffers „ filled “ als Zahl zwischen 0 und 1 an.

Hinweis: Notifier -Signal für die Eigenschaft „ bufferProgress “.

QMediaTimeRange QMediaPlayer::bufferedTimeRange() const

Gibt ein ` QMediaTimeRange ` zurück, das die aktuell gepufferten Daten beschreibt.

Beim Streamen von Medien aus einer entfernten Quelle können verschiedene Teile der Mediendatei lokal verfügbar sein. Das zurückgegebene ` QMediaTimeRange `-Objekt beschreibt die Zeitbereiche, die gepuffert und für die sofortige Wiedergabe verfügbar sind.

Siehe auch „ QMediaTimeRange “.

qint64 QMediaPlayer::duration() const

Gibt die Dauer des aktuellen Mediums in ms zurück.

Gibt 0 zurück, wenn der Mediaplayer keine gültige Mediendatei oder keinen gültigen Stream hat. Bei Live-Streams ändert sich die Dauer in der Regel während der Wiedergabe, sobald weitere Daten verfügbar werden.

Hinweis: Getter -Funktion für die Eigenschaft „duration“.

[signal] void QMediaPlayer::durationChanged(qint64 duration)

Zeigt an, dass sich die Dauer des Inhalts auf „ duration “ geändert hat, ausgedrückt in Millisekunden.

Hinweis: Notifier -Signal für die Eigenschaft „ duration “.

QMediaPlayer::Error QMediaPlayer::error() const

Gibt den aktuellen Fehlerstatus zurück.

Hinweis: Getter -Funktion für die Eigenschaft „error“.

[signal] void QMediaPlayer::errorOccurred(QMediaPlayer::Error error, const QString &errorString)

Zeigt an, dass eine „ error “-Bedingung aufgetreten ist, wobei „ errorString “ eine Beschreibung des Fehlers enthält.

Siehe auch errorString().

[signal] void QMediaPlayer::hasAudioChanged(bool available)

Zeigt an, dass sich die Verfügbarkeit von Audioinhalten auf „ available “ geändert hat.

Hinweis: Benachrichtigungssignal für die Eigenschaft „ hasAudio “.

[signal] void QMediaPlayer::hasVideoChanged(bool videoAvailable)

Zeigt an, dass sich die Verfügbarkeit visueller Inhalte auf „ videoAvailable “ geändert hat.

Hinweis: Notifier -Signal für die Eigenschaft „ hasVideo “.

bool QMediaPlayer::isAvailable() const

Gibt „true“ zurück, wenn der Media Player auf dieser Plattform unterstützt wird.

bool QMediaPlayer::isSeekable() const

Gibt „true“ zurück, wenn die Mediendatei suchbar ist. Die meisten dateibasierten Mediendateien sind suchbar, Live-Streams hingegen in der Regel nicht.

Hinweis: Getter -Funktion für die Eigenschaft „ seekable “.

Siehe auch „ position “.

[signal] void QMediaPlayer::mediaStatusChanged(QMediaPlayer::MediaStatus status)

Zeigt an, dass sich die Eigenschaft „ status “ des aktuellen Mediums geändert hat.

Hinweis: Notifier -Signal für die Eigenschaft „ mediaStatus “.

Siehe auch ` mediaStatus()`.

[slot] void QMediaPlayer::pause()

Die Wiedergabe der aktuellen Quelle anhalten.

Siehe auch play() und stop().

[since 6.10] bool QMediaPlayer::pitchCompensation() const

Gibt den Status der Tonhöhenkompensation zurück.

Hinweis: Getter -Funktion für die Eigenschaft „pitchCompensation“.

Diese Funktion wurde in Qt 6.10 eingeführt.

Siehe auch „ setPitchCompensation()“.

[since 6.10] QMediaPlayer::PitchCompensationAvailability QMediaPlayer::pitchCompensationAvailability() const

Gibt an, ob die Tonhöhenkompensation des aktuellen Backends verfügbar ist.

Hinweis: Getter -Funktion für die Eigenschaft „pitchCompensationAvailability“.

Diese Funktion wurde in Qt 6.10 eingeführt.

[slot] void QMediaPlayer::play()

Die Wiedergabe der aktuellen Quelle starten oder fortsetzen.

Siehe auch pause() und stop().

qreal QMediaPlayer::playbackRate() const

Gibt die aktuelle Wiedergaberate zurück.

Hinweis: Getter -Funktion für die Eigenschaft „playbackRate“.

Siehe auch „ setPlaybackRate()“.

[signal] void QMediaPlayer::playbackRateChanged(qreal rate)

Zeigt an, dass sich die Eigenschaft „ playbackRate “ in „ rate “ geändert hat.

Hinweis: Notifier -Signal für die Eigenschaft „ playbackRate “.

qint64 QMediaPlayer::position() const

Gibt die aktuelle Position innerhalb der wiedergegebenen Mediendatei in Millisekunden zurück.

Gibt 0 zurück, wenn der Mediaplayer keine gültige Mediendatei oder keinen gültigen Stream hat. Bei Live-Streams ändert sich die Dauer in der Regel während der Wiedergabe, sobald weitere Daten verfügbar werden.

Hinweis: Getter -Funktion für die Eigenschaft „position“.

Siehe auch „ setPosition()“.

[signal] void QMediaPlayer::positionChanged(qint64 position)

Zeigt an, dass sich die Position des Inhalts auf position geändert hat, ausgedrückt in Millisekunden.

Hinweis: Notifier -Signal für die Eigenschaft „ position “.

[signal] void QMediaPlayer::seekableChanged(bool seekable)

Zeigt an, dass sich der Status „ seekable “ des Player-Objekts geändert hat.

Hinweis: Notifier -Signal für die Eigenschaft „ seekable “.

[slot, since 6.10] void QMediaPlayer::setPitchCompensation(bool enabled) const

Legt den Status (enabled oder deaktiviert) der Tonhöhenkorrektur fest. Dies hat nur dann Auswirkungen, wenn die Audio-Tonhöhenkorrektur zur Laufzeit im Backend konfiguriert werden kann.

Hinweis: Setter -Funktion für die Eigenschaft „ pitchCompensation “.

Diese Funktion wurde in Qt 6.10 eingeführt.

Siehe auch ` pitchCompensation()`.

[slot] void QMediaPlayer::setSource(const QUrl &source)

Legt die aktuelle Medienquelle fest: source.

Wird die Medienquelle auf eine Null- QUrl gesetzt, verwirft der Player alle Informationen zur aktuellen Medienquelle und beendet alle E/A-Vorgänge im Zusammenhang mit dieser Medienquelle. Durch das Setzen der Medienquelle wird die Wiedergabe gestoppt.

Hinweis: Diese Funktion kehrt unmittelbar nach dem Aufzeichnen der angegebenen Medienquelle zurück. Sie wartet nicht, bis das Laden der Medien abgeschlossen ist, und führt keine Fehlerprüfung durch. Achten Sie auf die Signale „ mediaStatusChanged()“ und „ error()“, um benachrichtigt zu werden, wenn die Medien geladen sind bzw. wenn beim Laden ein Fehler auftritt.

Hinweis: FFmpeg , das vom FFmpeg-Medien-Backend verwendet wird, schränkt die Verwendung verschachtelter Protokolle aus Sicherheitsgründen ein. In kontrollierten Umgebungen, in denen alle Eingaben vertrauenswürdig sind, kann die Liste der zugelassenen Protokolle mithilfe der Umgebungsvariable `QT_FFMPEG_PROTOCOL_WHITELIST` überschrieben werden. Diese Umgebungsvariable gehört zur privaten API von Qt und kann sich zwischen Patch-Veröffentlichungen ohne Vorankündigung ändern.

Hinweis: Setter -Funktion für die Eigenschaft „ source “.

Siehe auch ` source()`.

[slot] void QMediaPlayer::setSourceDevice(QIODevice *device, const QUrl &sourceUrl = QUrl())

Legt die aktuelle Quelle „ device “ fest.

Die Mediendaten werden aus ` device` gelesen. Die ` sourceUrl ` kann angegeben werden, um zusätzliche Informationen über die Medien, den MIME-Typ usw. abzurufen. Die ` device ` muss geöffnet und lesbar sein.

Unter macOS sollte die Datei „ device “ zudem suchbar sein.

Hinweis: Diese Funktion kehrt unmittelbar nach dem Aufzeichnen der angegebenen Medienquelle zurück. Sie wartet nicht, bis das Laden der Medien abgeschlossen ist, und führt keine Fehlerprüfung durch. Achten Sie auf die Signale „ mediaStatusChanged()“ und „ error()“, um benachrichtigt zu werden, wenn die Medien geladen sind und falls beim Laden ein Fehler auftritt.

Siehe auch ` sourceDevice()`.

void QMediaPlayer::setVideoSink(QVideoSink *sink)

Legt „ sink “ als „ QVideoSink “-Instanz fest, um Videodaten abzurufen.

Siehe auch videoSink().

[signal] void QMediaPlayer::sourceChanged(const QUrl &media)

Zeigt an, dass die Medienquelle auf media umgestellt wurde.

Hinweis: Notifier -Signal für die Eigenschaft source.

const QIODevice *QMediaPlayer::sourceDevice() const

Gibt die Stream-Quelle der Mediendaten zurück.

Dies gilt nur, wenn ein Stream an ` setSource()` übergeben wurde.

Siehe auch setSourceDevice() und setSource().

[slot] void QMediaPlayer::stop()

Die Wiedergabe anhalten und die Wiedergabeposition auf den Anfang zurücksetzen.

Siehe auch play() und pause().

[signal] void QMediaPlayer::tracksChanged()

Hinweis: Notifier -Signal für die Eigenschaften „ audioTracks “, „ subtitleTracks “ und „ videoTracks “.

QVideoSink *QMediaPlayer::videoSink() const

Gibt die Instanz von ` QVideoSink ` zurück.

Siehe auch ` setVideoSink()`.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.