SoundEffect QML Type
Der Typ SoundEffect bietet eine Möglichkeit, Klangeffekte in QML abzuspielen. Mehr...
Import Statement: | import QtMultimedia |
In C++: | QSoundEffect |
Eigenschaften
- loops : int
- loopsRemaining : int
- muted : bool
- playing : bool
- source : url
- status : enumeration
- volume : real
Signale
- loadedChanged()
- loopCountChanged()
- loopsRemainingChanged()
- mutedChanged()
- playingChanged()
- sourceChanged()
- statusChanged()
- volumeChanged()
Methoden
Detaillierte Beschreibung
Dieser Typ ermöglicht es Ihnen, unkomprimierte Audiodateien (typischerweise WAV-Dateien) mit geringerer Latenz abzuspielen, und eignet sich für "Feedback"-Sounds als Reaktion auf Benutzeraktionen (z.B. virtuelle Tastaturgeräusche, positives oder negatives Feedback für Popup-Dialoge oder Spielsounds). Wenn eine niedrige Latenzzeit nicht wichtig ist, sollten Sie stattdessen den Typ MediaPlayer verwenden, da dieser eine größere Anzahl von Medienformaten unterstützt und weniger ressourcenintensiv ist.
In der Regel sollte der Soundeffekt wiederverwendet werden, so dass die gesamte Analyse und Vorbereitung im Voraus erfolgen kann und nur bei Bedarf ausgelöst wird. Dies ist mit QML leicht zu erreichen, da Sie Ihre SoundEffect-Instanz deklarieren und an anderer Stelle auf sie verweisen können.
Das folgende Beispiel spielt eine WAV-Datei auf Mausklick ab.
Text { text: "Click Me!"; font.pointSize: 24; width: 150; height: 50; SoundEffect { id: playSound source: "soundeffect.wav" } MouseArea { id: playArea anchors.fill: parent onPressed: { playSound.play() } } }
Da SoundEffect etwas mehr Ressourcen benötigt, um eine geringere Latenzzeit bei der Wiedergabe zu erreichen, kann die Plattform die Anzahl der gleichzeitig abspielenden Soundeffekte begrenzen.
Eigenschaft Dokumentation
loops : int |
Diese Eigenschaft gibt an, wie oft der Sound abgespielt wird. Ein Wert von 0 oder 1 bedeutet, dass der Sound nur einmal abgespielt wird; setzen Sie ihn auf SoundEffect.Infinite, um eine Endlosschleife zu aktivieren.
Der Wert kann geändert werden, während der Soundeffekt abgespielt wird; in diesem Fall werden die verbleibenden Schleifen auf den neuen Wert aktualisiert.
loopsRemaining : int |
Diese Eigenschaft enthält die Anzahl der verbleibenden Schleifen, bevor der Soundeffekt von selbst stoppt, oder SoundEffect.Infinite, wenn dies in loops eingestellt wurde.
muted : bool |
Diese Eigenschaft bietet eine Möglichkeit, die Stummschaltung zu steuern. Ein Wert von true
schaltet diesen Effekt stumm. Andernfalls erfolgt die Wiedergabe mit dem aktuell angegebenen volume.
playing : bool |
Diese Eigenschaft zeigt an, ob der Soundeffekt abgespielt wird oder nicht.
source : url |
Diese Eigenschaft enthält die Url für den abzuspielenden Sound. Damit SoundEffect versuchen kann, die Quelle zu laden, muss die URL existieren und die Anwendung muss über Leseberechtigung im angegebenen Verzeichnis verfügen. Handelt es sich bei der gewünschten Quelle um eine lokale Datei, kann die URL entweder mit absoluter oder relativer Pfadangabe (zu der Datei, die SoundEffect deklariert hat) angegeben werden.
status : enumeration |
Diese Eigenschaft gibt den aktuellen Status von SoundEffect an, wie er in SoundEffect aufgezählt wird. Die möglichen Status sind unten aufgeführt.
Wert | Beschreibung |
---|---|
SoundEffect.Null | Es wurde keine Quelle festgelegt oder die Quelle ist null. |
SoundEffect.Laden | Die SoundEffect versucht, die Quelle zu laden. |
SoundEffect.Bereit | Die Quelle ist geladen und bereit zum Abspielen. |
SoundEffect.Fehler | Während des Vorgangs ist ein Fehler aufgetreten, z. B. ein Fehler beim Laden der Quelle. |
volume : real |
Diese Eigenschaft enthält die Lautstärke der Wiedergabe des Soundeffekts.
Die Lautstärke wird linear von 0.0
(Stille) bis 1.0
(volle Lautstärke) skaliert. Werte, die außerhalb dieses Bereichs liegen, werden geklammert.
Die Standardlautstärke ist 1.0
.
Die Lautstärkeregler der Benutzeroberfläche sollten normalerweise nicht linear skaliert werden. Die Verwendung einer logarithmischen Skala führt beispielsweise zu linearen Änderungen der wahrgenommenen Lautstärke, was der Benutzer normalerweise von einem Lautstärkeregler erwarten würde. Siehe convertVolume() für weitere Details.
Signal-Dokumentation
loadedChanged() |
Das Signal loadedChanged
wird ausgegeben, wenn sich der Ladezustand geändert hat.
Hinweis: Der entsprechende Handler ist onLoadedChanged
.
loopCountChanged() |
Das Signal loopCountChanged
wird ausgegeben, wenn sich die ursprüngliche Anzahl der Schleifen geändert hat.
Hinweis: Der entsprechende Handler ist onLoopCountChanged
.
loopsRemainingChanged() |
Das Signal loopsRemainingChanged
wird ausgegeben, wenn sich die verbleibende Anzahl der Schleifen geändert hat.
Hinweis: Der entsprechende Handler ist onLoopsRemainingChanged
.
mutedChanged() |
Das Signal mutedChanged
wird ausgegeben, wenn sich der Zustand der Stummschaltung geändert hat.
Hinweis: Der entsprechende Handler ist onMutedChanged
.
playingChanged() |
Das Signal playingChanged
wird ausgegeben, wenn sich die Abspieleigenschaft geändert hat.
Hinweis: Der entsprechende Handler ist onPlayingChanged
.
sourceChanged() |
Das Signal sourceChanged
wird ausgegeben, wenn die Quelle geändert wurde.
Hinweis: Der entsprechende Handler ist onSourceChanged
.
statusChanged() |
Das Signal statusChanged
wird ausgegeben, wenn sich die Statuseigenschaft geändert hat.
Hinweis: Der entsprechende Handler ist onStatusChanged
.
volumeChanged() |
Das Signal volumeChanged
wird ausgegeben, wenn sich die Lautstärke geändert hat.
Hinweis: Der entsprechende Handler ist onVolumeChanged
.
Dokumentation der Methode
play() |
Startet die Wiedergabe des Soundeffekts, wobei der Effekt so oft wiederholt wird, wie in der Eigenschaft loops angegeben.
Dies ist die Standardmethode für SoundEffect.
SoundEffect { id: playSound source: "soundeffect.wav" } MouseArea { id: playArea anchors.fill: parent onPressed: { playSound.play() } }
stop() |
Stoppt die aktuelle Wiedergabe.
© 2025 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.