Windows audio session что это

Hi-Fi и High-End техника или энциклопедия звука и видео

ЗВУКОМАНИЯ

Hi-Fi и High-End техника или энциклопедия звука и видео

Что случилось с WASAPI?

Что случилось с WASAPI?

Windows представила уже давно новую серию API-интерфейсов для звука под названием CoreAudio, который включает в себя WASAPI (Windows Audio Session API), новый API для захвата и рендеринга аудио. Конечно, всегда были способы работы со звуком в предыдущих версиях Windows. И они все еще доступны в ХР, Vista, 7 и т.д., поэтому нет необходимости двигаться, если вы не хотите.

Что случилось с WASAPI?

Вот основные варианты…

WinMM — это API-интерфейсы, которые существуют уже давно (например, функции waveOut … и waveIn …). Основным их ограничением является низкая задержка (трудно пропустить намного меньше 50 мс без отсева).

DirectSound — имеет свое применение, особенно для разработки игр, но, похоже, Microsoft также постепенно отказывается и от этого. Потоковое ядро — это то, что большинство профессиональных аудио приложений используют для прямой связи с драйвером WDM с минимальной задержкой.

ASIO — это модель аудиоинтерфейса Steinberg, используемая практически всеми профессиональными аудио приложениями, и, как правило, это лучший способ работать с очень малыми задержками. Производители звуковых карт Pro audio предоставляют драйверы ASIO.

Единственное его слабое место состоит в том, что вы можете использовать только один драйвер ASIO за раз, что потенциально может вызвать проблемы в будущем в виде все большего и большего количества студийного оборудования, такого как микрофоны, звуковые модули и мониторы (именно так называются динамики в мире профессионалов). аудио) поставляются с интерфейсами USB, а не со старой моделью подключения всех входов и выходов к одному аудиоинтерфейсу.

Во-первых, в Vista, ХР и далее появился совершенно новый механизм микширования звука, поэтому WASAPI дает вам возможность подключиться непосредственно к нему, а не проходить через уровень абстракции. Причины нового аудио движка:

Концепция конечных точек, а не аудиоустройств — для пользователей Windows проще отправлять звуки в «наушники» или записывать звук с «микрофона», а не требовать от них технической информации о звуковых картах, установленных в их системе

Группировка аудио потоков ВАСАПИ. Вы можете сгруппировать все аудиопотоки из одного приложения и отдельно контролировать их громкость. Другими словами, регулятор громкости для каждого приложения. Это немного сложнее, чем может показаться на первый взгляд, потому что некоторые приложения, такие как IE, содержат все виды процессов и плагинов, которые все воспроизводят звук по-своему. Во-вторых, предполагалось поддерживать приложения для профессионального аудио, которые должны быть как можно ближе к металлу, и сводить задержку к минимуму.

АСИО

Изучаем WASAPI

foobar2000 Wasapi

Беда в том, что WASAPI не предлагает ничего такого, чего нет в WDM Kernel Streaming. А поскольку Windows XP,7 не выглядит так, как будто она очень долго не будет использоваться, написание нового приложения на основе WASAPI не имеет особого смысла.

Но как насчет чуть менее профессиональных аудио приложений?

Что делать, если кто-то пишет новое приложение, которое хочет каким-то образом работать с отдельными аудиосэмплами и способно работать только с Vista и выше. Могут ли они использовать WASAPI? Все зависит от того, сколько работы они готовы сделать …

Ustars-ЦАП

Режимы рендеринга

WASAPI предоставляет две опции для рендеринга аудио — общий режим и эксклюзивный режим. В эксклюзивном режиме вы являетесь единственным приложением, с рассматриваемой конечной точкой звука — все другие приложения не могут создавать шум.

Это обеспечивает максимально возможную производительность, как и выбор всех профессиональных аудио приложений, таких как Cubase, SONAR, REAPER, Pro Tools и т. Д. Но, как я уже сказал, они не используют WASAPI. Они используют ASIO или Kernel Streaming.

Что есть в общем режиме. Это позволяет вам предоставлять доступ к конечной точке другим приложениям. Другими словами, вы все равно можете слышать звуки Windows и т. д. Конечно, когда вы разделяете конечную точку, одно приложение может захотеть воспроизводить звук с 24-битным стерео 48 кГц, а другое — с 16-битным моно 22 кГц. С WinMM API это не проблема — встроенные конвертеры преобразуют каждый аудиопоток в формат механизма микширования Windows.

