Spectrum Expert
#02
31 марта 1998 |
|
Музыка - Компьютерная музыка: почему ни одна звуковая карта, даже самая дорогая, не родит настоящей музыки и не проиграет вам модуля с качеством компакт-диска.
(c) DANGEROUS Компьютерная музыка... Music оп inter- rupt, DIGITAL STUDIO, COVOX, SB, GS, GUS, TURTLE BITCH... MOD, STM, S3M, ХМ, IT... Компьютерные music compo... Компь- ютерщики тащатся от компьютерного зву- ка... Задумывались ли вы когда нибудь, уважа- емые господа читатели, для чего вообще персональный компьютер должен извлекать звуки? Почему многие пользователи подол- гу слушают ее, собирают музыкальные мо- дуля? Безусловно, компьютерные эффекты прекрасно дополняют игры и демки, но можно ли назвать их музыкой? Как и "просто модуля ниоткуда", сотнями храня- щиеся на дисках многих пользователей и регулярно переслушиваемые ими? Почему, например, в мире РС идет постоянное по- явление новых карт, в мире Амиги появля- ются новые рlаyerы, дающие, якобы, луч- шее звучание, а в мире Спектрума звук эволюционировал от бипера до GS? Похоже, что в компьютерном мире все помешались на технических характеристиках звуковых карт, забыв о том, что компьютер, каким бы мощным он ни был, не способен родить музыку. Прикупив более совершенную зву- ковую карту взамен старой, бежим домой, в предвкушении наслаждения чистым компь- ютерным звуком... A стоит ли он того? Основываясь на инженерном подходе и опираясь на технические характеристики, усвоенные из руководства пользователя, мы инсталлируем наше приобретение, дрожа от нетерпения услышать обворожительное звучание и погрузиться (или воспарить) сознанием в неизведанные просторы Музы- кальных Событий. Безусловно, желание сравнить настоящее с прошлым велико, и мы, подсознательно вобравши в себя сте- реотип превосходства нашего приобретения над предыдущим, начинаем ловить (подсо- знательно, а иногда и специально) су- ществующие и несуществующие события. И доказывать появление оных себе и окружа- ющим. Прочитав в паспорте своей аудикарты "16 бит, 44 килогерца" и сравнив это с хара- ктеристиками компакт-диска - 16 бит, 44 килогерца, неграмотный пользователь уве- ренно заявляет своим неграмотным друзьям - у моей карты качество компакт-диска! То же самое он подсознательно заявляет сам себе и, "зомбировавшись" собственным заключением, с наслаждением слушает зву- ки, издаваемые аудиокартой. При попытке продемонстрировать "суперзвук" ничего не понимающим в компьютерах родителям, мама стремительно удаляется на кухню под предлогом, что у нее убегает суп, а папа через некоторое время начинает угрожать, что если ты сейчас же не сделаешь поти- ше, то он твой компьютер... (в лучшем случае выключит). Почему же не обремененные знаниями о битах и килогерцах люди не в состоянии слушать компьютерную музыку, в лучшем случае равнодушны к ней? В то же время пользователь получает определенное удо- вольствие от прослушивания всяких там mod-ов, stm-ов, хм-ов и т.д. Парадокс? Давайте разберемся с пресловутыми 16 битами и 44 килогерцами и тогда поймем, почему ни одна звуковая карта, даже са- мая дорогая, не родит настоящей музыки и не проиграет вам модуля с качеством ком- пакт-диска. Хотя, что такое качество компакт-диска? Надо полагать, это ка- чество звука, который мы слышим при его воспроизведении. Воспроизведении.. опять же, на чем? (Оказывается, есть разница, куда компакт-диск запихивать). Для начала отбросим несовершенство ком- пьютерного звучания и обратим внимание на то, что музыкальная ценность подавля- ющего большинства модулей устремлена к нулю. Немногие оставшиеся, которые, в принципе, могут задеть за душу, словно в клетке, бьются, ограниченные музыкальны- ми и техническими возможностями ауди- окарт... На заре компьютерного бума тот факт, что компьютер может издавать звуки, по- хожие на реальные, сводил с ума многих юзеров, некоторые даже записывали эту "музыку" на кассеты и потом слушали. Не- которые пользователи просто зациклились на этих электронных звучках, погрузились в мир компьютерной музыки , забыв, что есть еще и другая музыка - настоящая. Предвижу возражения, что, дескать, вся современная музыка создается с помощью компьютеров. Ответ довольно прост: во- первых, создается, а не прослушивается. Во-вторых, такая музыка невысокого поле- та, как правило, сопроводительная (для игр, демок) или дискотечная (чтобы своим интеллектом не мешать "двигать попой" и думать об особях противоположного пола). Истинную, авторскую музыку невозможно создать на компьютере, так как он никог- да не сможет переживать и в музыке изли- вать свою душу (нет ее, души-то). Если даже взять самый навороченный музыкаль- ный редактор, то все усилия автора по донесению своего музыкального замысла разобьются о несовершенство компьютерно- го цифрового тракта. Пусть даже в ком- пьютере стоит дорогая аудиокарта. Чтобы не показаться занудным при описа- нии всяких музыкальных метафор, развен- чаю возможности компьютеров с чисто тех- нической стороны. Я уверен, что этого вполне достаточно. Придется начать с са- мого начала. Стиль выберу - "науч-поп", поэтому читаться должно легко. Никакого супервысшего образования для впитывания изложенного ниже материала не требует- ся. Поначалу будет скучно (возможно). Каким образом естественный звук перево- дят в цифровой код? Известно, что, тео- ретически, непрерывный сигнал с ограни- ченной полосой частот может быть одно- значно восстановлен по значениям дис- кретных отсчетов, если выполнено усло- вие: F>2f, где F - частота дискретиза- ции, а f - полоса частот кодируемого на- ми сигнала (то есть верхняя частота спектра, которую мы планируем потом вос- становить). Частота дискретизации пока- зывает, сколько раз за секунду дигитай- зер снимет показание амплитуды нашего сигнала, чтобы затем с помощью АЦП (ана- лого-цифрового преобразователя) иденти- фицировать каждую измеренную амплитуду двоичным кодом. рис. 1.Осталось только записать коды в память - и все. Нетрудно догадаться, что, чем чаще мы будем снимать показания с сигна- ла, то есть повышать F, тем больше веро- ятность зафиксировать всякие мелкие осо- бенности сигнала. Здесь есть один под- водный камень. Если верхняя частота циф- руемого нами сигнала превысит поло- вину частоты дискретизации, то при прослушивании мы услышим существен- ные искажения в виде посторонних призву- ков (не шума, не скрипа, а именно при- звуков, которые тянутся синхронно с ос- новными звуками. Очень заметно на ком- пьютерах Амига, да и на РС тоже). Чтобы этого не произошло, надо бы цифруемый сигнал предварительно обрубить сверху фильтром низких частот (ФНЧ) с частотой среза в нашем случае 22.05 килогерца (на самом деле еще чуть ниже). Что происходит на практике? У вас в ру- ках дигитайзер, вы загружаете программу, которая управляет дигитайзером. После ее загрузки вы можете выбрать частоту дис- кретизации (побольше, если надо оцифро- вать качественней, или поменьше, для экономии памяти). Поскольку для каждого конкретного случая нужно иметь конкрет- ный ФНЧ, то непонятно, на какую частоту фильтр нужно настроить, если бы он стоял в дигитайзере. Поэтому его там просто нет. Далее, практически никто (до по- следнего времени) не оцифровывал сигнал 16 бит 44.1 кгц - слишком много памяти потребуется. Посчитаем - 2 байта умножим на 44100. Будет, грубо говоря, 90 кило- байт в секунду. Поскольку суммарная дли- тельность сэмплов у модуля средней пар- шивости может составлять 10 секунд, то, если опять посчитать, получится, что мо- дуль средней паршивости должен занимать около 900 килобайт - и это только сэмп- лы! На самом деле так никто не делает. На компьютерах Амига, например, музыко- делатели цифруют сэмплы с частотой около 8 кгц в 8-битном формате (звук-то у Амиги 8-битный). Получается скромненькая цифра - на секунду звучания сэмпла - около 8 килобайт. Естественно, звук страдает. Но ничего, люди слушают, мно- гим даже нравится. На РС, кстати, немногим лучше. Только в последнее время появились 16-битные сэмплы, но тоже цифрованные на довольно низкой частоте. К тому же у многих ки- тайских SoundBlasterob аналоговая часть настолько плохо выполнена, что различить 8 бит и 16 практически невозможно. Теперь самое интересное. Если проигры- вать такие сэмплы на звуковой карте 16 бит 44 кгц, то, по всей вероятности, сэмпл, оцифрованный на частоте 8 кило- герц, должен проиграться в 44/8=5.5 раз быстрее и при этом стать писклявым. Что- бы этого не произошло, драйвер карты (или какая другая программа, неважно) производит пересчет и заставляет кидать на ЦАП (цифро-аналоговый преобразова- тель) один и тот же байт, пока не подой- дет время прихода следующего байта, если бы сэмпл воспроизводился со своей родной частотой дискретизации. Так что увеличи- вай частоту дискретизации, не увеличивай - сэмпл как игрался, так и будет играть- ся, и никакого изменения в качестве не будет. Поэтому к возгласам вашего прия- теля "У меня все играется на частоте 44 килогерца!" относитесь спокойно. Теперь опять внимание. Мы не рассмотре- ли вопрос о работе ЦАПа. Если вы думае- те, что в проигрывателях CD значения цифрового кода попросту считываются с диска, кидаются на ЦАП, а затем поступа- ют на выход, то вы круто ошибаетесь. Так бывает только в COVOXax, бытовых компью- терных звуковых картах да в компьютерных CD-драйвах. Почему? Потому, что голое цифроаналоговое преобразование сигнала не есть его восстановление! Для того, чтобы получить то, что мы (или не мы) когда-то подавали на вход АЦП, нужно произвести именно восстановление! Для восстановления сигнала, его необхо- димо пропустить через специальную штуку - В.Ф - Восстанавливающий Фильтр (фильтр Котельникова). Тогда на выходе мы и по- лучим искомый сигнал. Как его реализо- вать - отдельный вопрос, который я не буду здесь освещать (это невозможно объ- яснить на пальцах), скажу только, что его можно поставить в тракт прохождения сигнала либо до ЦАПа, либо после него. В первом случае фильтр будет цифровым, а во втором - аналоговым. Аналоговые фильтры Котельникова не делают - очень сложно, а вот цифровые реализовать мож- но. (На самом деле идеальный Ф.К. реали- зовать теоретически невозможно, делают лишь приближения с разной степенью точ- ности - чем "идеальнее" фильтр, тем выше его стоимость). Функция восстанавливаю- щего фильтра - восстановление сигнала в рабочей полосе частот, до половины ча- стоты дискретизации. A также подавление спектральных составляющих за пределами рабочей полосы - выше половины частоты дискретизации. Восстановление сигнала описывается не- безызвестной формулой Котельникова, о которой сейчас говорят все, кому не лень, которая мудрена и неподготовлен- ному читателю внушит ужас:S(Т) - восстановленный сигнал. Т - время Si - значение i-го отсчета. Частью этой формулы является так назы- ваемая функция Найквиста, которая имеет важное значение при восстановлении ана- лового сигнала из цифровой формы, так как являет собой импульсную реакцию иде- ального Ф.К.:Итак, цифровой фильтр. Его задача - принять кодовую последовательность, обработать ее и кинуть на ЦАП СОВЕРШЕННО ДРУПУЮ ПОСЛЕДОВАТЕЛьНОСТь, которая, пройдя ЦАП, превратится в реальный сиг- нал. Если все-таки чуть-чуть проникнуться формулой Котельникова, то можно прийти к следующему выводу: операция дискретиза- ции и восстановления в корне отличаются друг от друга. Процедура дискретизации последовательна, то есть достаточно знать только значение сигнала в мент взятия отсчета. A для обратного преобра- зования дискретизированного сигнала в непрерывный необходимо знать значение всех отсчетов сразу! То есть идеальный Ф.К. должен принять в себя ВЕСь исходный цифровой материал, а затем уже выдавать на ЦАП свои измышления. Если быть теоре- тически точным, то на самом деле реакция на выходе Ф.К. должна появиться до того, как на него подадут сигнал - посмотрите, функция Найквиста определена и для отри- цательного времени! В природе это, ес- тественно, невозможно, но инженеры из- вращаются и придумывают всякие обходные маневры в виде линий задержек и элемен- тов памяти. В реальности фильтр должен "помнить", что было ранее, а также "знать", что будет потом. И чем в более широких пределах он "помнит" и "знает", тем качественней фильтр. Что же конкретно делает цифровой восста- навливающий фильтр? Суть процесса в следующем: осуществля- ется, так называемая передискретизация - между существующими отсчетами с частотой ЧЧкгц вставляются дополнительные, вычис- ленные в соответствии с импульсной ха- рактеристикой фильтра Котельникова, ко- торую и отражает вышеупомянутая функция Найквиста. (Импульсная характеристика - это реакция на так называемый дельта- импульс - некий гипотетический импульс, амплитуда которого бесконечна, а дли- тельность равна нулю). В дешевых проиг- рывателях используется 8-кратная пере- дискретизация (то есть между двумя от- счетами вставляется еще семь), в доро- гих - 256-кратная. Это значит, что в дорогих проигрывателях значения кидаются на ЦАП с частотой 44.1*256=11289.6 кПц, т.е. 11.2896 мегагерц! Вот, кстати, одно из объяснений, почему двухскоростной CD- ROM стоит тридцать долларов, а хороший проигрыватель CD - тысячу.На рисунке показана двухкратная пере- дискретизация (пунктирные линии) при восстановлении сигнала, взятого с рисун- ка 1. Между существующими отсчетами поя- вились новые - вычисленные передиск- ретизатором. Рисунок довольно идеалистичный, так как на самом деле здесь все должно быть в цифровых "ступеньках", я же, заведомо отбросив их, показываю, во что превра- тился сигнал. При внимательном сравнении рисунков за- метна разница форм сигналов - исходного и восстановленного. Это - свидетельство малой частоты исходной дискретизации, а также невысокой передискретизации. (Если бы передискретизации не было, то форма восстановленного сигнала отличалась бы от оригинала катастрофически.) Из-за этого утеряна информация об участках сигнала, характеризующаяся наиболее ши- роким спектром. В востановленном сигнале пропал острый пик исходного сигнала, а также резкий спад стал более плавным. (Кстати, может получиться, что взятие отсчета все-таки произойдет в момент "пика", но тогда после восстановления поднимется уровень сигнала в окрестности этого "пика". Интересный факт - дважды цифруем одно и тоже, а результат раз- ный.) Важно, что это не недостаток фильтра - информация о сигнале была утеряна еще в процессе перевода в цифровой код! Посе- му, каким бы хорошим не был восстанавли- вающий фильтр, этот сигнал он уже пра- вильно не восстановит. Это вовсе не означает, что появится цифровой скрежет. Вот он как раз-то и не появится. Фильтр его прекрасно подавит, а вот музыкаль- ность сигнала сильно пострадает - в пер- вую очередь динамика и тембр. При ис- пользовании сигнала в качестве спецэф- фектов в играх - по большому счету, на- плевать, а вот нормальную музыку слушать будет, мягко говоря, неинтересно. Напри- мер, невозможно будет отличить, играют ли живые скрипки или их имитирует синте- затор, звук двух разных тарелок ударной установки тоже будет неразличим, скорее всего он вообще превратится в шипение (при хорошем фильтре очень чистое), все будет звучать глухо и т.п, одним словом - демонстрация мертвых звуков и полная потеря средств выражения. Люди, далекие от техники, ищут в музы- ке прежде всего музыкальную мысль, а когда им подсовывают компьютерную тара- барщину, чувствуют дискомфорт. Почему для восстановления нужно исполь- зовать именно фильтр Котельникова? Пото- му, что, руководствуясь его работой, можно сколь угодно точно вычислить ИСТИННЫЕ промежуточные значения между основными отсчетами. Если бы звуковая карта работала в соот- ветствии с ИДЕАЛьНОЙ 256-кратной пере- дискретизацией в соответствии с формулой Котельникова, то для сэмпла длиной 1 ки- лобайт идеальный алгоритм ее работы та- ков: 44100*256=11289600 раз в секунду умножить 1024 числа на соответствующие коэффициенты, затем все суммировать. A для сэмпла длиной 10 килобайт придется поумножать в 10 раз побольше. (Да, во втором канале надо будет делать прибли- зительно то же самое, а у карты AWE64 - 64 канала). К тому же, в процессе вычис- лений могут возникать числа разрядностью до 64-х. Если так продолжать, то на одну звуко- вую карту можно будет заставить работать все процессоры в мире. Для упрощения процедуры берут не все байты, а, скажем, 50 ближайших (реальная цифра), тогда вы- числительных способностей Пентиума200 вполне хватит для восстановления сигна- ла, и тогда уже можно кидать это на ЦАП. Например, в карте General Sound для пе- редискретизации стоит Z80 на 12мгц. Пе- редискретизация - по двум соседним от- счетам, как получится, вернее, как успе- ется. Реально 3-4-кратная. Интерполяция там не "по Котельникову", а среднеариф- метическая, но субъективно чистота звука улучшается очень сильно. Фильтров же после ЦАПов там нет никаких - им там уже просто нечего восстанавливать. Кстати, если кто непосредственно срав- нивал звучание GS и Амиги, мог иногда замечать, что на GS некоторые модуля иг- раются подозрительно глухо, а некоторые - совершенно нормально. Это - прямой ре- зультат передискретизации. В сэмплах, цифрованных с частотой 8 килогерц, выше 4 килогерц нет никакой музыкальной ин- формации - поэтому все, что выше - по- давляется передискретизатором. Вот поэ- тому и появляется "глухота". Амига же поставляет вместе с сэмплами приличную долю высокочастотного шума - отсюда ка- жущаяся звонкость. Если же сэмпл цифро- вали на 22 килогерцах, то разница будет уже почти незаметна. Известно, что на звуковые карты Пентиу- мов200 не ставят. Не ставят их и в про- игрыватели CD. В проигрывателях CD роль цифрового фильтра-восстановителя выпол- няет специальный сигнальный процессор, который только и умеет делать это. A в РС и Амигах теперь пишут специальные плейеры, которые с горем пополам произ- водят какую-то интерполяцию. О ее вер- ности никто не знает, кроме авторов этих программ. В одном я уверен - фильтром Котельникова там даже не пахнет, но звук они улучшают. (Вернее не улучают, а уби- рают откровенную цифровую грязь, а заод- но и немалую часть истинной музыкальной информации, привнося свою, ложную). Вот теперь, чем выше передискретизация, тем чище звук. Именно чище, а не правильней! Так что о живой музыке забудьте. Еще огорчение - компьютер при этом не может выполнять свою прямую функцию по назначению - его процессор загружен поч- ти до предела. Об интерполированной му- зыке в динамических играх пока что речи тоже нет. Теперь развенчаю еще один "цифровой миф", порожденный, в основном, рекламной кампанией. Это динамический диапазон в 9бдБ. Для тех, кто не знает - это пока- затель отношения максимального и мини- мального уровней громкости в системе. Описывается выражением D=20*lg(мах/min). Если посчитать по этой формуле динами- ческий диапазон 16-битовой системы, то как раз и получим число 96. A что в ре- альности? У любой цифровой системы есть один принципиальный недостаток - при ма- лом уровне громкости возникают, так на- зываемые, искажения квантования. Ведь, чем меньше громкость, тем меньше бит используется для преобразования! При ма- лом уровне громкости старшие биты цифро- вого слова сидят себе в нуле и слыхом не слыхивают о сигнале. Получается, что с тихими звуками проблема. Поэтому, как показала практика, звуки оцифрованные с уровнем -ЧOдБ, уже не очень похожи на настоящие, при цифровке -бOдБ от звука остаются рожки да ножки... A какая музы- ка без настоящих тихих звуков? Реально используемый динамический диапазон - 30- ЧOдБ. Посему удел компьютерной музыки - одна технота да попса, так как она обла- дает ислючительно узким D. (В проигры- вателях CD опять же борятся с этим раз- ными методами). Фанатам Амиги предлагаю самим посчитать динамический диапазон 8-битовой системы (кстати, этого вполне хватает для эффек- тов и сопроводительной музычки в играх). Так что, может быть, не будем так серь- езно относиться к компьютерной музыке, аудиокартам, music compo, ведь все му- уровнем -ЧOдБ, уже не очень похожи на настоящие, при цифровке -бOдБ от звука остаются рожки да ножки... A какая музы- ка без настоящих тихих звуков? Реально используемый динамический диапазон - 30- ЧOдБ. Посему удел компьютерной музыки - одна технота да попса, так как она обла- дает ислючительно узким D. (В проигры- вателях CD опять же борятся с этим раз- ными методами). Фанатам Амиги предлагаю самим посчитать динамический диапазон 8-битовой системы (кстати, этого вполне хватает для эффек- тов и сопроводительной музычки в играх). Так что, может быть, не будем так серь- езно относиться к компьютерной музыке, аудиокартам, music compo, ведь все му- зыкальные прибамбасы сделаны для того, чтобы в игры было интересней играть. Или я не прав?
Другие статьи номера:
Похожие статьи:
В этот день... 21 ноября