Лекція 6. Як комп’ютер зберігає звук і відео
Лекція 6. Як комп’ютер зберігає звук і відео
Section titled “Лекція 6. Як комп’ютер зберігає звук і відео”Рівень 1: Мисливець за даними
Марко, сьогодні ми не просто вивчимо новий термін — ми відкриємо ще один шар того, як насправді працює комп’ютер.
Що ми сьогодні розкриємо
Section titled “Що ми сьогодні розкриємо”- зрозуміти ідею цифрового вимірювання звуку
- познайомитися з частотою дискретизації
- побачити, чому відео створює величезні потоки даних
Зв’язок з попередніми лекціями
Section titled “Зв’язок з попередніми лекціями”У цій лекції ми використаємо поняття кодування даних, яке докладніше розглянемо у лекції 7, щоб зрозуміти, як звук і відео перетворюються на цифрові дані.
Звук — це зміни тиску, які можна вимірювати
Section titled “Звук — це зміни тиску, які можна вимірювати”Коли струна гітари рухається, вона штовхає повітря. Мікрофон перетворює ці зміни на електричний сигнал. Щоб записати його цифрово, комп’ютер багато разів на секунду вимірює рівень сигналу й записує числа.
Кожне таке вимірювання називають sample — вибіркою. Це наче дуже швидко фотографувати положення хвилі.
Sample rate — скільки вимірювань за секунду
Section titled “Sample rate — скільки вимірювань за секунду”Якщо запис має sample rate 44 100 Hz, це означає 44 100 вимірювань за секунду для одного каналу. Більше вимірювань дає змогу точніше описати швидкі зміни сигналу, але створює більше даних.
Ми не будемо зараз занурюватися в складну акустику. Нам важлива комп’ютерна ідея: безперервне явище перетворюється на багато чисел.
Відео — багато картинок плюс звук
Section titled “Відео — багато картинок плюс звук”Відео можна грубо уявити як швидку послідовність кадрів. 30 fps означає приблизно 30 кадрів за секунду. Якщо кожен кадр має мільйони пікселів, сирих даних виходить неймовірно багато.
Саме тому відео активно стискають. Хороший кодек не зберігає кожен кадр «як повністю нову фотографію», а намагається використати повтори й зміни між кадрами.
Приклади
Section titled “Приклади”Приклад 1
Section titled “Приклад 1”Якщо ми вимірюємо просту хвилю 8 разів, можемо отримати числа на кшталт 0, 5, 9, 5, 0, -5, -9, -5. Це вже маленьке цифрове представлення зміни сигналу.
Приклад 2
Section titled “Приклад 2”1 секунда відео при 30 fps містить 30 кадрів; 10 секунд — приблизно 300 кадрів.
Приклад 3
Section titled “Приклад 3”Якщо у відео довго видно нерухоме небо, кодек може використати те, що багато областей мало змінюються, замість повного повторення всіх пікселів.
Python-лабораторія: малюємо числову хвилю символами
Section titled “Python-лабораторія: малюємо числову хвилю символами”samples = [0, 2, 5, 8, 5, 2, 0, -2, -5, -8, -5, -2, 0]
for value in samples: position = value + 8 print(" " * position + "*")Це не справжній аудіоплеєр, але програма показує важливу ідею: звук можна представити послідовністю числових вимірювань.
Місія для Марка
Section titled “Місія для Марка”Виконай місію по черзі. Якщо щось не виходить — спочатку перечитай приклад вище й спробуй знайти, на якому кроці результат відрізняється.
- запусти приклад із хвилею
- зміни хоча б чотири числа й подивись, як зміниться форма
- порахуй, скільки кадрів приблизно буде у 2 хвилинах відео при 30 fps
- поясни, що означає sample rate своїми словами
- назви дві причини, чому відео потребує більше даних, ніж одна фотографія
Перевір себе
Section titled “Перевір себе”- Що таке sample?
- Що означає 44 100 Hz у цифровому звуці?
- Що означає 30 fps?
- Чому відеофайли зазвичай стискають?
- Яка спільна ідея є у цифровому фото та цифровому звуці?
Терміни однією фразою
Section titled “Терміни однією фразою”- Звукова хвиля — зміни тиску повітря, які мікрофон перетворює на сигнал.
- Sample (вибірка) — одне вимірювання рівня звуку в певний момент часу.
- Sample rate (частота дискретизації) — скільки вимірювань за секунду (наприклад 44 100 на секунду).
- Hz (герц) — «разів за секунду» для частоти.
- Кадр (frame) — одна картинка відео; відео — це швидка серія кадрів.
- fps (frames per second) — кадрів за секунду (наприклад 30 fps).
- Кодек — програма-правила, що стискають і розпаковують відео чи звук.
Чек-лист перед наступною лекцією
Section titled “Чек-лист перед наступною лекцією”- Чи можеш ти пояснити, що таке частота дискретизації (sample rate)?
- Чи знаєш ти, що таке fps і як він пов’язаний з відео?
- Чи розумієш ти, що таке кодек і навіщо він потрібен?
Що потрібно винести з лекції
Section titled “Що потрібно винести з лекції”- звук у цифровому вигляді можна представити послідовністю виміряних чисел
- відео містить багато кадрів і зазвичай звук
- оцифрування перетворює явища реального світу на дані, які комп’ютер може зберігати й обробляти
Хакерський принцип: не запам’ятовуй магічні слова. Намагайся пояснити своїми словами, що відбулося і чому.