Подтема 4 из 5
Звук
Сколько места занимает звукозапись, как найти её длительность и сравнить две записи.
Отсчёты и частота
Типичный вопрос основной волны ЕГЭ-2026: «Звук записан в стерео с частотой дискретизации 16 кГц и глубиной кодирования 16 бит, длительность — 1 мин 25 с. Определи наименьшее целое число Кбайт для хранения записи».
Звук хранят как числа, измеренные через равные промежутки времени. Одно такое измерение называют отсчётом. Частота дискретизации — сколько отсчётов делают за секунду в одном канале: 16 кГц = 16 000 отсчётов в секунду. Килогерцы переводят через 1000, а не через 1024.
Глубина и каналы
Глубина кодирования — сколько битов занимает один отсчёт, а каналы хранятся отдельно. «16-битное разрешение» значит 16 бит на отсчёт. Моно — один канал, стерео — два, квадро — четыре.
Частота отвечает на вопрос «сколько измерений за секунду», глубина — «сколько битов на одно измерение». Это независимые характеристики.
Объём записи
Объём записи V = f · t · c · i бит: отсчётов за секунду × секунд × каналов × битов на отсчёт.
Время сначала переводят в секунды: 1 мин 25 с = 85 с. Объём 16 000 · 85 · 2 · 16 бит = 5312,5 Кбайт. В 5312 Кбайт запись не поместится, поэтому наименьшее целое число Кбайт — 5313: округляем вверх.
from math import ceilv = 16000 * 2 * 16 * (1 * 60 + 25)print(v / 8192, ceil(v / 8192))В минуте 60 секунд: 2 мин 20 с — это 140 с, а не «2,20 минуты». Запись 1 * 60 + 25 переводит время прямо в программе.
Длительность по объёму
Если неизвестна длительность, объём делят на объём одной секунды f · c · i. Стерео, 16 000 Гц, 16 бит, данные занимают 960 000 байт: t = 960 000 · 8 / (16 000 · 2 · 16) = 15 с.
print(960000 * 8 / (16000 * 2 * 16))Если у файла есть заголовок, его сначала вычитают; если данные сжаты — восстанавливают исходный объём (подтема 3).
Две записи
Если тот же фрагмент перезаписали с другими параметрами, объём умножают на отношения этих параметров. Самих объёмов и длительности знать не нужно.
Запись стерео, 48 кГц, 24 бита заняла 48 Мбайт. Тот же фрагмент записали в моно, 24 кГц, 16 бит:
| Параметр | Было → стало | Множитель |
|---|---|---|
| Каналы | 2 → 1 | 1/2 |
| Частота | 48 → 24 кГц | 1/2 |
| Глубина | 24 → 16 бит | 2/3 |
Новый объём 48 · 1/2 · 1/2 · 2/3 = 8 Мбайт. «В 1,5 раза меньше» значит делить на 1,5, то есть умножить на 2/3, — это не «на 50 % меньше».
Тонкости:разное сжатие
Если первую запись сжали так, что осталось 80 %, а вторую — 20 %, к отношению добавляется множитель 0,2 / 0,8 = 1/4. Брать только 0,2 нельзя: первая запись уже была сжата.
Итого
- ОбъёмV = f · t · c · i бит
- кГцчерез 1000: 16 кГц = 16 000 Гц
- Времяв секундах: 1 мин 25 с = 85 с
- Наименьшее целое Кбайтокруглить вверх: 5312,5 → 5313
- Две записиперемножить отношения каналов, частоты и глубины
Проверьте себя
Ответь сначала сам, потом открой ответ.
ОтветСкрыть ответ
ОтветСкрыть ответ
ОтветСкрыть ответ
ОтветСкрыть ответ
ОтветСкрыть ответ
Практика
Для проверки ответов нужен JavaScript. Условия, подсказки и решения доступны ниже.
Стереозапись 10 секунд
Стереозапись длится 10 секунд, частота — 16 кГц, глубина — 16 бит. Найди объём в Кбайтах.
Введите число.
Подсказка
Отсчёты · каналы · биты, затем Кбайты.
Решение
За 10 секунд один канал даёт 16 000 · 10 отсчётов, два канала — вдвое больше, по 16 бит каждый: 16 000 · 10 · 2 · 16 / 8192 = 625 Кбайт.
Решение программой
print(16_000 * 10 * 2 * 16 // 8192)Ответ: 625
Монозапись 20 секунд
Монозапись длится 20 секунд при частоте 48 кГц и глубине 24 бита. Найди объём в Кбайтах.
Введите число; дробную часть можно отделить запятой или точкой.
Подсказка
Килогерцы переводятся через 1000.
Решение
48 кГц = 48 000 Гц. Объём 48 000 · 20 · 24 бит, в Кбайтах 48 000 · 20 · 24 / 8192 = 2812,5.
Решение программой
print(48_000 * 20 * 24 / 8192)Ответ: 2812,5
Минуты в секунды
Сколько секунд в 3 мин 45 с?
Введите число.
Подсказка
В минуте 60 секунд.
Решение
В минуте 60 секунд: 3 · 60 + 45 = 225 с.
Решение программой
print(3 * 60 + 45)Ответ: 225
Голосовое сообщение: целые Кбайты
Голосовое сообщение оцифровано в формате стерео с частотой дискретизации 24 000 Гц и глубиной кодирования 16 бит. Определи наименьшее целое количество Кбайт, необходимое для хранения сообщения без учёта заголовка, если его длительность — 3 минуты 7 секунд.
Введите число.
Подсказка
Наименьшее целое число Кбайт — округление вверх.
Решение
Длительность 3 · 60 + 7 = 187 с. Объём 24 000 · 2 · 16 · 187 / 8192 = 17 531,25 Кбайт. В 17 531 Кбайт запись не поместится, поэтому нужно 17 532 Кбайт.
Решение программой
from math import ceil print(ceil(24_000 * 2 * 16 * 187 / 8192))Ответ: 17532
Наименьшее целое число Кбайт
Файл занимает 1234,6 Кбайт. Каково наименьшее целое число Кбайт, в котором он поместится?
Введите число.
Подсказка
Памяти должно хватить: округляй вверх.
Решение
В 1234 Кбайт файл не поместится — не хватит 0,6 Кбайт. Нужно 1235 Кбайт.
Решение программой
from math import ceil print(ceil(1234.6))Ответ: 1235
Длительность стереозаписи
Стереозапись с частотой 32 кГц и глубиной 16 бит заняла 3750 Кбайт без сжатия и заголовка. Сколько секунд она длится?
Введите число.
Подсказка
Объём делят на объём одной секунды.
Решение
Одна секунда записи занимает 32 000 · 2 · 16 бит. Весь объём 3750 · 8192 бит, длительность 3750 · 8192 / (32 000 · 2 · 16) = 30 с.
Решение программой
print(3750 * 8192 // (32_000 * 2 * 16))Ответ: 30
Длительность в минутах
Стереозапись с частотой 48 кГц и глубиной 24 бита заняла 330 Мбайт без сжатия и заголовка. Определи длительность записи в минутах; в ответе укажи ближайшее целое число.
Введите число.
Подсказка
Ближайшее целое — обычное округление.
Решение
Одна секунда записи занимает 48 000 · 2 · 24 бит, весь объём 330 · 2²³ бит. Длительность 1201,49… с = 20,02… мин, ближайшее целое — 20.
Решение программой
seconds = 330 * 2 ** 23 / (48_000 * 2 * 24)print(round(seconds / 60))Ответ: 20
Стерео, частота ×2, глубина ÷2, сжатие
Несжатая монозапись занимает 10 Мбайт. Тот же фрагмент записали в стерео, частоту увеличили вдвое, глубину уменьшили вдвое. Затем объём новой записи уменьшили на 50 %. Каков результат?
Введите число.
Подсказка
Перемножь множители всех изменений.
Решение
Стерео вместо моно — множитель 2, частота вдвое выше — ещё 2, глубина вдвое меньше — 1/2, сжатие на 50 % — 0,5. Объём 10 · 2 · 2 · 1/2 · 0,5 = 10 Мбайт.
Решение программой
print(int(10 * 2 * 2 / 2 * 0.5))Ответ: 10
Квадро → стерео
Запись в формате квадро заняла 60 Мбайт. Тот же фрагмент записали в стерео с частотой дискретизации в 2 раза выше и глубиной в 1,5 раза меньше. Сжатия нет. Каков объём новой записи?
Введите число.
Подсказка
«В 1,5 раза меньше» — деление на 1,5.
Решение
Каналов стало 2 вместо 4 — множитель 1/2, частота выше вдвое — 2, глубина в 1,5 раза меньше — 2/3. Объём 60 · 1/2 · 2 · 2/3 = 40 Мбайт.
Решение программой
print(round(60 * 2 / 4 * 2 / 1.5))Ответ: 40
Во сколько раз второй файл меньше
Первую запись сжали так, что осталось 80 % объёма. Вторая запись того же фрагмента — моно вместо стерео, частота вдвое выше, глубина та же, сжатие на 75 %. Во сколько раз второй файл меньше первого?
Введите число; дробную часть можно отделить запятой или точкой.
Подсказка
Добавь отношение оставшихся после сжатия долей.
Решение
Без сжатия вторая запись была бы 1/2 · 2 = 1 от первой. После сжатия у первой осталось 0,8, у второй 0,25, поэтому V₂ / V₁ = 0,25 / 0,8 = 0,3125. Второй файл меньше в 1 / 0,3125 = 3,2 раза.
Решение программой
print(0.8 / (1 / 2 * 2 * 0.25))Ответ: 3,2
Моно → квадро
Музыкальный фрагмент записали в формате моно и сохранили без сжатия; файл занял 18 Мбайт. Затем тот же фрагмент записали в формате квадро с глубиной кодирования в 2 раза меньше и частотой дискретизации в 3 раза меньше. Сжатия нет. Укажи размер нового файла в Мбайтах.
Введите число.
Подсказка
Каналы ×4, глубина ÷2, частота ÷3.
Решение
Квадро вместо моно — множитель 4, глубина вдвое меньше — 1/2, частота втрое меньше — 1/3. Новый объём 18 · 4 · 1/2 · 1/3 = 12 Мбайт.
Решение программой
print(int(18 * 4 / 2 / 3))Ответ: 12