Video QML Type
Un type de commodité pour l'affichage d'une vidéo spécifiée. Plus d'informations...
| Import Statement: | import QtMultimedia |
| Inherits: |
Propriétés
- autoPlay : bool
(since 6.7) - bufferProgress : real
- duration : int
- endOfStreamPolicy : enumeration
(since 6.9) - error : enumeration
- errorString : string
- fillMode : enumeration
- hasAudio : bool
- hasVideo : bool
- loops : int
- metaData : mediaMetaData
- mirrored : int
- muted : bool
- orientation : int
(since 6.9) - playbackRate : real
- playbackState : enumeration
- position : int
- seekable : bool
- source : url
- volume : real
Signaux
- errorOccurred(error, errorString)
- paused()
- playing()
- stopped()
Méthodes
- clearOutput()
(since 6.9) - pause()
- play()
- seek(offset)
- stop()
Description détaillée
Video est un type de commodité combinant les fonctionnalités d'un MediaPlayer et d'un VideoOutput en un seul. Il fournit une fonctionnalité simple de lecture vidéo sans avoir à déclarer plusieurs types.
Voici un exemple de code permettant de mettre en œuvre 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 x 600 pixels et sa propriété id a la valeur video.
Remarquez que les signaux pour Keys ont été définis et que le fait d'appuyer sur le bouton :
- Spacebar fait basculer le bouton de pause.
- Left Arrow déplace la position actuelle dans la vidéo 5 secondes plus tôt.
- Right Arrow avance la position actuelle dans la vidéo de 5 secondes.
La vidéo prend en charge la présentation vidéo non transformée, étirée et uniformément mise à l'échelle. Pour une description de la présentation étirée à échelle uniforme, voir 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 média commence automatiquement après son chargement. La valeur par défaut est false.
Cette propriété a été introduite dans Qt 6.7.
bufferProgress : real
Cette propriété indique dans quelle mesure le tampon de données est actuellement rempli, de 0.0 (vide) à 1.0 (plein).
duration : int
Cette propriété indique la durée du média en millisecondes.
Si le média n'a pas de durée fixe (un flux en direct par exemple), cette propriété sera 0.
endOfStreamPolicy : enumeration [since 6.9]
Cette propriété spécifie la politique à appliquer lorsque le flux vidéo se termine.
L'adresse endOfStreamPolicy peut être l'une des suivantes
| Constante | Description |
|---|---|
ClearOutput | La sortie vidéo est effacée. |
KeepLastFrame | La sortie vidéo continue d'afficher la dernière image. Utilisez la méthode clearOutput() pour effacer la sortie manuellement. |
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. Il peut s'agir de l'un des éléments suivants
- MediaPlayer.NoError - il n'y a pas d'erreur en cours.
- 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 de réseau.
- MediaPlayerAccessDenied - la vidéo ne peut pas être lue en raison d'autorisations insuffisantes.
- MediaPlayerServiceMissing - 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 la condition d'erreur actuelle.
fillMode : enumeration
Cette propriété permet de définir la manière dont la vidéo est mise à l'échelle pour s'adapter à la zone cible.
- VideoOutput.Stretch - la vidéo est mise à l'échelle pour s'adapter à la zone cible
- VideoOutputPreserveAspectFit - la vidéo est mise à l'échelle de manière uniforme pour s'adapter à la zone cible, sans recadrage.
- VideoOutput.PreserveAspectCrop - la vidéo est mise à l'échelle de manière uniforme pour s'adapter à la zone cible, avec recadrage si nécessaire.
Ce type étant utilisé par commodité en QML, il ne prend pas directement en charge les énumérations. Les énumérations de VideoOutput sont donc 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 en cours a un contenu audio.
hasVideo : bool
Cette propriété indique si le média en cours a un contenu vidéo.
loops : int
Détermine le nombre de fois que le média est lu avant de s'arrêter. La valeur MediaPlayer.Infinite permet de lire en boucle le fichier multimédia actuel pour toujours.
La valeur par défaut est 1. La définition de cette propriété sur 0 n'a aucun effet.
metaData : mediaMetaData
Cette propriété contient les métadonnées du média en cours.
Voir 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 mise en miroir autour de son axe vertical. La mise en miroir est appliquée après orientation. La valeur par défaut est false.
muted : bool
Cette propriété indique si la sortie audio est coupée.
orientation : int [since 6.9]
Cette propriété détermine l'angle, en degrés, auquel la vidéo affichée est tournée dans le sens des aiguilles d'une montre en coordonnées vidéo, l'axe Y étant orienté vers le bas de l'écran. La transformation de l'orientation est appliquée avant mirrored.
Seuls les multiples de 90 degrés sont pris en charge, c'est-à-dire 0, 90, -90, 180, 270, etc.
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 comme un multiple de la vitesse normale.
playbackState : enumeration
Cette propriété en lecture seule indique l'état de lecture du média.
- MediaPlayer.PlayingState - le média est en cours de lecture
- MediaPlayer.PausedState - le média est en pause
- MediaPlayer.StoppedState - le média est arrêté
L'état par défaut est MediaPlayer.StoppedState.
position : int
Cette propriété indique la position de lecture actuelle en millisecondes.
seekable : bool
Cette propriété indique si la position de lecture de la vidéo peut être modifiée.
Si elle est vraie, l'appel à la méthode seek() ou la modification de la propriété position entraînera la recherche de la nouvelle position de lecture.
source : url
Cette propriété contient l'URL source du média.
volume : real
Cette propriété contient le volume audio.
Le volume est échelonné linéairement de 0.0 (silence) à 1.0 (volume maximum). Les valeurs situées en dehors de cette plage seront bridé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 l'intensité sonore perçue, ce qui correspond à ce qu'un utilisateur attend normalement d'un contrôle de volume. Voir QtAudio::convertVolume() pour plus de détails.
Documentation sur les signaux
errorOccurred(error, errorString)
Ce signal est émis lorsqu'une erreur s'est produite à l'adresse error. 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 est lancée ou poursuivie.
Remarque : le gestionnaire correspondant est onPlaying.
stopped()
Ce signal est émis lorsque la lecture est arrêtée.
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 après que le flux vidéo se termine avec la propriété endOfStreamPolicy Video définie sur KeepLastFrame.
Cette méthode a été introduite dans Qt 6.9.
pause()
Interrompt la lecture du support.
play()
Lance la lecture du support.
seek(offset)
Si la propriété seekable est vraie, recherche la position de lecture actuelle sur offset.
Voir également seekable et position.
stop()
Arrête la lecture du support.
© 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.