Технология создания 3D звука

         

Перейдем к практике



Перейдем к практике

Тестовая ситема:

  • Intel Celeron 300A o/c 450 MHz
  • Chaintech 6BTM (i440BX)
  • RAM 256 Mb PC100 от SEC
  • Chaintech Desperado RI41 (RIVA TNT2, 32 Mb) drv. Ref. 3.56
  • HDD Fujitsu 6.5 Gb UDMA33
  • DVD ROM Hitachi GD2000
  • Sound Cards:
    • Diamond MX300 (drv. 2048b14),
    • Creative SB Live! Player 1024 (Liveware 3.0),
    • Aztech PCI 368DSP (drv. 1.25)
  • Speakers: Cambridge Sound Works FPS1000
  • Headphones: Sennheiser HD590
  • Windows98+DX7

Сначала скажем немного о воспроизведении MIDI. Чип ThunderBird 128 поддерживает на аппаратном уровне 64 голосовую полифонию. При этом в стандартной панели управления у вас нет возможности подгрузить какой-либо внешний звуковой банк. По умолчанию подгружается звуковой банк tbird128.dls, входящий в поставку с картой 368DSP.

Как видно, возможности по настройки ограничены туманными фразами Studio Quality, при этом имеется возможность добавить такие эффекты, как chorus и reverb, Game и Max Polyphony. На слух я не заметил какой-либо существенной разницы в настройках. Возможно, дело в моем посредственном слухе.

Кроме этого, в комплекте с картой 368DSP идет программный синтезатор от Yamaha - SoftSynthesizer S-YXG50 v.3.0.02.02, который обеспечивает воспроизведение MIDI файлов с использованием 256 голосовой полифонии. Синтезатор от Yamaha предоставляет вам выбор из 676 различных инструментов и трех типов эффектов (reverb, chorus и их комбинации). Вы можете выбрать степень загрузки CPU при использовании синтезатора.




Звучание, которое обеспечивает программный синтезатор от Yamaha, очень насыщенно. Поэтому, если кто-то хочет слушать MIDI, он не будет разочарован. Кроме того, загрузка CPU находилась в пределах 30% на моей системе при максимальном качестве и количестве голосов.

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

Замечу, что все тесты проводились в наушниках и через две колонки с сабвуфером. Только при прослушивании CD Audio и просмотре DVD видео использовалась конфигурация из четырех колонок и сабвуфера. Дело в том, что полноценно 4 колонки используются только при прослушивании CD Audio или звука с DVD, во всех остальных ситуациях в силу особенностей работы кодека на тыловые колонки идет дублирование звука фронтальных колонок. При этом уровень громкости на тылах очень низкий и не регулируется, а качество звука очень плохое, порой четко слышен фон типа белого шума. Поэтому через четыре колонки звук в играх слушать не рекомендуется.

В старых играх, которые используют только интерфейс DirectSound без поддержки EAX 1.0, вы сможете задействовать движок QEM, позволяющий воспроизводить эффекты реверберации. Для этого нужно лишь зайти в панель управления карты 368DSP и выбрать желаемый тип реверберации для игры. Реверберация работает, например, в Quake2, однако она одинакова для всей игры, и мне окраска звука не понравилась. Вместе с тем, вы можете задействовать режим 2D to 3D, что, по сути, представляет собой вариант QXpander, т.к. применяются те же алгоритмы Q1. При прослушивании в наушниках можно задействовать только QEM.

Если игра поддерживает EAX 1.0, то нужно включить поддержку QEM в панели управления, но не выбирать какой-либо специальный тип реверберации, а оставить тип Generic, чтобы акустика изменялась в игре динамично, при переходе с уровня на уровень или даже смене помещения.

Тест Minerva 1.08 не показал ничего определенного, определив число поддерживаемых звуковых потоков (2D и 3D) в 256, при этом при воспроизведении звуков с микшированием наблюдались трески и изменения в тональности звука. Я это связываю с несовершенством самого теста Minerva.

Мы измерили АЧХ карты с использованием теста Sound Analyser, для чего линейный выход и вход были соединены петлей. Каждое измерение проводилось по пять раз, и в итоге был выбран наилучший результат.

Как видно, график АЧХ у карты 368DSP довольно ровный, что хорошо и обуславливается, прежде всего, качеством используемого кодека от SigmaTel.

Тест ZD Labs Audio Winbench99 использовался для определения величины загрузки CPU, а также для субъективных оценок звука с использованием интерфейсов DirectSound и DirectSound3D.

Тесты на субъективное восприятие звучания были пройдены успешно. Никаких особых замечаний у меня нет. Звук позиционировался хорошо, хотя даже в наушниках сфера звучания была смещена несколько вперед.

Все тестируемые карты поддерживают 32 аппаратных потока DS3D. Я приведу результаты теста на процент загрузки CPU для частоты дискретизации 44.1 КГц с точностью 16 бит:

MX300SB Live! PlayerPCI 368DSP
 
Static: Voice 82.413.225.07
Static: Voice 162.533.495.01
Static: Voice 322.675.116.04
Streaming: Voice 82.593.45.01
Streaming: Voice 162.593.525.08
Streaming: Voice 322.715.115.99

Видно, что карта на базе Vortex2 демонстрирует очень низкий процент загрузки CPU системы, а карта на базе Thunderbird128 показала в этом тесте самый высокий процент загрузки CPU. Тем не менее, даже 6% загрузка CPU это очень и очень мало. Замечу, что тесты при использовании API DS продемонстрирвали аналогичные показатели.

С помощью демо программ, входящих в комплект поставки, нам предлагается оценить восприятие звука с использованием движка позиционирования звука Q3D от QSound. Отмечу, что демо запускаются с CD, т.е. не переписываются на ваш винчестер при инсталляции.

Демо Space Junk представляет собой виртуальный мир, в котором вы можете передвигаться. В этом мире вы встречаете объекты, которые также могут двигаться и все эти объекты издают звуки. Всего вам может встретиться до восьми различных источников звука. Перемещаясь в виртуальном мире, вы можете периодически закрывать глаза и сравнивать насколько правильно вы определяете тип и местоположение источника звука. У вас есть возможность отключить аппаратную поддержку звука и послушать, как со своей работой справляется программная эмуляция.

Вторая демонстрационная программа называется Wumpus. Эта программа также рассчитана на демонстрацию позиционирования источников звука с помощью Q3D. Оригинальность идеи в том, что вам не нужно закрывать глаза, чтобы оценить качество позиционирования. Дело в том, что демо представляет собой имитатор аркадной игры, когда вам нужно отстреливать этих самых вумпусов, которые не видны, но вы их можете слышать. Фактически, вы стреляете ориентируясь только по слуху.

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

Чтобы оценить уровень загрузки CPU в реальных приложениях, мы воспользовались игрой Heretic II, которая поддерживает интерфейсы A3D 2.0 и DS3D+EAX 1.0.

Мы использовали демо ntdemo.hd2 (120 Kb) и игру Heretic II с патчем 1.4 (с более старшими патчами демо не работает). Использовалась частота дискретизации 22КГц в установках игры (положение High).

Сначала мы запустили игру с использованием режима Software Rendering в разрешении 320х240 при 16 bpp, т.е. когда расчет всей графики возложен на CPU системы и вот какие результаты получились:

Без звука368DSP EAX 1.0SB Live! EAX 1.0 MX300 EAX 1.0MX300 A3D 2.0MX300 A3D 2.0 w/o WTr
 
Software Rendering 320x240@16bpp39.8 fps37.5 fps37.5 fps34.7 fps32.6 fps34.9 fps

Поддержка Wavetracing (WTr) отключалась с помощью команды "s_geometry 0"

Замечу, что со старой библиотекой a3dapi.dll (v.2.10) при использовании A3D 2.0 получилась величина 18.5 fps. Новая библиотека a3dapi.dll имеет версию 2.25.

Теперь включим аппаратное ускорение для вывода графики через API OpenGL и посмотрим, как изменятся цифры:

Без звука368DSP EAX 1.0SB Live! EAX 1.0 MX300 EAX 1.0MX300 A3D 2.0MX300 A3D 2.0 w/o WTr
 
OGL 640x480@16bpp82.1 fps74.6 fps73.8 fps66.5 fps63.3 fps67.4 fps
OGL 1024x768@16bpp58.8 fps58.1 fps58.1 fps56.9 fps56.9 fps57.0 fps

Итак, какие выводы можно сделать на основе полученных результатов. Все звуковые карты, которые использовались при тестировании, в той или иной степени загружают CPU системы. В общем, ничего нового в этом нет. Видно, что сильнее всех загружает CPU расчет распространения звуковых волн с учетом данных о геометрии среды (Wavetracing). С другой стороны, мало кто играет в игры в Software Rendering режиме. При использовании аппаратного ускорения расчета графики, ресурсы CPU высвобождаются. При этом в разрешении 640x480 производительность видеокарт ограничивается возможностями CPU и тут разница в степени загрузки CPU при воспроизведении звука заметна на глаз. Зато в разрешении 1024х768 ограничивающим фактором производительности в графике является уже не CPU, а сама графическая карта и разница в значения fps при использовании разных звуковых карт становится минимальной.

Отметим, что карты SB Live! и 368DSP загружают CPU примерно одинаково.

Разумеется, мы использовали игры для того, чтобы оценить возможности звуковой карты 368DSP. Напомню, что чип ThunderBird 128 аппаратно поддерживает работу движка позиционирования звука в 3D пространстве Q3D, который работает через API DS3D. Кроме того, мы задействовали движок реверберации QEM, который рабоатет через интефейс EAX 1.0.

