Кодирование звука
На этой странице вы узнаете
- Чем звуковая «лесенка» удобнее звуковой волны?
- От чего зависит качество вашей любимой музыки и звук при звонке?
- Для чего нужны каналы записи?
Почему одна и та же мелодия вживую и в записи звучит совершенно по-разному? Почему голос человека может казаться искаженным при звонке? Почему нельзя просто взять и передать звук без ошибок? Ответы на эти вопросы вы найдете в статье.
Дискретизация по времени и уровню громкости
В статье «Дискретное представление информации» мы начали разговор о том, что такое дискретизация. Вспомним кратко: дискретизация — кодирование непрерывных объектов с помощью разбиения их на маленькие отдельные части.
Сегодня у нас на очереди звук.
Звук — это волна, высота которой непрерывно изменяется во времени. Две любые точки на звуковой волне будут разной высоты, пусть человеческое ухо и не почувствует разницы.
Раз волна непрерывна, то и абсолютно точно ее закодировать невозможно — иначе нам бы пришлось представлять в виде понятных компьютеру нулей и единиц бесконечное множество ее точек. Тогда для кодирования звукового файла необходимо применять дискретизацию, причем не одну:
- Дискретизация превратит волну звука в «лесенку» — вместо постоянно меняющейся высоты волны мы будем иметь конкретные уровни громкости, которые будут приближенно равны высоте волны в разные (также дискретизированные, то есть разбитые на маленькие кусочки) моменты времени.
Каждый уровень («ступенька лесенки») кодируется определенным количеством бит, которое определяется глубиной кодирования (битовой глубиной/разрешением).
Глубина кодирования для звука — это количество бит, выделяемое на хранение одного уровня громкости, на которые будет разделена звуковая волна по высоте.
Чем она больше, тем больше у нас будет уровней громкости.
Зависимость количества уровней громкости N от глубины кодирования i будет N = 2i. |
- Дискретизация по времени определяет, сколько именно раз в секунду будет производиться измерение текущего уровня громкости. Количество измерений в одной секунде — частота дискретизации, измеряется в Гц, а в реальности, когда ее значение становится очень большим — в кГц (1 кГц = 1000 Гц).
Частота дискретизации — это количество измерений звуковой волны в секунду.
Всё это кажется сейчас информацией из другой вселенной? Вспомните, как выглядят голосовые сообщения в мессенджерах. Мы сталкиваемся со звуковыми «лесенками» буквально каждый день.
Чем звуковая «лесенка» удобнее звуковой волны? После проведения дискретизации по времени и по громкости вся звуковая волна превратится в «лесенку»: — каждая «ступенька» определяет громкость звука в каждый отдельный момент времени (возможная высота ступеньки определяется глубиной кодирования звука); — каждая секунда аудиозаписи будет разбита на конкретное число ступенек, определяемое частотой дискретизации. И в таком формате кодирование звука не представляет собой никаких проблем, так как мы можем кодировать отдельные «ступеньки». |
Например, следующая звуковая волна была разбита:
- с глубиной кодирования, равной 3 битам, поэтому уровней громкости ровно 2³=8 и каждый закодирован кодом длиной в 3 символа;
- с частотой дискретизации 4 Гц, поэтому на графике в каждой секунде 4 столбика.
Чем больше будут значения глубины кодирования и частоты дискретизации, тем больше «лесенка» будет похожа на оригинальную волну. Если поднять значения из примера выше всего в несколько раз, результат уже будет гораздо более похожим на оригинальную волну:
В реальности эти параметры могут достигать еще больших значений:
- Минимальным значением частоты дискретизации для передачи человеческой речи считается 8000 Гц, оно используется в телефонной связи, а в студиях звукозаписи может принимать значение 192 000 Гц и даже больше.
- Достаточной глубиной кодирования звука считается значение 16 бит, при котором появляется уже 216= 65536 уровней громкости, но для профессиональных работ это значение может доходить и до 32 бит.
Звук, записанный с недостаточно большими частотой и глубиной кодирования, при воспроизведении будет отличаться от изначального так, что это отличие будет заметно человеческому уху. Именно поэтому голос человека при звонке может звучать иначе, а музыкальный трек, записанный на профессиональном оборудовании, будет существенно качественнее «домашней» записи.
Количество каналов. Формула объема звука
Нельзя также забывать про такую характеристику звука, как объемность:
- При прослушивании музыки в наушниках иногда можно услышать, что какие-то музыкальные инструменты громче звучат с одной стороны, а другие — с другой.
- В кинотеатре в масштабных сценах с большим количеством событий можно услышать, что действия, происходящие на экране справа, звучат громче справа, а происходящие слева — громче слева. А иногда и сзади что-нибудь произойдет.
Для чего нужны каналы записи? Объемность звуку придает количество каналов записи, когда в одном файле находится несколько звуковых волн, которые воспроизводятся одновременно. Программы воспроизведения обрабатывают их и выдают звук там, где он должен был быть. |
Например, чтобы озвучить падение двух камней с двух разных сторон, нужно записать оба звука и воспроизводить их вместе, но с разных колонок или через разные наушники.
Так как каждый новый канал добавляет в аудиофайл буквально новые звуковые волны, каждую из них также придется закодировать по тем же параметрам, поэтому количество каналов прямо пропорционально будет увеличивать объем файла.
Количество каналов обозначается специальными словами:
- моно — 1 канал;
- стерео — 2 канала;
- квадро — 4 канала.
Осталось вспомнить, что у записи звука есть еще и продолжительность, и мы имеем все данные, чтобы найти вес звукового файла:
- глубина кодирования i — вес одного уровня звука;
- частота дискретизации F — количество кодируемых уровней громкости в 1 секунде;
- продолжительность t;
- количество каналов записи N.
Полный вес аудиофайла V будет равен произведению всех этих параметров: V = F * i * t * N |
На экзамене понимание особенностей хранения звука на компьютере часто требуется для решения задания №7 ЕГЭ и №1 ОГЭ.
Для примера рассмотрим следующую задачу:
Музыкальный фрагмент был записан в формате моно, оцифрован и сохранен в виде файла без использования сжатия данных. Размер полученного файла — 30 Мбайт. Затем тот же музыкальный фрагмент был записан повторно в формате стерео (двухканальная запись) и оцифрован с разрешением в 5 раз выше и частотой дискретизации в 6 раз меньше, чем в первый раз. Сжатие данных не производилось. Укажите размер полученного при повторной записи файла в Мбайт. В ответе запишите только целое число, единицу измерения писать не нужно.
Решение.
У нас есть 2 записи, сделанные с разными параметрами.
Запишем условия, данные в задаче.
V1 = 30 Мб, V2 = ?
N1 = 1
N2 = 2
t1 = t2F1 = 6F2i2 = 5i1
По формуле:
V1 = F1 * i1 * t1 * N1 и V2 = F2 * i2 * t2 * N2
Выразим V2 через параметры первой записи:
V2 = (F1 / 6) * (5 * i1) * t1 * (2*N1)
V2 = (5/3) * (F1 * i1 *t1 *N1)
Подставим
V1:V2 = (5/3) * V1
V2 = (5/3)*30
V2 = 50
Ответ: 50
В реальной жизни понимание того, как компьютеры обрабатывают звук, нужно везде, где этот звук применяется: запись музыки, ее обработка в специализированных программах, создание приложений, взаимодействующих со звуком, а также во многих других ситуациях.
Кстати, насчет создания приложений: в статье «Основы алгоритмов» мы разберем, как пишутся различные компьютерные программы и строятся алгоритмы для них. Это крайне важно как для решения задач на экзаменах, так и для разработки собственных приложений в будущем.
Термины
Бит — наименьшая единица измерения объема информации. Ему соответствует одна цифра двоичного кода.
Фактчек
- Глубина кодирования определяет количество бит, выделяемое на хранение одного уровня громкости, на которые будет разделена звуковая волна по высоте.
- Частота дискретизации обозначает дискретизацию звука по времени — сколько уровней громкости будет закодировано в 1 секунде.
- Количество каналов определяет объемность звука, добавляя в 1 файл несколько звуковых волн, поэтому прямо пропорционально увеличивает вес всего файла.
Проверь себя
Задание 1.
От чего зависит количество уровней громкости?
- от дискретизации по времени
- от глубины кодирования
- от количества каналов
- от частоты дискретизации
Задание 2.
Что означает формулировка «запись в формате квадро»?
- При записи использовалась глубина кодирования 4 бит.
- Частота дискретизации равна 2 Гц.
- Количество каналов записи равно 2.
- Количество каналов записи равно 4.
Задание 3.
В студии звукозаписи производится одноканальная (моно) запись длиной 3 минуты 25 секунд и с частотой дискретизации 35 кГц. Определите и запишите в ответ максимальную битовую глубину, которая может быть использована при записи музыкального фрагмента, если объём файла не превышает 30 Мбайт.
- 35
- 36
- 70
- 140
Задание 4.
Для записи песни использовалась четырехканальная (квадро) аудиодорожка. Ее сохранили на компьютер с объемом 10 Мбайт. Тот же файл был записан еще раз в формате двухканальной (стерео) записи с разрешением в 3 раза выше и частотой дискретизации в 1,5 раза меньше, чем в первый раз. Определите количество мегабайт, которое занимает файл при повторной записи.
- 5
- 8
- 20
- 10
Ответы: 1. — 2; 2. — 4; 3. — 1; 4. — 4.