Spec-Zone.ru › Qt 5.6

Класс QSoundEffect

Класс QSoundEffect предоставляет способ воспроизведения звуковых эффектов с низкой задержкой. Подробнее...

Заголовок: #include <QSoundEffect>
qmake: QT += multimedia
Инициализируется: SoundEffect
Наследует: QObject
  • Список всех членов, включая наследуемые

Типы общего доступа

Перечисление Loop { Бесконечное }
Перечисление Состояние { Пустое, Загрузка, Готово, Ошибка }

Свойства

  • category : QString
  • loops : int
  • оставшиеся_циклы : const int
  • выключен : bool
  • воспроизведение : const bool
  • источник : QUrl
  • состояние : const Состояние
  • громкость : qreal
  • 1 свойство унаследовано от QObject

Функции общего доступа

QSoundEffect(QObject *parent = Q_NULLPTR)
~QSoundEffect()
QString category() const
bool isLoaded() const
bool isMuted() const
bool isPlaying() const
int loopCount() const
int оставшиеся_циклы() const
void setCategory(const QString &category)
void setLoopCount(int loopCount)
void setMuted(bool muted)
void setSource(const QUrl &url)
void setVolume(qreal volume)
QUrl source() const
Состояние status() const
qreal volume() const
  • 31 функция унаследована от QObject

Слот общего доступа

void play()
void stop()
  • 1 слот унаследован от QObject

Сигналы

void categoryChanged()
void loadedChanged()
void loopCountChanged()
void loopsRemainingChanged()
void mutedChanged()
void playingChanged()
void sourceChanged()
void statusChanged()
void volumeChanged()
  • 2 сигнала унаследованы от QObject

Статические члены общего доступа

QStringList supportedMimeTypes()
  • 11 статических членов общего доступа унаследованы от QObject

Дополнительные наследуемые члены

  • 9 защищенных функций унаследованы от QObject

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

Класс QSoundEffect предоставляет способ воспроизведения звуковых эффектов с низкой задержкой.

Этот класс позволяет воспроизводить не сжатые аудиофайлы (обычно WAV-файлы) с более низкой задержкой, что подходит для звуков «обратной связи» в ответ на действия пользователя (например, звуки виртуальной клавиатуры, положительная или отрицательная обратная связь для всплывающих диалогов или звуки в играх). Если низкая задержка не важна, рассмотрите использование класса QMediaPlayer, так как он поддерживает более широкий спектр форматов мультимедиа и менее требователен к ресурсам.

Этот пример показывает, как можно воспроизвести циклический, достаточно тихий звуковой эффект:

QSoundEffect effect;
effect.setSource(QUrl::fromLocalFile("engine.wav"));
effect.setLoopCount(QSoundEffect::Infinite);
effect.setVolume(0.25f);
effect.play();

Обычно звуковой эффект следует повторно использовать, что позволяет выполнить весь парсинг и подготовку заранее и запускать его только при необходимости. Это помогает уменьшить задержку при воспроизведении звука.

MyGame()
    : m_explosion(this)
{
    m_explosion.setSource(QUrl::fromLocalFile("explosion.wav"));
    m_explosion.setVolume(0.25f);

    // Set up click handling etc.
    connect(clickSource, SIGNAL(clicked()), &m_explosion, SLOT(play()));
}
private:
QSoundEffect m_explosion;

Поскольку QSoundEffect требует немного больше ресурсов для достижения низкой задержки при воспроизведении, платформа может ограничить количество одновременно воспроизводимых звуковых эффектов.

Документация по типу членов

перечисление QSoundEffect::Loop

Постоянная Значение Описание
QSoundEffect::Infinite -2 Используется в качестве параметра для setLoopCount() для бесконечного цикла

перечисление QSoundEffect::Состояние

Постоянная Значение Описание
QSoundEffect::Null 0 Не задан источник или источник равен null.
QSoundEffect::Loading 1 Эффект SoundEffect пытается загрузить источник.
QSoundEffect::Ready 2 Источник загружен и готов к воспроизведению.
QSoundEffect::Error 3 Во время операции произошла ошибка, например, при загрузке источника.

