Audiophile's Software

OpenAL вывод в foobar2000, Windows 7 и Creative X-Fi

Дата обновления: 16 Мая 2012
2012-05-16T13:51
Audiophile's Software

Совсем недавно в свет вышел новый плагин для foobar2000 – OpenAL Output (foo_dsp_openal). Интересно, что название явно говорит о том, что это DSP (обработчик), а не плагин вывода. Что ж, давайте посмотрим:

Действительно, это DSP, т.е. фактически он выхватывает поток в формате 32–bit float из цепочки аудиотракта, преобразовывает его в 16– или 32–битный формат с фиксированной точкой и передает драйверу OpenAL:

Кстати, автор плагина пишет, что 32–битный вывод доступен только на некоторых картах Creative (сам же он тестировал плагин на карте Creative Sound Blaster X–Fi XtremeMusic под Windows 7 x64). У меня, на XtremeGamer, всё также работает. Единственное, что касается вывода – тут два варианта: или поставить Null Output (т.к. звук выводится еще из цепочки DSP), при этом практически не работает осциллограмма (Oscilloscope); либо поставить вывод на другую карту, или на это же карту, но отключить звук для foobar2000 в микшере Windows 7 (если не отключить – будет играть два потока сразу, с небольшой задержкой – звучит как эхо):

Напомню, чем интересен OpenAL: в прошлом году я писал статью Как вернуть качественный звук в Windows 7 — побитовый вывод, аппаратные эффекты, и там была вот такая схемка:

Очевидно, что прямой доступ к аппаратной части карты имеется только через интерфейсы ASIO и OpenAL. Но дело в том, что поддержка ASIO есть далеко не у всех карт, а OpenAL к тому же имеет доступ к аппаратным 3D буферам (3D приложения загружают в них звуки, также передавая координаты каждого источника звука, а карта уже выполняет микширование всех звуков в соответствии с этими данными, накладывает эффекты, и на выходе имеем объемный звук).

Еще недавно я был весьма озадачен одним явлением. До сих пор я думал, что выводя звук через WASAPI Exclusive на карту Creative X–Fi, мы получаем доступ ко всем аппаратным эффектам (которые накладываются на стерео поток идущий с Kernel Streaming Transport). Но это оказалось не совсем так. Яркий пример тому – X–Fi CMSS 3D для 2.0 конфигурации колонок:

Карта находится в режиме Entertainment, ползунок изображенный на рисунке должен регулировать эффект корректировки стереопанорамы (уже/шире), однако при выводе через WASAPI Exclusive этот эффект просто не работает! Но в то же время, он работает для конфигурации «Headphones» – парадокс. Если выводить звук через WASAPI Shared (DS: звуковая карта), эффект для 2.0 работает только при включенных эффектах в панели управления Windows 7:

Напомню: фактически это включение софтовой эмуляции эффекта CMSS 3D, по качеству намного хуже аппаратной обработки процессором X–Fi.

Ну а при выводе через OpenAL всё работает как часы, т.е. получается, что для данного эффекта нужен доступ к аппаратным буферам (в XP через них работало практически всё, доступ осуществлялся через DirectSound/DirectSound3D).

Подытожу: плагин интересный, достоин внимания, и я очень надеюсь, что его доведут до ума, сделав из него полноценный плагин вывода.


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

X-Book: большой каталог ноутбуков, удобный поиск и навигация. Здесь Вы можете ознакомиться с ценами на ноутбуки, купить ноутбуки в Москве, заказать ноутбук через интернет.

 
   
Добавил: Audiophile | Просмотров: 13666 | Рейтинг: 5.0/5, голосов: 2
Комментариев: 10
Добавлять комментарии могут только зарегистрированные пользователи. [ Регистрация | Вход ]
0   Спам
[10] KShibaev (19 Февраля 2016 03:15)
Основная мысль этого комментария, что OpenAL реально работает. Ниже я уточняю после чего он заработал.



0   Спам
[9] Zelemhan77 (13 Октября 2014 12:47)
Не так давно взял себе SB Z. С выводом звука намучился, так как плагин работал через раз: то вообще отказывался что-либо воспроизводить, то в разы занижал громкость, то еще различные мелочи. И работал лишь через 16bit fixed point. Сегодня нашел в сети такую штуку как Openal Soft и SDK. Почитал, заменил библиотеки  и теперь у меня в настройках самого плагина отображается вывод лишь через OpenAl Soft, но зато все работает теперь через 32 bit и звук не тормозит, не дублируется. Вообщем, не знаю чего я наделал, но пока полностью доволен звуком на своей аппаратуре...
0   Спам
[7] vlad196 (10 Июля 2013 01:08)
В более новых версиях обработчика появилась возможность регулирования положения колонок и центра позиции, и когда пытался его настроить, то возник вопрос:
"А в чём измеряется позиция в 3D режиме? Просто как-то положение колонок измерял в метрах, а позицию правильную по слуху в футах подошло. Где правда?"
(ЗЫ у меня X-fi Titanium и настройка положения колонок в настройках самой карты на слух вообще никак не меняется)
0   Спам
[8] Audiophile (10 Июля 2013 01:46)
Audiophile
в 3D режиме оно создает виртуальные источники, расположенные на заданном расстоянии (похоже, в метрах). Создавать 2 виртуальных динамика при двух реальных - абсурд. И вообще, 3В режим толком ничего не дает кроме лишней обработки. сведение 5.1 в стерео и в обычном прекрасно выполняется, с окружением.

Положение колонок в THX настраивайте, там расстояние влияет и угол.
0   Спам
[6] MusicFan (07 Сентября 2012 15:06)
MusicFan
У меня в таком режиме EAX не работает. Точнее, он вроде как включается, но на слух никаких изменений. Звуковая - x-fi titanium fatality pro. 32-bit вывод работает
0   Спам
[5] Redeggs (01 Июля 2012 22:49)
Redeggs
Интересный плагин. Очень хорошее качество звука при выводе на USB ЦАП + усилитель д/н + приличные наушники. Плохо только, что прерывается звук при , например, открытии браузера и др. окон, при прокрутке, переключении треков и т.п. Воспроизведение продолжается, а звук пропадает.
0   Спам
[4] fastpoke (10 Июня 2012 15:22)
что за жесть у этого плагина в спектре? изменение каких либо настроек и сброс по дефолту ни к чему приводит, кстати эти помехи не слышны, это глюк визуализации может быть?

http://s019.radikal.ru/i620/1206/0c/c9845b9e37ac.png
Ответ: не замечал у себя подобного...
0   Спам
[3] rahmad (20 Мая 2012 23:16)
Кстати, полноценого плагина вывода (наподобие уже существующих WASAPI или ASIO) ожидать, думаю, не стоит, во всяком случае до тех пор, пока автор foobar-a (Peter Pawlowski) снова не включит включит эту возможность в SDK (software development kit). Уже существующие плагины вавода написаны им самим.
Ответ: Зачем было выключать, интересно.
0   Спам
[2] rahmad (20 Мая 2012 22:51)
Всё дело в том, что в статье в ссылке вместо дефиса стоит тире. Правильная ссылка http://sourceforge.net/projects/foobar-openal/
0   Спам
[1] unknown2304 (20 Мая 2012 21:33)
а на данный момент http://sourceforge.net/projects/foobar%E2%80%93openal/ - Whoops, we can't find that page.
Ответ: ап