Ustars ЦАПы+ 11.28 РЕ

Недостающая особенность WASAPI не предлагает преобразование частоты дискретизации. Другими словами, чтобы использовать общий режим, вы должны либо надеяться, что звуковой движок машины Vista настроен на точную частоту дискретизации вашего аудио, либо вы должны написать свой собственный преобразователь частоты дискретизации. И преобразование частоты дискретизации отнюдь не тривиально. Особенно, если ваши критерии таковы, что он не должен ухудшать качество звука и должен быть максимально быстрым.

ЦАП 11.38 + ТДС 5

С какой стати Microsoft не могла дать нам SRC, зачем нужен WASAPI?

Это повлияет на задержку (или, если быть более точным, нагрузка на процессор увеличится, что затруднит достижение меньших задержек). Но это считается само собой разумеющимся с общим режимом. Мы знаем, что когда мы совместно используем конечную точку, тогда SRC должен произойти где-то. Microsoft уже выполнила всё для создания настраиваемого и эффективного преобразователя частоты дискретизации.

Будущее WASAPI

WASAPI придумали, чтобы остаться, но если он будет использоваться более широко, его нужно сделать более удобным для разработчиков. Я предполагаю, что вероятность того, что профессиональные аудио-компании будут смотреть на это больше, когда мы все перейдем на 64-битную Windows то, но она действительно сможет набрать обороты, если ее будет проще использовать в совместном режиме. Вот мои два предложения …

ЦАП недорого

Кабель Supra Dual RCA + ЦАП 11.38

скачать WASAPI + музыка во флак можно ЗДЕСЬ
Откройте документ Word, наведите на любую ссылку и нажмите CTRL + левая кнопка мыши — ссылка откроется в браузере, переходите и качайте, все файлы проверены — вирусов нет!
Я надеюсь, что эта статья «WASAPI» немного помогла. Пожалуйста, оставляйте комментарии ниже, чтобы я мог вернуться к вам.
Не бойтесь меня и добавляйтесь в ВК, Ютуб ОК
Если вы хотите узнать больше об этой теме, и быть в курсе, пожалуйста, подпишитесь на наш сайт.
Желаю удачи в поиске своего звука! На нашем сайте Звукомания есть полезная информация по звуку и видео, которая пригодится для каждого, причем на каждый день, мы обновляем сайт «Звукомания» постоянно и стараемся искать и писать только отличную, проверенную и нужную информацию.
Вам нужен хороший фонокорректор, новый ламповый усилитель или отличный ЦАП, плеер, наушники, АС или другую звуковую технику, (усилитель, ресивер и т.д.) то пишите в ВК, помогу выгодно и с гарантией приобрести хорошую звуковую технику…
Если вы являетесь производителем, рекламодателем, импортером, дистрибьютором или агентом в области качественного воспроизведения звука и хотели бы связаться с нами, пожалуйста, пишите в ВК или ОК , ФК или ИНСТА или по эл. почте: anl555@bk.ru

Источник

События сеанса звука

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

Клиентское приложение может зарегистрироваться для получения уведомлений о следующих типах событий сеанса:

В следующем примере кода показана возможная реализация интерфейса иаудиосессионевентс :

Некоторые клиенты могут не заинтересовать наблюдение за всеми типами событий сеанса. В предыдущем примере кода несколько методов уведомления в классе Каудиосессионевентс ничего не делают. Например, метод ончаннелволумечанжед не выполняет никаких действий, кроме возврата кода состояния S _ OK. Это приложение не отслеживает тома каналов, так как не изменяет тома канала (путем вызова методов в интерфейсе ичаннелаудиоволуме ) и не использует сеанс совместно с другими приложениями, которые могут изменять тома каналов.

Единственными тремя методами в классе Каудиосессионевентс, которые уведомляют пользователя о событиях сеанса, являются онсимплеволумечанжед, онстатечанжеди онсессиондисконнектед. Например, если пользователь запускает программу системного управления громкостью, Сндвол и использует элемент управления громкостью в Сндвол для изменения уровня громкости приложения, OnSimpleVolumeChanged немедленно выводит новый уровень громкости.

Пример кода, который регистрирует и отменяет регистрацию интерфейса иаудиосессионевентс клиента, см. в разделе события аудио для устаревших аудио приложений.

Источник

Windows audio session (WASAPI) sample

Shows how to do various audio related tasks using the Windows Audio Session API (WASAPI).

Note: This sample is part of a large collection of UWP feature samples. You can download this sample as a standalone ZIP file from docs.microsoft.com, or you can download the entire collection as a single ZIP file, but be sure to unzip everything to access shared dependencies. For more info on working with the ZIP file, the samples collection, and GitHub, see Get the UWP samples from GitHub. For more samples, see the Samples portal on the Windows Dev Center.

Specifically, this sample covers:

For more information on adding audio to your app, see Quickstart: adding audio to an app.

Playing audio in the background is supported by the Windows Audio Session API only in communication scenarios as demonstrated by the VoIP sample. Instead, for general background audio playback of media, use the MediaPlayer class demonstrated in the Background Media Playback sample.

Related topics

Samples

Roadmaps

Reference

Operating system requirements

Client: Windows 10

Phone: Windows 10

Build the sample

Run the sample

The next steps depend on whether you just want to deploy the sample or you want to both deploy and run it.

Deploying the sample

Deploying and running the sample

Источник

Как вернуть качественный звук в Windows 7 — побитовый вывод, аппаратные эффекты (EAX и пр.)

Хочу поделиться опытом по теме звука в Windows 7.
На самом деле, всё не так плохо, как сначала кажется, и я вам сейчас это продемонстрирую.
Начну сначала.

О звуковых подсистемах

Windows XP

Тут схема звуковой подсистемы примерно следующая:

В данном случае через интерфейс DirectSound ПО имело прямой доступ к аппаратным ресурсам звуковой карты — микширование, преобразование частоты дискретизации, различные эффекты (включая 3D позиционирование) — в общем, всё, что было необходимо, как для музыки/фильмов, так и для игр.
Конечно, были свои проблемы, в частности с микшером Windows (неточная регулировка громкости, принудительная некачественная передискретизация всего и вся до 48 кГц), но они вполне легко обходились с помощью Kernel Streaming (тот самый поток, идущий мимо kmixer), а иногда даже с помощью хороших драйверов (у Creative например таковые появись только в линейке X-Fi. На аудиокартах Audigy микшер ведет себя не вполне адекватно, но, при желании, справиться с этим не сложно).

Vista, Seven

И вот, жили наши энтузиасты-звукари, горя не знали, но тут подоспела новая ОС от Microsoft, которая конечно же обязана была содержать кардинальные изменения (и не так уж важно, в какую сторону).
Таким образом, в рамках новой концепции абстракции от оборудования, Windows Vista, кроме всего прочего, получила полностью переработанную подсистему ввода/вывода звука. И конечно же, переработали её не самым лучшим образом.
Вот, какой вид она приняла в этот раз:


API — Application Programming Interface
APO — Audio Processing Object
CPT — Cross Process Transport
KST — Kernel Streaming Transport

+ базовые возможности обработки для звуковых карт не умеющих обрабатывать звук «своими силами»
+ поддержка на входе практически любого формата аудио — многоканальное аудио с частотой дискретизации до 192 кГц и глубиной квантования до 32-bit float
+ повышенная стабильность (спорное утверждение, в принципе)

— принудительный ресемплинг сомнительного качества
— микширование каналов без эффектов окружения (или же они очень примитивны)
— сужение динамического диапазона (особенно в режиме 16 бит)
— отсутствие доступа к аппаратному DSP, т.е. потеря всего его функционала, включая эффекты EAX в играх (в т.ч. и на картах, где EAX эмулировался программно — так как в WASAPI такого понятия даже нет нет)
— щелчки, хрипы и прочие последствия связанные с использованием ресурсов ЦП.

Как видно, больше всего не повезло компьютерным меломанам-аудиофилам (надеюсь, никто не обидится) и геймерам.
Люди же, не особо интересующиеся тем, что происходит со звуком на пути к звуковой карте — возможно даже получат определенное улучшение (хотя, опять же, им скорее всего всё равно — лишь бы работало)
А теперь, о том как преодолеть большинство из вышеперечисленных проблем, ибо, к великому несчастью, с выходом так любимой многими Windows 7, Microsoft никакой революции в плане звука нам не устроила.

Меломанам: точный вывод звука

