Asio или wasapi в windows 10

Как с максимальным качеством вывести звук из компьютера под ОС Windows

Сохранить и прочитать потом —

Ваш персональный компьютер может располагать CD-приводом или не быть им оснащенным – так или иначе он способен хранить в своей памяти библиотеку аудиофайлов или же получать их путем стриминга с каких-либо ресурсов. В любом случае музыкальный сигнал формата PCM (или реже DSD) может быть выведен для цифроаналогового преобразования сторонними средствами. Чаще всего это делается посредством USB-соединения ПК с внешней звуковой картой или аудио-ЦАП. Музыку можно слушать и с выхода на наушники самого компьютера (его динамики рассматривать не будем), но в таком случае результат будет оставлять желать лучшего. Причин тому несколько, но самая главная – встроенная звуковая карта попросту не обеспечивает качества, соответствующего статусу Hi-Fi. Поэтому самый очевидный способ – доверить эту процедуру специализированному компоненту.

Но простое подключение USB-кабелем еще не гарантирует точной побитовой передачи аудио на внешний ЦАП. Этот режим работы должен быть соответствующим образом настроен.

Установка драйвера ASIO

Для чего нужен режим ASIO? При воспроизведении музыки вы должны изолировать аудиопоток от программных микшеров Windows. В данном случае вам они совершенно не нужны, поскольку могут выполнять дополнительный пересчет данных, причем не очень качественный с точки зрения канонов Hi-Fi. Протокол ASIO призван сделать путь между программным плеером и ЦАП максимально коротким. Поэтому сегодня любой уважающий себя производитель звуковых карт или ЦАП снабжает свою продукцию соответствующими ASIO-драйверами. После их установки можно приступать к настройке своего программного плеера. Они выполняются один раз и в дальнейшей доводке не нуждаются.

Первичная настройка Foobar2000

Для примера рассмотрим один из самых популярных плееров Foobar2000. Он занимает минимум места, бесплатен и при этом достаточно продвинут для сложной DSP-обработки аудиосигнала. Но сейчас мы поговорим не обо всех возможностях Foobar2000, а о его первичной настройке для работы в ASIO-режиме с вашей звуковой картой.

В платных аудиоплеерах наподобие Audiorvana или JRiver совместимость с ASIO прошита в исходном дистрибутиве, и плеер сам подхватывает доступные ASIO-подключения. Для Foobar2000 понадобится установка модуля ASIO support, которую нужно дополнительная скачать по адресу https://www.foobar2000.org/components/view/foo_out_asio. После этого в разделе плеера Preferences выбираем самую первую строку Components. Нажимаем Install и указываем программе на сохраненный файлик foo_out_asio.fb2k-component. После чего перезагружаем плеер, чтобы изменения вступили в силу.

Программная регулировка громкости

Многие пользователи предпочитают регулировать громкость непосредственно в программном плеере. Это весьма удобно, например, в случае прослушивания с помощью настольных систем с активными мониторами.

Если ваш аудиотракт работает в режиме ASIO, уменьшить громкость с помощью ползунка в углу экрана (на панели задач Windows) уже не получится. Придется использовать собственный регулятор уровня сигнала плеера (Volume Сontrol). При этом имейте в виду, что в случае программного изменения громкости побитовая передача данных оригинала на ЦАП не сохраняется. Это возможно только при максимальном положении громкости на отметке 100%.

Финальные штрихи

В подразделе Output->ASIO можно увидеть два отмеченных галочкой режима повышения производительности. Use 64-bit ASIO drivers и Run with high process priority. Обычно они включены по умолчанию, но нелишним будет их проверить.

Также можно проверить состояние консоли ASIO. Иногда доступ к ней возможен прямо в плеере, а порой ее ярлычок находится на упомянутой панели задач вместе со значками языка раскладки и др. Разрядность должна быть установлена на значениях 24 или 32 бит. Не стоит включать так называемый dither – эта опция нужна лишь для очень старых приемников аудиосигнала, чья разрядность ограничена 16 бит.

