Три способа кодирования звука
Три способа кодирования звука
Звук может быть закодирован в цифровой формат с использованием трех принципиально различных методов. (Они различаются так же, как покадровая и трансформационная анимация.) Давайте все о них разузнаем.
Прямая оцифровка
Первый метод, применяемый при кодировании звука, — самый простой и очевидный. Источник звука подключается к линейному входу звуковой карты компьютера, после чего звук переписывается на компьютер и сохраняется в файле. Этот метод называется прямой оцифровкой звука.
Для кодирования звука методом прямой оцифровки используется способ, называемый PCM (Pulse Coded Modulation — импульсно-кодовая модуляция). Суть его в том, что звуковая карта с частотой много тысяч раз в секунду замеряет уровень звукового сигнала и записывает получившиеся значения в массив данных. Этот массив данных и представляет собой оцифрованный звук.
Преимущество у способа РСМ одно — звук копируется очень точно, со всеми нюансами. Именно поэтому прямая оцифровка — самый популярный путь к тому, чтобы дать звуку новую, цифровую, жизнь. Все цифровые звуковые данные — компакт-диски, файлы MP3 — записаны именно таким образом.
Недостаток у прямой оцифровки, пожалуй, тоже один — очень большой объем результирующего массива данных. (В самом деле, сколько значений получится, если замерять уровень сигнала, скажем, 44 100 раз в секунду!) Поэтому, чтобы уменьшить его, практически всегда применяется сжатие звука — как правило, с потерями. Для этого используются специальные алгоритмы (и кодеки), "заточенные" под звук.
Алгоритмов сжатия звука в мире существует, по крайней мере, не меньше, чем кодеков, предназначенных для сжатия видео. Давайте рассмотрим самые распространенные из них.
? ADPCM. Был разработан фирмой Microsoft для сжатия звуковых файлов WAV еще в начале 90-х годов прошлого века. Обеспечивает не очень сильное сжатие, зато без потерь. Сейчас применяется только для сжатия очень коротких звуковых клипов, в основном — системных "сигналов" операционной системы Windows.
? MPEG I level 3 (MP3). Был разработан университетом Фраунгофера в Германии в середине 90-х годов для сжатия звуковых файлов. Является версией известного алгоритма сжатия видео MPEG I (см. главу 1), специально предназначенной для сжатия звука. В настоящее время — самый популярный формат сжатия звука.
? RealMedia. Был разработан фирмой RealNetwork в середине 90-х годов для распространения видео и музыки через Интернет. Собственно, мы уже рассматривали его в главе 1. В настоящее время — один из популярнейших алгоритмов сжатия звука.
? OGG Vorbis. Был разработан сообществом независимых программистов в конце 90-х годов как замена MPEG I level 3. В настоящее время потихоньку завоевывает популярность. Программное обеспечение для сжатия звука поставляется бесплатно с открытыми исходными текстами.
? WMA (Windows Media — Audio). Еще один конкурент MPEG I level 3. Был разработан фирмой Microsoft в конце 90-х годов. В настоящее время постепенно завоевывает популярность.
Многие из перечисленных выше форматов поддерживаются Flash.
Командное кодирование
Второй метод кодирования звука основан на том принципе организации данных, при котором в файлах хранятся не оцифрованные значения уровня звукового сигнала, а особые команды, указывающие, какой звук и какой продолжительности нужно сгенерировать. При воспроизведении эти команды читаются и выполняются либо специальной программой-проигрывателем, либо соответствующим образом оснащенной звуковой картой компьютера. Это так называемое командное кодирование звука.
Для записи файлов, содержащих закодированный таким образом звук, используются специальные программы. Практически всегда методом командного кодирования записывается музыка; команды содержат номер инструмента, высоту и продолжительность ноты. Записать, скажем, речь, шум, старую фонограмму или "живое" исполнение по способу командного кодирования невозможно — для этого нужно использовать прямую оцифровку.
Достоинство командного кодирования — компактность получающихся файлов. В самом деле, чтобы записать пару байтов, составляющих команду, много места не нужно. Поэтому такие файлы очень часто используются для распространения музыки через Интернет.
Недостатков у командного кодирования два. Первый нам уже знаком — не всякий звук можно записать этим способом. Второй недостаток — очень часто разные программы воспроизводят закодированный таким способом звук по-разному.
Командное кодирование используется, в основном, для записи и тиражирования музыки и имеет достаточно узкое распространение. А форматов записи закодированного командами звука всего два, и вот каких.
? MIDI. Расшифровывается как Music Instruments Digital Interface — цифровой интерфейс музыкальных инструментов. Был разработан фирмой Yamaha еще в начале 80-х годов. Используется, в основном, для распространения музыки через Интернет и для создания фонового музыкального сопровождения Web-сайтов.
? KAR. Используется для распространения записей караоке. Файлы этого формата практически такие же, как файлы MIDI, но, кроме команд воспроизведения звука, содержат тексты песен. Этот формат довольно популярен, по крайней мере, в русском сегменте Интернета.
Ни один из этих форматов не поддерживается Flash.
Командно-сэмплерное кодирование
Третий метод — своего рода комбинация первого и второго. Он называется командно-сэмплерным кодированием звука.
Заключается он в том, что в звуковом файле, как при командном кодировании, сохраняются команды для воспроизведения звука, содержащие номер инструмента, высоту и продолжительность ноты. Но, кроме того, файл хранит также небольшие фрагменты звучания того или иного инструмента, записанные способом прямой оцифровки. Такие фрагменты называются сэмплами. Фактически номер инструмента, содержащийся в каждой команде воспроизведения звука, указывает именно на сэмпл.
Проигрыватель, воспроизводя файл, читает команду и извлекает из нее номер сэмпла. Далее он считывает из файла нужный сэмпл и использует его для воспроизведения звука.
На заметку
В случае командного кодирования для воспроизведения инструментов в настоящее время также используются сэмплы. Однако эти сэмплы принадлежат не самому звуковому файлу, а программе-проигрывателю. Существует много разных проигрывателей, использующих свои специфические сэмплы, поэтому звук, воспроизводимый ими, зачастую различается.
Достоинств у командно-сэмплерного кодирования два. Первое — файлы имеют размер меньший, чем файлы, содержащие оцифрованный напрямую звук (но больший, чем звуковой файл, полученный командным кодированием). Второе — звук воспроизводится одинаково разными программами.
Как ни странно, но командно-сэмплерное кодирование звука не снискало большой популярности. Сейчас его используют только особые "малобюджетные" программы создания музыки, называемые трекерами. Файлы, создаваемые с помощью трекеров, называются трекерными модулями. Трекеры были особенно популярны в 80-х и начале 90-х годов прошлого века; сейчас же они доживают свои дни.
Программ, поддерживающих трекерные модули (кроме, собственно, самих трекеров), очень немного. Flash к ним не относится.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКДанный текст является ознакомительным фрагментом.
Читайте также
Обеспечение кодирования данных
Обеспечение кодирования данных PoPToP использует программу pppd, которая, в свою очередь, использует средства ядра. В частности, PoPToP требует, чтобы демон pppd поддерживал кодирование, a pppd требует, чтобы средства поддержки кодирования присутствовали в ядре Linux. Поэтому для
10.1. Два способа установки ПО
10.1. Два способа установки ПО Необходимость в установке новых программных пакетов под LINUX возникает в двух основных случаях: • когда появляется новая версия одного из уже установленных у вас пакетов; • когда возникает желание или необходимость использовать какой-то
16.13.6 Метод кодирования Base64
16.13.6 Метод кодирования Base64 Метод кодирования Base64 преобразует любой тип данных к большему в 3 раза количеству текстовых символов. Данные разделяются на части по три 8-разрядных, байта. Например:10001000 00110011 11110001Для преобразования эта последовательность сначала разделяется
1. Форматы кодирования файлов Интернет
1. Форматы кодирования файлов Интернет Форматы файлов Интернет можно разделить на несколько групп. Во первых форматы передачи файлов по FTP, для чего очень давно была разработана схема uuencode/decode, замененная затем на xxencode/decode. В дальнейшем произошел отказ в пользу Base64 и MIME,
Секреты кодирования
Секреты кодирования Окна Code (Окна программного кода) - это сердце редактора Visual Basic: в них вы создаете VBA-операторы, непосредственно выполняющие полезную работу. В этой главе я не собираюсь говорить об использовании VBA-операторов, сосредоточусь на том, как получить максимум
Стиль кодирования
Стиль кодирования Константа для одного является переменной для другого. — Алан Перлис (Alan Perlis) В этом разделе мы перейдем от вопросов проектирования к вопросам, которые появляются в основном при реальном кодировании.Правила и рекомендации из этого раздела применимы
Особенности кодирования литеральных символов и пар расстояние/длина
Особенности кодирования литеральных символов и пар расстояние/длина В предыдущих разделах ничего не было сказано о небольшом нюансе реализации алгоритма: как в процессе считывания сжатых данных отличить литеральный символ от кода расстояние/длина? В конце концов, не
Стандарты кодирования
Стандарты кодирования Недавно мы начали определять стандарты кодирования. Очень полезно - жаль не сделали этого раньше. Это не займёт много времени, начни с простого и постепенно дополняй. Записывай только то, что может быть понятно не всем, при этом, по возможности, не
Выбор способа управления списками САС
Выбор способа управления списками САС Для функционирования PKI критически важно правильное управление списками САС: именно они обеспечивают проверку статуса используемого сертификата, так как дата окончания срока действия, указываемая в сертификате, не может служить
Выбор способа публикации САС
Выбор способа публикации САС Выбирая способ публикации САС, организация должна оценить преимущества и недостатки каждого из трех возможных способов (публикация с опросом наличия изменений, принудительная рассылка изменений и онлайновая верификация), характер