Документация по свойствам

category : QString

Это свойство содержит категорию этого звукового эффекта.

Некоторые платформы могут выполнять разное аудио-маршрутизирование для разных категорий или могут позволять пользователю устанавливать разные уровни громкости для разных категорий.

Это значение будет проигнорировано на платформах, которые не поддерживают категории аудио.

Функции доступа:

QString category() const
void setCategory(const QString &category)

Сигнал уведомления:

void categoryChanged()

loops : int

Это свойство содержит количество повторов воспроизведения звука. Значение 0 или 1 означает, что звук будет воспроизведён только один раз; установите значение SoundEffect.Infinite для включения бесконечного циклического воспроизведения.

Значение можно изменить во время воспроизведения звукового эффекта, в этом случае оставшиеся циклы будут обновлены до нового значения.

Функции доступа:

int loopCount() const
void setLoopCount(int loopCount)

Сигнал уведомления:

void loopCountChanged()

loopsRemaining : const int

Это свойство содержит количество оставшихся циклов, прежде чем звуковой эффект остановится сам по себе, или QSoundEffect::Infinite, если это было установлено в свойстве loops.

Функции доступа:

int loopsRemaining() const

Сигнал уведомления:

void loopsRemainingChanged()

muted : bool

Это свойство предоставляет способ управления отключения звука. Значение true отключит этот эффект.

Функции доступа:

bool isMuted() const
void setMuted(bool muted)

Сигнал уведомления:

void mutedChanged()

playing : const bool

Это свойство указывает, воспроизводится ли звуковой эффект или нет.

Функции доступа:

bool isPlaying() const

Сигнал уведомления:

void playingChanged()

source : QUrl

Это свойство содержит URL-адрес звука для воспроизведения. Для того, чтобы SoundEffect попытался загрузить источник, URL-адрес должен существовать, и приложение должно иметь права чтения в указанном каталоге.

Функции доступа:

QUrl source() const
void setSource(const QUrl &url)

Сигнал уведомления:

void sourceChanged()

status : const Status

Это свойство указывает текущий статус звукового эффекта из перечисления QSoundEffect::Status.

Функции доступа:

Status status() const

Сигнал уведомления:

void statusChanged()

volume : qreal

Это свойство содержит громкость воспроизведения звукового эффекта, от 0.0 (без звука) до 1.0 (максимальная громкость).

Функции доступа:

qreal volume() const
void setVolume(qreal volume)

Сигнал уведомления:

void volumeChanged()

Документация по функциям-членам

QSoundEffect::QSoundEffect(QObject *parent = Q_NULLPTR)

Создаёт объект QSoundEffect с заданным parent.

QSoundEffect::~QSoundEffect()

Удаляет этот звуковой эффект.

QString QSoundEffect::category() const

Возвращает текущую категорию для данного звукового эффекта.

Некоторые платформы могут выполнять разное аудио-маршрутизирование для разных категорий или могут позволять пользователю устанавливать разные уровни громкости для разных категорий.

Это значение будет проигнорировано на платформах, которые не поддерживают категории аудио.

Примечание: Функция-член для свойства category.

См. также setCategory().

[signal] void QSoundEffect::categoryChanged()

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

Примечание: Сигнал уведомления для свойства category.

bool QSoundEffect::isLoaded() const

Возвращает, завершила ли загрузка звукового эффекта source().

bool QSoundEffect::isMuted() const

Возвращает, заглушен ли этот звуковой эффект.

Примечание: Функция-член для свойства muted.

bool QSoundEffect::isPlaying() const

Возвращает true, если звуковой эффект в настоящее время воспроизводится, или false в противном случае.

Примечание: Функция-член для свойства playing.

[signal] void QSoundEffect::loadedChanged()

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

int QSoundEffect::loopCount() const