Что касается размера буфера ASIO, то если ваша система не испытывает выпадения сигнала или иных сбоев звука, лучше оставить значение по умолчанию. Его уменьшение повысит вероятность появления артефактов, а увеличение, соответственно, понизит. Ряд аудиофилов утверждает, что наилучшего звука можно добиться с минимальным значением размера буфера ASIO. Измерения характеристик аудиопотока этого предположения не подтверждают, но лучший прибор – наш слух, так что вы сможете определиться с оптимальным размером буфера ASIO самостоятельно.

Источник

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

ЗВУКОМАНИЯ

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

WASAPI

WASAPI

WASAPI — это драйвер с низкой задержкой, когда он используется в монопольном режиме и напрямую взаимодействует с драйвером аудиоустройства. Это собственный ASIO от Microsoft.

WASAPI

ASIO является проприетарным протоколом. Вы можете использовать только то, что поддерживает ваше аудиоустройство.

WASAPI является неотъемлемой частью Windows (Vista, ХР, 7, 10 и выше).

В принципе это работает со всеми аудио устройствами.

На практике не все комбинации аудиоприложений и драйверов аудиоустройств будут работать правильно с использованием этого интерфейса.

АСИО

В эксклюзивном режиме никакое другое приложение не может использовать ЦАП или звуковую карту.

Нет больше системных звуков и даже на полную громкость в стерео!

скачать WASAPI + музыка во флак можно ЗДЕСЬ

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

В случае USB-ЦАП (с использованием драйверов основного режима) вы получаете автоматическое переключение частоты дискретизации с использованием эксклюзивного WASAPI.

Читайте также:  Windows 10 зависла при установке

Если частота дискретизации источника не поддерживается аппаратными средствами, например, источником 192 кГц с аудиоустройством 96 кГц, программа, использующая WASAPI, должна выполнить SRC (преобразование частоты дискретизации).

Это можно сделать, вызвав SRC, предоставленный Windows, или тот, который предоставлен приложением.

Аудио архитектура Windows начиная с Виста и далее

Плюсы аудио движка:

Переход к 32-битной с плавающей запятой, а не к 16-битной, что значительно улучшает качество звука при работе с несколькими аудиопотоками или эффектами.

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

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

Группировка аудио потоков

В Vista, ХР и выше вы можете сгруппировать все аудиопотоки из одного приложения и отдельно контролировать их громкость. Другими словами, регулятор громкости для каждого приложения. Это немного сложнее, чем может показаться на первый взгляд, потому что некоторые приложения, такие как IE, содержат все виды процессов и плагинов, которые все воспроизводят звук по-своему.

Приложения, плееры отправляющие звук на микшер, должны следить за тем, чтобы частота дискретизации соответствовала частоте микшера по умолчанию. Это значение по умолчанию установлено на вкладке «Дополнительно» в звуковой панели.

Даже если источник соответствует частоте дискретизации по умолчанию, применяется сглаживание.

Если вы не применяете какие-либо эффекты для каждого потока или глобальные эффекты и

слушаете только одно приложение, выводящее звук, и частота дискретизации и битовая глубина, установленные для Ц, соответствуют частоте дискретизации материала, то теоретически не должно быть никакой разницы с оригиналом, потому что преобразование даже из 24-разрядного целого числа в 32-разрядное число с плавающей запятой без потерь.

foobar2000 Wasapi

Эксклюзивный режим ВАСАПИ

Как правило, приложение отвечает за предоставление аудиобуферов Audio Engine в формате, который поддерживается аудио-движком. Форматы аудиосэмпла состоят из частоты дискретизации, битовой глубины и количества каналов. Собственная битовая глубина сэмплов, которую Audio Engine использует для внутреннего использования, составляет 32-битное число с плавающей запятой. Однако Audio Engine принимает большинство целочисленных форматов, которые до 32-бит. Кроме того, Audio Engine конвертирует большинство форматов в представление с плавающей запятой внутри.

