Sur cette page

MediaPlayer QML Type

Ajoute la lecture de fichiers multimédias à une scène. En savoir plus…

Import Statement: import QtMultimedia
In C++: QMediaPlayer

Propriétés

Signaux

Méthodes

Description détaillée

Text {
    text: "Click Me!";
    font.pointSize: 24;
    width: 150; height: 50;

    MediaPlayer {
        id: playMusic
        source: "music.wav"
        audioOutput: AudioOutput {}
    }
    MouseArea {
        anchors.fill: parent
        onPressed:  { playMusic.play() }
    }
}

Vous pouvez utiliser MediaPlayer avec un MultiMedia::AudioOutput pour lire du contenu audio, ou avec un Multimedia::VideoOutput pour lire des vidéos.

Item {
    MediaPlayer {
        id: mediaplayer
        source: "groovy_video.mp4"
        audioOutput: AudioOutput {}
        videoOutput: videoOutput
    }

    VideoOutput {
        id: videoOutput
        anchors.fill: parent
    }

    MouseArea {
        anchors.fill: parent
        onPressed: mediaplayer.play();
    }
}

Voir également AudioOutput et VideoOutput.

Documentation sur les propriétés

activeAudioTrack : int

Cette propriété contient le numéro de la piste audio actuellement active. Définissez-la sur « -1 » pour désactiver la piste audio.

La valeur par défaut de cette propriété est « 0 » : la première piste audio.

activeSubtitleTrack : int

Cette propriété contient le numéro de la piste de sous-titres actuellement active. Définissez-la sur « -1 » pour désactiver la piste de sous-titres.

La valeur par défaut de cette propriété est « -1 » : aucun sous-titre actif.

activeVideoTrack : int

Cette propriété contient le numéro de la piste audio de la vidéo actuellement active. Définissez-la sur « -1 » pour désactiver la piste vidéo.

La valeur par défaut de cette propriété est « 0 » : la première piste vidéo.

audioBufferOutput : QAudioBufferOutput [since 6.8]

Cette propriété contient la sortie du tampon audio cible.

Dans le cadre d'une utilisation normale de ` MediaPlayer ` depuis QML, il ne devrait pas être nécessaire d'utiliser cette propriété.

Cette propriété a été introduite dans Qt 6.8.

Voir également ` QMediaPlayer::audioBufferOutput()`.

audioOutput : AudioOutput

Cette propriété contient la sortie audio cible. Elle accepte un élément de type « AudioOutput ».

Voir également QMediaPlayer::setAudioOutput().

audioTracks : list<mediaMetaData> [read-only]

Cette propriété contient une liste de métadonnées. Chaque index correspond à une piste audio.

Les métadonnées contiennent des propriétés décrivant les pistes individuelles. Pour les pistes audio, la propriété « Language » est généralement la plus importante.

Cette propriété émet le signal « tracksChanged » lorsqu’elle est modifiée.

Voir également mediaMetaData.

autoPlay : bool [since 6.7]

Cette propriété détermine si la lecture du fichier multimédia démarre automatiquement une fois celui-ci chargé. La valeur par défaut est « false ».

Cette propriété a été introduite dans Qt 6.7.

bufferProgress : real [read-only]

Cette propriété indique le niveau de remplissage actuel du tampon de données, allant de « 0.0 » (vide) à « 1.0 » (plein).

La lecture ne peut démarrer ou reprendre que lorsque le tampon est entièrement rempli. Lorsque le tampon est plein, la valeur « MediaPlayer.Buffered » est vraie. Lorsque la progression du tampon se situe entre « 0.0 » et « 1.0 », la valeur « MediaPlayer.Buffering » est définie sur « true ».

Une valeur inférieure à 1.0 implique que la propriété MediaPlayer.StalledMedia est true.

Voir également mediaStatus.

duration : int [read-only]

Cette propriété indique la durée du fichier multimédia en millisecondes.

Si le média n'a pas de durée fixe (un flux en direct, par exemple), cette propriété sera définie sur 0.

error : enumeration [read-only]

Cette propriété contient l'état d'erreur de l'audio. Elle peut prendre l'une des valeurs suivantes.

