Video QML Type
Ein Komforttyp zum Anzeigen eines bestimmten Videos. Mehr...
| Import Statement: | import QtMultimedia |
| Inherits: |
Eigenschaften
- 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
Signale
- errorOccurred(error, errorString)
- paused()
- playing()
- stopped()
Methoden
- clearOutput()
(since 6.9) - pause()
- play()
- seek(offset)
- stop()
Ausführliche Beschreibung
Video ist ein Komforttyp, der die Funktionalität von „ MediaPlayer “ und „ VideoOutput “ in einem vereint. Er bietet einfache Funktionen zur Videowiedergabe, ohne dass mehrere Typen deklariert werden müssen.
Im Folgenden finden Sie Beispielcode zur Implementierung der Videowiedergabe in einer Szene.
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
}Die Quelldatei „ video.avi “ wird abgespielt, wenn Sie auf das übergeordnete Element von „ MouseArea “ klicken. Das Video wird in einem Bereich von 800 × 600 Pixel abgespielt, und seine Eigenschaft „ id “ hat den Wert „video“.
Beachten Sie, dass aufgrund der definierten Signale für „ Keys “ das Drücken der Taste:
- Spacebar die Pause-Schaltfläche umgeschaltet.
- Left Arrow versetzt die aktuelle Position im Video um 5 Sekunden zurück.
- Right Arrow die aktuelle Position im Video um 5 Sekunden vorwärts verschiebt.
Video unterstützt die Darstellung von Videos ohne Transformation, gestreckt und gleichmäßig skaliert. Eine Beschreibung der Darstellung „gestreckt und gleichmäßig skaliert“ finden Sie in der Beschreibung der Eigenschaft „ fillMode “.
Siehe auch „ MediaPlayer “ und „ VideoOutput “.
Eigenschaftsdokumentation
autoPlay : bool [since 6.7]
Diese Eigenschaft legt fest, ob die Wiedergabe der Mediendatei automatisch beginnt, sobald sie geladen ist. Die Standardeinstellung lautet „ false “.
Diese Eigenschaft wurde in Qt 6.7 eingeführt.
bufferProgress : real
Diese Eigenschaft gibt an, zu welchem Anteil der Datenpuffer derzeit gefüllt ist, wobei die Werte zwischen 0,0 (leer) und 1,0 (voll) liegen.
duration : int
Diese Eigenschaft gibt die Dauer des Mediums in Millisekunden an.
Wenn das Medium keine feste Dauer hat (z. B. ein Live-Stream), ist dieser Wert 0.
endOfStreamPolicy : enumeration [since 6.9]
Diese Eigenschaft legt fest, welche Richtlinie angewendet werden soll, wenn der Videostream endet.
Die Eigenschaft „ endOfStreamPolicy “ kann einen der folgenden Werte annehmen:
| Konstante | Beschreibung |
|---|---|
ClearOutput | Die Videoausgabe wird gelöscht. |
KeepLastFrame | Die Videoausgabe zeigt weiterhin das letzte Bild an. Verwenden Sie die Methode „ clearOutput()“, um die Ausgabe manuell zu löschen. |
Der Standardwert ist ` VideoOutput.ClearOutput`.
Diese Eigenschaft wurde in Qt 6.9 eingeführt.
error : enumeration
Diese Eigenschaft enthält den Fehlerstatus des Videos. Mögliche Werte sind:
- MediaPlayer. „NoError “ – Es liegt derzeit kein Fehler vor.
- MediaPlayer.ResourceError – Das Video kann aufgrund eines Problems bei der Zuweisung von Ressourcen nicht abgespielt werden.
- MediaPlayer.FormatError – Das Videoformat wird nicht unterstützt.
- MediaPlayer.NetworkError – Das Video kann aufgrund von Netzwerkproblemen nicht abgespielt werden.
- MediaPlayer.AccessDenied – Das Video kann aufgrund unzureichender Berechtigungen nicht abgespielt werden.
- MediaPlayer.ServiceMissing – Das Video kann nicht abgespielt werden, da der Mediendienst nicht instanziiert werden konnte.
errorString : string
Diese Eigenschaft enthält eine Zeichenfolge, die den aktuellen Fehlerzustand genauer beschreibt.
fillMode : enumeration
Legen Sie diese Eigenschaft fest, um zu definieren, wie das Video an den Zielbereich angepasst wird.
- VideoOutput.Stretch – Das Video wird so skaliert, dass es in den Zielbereich passt
- VideoOutput.PreserveAspectFit – Das Video wird gleichmäßig skaliert, um den Bereich auszufüllen, ohne beschnitten zu werden
- VideoOutput.PreserveAspectCrop – Das Video wird gleichmäßig so skaliert, dass es den Bereich ausfüllt, wobei es bei Bedarf beschnitten wird
Da dieser Typ der Vereinfachung in QML dient, unterstützt er Aufzählungen nicht direkt; daher werden Aufzählungen aus „ VideoOutput “ verwendet, um auf die verfügbaren Füllmodi zuzugreifen.
Der Standard-Füllmodus ist „preserveAspectFit“.
hasAudio : bool
Diese Eigenschaft gibt an, ob das aktuelle Medium Audioinhalte enthält.
hasVideo : bool
Diese Eigenschaft gibt an, ob das aktuelle Medium Videoinhalte enthält.
loops : int
Legt fest, wie oft die Mediendatei abgespielt wird, bevor sie angehalten wird. Setzen Sie den Wert auf „ MediaPlayer.Infinite“, um die aktuelle Mediendatei endlos zu wiederholen.
Der Standardwert ist „ 1 “. Die Einstellung dieser Eigenschaft auf „ 0 “ hat keine Auswirkung.
metaData : mediaMetaData
Diese Eigenschaft enthält die Metadaten für das aktuelle Medium.
Weitere Informationen zu den einzelnen Metadatenschlüsseln finden Sie unter MediaPlayer.metaData.
Siehe auch mediaMetaData.
mirrored : int
Legt fest, ob das angezeigte Video um seine vertikale Achse gespiegelt wird. Die Spiegelung wird nach „ orientation “ angewendet. Der Standardwert ist „ false “.
muted : bool
Diese Eigenschaft gilt unabhängig davon, ob die Audioausgabe stummgeschaltet ist.
orientation : int [since 6.9]
Diese Eigenschaft legt den Winkel in Grad fest, um den das angezeigte Video in Videokoordinaten im Uhrzeigersinn gedreht wird, wobei die Y-Achse auf dem Bildschirm nach unten zeigt. Die Orientierungstransformation wird vor „ mirrored “ angewendet.
Es werden nur Vielfache von „ 90 “ Grad unterstützt, d. h. 0, 90, -90, 180, 270 usw.; andernfalls wird der angegebene Wert ignoriert.
Der Standardwert ist ` 0`.
Diese Eigenschaft wurde in Qt 6.9 eingeführt.
playbackRate : real
Diese Eigenschaft gibt die Wiedergabegeschwindigkeit des Videos als Vielfaches der normalen Geschwindigkeit an.
playbackState : enumeration
Diese schreibgeschützte Eigenschaft gibt den Wiedergabestatus des Mediums an.
- MediaPlayer.PlayingState – Das Medium wird gerade wiedergegeben
- MediaPlayer.PausedState – Das Medium ist angehalten
- MediaPlayer.StoppedState – das Medium ist angehalten
Der Standardzustand ist „ MediaPlayer “. „.StoppedState“.
position : int
Diese Eigenschaft enthält die aktuelle Wiedergabeposition in Millisekunden.
seekable : bool
Diese Eigenschaft gibt an, ob die Wiedergabeposition des Videos geändert werden kann.
Ist der Wert „true“, führt der Aufruf der Methode „ seek()“ oder die Änderung der Eigenschaft „ position “ dazu, dass die Wiedergabe zur neuen Position springt.
source : url
Diese Eigenschaft enthält die Quell-URL des Mediums.
volume : real
Diese Eigenschaft gibt die Lautstärke an.
Die Lautstärke wird linear von 0.0 (Stille) bis 1.0 (volle Lautstärke) skaliert. Werte außerhalb dieses Bereichs werden begrenzt.
Die Standardlautstärke beträgt 1.0.
Lautstärkeregler in der Benutzeroberfläche sollten in der Regel nichtlinear skaliert werden. Die Verwendung einer logarithmischen Skala führt beispielsweise zu linearen Änderungen der wahrgenommenen Lautstärke, was ein Benutzer normalerweise von einem Lautstärkeregler erwartet. Weitere Details finden Sie unter QtAudio::convertVolume().
Signal-Dokumentation
errorOccurred(error, errorString)
Dieses Signal wird ausgelöst, wenn ein „ error “ aufgetreten ist. Der Parameter „ errorString “ enthält möglicherweise detailliertere Informationen zum Fehler.
Hinweis: Der entsprechende Handler ist „ onErrorOccurred “.
paused()
Dieses Signal wird ausgesendet, wenn die Wiedergabe angehalten wird.
Hinweis: Der entsprechende Handler lautet „ onPaused “.
playing()
Dieses Signal wird ausgesendet, wenn die Wiedergabe gestartet oder fortgesetzt wird.
Hinweis: Der entsprechende Handler lautet „ onPlaying “.
stopped()
Dieses Signal wird ausgesendet, wenn die Wiedergabe angehalten wird.
Hinweis: Der entsprechende Handler lautet „ onStopped “.
Methodendokumentation
[since 6.9] clearOutput()
Löscht die Videoausgabe, indem das aktuelle Videobild entfernt wird. Diese Methode wird empfohlen, wenn Sie das letzte Videobild entfernen müssen, nachdem der Videostream beendet wurde und die Eigenschaft „ endOfStreamPolicy “ auf „ KeepLastFrame “ gesetzt ist.
Diese Methode wurde in Qt 6.9 eingeführt.
pause()
Hält die Wiedergabe des Mediums an.
play()
Startet die Wiedergabe der Medien.
seek(offset)
Wenn die Eigenschaft „ seekable “ auf „true“ gesetzt ist, wird die aktuelle Wiedergabeposition auf „ offset “ gesetzt.
Siehe auch „ seekable “ und „ position “.
stop()
Beendet die Wiedergabe der Medien.
© 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.