Панель управления звуком задает требуемую частоту дискретизации в качестве «Формат по умолчанию». Формат по умолчанию определяет формат, который используется для предоставления контента аудиоустройством. Количество каналов, которые поддерживает Audio Engine, обычно является количеством АС для аудиоустройства.

Изменение частоты дискретизации и глубины в битах данных называется преобразованием частоты дискретизации. Приложение может решить написать свой собственный преобразователь частоты дискретизации. В качестве альтернативы, приложение может решить использовать API-интерфейсы, такие как PlaySound, WAVE, цифровой интерфейс музыкальных инструментов (MIDI) или микшер. В этих API преобразование происходит автоматически. Когда это необходимо, проигрыватель Windows Media выполняет преобразование частоты дискретизации в своем внутреннем конвейере Media Foundation.

Однако, если проигрыватель воспроизводит аудио, которое Audio Engine может обрабатывать изначально, проигрыватель перестраивает свой собственный конвейер без преобразователя частоты дискретизации. Такое поведение происходит, чтобы уменьшить промежуточные аудио преобразования и улучшить производительность.

Релейный предусилитель обзор

WASAPI можно использовать в режиме push и в режиме pull (стиль события).

На основе событий:

На основе push:

WASAPI — Стиль события

Режим вывода позволяет звуковому устройству извлекать данные из плеера. Этот метод поддерживается не всеми аппаратными средствами, но рекомендуется при его поддержке.

WASAPI — Event Style имеет несколько преимуществ:

Для использования WASAPI требуется плеер, поддерживающий этот драйвер в эксклюзивном режиме.

Я думаю, что эксклюзив WASAPI немного более прозрачен по звуку, чем DS (Direct Sound), аудио-движок Win по умолчанию.

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

Советы по АСИО и ВАСАПИ

ИТОГИ. WASAPI — это интерфейс с низкой задержкой для драйвера аудиоустройства.

Обход микшера — это все, что он делает. Разработчик или пользователь приложения, использующие WASAPI, должен убедиться, что свойства аудиофайла + плеера и возможности аудиоустройства (внешний ЦАП) совпадают.

Источник

Зачем нужно ASIO для аудиофилов?

Каждый, кто сталкивался с вопросом о качественном воспроизведении звука рано или поздно встречается с аббревиатурой ASIO, как важной и необходимой опцией.

Что это и в чем практический смысл?

Прежде всего, ASIO имеет отношение только к звуковой части записи/воспроизведения с компьютера через звуковую карту или USB-ЦАП под операционными системами семейства Windows. Тем, кто слушает музыку со смартфона или с сетевого проигрывателя с собственной ОС иметь представление ASIO тоже полезно, т.к. знание об этой «опции» позволяет избежать ряд проблем, присутствующих в смартфонах и соответственно позволяющая понять, почему не все платформы для звука одинаково полезны.

ASIO – это программный интерфейс передачи данных от программы, которая воспроизводит или принимает звуковой сигнал напрямую в драйвер звуковой карты, минуя звуковую подсистему ОС.

Необходимость в ASIO возникла исключительно для профессиональных задач. Самой большой проблемой была и остается минимальная задержка для передачи аудио сигнала. Когда мы смотрим фильм, нам не важно, сколько времени требуется системе для старта воспроизведения видео и аудио, доли миллисекунды или пару секунд после нажатия на кнопку «play». Главное, чтобы видео и аудио были синхронны относительно друг друга. В студии же требования очень жесткие, т.к. часто требуется игра вживую на виртуальных инструментах, с которых звук необходимо обрабатывать в реальном времени. Невозможно полноценно играть на midi клавиатуре, если нажатие на клавишу слышишь не сразу, а спустя секунду.

Читайте также:  Asus p5b plus windows 10