ConstanteDescription
MediaPlayer.NoErrorAucune erreur ne s'est produite.
MediaPlayer.ResourceErrorUne ressource multimédia n'a pas pu être résolue.
MediaPlayer.FormatErrorLe format d’une ressource multimédia n’est pas (entièrement) pris en charge. La lecture peut tout de même être possible, mais sans composante audio ou vidéo.
MediaPlayer.NetworkErrorUne erreur réseau s'est produite.
MediaPlayer.AccessDeniedErrorLes autorisations nécessaires à la lecture d'une ressource multimédia ne sont pas disponibles.

errorString : string [read-only]

Cette propriété contient une chaîne de caractères décrivant plus en détail la condition d'erreur actuelle.

hasAudio : bool [read-only]

Cette propriété s'applique quel que soit le fait que le fichier multimédia contienne ou non du son.

hasVideo : bool [read-only]

Cette propriété s'applique, que le fichier multimédia contienne ou non une vidéo.

loops : int

Détermine le nombre de fois où le fichier multimédia est lu avant que le lecteur ne s'arrête. Définissez cette propriété sur MediaPlayer::Infinite pour lire le fichier multimédia actuel en boucle indéfiniment.

La valeur par défaut est « 1 ». Définir cette propriété sur « 0 » n'a aucun effet.

mediaStatus : enumeration [read-only]

Cette propriété indique l'état de chargement du média. Elle peut prendre l'une des valeurs suivantes :

ConstanteDescription
MediaPlayer.NoMediaIl n’y a pas de média en cours. Le lecteur est à l’état « StoppedState ».
MediaPlayer.LoadingMediaLe média actuel est en cours de chargement. Le lecteur peut se trouver dans n'importe quel état.
MediaPlayer.LoadedMediaLe média actuel a été chargé. Le lecteur est à l'état « StoppedState ».
MediaPlayer.StalledMediaLa lecture du média actuel est bloquée en raison d'une mémoire tampon insuffisante ou d'une autre interruption temporaire. Le lecteur est dans l'état « PlayingState » ou « PausedState ».
MediaPlayer.BufferingMediaLe lecteur met des données en mémoire tampon, mais dispose de suffisamment de données en mémoire tampon pour que la lecture puisse se poursuivre dans l'immédiat. Le lecteur est à l'état « PlayingState » ou « PausedState ».
MediaPlayer.BufferedMediaLe lecteur a entièrement mis en mémoire tampon le média actuel. Le lecteur est dans l’état « PlayingState » ou « PausedState ».
MediaPlayer.EndOfMediaLa lecture a atteint la fin du média actuel. Le lecteur est à l'état « StoppedState ».
MediaPlayer.InvalidMediaLe média en cours ne peut pas être lu. Le lecteur est dans l’état « StoppedState ».

metaData : mediaMetaData [read-only]

Renvoie les métadonnées relatives au fichier multimédia actuellement lu par le lecteur multimédia.

Les métadonnées peuvent contenir des informations telles que le titre de la vidéo ou sa date de création.

Remarque : l'implémentation Windows ne fournit des métadonnées que pour les fichiers multimédias situés sur le système de fichiers local.

pitchCompensation : bool [since 6.10]

Cette propriété s'applique que la compensation de hauteur tonale soit activée ou non.

Cette propriété a été introduite dans Qt 6.10.

pitchCompensationAvailability : enumeration [read-only, since 6.10]

Indique si la compensation de hauteur tonale de l'MediaPlayer est disponible sur le backend actuel. L'énumération PitchCompensationAvailability est limitée à ce contexte.

ConstanteDescription
MediaPlayer.AlwaysOnLe lecteur multimédia effectue systématiquement la compensation de hauteur.
MediaPlayer.AvailableLe lecteur multimédia peut être configuré pour utiliser la compensation de hauteur. Si la compensation de hauteur est disponible sur la plateforme actuelle, elle sera activée par défaut, mais les utilisateurs peuvent la désactiver si nécessaire.
MediaPlayer.UnavailableLe lecteur multimédia n’est pas en mesure d’effectuer la compensation de hauteur tonale sur la plateforme actuelle.

Cette propriété a été introduite dans Qt 6.10.

playbackOptions : PlaybackOptions [since 6.10]

Cette propriété expose l'API ` PlaybackOptions `, qui permet un contrôle de bas niveau des options de lecture multimédia. Bien que nous recommandions vivement d'utiliser les paramètres par défaut de ` MediaPlayer`, cette API peut être utilisée pour optimiser la lecture multimédia dans des cas d'utilisation spécifiques où les options par défaut ne sont pas adaptées.

