Spec-Zone.ru › Qt 5.9

Тип SoundEffect QML

Тип 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 Источник не задан или равен 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/qt-5.9/qml-qtmultimedia-soundeffect.html

Spec-Zone.ru

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