Представление звука

Как известно из курса физики, звук — это воспринимаемые человеком колебания среды (воздуха или воды). Как и любая волна, звуковая волна характеризуется двумя основными параметрами — амплитудой (величиной колебания) и частотой (количеством колебаний за единицу времени). Эти параметры в физических звуковых волнах постоянно изменяются; воспринимая их, мы слышим звук.

Поскольку в природе звуковая волна непрерывна, для обработки звука на ЭВМ необходимо построить модель его оцифровки (дискретизации) — превращения в числовое (двоичное) представление и обратное преобразование — для воспроизведения.

Схема выполнения дискретизации и оцифровки звуковой волны

Для выполнения оцифровки звука он с помощью микрофона может переводиться и в электрические колебания. Процесс оцифровки звука — это составление таблицы замеров возникающего напряжения. Замеры выполняются через определенные равные промежутки времени. Для того чтобы охарактеризовать этот промежуток, указывают частоту дискретизации — количество замеров за одну секунду. Точность оцифровки напрямую зависит от частоты: чем чаще замеры, тем точнее может быть передано колебание звука при воспроизведении. Понятно, что частота дискретизации не должна быть ниже частоты самого звука.

Второй параметр, от которого зависит точность воспроизведения, — это количество возможных градаций напряжения, которое зависит от количества битов, отведенных на запись значения.

Объем получающихся данных достаточно большой. Например, при записи 16-битного звука с частотой
22 КГц одна минута звучания займет в памяти 60 секунд * 22 000 значений * 2 байта = 2 460 000 байт.

С появлением мини-ЭВМ, а позднее — персональных компьютеров, в составе аппаратных средств появились и средства, обеспечивающие взаимодействие компьютеров с простейшими генераторами звука — динамиками. Эти простейшие средства работы со звуком использовались в основном (и используются до сих пор) как средство диагностики и реакции на действия оператора системы.

Существовали также системы, служившие просто интерфейсом-преобразователем между портами ввода-вывода и звуковой системой. Такой интерфейс с помощью достаточно быстрого обновления статуса порта создавал колебания определенной частоты. Звук в этих системах мог быть только синтезированный, описанный в виде указания длительности колебаний определенной частоты. Подобная система не могла управлять амплитудой звука и воспроизводила звук очень неточно, что сильно ограничивало применимость таких систем.

Первые попытки применения систем работы со звуком на персональных компьютерах начались с появлением в конце 1980-х годов первой платы, позволявшей синтезировать звук: звукового устройства AdLib Music Synthesizer компании AdLib. Используя метод частотной модуляции, плата позволяла синтезировать звуки, примерно передающие несложные мелодии. Существенной особенностью стала поддержка взаимодействия с электронными инструментами — по стандарту MIDI. Плата также содержала и синтезатор звука, позволявший моделировать звучание нескольких музыкальных инструментов одновременно (т.е. нескольких голосов). В первой версии платы обеспечивалась возможность звучания 6 голосов.

Активное применение средств работы со звуком в повседневной практике началось с появлением в 1989 году доступной по цене платы расширения (позднее платы выпускались под торговой маркой SoundBlaster) компании Creative. Отличительной особенностью этой платы была возможность точного воспроизведения звука в достаточно широком диапазоне частот (от 22 Гц до 22 КГц) и с достаточно высокой частотой дискретизации — 2 кГц, 8 бит (воспроизведение) и 11 кГц, 8 бит (запись). Для кодирования звука в этих платах использовался метод импульсно-кодовой модуляции (Pulse-Code Modulation). Суть метода состоит в измерении значения сигнала с определенной частотой, которая равняется максимальному значению частоты изменения в измеряемом спектре. Точность кодирования в этом случае зависит, во-первых, от максимальной частоты дискретизации, а во-вторых — от разрядности.

При оцифровке звука таким способом точность передачи неизбежно падает — из-за неточностей округления уровня сигнала до целого и существования некоторого промежутка усреднения. Для уменьшения степени ошибки в современных системах применяют дельта-кодирование. При использовании этого метода записывается не уровень сигнала, а разница с предыдущим значением. Это позволяет сильно сократить ошибки, возникающие из-за ограничения на разрядность.

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

Существенным направлением совершенствования системы работы со звуком являются средства воссоздания объемного звучания, т.е. такого воспроизведения звука, при котором его источники “локализуются” в окружающем слушателя пространстве. Первым средством такого рода было введение в 70-х годах стереозвука (двухканального воспроизведения).

Позже — сначала для кинотеатров, а после и для обычной техники — появились каналы и средства воспроизведения низких и сверхнизких частот, сабвуфера. Такая система представления звука получила обозначение “2.1-канальная” (2 основных и один дополнительный канал).

В более современных системах, например популярной DolbyDigital AC3, используется 5 каналов для звука обычных частот (левый, правый и центральный передние каналы, левый и правый задние каналы) и сабвуфер. Такие системы называют “5.1-канальными”.