Spec-Zone.ru › Qt 5.9

Класс QAudioDecoder

Класс QAudioDecoder позволяет декодировать аудио. Подробнее...

Заголовок: #include <QAudioDecoder>
qmake: QT += multimedia
Наследует: QMediaObject

Этот класс находится в разработке и может быть изменён.

  • Список всех членов, включая унаследованные

Открытые типы

перечисление Ошибка { НетОшибки, ОшибкаРесурса, ОшибкаФормата, ОшибкаДоступа, ОшибкаОтсутствияСервиса }
перечисление Состояние { СостояниеОстановки, СостояниеДекодирования }

Свойства

  • bufferAvailable : const bool
  • ошибка : const QString
  • имяИсходногоФайла : QString
  • состояние : const Состояние
  • 1 свойство унаследовано от QMediaObject
  • 1 свойство унаследовано от QObject

Открытые функции

QAudioDecoder(QObject *parent = Q_NULLPTR)
~QAudioDecoder()
QAudioFormat audioFormat() const
bool bufferAvailable() const
qint64 продолжительность() const
Ошибка ошибка() const
QString описаниеОшибки() const
qint64 позиция() const
QAudioBuffer читать() const
void установитьАудиоФормат(const QAudioFormat &format)
void установитьИсходноеУстройство(QIODevice *device)
void установитьИсходноеИмяФайла(const QString &fileName)
QIODevice * исходноеУстройство() const
QString имяИсходногоФайла() const
Состояние состояние() const
  • 10 открытых функций унаследовано от QMediaObject
  • 32 открытых функции унаследовано от QObject

Открытые слоты

void запуск()
void остановка()
  • 1 открытый слот унаследован от QObject

Сигналы

void изменениеДоступностиБуфера(bool available)
void буферГотов()
void изменениеПродолжительности(qint64 duration)
void ошибка(QAudioDecoder::Ошибка error)
void завершено()
void изменениеФормата(const QAudioFormat &format)
void изменениеПозиции(qint64 position)
void изменениеИсточника()
void изменениеСостояния(QAudioDecoder::Состояние state)
  • 6 сигналов унаследовано от QMediaObject
  • 2 сигнала унаследовано от QObject

Статические открытые члены

QMultimedia::SupportEstimate поддерживает(const QString &mimeType, const QStringList &codecs = QStringList())
  • 11 статических открытых членов унаследовано от QObject

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

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

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

Класс QAudioDecoder позволяет декодировать аудио.

Класс QAudioDecoder — это класс высокого уровня для декодирования локальных аудиомедиа-файлов. Он похож на класс QMediaPlayer, за исключением того, что аудио предоставляется через этот API, а не напрямую передаётся в аудиооборудование, и не поддерживаются плейлисты, сетевое и потоковое воспроизведение.

См. также QAudioBuffer.

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

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

Определяет условие ошибки медиаплеера.

Константа Значение Описание
QAudioDecoder::NoError 0 Ошибка не произошла.
QAudioDecoder::ResourceError 1 Ресурс медиа не удалось разрешить.
QAudioDecoder::FormatError 2 Формат ресурса медиа не поддерживается.
QAudioDecoder::AccessDeniedError 3 Нет соответствующих разрешений для воспроизведения ресурса медиа.
QAudioDecoder::ServiceMissingError 4 Не найден допустимый сервис воспроизведения, воспроизведение не может быть продолжено.

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

Определяет текущее состояние медиаплеера.

Константа Значение Описание
QAudioDecoder::StoppedState 0 Декодер не декодирует. Декодирование начнётся с начала медиа.
QAudioDecoder::DecodingState 1 Аудиоплеер в настоящее время декодирует медиа.

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

bufferAvailable : const bool

Это свойство содержит информацию о том, доступен ли декодированный аудио буфер.

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

bool bufferAvailable() const

Сигнал оповещения:

void bufferAvailableChanged(bool available)

error : const QString

Это свойство содержит строку, описывающую последнее состояние ошибки.

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

QString errorString() const

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

sourceFilename : QString

Это свойство содержит активное имя файла, декодируемого объектом декодера.

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

QString sourceFilename() const
void setSourceFilename(const QString &fileName)

Сигнал оповещения:

void sourceChanged()

state : const State

Это свойство содержит состояние воспроизведения аудио декодера.

По умолчанию это свойство равно QAudioDecoder::Stopped

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

State state() const

Сигнал оповещения:

void stateChanged(QAudioDecoder::State state)

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

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

QAudioDecoder::QAudioDecoder(QObject *parent = Q_NULLPTR)

Создает экземпляр QAudioDecoder, родительским элементом которого является parent.

QAudioDecoder::~QAudioDecoder()

Уничтожает объект аудио декодера.