Штатно в ОС семейства Windows задержка составляет от 7 до 300 мс и зависит от текущей загруженности системы. Как несложно догадаться, звуковая система не является приоритетной в Windows и все что от нее требуется, это что бы звук просто не заикался, а для этого аудио данные собираются отдельный буфер и передаются сразу большим куском. Для сверх малых задержек буфер должен быть маленьким и постоянно передаваться небольшими пакетами.

ASIO является альтернативным мостом, который обеспечивает передачу звукового потока от программы до драйвера с фиксированным значением буфера, минуя штатную систему передачи данных ОС. Т.к. ASIO не является разработкой Microsoft (которой, к слову, на звук традиционно положить три кучи), то поддержка вывода и приема в ASIO ложится на плечи производителя ПО и звуковых устройств. Первоначально ASIO был разработан компанией Steinberg под свои продукты в момент перехода от MIDI к виртуальному синтезу и сегодня поддерживается практически всем профессиональным софтом и звуковыми интерфейсами.

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

Как влияет звуковая подсистема ОС на звук

В ОС много программ, которые являются источниками звука, это Skype, ICQ, браузер с музыкой в вКонтакте, системными звуками, видеопроигрывателем и другими приложениями. Все эти звуковые потоки различаются как дискретностью, так и частотой семплирования, а на ЦАП должен придти всего один стерео поток с определенной разрядностью и частотой дискретизации. Соответственно все звуковые потоки необходимо заранее смикшировать. Что бы представить уровень проблемы, представим, что есть несколько фотографий с разными исходными разрешениями, которые нужно одновременно вывести на экран ЖК монитора, при этом каждая фотография должна заполнить весь экран. Если фото вывести пиксель в пиксель и фото займет часть экрана – это будет аналогично тому, что звук будет воспроизводиться медленнее или быстрее.

Если разрешение фотографии 600х480 пикселей, а разрешение монитора 1024х768, то необходимо фотографию предварительно перевести в 1024х768. Четкость фотографии несомненно снизится. Примерно так страдает и звук, который система пересчитывает из 44,100 кГц в 48000 или 96000 кГц. Качество ресемплера в Windows оставляет желать лучшего, т.к. идет максимальная экономия ресурсов.

Возвращаясь к фотографии, у нас есть фото с разрешением в 600х480 пикселей, 1024х768 пикселей и 2048х1536 пикселей и все фотографии надо вывести на 1024х768 пикселей. До сложения необходимо 600х480 и 2048х1536 пересчитать в 1024х768 и после три фотографии просуммировать, накладывая одну картинку на другую.

Обычно только одна программа воспроизводит основной звук, а остальные проигрывают звук периодически (ICQ, Skype) и их можно сравнить с логотипами и надписями поверх основной фотографии. Вполне очевидно, что картинка с исходным разрешением в 1024х768 меньше всего пострадает в качестве и если она будет основной и совпадать с разрешением монитора, то в снизится качество лишь вспомогательных картинок: логотип и надписи.

Так же и в системе можно формально выставить конечную частоту семплирования 44.100 кГц под аудиоплеер и пренебречь качеством системных звуков, которые звучат лишь время от времени.

Однако для наименьших потерь в качестве при микшировании звуковых потоков добавляется специальный шум (диттер) и системе все равно, одна программа воспроизводит звук или несколько. Таким образом, даже при воспроизведении всего одного звукового потока без его конвертирования в другую частоту семплирования, он все равно подвергается обработке и уже не поступит на ЦАП «бит в бит».

Если раньше ОС отслеживала, с какой частотой семплирования поступают на вход данные и автоматически выставляла максимальную поддерживаемую звуковой картой частоту дискретизации к входящим звуковым потокам (например при входящих 22, 44,1 и 48 кГц выставлялась 48 кГц, а при 22 и 44,1 понижалась до 44,1 кГц ), то начиная с Win7 в системе принудительно выставляется общая частота семплирования и автомата опорной частоты нет. Стабильность ОС повысилась, но метод не всех обрадовал.

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


