Spec-Zone.ru › Qt 5.11

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

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

Подробнее…
Заголовок: #include <QAudio>
qmake: QT += multimedia

Типы

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

Функции

qreal преобразоватьГромкость(qreal громкость, QAudio::VolumeScale из, QAudio::VolumeScale в)

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

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

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

перечисление QAudio::Ошибка

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

перечисление QAudio::Режим

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

перечисление QAudio::Роль

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

Постоянная Значение Описание
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 Звуки игры
QAudio::CustomRole 10 Роль задана с помощью QMediaPlayer::customAudioRole()

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

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

enum QAudio::State

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

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, QAudio::VolumeScale from, QAudio::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/archives/qt-5.11/qaudio.html

Spec-Zone.ru

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