01 Медиа как данные в сети
Медиа как данные в сети: от сигнала до IP‑пакетов

В этом разделе разберёмся, как обычный аудио‑ или видеосигнал превращается в набор сетевых пакетов, которые могут передаваться по IP‑сети. Важно понимать цепочку преобразований и чётко различать два уровня:
- уровень медиаформатов (как данные закодированы и упакованы);
- уровень сетевого транспорта (как эти данные доставляются по сети).
Это разделение будет постоянно встречаться во всех последующих темах курса.
1. Исходный медиасигнал: аналоговый и цифровой
Когда видеокамера или микрофон фиксируют сигнал, на самом первом этапе мы имеем дело с физическим сигналом:
- видеосигнал — это непрерывное изменение яркости и цвета в каждой точке изображения во времени;
- аудиосигнал — это непрерывное изменение звукового давления (колебаний воздуха), которое воспринимает микрофон.
Такой сигнал может быть:
- Аналоговым
Значения меняются непрерывно во времени. Примеры:- старые CCTV‑камеры с композитным выходом;
- микрофон, подключенный к аналоговому микшерному пульту.
- Цифровым
Сигнал уже представлен в виде чисел (дискретных значений). Примеры:- современная IP‑камера;
- USB‑микрофон, подключённый к компьютеру или цифровые микрофоны, например, DANTE.
Даже если устройство "мыслит" аналогово, для работы в цифровой сети сигнал всё равно нужно оцифровать.
2. Оцифровка: превращение непрерывного сигнала в числа
Оцифровка (дискретизация и квантование аналогового сигнала) — это процесс, при котором непрерывный аналоговый сигнал переводится в набор чисел.
2.1. Оцифровка аудио
Для аудио вводятся два ключевых параметра:
- Частота дискретизации (sampling rate) — сколько раз в секунду измеряется амплитуда звука.
Примеры: 44,1 кГц, 48 кГц (то есть 44 100 или 48 000 измерений в секунду). - Разрядность (bit depth) — квантование по уровню сигнала: сколько бит используется для представления одного измерения (сэмпла).
Примеры: 16 бит, 24 бита.
Каждое такое измерение называется аудиосэмплом (audio sample).
Последовательность аудиосэмплов образует цифровой аудиопоток.
2.2. Оцифровка видео
Для видео ключевую роль играют кадры (frames):
- Камера периодически "делает снимок" сцены — это один кадр.
- Частота таких снимков называется фреймрейт (frame rate), например, 25 кадров в секунду (25 fps), 30 fps, 50 fps и т.д.
Кадр — это двумерная матрица пикселей, где каждый пиксель описывается яркостью и цветом.
Важно: оцифровка сама по себе ещё не делает видео "лёгким" для передачи. Сырые (не сжатые) данные видео и аудио занимают большой объём, поэтому следующий шаг — сжатие.
3. Сжатие медиа: кодеки для видео и аудио
Сырые оцифрованные данные слишком объёмны для практической передачи по сети или хранения. Их нужно сжимать.
3.1. Кодеки (codecs)
Кодек (codec — coder/decoder) — это алгоритм, который:
- кодирует (сжимает) медиа для передачи или хранения;
- декодирует (восстанавливает) медиа для воспроизведения.
Каждый кодек определяет правила того, как именно преобразовать исходные кадры и сэмплы в более компактное представление.
Примеры:
- Видео:
- H.264 (AVC) — один из самых распространённых видеокодеков, используется в IP‑камерах, стриминге, видеозаписи;
- H.265 (HEVC) — более современный, даёт лучшее сжатие при том же качестве, но сложнее для декодирования.
- Аудио:
- AAC — популярный аудиокодек для стриминга и видео (YouTube, IPTV и др.);
- Opus — кодек, ориентированный на реальное время (видеосвязь, VoIP).
Когда мы говорим, например, "видео H.264 с аудио AAC", мы описываем именно формат сжатия, а не способ передачи по сети.
3.2. Кадры и сэмплы после сжатия
После сжатия:
- видеоданные всё равно логически состоят из кадров, но эти кадры теперь не хранятся как "сырые картинки". Кодек использует различные методы (предсказание по предыдущим кадрам, поиск движения и т.д.), чтобы уменьшить размер данных;
- аудиоданные всё равно состоят из сэмплов, но они группируются в блоки и кодируются с учётом особенностей слуха человека.
4. Потоки: как организуются сжатые данные
Сжатые кадры видео и блоки аудиосэмплов формируются в так называемые потоки (streams):
- Видеопоток — последовательность сжатых видеокадров;
- Аудиопоток — последовательность сжатых аудиоблоков.
Каждый поток имеет:
- свой тип (видео, аудио, субтитры и т.д.);
- свой кодек (например, видеопоток H.264, аудиопоток AAC);
- свой временной ряд (когда каждый кадр или блок должен быть воспроизведён).
В одном и том же видеоматериале обычно есть как минимум два потока:
- один видеопоток;
- один или несколько аудиопотоков (например, разные языки).
5. Контейнеры: объединение потоков в единый файл или передачу
Чтобы удобно хранить и обрабатывать несколько потоков вместе, используют контейнеры (containers).
Контейнер — это формат файла или потока, который:
- объединяет несколько медиапотоков (видео, аудио, субтитры) в одну структуру;
- хранит служебную информацию: временные метки, таблицу содержания, метаданные (название, кодеки, размеры и т.п.).
Примеры контейнеров:
- MP4 — широко используется для файлов с видео (онлайн‑видеосервисы, запись на диске);
- TS (MPEG‑TS) — транспортный поток, популярный в телевещании и для потокового видео;
- MKV, AVI и др.
5.1. Важный момент: контейнер ≠ кодек
Контейнер и кодек — это разные уровни:
- Кодек отвечает за то, как сжаты данные (например, H.264).
- Контейнер отвечает за то, как эти данные упакованы вместе (например, MP4, TS).
Один и тот же кодек (H.264) может использоваться в разных контейнерах (MP4, MKV, TS), и, наоборот, один контейнер может содержать разные кодеки.
6. Медиа и сеть: инкапсуляция в IP‑пакеты
Когда мы передаём медиа не как файл "целиком", а по сети в реальном времени или "по потоку", появляется ещё один важный уровень — сетевой транспорт.
Передача в IP‑сети устроена так, что все данные разбиваются на небольшие части — IP‑пакеты. Каждая такая часть имеет:
- служебный заголовок (от сетевых протоколов IP, UDP/TCP, а иногда и более высоких уровней, таких как RTP);
- полезную нагрузку (часть медиаданных).
6.1. Передача без явного контейнера
При потоковой передаче контейнеры типа MP4 не всегда используются напрямую. Вместо "файла целиком" медиаданные:
- разбиваются на небольшие фрагменты (например, фрагменты одного или нескольких кадров/сэмплов);
- упаковываются в более специализированный "транспортный" уровень (например, RTP — протокол реального времени);
- затем эти блоки инкапсулируются в IP‑пакеты и передаются по сети.
На этом этапе:
- медиаданные уже закодированы кодеками (например, H.264/AAC);
- структурированы как потоки;
- могут не находиться внутри классического файлового контейнера (MP4), а "жить" в потоковом формате (например, RTP‑пакеты).
7. Разделение медиаформатов и транспортных протоколов
Ключевая идея, которую важно усвоить: формат медиа и способ передачи по сети — это разные уровни, выполняющие разные задачи.
7.1. Уровень медиаформатов
Отвечает за:
- кодирование: каким кодеком сжато видео и аудио (H.264, H.265, AAC, Opus и т.д.);
- формирование потоков: какие потоки существуют, их тип и временные метки;
- упаковку в контейнеры (если есть): MP4, TS и др.
Вопросы этого уровня:
"Как представлены данные?", "Какие кодеки используются?", "Как организованы потоки?".
7.2. Транспортный уровень (сетевой)
Отвечает за:
- доставку данных от источника к получателю;
- разделение данных на пакеты и их адресацию;
- обработку возможных потерь пакетов, задержек и т.д.
Здесь работают сетевые протоколы:
- IP — базовый протокол межсетевой передачи;
- UDP и TCP — основные транспортные протоколы;
- поверх них — специализированные медиапротоколы (RTP, RTSP, RTMP, SRT и др. — они будут подробно обсуждаться в других частях курса).
Вопросы этого уровня:
"Как доставить данные?", "С каким уровнем надёжности?", "С какой задержкой?".
8. Зачем нужно это разделение: практический пример
Такое разделение уровней даёт важное преимущество: мы можем передавать одно и то же медиасодержимое разными способами, не меняя сам медиапоток (кодеки, формат кадра и т.д.).
Пример
Пусть есть видеопоток:
- видео: кодек H.264, 1920×1080, 25 fps;
- аудио: кодек AAC, 48 кГц.
С этим же потоком можно сделать разные вещи:
- Передать через локальную сеть в режиме реального времени по протоколу RTP/UDP (низкая задержка, подходит для мониторинга).
- Упаковать в MP4‑файл и отдать по HTTP как обычное видео по запросу (VOD — video on demand).
- Разбить на сегменты и передавать как HLS или DASH (массовая доставка через CDN для веб‑зрителей).
Во всех трёх случаях видеокодек и аудиокодек могут оставаться теми же — H.264 и AAC.
Меняется только транспортный уровень и формат доставки, но основное содержимое (кадры и сэмплы) остаётся совместимым.
Это и есть главный смысл фразы:
Формат медиа — это одно, а способ передачи по сети — другое. Уровень медиаформатов отвечает за кодирование и упаковку данных, а транспортный уровень — за их доставку.
9. Итог: логическая цепочка "от камеры до IP‑пакетов"
Для закрепления сведём всё в одну последовательность шагов:
- Фиксация сигнала
Камера и микрофон воспринимают аналоговый или уже цифровой сигнал. - Оцифровка
Аналоговый сигнал, если нужно, преобразуется в цифровой (кадры и аудиосэмплы). - Сжатие кодеками
- Видео сжимается, например, кодеком H.264.
- Аудио сжимается, например, кодеком AAC.
- Формирование потоков
- создаётся видеопоток (последовательность сжатых кадров);
- создаётся аудиопоток (последовательность сжатых аудиоблоков).
- (Опционально) упаковка в контейнер
Видеопоток и один или несколько аудиопотоков могут быть объединены в контейнер (MP4, TS и т.п.) для хранения или определённых видов передачи. - Инкапсуляция в сетевые пакеты
Содержимое (с контейнером или без него, в зависимости от протокола) разбивается на части и упаковывается:- в транспортные протоколы реального времени (например, RTP);
- затем в UDP или TCP;
- и, наконец, в IP‑пакеты.
- Передача по сети
IP‑пакеты проходят по маршруту "от источника к получателю" через сети, маршрутизаторы, свитчи и т.д.