Возвращает общее количество воспроизведений этого звукового эффекта, прежде чем он остановится.

См. метод loopsRemaining() для количества оставшихся циклов.

Примечание: Функция-член для свойства loops.

См. также setLoopCount().

[signal] void QSoundEffect::loopCountChanged()

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

Примечание: Сигнал уведомления для свойства loops.

[signal] void QSoundEffect::loopsRemainingChanged()

Сигнал loopsRemainingChanged генерируется, когда количество оставшихся циклов изменилось.

Примечание: Сигнал уведомления для свойства loopsRemaining.

[signal] void QSoundEffect::mutedChanged()

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

Примечание: Сигнал уведомления для свойства muted.

[slot] void QSoundEffect::play()

Начать воспроизведение звукового эффекта, повторяя его указанное количество раз, согласно свойству loops.

[signal] void QSoundEffect::playingChanged()

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

Примечание: Сигнал уведомления для свойства playing.

void QSoundEffect::setCategory(const QString &category)

Устанавливает категорию данного звукового эффекта в category.

Некоторые платформы могут использовать разное аудио-маршрутизирование для разных категорий или позволяют пользователю устанавливать разные уровни громкости для разных категорий.

Это настройка будет проигнорирована на платформах, не поддерживающих аудио-категории.

Если эта настройка меняется во время воспроизведения звукового эффекта, она будет действовать только после остановки воспроизведения звукового эффекта.

Примечание: Функция-установщик для свойства category.

См. также category().

void QSoundEffect::setLoopCount(int loopCount)

Устанавливает общее количество повторений воспроизведения этого звукового эффекта в loopCount.

Установка loop count в 0 или 1 означает, что звуковой эффект будет воспроизведён только один раз; передайте QSoundEffect::Infinite для бесконечного повторения. Количество повторов можно изменять во время воспроизведения звукового эффекта, в этом случае оставшееся количество повторов будет обновлено до нового значения loopCount.

Примечание: Функция-установщик для свойства loops.

См. также loopCount() и loopsRemaining().

void QSoundEffect::setMuted(bool muted)

Устанавливает, будет ли воспроизведение этого звукового эффекта приглушено.

Если muted равно true, воспроизведение будет приглушено (выключено), в противном случае воспроизведение будет происходить с текущим заданным уровнем громкости.

Примечание: Функция-установщик для свойства muted.

См. также isMuted().

void QSoundEffect::setSource(const QUrl &url)

Установить текущий URL для воспроизведения в url.

Примечание: Функция-установщик для свойства source.

См. также source().

void QSoundEffect::setVolume(qreal volume)

Устанавливает громкость воспроизведения звукового эффекта в volume, от 0.0 (без звука) до 1.0 (максимальная громкость).

Примечание: Функция-установщик для свойства volume.

См. также volume().

QUrl QSoundEffect::source() const

Возвращает URL текущего источника для воспроизведения

Примечание: Функция-получатель для свойства source.

См. также setSource().

[signal] void QSoundEffect::sourceChanged()

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

Примечание: Сигнал уведомления для свойства source.

Status QSoundEffect::status() const

Возвращает текущее состояние этого звукового эффекта.

Примечание: Функция-получатель для свойства status.

[signal] void QSoundEffect::statusChanged()

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

Примечание: Сигнал уведомления для свойства status.

[slot] void QSoundEffect::stop()

Остановить текущее воспроизведение.

[static] QStringList QSoundEffect::supportedMimeTypes()

Возвращает список поддерживаемых типов MIME для этой платформы.

qreal QSoundEffect::volume() const

Возвращает текущий уровень громкости этого звукового эффекта, от 0.0 (без звука) до 1.0 (максимальная громкость).

Примечание: Функция-получатель для свойства volume.

См. также setVolume().

[signal] void QSoundEffect::volumeChanged()

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

Примечание: Сигнал уведомления для свойства volume.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.6/qsoundeffect.html

Spec-Zone.ru

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