- •Глава 3. Представление данных в вычислительных системах
- •2. Представление рациональных чисел
- •100000001100011100111110
- •01010100
- •Число с плавающей двоичной точкой
- •3. Представление текстовых данных
- •5. Представление звуков
- •6. Упаковка данных
- •1. Алгоритмы на основе принципа Азбуки Морзе
- •2. Алгоритмы, широко используемые в современных архиваторах
- •3. Алгоритмы упаковки оцифрованных реальных сигналов
- •7. Контрольные суммы
- •8. Введение в криптографию
5. Представление звуков
Два основных подхода к хранению звуковых файлов можно сопоставить с векторным и растровым способами хранения изображений: это MIDI и подобные ему форматы, и оцифрованный звук.
В формате MIDIзвук генерируется синтезатором, который умеет, порол звуки различного тембра, высоты, длительности и громкости. Тембры звуков обычно более или менее соответствуют звукам распространенных музыкальных инструментов. Вместо собственно звука хранится последовательность команд этого синтезатора. Используя в качестве звуковых примитивов фонемы человеческого языка, этот подход можно применить и синтеза речи.
MIDI-файлы имеют малый объем и, при наличии аппаратного синтеза не требуют ресурсов центрального процессора для воспроизведения, поэтому их часто используют в качестве фонового озвучивания игровых программ и Web-страниц. К недостаткам этого формата следует отнести тот факт, что качество его воспроизведения определяется качеством синтезатора, которое у дешевых звуковых карт оставляет желать лучшего, и то, что далеко не всякий звук можно воспроизвести таким способом.
Задача преобразования реального звука в MIDI сродни задаче векторизации растрового изображения и другим задачам распознавания образов, и в общем виде не разрешима.
Оцифрованный звук, напротив, является результатом простого осуществления аналого-цифрового преобразования реального звука. Характеристиками (такого звука являются частота дискретизации, разрешение АЦП и количество каналов — моно или стерео.
6. Упаковка данных
Данные многих форматов имеют значительный объем, поэтому их хранение и передача зачастую требуют значительных ресурсов. Одним из способов решения этой проблемы является повышение емкости запоминающих устройств и пропускной способности каналов связи. Однако во многих случаях применима и более дешевая альтернатива этим методам — упаковка данных.
Научной основой всех методов упаковки является теория информации: данные, в которых имеются статистические автокорреляции, называются избыточными. Соответствие потока данных тем или иным правилам теория информации описывает как наличиестатистических автокорреляций или информационной избыточностив потоке. Такие данные всегда будут иметь больший объем, чем эквивалентные, но не соответствующие никаким правилам. Естественные языки обеспечивают очень высокую (в письменной форме двух- трехкратную, а в звуковой еще большую) избыточность за счет применения сложных фонетических, лексических и синтаксических правил. Устранив эти автокорреляции, объем данных можно уменьшить без потери смысла, а зачастую и с возможностью однозначно восстановить исходные данные. Методы, которые не позволяют по упакованному потоку восстановить исходный, называютсянеобратимыми, приблизительнымиилисжимающими с потерями(losing compression). Соответственно, методы, которые позволяют это сделать, называютсяобратимыми, точными, илисжимающими без потерь(losless compression).
Множество способов упаковки можно представить следующей классификацией: