ASIO4ALL
Универсальный ASIO-драйвер для звуковых WDM-устройств.
Содержание
Введение [ править ]
Сведения в данном руководстве помогут правильно установить и настроить этот драйвер.
Чтобы добиться наилучших результатов, удостоверьтесь в том, что:
Найти обновления, получить дополнительные справочные сведения и поддержку можно по этим адресам:
Приступая к работе [ править ]
Настройка звукового ПО [ править ]
Чтобы использовать соответствующие звуковые приложения с драйвером ASIO4ALL, их нужно настроить. В каждом конкретном случае эти настройки индивидуальны, но общим для всех является необходимость выбрать «ASIO4ALL v2» в качестве устройства ввода и/или вывода.
В одном окне с меню, где выбирается устройство, должна быть кнопка вызова панели управления драйвером. Нажав эту кнопку, можно вызвать окно настроек ASIO4ALL. Узнать о том, как выбирается устройство и вызывается окно его настроек в конкретном приложении, можно в руководстве к этому приложению.
Иногда кнопки вызова панели управления может не Asio4all_ico.png оказаться. Обычно такое бывает в медиа-проигрывателях. В подобных случаях панель управления можно вызвать, щёлкнув на значок в панели уведомлений:
Значок появляется, когда приложение инициализирует драйвер ASIO4ALL. Если значка нет, то приложение не использует этот драйвер в данный момент. Уведомления можно отключить, просто открыв дополнительные параметры в панели управления ASIO4ALL.
Примечание: По возможности для вызова панели управления следует пользоваться именно специальной кнопкой, а не значком.
Изменения в настройках иногда могут вступать в силу лишь после перезапуска приложения.
Основные параметры конфигурации [ править ]
1. Список звуковых WDM-устройств, найденных в вашей системе.
Всегда изменяются параметры лишь того устройства, которое выделено в списке.
Устройства активируются кнопкой-индикатором слева от названия. На рисунке выше активным является «SoundMAX Integrated Digital HD Audio». Возможна одновременная активность любого числа устройств.
Рядом с индикатором активности есть индикатор, сообщающий состояние устройства:
Дополнительные параметры конфигурации [ править ]
В расширенном режиме панель управления содержит элементы для тонкой настройки. В списке устройств появляются подпункты, повторяющие архитектуру вашей звуковой подсистемы.
Список содержит устройства, интерфейсы устройств и т.н. «выводы» (в терминологии Микрософт®). Как и с целыми устройствами в упрощённом режиме, здесь можно включать/выключать уже отдельные элементы устройств и настраивать устройства на совместное использование.
При совместном использовании устройства работают по одному тактовому источнику. Этого можно достичь, например, последовательным соединением по интерфейсу S/PDIF. К счастью, USB-устройства, работающие от хост-контроллеров с одним тактовым источником, уже синхронизированы. Если вы не пользуетесь дополнительными USB-контроллерами, то все устройства работают от одного тактового генератора, расположенного на материнской плате.
Если устройства не синхронизированы, то их аудио потоки могут опережать и отставать друг от друга.
Справа расположены дополнительные элементы управления 5 – 9.
5. Компенсация задержки
Потому как ASIO4ALL не располагает подробной информацией об архитектуре аппаратных средств и драйвера, величина компенсации выбирается лишь предположительно. Этими ползунками можно скомпенсировать задержки, неизвестные ASIO4ALL, чтобы, например, записанные фрагменты в секвенсоре воспроизводились в нужный момент со всем остальным. При совместной работе нескольких устройств выбирается наибольшее значение. Если разные устройства имеют различные собственные задержки, то в результате возможна асинхронность.
6. Включение/отключение аппаратного буфера
В случае с драйверами WaveRT (Windows Vista) этот флажок подписан как «Режим извлечения (WaveRT)». Доступ к аппаратному буферу обычно встречается только в драйверах типа «WavePCI». Другие типы WDM-драйверов, как правило, не дают прямого доступа к аппаратному буферу. Самое большое преимущество при использовании аппаратной буферизации в том, что основные вычислительные ресурсы системы расходуются значительно меньше. Основные параметры, влияющие на производительность аппаратного буфера, — «Размер буфера ASIO» и «Смещение в буфере» (п. 7). Аппаратная буферизация лучше работает с мелким буфером ASIO, нежели с крупным. Для начала попробуйте установить размер буфера на 128 или 256 сэмплов. Возможно совместное использование устройств с доступом к аппаратному буферу и без доступа, но это не рекомендуется. Если аппаратная буферизация не поддерживается каким-либо устройством, то возникает отчётливо слышимая задержка в сотню-другую миллисекунд. Режим извлечения (WaveRT) Есть два основных метода доступа к устройствам WaveRT. «Режим извлечения» (pull-mode, «режим событий») и «режим помещения» (push-mode, «режим опроса»). Последний поддерживается всеми драйверами WaveRT и всеми версиями платформы. В отличие от него режим извлечения был довольно поздно документирован Микрософтом и потому работает далеко не везде. Если флажок не поставлен, то ASIO4ALL никогда не будет использовать этот режим. Иначе будет использовать его по возможности. Режим извлечения лучше синхронизирован и считается технически более совершенным, чем режим помещения. Драйвер ASIO4ALL версии 2.8 работал так, как если бы флажок был установлен. Если при работе с установленным флажком проблем не возникает, то следует оставить этот режим для большей производительности.
7. Число буферов ядра / смещение в буфере
Если аппаратная буферизация не используется, то этот параметр отвечает за число буферов на выходе. Каждый дополнительный буфер увеличивает задержку в соответствии с размером. Поэтому изменять значение по умолчанию, равное двум, следует только на слабых системах, на которых трудно поставить мелкий размер буфера ASIO. Если же аппаратная буферизация используется, то параметр отвечает за величину зазора в миллисекундах между позицией, где ASIO4ALL будет записывать данные (и где будет происходить их чтение), и позицией, которую ASIO4ALL считает текущей позицией чтения или записи. Это звучит сложно до тех пор, пока вы не видите код, который всё это рассчитывает 🙂 Общее правило звучит так: с более высокими значениями увеличивается и стабильность, и задержка, с более низкими эффект обратный. В звуковых картах, построенных на базе Envy24, может быть параметр «DMA Buffer Transfer Latency» (задержка при передаче данных в буфер с прямым доступом к памяти) или что-то в этом роде. Этот параметр следует ставить на минимальное значение.
8. Преобразование между 44.1 и 48 Кгц
ASIO4ALL может в реальном времени преобразовывать частоту дискретизации от 44.1 КГц в 48 КГц и обратно. Преобразование происходит автоматически в случаях, когда ASIO4ALL открывается в режиме 44.1 КГц, а WDM-драйвер не поддерживает эту частоту. В некоторых случаях драйверы стандарта AC97 могут поддерживать частоту 44.1 КГц, преобразовывая её самостоятельно. Однако преобразование выполняется с довольно сомнительным качеством и проблемами со стабильностью. Чтобы избавиться от этого, включите данный параметр. Как минимум с одной из версий WDM-драйвера SoundMAX (smwdm.sys) этот параметр обязательно должен быть включён, чтобы частота 44.1 КГц вообще поддерживалась.
9. Принуждение к работе WDM-драйвера в 16-разрядном режиме
Этот параметр работает только с теми драйверами, которые сообщают о возможности работы с потоком разрядностью более 16 бит (и меньше 24), но фактически отказываются от этого. Примером такого драйвера является SigmaTel AC97.
Правила оптимизации в общих случаях [ править ]
Использование «ReWuschel» [ править ]
Если при установке вы отметили одноимённый пункт, то входы, предоставляемые ASIO4ALL, будут доступны в ReWire-приложениях. Смысл в этом есть, когда программа поддерживает только ASIO- выходы, но при этом имеет полноценную поддержку ReWire — например, Reason.
Чтобы подавать звук в Reason в реальном времени, ASIO4ALL должен быть установлен в качестве текущего драйвера. После этого вызовите в меню: Create → ReBirth Input Machine. Теперь входы ASIO4ALL подключены к выходам устройства «ReBirth Input Machine».
Учитывайте, что с установленным компонентом ReWuschel вы не сможете пользоваться Rebirth в Reason. Чтобы это стало возможно, необходимо будет переустановить ASIO4ALL без ReWuschel.
Возможные неполадки и способы их устранения [ править ]
ASIO4ALL представляет себя приложениям как автономный драйвер, но в некоторых конфигурациях фактически таким не является. Поэтому некоторые проблемы могут возникать не по его вине, даже если внешне это выглядит иначе. Особо можно отметить ситуацию, когда вы меняете состав устройств и их каналов в панели управления ASIO4ALL. При этом изменяются количество и имена каналов, которые предоставляются приложению. Поэтому рекомендуется перезапускать приложение после изменений в составе устройств и каналов, если у вас есть подозрения в том, что программа не справляется с этими изменениями «на лету».
Настройка ASIO4ALL и зачем оно вообще нужно?
Настройка ASIO4ALL и зачем оно вообще нужно?
Эта статья немного поведает вам о том, как устроены аудио системы в Windows XP и Vista. Хотя в основном я буду рассказывать, как установить ASIO4All на XP. Я не могу точно сказать, насколько улучшится качество звучания после такой установки. Кто то, наверное, не услышит вообще никакой разницы, а кому-то станут заметны существенные изменения к лучшему. Конечно, чем больше разрешение вашего компьютера — тем скорее вы услышите улучшения. Мне, например, заметна разница между ASIO4All и DS, вместо которой я ASIO и установил. Если у вас Vista, я не стал бы рекомендовать вам установку ASIO, потому что недавние тесты показали, что слышимой разницы между обычными настройками и ASIO нет.
Сначала введу несколько терминов, к которым буду прибегать на протяжении статьи.
Bit-perfect
Bit-perfect — это то, как аудио поток «струится» по вашему прибору. С помощью bit-perfect вы получите более точное воспроизведение того, что на самом деле было записано на CD, в том числе и всех маленьких звуковых погрешностей.
От качества звуковой карты качество воспроизведения тоже зависит, даже если bit-perfect включен. У разных звуковых карт разные тайминги и значения джиттера, обычно, чем карта проще — тем величина джиттера больше.
Единственное, что может повлиять на этот сигнал — это то, какой у вас DAC. Качество DAC тоже влияет на звуковоспроизведение.
Kmixer
KMixer — это та часть Windows, которая позволяет вашему компьютеру одновременно проигрывать музыку из разных аудио источников, причем с одинаковым бит-рейтом. KMixer — это также то, как Windows регулирует громкость. Частота обычного аудио с CD — 44.1 кГц. Часто бывает так, что из-за не очень хороших драйверов звуковая карта, подключенная к KMixer’у, изменит частоту с 44.1 на 48 кГц. Естественно, это приведет к нежелаемым результатам, особенно когда вы стараетесь, чтобы качество звучания было наилучшее. Microsoft использует алгоритм микширования, у которого соотношение сигнал/шум обычно бывает примерно 92 дБ. У CD соотношение сигнал/шум — примерно 96 дБ (строго говоря, 97.5 дБ). KMixer эффективно сжимает данные с 16 до 14 бит. Чтобы избежать и «обхитрить» KMixer, вам потребуется либо ASIO, либо Kernel Streaming.
ASIO
ASIO — это аббревиатура Audio Stream Input Output.
ASIO — это профессиональный аудио стандарт, который отвечает за аудио поток с наименьшими задержками из компьютера. ASIO способен полностью «обхитрить» KMixer. Для звукозаписывающей промышленности ASIO — это стандарт. Загрузить ASIO можно здесь:
ASIO4ALL — Universal ASIO Driver
ASIO4All — не единственный ASIO драйвер. Не будет лишним упомянуть USB-ASIO и ASIO2KS. Вот ссылки на них:
USB 2 Audio — low latency audio
ASIO2KS — Generic ASIO driver for WDM soundcards.
XP Аудио
Вот простая иллюстрация того, как работает система аудио на XP:
Легко увидеть, что только ASIO и OpenAL могут дойти до самого нижнего уровня драйвера и обойти все остальное.
Вот весьма упрощенная иллюстрация Vista audio architecture. Здесь показано только одно аудио приложение. Нужно понимать, что для каждого нового запущенного аудио приложения будет автоматически запускаться отдельная WASAPI instance.
Для тех, у кого есть ASIO или OpenAL, разница не покажется существенной. Но разница появится, если у вас Direct Sound. Нет больше возможности напрямую перейти с приложения Direct Sound на аудио драйверы или hardware. А это приводит к тому, что нет больше и hardware acceleration. Используют Direct Sound acceleration, чтобы hardware process не перемешивался с audio content. Чтобы узнать про это больше, посмотрите здесь (это форумы).
Расшифровка аббревиатур:
WASAPI — Windows Audio Session API
API — Application Programming Interface
APO — Audio Processing Object
CPT — Cross Process Transport
KST — Kernel Streaming Transport
Не все звуковые карты способны на воспроизведение звука bit-perfect. Некоторые все равно изменят информацию, даже если получили её bit-perfect. С этим ничего нельзя поделать, разве что купить новую звуковую карту.
Вы можете менять громкость по вашему усмотрению, когда используете ASIO. Это не сделает ваш сигнал менее bit-perfect.
Kernel Streaming
Kernel Streaming — это примерно то же самое, что и ASIO. Это то, как Microsoft видит возможность воспроизводить аудио в формате bit perfect на компьютере с системой Windows. Kernel Streaming делает возможным воспроизводить аудио поток в режиме реального времени. Но Kernel Streaming — это не профессиональный стандарт. У ASIO есть намного больше supported plugins, разработанных для различных медиа плееров. Kernel Streaming требует меньше CPU, чем стандартный метод «wave out».
Настройка ASIO4All
В некоторых звуковых картах есть уже установленный драйвер для ASIO. Если у вас такая карта — вам не нужно этот драйвер переустанавливать. Звуковые карты, с самого начала поддерживающие ASIO, лучше, чем неподдерживающие. Настоящий ASIO нисколько не вмешивается в OS. Если это ваш случай, то можете дальше не читать и сразу перейти к разделу «Настройка Foobar/WinAmp».
Я расскажу вам, как настроить ASIO4All для bit-perfect звуковоспроизведения. Стоит отметить, что это настройка именно для звуковоспроизведения, а не для звукозаписи, и что я лично использую версию 2.9.
Начнем с того, что установим ASIO4All. Сложного ничего быть не должно. Думаю, вы справитесь. Потом надо разобраться с конфигурацией offline настроек ASIO4All (Off-Line Settings). Когда вы только установили программу, offline настройки выглядят примерно так:
Теперь вам нужно настроить все для bit-perfect звуковоспроизведения. После того как вы это сделаете, на экране вашего компьютера появится примерно следующее:
Сначала кликните на advanced. Потом убедитесь, что нижеперечисленные настройки будут соблюдены:
ASIO buffer size на 2048.
latency compensation на 0.
Не ставьте галочку у «hardware buffering»
kernel buffers на 4.
Активируйте только те devices, которыми вы действительно хотите пользоваться. Мне, например, не нужен Realtek AC’97, поэтому я его деактивировал. Зато мне нужен USB-DAC, поэтому его я активировал.
Настройка Foobar вместе с ASIO4All
Здесь я вам объясню, как настроить ASIO4All вместе с Foobar. Я использую 0.9.4.2. версию Foobar и 2.9 версию ASIO4All.
Скачайте plug-in для ASIO отсюда.
Когда скачаете, unpack файл и поместите его в вашу components directory. Моя называется:
C:\Program Files\foobar2000\components
Там должна быть вкладка/ярлык под названием ASIO Virtual Devices. Выберите её/его и добавьте новый virtual device. Когда сделаете это, обработайте (edit) ASIO4ALL v2. Вы увидите перед собой примерно следующее:
Я хочу активировать мой USB-DAC, поэтому я здесь отобразил left и right. Нажмите «сохранить все»/save all и у вас все готово!
Перейдите к вкладке main output и выберите ваш output device. Если вы хотите использовать ASIO4All, то вам нужно выбрать то же, что вы видите на иллюстрации:
Выберите ASIO: ASIO4ALL v2 как ваш output device.
Настройка WinAmp вместе с ASIO4All
Здесь я вам объясню, как настроить ASIO4All вместе с WinAmp. Это так просто, что я даже задумываюсь иногда: а зачем вообще нужен Foobar.
Скачайте plug-in для ASIO отсюда. Существует ещё один плагин для ASIO. Если предыдущий плагин у вас не будет работать, то можно попробовать скачать этот. Вот ссылка.
(Примечание: я деинсталлировал все остальные output plug-ins. Вам нет необходимости это делать, чтобы ваш ASIO заработал).
Теперь перезапустите WinAmp и все должно заработать.
AC97: выявление и устранение неисправностей
Всегда надо менять частоту: 44.1 48 кГц
ASIO4ALL может менять частоту аудио с 44.1 кГц на 48 кГц и наоборот в режиме реального времени. Эта смена частот будет происходить автоматически каждый раз, когда ASIO4ALL настроен на 44.1 кГц, а WDM драйвер не поддерживает такую частоту дискретизации. Иногда может быть так, что AC97 будет поддерживать частоту 44.1 кГц за счет того, что будет менять её изнутри. Но чаще всего качество подобной AC97 смены будет скверненькое и нестабильное. Чтобы как-то обойти эту проблему, можно активировать эту опцию. Если у вас одна из вариаций на тему SoundMax WDM driver (smwdm. sys), эту опцию просто обязательно надо активировать, чтобы он (драйвер) хоть как-то работал на 44.1 кГц.
Принудительное использование WDM-драйвера в 16 Bit
От этой опции есть какой-то эффект, только если WDM драйвер поддерживает bit depth больше, чем 16, но меньше, чем 24. Некоторые AC97-устройства официально должны поддерживать, например, 20 Bits, а на самом деле не могут работать с файлами больше чем на 16 Bits resolution. Если это как раз характеризует вашу систему, тогда с помощью этой опции можно найти обходной путь. Первоначально её (опцию) предложили, как обходной путь для SigmaTel AC97 WDM драйвера.
Урааааа! Вы только что установили ASIO4All. Если у вас возникли какие-то неполадки, почитайте инструкцию или задайте вопрос.
В: А если у меня DSP, у меня сохранится bit-perfect?
О: Нет. Весь потеряется. Спустите его в сливной бачок. (Хотя, мне лично кажется, что EQ может сыграть большую роль, чем воспроизведение bit-perfect.)
В: Мой. wav файл не играет… Почемуууууууу?
О: Файлы. wav могут быть bit-perfect, только если выполнены следующие условия:
— Стерео формат
— PCM audio data
— Min: 16-bits Max: 32-bits.
— 44.1, 48, 96 kHz
В: У меня с громкостью что-то не то: ставлю одну, а звучит другая. Что мне делать?
О: Windows иногда меняет громкость так просто, на свое усмотрение. Вы можете это исправить: нужно зайти в меню «Sounds and audio devices» в окошке конфигураций.
В: Работает ли прибор X с ASIO?
О: Я не могу знать всего. Предлагаю вам просто почитать технические характеристики вашего конкретного прибора и посмотреть, поддерживает ли он ASIO исходно, и если да-то просто скачайте ASIO plug-in для Foobar. Если он исходно не поддерживает ASIO, то предлагаю вам скачать ASIO4All и plug-in к нему и посмотреть, как ваш прибор их воспримет. Единственный способ удостовериться — самим попробовать.
Asio4all rewuschel что это
Редакция от 11 марта 2009 г.
Введение
Спасибо за использование ASIO4ALL! Сведения в данном руководстве помогут правильно установить и настроить этот драйвер.
Чтобы добиться наилучших результатов, удостоверьтесь в том, что:
• …выбрана схема управления питанием с наименьшей вероятностью переключения P-состояния процессора. В случае с Windows XP это схема «Включен постоянно», в случае с Windows Vista — «Высокая производительность». При наличии соответствующих навыков можно изменить нужную схему таким образом, чтобы тактовая частота процессора не менялась (это единственный критично важный параметр).
• …системные звуки отключены. Звуки редких событий (вроде запуска и завершения работы) не являются проблемой, но более частые и менее предсказуемые могут блокировать процесс инициализации звукового устройства для ASIO4ALL.
Приступая к работе
Настройка звукового ПО
Чтобы использовать соответствующие звуковые приложения с драйвером ASIO4ALL, их нужно настроить. В каждом конкретном случае эти настройки индивидуальны, но общим для всех является необходимость выбрать «ASIO4ALL v2» в качестве устройства ввода и/или вывода.
В одном окне с меню, где выбирается устройство, должна быть кнопка вызова панели управления драйвером. Нажав эту кнопку, можно вызвать окно настроек ASIO4ALL. Узнать о том, как выбирается устройство и вызывается окно его настроек в конкретном приложении, можно в руководстве к этому приложению.
Иногда кнопки вызова панели управления может не оказаться. Обычно такое бывает в медиа-проигрывателях. В подобных случаях панель управления можно вызвать, щёлкнув на значок в панели уведомлений:
Значок появляется, когда приложение инициализирует драйвер ASIO4ALL. Если значка нет, то приложение не использует этот драйвер в данный момент. Уведомления можно отключить, просто открыв дополнительные параметры в панели управления ASIO4ALL.
Примечание: По возможности для вызова панели управления следует пользоваться именно специальной кнопкой, а не значком.
Изменения в настройках иногда могут вступать в силу лишь после перезапуска приложения.
Основные параметры конфигурации
Рис. 1: Панель управления ASIO4ALL в упрощённом режиме
1. Список звуковых WDM-устройств, найденных в вашей системе.
Всегда изменяются параметры лишь того устройства, которое выделено в списке.
Устройства активируются кнопкой-индикатором слева от названия. На рис. 1 активным является «SoundMAX Integrated Digital HD Audio». Возможна одновременная активность любого числа устройств.
Рядом с индикатором активности есть индикатор, сообщающий состояние устройства:




