Поделиться через


Новые возможности api core Audio в Windows 7

В Windows Vista появились ОСНОВНЫЕ API аудио, которые предоставили новый набор компонентов аудио в режиме пользователя, которые клиентское приложение может использовать для отрисовки или записи аудиопотоков с улучшенными возможностями звука. Общие сведения об этом наборе API см. в разделе О Windows Core Audio API.

В Windows 7 улучшены основные API аудио. В следующей таблице приведены новые функции и улучшения api core Audio:

Особенность Описание
Универсальные улучшения В Windows 7 улучшены следующие функции:
  • В Windows 7 в режиме общего доступа потоки выполняются в режиме низкой задержки. Аудиосистема работает в режиме извлечения с заметным снижением задержки. Это очень полезно для приложений связи, требующих низкой задержки аудиопотока для ускорения потоковой передачи.
  • Windows 7 обеспечивает более эффективное обнаружение ролей устройств при добавлении нового устройства в систему. Полную информацию см. в работа с ролями устройств.
  • В Windows 7 вы можете прослушивать музыку с переносимого проигрывателя мультимедиа через динамики компьютера. Эту функцию монитора отслеживания можно использовать, подключив переносимый проигрыватель мультимедиа к компьютеру с аналоговым звуковым кабелем. В прошлом некоторые изготовители оборудования предоставили эту функцию в звуковом драйвере с помощью аппаратной обратной связи. В Windows 7 эта функция добавлена в операционную систему. Так как это находится в системе, а не драйвер, вы можете использовать это для любого другого устройства, подключенного к системе, например USB-гарнитуры.
  • Улучшены возможности аудио HDMI в Windows 7, что обеспечивает поддержку формата с высокой битрейтом. Благодаря этому улучшению можно поддерживать многоканальные звуковые и сжатые аудиоформаты через соединитель HDMI для приемника звука.
  • В Windows Vista проигрыватель Windows Media воспроизводит музыку только через звуковое устройство по умолчанию, которое не может быть изменено пользователем. Чтобы проигрыватель Windows Media воспроизводил звук на определенном устройстве, нужно изменить устройство по умолчанию на панели управления Звуки. В Windows 7 проигрыватель Windows Media предоставляет API-интерфейсы, позволяющие приложению отображать любое устройство, выбранное пользователем, а не только устройством по умолчанию.
  • В Windows Vista, если компьютер, воспроизводящий аудио, переключается в режим экономии энергии, он блокируется. Для того чтобы пользователь мог прервать воспроизведение, ему необходимо войти в систему и нажать клавишу остановки для остановки воспроизведения. В Windows 7, если компьютер заблокирован, вы по-прежнему можете управлять воспроизведением с помощью элемента управления HID на клавиатуре.
  • Windows 7 снижает потребление энергии для любого приложения, использующего DirectSound и DirectShow для отрисовки мультимедиа. Кроме того, служба планировщика мультимедийных классов обеспечивает устойчивый к сбоям звук и использует меньше энергии во время создания аудиообразцов.