1. Как я писал выше, большинство приложений для вывода звука в Windows 7 (хотят они того, или нет) используют режим WASAPI Shared. Но есть и другой режим — WASAPI Exclusive. Если руководствоваться блок-схемой, то в этом режиме отбрасывается всё, что лежит между Application Programming Interface и Kernel Streaming Transport — грубо говоря, звук идет непосредственно от приложения через интерфейс WASAPI на звуковую карту.
Но надо сделать замечание: так как в этом режиме отключен микшер WASAPI, а к микшеру звуковой карты доступа всё равно нет (ибо нет DirectSound), при использовании приложением эксклюзивного режима, воспроизведение любого другого источника через WASAPI становится невозможным.
Но, так или иначе, мы получаем по-битовый вывод аудио на звуковую карту.

2. Есть и другой способ. Если ваша звуковая карта имеет родной драйвер ASIO — вам крупно повезло. ASIO функционирует совершенно отдельно от WASAPI, так что, при прослушивании музыки системные звуки не будут отключаться — потоки ASIO и WASAPI будут микшироваться самой звуковой картой.
Вывод: если ваш драйвер ASIO не вызывает сомнений, используйте его.
Да, чуть не забыл — ASIO4ALL использовать нежелательно — как и Kernel Streaming, в этой ОС он работает очень нестабильно (судя по всему, из-за того, что другие звуки, идущие через WASAPI, периодически блокируют Kernel Transport).

Теперь непосредственно к делу.

Конечно же, для прослушивания музыки я рекомендую foobar2000 с плагином ASIO Output или WASAPI output support — ни за что другое ручаться я не могу. Подробная настройка вывода звука через foobar2000 описана здесь.

Любителей AIMP я разочарую — WASAPI Exclusive не предполагается даже в AIMP3 beta (только Shared), а ASIO в нем пока что сильно хромает (не умеет выставлять правильное количество каналов вывода, что приводит к нехорошим результатам).

Пользователям Winamp могу предложить плагины ASIO output Plugin или даже такое: OpenAL Output — кстати, еще один способ обхода WASAPI (видно из блоксхемы).

Для кинолюбителей: о видеоплеерах

C видеоплеерами ситуация практически аналогичная. Нам необходимо вывести звук на карту в первозданном виде. Особенно это важно, если вы хотите выполнить преобразование многоканального звука в стерео с использованием аппаратных эффектов вроде CMSS-3D в Creative X-Fi (объемное звучание в наушниках или стерео колонках). Для этого звук должен поступить на звуковую карту в многоканальном виде. Но вот беда: WASAPI в общем режиме преобразовывает каналы до кол-ва указанного в настройках Windows. Но даже если вы укажите там, скажем, 5.1, — этот параметр синхронизируется с настройками драйвера звуковой карты, и DSP не будет преобразовывать звук — так как сигнал на входе соответствует по кол-ву каналов настройкам. Т.е. тут принцип таков: в настройках драйвера звуковой карты должна стоять реальная конфигурация подключенного устройства воспроизведения (наушники, АС), а звук на карту должен поступать не измененным.
И так, тут нам опять понадобится WASAPI Exclusive. Я бы посоветовал использовать Media Player Classic HomeCinema в связке с DirectShow фильтром ReClock (только для 32-битного MPC), который, кроме всего прочего, умеет выводить звук на WASAPI Exclusive.

Геймерам: трехмерное позиционирование, EAX

Выводы

И так, вот вроде бы мы имеем всё, чего нам так не хватало сразу после перехода с Windows XP на Windows 7. Конечно, не без лишней мороки, но, что делать — такие уж задачки подкинула нам фирма Microsoft.

Источник

Исследование звукового тракта iTunes

Пролог

Отчасти по инерции, отчасти — по просьбе одного из пользовтелей сайта, я решил провести очередное исследование. Сегодня у нас в лаборатории детище корпорации Apple. Еще один продукт для широкого потребителя, не отличающийся высокой конфигурируемостью, с множеством странных (по моему мнению) и ненужных функций, а также интеграцией интернет-магазина. Во многом этот продукт напоминает мне Windows Media Player от Microsoft. Ну, что ж, пользуются и WMP, и iTunes тоже кто-то пользуется. Так что, как говорится, «сейчас мы их проверим, сейчас мы их сравним. ». Сегодня у нас будет что-то вроде баталии между Microsoft и Apple. Посмотрим, кто кого.