Если список пуст, то в вашей системе нет звуковых WDM-устройств или для таких устройств не установлены драйверы, которые можно получить на сайте производителя.
2. Размер буфера ASIO.
Этот ползунок управляет размером ASIO-буфера выбранного устройства. Чем меньше размер буфера, тем меньше задержка. Если в звуке возникают щелчки, то необходимо увеличить размер.
3. Кнопка загрузки настроек по умолчанию.
Нажав эту кнопку, можно вернуть все параметры на их изначальные значения. Это должно помочь, если после установки драйвер работал нормально, но впоследствии был неправильно настроен.
4. Кнопка отображения дополнительных параметров.
Переключает панель управления в расширенный режим, где можно произвести тонкую настройку.
Дополнительные параметры рассматриваются в следующей главе.
Дополнительные параметры конфигурации
Рис. 2: Панель управления ASIO4ALL в расширенном режиме
В расширенном режиме панель управления содержит элементы для тонкой настройки. В списке устройств появляются подпункты, повторяющие архитектуру вашей звуковой подсистемы.
Список содержит устройства, интерфейсы устройств и т. н. «выводы» (в терминологии Микрософт®).
Как и с целыми устройствами в упрощённом режиме, здесь можно включать/выключать уже отдельные элементы устройств и настраивать устройства на совместное использование.
При совместном использовании устройства работают по одному тактовому источнику. Этого можно достичь, например, последовательным соединением по интерфейсу S/PDIF. К счастью, USB-устройства, работающие от хост-контроллеров с одним тактовым источником, уже синхронизированы. Если вы не пользуетесь дополнительными USB-контроллерами, то все устройства работают от одного тактового генератора, расположенного на материнской плате.
Если устройства не синхронизированы, то их аудиопотоки могут опережать и отставать друг от друга.
Справа расположены дополнительные элементы управления 5–9.
5. Компенсация задержки
Потому как ASIO4ALL не располагает подробной информацией об архитектуре аппаратных средств и драйвера, величина компенсации выбирается лишь предположительно.
Этими ползунками можно скомпенсировать задержки, неизвестные ASIO4ALL, чтобы, например, записанные фрагменты в секвенсоре воспроизводились в нужный момент со всем остальным.
При совместной работе нескольких устройств выбирается наибольшее значение. Если разные устройства имеют различные собственные задержки, то в результате возможна асинхронность.
6. Включение/отключение аппаратного буфера
В случае с драйверами WaveRT (Windows Vista) этот флажок подписан как «Режим извлечения (WaveRT)».
Доступ к аппаратному буферу обычно встречается только в драйверах типа «WavePCI». Другие типы WDM-драйверов, как правило, не дают прямого доступа к аппаратному буферу. Самое большое преимущество при использовании аппаратной буферизации в том, что основные вычислительные ресурсы системы расходуются значительно меньше.
Основные параметры, влияющие на производительность аппаратного буфера, — «Размер буфера ASIO» и «Смещение в буфере» (п. 7). Аппаратная буферизация лучше работает с мелким буфером ASIO, нежели с крупным. Для начала попробуйте установить размер буфера на 128 или 256 сэмплов.
Возможно совместное использование устройств с доступом к аппаратному буферу и без доступа, но это не рекомендуется. Если аппаратная буферизация не поддерживается каким-либо устройством, то возникает отчётливо слышимая задержка в сотню-другую миллисекунд.
«Режим извлечения (WaveRT)»
Есть два основных метода доступа к устройствам WaveRT. «Режим извлечения» (pull-mode, «режим событий») и «режим помещения» (push-mode, «режим опроса»). Последний поддерживается всеми драйверами WaveRT и всеми версиями платформы. В отличие от него режим извлечения был довольно поздно документирован Микрософтом и потому работает далеко не везде.
Если флажок не поставлен, то ASIO4ALL никогда не будет использовать этот режим. Иначе будет использовать его по возможности. Режим извлечения лучше синхронизирован и считается технически более совершенным, чем режим помещения.
Драйвер ASIO4ALL версии 2.8 работал так, как если бы флажок был установлен. Если при работе с установленным флажком проблем не возникает, то следует оставить этот режим для большей производительности.
7. Число буферов ядра / смещение в буфере
Если аппаратная буферизация не используется, то этот параметр отвечает за число буферов на выходе. Каждый дополнительный буфер увеличивает задержку в соответствии с размером.
Поэтому изменять значение по умолчанию, равное двум, следует только на слабых системах, на которых трудно поставить мелкий размер буфера ASIO.
Если же аппаратная буферизация используется, то параметр отвечает за величину зазора в миллисекундах между позицией, где ASIO4ALL будет записывать данные (и где будет происходить их чтение), и позицией, которую ASIO4ALL считает текущей позицией чтения или записи. Это звучит сложно до тех пор, пока вы не видите код, который всё это рассчитывает:)
Общее правило звучит так: с более высокими значениями увеличивается и стабильность, и задержка, с более низкими эффект обратный.
В звуковых картах, построенных на базе Envy24, может быть параметр «DMA Buffer Transfer Latency» (задержка при передаче данных в буфер с прямым доступом к памяти) или что-то в этом роде. Этот параметр следует ставить на минимальное значение.
8. Преобразование между 44.1 и 48 Кгц
ASIO4ALL может в реальном времени преобразовывать частоту дискретизации от 44.1 КГц в 48
КГц и обратно. Преобразование происходит автоматически в случаях, когда ASIO4ALL открывается в режиме 44.1 КГц, а WDM-драйвер не поддерживает эту частоту.
В некоторых случаях драйверы стандарта AC97 могут поддерживать частоту 44.1 КГц, преобразовывая её самостоятельно. Однако преобразование выполняется с довольно сомнительным качеством и проблемами со стабильностью. Чтобы избавиться от этого, включите данный параметр. Как минимум с одной из версий WDM-драйвера SoundMAX (smwdm.sys) этот параметр обязательно должен быть включён, чтобы частота 44.1 КГц вообще поддерживалась.
9. Принуждение к работе WDM-драйвера в 16-разрядном режиме
Этот параметр работает только с теми драйверами, которые сообщают о возможности работы с потоком разрядностью более 16 бит (и меньше 24), но фактически отказываются от этого.
Примером такого драйвера является SigmaTel AC97.
Правила оптимизации в общих случаях
Игра вживую на программных синтезаторах.
В этом случае звуковые входы вам не нужны. Поэтому их следует отключать, чтобы при меньшем размере ASIO-буфера стабильность была выше. Вместе с ними следует отключать и лишние выходы. Для этого нужно переключить панель управления в расширенный режим и раскрыть список WDM-устройств — там будут перечислены отдельные интерфейсные единицы.
Компьютер в роли эффект-процессора.
В этом случае звуковые входы нужны. Но, как всегда, неиспользуемые каналы следует отключить.
Не используйте возможность преобразования частоты, если нет такой необходимости.
Компьютер как обычный секвенсор.
Здесь стабильный звук без разрывов даже при максимальной вычислительной нагрузке важнее мелкой задержки. Поэтому рекомендуется умерить аппетит от мелкой задержки и увеличить размер буфера до значения, комфортного с тем набором инструментов и эффектов, который вы наиболее часто используете. Это особенно важно при записи звука, когда щелчки от опустошения буфера не просто раздражают, а напрямую портят результат вашего труда. Если используемый вами секвенсор поддерживает компенсацию задержки, то для правильного размещения записываемых фрагментов её необходимо настроить в расширенном виде панели управления.
Когда задержка вовсе не играет роли.
В некоторых конфигурациях ASIO4ALL позволяет звуковому потоку обходить участки, которые могут отрицательно влиять на качество звука. Поэтому любители качественного звука предпочитают использовать ASIO-интерфейс вместо DirectSound или MME, которые нередко искажают данные. При прослушивании музыки задержка не играет никакой роли, а об использовании входов вовсе не идёт речь. Поэтому входы следует просто отключить, а размер буфера поставить на максимум.
Использование «ReWuschel»
Если при установке вы отметили одноимённый пункт, то входы, предоставляемые ASIO4ALL, будут доступны в ReWire-приложениях. Смысл в этом есть, когда программа поддерживает только ASIO-выходы, но при этом имеет полноценную поддержку ReWire — например, Reason.
Учитывайте, что с установленным компонентом ReWuschel вы не сможете пользоваться ReBirth в Reason. Чтобы это стало возможно, необходимо будет переустановить ASIO4ALL без ReWuschel.
Возможные неполадки и способы их устранения
ASIO4ALL представляет себя приложениям как автономный драйвер, но в некоторых конфигурациях фактически таким не является. Поэтому некоторые проблемы могут возникать не по его вине, даже если внешне это выглядит иначе. Особо можно отметить ситуацию, когда вы меняете состав устройств и их каналов в панели управления ASIO4ALL. При этом изменяются количество и имена каналов, которые предоставляются приложению. Поэтому рекомендуется перезапускать приложение после изменений в составе устройств и каналов, если у вас есть подозрения в том, что программа не справляется с этими изменениями «на лету».
Наиболее распространённые проблемы и их решения:
ASIO4ALL отсутствует в списке драйверов.
Есть две возможные причины. Первая состоит в том, что программа не поддерживает ASIO.
Вторая в том, что драйвер был установлен от имени пользователя с недостаточными привилегиями. В последнем случае необходимо установить ASIO4ALL от имени администратора.
После установки ASIO4ALL уже не требует прав администратора для работы.
Устройство помечено как недоступное или неподконтрольное, даже если оно больше нигде не используется.
Стоит отдельно удостовериться в том, что устройство не занято чем-то вроде «Программного синтезатора звукового» в вашей MIDI-конфигурации. Если есть основания полагать, что такой программный синтезатор является причиной проблемы, то попробуйте перезапустить приложение, предварительно перенастроив его.
Некоторые драйверы не успевают вовремя освободить устройство при переключении с них на ASIO4ALL.
Если устройство поддерживает «горячее отключение» (USB / FireWire / PCMCIA), то закройте панель управления ASIO4ALL, отключите устройство, подключите его вновь и откройте панель управления.
Звук в другом приложении пропадает при активности ASIO4ALL.
Так задумано. Близость к аппаратной составляющей подразумевает обход программных микшеров Windows. Без программных микшеров, а также их задержек и порчи звука, вы остаётесь наедине с аппаратной частью устройства, которая нередко лишена каких бы то ни было возможностей микширования нескольких потоков.
Измерители свидетельствуют о наличии звука и всё вроде проигрывается, но фактически звука нет (характерно для Windows Vista)
В драйверах устройств наподобие «High Definition Audio» SPDIF-выходы нередко поставлены перед аналоговыми выходами. Как следствие, первые два (или более) ASIO-канала выведены на SPDIF-интерфейс. Можно переназначить каналы в приложении. Если интерфейс SPDIF не нужен вообще, то можно попробовать отключить его.
Изменения, сделанные в панели управления из одного приложения, не распространяются на другие приложения
… и между разными пользователями то же самое. Так и должно быть. ASIO4ALL хранит настройки отдельно для каждой программы и для каждого пользователя. Это позволяет работать одновременно нескольким экземплярам ASIO4ALL, если они не назначены на одно и то же устройство. Кроме того, это предохраняет пользователей от изменения настроек друг друга, что особенно важно там, где одним компьютером пользуются несколько человек под разными учётными записями.
Величина задержки, отображаемая, например, в Cubase SX3, не соответствуют размеру буфера, заданному в панели управления ASIO4ALL.
ASIO4ALL поддерживает компенсацию задержки, если это реализовано в хост-программе. Эта возможность ещё дорабатывается и, время от времени, в неё будут вноситься исправления.
Значения, сообщаемые программе, это не только та задержка, которую вносит ASIO4ALL, а общая задержка по всей системе. Поэтому то, что отображается в программе, и то, что отображается как размер ASIO-буфера — просто не одно и то же.
В более ранних версиях ASIO4ALL общая задержка не определялась и, потому, отображаемое значение могло быть несколько ниже. Фактические же задержки как минимум не стали больше, чем с предыдущими версиями, и теперь они не возрастают при увеличении вычислительной нагрузки!
© 2004–2009, Michael Tippach.
Все торговые марки являются собственностью их владельцев и в данном руководстве используются исключительно для идентификации.
Пер. с англ.: Петров Егор (entrase@ya.ru), © 2009
Оглавление
Наш сайт является помещением библиотеки. На основании Федерального закона Российской федерации «Об авторском и смежных правах» (в ред. Федеральных законов от 19.07.1995 N 110-ФЗ, от 20.07.2004 N 72-ФЗ) копирование, сохранение на жестком диске или иной способ сохранения произведений размещенных на данной библиотеке категорически запрешен . Все материалы представлены исключительно в ознакомительных целях.


