QAudioFormat QAudioDecoder::audioFormat() const

Возвращает текущий формат аудио потока.

Любые возвращаемые буферы должны иметь этот формат.

См. также setAudioFormat() и formatChanged().

bool QAudioDecoder::bufferAvailable() const

Возвращает true, если буфер доступен для чтения, и false в противном случае. Если буфера нет, вызов функции read() вернёт недопустимый буфер.

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

void QAudioDecoder::bufferAvailableChanged(bool available)

Сигнализирует о доступности нового буфера (если available равно true).

Если available равно false, буферы недоступны.

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

См. также bufferAvailable() и bufferReady().

void QAudioDecoder::bufferReady()

Сигнализирует о доступности нового декодированного аудио буфера для чтения.

См. также read() и bufferAvailable().

qint64 QAudioDecoder::duration() const

Возвращает общую продолжительность (в миллисекундах) аудио потока или -1, если она не доступна.

void QAudioDecoder::durationChanged(qint64 duration)

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

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

Error QAudioDecoder::error() const

Возвращает текущее состояние ошибки.

void QAudioDecoder::error(QAudioDecoder::Error error)

Сигнализирует о возникновении состояния ошибки error.

Примечание: Сигнал error перегружен в этом классе. Для подключения к этому сигналу с использованием синтаксиса указателя на функцию, Qt предоставляет удобный помощник для получения указателя на функцию, как показано в этом примере:

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

void QAudioDecoder::finished()

Сигнализирует о том, что декодирование завершено успешно. В случае неудачи декодирования вместо этого генерируется сигнал error.

См. также start(), stop() и error().

void QAudioDecoder::formatChanged(const QAudioFormat &format)

Сигнализирует о том, что текущий аудиоформат декодера изменился на format.

См. также audioFormat() и setAudioFormat().

QMultimedia::SupportEstimate QAudioDecoder::hasSupport(const QString &mimeType, const QStringList &codecs = QStringList())

Возвращает уровень поддержки аудио декодером для mimeType и набора codecs.

qint64 QAudioDecoder::position() const

Возвращает позицию (в миллисекундах) последнего прочитанного буфера из декодера или -1, если буферы не читались.

void QAudioDecoder::positionChanged(qint64 position)

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

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

QAudioBuffer QAudioDecoder::read() const

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

Вы должны либо реагировать на сигнал bufferReady(), либо проверять функцию bufferAvailable() перед вызовом read(), чтобы убедиться, что вы получаете полезные данные.

void QAudioDecoder::setAudioFormat(const QAudioFormat &format)

Устанавливает желаемый аудиоформат для декодированных образцов в format.

Это свойство может быть установлено только при остановленном декодере. Установка свойства в других случаях будет проигнорирована.

Если декодер не поддерживает этот формат, error() будет установлено в FormatError.

Если вы не укажете формат, будет использован формат декодированного звука. В противном случае будет применено некоторое преобразование формата.

Если вы хотите сбросить декодированный формат на исходный формат аудио файла, вы можете указать недопустимый формат.

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

void QAudioDecoder::setSourceDevice(QIODevice *device)

Устанавливает текущий аудио QIODevice в device.

При установке этого свойства любое текущее декодирование останавливается, а любые аудио буферы отбрасываются.

Вы можете указать либо имя файла источника, либо QIODevice источника. Установка одного из них сбросит другое.

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

void QAudioDecoder::setSourceFilename(const QString &fileName)

Устанавливает текущее имя аудио файла в fileName.

При установке этого свойства любое текущее декодирование останавливается, а любые аудио буферы отбрасываются.

Вы можете указать либо имя файла источника, либо QIODevice источника. Установка одного из них сбросит другое.

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

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

[signal] void QAudioDecoder::sourceChanged()

Сигнализирует о том, что текущий источник декодера изменился.

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

См. также sourceFilename() и sourceDevice().

QIODevice *QAudioDecoder::sourceDevice() const

Возвращает текущий источник QIODevice, если он был задан. Если был вызван setSourceFilename(), это будет 0.

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

QString QAudioDecoder::sourceFilename() const

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

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

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

[slot] void QAudioDecoder::start()

Начинает декодирование аудиоресурса.

По мере декодирования данных, сигнал bufferReady() будет выпущен, когда будет декодировано достаточно данных. Вызов read() затем вернёт буфер аудио без блокировки.

Если вы вызываете read() до готовности буфера, недействительный буфер будет возвращён, опять же без блокировки.

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

[signal] void QAudioDecoder::stateChanged(QAudioDecoder::State state)

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

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

[slot] void QAudioDecoder::stop()

Остановить декодирование аудио. Вызов start() снова возобновит декодирование с начала.

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

Spec-Zone.ru

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