Sur cette page

Video QML Type

Un type pratique permettant d'afficher une vidéo spécifiée. En savoir plus…

Import Statement: import QtMultimedia
Inherits:

Item

Propriétés

Signaux

Méthodes

Description détaillée

Video Il s'agit d'un type pratique combinant en un seul les fonctionnalités d'un ` MediaPlayer ` et d'un ` VideoOutput `. Il offre une fonctionnalité simple de lecture vidéo sans avoir à déclarer plusieurs types.

Voici un exemple de code permettant d’implémenter la lecture vidéo dans une scène.

Video {
    id: video
    width : 800
    height : 600
    source: "video.avi"

    MouseArea {
        anchors.fill: parent
        onClicked: {
            video.play()
        }
    }

    focus: true
    Keys.onSpacePressed: video.playbackState == MediaPlayer.PlayingState ? video.pause() : video.play()
    Keys.onLeftPressed: video.position = video.position - 5000
    Keys.onRightPressed: video.position = video.position + 5000
}

Le fichier source, video.avi, est lu lorsque vous cliquez sur le parent de MouseArea. La vidéo est lue dans une zone de 800 × 600 pixels, et sa propriété id a pour valeur « video ».

Notez que, comme des signaux ont été définis pour Keys, le fait d’appuyer sur la touche :

  • Spacebar active le bouton de pause.
  • Left Arrow déplace la position actuelle dans la vidéo de 5 secondes en arrière.
  • Right Arrow fait avancer la position actuelle dans la vidéo de 5 secondes.

La vidéo prend en charge l’affichage non transformé, étiré et mis à l’échelle uniformément. Pour une description de l’affichage étiré et mis à l’échelle uniformément, consultez la description de la propriété fillMode.

Voir également MediaPlayer et VideoOutput.

Documentation sur les propriétés

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

Cette propriété indique le pourcentage de remplissage actuel du tampon de données, sur une échelle allant de 0,0 (vide) à 1,0 (plein).

duration : int

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 valeur sera égale à 0.

endOfStreamPolicy : enumeration [since 6.9]

Cette propriété définit la règle à appliquer lorsque le flux vidéo prend fin.

La propriété « endOfStreamPolicy » peut prendre l'une des valeurs suivantes :

ConstanteDescription
ClearOutputLa sortie vidéo est effacée.
KeepLastFrameLa sortie vidéo continue d'afficher la dernière image. Utilisez la méthode clearOutput() pour effacer manuellement la sortie.

La valeur par défaut est VideoOutput.ClearOutput.

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

error : enumeration

Cette propriété contient l'état d'erreur de la vidéo. Elle peut prendre l'une des valeurs suivantes :

  • MediaPlayer.NoError: aucune erreur n'est actuellement détectée.
  • MediaPlayer.ResourceError : la vidéo ne peut pas être lue en raison d'un problème d'allocation des ressources.
  • MediaPlayer. FormatError : le format de la vidéo n'est pas pris en charge.
  • MediaPlayer.NetworkError : la vidéo ne peut pas être lue en raison de problèmes réseau.
  • MediaPlayer.AccessDenied : la vidéo ne peut pas être lue en raison d'autorisations insuffisantes.
  • MediaPlayer.ServiceMissing - la vidéo ne peut pas être lue car le service multimédia n'a pas pu être instancié.

errorString : string

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

fillMode : enumeration

Définissez cette propriété pour déterminer comment la vidéo est redimensionnée afin de s'adapter à la zone cible.

  • VideoOutput.Stretch : la vidéo est redimensionnée pour s'adapter
  • VideoOutput.PreserveAspectFit : la vidéo est redimensionnée de manière uniforme pour s'adapter à la zone cible sans être recadrée
  • VideoOutput.PreserveAspectCrop : la vidéo est redimensionnée uniformément pour remplir la zone, avec recadrage si nécessaire

