Кодирование звука в задании ЕГЭ по информатике № 7

Автор статьи: Андрей Рогов

Как звуковая информация кодируется в компьютере

Ранее мы рассмотрели кодирование изображений. Теперь поговорим о том, как звуковая информация кодируется в компьютере.

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

img

Первый параметр — амплитуда. Это высота волны, которая влияет на громкость звука. Дискретизацию по амплитуде также называют квантованием по амплитуде.

Диапазон амплитуды от минимального до максимального значения делится на несколько равных отрезков. Чем больше отрезков, тем точнее запишется конкретное значение амплитуды. Если обозначить общее количество уровней амплитуды как $N$, то формула $N = 2^i$ позволит определить $i$ — глубину звука, то есть вес в битах одного измерения.

На рисунке ниже пример измерения амплитуды. Весь диапазон значений разбит на $5$ различных значений. Значит, каждое измерение займет $3$ бита.

img

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

Как и в физике, частота измеряется в Герцах. Обозначать ее будем буквой $f$. Частота показывает количество измерений в секунду. Соответственно, чтобы узнать общее количество измерений, нужно частоту дискретизации умножить на количество секунд в звуковом файле — на его продолжительность. Обозначим продолжительность звука буквой $t$.

Возможно, слушая музыку в наушниках или на стереосистеме, вы замечали, что иногда звук для левого и правого каналов отличается. Это добавляет разнообразия в звучании. А в компьютерных играх можно, например, определить направление шагов соперника. Чтобы достичь такого эффекта, нужно воспроизводить для каждого канала свой звук:

  • когда звуковой канал всего один, звук называется монофоническим;
  • когда канала два — стереофоническим;
  • когда четыре — квадрофоническим.

И это не предел. В кинотеатрах часто используют восьмиканальный звук, а система Dolby Atmos поддерживает до $64$ каналов звука.

Соберем итоговую формулу для кодирования звука.

$I = k \cdot i \cdot f \cdot t$

где $I$ — вес звукового файла, $k$ — количество каналов, $f$ — частота дискретизации, $t$ — время звучания файла в секундах.

Часто в задачах встречаются производные единицы измерения информации: байты, килобайты, мегабайты. Напомним их соотношение:

  • $1$ байт = $8$ бит
  • $1$ Кбайт = $1024$ байта = $2^{10}$ байт
  • $1$ Мбайт = $1024$ Кбайт = $2^{10}$ Кбайт

Для вычислений можно использовать калькулятор или Python Shell.

Далее разберем, как применить эту теорию на практике — для решения задания 7 в ЕГЭ по информатике.

Задача 1

Ссылка на задачу

img

Определим параметры звука и обозначим их. $k=2$, поскольку звук в формате стерео. Глубину звука так же часто называют разрешением, $i=16$ бит. Частота $f=44\,100$ гц, $t=60$ секунд. Важно перевести время в секунды, чтобы единицы измерения были в одной системе (Герцы — это обратная секунда).

Ищем общий размер файла по формуле $I = k \cdot i \cdot f \cdot t$.

$I = 2 \cdot 16 \cdot 44\,100 \cdot 60 = 84\,672\,000 \text{ бит} = 10.09 \text{ Мб}$

По условию задачи необходимо указать минимальное целое количество — это $11$ Мб.

Задача 2

Ссылка на задачу

img

В задаче есть исходный и перекодированный файл. Удобнее не рассматривать их по отдельности, а проследить, как менялись характеристики файла.

Исходный звук был в формате моно и перекодирован в формат стерео. Следовательно, размер файла увеличился в два раза, поскольку изначально был один канал, а стало два. Разрешение уменьшилось в два раза, значит, и размер файла уменьшился в два раза. Частота дискретизации увеличила размер файла в $1.5$ раза.

В итоге, можно записать соотношение

$I_2 = I_1 \cdot 2 \cdot \frac{1}{2} \cdot 1.5 = 1.5 \cdot I_1 = 1.5 \cdot 50 = 75 \text{ Кбайт}$

Задача 3

Ссылка на задачу

img

Эту задачу решим по-другому: найдем объем файла до преобразования и после и затем определим, как изменилось количество килобайт.

Изначально параметры звука следующие: $k = 2$, поскольку звук стерео, $N = 65\,536$, соответственно, $i = 16$ бит, $f = 11\,000$ гц, $t = 4 \cdot 60 + 16 = 256$ секунд.

Объём файла $I_1 = 2 \cdot 16 \cdot 11\,000 \cdot 256 = 90\,112\,000$ бит.

После преобразования $N = 1024$, $i = 10$ бит, $f = 44\,000$ гц. Остальные параметры остались прежними.

Объём файла $I_2 = 2\cdot 10 \cdot 44\,000\,256 = 225\,280\,000$ бит.

Разность $225\,280\,000 - 90\,112\,000 = 135\,168\,000 \text{ бит} = 16\,500 \text{ Кбайт}$.

Задача 4

Ссылка на задачу

img

Найдём размер файла после перекодирования, но до сжатия. Для этого проследим за параметрами звука: количество каналов уменьшилось в два раза, изменение остальных параметров есть в условии задачи.

$I_2 = \frac{I_1}{2} \cdot 1.5 \cdot \frac{1}{3} = \frac{48}{2} \cdot 1.5 \cdot \frac{1}{3} = 12 \text{ Мб}$

\
В задаче указали, что размер полученного файла равен 6 Мб. Следовательно, его сжали в два раза.

Заключение

Как мы уже говорили, задание 7 в ЕГЭ по информатике не вызовет сложностей, если знать нужную теорию. В этой статье мы рассмотрели задачи на кодирование звука — но на экзамене могут встретиться и другие варианты. Поэтому в следующей статье рассмотрим задачи на передачу информации.

А ещё предлагаем решить подборку задач, чтобы закрепить новые знания.

Источник: Яндекс Учебник — Кодирование звука в задании ЕГЭ по информатике № 7. Каталог разборов: education.yandex.ru.

Назад к статьям Поделиться