Условно общая схема выглядит так. При использовании ASIO Звуковой поток направляется сразу в микшер драйвера звуковой карты (Mixer Driver), минуя ресемплер (SRC) и микшер ОС.

Для необходимости воспроизвести звуковой поток «бит-в-бит” есть специальные режимы, в ОС Windows это «Kernel Streaming» (версии до XP) и WASAPI (версии после XP включительно). В таком режиме право передать звуковой поток имеет только одна программа в системе и тут полностью исключается микширование и пересчет данных. Более того, есть поддержка системой автоматического переключения опорной частоты (но при соответствующей поддержке драйвера звуковой карты).

Этот режим не рекомендуется использовать обычному пользователю, т.к. несет за собой разные проблемы. Например, пользователь включает Foobar2000 с WASAPI и после запускает видео ролик с ранее запущенного браузера. Звуковой драйвер не принимает звуковой поток от браузера и происходит крах флеш плагина. Налицо — система порушилась, а это: «печаль, беда и огорченье». Производители ПО крайне редко делают возможность вывода звука в KS/WASAPI, т.к. воинствующие пользователи будут винить в проблемах не свои кривые руки, а программу «из-за которой все порушилось».

Режимы KS/WASAPI можно встретить только в аудиоредакторах, секвенсорах и редких программных плеерах, предназначенных для аудиофилов – под подготовленных пользователей, которые понимают, что будет страдать стабильность работы ОС и кроме плеера/аудиоредактора/секвенсора звука не будет. Продвинутые аудиофилы, отказавшиеся от встроенного звука обычно для музыки используют отдельную звуковую карту, а системные звуки направляют на встроенный звук, что обеспечивает высокую стабильность работы ОС.

Читайте также:  Vhome приложение для windows

Т.е. по сути, KS/WASAPI – это идеальный вариант для вывода звука для аудиофила. Поддерживается в Foobar2000, AIMP, Winamp. Тем, кто хочет и фильмы в качестве слушать – есть плеер Light Alloy.

ASIO или WASAPI?

Профессионалы используют режим ASIO, который передает в драйвер звуковой поток «бит-в-бит» и обеспечивает фиксированный уровень задержки. WASAPI штатными настройками ОС не позволяет управлять задержкой. Уровень задержки в профессиональной работы приоритетнее, а «бит-в-бит» лишь приятный бонус.

Что происходит, когда задействованы одновременно звуковая система ОС и ASIO?

Для звукового драйвера есть два звуковых потока, одни из них приходит из подсистемы ОС, другой из ASIO. Исключительно от того, как был написан драйвер, будет происходить микширование финального потока до ЦАП. В одних случаях, если есть звуковой поток из ASIO, то звук от подсистемы ОС отключается, в других случаях происходит микс потоков из ОС и ASIO и «бит-в-бит» остается только в теории. ASIO, как и WASAPI позволяет лишь избежать алгоритмов SRC (передискретизации) и микширования подсистемы ОС и ничего более. Целостность финального потока будет зависеть от драйвера.

В любом случае, практически всегда звуковая карта работает в том же режиме семплирования, что и поступающий поток из ASIO, что дает некоторое преимущество для ASIO.

Микширование в драйвере может быть программным, а может аппаратным. Особенно забавно выглядят попытки аудиофилов в качестве источника ставить профессиональный интерфейс для «качественной цифры», где цифра выдается после аппаратного микширования. Впрочем, некоторым отмикшированный звук нравится больше оригинального … чище, прозрачнее и душевней…

Если логически просмотреть цепочку, по которой должен пройти звуковой поток, то для идеологии «бит-в-бит» звуковой интерфейс должен поддерживать всего один вариант, либо отключать микширование потоков при работе только одного интерфейса. Только в этом случае шансы получить «бит-в-бит» максимальны.

К примеру, возьмем OPPO HA-1 c поддержкой ASIO. Если запустить одновременно Foobar2000 с WASAPI и AIMP с ASIO, то на выходе мы услышим одновременно оба звуковых потока. Цифровых выходов у OPPO нет и соответственно нет возможности проверить звуковой поток на «бит-в-бит» отдельно для ASIO и WASAPI перед ЦАП.

