Тип QML SoundEffect
Тип SoundEffect предоставляет способ воспроизведения звуковых эффектов в QML. Подробнее...
| Заявление об импорте: | import QtMultimedia 5.15 |
| Инициализирует: | QSoundEffect |
Свойства
- category : строка
- loops : целое число
- loopsRemaining : целое число
- muted : логическое значение
- playing : логическое значение
- source : url
- status : перечисление
- volume : qreal
Сигналы
- categoryChanged()
- loadedChanged()
- loopCountChanged()
- loopsRemainingChanged()
- mutedChanged()
- playingChanged()
- sourceChanged()
- statusChanged()
- volumeChanged()
Методы
Подробное описание
Этот тип позволяет воспроизводить несжатые аудиофайлы (обычно WAV-файлы) с более низкой задержкой, и подходит для звуков типа «обратная связь» в ответ на действия пользователя (например, звуки виртуальной клавиатуры, положительная или отрицательная обратная связь для всплывающих диалоговых окон или звуки игр). Если низкая задержка не важна, используйте вместо этого типы MediaPlayer или Audio, так как они поддерживают более широкий спектр форматов медиа и потребляют меньше ресурсов.
Обычно звуковой эффект должен использоваться повторно, что позволяет выполнять все операции анализа и подготовки заранее и запускать их только при необходимости. Это легко реализовать в QML, так как вы можете объявить экземпляр SoundEffect и ссылаться на него в других местах.
Следующий пример воспроизводит WAV-файл при щелчке мышью.
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() }
}
} Поскольку SoundEffect требует немного больше ресурсов для достижения воспроизведения с более низкой задержкой, платформа может ограничивать количество одновременно воспроизводимых звуковых эффектов.
Документация по свойствам
category : строка
Это свойство содержит категорию этого звукового эффекта.
Некоторые платформы могут выполнять разную маршрутизацию звука для разных категорий или могут позволять пользователю устанавливать разные уровни громкости для разных категорий.
Это значение будет проигнорировано на платформах, не поддерживающих категории звука.
loops : целое число
Это свойство содержит количество раз, которое звук будет воспроизведён. Значение 0 или 1 означает, что звук будет воспроизведён только один раз; установите SoundEffect.Infinite, чтобы включить бесконечное повторение.
Значение можно изменить во время воспроизведения звукового эффекта, в этом случае оставшееся количество повторений будет обновлено до нового значения.
loopsRemaining : целое число
Это свойство содержит количество оставшихся повторений до того, как звуковой эффект остановится сам по себе или SoundEffect.Infinite, если это было установлено в loops.
muted : логическое значение
Это свойство предоставляет способ управления отключением звука. Значение true отключит этот эффект. В противном случае воспроизведение будет происходить с текущим заданным volume.
playing : логическое значение
Это свойство указывает, воспроизводится ли звуковой эффект или нет.
source : url
Это свойство содержит URL-адрес звука для воспроизведения. Для того, чтобы SoundEffect пытался загрузить источник, URL-адрес должен существовать, и приложение должно иметь разрешение на чтение в указанной директории. Если требуемый источник - это локальный файл, URL-адрес может быть указан с использованием абсолютного или относительного (от файла, который объявил SoundEffect) пути.
status : перечисление
Это свойство указывает текущий статус SoundEffect, как перечислено в SoundEffect. Возможные статусы перечислены ниже.
| Значение | Описание |
|---|---|
| SoundEffect.Null | Источник не задан или равен null. |
| SoundEffect.Loading | SoundEffect пытается загрузить источник. |
| SoundEffect.Ready | Источник загружен и готов к воспроизведению. |
| SoundEffect.Error | Во время операции произошла ошибка, например, при загрузке источника. |
volume : qreal
Это свойство содержит громкость воспроизведения звукового эффекта.
Громкость масштабируется линейно от 0.0 (тишина) до 1.0 (полная громкость). Значения вне этого диапазона будут ограничены.
Значение громкости по умолчанию - 1.0.
Управляющие элементы громкости интерфейса пользователя обычно должны масштабироваться нелинейно. Например, использование логарифмической шкалы обеспечит линейное изменение воспринимаемой громкости, что обычно ожидается от элемента управления громкостью. Для получения дополнительной информации см. QtMultimedia.convertVolume().
Документация по сигналам
categoryChanged()
Сигнал categoryChanged генерируется при изменении свойства category.
Соответствующий обработчик - onCategoryChanged.
Примечание: Соответствующий обработчик - onCategoryChanged.
loadedChanged()
Сигнал loadedChanged генерируется при изменении состояния загрузки.
Соответствующий обработчик - onLoadedChanged.
Примечание: Соответствующий обработчик - onLoadedChanged.
loopCountChanged()
Сигнал loopCountChanged генерируется при изменении начального количества повторений.
Соответствующий обработчик - onLoopCountChanged.
Примечание: Соответствующий обработчик - onLoopCountChanged.
loopsRemainingChanged()
Сигнал loopsRemainingChanged генерируется при изменении оставшегося количества повторений.
Соответствующий обработчик - onLoopsRemainingChanged.
Примечание: Соответствующий обработчик - onLoopsRemainingChanged.
mutedChanged()
Сигнал mutedChanged генерируется при изменении состояния отключения звука.
Соответствующий обработчик - onMutedChanged.
Примечание: Соответствующий обработчик - onMutedChanged.
playingChanged()
Сигнал playingChanged генерируется при изменении свойства playing.
Соответствующий обработчик - onPlayingChanged.
Примечание: Соответствующий обработчик - onPlayingChanged.
sourceChanged()
Сигнал sourceChanged генерируется при изменении источника.
Соответствующий обработчик - onSourceChanged.
Примечание: Соответствующий обработчик - onSourceChanged.
statusChanged()
Сигнал statusChanged генерируется при изменении свойства status.
Соответствующий обработчик - onStatusChanged.
Примечание: Соответствующий обработчик - onStatusChanged.
volumeChanged()
Сигнал volumeChanged генерируется при изменении громкости.
Соответствующий обработчик - onVolumeChanged.
Примечание: Соответствующий обработчик - onVolumeChanged.
Документация по методам
логическое значение isLoaded()
Возвращает, завершила ли загрузка звукового эффекта source.
play()
Начать воспроизведение звукового эффекта, циклически повторяя его заданное количество раз, как указано в свойстве loops.
Это метод по умолчанию для SoundEffect.
SoundEffect {
id: playSound
source: "soundeffect.wav"
}
MouseArea {
id: playArea
anchors.fill: parent
onPressed: { playSound.play() }
} stop()
Остановить текущее воспроизведение.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qml-qtmultimedia-soundeffect.html