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


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

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

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

Возможность Description
Универсальные улучшения В Windows 7 улучшены следующие функции:
  • Потоки в режиме общего доступа Windows 7 выполняются в режиме низкой задержки. Звуковой модуль работает в режиме извлечения с значительной задержкой. Это очень полезно для приложений связи, требующих низкой задержки аудиопотока для ускорения потоковой передачи.
  • Windows 7 обеспечивает более эффективное обнаружение ролей устройств при добавлении нового устройства в систему. Дополнительные сведения см. в статье "Работа с ролями устройства".
  • В Windows 7 вы можете прослушивать музыку с переносимого проигрывателя мультимедиа через динамики компьютера. Эту функцию монитора отслеживания можно использовать, подключив переносимый проигрыватель мультимедиа к компьютеру с аналоговым звуковым кабелем. В прошлом некоторые изготовители оборудования предоставили эту функцию в звуковом драйвере с помощью аппаратной обратной связи. В Windows 7 эта функция добавлена в операционную систему. Так как это находится в системе, а не драйвер, вы можете использовать это для любого другого устройства, подключенного к системе, например USB-гарнитуры.
  • Звук HDMI улучшен в Windows 7, который обеспечивает поддержку формата высокой скорости. Благодаря этому улучшению можно поддерживать многоканальные звуковые и сжатые аудиоформаты через соединитель HDMI для приемника звука.
  • В Windows Vista Медиаплеер Windows воспроизводить музыку только через звуковое устройство по умолчанию, которое не может быть изменено пользователем. Чтобы Медиаплеер Windows отображать звук на определенном устройстве, устройство по умолчанию должно быть изменено на панели управления "Звуки". В Windows 7 Медиаплеер Windows предоставляет API- интерфейсы, позволяющие приложению отображать любое устройство, выбранное пользователем, а не только устройством по умолчанию.
  • В Windows Vista, если компьютер, который воспроизводит звуковые коммутаторы в режиме экономии питания, компьютер заблокирован, и если пользователь хочет прервать воспроизведение, пользователь должен войти и нажать клавишу остановки, чтобы остановить воспроизведение. В Windows 7, если компьютер заблокирован, вы по-прежнему можете управлять воспроизведением с помощью элемента управления HID на клавиатуре.
  • Windows 7 снижает потребление энергии для любого приложения, использующего DirectSound и DirectShow для отрисовки мультимедиа. Кроме того, служба планировщика мультимедийных классов обеспечивает отказоустойчивый звук и использует меньше энергии во время создания звуковых примеров.
Устройство связи (новое) В этом выпуске в панель управления "Звуки" добавлен новый тип устройства: устройство связи. Это устройство используется в основном для связи, то есть для размещения или приема телефонных звонков на компьютере. Приложение связи может использовать компоненты Core Audio для получения ссылки на конечную точку устройства связи по умолчанию и отрисовки аудиопотоков для общения. Операционная система считает, что поток, открытый на устройстве связи, является потоком связи. Операции WASAPI в потоке коммуникации похожи на любой другой аудиопоток. Дополнительные сведения см. в статье "Работа с ролями устройства".
Потоковая аттенуация или утка звука (новое) Автоматическая утка или управление потоком — это новая функция в Windows 7, предназначенная для приложений VoIP и Unified Communication. По умолчанию операционная система уменьшает интенсивность аудиопотока при получении потока связи, например телефонного звонка, на устройстве связи через компьютер. Параметры тома задаются пользователем на панели управления "Звук ". Новые API были добавлены в пакет SDK для Windows, который позволяет приложениям заменить поведение утих по умолчанию. Дополнительные сведения о реализации пользовательской функции утки см. в разделе "Предоставление пользовательского поведения уток".
Маршрутизация потоков (новая) В Windows 7 api core Audio API были улучшены для передачи аудиопотока с существующего устройства на новую конечную точку аудио по умолчанию. Высокоуровневые наборы API аудио, использующие ОСНОВНЫЕ API аудио, такие как Media Foundation, DirectSound и API WAVE, реализуют функцию маршрутизации потоков. Приложения мультимедиа, использующие эти наборы API для воспроизведения или записи потока, используют реализацию по умолчанию и не должны изменять приложение. Однако если ваше приложение мультимедиа использует api Core Audio напрямую, приложение должно предоставить реализацию маршрутизации потоков. Для этого приложение должно обрабатывать новые события, которые были добавлены, уведомляющие клиента WASAPI о подключении или удалении устройства по умолчанию. Дополнительные сведения об этой функции см. в разделе "Маршрутизация потоков".
Защищенный звук в режиме пользователя (PUMA) (улучшено) PUMA обновлена для Windows 7, чтобы предоставить следующие возможности:
  • Установка битов системы управления последовательным копированием (SCMS) на конечных точках S/PDIF и битах защиты цифрового содержимого с высокой пропускной способностью (HDCP) на конечных точках мультимедиа высокого определения (HDMI).
  • Включение элементов управления защитой SCMS и HDMI за пределами защищенной среды (PE).
Дополнительные сведения об улучшениях см. в разделе "Защищенный режим пользователя" (PUMA).
Структура WAVEFORMATEXTENSIBLE была расширена до структуры WAVEFORMATEXTENSIBLE_IEC61937 (New) В 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