Мы слушали звук через колонки и наушники в нескольких играх: Heretic II, Half Life, Unreal Tournament, Baldur's Gate, Need For Speed: HS, Thief: The Dark Project и еще в некоторых. QSound использует собственные оригинальные решения при воспроизведении звука с помощью своего движка Q3D. Можно констатировать, что лично мне очень понравилось звучание в играх при воспроизведении через две колонки. На мой взгляд при воспроизведении через две колонки 368DSP обеспечивает звучание лучше, чем Live! и примерно на одинаковом уровне с MX300. Можно похвалить QSound за качественно сделанный движок Q3D. Звучание в наушниках карты 368DSP уступает звучанию MX300, но лучше, чем звук, который воспроизводит Live!.

Если оценивать качество реверберации, то я не заметил отличий между звучанием, которое воспроизводит карта 368DSP и звучанием в тех же играх, которое обеспечивает SB Live!. Хотя порой звучание реверберации, воспроизводимой картой 368DSP казалось более жестким, чем у Live!. При этом отличия заключаются скорее не в качестве реверберации, а в общих ощущениях от звука. Подчеркну, что каждый слушатель воспринимает звук по-своему. То, что не заметил я, может быть заметите вы и наоборот.

Карта 368DSP поддерживает A3D 1.0. Эта поддержка не аппаратная, а программная и обеспечивает ее движок Q3D. Работает это за счет перевода вызовов A3D 1.0 в вызовы функций из DS3D. Мы проверили поддержку A3D 1.0 в игре Thief. Можно констатировать, что все работает прекрасно. Жаль, что нет поддержки A3D 2.0, но пока Aureal не предоставляет возможность реализовать такую поддержку производителям конкурирующих звуковых чипов. Замечу, что нет гарантии того, что во всех играх, поддерживающих A3D 1.0 карта 368DSP будет корректно работать, например, взяв Heretic II без установки патчей добавляющих поддержку A3D 2.0 мне не удалось запустить игру со звуком через API A3D 1.0.

Замечу, что поддержка работы через A3D только версии 1.0 не позволяет карте 368DSP на равных конкурировать с картами на базе чипа Vortex2, которые аппаратно поддерживают A3D 2.0. На горизонте уже A3D 3.0 и возможно Aureal пересмотрит свою позицию по закрытости A3D 2.0.

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

Ожидается, что QEM 2.0 будет поддерживать работу чере EAX 2.0 и I3DL2, в которых сделан шаг в сторону большей динамики эффектов реверберации за счет добавления окклюзий и обструкций. Кроме того, EAX 2.0 и I3DL2 обратно совместимы с EAX 1.0. Посмотреть в деле как это работает можно в демо EAX 2.0 от Creative. Пока нет ясности, будет ли реализована поддержка QEM 2.0 в драйверах для 368DSP. Если такая поддержка будет, то привлекательность карты 368DSP сразу возрастет, т.к. ее жизненный цикл сразу увеличится. Пока же можно однозначно говрить лишь о том, что 368DSP хорошая современная карта, обеспечивающая прекрасный звук в играх при воспроизведении через две колонки и кокурентноспособное качество звучания в наушниках.

Так или иначе, каждая технология имеет свои плюсы и минусы. Как мне кажется, в итоге все производители звуковых чипов реализуют поддержку и реверберации и расчета распространения звуковых волн на основе геометрии среды. Осталось только дождаться этой поддержки. Судя по всему, Aureal будет первой компанией, которая будет поддерживать в своих решениях все упомянутые выше технологии. Новый API A3D 3.0 позволяет использовать эффекты реверберации одновременно с расчетом распространения звуковых волн на основе геометрии среды. Не исключено, что QSound тоже не сидит сложа руки и скоро мы увидим что-то новое. К слову, на сайте QSound предлагаются к покупке различные утилиты, позволяющие, например, проигрывать mp3 файлы с добавлением эффектов объемного звучания.

Мы послушали звук, который воспроизводит 368DSP при просмотре DVD видео и прослушивании CD Audio. Звучание понравилось. При воспроизведении через 4 колонки используется технология QMSS. Общее восприятие звука это существенно улучшает. Никакого декодирования многоканального звука не поддерживается, однако ощущения от звучания через четыре колонки очень приятные и сравнимы с ощущениями при прослушивании звука в формате Dolby ProLogic. QSound планирует в скором времени модифицировать QMSS так, что появится возможность воспроизводить любой тип звука через 5.1 акустические системы.

При использовании QXpander звук очень приличный, но две колонки звучат все таки не так, как четыре. Хотя, если вы ограничены в средствах или пространстве, то решение от QSound позволяющее воспроизводить великолепный звук через две колонки вас не разочарует.

Содержание раздела