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.
| Konstante | Wert | Beschreibung |
|---|---|---|
QMediaPlayer::NoError | 0 | Es ist kein Fehler aufgetreten. |
QMediaPlayer::ResourceError | 1 | Eine Medienressource konnte nicht aufgelöst werden. |
QMediaPlayer::FormatError | 2 | Das Format einer Medienressource wird nicht (vollständig) unterstützt. Die Wiedergabe ist möglicherweise dennoch möglich, jedoch ohne Audio- oder Videokomponente. |
QMediaPlayer::NetworkError | 3 | Es ist ein Netzwerkfehler aufgetreten. |
QMediaPlayer::AccessDeniedError | 4 | Es liegen nicht die erforderlichen Berechtigungen vor, um eine Medienressource abzuspielen. |
enum QMediaPlayer::Loops
Einige vordefinierte Konstanten für die Eigenschaft „ loops “.
| Konstante | Wert | Beschreibung |
|---|---|---|
QMediaPlayer::Infinite | -1 | Endlosschleife. |
QMediaPlayer::Once | 1 | Die Medien einmal abspielen (Standard). |
enum QMediaPlayer::MediaStatus
Gibt den Status der aktuell wiedergegebenen Medien eines Media-Players an.
| Konstante | Wert | Beschreibung |
|---|---|---|
QMediaPlayer::NoMedia | 0 | Es gibt keine aktuelle Mediendatei. Der Player befindet sich im Status „ StoppedState “. |
QMediaPlayer::LoadingMedia | 1 | Die aktuelle Mediendatei wird geladen. Der Player kann sich in einem beliebigen Zustand befinden. |
QMediaPlayer::LoadedMedia | 2 | Die aktuelle Mediendatei wurde geladen. Der Player befindet sich im Zustand „ StoppedState “. |
QMediaPlayer::StalledMedia | 3 | Die 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::BufferingMedia | 4 | Der 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::BufferedMedia | 5 | Der Player hat das aktuelle Medium vollständig gepuffert. Der Player befindet sich im Status „ PlayingState “ oder „ PausedState “. |
QMediaPlayer::EndOfMedia | 6 | Die Wiedergabe hat das Ende des aktuellen Mediums erreicht. Der Player befindet sich im Status „ StoppedState “. |
QMediaPlayer::InvalidMedia | 7 | Die 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.
| Konstant | Wert | Beschreibung |
|---|---|---|
QMediaPlayer::PitchCompensationAvailability::AlwaysOn | 0 | Der Mediaplayer führt stets eine Tonhöhenkompensation durch. |
QMediaPlayer::PitchCompensationAvailability::Available | 1 | Der 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::Unavailable | 2 | Der 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.
| Konstante | Wert | Beschreibung |
|---|---|---|
QMediaPlayer::StoppedState | 0 | Der Media Player gibt derzeit keine Inhalte wieder; die Wiedergabe beginnt am Anfang des aktuellen Titels. |
QMediaPlayer::PlayingState | 1 | Der Media-Player gibt derzeit Inhalte wieder. Dies entspricht der Eigenschaft „ playing “. |
QMediaPlayer::PausedState | 2 | Der 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:
| void | activeTracksChanged() |
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:
| void | activeTracksChanged() |
[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.
[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.