© М.Е. Крекин, 1999, 2002
Глава 5 Кодирование звука
Из курса физики вам известно, что звук -- это колебания воздуха. О том, как можно закодировать их для компьютерной обработки и пойдет речь в этой -- последней -- главе
Если преобразовать звук в электрический сигнал (например, с помощью микрофона), мы увидим плавно изменяющееся с течением времени напряжение. Для компьютерной обработки такой -- аналоговый -- сигнал нужно каким-то образом преобразовать в последовательность двоичных чисел.
Поступим следующим образом. Будем измерять напряжение через равные промежутки времени и записывать полученные значения в память компьютера. Этот процесс называется дискретизацией (или оцифровкой), а устройство, выполняющее его -- аналого-цифровым преобразователем (АЦП).
Для того чтобы воспроизвести закодированный таким образом звук, нужно выполнить обратное преобразование (для него служит цифро-аналоговый преобразователь -- ЦАП), а затем сгладить получившийся ступенчатый сигнал.
Чем выше частота дискретизации (т.е. количество отсчетов за секунду) и чем больше разрядов отводится для каждого отсчета, тем точнее будет представлен звук. Но, естественно, увеличивается и размер звукового файла. Поэтому, в зависимости от характера звука, требований, предъявляемых к его качеству и объему занимаемой памяти, выбирают некоторые компромиссные значения. Например, при записи на компакт-диски используются 16-битные отсчеты при частоте дискретизации 44032 Гц15. При работе же только с речевыми сигналами достаточно 8-битных отсчетов при частоте 8 кГц16.
Описанный способ кодирования звуковой информации универсален, он позволяет представить любой звук, преобразовывать его самыми разными способами. Но бывают случаи, когда выгодней действовать по-иному.
Человек издавна использует довольно компактный способ представления музыки -- нотную запись. В ней специальными символами указывается, какой высоты звук, на каком инструменте и как сыграть. Фактически, ее можно считать алгоритмом для музыканта, записанным на особом формальном языке. А вы уже знаете, что для "перевода" символьной информации в понятную компьютеру форму достаточно иметь таблицу соответствия между символами этого языка и их двоичными кодами.
В 1983 г. ведущие производители компьютеров и музыкальных синтезаторов разработали стандарт, определивший такую систему кодов. Он получил название MIDI17.
Конечно, такая система кодирования позволяет записать далеко не всякий звук, она годится только для инструментальной музыки. Но есть у нее и неоспоримые преимущества: чрезвычайно компактная запись, естественность для музыканта (практически любой MIDI-редактор позволяет работать с музыкой в виде обычных нот), легкость замены инструментов, изменения темпа и тональности мелодии. А кроме того, качество звучания зависит исключительно от возможностей синтезатора или звуковой платы компьютера, с помощью которых это происходит.
Заметим, что существуют и другие -- уже чисто компьютерные -- форматы записи музыки, основанные на подобном же принципе.
Контрольные вопросы
- Как кодируется звук в компьютере? С чем связано качество звучания звукового файла?
- Какие существуют два способа кодирования музыки? Назовите их преимущества и недостатки. Есть ли аналогия с двумя способами представления изображений? Какая?
Примечания
- По теореме Котельникова частота дискретизации должна превосходить наивысшую записываемую частоту как минимум вдвое. Человек слышит звук с частотами примерно до 20000 Гц. Стандарт на компакт-диски разрабатывался в расчете на весь слышимый диапазон.
- Чтобы можно было понять человеческую речь достаточно передавать звук с частотой до 3000 Гц (это примерно соответствует характеристикам телефонных линий связи)
- Musical Instrument Digital Interface (англ.) -- цифровой интерфейс для музыкальных инструментов. Этот стандарт определяет еще и физические характеристики линий передачи, протоколы связи и многое другое. В результате все MIDI-устройства совместимы между собой
|