Новые возможности api core Audio в Windows 7
В Windows Vista появились ОСНОВНЫЕ API аудио, которые предоставили новый набор компонентов аудио в режиме пользователя, которые клиентское приложение может использовать для отрисовки или записи аудиопотоков с улучшенными возможностями звука. Общие сведения об этом наборе API см. в разделе "Сведения об API звука Windows Core".
В Windows 7 улучшены основные API аудио. В следующей таблице приведены новые функции и улучшения api core Audio:
Возможность | Description |
---|---|
Универсальные улучшения | В Windows 7 улучшены следующие функции:
|
Устройство связи (новое) | В этом выпуске в панель управления "Звуки" добавлен новый тип устройства: устройство связи. Это устройство используется в основном для связи, то есть для размещения или приема телефонных звонков на компьютере. Приложение связи может использовать компоненты 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, чтобы предоставить следующие возможности:
|
Структура WAVEFORMATEXTENSIBLE была расширена до структуры WAVEFORMATEXTENSIBLE_IEC61937 (New) | В Windows 7 добавлена новая структура для поддержки передач IEC 61937. WAVEFORMATEXTENSIBLE_IEC61937 расширяет структуру WAVEFORMATEXTENSIBLE для хранения двух наборов характеристик аудиопотока: закодированного аудиоформата до передачи и характеристик аудиопотока после его декодирования. Новая структура явно указывает эффективное количество каналов, размер выборки и скорость данных формата, отличного от PCM. С помощью этих сведений приложение может определить уровень качества потока, отличного от PCM, после его распаковки и воспроизведения. Дополнительные сведения см. в разделе "Форматы представления" для передачи IEC 61937. |
IAudioClient::Initialize (улучшено) | Метод 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:
- IAudioClock2
- IAudioClockAdjustment
- IAudioEndpointVolumeEx
- IAudioSessionManager2
- IAudioSessionControl2
- IAudioSessionEnumerator
- IAudioSessionNotification
- IAudioVolumeDuckNotification
- IKsJackDescription2
- IKsJackSinkInformation
См. также