Spec-Zone.ru › Qt 5.9

Пространство имён QAudio

Пространство имён QAudio содержит перечисления, используемые классами аудио.

Подробнее...

Заголовок: #include <QAudio>
qmake: QT += multimedia

Типы

Перечисление Error { НетОшибки, ОшибкаОткрытия, ОшибкаВводаВывода, ОшибкаНедополученияДанных, КритическаяОшибка }
Перечисление Mode { ВыводАудио, ВводАудио }
Перечисление Role { НеизвестнаяРоль, РольМузыка, РольВидео, РольГолосовойКоммуникации, ..., РольИгра }
Перечисление State { АктивноеСостояние, ПриостановленноеСостояние, ОстановленноеСостояние, СостояниеОжидания }
Перечисление VolumeScale { ЛинейнаяШкалаГромкости, КубическаяШкалаГромкости, ЛогарифмическаяШкалаГромкости, ШкалаГромкостиДецибелы }

Функции

qreal convertVolume(qreal volume, VolumeScale from, VolumeScale to)

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

Пространство имён QAudio содержит перечисления, используемые классами аудио.

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

enum QAudio::Error

Константа Значение Описание
QAudio::NoError 0 Ошибки не произошли
QAudio::OpenError 1 Произошла ошибка при открытии аудиоустройства
QAudio::IOError 2 Произошла ошибка во время чтения/записи аудиоустройства
QAudio::UnderrunError 3 Данные аудио не поступают на аудиоустройство с достаточной скоростью
QAudio::FatalError 4 Произошла невосстанавливаемая ошибка, аудиоустройство в данный момент не может быть использовано.

enum QAudio::Mode

Константа Значение Описание
QAudio::AudioOutput 1 аудиоустройство вывода
QAudio::AudioInput 0 аудиоустройство ввода

enum QAudio::Role

Это перечисление описывает роль аудиопотока.

Константа Значение Описание
QAudio::UnknownRole 0 Роль неизвестна или не определена
QAudio::MusicRole 1 Музыка
QAudio::VideoRole 2 Саундтрек из фильма или видео
QAudio::VoiceCommunicationRole 3 Голосовая коммуникация, например телефонный разговор
QAudio::AlarmRole 4 Сигнализация
QAudio::NotificationRole 5 Уведомление, например, входящее электронное письмо или запрос чата
QAudio::RingtoneRole 6 Мелодия
QAudio::AccessibilityRole 7 Для обеспечения доступности, например, с помощью программы чтения с экрана
QAudio::SonificationRole 8 Звуковая визуализация, например, звуки пользовательского интерфейса
QAudio::GameRole 9 Аудио для игр

Это перечисление было введено или изменено в Qt 5.6.

См. также QMediaPlayer::setAudioRole().

enum QAudio::State

Константа Значение Описание
QAudio::ActiveState 0 Данные аудио обрабатываются, это состояние устанавливается после вызова start() и пока данные аудио доступны для обработки.
QAudio::SuspendedState 1 Аудиоустройство приостановлено, это состояние устанавливается только после вызова suspend().
QAudio::StoppedState 2 Аудиоустройство закрыто и не обрабатывает данные аудио
QAudio::IdleState 3 У QIODevice, переданного в качестве параметра, нет данных, и буфер аудиосистемы пуст, это состояние устанавливается после вызова start() и пока данные аудио недоступны для обработки.

enum QAudio::VolumeScale

Это перечисление определяет различные шкалы громкости аудио.

Константа Значение Описание
QAudio::LinearVolumeScale 0 Линейная шкала. 0.0 (0%) — тишина, а 1.0 (100%) — полная громкость. Все классы Qt Multimedia, имеющие громкость аудио, используют линейную шкалу.
QAudio::CubicVolumeScale 1 Кубическая шкала. 0.0 (0%) — тишина, а 1.0 (100%) — полная громкость.
QAudio::LogarithmicVolumeScale 2 Логарифмическая шкала. 0.0 (0%) — тишина, а 1.0 (100%) — полная громкость. Управление громкостью в пользовательском интерфейсе обычно должно использовать логарифмическую шкалу.
QAudio::DecibelVolumeScale 3 Логарифмическая шкала децибелов (дБ, амплитуда). -200 — тишина, а 0 — полная громкость.

Это перечисление было введено или изменено в Qt 5.8.

См. также QAudio::convertVolume().

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

qreal QAudio::convertVolume(qreal volume, VolumeScale from, VolumeScale to)

Преобразует значение громкости volume со шкалы from на шкалу to и возвращает результат.

В зависимости от контекста для представления громкости аудио используются различные шкалы. Все классы Qt Multimedia, имеющие громкость аудио, используют линейную шкалу. Причина в том, что громкость динамика регулируется путем модуляции напряжения по линейной шкале. С другой стороны, человеческое ухо воспринимает громкость логарифмически. Поэтому для управления громкостью в большинстве приложений подходит логарифмическая шкала. Шкала децибел по своей природе является логарифмической и обычно используется для определения уровня звука; она обычно используется для управления громкостью в пользовательском интерфейсе профессиональных аудиоприложений. Кубическая шкала представляет собой вычислительно недорогую аппроксимацию логарифмической шкалы; она обеспечивает больше контроля над низкими уровнями громкости.

Следующий пример показывает, как преобразовать значение громкости из элемента управления ползунком перед передачей его в QMediaPlayer. В результате увеличение воспринятой громкости будет одинаковым при увеличении ползунка громкости с 20 до 30 и с 50 до 60:

void applyVolume(int volumeSliderValue)
{
    // volumeSliderValue is in the range [0..100]

    qreal linearVolume = QAudio::convertVolume(volumeSliderValue / qreal(100.0),
                                               QAudio::LogarithmicVolumeScale,
                                               QAudio::LinearVolumeScale);

    player.setVolume(qRound(linearVolume * 100));
}

Эта функция была введена в Qt 5.8.

См. также VolumeScale, QMediaPlayer::setVolume(), QAudioOutput::setVolume(), QAudioInput::setVolume(), QSoundEffect::setVolume() и QMediaRecorder::setVolume().

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

Spec-Zone.ru

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