А вот с ASUS Essence STU ситуация иная. Если AIMP с ASIO играет, то Foobar2000 с WASAPI уже молчит, звуковые потоки не смешиваются, отдавая приоритет для ASIO. Проверить цифровой поток аналогично возможности нет, но шансов, что звуковой поток поступил «бит-в-бит» на порядок больше.

Считается, что USB-ЦАП обязательно должен поддерживать ASIO, но на практике мы получаем дополнительное звено, где должны смешиваться или переключаться потоки из звуковой системы ОС и ASIO. И тут отсутствие ASIO – это отсутствие неизвестного звена, где может быть принудительное микширование, которое нельзя протестировать без цифровых выходов. В тоже время микширование на этом этапе обычно производится в разрядности 24 или 32 бита и соответственно услышать шум диттера маловероятно. Проблема лишь в идеологии «Hi-End».

Является ли ASIO панацеей от всех бед?

Как показывает практика, все зависит от драйвера звукового устройства. Если устройство профессиональное, то обычно стабильности и качеству у производителя ASIO максимум внимания. Если устройство бытовое, то ASIO может работать на порядок хуже режима KS/WASAPI. С практической точки зрения при выборе использования KS/WASAPI и ASIO нужно использовать тот интерфейс, с которым ОС работает более стабильно.

Универсальный драйвер ASIO4ALL

Драйвер ASIO4ALL необычайно популярен, но является при этом мостом между выходом ASIO из программы на вход KS/WASAPI в ОС. Это важно знать, т.к. если у вас звуковая карта не поддерживает ASIO, то после установки ASIO4ALL в том же Foobar2000 у вас выбор, выбрать изначально вывод в KS/WASAPI или ASIO через ASIO4ALL, который направит звуковой поток в тот же KS/WASAPI в ОС.

Ремарка для фанатов ASIO4ALL – да, там есть еще разные настройки, вроде выбора буфера и т.п., но эти возможности нужны лишь в профессиональной работе и ничего полезного не дают аудиофилам, для которых предназначен данный материал.

Что дает право утверждать, что ASIO4ALL доносит данные «бит-в-бит» до KS/WASAPI? Ведь теория и практика зачастую дают противоположные результаты. Для оценки качества работы ASIO4ALL был задействован Audiolab M-DAC с функцией проверки входящего звукового потока на «bit perfect» через воспроизведение специального звукового файла. Тест подтвердил, что данные приходят действительно «бит-в-бит» при воспроизведении из Foobar2000 через ASIO4ALL.

Кстати, приходили утверждения со стороны программистов, что например ASIO драйвер внешних карт E-MU (USB версий) сделан аналогично ASIO4ALL в виде моста и именно это является источником низкой стабильности карт…

Android и «бит-в-бит»

Возвращаясь к плеерам на базе ОС Android. В данной ОС есть аналогичный режим KS/WASAPI, но вот явных настроек под него нет. Единственный программный плеер, в котором есть режим прямого вывода в ЦАП используется в iBasso DX100. Разумеется, собственный программный плеер работает только в DX100 его нельзя скачать и поставить например в плеер Sony.

Проверить работу в Android на «бит-в-бит» очень просто. Запустите любой будильник и плеер. Если поверх звука из плеера вы услышите будильник, то никаких «бит-в-бит» на выходе нет.

ASIO – это возможность передать звуковой поток “бит-в-бит” минуя обработку звука в подсистеме ОС, но помимо ASIO есть и альтернативный вариант KS/WASAPI. Качество и точность передачи в конечном итоге обеспечивает лишь драйвер звукового устройства и порой отсутствие ASIO лишь отдельный плюс.

Автор Кузнецов Роман romanrex

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

Источник

Поделиться с друзьями
Советы экспертов и специалистов
Adblock
detector