Устройство связи (новое) В этом выпуске в контрольную панель Звуки добавлен новый тип устройства: Коммуникации устройство. Это устройство используется в основном для связи, то есть для размещения или приема телефонных звонков на компьютере. Приложение связи может использовать компоненты Core Audio для получения ссылки на конечную точку устройства связи по умолчанию и отрисовки аудиопотоков для общения. Операционная система считает, что поток, открытый на устройстве связи, является потоком связи. Операции WASAPI в потоке коммуникации похожи на любой другой аудиопоток. Дополнительные сведения см. в разделе Работа с ролями устройств.
Потоковая аттенуация или подавление звука (новое) Автоматическое понижение уровня звука или ослабление потока — это новая функция в Windows 7, предназначенная для приложений VoIP и унифицированных коммуникаций. По умолчанию операционная система уменьшает интенсивность аудиопотока при получении потока связи, например телефонного звонка, на устройстве связи через компьютер. Параметры громкости задаются пользователем на панели управления Sound. Новые API были добавлены в пакет Windows SDK, которые позволяют приложениям заменить поведение уменьшения громкости по умолчанию. Дополнительная информация о внедрении пользовательской функции снижения звука см. в разделе Предоставление пользовательского управления звуком.
Маршрутизация потоков (новая) В Windows 7 API Core Audio были улучшены для бесперебойной передачи аудиопотока с существующего устройства на новую аудио конечную точку по умолчанию. Высокоуровневые наборы API аудио, использующие ОСНОВНЫЕ API аудио, такие как Media Foundation, DirectSound и API WAVE, реализуют функцию маршрутизации потоков. Приложения мультимедиа, использующие эти наборы API для воспроизведения или записи потока, используют реализацию по умолчанию и не должны изменять приложение. Однако если ваше приложение мультимедиа использует api Core Audio напрямую, приложение должно предоставить реализацию маршрутизации потоков. Для этого приложение должно обрабатывать новые события, которые были добавлены, уведомляющие клиента WASAPI о подключении или удалении устройства по умолчанию. Дополнительные сведения об этой функции см. в разделе "Маршрутизация потоков".
Защищенный звук в режиме пользователя (PUMA) (улучшено) PUMA обновлена для Windows 7, чтобы предоставить следующие возможности:
  • Задание битов системы управления последовательным копированием (SCMS) на конечных точках S/PDIF и битах защиты цифрового содержимого с высокой пропускной способностью (HDCP) на конечных точках High-Definition мультимедийных интерфейсов (HDMI).
  • Включение защиты SCMS и HDMI вне защищённой среды (PE).
Дополнительные сведения об улучшениях см. в разделе Аудиосистемы в защищённом режиме пользователя (PUMA).
Структура WAVEFORMATEXTENSIBLE была расширена до структуры WAVEFORMATEXTENSIBLE_IEC61937 (новая версия) В Windows 7 добавлена новая структура для поддержки передач IEC 61937. WAVEFORMATEXTENSIBLE_IEC61937 расширяет структуру WAVEFORMATEXTENSIBLE для хранения двух наборов характеристик аудиопотока: закодированного аудиоформата перед передачей и характеристиками аудиопотока после его декодирования. Новая структура явно указывает эффективное количество каналов, размер выборки и скорость данных формата, отличного от PCM. С помощью этих сведений приложение может определить уровень качества потока, отличного от PCM, после его распаковки и воспроизведения. Дополнительные сведения см. в разделе Представления форматов для передачи IEC 61937.
IAudioClient::Initialize (улучшено) Метод IAudioClient::Initialize был улучшен, чтобы указать определенные ошибки, которые могут возникнуть при открытии аудиопотока. Новые коды ошибок:
  • AUDCLNT_E_BUFFER_SIZE_NOT_ALIGNED
  • AUDCLNT_E_BUFFER_SIZE_ERROR
  • AUDCLNT_E_INVALID_DEVICE_PERIOD
Дополнительные сведения об этих ошибках см. в разделе "Возвращаемое значение" в разделе IAudioClient::Initialize.
IAudioCaptureClient::GetBuffer и IAudioRenderClient::GetBuffer (улучшено) методы IAudioCaptureClient::GetBuffer и IAudioRenderClient::GetBuffer были улучшены, чтобы вернуть код ошибки AUDCLNT_E_BUFFER_ERROR, указывающий, что буфер конечной точки в монопольном режиме не был получен. Дополнительные сведения см. в разделе "Примечания" в IAudioCaptureClient::GetBuffer и IAudioRenderClient::GetBuffer.
Возможность обнаружения Джека (улучшено) Новый интерфейс в Windows 7 IKsJackDescription2расширяет IKsJackDescription. Используя новый интерфейс, стек звука или приложение может получить дополнительные сведения о джеке. Это включает возможность обнаружения разъема и возможность динамических изменений формата устройства.
Примеры Windows (новые) Новые примеры были добавлены в пакет SDK для Windows, демонстрирующий использование ОСНОВНЫХ API аудио. Дополнительные сведения см. в примерах пакета SDK , использующих основные API аудио.

 

Основные новые интерфейсы

Следующие интерфейсы являются новыми для Windows 7:

О звуковых API Windows Core