Класс QSound
Класс QSound предоставляет метод для воспроизведения файлов звука формата .wav. Подробнее...
| Заголовок: | #include <QSound> |
| qmake: | QT += multimedia |
| Наследует: | QObject |
Типы public
| Перечисление | Loop { Infinite } |
Функции public
| QSound(const QString &filename, QObject *parent = Q_NULLPTR) | |
| ~QSound() | |
| QString | fileName() const |
| bool | isFinished() const |
| int | loops() const |
| int | loopsRemaining() const |
| void | setLoops(int number) |
- 32 функции public, унаследованные от QObject
Свойства public
| void | play() |
| void | stop() |
- 1 свойство public, унаследованное от QObject
Статические члены public
| void | play(const QString &filename) |
- 11 статических членов public, унаследованных от QObject
Дополнительные унаследованные члены
- 1 свойство, унаследованное от QObject
- 2 сигнала, унаследованные от QObject
- 9 защищённых функций, унаследованных от QObject
Подробное описание
Класс QSound предоставляет метод для воспроизведения файлов звука формата .wav.
Qt предоставляет наиболее часто используемые операции с аудио в приложениях GUI: асинхронное воспроизведение файла звука. Это проще всего сделать с помощью статической функции 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 = Q_NULLPTR)
Создаёт объект QSound из файла, указанного с помощью filename, и с заданным parent.
См. также play().
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().
[slot] void QSound::play()
Это перегруженная функция.
Начинает воспроизведение звука, указанного этим объектом QSound.
Функция возвращается немедленно. В зависимости от возможностей аудио платформы, другие звуки могут останавливаться или смешиваться с новым звуком. Звук можно воспроизводить снова в любое время, возможно, смешивая или заменяя предыдущие воспроизведения звука.
См. также fileName().
void QSound::setLoops(int number)
Устанавливает звуковой объект, чтобы повторять заданное number раз при воспроизведении.
Обратите внимание, что передача значения QSound::Infinite заставит звук повторяться бесконечно.
См. также loops().
[slot] void QSound::stop()
Останавливает воспроизведение звука.
См. также play().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qsound.html