В соответствии с теорией математика Фурье, звуковую волну можно представить в виде спектра входящих в нее частот:
Частотные составляющие спектра - это синусоидальные колебания (так называемые чистые тона), каждое из которых имеет свою собственную амплитуду и частоту. Таким образом, любое, даже самое сложное по форме колебание (например, человеческий голос), можно представить суммой простейших синусоидальных колебании определенных частот и амплитуд. И наоборот, сгенерировав различные колебания и наложив их друг на друга (смикшировав, смешав), можно получить различные звуки.
Справка: человеческий слуховой аппарат/мозг способен различать частотные составляющие звука в пределах от 20 Гц до ~20 КГц (верхняя граница может колебаться в зависимости от возраста и других факторов). Кроме того, нижняя граница сильно колеблется в зависимости от интенсивности звучания.
Оцифровка звука и его хранение на цифровом носителе
Обычный аналоговый звук представляется в аналоговой аппаратуре непрерывным электрическим сигналом. Компьютер оперирует с данными в цифровом виде. Это означает, что и звук в компьютере представляется в цифровом виде. Как же происходит преобразование аналогового сигнала в цифровой?
Цифровой звук – это способ представления электрического сигнала посредством дискретных численных значений его амплитуды. Допустим, мы имеем аналоговую звуковую дорожку хорошего качества (говоря «хорошее качество» будем предполагать нешумную запись, содержащую спектральные составляющие из всего слышимого диапазона частот – приблизительно от 20 Гц до 20 КГц) и хотим «ввести» ее в компьютер (то есть оцифровать) без потери качества. Как этого добиться и как происходит оцифровка? Звуковая волна – это некая сложная функция, зависимость амплитуды звуковой волны от времени. Казалось бы, что раз это функция, то можно записать ее в компьютер «как есть», то есть описать математический вид функции и сохранить в памяти компьютера. Однако практически это невозможно, поскольку звуковые колебания нельзя представить аналитической формулой (как y=x2, например). Остается один путь – описать функцию путем хранения ее дискретных значений в определенных точках. Иными словами, в каждой точке времени можно измерить значение амплитуды сигнала и записать в виде чисел. Однако и в этом методе есть свои недостатки, так как значения амплитуды сигнала мы не можем записывать с бесконечной точностью, и вынуждены их округлять. Говоря иначе, мы будем приближать эту функцию по двум координатным осям – амплитудной и временной (приближать в точках – значит, говоря простым языком, брать значения функции в точках и записывать их с конечной точностью). Таким образом, оцифровка сигнала включает в себя два процесса - процесс дискретизации (осуществление выборки) и процесс квантования. Процесс дискретизации - это процесс получения значений величин преобразуемого сигнала в определенные промежутки времени
Квантование - процесс замены реальных значений сигнала приближенными с определенной точностью
Таким образом, оцифровка – это фиксация амплитуды сигнала через определенные промежутки времени и регистрация полученных значений амплитуды в виде округленных цифровых значений (так как значения амплитуды являются величиной непрерывной, нет возможности конечным числом записать точное значение амплитуды сигнала, именно поэтому прибегают к округлению). Записанные значения амплитуды сигнала называются отсчетами. Очевидно, что чем чаще мы будем делать замеры амплитуды (чем выше частота дискретизации) и чем меньше мы будем округлять полученные значения (чем больше уровней квантования), тем более точное представление сигнала в цифровой форме мы получим. Оцифрованный сигнал в виде набора последовательных значений амплитуды можно сохранить.
Теперь о практических проблемах. Во-первых, надо иметь в виду, что память компьютера не бесконечна, так что каждый раз при оцифровке необходимо находить какой-то компромисс между качеством (напрямую зависящим от использованных при оцифровке параметров) и занимаемым оцифрованным сигналом объемом.
Во-вторых, согласно теореме Котельникова частота дискретизации устанавливает верхнюю границу частот оцифрованного сигнала, а именно, максимальная частота спектральных составляющих равна половине частоты дискретизации сигнала. Попросту говоря, чтобы получить полную информацию о звуке в частотной полосе до 22050 Гц, необходима дискретизация с частотой не менее 44.1 КГц.
Существуют и другие проблемы и нюансы, связанные с оцифровкой звука. Не сильно углубляясь в подробности отметим, что в цифровом звуке из-за дискретности информации об амплитуде оригинального сигнала появляются различные шумы и искажения (под фразой «в цифровом звуке есть такие-то частоты и шумы» подразумевается, что когда этот звук будет преобразован обратно из цифрового вида в аналоговый, то в его звучании будут присутствовать упомянутые частоты и шумы). Так, например, джиттер (jitter) – шум, появляющийся в результате того, что осуществление выборки сигнала при дискретизации происходит не через абсолютно равные промежутки времени, а с какими-то отклонениями. То есть, если, скажем, дискретизация проводится с частотой 44.1 КГц, то отсчеты берутся не точно каждые 1/44100 секунды, а то немного раньше, то немного позднее. А так как входной сигнал постоянно меняется, то такая ошибка приводит к «захвату» не совсем верного уровня сигнала. В результате во время проигрывания оцифрованного сигнала может ощущаться некоторое дрожание и искажения. Появление джиттера является результатом не абсолютной стабильности аналогово-цифровых преобразователей. Для борьбы с этим явлением применяют высокостабильные тактовые генераторы. Еще одной неприятностью является шум дробления. Как мы говорили, при квантовании амплитуды сигнала происходит ее округление до ближайшего уровня. Такая погрешность вызывает ощущение "грязного" звучания.
Небольшая справка: стандартные параметры записи аудио компакт-дисков следующие: частота дискретизации - 44.1 КГц, уровень квантования – 16 бит. Такие параметры соответствуют 65536 (216) уровням квантования амплитуды при взятии ее значений 44100 раз в секунду.
На практике, процесс оцифровки (дискретизация и квантование сигнала) остается невидимым для пользователя - всю черновую работу делают разнообразные программы, которые дают соответствующие команды драйверу (управляющая подпрограмма операционной системы) звуковой карты. Любая программа (будь то встроенный в Windows Recorder или мощный звуковой редактор), способная осуществлять запись аналогового сигнала в компьютер, так или иначе оцифровывает сигнал с определенными параметрами, которые могут оказаться важными в последующей работе с записанным звуком, и именно по этой причине важно понять как происходит процесс оцифровки и какие факторы влияют на ее результаты.
Преобразование звука из цифрового вида в аналоговый
Как после оцифровки прослушивать звук? То есть, как преобразовывать его обратно из цифрового вида в аналоговый?
Для преобразования дискретизованного сигнала в аналоговый вид, пригодный для обработки аналоговыми устройствами (усилителями и фильтрами) и последующего воспроизведения через акустические системы, служит цифроаналоговый преобразователь (ЦАП). Процесс преобразования представляет собой обратный процесс дискретизации: имея информацию о величине отсчетов (амплитуды сигнала) и беря определенное количество отсчетов в единицу времени, путем интерполирования происходит восстановление исходного сигнала
Совсем недавно воспроизведение звука в домашних компьютерах было проблемой, так как компьютеры не оснащались специальными ЦАП. Сначала в качестве простейшего звукового устройства в компьютере использовался встроенный динамик (PC speaker). Вообще говоря, этот динамик до сих пор имеется почти во всех PC, но никто уже не помнит как его "раскачать", чтобы он заиграл. Если вкратце, то этот динамик присоединен к порту на материнской плате, у которого есть два положения – 1 и 0. Так вот, если этот порт быстро-быстро включать и выключать, то из динамика можно извлечь более-менее правдоподобные звуки. Воспроизведение различных частот достигается за счет того, что диффузор динамика обладает конечной реакцией и не способен мгновенно перескакивать с места на место, таким образом он "плавно раскачивается" вследствие скачкообразного изменения напряжения на нем. И если колебать его с разной скоростью, то можно получить колебания воздуха на разных частотах. Естественной альтернативой динамику стал так называемый Covox – это простейший ЦАП, выполненный на нескольких подобранных сопротивлениях (или готовой микросхеме), которые обеспечивают перевод цифрового представления сигнала в аналоговый – то есть в реальные значения амплитуды. Covox прост в изготовлении и поэтому он пользовался успехом у любителей вплоть до того времени, когда звуковая карта стала доступной всем.
В современном компьютере звук воспроизводится и записывается с помощью звуковой карты, подключаемой либо встроенной в материнскую плату компьютера. Задача звуковой карты в компьютере – ввод и вывод аудио. Практически это означает, что звуковая карта является тем преобразователем, который переводит аналоговый звук в цифровой и обратно. Если описывать упрощенно, то работа звуковой карты может быть пояснена следующим образом. Предположим, что на вход звуковой карты подан аналоговый сигнал и карта включена (программно) в режим. Сначала входной аналоговый сигнал попадает в аналоговый микшер, который занимается смешением сигналов и регулировкой громкости и баланса. Микшер необходим, в частности, для предоставления возможности пользователю управлять уровнямиРис. Затем отрегулированный и сбалансированный сигнал попадает в аналогово-цифровой преобразователь, где сигнал дискретизуется и квантуется, в результате чего в компьютер по шине данных направляется бит-поток, который и представляет собой оцифрованный аудио сигнал. Вывод аудио информации почти аналогичен вводу, только происходит в обратную сторону. Поток данных, направленный в звуковую карту, преодолевает цифро-аналоговый преобразователь, который образует из чисел, описывающих амплитуду сигнала, электрический сигнал; полученный аналоговый сигнал может быть пропущен через любые аналоговые тракты для дальнейших преобразований, в том числе и для воспроизведения. Надо отметить, что если звуковая карта оборудована интерфейсом для обмена цифровыми данными, то при работе с цифровым аудио никакие аналоговые блоки карты не задействуются.
Способы хранения цифрового звука
Для хранения цифрового звука существует много различных способов. Как мы говорили, оцифрованный звук являет собой набор значений амплитуды сигнала, взятых через определенные промежутки времени. Таким образом, во-первых, блок оцифрованной аудио информации можно записать в файл "как есть", то есть последовательностью чисел (значений амплитуды). В этом случае существуют два способа хранения информации.
Первый рис:
- PCM (Pulse Code Modulation - импульсно-кодовая модуляция) - способ цифрового кодирования сигнала при помощи записи абсолютных значений амплитуд (бывают знаковое или беззнаковое представления). Именно в таком виде записаны данные на всех аудио CD. Второй способ рис:
- ADPCM (Adaptive Delta PCM - адаптивная относительная импульсно-кодовая модуляция) – запись значений сигнала не в абсолютных, а в относительных изменениях амплитуд (приращениях).
Во-вторых, можно сжать или упростить данные так, чтобы они занимали меньший объем памяти, нежели будучи записанными "как есть". Тут тоже имеются два пути.
Кодирование данных без потерь (lossless coding) - это способ кодирования аудио, который позволяет осуществлять стопроцентное восстановление данных из сжатого потока. К такому способу уплотнения данных прибегают в тех случаях, когда сохранение оригинального качества данных критично. Например, после сведения звука в студии звукозаписи, данные необходимо сохранить в архиве в оригинальном качестве для возможного последующего использования. Существующие сегодня алгоритмы кодирования без потерь (например, Monkeys Audio) позволяют сократить занимаемый данными объем на 20-50%, но при этом обеспечить стопроцентное восстановление оригинальных данных из полученных после сжатия. Подобные кодеры – это своего рода архиваторы данных (как ZIP, RAR и другие), только предназначенные для сжатия именно аудио.
Имеется и второй путь кодирования, на котором мы остановимся чуть подробнее, – кодирование данных с потерями (lossy coding). Цель такого кодирования - любыми способами добиться схожести звучания восстановленного сигнала с оригиналом при как можно меньшем объеме упакованных данных. Это достигается путем использования различных алгоритмов «упрощающих» оригинальный сигнал (выкидывая из него "ненужные" слабослышимые детали), что приводит к тому, что декодированный сигнал фактически перестает быть идентичным оригиналу, а лишь похоже звучит. Методов сжатия, а также программ, реализующих эти методы, существует много. Наиболее известными являются MPEG-1 Layer I,II,III (последним является всем известный MP3), MPEG-2 AAC (advanced audio coding), Ogg Vorbis, Windows Media Audio (WMA), TwinVQ (VQF), MPEGPlus, TAC, и прочие. В среднем, коэффициент сжатия, обеспечиваемый такими кодерами, находится в пределах 10-14 (раз). Надо особо подчеркнуть, что в основе всех lossy-кодеров лежит использование так называемой психоакустической модели, которая как раз и занимается "упрощением" оригинального сигнала. Говоря точнее, механизм подобных кодеров выполняет анализ кодируемого сигнала, в процессе которого определяются участки сигнала, в определенных частотных областях которых имеются неслышные человеческому уху нюансы (замаскированные или неслышимые частоты), после чего происходит их удаление из оригинального сигнала. Таким образом, степень сжатия оригинального сигнала зависит от степени его "упрощения"; сильное сжатие достигается путем "агрессивного упрощения" (когда кодер "считает" ненужными множественные нюансы), такое сжатие, естественно, приводит к сильной деградации качества, поскольку удалению могут подлежать не только незаметные, но и значимые детали звучания.
Как мы сказали, современных lossy-кодеров существует достаточно много. Наиболее распространенный формат – MPEG-1 Layer III (всем известный MP3). Формат завоевал свою популярность совершенно заслуженно – это был первый распространенный кодек подобного рода, который достиг столь высокого уровня компрессии при отличном качестве звучания. Сегодня этому кодеку имеется множество альтернатив, выбор остается за пользователем. К сожалению, рамки статьи не позволяют привести здесь тестирования и сравнения существующих кодеков, однако авторы статьи позволят себе привести некоторую информацию, полезную при выборе кодека. Итак, преимущества MP3 – широкая распространенность и достаточно высокое качество кодирования, которое объективно улучшается благодаря разработкам различных кодеров MP3 энтузиастами (например, кодер Lame). Мощная альтернатива MP3 – кодек Microsoft Windows Media Audio (Файлы .WMA и .ASF). По различным тестам этот кодек показывает себя от "как MP3" до "заметно хуже MP3" на средних битрейтах, и, чаще, "лучше MP3" на низких битрейтах. Ogg Vorbis (файлы .OGG) – совершенно свободный от лицензирования кодек, создаваемый независимыми разработчиками. Чаще всего ведет себя лучше MP3, недостатком является лишь малая распространенность, что может стать критическим аргументом при выборе кодека для длительного хранения аудио. Вспомним и еще молодой кодек MP3 Pro, анонсированный в июле 2001 года компанией Coding Technologies совместно с Thomson Multimedia. Кодек является продолжением, или, точнее, развитием старого MP3 – он совместим с MP3 назад (полностью) и вперед (частично). За счет использования новой технологии SBR (Spectral Band Replication), кодек ведет себя заметно лучше других форматов на низких битрейтах, однако качество кодирования на средних и высоких битрейтах чаще уступает качеству почти всех описанных кодеков. Таким образом, MP3 Pro пригоден больше для ведения аудио трансляций в Internet, а также для создания превью песен и музыки.
Говоря о способах хранения звука в цифровом виде нельзя не вспомнить и о носителях данных. Всем привычный аудио компакт-диск, появившийся в начале 80-х годов, широкое распространение получил именно в последние годы (что связано с сильным удешевлением носителя и приводов). А до этого носителями цифровых данных являлись кассеты с магнитной лентой, но не обычные, а специально предназначенные для так называемых DAT-магнитофонов. Ничего примечательного – магнитофоны как магнитофоны, однако цена на них всегда была высокой, и такое удовольствие было не всем «по зубам». Эти магнитофоны использовались, в основном, в студиях звукозаписи. Преимущество таких магнитофонов было в том, что, не смотря на использование привычных носителей, данные на них хранились в цифровом виде и практически никаких потерь при чтении/записи на них не было (что очень важно при студийной обработке и хранении звука). Сегодня появилось большое количество различных носителей данных, кроме привычных всем компакт дисков. Носители совершенствуются и с каждым годом становятся более доступными и компактными. Это открывает большие возможности в области создания мобильных аудио проигрывателей. Уже сегодня продается огромное количество различных моделей переносных цифровых плееров. И, можно предположить, что это еще далеко не пик развития такого рода техники.
Преимущества и недостатки цифрового звука
С точки зрения обычного пользователя выгоды много - компактность современных носителей информации позволяет ему, например, перевести все диски и пластинки из своей коллекции в цифровое представление и сохранить на долгие годы на небольшом трехдюймовом винчестере или на десятке-другом компакт дисков; можно воспользоваться специальным программным обеспечением и хорошенько "почистить" старые записи с бобин и пластинок, удалив из их звучания шумы и треск; можно также не просто скорректировать звучание, но и приукрасить его, добавить сочности, объемности, восстановить частоты. Помимо перечисленных манипуляций со звуком в домашних условиях, Интернет тоже приходит на помощь аудио-любителю. Например, сеть позволяет людям обмениваться музыкой, прослушивать сотни тысяч различных Интернет-радио станций, а также демонстрировать свое звуковое творчество публике, и для этого нужен всего лишь компьютер и Интернет. И, наконец, в последнее время появилась огромная масса различной портативной цифровой аудио аппаратуры, возможности даже самого среднего представителя которой зачастую позволяют с легкостью взять с собой в дорогу коллекцию музыки, равную по длительности звучания десяткам часов.
С точки зрения профессионала цифровой звук открывает поистине необъятные возможности. Если раньше звуковые и радио студии размещались на нескольких десятках квадратных метров, то теперь их может заменить хороший компьютер, который по возможностям превосходит десять таких студий вместе взятых, а по стоимости оказывается многократно дешевле одной. Это снимает многие финансовые барьеры и делает звукозапись более доступной и профессионалу и простому любителю. Современное программное обеспечение позволяет делать со звуком все что угодно. Раньше различные эффекты звучания достигались с помощью хитроумных приспособлений, которые не всегда являли собой верх технической мысли или же были просто устройствами кустарного изготовления. Сегодня, самые сложные и просто невообразимые раньше эффекты достигаются путем нажатия пары кнопок. Конечно, вышесказанное несколько утрировано и компьютер не заменяет человека – звукооператора, режиссера или монтажера, однако с уверенностью можно сказать, что компактность, мобильность, колоссальная мощность и обеспечиваемое качество современной цифровой техники, предназначенной для обработки звука, уже сегодня почти полностью вытеснило из студий старую аналоговую аппаратуру.
Конечно, цифровая техника тоже имеет свои недостатки. Многие (профессионалы и любители) отмечают, что аналоговый звук слушался живее. И это не просто дань прошлому. Как мы сказали выше, процесс оцифровки вносит определенную погрешность в звучание, кроме того, различная усиливающая цифровая аппаратура привносит так называемые "транзисторные шумы" и другие специфические искажения. Термину "транзисторный шум", пожалуй, нет точного определения, но можно сказать, что это хаотичные колебания в области высоких частот. Не смотря на то, что слуховой аппарат человека способен воспринимать частоты до 20 кГц, похоже, все-таки, человеческий мозг улавливает и более высокие частоты. И именно на подсознательном уровне человек все же ощущает аналоговое звучание чище, чем цифровое.
Впрочем, у цифрового представления данных есть одно неоспоримое и очень важное преимущество – при сохранном носителе данные на нем не искажаются с течением времени. Если магнитная лента со временем размагничивается и качество записи теряется, если пластинка царапается и к звучанию прибавляются щелчки и треск, то компакт-диск / винчестер / электронная память либо читается (в случае сохранности), либо нет, а эффект старения отсутствует. Важно отметить, мы не говорим здесь об Audio CD (CD-DA – стандарт, устанавливающий параметры и формат записи на аудио компакт диски) так как не смотря на то, что это носитель цифровой информации, эффект старения его, все же, не минует. Это связано с особенностями хранения и считывания аудио данных с Audio CD. Информация на всех типах компакт-дисков хранится покадрово и каждый кадр имеет заголовок, по которому его возможно идентифицировать. Однако различные типы CD имеют различную структуру и используют различные методы маркировки кадров. Поскольку компьютерные приводы CD-ROM рассчитаны на чтение в основном Data-CD (надо сказать, что существуют различные разновидности стандарта Data-CD, каждый из которых дополняет основной стандарт CD-DA), они часто не способны правильно ориентироваться на Audio CD, где способ маркировки кадров отличен от Data-CD (на аудио CD кадры не имеют специального заголовка и для определения смещения каждого кадра необходимо следить за информацией в кадре). Это означает, что если при чтении Data-CD привод легко «ориентируется» на диске и никогда не перепутает кадры, то при чтении с аудио компакт диска привод не может ориентироваться четко, что при появлении, скажем, царапины или пыли может привести к чтению неправильного кадра и, как следствие, скачку или треску звучания. Эта же проблема (неспособность большинства приводов правильно позиционироваться на CD-DA) является причиной еще одного неприятного эффекта: копирование информации с Audio CD вызывает проблемы даже при работе с полностью сохранными дисками вследствие того, что правильное ориентирование на диске полностью зависит от считывающего привода и не может быть четко проконтролировано программным путем.
Повсеместное распространение и дальнейшее развитие уже упомянутых lossy-кодеров аудио (MP3, AAC и других) открыло широчайшие возможности распространения и хранения аудио. Современные каналы связи уже давно позволяют пересылать большие массивы данных за сравнительно небольшое время, однако самой медленной остается передача данных между конечным пользователем и поставщиком услуг связи. Телефонные линии, по которым пользователи в большинстве своем связываются с Интернетом, не позволяют осуществлять быструю передачу данных. Нечего и говорить, что такие объемы данных, какие занимает несжатая аудио и видео информация, передавать по привычным каналам связи придется очень долго. Однако появление lossy-кодеров, обеспечивающих десяти-пятнадцати кратное сжатие, превратило передачу и обмен аудио данными в повседневное занятие каждого пользователя Интернета и сняло все преграды, образованные слабыми каналами связи. Касательно этого нужно сказать, что развивающаяся сегодня семимильными шагами цифровая мобильная связь во многом обязана именно lossy-кодированию. Дело в том, что протоколы передачи аудио по каналам мобильной связи работают на приблизительно тех же принципах, что и известные всем музыкальные кодеры. Поэтому дальнейшее развитие в области кодирования аудио неизменно ведет к уменьшению стоимости передачи данных в мобильных системах, от чего конечный пользователь только выигрывает: дешевеет связь, появляются новые возможности, продлевается время работы батарей мобильных устройств и т.д. Не в меньшей степени lossy-кодирование помогает экономить деньги на покупке дисков с любимыми песнями – сегодня стоит только зайти в Интернет и там можно найти почти любую интересующую песню. Безусловно, такое положение вещей давно мозолит глаза звукозаписывающим компаниям – у них под носом люди вместо покупки дисков обмениваются песнями прямо через Интернет, что превращает некогда золотое дно в малоприбыльный бизнес, но это уже вопрос этики и финансов. Одно можно сказать с уверенностью: с таким положением вещей уже ничего нельзя поделать и бум обмена музыкой через Интернет, порожденный именно появлением lossy-кодеров, уже ничем не остановить. А это только на руку рядовому пользователю.
термины
DSP – Digital Signal Processor (цифровой сигнальный процессор). Устройство (или программный механизм) предназначенное для цифровой обработки сигналов.
Битрейт – применительно к потокам данных - количество бит в секунду (bits per second). Применительно в звуковым файлам (например, после lossy-кодирования) – каким количеством бит описывается одна секунда аудио.
Звук - акустическая волна, распространяющаяся в пространстве; в каждой точке пространства может быть представлена функцией амплитуды от времени.
Интерфейс - совокупность программных и аппаратных средств, предназначенных для организации взаимодействия различных устройств.
Интерполяция - отыскание промежуточных значений величины по некоторым известным ее значениям; отыскание значений функции f(x) в точках x, лежащих между точками xo<x1<... <xn, по известным значениям yi = f(xi) (где i = 0,1, ..., n).
Кодек – программа либо устройство, предназначенное для кодирования и/или декодирования данных.
Ресэмплинг (re-sampling) – изменение частоты дискретизации оцифрованных аудио данных.
Сонограмма – график, способ представления спектра сигнала, когда по оси абсцисс откладывается время, по оси ординат частота, а амплитуды гармонических составляющих на соответствующих частотах отражает насыщенность цвета на пересечении временной и частотной координат.
Формат файла (звукового) - структура данных в файле.