Современные методы позиционирования и сжатия звука
и DS3D). Microsoft согласилась с нашим предложением, немного упростила наш
метод и стала распространять систему управления распределением ресурсов под
именем Voice Manager.
В чем разница между QSound, DS3D и EAX?
Прежде всего, чрезвычайно важно понимать разницу между API (который
всего лишь представляет собой набор команд) и звуковым движком
(действительный 3D звуковой процессор). Люди путаются, потому что они
думают, что API и звуковые движки это одно и тоже, а это совершенно
неверно.
DS3D содержит:
API
низкоуровневый интерфейс, работающий в режиме реального времени,
аппаратноог обеспечения 3D звука
программный звуковой движок от Microsoft, работающий в режиме реального
времени, носящий имя "Hardware Emulation Layer" (HEL, уровень эмуляции
аппаратного обеспечения)
Идея в том, что разработчик программного обеспечения пишет приложение,
используя API DS3D, который является всего лишь набором команд. Когда игра
запускается, стандартная функция DS3D ищет аппаратный ускоритель (например,
3D звуковую карту). Если такая карта найдена в системе, DS3D передает
вызовы 3D функций и звуковые потоки в звуковую карту для их исполнения и
обработки.
Каждый отдельный производитель звуковых карт с поддержкой 3D звука,
независимо от того, какая технология 3D звука используется QSound, EMU,
Aureal, CRL и т.д. делает свои звуковые карты совместимыми с набором команд
DS3D. Это означает, что игра, написанная под DS3D, будет производить
базовое позиционирование 3D звука на любой 3D звуковой плате, используя тот
звуковой движок, какой имеется. В этом прелесть DS3D; он является
универсальным API, который поддерживает звуковые движки многих
производителей.
Далее, если игра не нашла аппаратного обеспечения, т.е. 3D звуковой
карты в данной системе, тогда DS3D использует свой собственный программный
звуковой движок (HEL). Это одна из проблем DS3D; интерфейс DS3D
функционален и универсален, но HEL медлителен (поглощая при этом огромное
количество ресурсов CPU) и обеспечивает минимальные 3D звуковые эффекты,
причем только через головные телефоны. Проблема с ресурсами центрального
процессора означает, что при отсутствии аппаратного обеспечения 3D звука
производительность может пострадать в такой же степени, как падает значение
fps в играх при отсутствии графического акселератора.
Одним из продуктов компании QSound является звуковой движок для
производителей звуковых карт. Этот звуковой движок, конечно же, совместим с
интерфейсом DS3D. Конечно, процесс воспроизведения трехмерного звука
гораздо сложнее, чем то, что может эмулировать DS3D HEL, но в принципе это
верно для любой реально существующей на рынке технологии 3D звука. DS3D HEL
никогда не был рассчитан на то, чтобы быть эквивалентом 3D звуковому
движку, реализованному полностью на аппаратном уровне.
Компанией QSound также созданы комплекты для разработчиков (SDK), такие
как QMDX и QMixer. Они похожи на DS3D, так как оба содержат API (набор
команд) и модуль работающий в режиме реального времени, который
обеспечивает программную обработку и воспроизведение стерео (QMDX) или 3D
(QMixer) звука в системах не имеющих соответствующего аппаратного
обеспечения. Работающий в режиме реального времени звуковой движок в обоих
QM SDK оставляет DS3D HEL далеко позади с точки зрения производительности,
поэтому в системах без аппаратного обеспечения для воспроизведения звука
игры будут идти с хорошими значениями fps.
Тем не менее, также как и DS3D, вместе QMDX и QMixer поддерживают DS3D-
совместимые ускорители, если какой-либо из них присутствует в системе. Оба
эти API переводят команды напрямую в формат DS3D с тем, чтобы использовать
имеющееся аппаратное обеспечение. Так, в системе с аппаратным ускорителем,
интерфейсы QM больше чем просто оболочка DS3D, обеспечивающая удобное
использование набора мощных функций и значительно облегчающая задачи
программиста, но в то же время эти интерфейсы сохраняют универсальную
поддержку аппаратного обеспечения рассчитанного только на DS3D. В
действительности, наши интерфейсы идут на шаг дальше, потому что (как было
показано выше) их собственные звуковые движки могут быть использованы в
дополнение к имеющемуся аппаратному обеспечению, например, если 3D звуковая
карта поддерживает слишком мало звуковых каналов.
QSound создала свой собственный движок реверберации звука, который
совместим с интерфейсом EAX. Этот движок уже поставляется нашим OEM
клиентам для использования в новых Q3D продуктах. Мы также добавили
поддержку набора команд EAX в наши комплекты разработчиков (SDK): QMDX и
QMixer.
Если QSound не использует HRTF, как вы можете обеспечить позиционирование
3D звука на двух колонках?
Прежде всего, вы должны понять, что любой 3D звуковой процесс это ничто
иное, как алгоритм фильтрации. Допустим, что существует "идеальный" или
"совершенный" алгоритм фильтрации для точного расположения источника звука
в заданном месте в пространстве, однако вполне вероятно, что существует
больше чем один способ попытаться создать такой фильтр. HRTF является одним
из таких способов.
Если говорить о звуковых движках от QSound в общем (о Q3D, QSoft3D,
QMixer и т.д.), то мы никогда не использовали обработку звука алгоритмами
HRTF для воспроизведения 3D звука. HRTF обеспечивает превосходное
восприятие для бинаурального 3D звука (т.е. рассчитанного на прослушивание
в наушниках) и мы применили эти принципы при разработке наших звуковых
движков, создающих звук для наушников. Тем не менее, реализация алгоритма
cross-talk cancelation, необходимого для преобразования процесса HRTF для
воспроизведения на колонках непрост, несовершенен и дорог в реализации.
Единственная причина того, что HRTF столь популярный метод в том, что он
является общедоступным! Использование в рекламе термина HRTF позволяет
легко ввести в заблуждение при объяснении технологии и звучит термин так,
что создает ощущение вещи, которая точно должна работать, а значит, продукт
легче продавать.
Итак, при создании функций обработки звука, имелась возможность вывести
средние и сбалансированные особенности восприятия многих слушателей, при
воспроизведении звука через различные типы акустических колонок, а также
при различных способах их расположения. Для лучшей оптимизации и перехода
на следующий уровень (это явилось толчком к успеху в области
профессионального звука) использовалась помощь лучших профессионалов,
занимающихся звукозаписывающим бизнесом, поэтому алгоритмы не просто
работают, но обеспечивают настолько натуральное звучание, насколько это
возможно.
QSound выбрала, по моей искренней оценке, крайне хороший подход,
результатом чего стала возможность располагать источники звука как минимум
эквивалентно, а в большинстве случаев лучше, чем это позволяет сделать
применение стандартной схемы HRTF+CC. Даже при едва различимых звуковых
эффектах идущих со стороны, область хорошей слышимости (sweet spot) немного
расширена, но самое главное, особенно для реальных пользовательских
приложений, это значительно более низкая стоимость реализации технологии.
Причина того, что подход обеспечил нам решение типа "кратчайшее расстояние
между двумя точками" в том, что процессы HRTF+CC включают в себя гораздо
больше вычислений, чем требуется для нашей технологии.
После того, как я сказал все это, могу ли я сказать, что существует
значительная разница между тем, как слышится 3D звук при использовании
технологии QSound и тем звучанием, которое создается при использовании
HRTF+CC? Для того чтобы все работало и работало хорошо, были потрачены годы
исследований и куча денег. Отложим на время мою шляпу "профессионала по
звуку" и вот что я вам скажу. Я искренне считаю что, особенно в видео
играх, средний слушатель не заметит большой разницы.
Единственная вещь, раздражающая меня, заключается в том, что некоторые
поставщики 3D звуковых технологий базирующихся на HRTF+CC делают
возмутительные заявления о производительности, не просто предполагая, а,
твердо заявляя о том, что они могут располагать источники звука идеальным
образом, в любом месте трехмерного пространства, например под вашим стулом.
Это откровенная ложь. Очень плохо, что некоторые компании испытывают
необходимость обманывать любителей поиграть в игры таким вот образом. Все
что может обеспечить 3D звук это действительно здорово и гораздо лучше, чем
обычное стерео звучание, но когда люди покупаю разрекламированные поделки,
не обеспечивающие того результата, который обещал производитель, они
начинают думать что 3D звук сам по себе это большой обман. Это удручает.
В чем разница между EAX и Wavetracing?
Кроме основной возможности по позиционированию источников звуков в 3D
пространстве, другой уровень реализма может быть обеспечен за счет имитации
воздействия окружающей среды на звуки, которые мы слышим. Поэтому, с
развитием продуктов позиционирования 3D звука и с ростом мощности
настольных компьютеров, мы наблюдаем появление поддержки этих возможностей
в современных звуковых картах.
Когда звук распространяется в пространстве, наряду с достижением наших
ушей напрямую, он может отражаться от стен и других поверхностей. Звук
также может проходить сквозь стены, частично или полностью поглощаясь, и
другие объекты. Все это влияет на то, что мы слышим. В обычном случае,
отражения звуков на большом пространстве может в реальности создавать ясно
различимые эха, но более часто, результатом является то, что мы называем
"reverberation" (реверберация, т.е. многократно отраженные звуки) или
"reverb" для краткости. Reverb это совмещение множества эхо в тесном
пространстве так, что мы слышим их как единую последовательность или
"tail", которая следует за исходным звуком и затухает, причем степень
затухания напрямую зависит от свойств окружающего пространства, в котором
распространяется звук.
Wavetracing и EAX дают разработчикам программного обеспечения два
способа создавать звуковые эффекты, связанные со свойствами окружающей
среды ("environmental") или виртуальной акустикой ("virtual acoustic"), для
воспроизведения взаимодействия звуков с реальной окружающей средой.
Технология Wavetracing является частью API A3D 2.0 и основывается на
использовании упрощенной версии геометрии графической сцены игры, передавая
данные о геометрии сцены в звуковую карту на чипсете от Aureal. После того,
как будут обсчитаны реальные пути распространения нескольких первых
отраженных звуков (обычно вычисляют пути распространения лишь нескольких
первых отраженных звуков), анализируется то, как звуки проходят сквозь
препятствия, частично или полностью поглощаясь. Затем происходит рендеринг
звуковой сцены, т.е. точное определение мест расположения источников звука
в пространстве и расчет путей достижения звуков (прямых, отраженных и
прошедших сквозь препятствие) ушей слушателя.
EAX это гораздо более простой интерфейс, который использует обобщенную
модель реверберации, такого же типа, что используется в профессиональной
музыке и звуковом сопровождении фильмов в течение многих лет. Это сокращает
возможности по управлению reverb до ключевых параметров, которые могут быть
использованы для сведения их свойств до значений синтезированной
пространственной акустики в терминах размера, типа поверхности и т.д.
Сравнение, насколько качество реверберации влияет на ощущения от игры,
по сравнению с качеством такого же важного фактора, как звуковой движок, по
моему скромному мнению не выявит явного победителя. Другими словами, оба
способа дают возможность создавать хорошие звуковые эффекты.
Самая большая разница между этими двумя способами заключается в
интерфейсах, которые пользователь никогда не слышит, зато разработчик
должен использовать какой-то из них, или оба сразу, для написания игры,
чтобы задействовать звуковую карту!
Интерфейс EAX имеет преимущество в том, что он много, много проще в
использовании и дает возможность для простой настройки и манипуляциями
("tweaking") параметрами reverb. Кроме того, EAX это открытый протокол, а
это означает, что другие создатели 3D технологий, включая CRL/Sensaura и
QSound будут поддерживать EAX одновременно и в своих API и в своих звуковых
движках. Итак, с точки зрения разработчика приложений, желающих перейти на
следующий уровень в воспроизведении 3D звука, EAX прост в использовании и
имеет потенциал в более широкой аппаратной поддержки, чем запатентованная
технология Wavetracing от Aureal.
В качестве API, EAX имеет несколько недостатков в своей первой версии,
самый явный из которых это отсутствие механизма расчета прохождения звука
сквозь препятствия. Правда, в EAX 2.0 этот недостаток должен быть устранен.
Промышленное объединение, называемое IASIG (в него входят QSound,
Creative Labs, Aureal и другие поставщики 3D технологий, производители и
т.д.) разрабатывает на основе EAX новую спецификацию. Основная идея
разработки заключается в создании стандартного открытого интерфейса,
который мы все сможем использовать. Есть все основания надеяться, что новый
стандартный интерфейс даст разработчикам возможность так же легко создавать
приложения, как это обстоит в случае с EAX. При этом новый стандартный
интерфейс будет свободен от недостатков присущих EAX.
Aureal участвует в разработках IASIG, поэтому мы можем смело
предполагать (или хотя бы надеяться!), что, в конечном счете, драйверы для
чипсетов от Aureal будут создаваться совместимыми с новым открытым
стандартом. Я ожидаю, что инженеры Aureal будут и в дальнейшем предлагать
разработчикам приложений возможности по использованию геометрических
расчетов для определения путей распространения звука.
Кстати, нет ничего особо исключительного в звуковых API. Очень много
людей даже не представляют, что игра может использовать DS3D, EAX, A3D 2.0
или другие интерфейсы, равно как и то, что хорошее 3D звучание могут
обеспечить большинство звуковых плат и лишь расширенные звуковые эффекты и
нестандартные возможности будут использоваться только там, где они
поддерживаются. Существующее положение вещей, когда разработчикам
приходится выбирать, какой интерфейс использовать, создает массу проблем,
поэтому разработки IASIG, по созданию открытого и универсального интерфейса
очень важны.
Какая самая лучше схема воспроизведения: наушники, две колонки, четыре
колонки...?
Лучшая схема воспроизведения звука та, что вам нравится; та, что дает
вам необходимую полноту ощущений.
Каждая схема воспроизведения звука имеет сильные и слабые стороны.
Наушники хороши для воспроизведения звука, источники которого расположены в
вертикальной плоскости, сзади и с боков от слушателя. Однако головные
телефоны слабы при воспроизведении фронтального звука, т.е. когда источники
звука расположены спереди от слушателя. 3D звук на двух колонках хорошо
воспроизводится при расположении источников звука спереди от слушателя и по
бокам, но два динамика слабо справляются с воспроизведением звука,
источники которого расположены сзади и в вертикальной плоскости.
Панорамирование звука на множестве колонок хорошо справляется с
расположением источников звука спереди и сзади от слушателя и слабо с
боковым расположением, при этом нет воспроизведение звука исходящего из
источников в вертикальной плоскости.
Главная прелесть DS3D видео игр в том, что они могут создаваться без
особой заботы о том, какую схему воспроизведения вы выберете для
прослушивания. До тех пор, пока игра не будет по глупости рассчитана на
специальную технологию 3D звука и/или схему воспроизведения, вы сможете
выбирать все, что вам угодно! В действительности, расчет звуковой сцены
происходит в режиме реального времени в процессе игры, поэтому вы можете
переключаться с одной схемы воспроизведения на другую, скажем с колонок на
наушники, на лету, если конечно ваша звуковая карта поддерживает эту
возможность.
Звуковые карты имеют много разных возможностей, из которых всего лишь
одной является поддержка 3D звука. Делая выбор в пользу какой-то технологии
или продукта, не забывайте о перспективах дальнейшего использования, и, что
более важно, необходимо, чтобы выбор был вашим собственным, не поддавайтесь
влиянию мнения ваших друзей.
Обзор применяемых форматов хранения цифровых аудио данных без и с потерей
качества
Методы, используемые для эффективного сжатия цифрового звука
В настоящее время наиболее известны Audio MPEG, PASC и ATRAC. Все они
используют так называемое "кодирование для восприятия" (perceptual coding)
при котором из звукового сигнала удаляется информация, малозаметная для
слуха. В результате, несмотря на изменение формы и спектра сигнала, его
слуховое восприятие практически не меняется, а степень сжатия оправдывает
незначительное уменьшение качества. Такое кодирование относится к методам
сжатия с потерями (lossy compression), когда из сжатого сигнала уже
невозможно точно восстановить исходную волновую форму.
Приемы удаления части информации базируются на особенности
человеческого слуха, называемой маскированием: при наличии в спектре звука
выраженных пиков (преобладающих гармоник) более слабые частотные
составляющие в непосредственной близости от них слухом практически не
воспринимаются (маскируются). При кодировании весь звуковой поток
разбивается на мелкие кадры, каждый из которых преобразуется в спектральное
представление и делится на ряд частотных полос. Внутри полос происходит
определение и удаление маскируемых звуков, после чего каждый кадр
подвергается адаптивному кодированию прямо в спектральной форме. Все эти
операции позволяют значительно (в несколько раз) уменьшить объем данных при
сохранении качества, приемлемого для большинства слушателей.
Каждый из описанных методов кодирования характеризуется скоростью
битового потока (bitrate), с которой сжатая информация должна поступать в
декодер при восстановлении звукового сигнала. Декодер преобразует серию
сжатых мгновенных спектров сигнала в обычную цифровую волновую форму.
Audio MPEG - группа методов сжатия звука, стандартизованная MPEG
(Moving Pictures Experts Group - экспертной группой по обработке движущихся
изображений). Методы Audio MPEG существуют в виде нескольких типов - MPEG-
1, MPEG-2 и т.д.; в настоящее время наиболее распространен тип MPEG-1.
Существует три уровня (layers) Audio MPEG-1 для сжатия стереофонических
сигналов: 1 - коэффициент сжатия 1:4 при потоке данных 384 кбит/с; 2 -
1:6..1:8 при 256..192 кбит/с; 3 - 1:10..1:12 при 128..112 кбит/с.
Минимальная скорость потока данных в каждом уровне определяется в 32
кбит/с; указанные скорости потока позволяют сохранить качество сигнала
примерно на уровне компакт-диска.
Все три уровня используют входное спектральное преобразование с
разбиением кадра на 32 частотные полосы. Наиболее оптимальным в отношении
объема данных и качества звука признан уровень 3 со скоростью потока 128
кбит/с и плотностью данных около 1 Мб/мин. При сжатии с более низкими
скоростями начинается принудительное ограничение полосы частот до 15-16
кГц, а также возникают фазовые искажения каналов (эффект типа фэйзера или
фленжера).
Audio MPEG используется в компьютерных звуковых системах, CD-i/DVD,
"звуковых" дисках CD-ROM, цифровом радио/телевидении и других системах
массовой передачи звука.
PASC (Precision Adaptive Sub-band Coding - точное адаптивное
внутриполосное кодирование) - частный случай Audio MPEG-1 Layer 1 со
скоростью потока 384 кбит/с (сжатие 1:4). Применяется в системе DCC.
ATRAC (Adaptive TRansform Acoustic Coding - акустическое кодирование
адаптивным преобразованием) базируется на стереофоническом звуковом формате
с 16-разрядным квантованием и частотой дискретизации 44.1 кГц.
При сжатии каждый кадр делится на 52 частотные полосы, результирующая
скорость потока - 292 кбит/с (сжатие 1:5). Применяется в системе MiniDisk.
Форматы, используемые для представления цифрового звука
Понятие формата используется в двух различных смыслах. При
использовании специализированного носителя или способа записи и специальных
устройств чтения/записи в понятие формата входят как физические
характеристики носителя звука - размеры кассеты с магнитной лентой или
диском, самой ленты или диска, способ записи, параметры сигнала, принципы
кодирования и защиты от ошибок и т.п. При использовании универсального
информационного носителя широкого применения - например, компьютерного
гибкого или жесткого диска - под форматом понимают только способ
кодирования цифрового сигнала, особенности расположения битов и слов и
структуру служебной информации; вся "низкоуровневая" часть, относящаяся
непосредственно к работе с носителем, в этом случае остается в ведении
компьютера и его операционной системы.
Из специализированных форматов и носителей цифрового звука в настоящее
время наиболее известны следующие: CD (Compact Disk - компакт-диск) -
односторонний пластмассовый диск с оптической лазерной записью и
считыванием, диаметром 120 или 90 мм, вмещающий максимум 74 минуты
стереозвучания с частотой дискретизации 44.1 кГц и 16-разрядным линейным
квантованием. Система предложена фирмами Sony и Philips и носит название CD-
DA (Compact Disk - Digital Audio). Для защиты от ошибок используется
двойной код Рида-Соломона с перекрестным перемежением (Cross Interleaved
Reed-Solomon Code, CIRC) и модуляция кодом Хэмминга 8-14 (Eight-to-Fourteen
Modulation, EFM).
Различаются штампованные (CD) однократно записываемые (CD-R) и
многократно перезаписываемые (CD-RW) компакт-диски.
ИКМ-приставка (PCM deck) - система для преобразования цифрового
звукового сигнала в псевдовидеосигнал, совместимый с популярными
видеоформатами (NTSC, PAL/SECAM), и обратно. ИКМ-приставки применяются в
сочетании с бытовыми (VHS) или студийными (S-VHS, Beta, U-Matic)
видеомагнитофонами, используя их в качестве устройств чтения/записи.
Устройства работают с 16-разрядным линейным квантованием на частотах
дискретизации 44.056 кГц (NTSC) и 44.1 кГц (PAL/SECAM), и позволяют
записывать двух- или четырехканальную цифровую сигналограмму. По сути,
такая приставка представляет собой модем (модулятор-демодулятор) для
видеосигнала.
S-DAT (Stationary head Digital Audio Tape - цифровая звуковая лента с
неподвижной головкой) - система наподобие обычного кассетного магнитофона,
запись и чтение в которой ведутся блоком неподвижных тонкопленочных головок
на ленте шириной 3.81 мм в двухсторонней кассете размером 86 x 55.5 x 9.5
мм. Реализует 16-разрядную запись двух или четырех каналов на частотах 32,
44.1 и 48 кГц.
R-DAT (Rotary head Digital Audio Tape - цифровая звуковая лента с
вращающейся головкой) - система наподобие видеомагнитофона с поперечно-
наклонной записью вращающимися головками. Наиболее популярный формат
ленточной цифровой записи, системы R-DAT часто обозначаются просто DAT. В R-
DAT используется кассета размером 73 x 54 x 10.5 мм, с лентой шириной 3.81
мм, а сама система кассеты и магнитофона очень похожа на типовой
видеомагнитофон. Базовая скорость движения ленты - 8.15 мм/с, скорость
вращения блока головок - 2000 об/мин. R-DAT работает с двухканальным (в
ряде моделей - четырехканальным) сигналом на частотах дискретизации 44.1 и
48 кГц с 16-разрядном линейным квантованием, и 32 кГц - с 12-разрядным
нелинейным. Для защиты от ошибок используется двойной код Рида-Соломона и
модуляция кодом 8-10. Емкость кассеты - 80..240 минут в зависимости от
скорости и длины ленты. Бытовые DAT-магнитофоны обычно оснащены системой
защиты от незаконного копирования фонограмм, не допускающей записи с
аналогового входа на частоте 44.1 кГц, а также прямого цифрового
копирования при наличии запрещающих кодов SCMS (Serial Code Managenent
System). Студийные магнитофоны таких ограничений не имеют.
DASH (Digital Audio Stationary Head) - система с записью на магнитную
ленту шириной 6.3 и 12.7 мм в продольном направлении неподвижными
головками. Скорость движения ленты - 19.05, 38.1, 76.2 см/с. Реализует 16-
разрядную запись с частотами дискретизации 44.056, 44.1 и 48 кГц от 2 до 48
каналов.
ADAT (Alesis DAT) - собственная (proprietary) система восьмиканальной
записи звука на видеокассету типа S-VHS, разработанная фирмой Alesis.
Использует 16-разрядное линейное квантование на частоте 48 кГц, емкость
кассеты составляет до 60 минут на каждый канал. Магнитофоны ADAT допускают
каскадное соединение, в результате чего может быть собрана система 128-
канальной синхронной записи. Для ADAT выпускается множество различных
интерфейсных блоков для сопряжения с DAT, CD, MIDI и т.п. Модель Meridian
(ADAT Type II) использует 20-разрядное квантование на частотах 44.1 и 48
кГц.
DCC (Digital Compact Cassette - цифровая компакт-кассета) - бытовая
система записи в продольном направлении на стандартную компакт-кассету,
разработанная Philips. Скорость движения ленты - 4.76 см/с, максимальное
время звучания такое же, как при аналоговой записи.
Частоты дискретизации - 32, 44.1, 48 кГц, разрешение - 16/18 разрядов
(метод сжатия PASC). На DCC-магнитофонах могут воспроизводиться (но не
записываться) обычные аналоговые компакт-кассеты. В настоящее время система
DCC признана неперспективной.
MD (MiniDisk) - бытовая и концертная система записи на
магнитооптический диск, разработанная Sony. Диск диаметром 64 мм,
помещенный в пластмассовый футляр размером 70 x 67.5 x 5 мм, вмещает 74
минуты (60 в ранних версиях) стереофонического звучания. При обмене со
внешними устройствами используется формат 16-разрядных отсчетов на частоте
44.1 кГц, однако на сам диск сигнал записывается после сжатия методом
ATRAC.
Из универсальных компьютерных форматов наиболее популярны следующие:
Microsoft RIFF/WAVE (Resource Interchange File Format/Wave - формат файлов
передачи ресурсов/волновая форма) - стандартный формат звуковых файлов в
компьютерах IBM PC. Файл этого формата содержит заголовок, описывающий
общие параметры файла, и один или более фрагментов (chunks), каждый из
которых представляет собой волновую форму или вспомогательную информацию -
режимы и порядок воспроизведения, пометки, названия и координаты участков
волны и т.п. Файлы этого формата имеют расширение .WAV.
Apple AIFF (Audio Interchange File Format - формат файла обмена звуком)
- стандартный тип звукового файла в системах Apple Macintosh.
Похож на RIFF и также позволяет размещать вместе со звуковой волной
дополнительную информацию, в частности - самплы WaveTable-инструментов
вместе с параметрами синтезатора.
Формат "чистой оцифровки" RAW, не содержащий заголовка и представляющий
собой только последовательность отсчетов звуковой волны. Обычно оцифровка
хранится в 16-разрядном знаковом (signed) формате, когда первыми в каждой
паре идут отсчеты левого канала, хотя могут быть и исключения.
Фоpматы, используемые для пpедставления звука и музыки
В настоящее вpемя стандаpтом де-факто стали два фоpмата: Microsoft RIFF
(Resource Interchange File Format - фоpмат файлов пеpедачи pесуpсов) Wave
(.WAV) и SMF (Standard MIDI File - стандаpтный MIDI-файл) (.MID). Пеpвый
содеpжит оцифpованный звук (моно/стеpео, 8/16 pазpядов, с pазной частотой
оцифpовки), втоpой - "паpтитуpу" для MIDI-инстpументов (ноты, команды смены
инстpументов, упpавления и т.п.). Поэтому WAV-файл на всех каpтах,
поддеpживающих нужный фоpмат, pазpядность и частоту оцифpовки звучит
совеpшенно одинаково (с точностью до качества пpеобpазования и усилителя),
а MID-файл в общем случае - по-pазному.
RAW - одноканальный фоpмат "чистой оцифpовки", не содеpжащий заголовка.
Обычно оцифpовка хpанится в 16-pазpядном знаковом (signed) фоpмате, хотя
могут быть и исключения.
VOC и CMF - фоpматы пpедставления оцифpованного звука и паpтитуp от
фиpмы Creative Labs, AIFF (Audio-...) - фоpмат звуковых файлов на Macintosh
и SGI, AU - фоpмат SUN/NeXT.
MOD - шиpоко pаспpостpаненный тpекеpный фоpмат. Содеpжит оцифpовки
инстpументов и паpтитуpу для них, отчего звучит везде пpимеpно одинаково
(опять же - с точностью до качества воспpоизведения). В оpигинале
поддеpживаются четыpе канала, в pасшиpениях - до восьми и более.
STM - фоpмат Scream Tracker, пpимеpно того же уpовня, что и MOD.
S3M - фоpмат Scream Tracker 3. Развитие STM в стоpону увеличения
pазpядности инстpументов и количества музыкальных эффектов. Сам ST3
поддеpживает до 32 каналов, но не поддеpживает пpедусмотpенных в фоpмате 16-
pазpядных самплов.
XM - фоpмат Fast Tracker. Один из наиболее высокоуpовневых сpеди
тpекеpных фоpматов. Поддеpживаются 16-pазpядные самплы, один ин- стpумент
может содеpжать pазличные самплы на pазные диапазоны нот, возможно задание
амплитудных и паноpамных огибающих.
MPEG: Общая информация
Стандарт сжатия MPEG разработан Экспертной группой кинематографии
(Moving Picture Experts Group - MPEG). MPEG это стандарт на сжатие звуковых
и видео файлов в более удобный для загрузки или пересылки, например через
интернет, формат.
Существуют разные стандарты MPEG (как их еще иногда называют фазы -
phase): MPEG-1, MPEG-2, MPEG-3, MPEG-4, MPEG-7.
MPEG состоит из трех частей: Audio, Video, System (объединение и
синхронизация двух других).
MPEG-1
По стандарту MPEG-1 потоки видео и звуковых данных передаются со
коростью 150 килобайт в секунду -- с такой же скоростью, как и
односкоростной CD-ROM проигрыватель -- и управляются путем выборки ключевых
видео кадров и заполнением только областей, изменяющихся между кадрами. К
несчастью, MPEG-1 обеспечивает качество видеоизображения более низкое, чем
видео, передаваемое по телевизионному стандарту.
MPEG-1 был разработан и оптимизирован для работы с разрешением 352 ppl
(point per line -- точек на линии) * 240 (line per frame -- линий в кадре)
* 30 fps (frame per second -- кадров в секунду), что соответствует скорости
передачи CD звука высокого качества. Используется цветовая схема - YCbCr
(где Y - яркостная плоскость, Cb и Cr - цветовые плоскости).
Как MPEG работает:
В зависимости от некоторых причин каждый frame (кадр) в MPEG может быть
следующего вида:
I (Intra) frame - кодируется как обыкновенная картинка.
P (Predicted) frame - при кодировании используется информация от предыдущих
I или P кадров.
B (Bidirectional) frame - при кодировании используется информация от одного
или двух I или P кадров (один предшествующий данному и один следующий за
ним, хотя может и не непосредственно, см. Рис.1)
Последовательность кадров может быть например такая:
IBBPBBPBBPBBIBBPBBPB...
Последовательность декодирования: 0312645...
Нужно заметить, что прежде чем декодировать B кадр требуется
декодировать два I или P кадра. Существуют разные стандарты на частоту, с
которой должны следовать I кадры, приблизительно 1-2 в секунду,
соответствуюшие стандарты есть и для P кадров (каждый 3 кадр должен быть P
кадром). Существуют разные относительные разрешения Y, Cb, Cr плоскостей
(Таблица 1), обычно Cb и Cr кодируются с меньшим разрешением чем Y.
|Вид |Отношения разрешений по |Отношение разрешений по |
|Формата|горизонтали (Cb/Y): |вертикали (Cb/Y): |
|4:4:4 |1:1 |1:1 |
|4:2:2 |1:2 |1:1 |
|4:2:0 |1:2 |1:2 |
|4:1:1 |1:4 |1:1 |
|4:1:0 |1:4 |1:4 |
Для применения алгоритмов кодировки происходит разбивка кадров на
макроблоки каждый из которых состоит из определенного количества блоков
(размер блока - 8*8 пикселей). Количество блоков в макроблоке в разных
плоскостях разное и зависит от используемого формата:
Техника кодирования:
Для большего сжатия в B и P кадрах используется алгоритм предсказания
движения (что позволяет сильно уменьшить размер P и B кадров -- Таблица 2)
на выходе которого получается:
Вектор смещения (вектор движения) блока который нужно предсказать
относительно базового блока.
Разница между блоками (которая затем и кодируется).
Так как не любой блок можно предсказать на основании информации о
предыдущих, то в P и B кадрах могут находиться I блоки (блоки без
предсказания движения).
|Вид кадра |I |P |B |Средний размер |
|Размер кадра для стандарта SIF |150 |50 |20 |38 |
|(kilobit) | | | | |
Метод кодировки блоков (либо разницы, получаемой при методе
предсказание движения) содержит в себе:
Discrete Cosine Transforms (DCT - дискретное преобразование косинусов).
Quantization (преобразование данных из непрерывной формы в дискретную).
Кодировка полученного блока в последовательность.
DCT использует тот факт, что пиксели в блоке и сами блоки связаны между
собой (т.е. коррелированны), поэтому происходит разбивка на частотные фурье
компоненты (в итоге получается quantization matrix - матрица преобразований
данных из непрерывной в дискретную форму, числа в которой являются
величиной амплитуды соответствующей частоты), затем алгоритм Quantization
разбивает частотные коэффициенты на определенное количество значений.
Encoder (кодировщик) выбирает quantization matrix которая определяет то,
как каждый частотный коэффициент в блоке будет разбит (человек более
чувствителен к дискретности разбивки для малых частот чем для больших). Так
как в процессе quantization многие коэффициенты получаются нулевыми то
применяется алгоритм зигзага для получения длинных последовательностей
нулей.
Звук в MPEG:
Форматы кодирования звука деляться на три части: Layer I, Layer II,
Layer III (прообразом для Layer I и Layer II стал стандарт MUSICAM, этим
именем сейчас иногда называют Layer II). Layer III достигает самого
большого сжатия, но, соответственно, требует больше ресурсов на
кодирование.
Принципы кодирования основаны на том факте, что человеческое ухо не
совершенно и на самом деле в несжатом звуке (CD-audio) передается много
избыточной информации. Принцип сжатия работает на эффектах маскировки
некоторых звуков для человека (например, если идет сильный звук на частоте
1000 Гц, то более слабый звук на частоте 1100 Гц уже не будет слышен
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14
|