Spec-Zone.ru › Qt 5.14

Класс QSound

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

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

Типы

перечисление Loop { Infinite }

Публичные функции

QSound(const QString &filename, QObject *parent = nullptr)
виртуальный ~QSound()
QString fileName() const
bool isFinished() const
int loops() const
int loopsRemaining() const
void setLoops(int number)

Публичные слоты

void play()
void stop()

Статические публичные члены

void play(const QString &filename)

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

Qt предоставляет наиболее часто используемые операции с аудио в приложениях с графическим интерфейсом: асинхронное воспроизведение звуковых файлов. Это наиболее просто выполняется с помощью статической функции play():

QSound::play("mysounds/bells.wav");

В качестве альтернативы сначала создайте объект QSound из звукового файла, а затем вызовите слот play():

QSound bells("mysounds/bells.wav");
bells.play();

В обоих случаях файл может быть локальным файлом или ресурсом.

После создания объекта QSound можно получить его fileName() и общее количество loops() (т. е. количество воспроизведений звука). Количество повторений можно изменить с помощью функции setLoops(). Во время воспроизведения звука функция loopsRemaining() возвращает оставшееся количество повторений. Используйте функцию isFinished() для определения завершения воспроизведения звука.

Звуки, воспроизводимые с помощью объекта QSound, могут использовать больше памяти, чем статическая функция play(), но они также могут воспроизводиться быстрее (в зависимости от аудиовозможностей основной платформы).

Если вам требуется более точный контроль над воспроизведением звуков, рассмотрите классы QSoundEffect или QAudioOutput.

См. также QSoundEffect.

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

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

Постоянная Значение Описание
QSound::Infinite -1 Может быть использована в качестве параметра для setLoops() для бесконечного цикла.

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

QSound::QSound(const QString &filename, QObject *parent = nullptr)

Создает объект QSound из файла, заданного filename, и с заданным parent.

Файл может быть локальным файлом или ресурсом.

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

[slot] void QSound::play()

Это перегруженная функция.

Начинает воспроизведение звука, указанного этим объектом QSound.

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

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

[slot] void QSound::stop()

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

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

[virtual] QSound::~QSound()

Уничтожает этот объект звука. Если воспроизведение звука не завершено, функция stop() вызывается перед уничтожением объекта звука.

См. также stop() и isFinished().

QString QSound::fileName() const

Возвращает имя файла, связанного с этим объектом QSound.

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

bool QSound::isFinished() const

Возвращает true, если воспроизведение звука завершено; в противном случае возвращает false.

int QSound::loops() const

Возвращает количество раз, сколько раз будет воспроизведён звук. Значение QSound::Infinite указывает на бесконечное количество циклов

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

int QSound::loopsRemaining() const

Возвращает оставшееся количество раз, сколько раз звук будет циклично воспроизводиться (для всех положительных значений это значение уменьшается каждый раз, когда звук воспроизводится). Значение QSound::Infinite указывает на бесконечное количество циклов

См. также loops() и isFinished().

[static] void QSound::play(const QString &filename)

Воспроизводит звук, хранящийся в файле, заданном filename.

Файл может быть локальным файлом или ресурсом.

См. также stop(), loopsRemaining(), и isFinished().

void QSound::setLoops(int number)

Устанавливает количество повторений звука, когда он воспроизводится.

Обратите внимание, что передача значения QSound::Infinite приведет к тому, что звук будет циклично воспроизводиться бесконечно.

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

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

Spec-Zone.ru

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