Spec-Zone.ru › Qt 5.11

Тип QML SoundEffect

Тип SoundEffect предоставляет способ воспроизведения звуковых эффектов в QML. Подробнее...

Оператор импорта: import QtMultimedia 5.8
Создаёт: QSoundEffect
  • Список всех членов, включая наследуемые

Свойства

  • category : строка
  • loops : целое число
  • loopsRemaining : целое число
  • muted : логическое значение
  • playing : логическое значение
  • source : url
  • status : перечисление
  • volume : qreal

Сигналы

  • categoryChanged()
  • loadedChanged()
  • loopCountChanged()
  • loopsRemainingChanged()
  • mutedChanged()
  • playingChanged()
  • sourceChanged()
  • statusChanged()
  • volumeChanged()

Методы

  • bool isLoaded()
  • play()
  • stop()

Подробное описание

Этот тип позволяет воспроизводить несжатые аудиофайлы (обычно 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 Источник не задан или является пустым.
SoundEffect.Loading SoundEffect пытается загрузить источник.
SoundEffect.Ready Источник загружен и готов к воспроизведению.
SoundEffect.Error Во время операции произошла ошибка, например, при попытке загрузки источника.

volume : qreal

Это свойство содержит громкость воспроизведения звукового эффекта.

Громкость масштабируется линейно от 0.0 (тишина) до 1.0 (полная громкость). Значения вне этого диапазона будут ограничены.

Значение по умолчанию — 1.0.

Управление громкостью в пользовательском интерфейсе обычно должно масштабироваться нелинейно. Например, использование логарифмической шкалы обеспечит линейные изменения воспринимаемой громкости, что обычно ожидается от управления громкостью. См. QtMultimedia.convertVolume() для получения дополнительной информации.

Документация по сигналам

categoryChanged()

Сигнал categoryChanged генерируется при изменении свойства category.

Соответствующий обработчик — onCategoryChanged.

loadedChanged()

Сигнал loadedChanged генерируется при изменении состояния загрузки.

Соответствующий обработчик — onLoadedChanged.

loopCountChanged()

Сигнал loopCountChanged генерируется при изменении начального количества повторов.

Соответствующий обработчик — onLoopCountChanged.

loopsRemainingChanged()

Сигнал loopsRemainingChanged генерируется при изменении оставшегося количества повторов.

Соответствующий обработчик — onLoopsRemainingChanged.

mutedChanged()

Сигнал mutedChanged генерируется при изменении состояния отключения звука.

Соответствующий обработчик — onMutedChanged.

playingChanged()

Сигнал playingChanged генерируется при изменении свойства playing.

Соответствующий обработчик — onPlayingChanged.

sourceChanged()

Сигнал sourceChanged генерируется при изменении источника.

Соответствующий обработчик — onSourceChanged.

statusChanged()

Сигнал statusChanged генерируется при изменении свойства status.

Соответствующий обработчик — onStatusChanged.

volumeChanged()

Сигнал volumeChanged генерируется при изменении громкости.

Соответствующий обработчик — 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/archives/qt-5.11/qml-qtmultimedia-soundeffect.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API