Ce type étant destiné à faciliter l'utilisation en QML, il ne prend pas directement en charge les énumérations ; c'est pourquoi les énumérations de VideoOutput sont utilisées pour accéder aux modes de remplissage disponibles.

Le mode de remplissage par défaut est « preserveAspectFit ».

hasAudio : bool

Cette propriété indique si le média actuel contient du contenu audio.

hasVideo : bool

Cette propriété indique si le média actuel contient du contenu vidéo.

loops : int

Détermine le nombre de fois que le fichier multimédia est lu avant de s'arrêter. Définissez cette propriété sur « MediaPlayer ». Choisissez « 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.

metaData : mediaMetaData

Cette propriété contient les métadonnées relatives au média actuel.

Consultez MediaPlayer.metaData pour plus de détails sur chaque clé de métadonnées.

Voir également mediaMetaData.

mirrored : int

Détermine si la vidéo affichée est symétrique par rapport à son axe vertical. La symétrie est appliquée après l'orientation. La valeur par défaut est « false ».

muted : bool

Cette propriété indique si le son est coupé.

orientation : int [since 6.9]

Cette propriété détermine l'angle, en degrés, selon lequel la vidéo affichée est pivotée dans le sens des aiguilles d'une montre dans le système de coordonnées vidéo, l'axe Y pointant vers le bas à l'écran. La transformation d'orientation est appliquée avant l'appel de la méthode ` mirrored`.

Seuls les multiples de 90 degrés sont pris en charge, c'est-à-dire 0, 90, -90, 180, 270, etc. ; dans le cas contraire, la valeur spécifiée est ignorée.

La valeur par défaut est 0.

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

playbackRate : real

Cette propriété définit la vitesse de lecture de la vidéo sous forme de multiple de la vitesse normale.

playbackState : enumeration

Cette propriété en lecture seule indique l'état de lecture du fichier multimédia.

L'état par défaut est « MediaPlayer » .StoppedState.

position : int

Cette propriété contient la position de lecture actuelle, exprimée en millisecondes.

seekable : bool

Cette propriété indique si la position de lecture de la vidéo peut être modifiée.

Si elle est définie sur « true », l'appel de la méthode ` seek()` ou la modification de la propriété ` position ` entraînera le déplacement de la lecture vers la nouvelle position.

source : url

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

volume : real

Cette propriété détermine le volume audio.

Le volume est mis à l'échelle de manière linéaire, de 0.0 (silence) à 1.0 (volume maximal). Les valeurs situées en dehors de cette plage seront limitées.

Le volume par défaut est 1.0.

Les commandes de volume de l'interface utilisateur doivent généralement être mises à l'échelle de manière non linéaire. Par exemple, l'utilisation d'une échelle logarithmique produira des changements linéaires dans le niveau sonore perçu, ce à quoi un utilisateur s'attend normalement de la part d'une commande de volume. Voir QtAudio::convertVolume() pour plus de détails.

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.

paused()

Ce signal est émis lorsque la lecture est mise en pause.

Remarque : le gestionnaire correspondant est onPaused.

playing()

Ce signal est émis lorsque la lecture démarre ou reprend.

Remarque : le gestionnaire correspondant est onPlaying.

stopped()

Ce signal est émis lorsque la lecture est interrompue.

Remarque : le gestionnaire correspondant est onStopped.

Documentation de la méthode

[since 6.9] clearOutput()

Efface la sortie vidéo en supprimant l'image vidéo actuelle. Cette méthode est recommandée lorsque vous devez supprimer la dernière image vidéo une fois le flux vidéo terminé, alors que la propriété « endOfStreamPolicy » de la vidéo est définie sur « KeepLastFrame ».

Cette méthode a été introduite dans Qt 6.9.

pause()

Met la lecture du fichier multimédia en pause.

play()

Lance la lecture du fichier multimédia.

seek(offset)

Si la propriété ` seekable ` est définie sur `true`, la position de lecture actuelle est déplacée vers ` offset`.

Voir également seekable et position.

stop()

Interrompt la lecture du fichier multimédia.

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