Оборудование и ПО

200?’200px’:»+(this.scrollHeight+5)+’px’);»> Intel Core i3 2.93 ГГц, ASUS P7H55-V, 4 ГБ DDR3, Creative X-Fi Xtreme Gamer

Microsoft Windows 7 Ultimate SP1 x64

iTunes 11.0.6.5
RightMark Audio Analyzer 6.3.0
Sony Sound Forge 10.0c

Настройки

Первый взгляд на настройки плеера заставляет русского человека невольно сконфузиться. Странно, что корпорация Apple не нашла нормального переводчика, разбирающегося в цифровом звуке, который бы сделал нормальную локализацию iTunes.

Остается только догадываться, что здесь имелось ввиду «воспроизведение через», «частота дискретизации» и «бит на семпл». Я уже не говорю о том, что один вид ползунка «улучшение звука: слабо/сильно» вызывает просто таки гомерический смех.

Но давайте перейдем к делу. Проверим, как работают все эти настройки.

Теперь посмотрим, как iTunes воспроизводит свой родной-любимый формат Apple Lossless (ALAC). Закодируем тестовый сигнал формата 24/96 и прогоним через плеер.

Что ж, порядок. Никакой обработки, никаких искажений. Это хорошо. Перейдем к lossy. Начнем с MP3 из 24-битного источника. Напомню: у нас стоит вывод через Windows Audio Session, формат 24/44.1.

И тут iTunes радует нас 24-битным декодированием MP3. В самом деле, приятная неожиданность. Более того — результаты декодирования идентичны результатам foobar2000. Также всё хорошо у плеера и с форматом AAC.

И у нас остается последний пункт — клиппинг. Проверяем на MP3 и AAC файлах с превышением уровня в 6 дБ.

И тут у нас интереснейшая картина. На MP3 я получил клиппинг с любыми настройками, в обоих режимах. Это говорит о том, что декодирование MP3 выполняется с фиксированной точкой (скорее всего 24-bit integer). ReplayGain iTunes, по-видимому не читает. Но куда интереснее с AAC — в режиме Windows Audio Session я явно услышал, как сработал лимитер. Не изначально было неясно, что это за лимитер — в плеере, или же в Windows (limiter APO). Переключившись на DirectSound, я понял, что лимитер срабатывал в микшере Windows, т.е. плеер до этого выводил аудио в режиме с плавающей точкой. Но дальше я обнаружил другую особенность — в свойствах трека (в плейлисте iTunes) есть вкладка, где можно регулировать громкость:

Так вот, если сдвинуть ползунок громкости в любую сторону на минимальное расстояние, включается лимитирование сигнала! Надо полагать, это уже встроенный лимитер плеера, призванный предотвратить клиппинг при чрезмерном повышении громкости. Но для MP3 этот трюк конечно же не работает — клиппинг происходит еще на этапе декодирования.

Таким образом, для iTunes мы получаем следующее:

+ аккуратное декодирование lossless и lossy, в т.ч. с высокой разрядностью;
+ 24- или 32-битный с плавающей точкой вывод;
+ сохранение оригинальной частоты дискретизации — все преобразования выполняет Windows;
— отсутствие поддержки ReplayGain;
— декодирование MP3 в формате с фиксированной точкой.

В общем и целом WMP c iTunes оснащены простенькими, практически одинаковыми по функционалу звуковыми движками. Но если судить строго, у iTunes мы имеем небольшое преимущество в виде 24-битного декодирования MP3. Так что фанаты Apple могут возрадоваться и спокойно слушать AAC на своём любимом iTunes.

А я тем временем пошел чистить систему от установленного с плеером мусора.

Информация от спонсора

220-110.РФ: здесь Вы можете приобрести высококачественные повышающие и понижающие трансформаторы 220-110 В. В наличии преобразователи напряжения различных форм-факторов и мощностей (300-10000 Вт). Также здесь можно приобрести переходники для самых различных электрических розеток и вилок.

Источник

Понравилась статья? Поделиться с друзьями:

Не пропустите наши новые статьи:

  • windows atto что это
  • windows arm64 что это
  • Windows arm64 msi что это
  • Windows arm что это
  • Windows apps что это

  • Операционные системы и программное обеспечение
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest
    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии