Как обычно, сделаю оговорку, что в реальной жизни всё несколько иначе, НО:
Звук распространяется в виде волны.
Как это можно оцифровать? Есть такая штука — дискретизация.
Дискретный — это отдельный, антоним слову «непрерывный». Волна распространяется во времени. На точки надо делить, значит, тоже по времени. Я могу брать 1 точку в секунду, но это скорее всего, бред — мы ведь ничего не услышим.
Мы эту «Волну» разобьём на огромную кучу точек. Например, на 32000 точки в секунду.
Оп-па «В секунду» — это что, скорость, что — ли? Почти! Это частота. Частота, с которой мы будем делать измерения уровня звука. 32 КГц = 32000 раз в секунду (32000 точек на единицу времени).
То есть, закодированный аудиофайл — это последовательность таких точек. Эти точки на физическом уровне — ни что иное, как двоичные коды. Каждый код обозначает какой-то уровень звука. Чем больше бит мы тратим на код — тем точнее значение звука, тем он «чище».
Количество бит в каждой такой точке тоже называется «глубиной» кодирования
Типичное задание выглядит так:
Есть стерео запись (двух-канальная) с частотой дискретизации 32КГц и глубиной кодирования 32 бит. Сколько Мбайт занимает эта запись, если её продолжительность 2 минуты?
Каналы какие-то… Да, иногда для записи использую запись нескольких отдельных аудиопотоков. Как-будто левый и правый наушник, но 2 канала — это не предел. В общем, надо просто домножить на 2
В итоге формула выглядит так: I = F*R*K*T
F — частота;
R — глубина;
K —кол-во каналов;
T — время;
Для нашей задачи: I = 32*10^3*32*2*120 = 245,760,000 бит (никогда так не считай), чтобы дать ответ в Мбайтах надо было разделить это дело на 2^23
I = 32*10^3*32*2*120 /2^23=29.2969 — в целом 30-ти хватит 🙂
Авторизуйтесь, чтобы оставить комментарий.