Les options de lecture prennent effet lors de la prochaine modification de ` MediaPlayer::source `.

Cette propriété a été introduite dans Qt 6.10.

playbackRate : real

Cette propriété définit la vitesse de lecture du contenu multimédia sous forme de multiple de la vitesse normale.

Pour plus d’informations, consultez QMediaPlayer::playbackRate.

La valeur par défaut est 1.0.

playbackState : enumeration [read-only]

Cette propriété contient l'état de la lecture du média. Elle peut prendre l'une des valeurs suivantes :

Valeur de la propriétéDescription
PlayingStateLe média est en cours de lecture. Cela correspond à la propriété « playing ».
PausedStateLa lecture du média a été suspendue.
StoppedStateLa lecture du fichier multimédia n'a pas encore commencé.

playing : bool [read-only, since 6.5]

Indique si le fichier multimédia est en cours de lecture.

Cette propriété a été introduite dans Qt 6.5.

Voir également playbackState.

position : int

Cette valeur correspond à la position actuelle de lecture, exprimée en millisecondes depuis le début du fichier multimédia. Les changements périodiques de position seront signalés par le signal `positionChanged()`.

Si la propriété « seekable » est définie sur « true », cette propriété peut être définie en millisecondes.

seekable : bool [read-only]

Cette propriété indique si l'position s du média peuvent être modifiées.

source : url

Cette propriété contient l'URL source du fichier multimédia.

Item {
    MediaPlayer {
        id: mediaplayer
        source: "file:///test.mp4"
        videoOutput: videoOutput
        audioOutput: AudioOutput {

        }
    }

    VideoOutput {
        id: videoOutput
        anchors.fill: parent
    }

    MouseArea {
        id: playArea
        anchors.fill: parent
        onPressed: mediaplayer.play();
    }
}

Voir également QMediaPlayer::setSource().

subtitleTracks : list<mediaMetaData> [read-only]

Cette propriété contient une liste de métadonnées. Chaque index correspond à une piste de sous-titres.

Les métadonnées contiennent des propriétés décrivant les pistes individuelles. Pour les pistes de sous-titres, la propriété « Language » est généralement la plus importante.

Cette propriété émet le signal « tracksChanged » lorsqu’elle est modifiée.

Voir également « mediaMetaData ».

videoOutput : VideoOutput

Cette propriété contient la sortie vidéo cible. Elle accepte un élément de type « VideoOutput ».

Voir également QMediaPlayer::setVideoOutput().

videoTracks : list<mediaMetaData> [read-only]

Cette propriété contient une liste de métadonnées. Chaque index correspond à une piste vidéo.

Les métadonnées contiennent des propriétés décrivant chaque piste.

Cette propriété émet le signal « tracksChanged » lorsqu’elle est modifiée.

Voir également mediaMetaData.

Documentation sur les signaux

errorOccurred(error, errorString)

Ce signal est émis lorsqu'une error s'est produite. Le paramètre errorString peut contenir des informations plus détaillées sur l'erreur.

Remarque : le gestionnaire correspondant est onErrorOccurred.

Voir également QMediaPlayer::Error.

playbackStateChanged()

Ce signal est émis lorsque la propriété playbackState est modifiée.

Remarque : le gestionnaire correspondant est onPlaybackStateChanged.

playingChanged()

Ce signal est émis lorsque la propriété playing change.

Remarque : le gestionnaire correspondant est onPlayingChanged.

tracksChanged()

Ce signal est émis lorsque les propriétés audioTracks, subtitleTracks ou videoTracks sont modifiées.

Remarque : le gestionnaire correspondant est onTracksChanged.

Documentation des méthodes

void pause()

Met en pause la lecture du contenu multimédia.

Définit la propriété « playbackState » sur « PausedState » et remplace la valeur de « playing » par « false ».

void play()

Lance ou reprend la lecture du fichier multimédia.

Définit la propriété « playbackState » sur « PlayingState » et remplace « playing » par « true ».

void stop()

Interrompt la lecture du contenu multimédia.

Définit la propriété « playbackState » sur « StoppedState » et remplace « playing » par « false ».

© 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.