MPEG2 - upgrade для MPEG1
Компрессия по стандарту MPEG-2 кардинально меняет положение вещей. Более 97% цифровых данных, представляющих видео сигнал дублируются, т.е. являются избыточными и могут быть сжаты без ущерба качеству изображения. Алгоритм MPEG-2 анализирует видеоизображение в поисках повторений, называемых избыточностью. В результате процесса удаления избыточности, обеспечивается превосходное видеоизображение в формате MPEG-2 при более низкой скорости передачи данных. По этой причине, современные средства поставки видеопрограмм, такие как цифровые спутниковые системы и DVD, используют именно стандарт MPEG-2.
Изменения в Audio:
· Появились новые виды частот 16, 22.05, 24 КГц.
· Поддержка многоканальности - возможность иметь 5 полноценных каналов (left, center, right, left surround, right surround) + 1 низкочастотный (subwoofer).
· Появился AAC (Advanced Audio Coding - прогрессивное кодирование звука) стандарт - обеспечивает очень высокое качество звука со скоростью 64 kbps per channel (килобит в сек. на канал), возможно использовать 48 основных каналов, 16 низкочастотных каналов для звуковых эффектов, 16 многоязыковых каналов и 16 каналов данных. До 16 программ может быть описано используя любое количество элементов звуковых и других данных. Для AAC существуют три вида профиля - Main (используется когда нет лишней памяти), Low Complexity (LC), Scalable Sampling Rate (SSR, требуется декодер с изменяемой скоростью приема данных).
Декодеры должны быть:
1. "forwards compatible" (вперед совместимыми) - MPEG-2 Audio Decoder понимает любые MPEG-1 аудио каналы.
2. "backward compatible" (обратно совместимыми) - MPEG-1 Audio Decoder должен понимать ядро MPEG-2 Audio (L-канал, R-канал)
3. "matrixing" (матрицируемыми) - MPEG1 Audio Decoder должен понимать 5-ти канальный MPEG-2 (L = left signal + a * center signal + b * left surround signal, R = right signal + a * center signal + b * right surround signal)
4. MPEG-1 Звуковой декодер не обязан понимать MPEG-2 AAC.
В следствии этого совершенно спокойно можно использовать MPEG-1 Video + MPEG-2 Audio или наоборот MPEG-2 Audio + MPEG-1 Video.
Изменения в Видео:
· Требуется чтобы разрешение по вертикали и горизонтали было кратно 16 в кодировщике кадров (frame-encoder) стандартах (покадровое кодирование), и 32 по вертикали в кодировщике полей (field-encoder, каждое поле состоит из двух кадров) стандартах (interlaced video).
· Возможность форматов 4:4:4, 4:2:2 (Next profile).
· Введены понятия Profile (форма, профиль) и Levels (уровни).
· Размер frame до 16383*16383.
· Возможность кодировать interlaced video.
· Наличие режимов масштабирования (Scalable Modes)
· Pan&Scanning вектор (вектор панорамирования и масштабирования), который говорит декодеру как преобразовывать, например 16:9 в 4:3.
Изменения, связанные с алгоритмами кодирования:
· Точность частотных коэффициентов выбирается пользователем (8, 9, 10, 11 бит на одно значение -- в MPEG-1 только 8 бит).
· Нелинейный quantization процесс (разбиение непрерывных данных в дискретные).
· Возможность загрузить quantization matrix (матрица преобразований непрерывных данных в дискретные) перед каждым кадром.
· Новые режимы предсказания движения (16x8 MC, field MC, Dual Prime)
Scalable Modes (доступно только в Next и Main+ Profile) делят MPEG-2 на три слоя (base, middle, high) для того чтобы организовать уровни приоритета в видеоданных (на пример более приоритетный канал кодируется с большим количеством информации по коррекции ошибок чем менее):
1. Spatial scalability (пространственное масштабирование) - основной слой кодируется с меньшим разрешением и затем он используется как предсказание для более приоритетных.
2. Data Partitioning (дробление данных) - разбивает блок из 64 quantization коэффициентов в два потока из которых более приоритетный переносит низкочастотные (наиболее критичные к качеству), а менее приоритетный (высокочастотные).
3. SNR (Signal to Noise Ratio) Scalability (масштабирование соотношения сигна/шум) - каналы кодируются с одинаковой скоростью, но с разным качеством (менее приоритетный слой содержит плохую картинку - более дискретные шаги, а высокоприоритетный слой содержит довесок позволяющий построить качественную картинку)
4. Temporal Scalability (временное масштабирование) - менее приоритетный слой содержит канал с низкой скоростью передачи кадров, а высокоприоритетный содержит информацию позволяющую восстановить промежуточные кадры используя для предсказания менее приоритетные.
Таблица 4, Уровни
Уровень | Максимальное разрешение | Максимальная скорость | Примечание |
Low | 352*240*30 | 4 Mbps | CIF, кассеты |
Main | 720*480*30 | 15 Mbps | CCIR 601, студийное TV |
High 1440 | 1440*1152*30 | 60 Mbps | 4x601, бытовое HDTV |
High | 1920*1080*30 | 80 Mbps | Продукция SMPTE 240M std |
Таблица 5, Профили
Профиль | Комментарии |
Simple | Такой же как и Main только без B - картинок. Используется в программах и CATV (кабельное ТВ) |
Main | Стандартный MPEG-1, 95% пользователей, CATV, спутники |
Main+ | Main со Spatial и SNR Scalability |
Next | Main+ c форматом 4:2:2 |
Таблица 6, Допустимые комбинации Профилей и Уровней
Simple | Main | Main+ | Next |
High | No | No | 4:2:2 |
High 1440 | No | Main c Spatial Scalability | 4:2:2 |
Main | 90% от всех | Main c SNR Scalability | 4:2:2 |
Low | No | Main c SNR Scalability | No |
Таблица 7, Наиболее популярные стандарты.
Разрешение | Комментарии |
352*480*24 (progressive) | VHS, хорош для фильмов |
544*480*30 (interlaced) | Laserdisc (LD), D-2, Качество как у PAL |
704*480*30 (interlaced) | Качество CCIR 601.Studio D-1 |
Рис. 6
Системный уровень MPEG-2, обеспечивает два уровня объединения данных:
1. Packetized Elementary Stream (PES) - разбивает звук и видео на пакеты.
2. Второй уровень делится на:
o MPEG-2 Program Stream (совместим с MPEG-1 System) - для локальная передача в среде с маленьким уровнем ошибок
o MPEG-2 Transport Stream (Рис. 6) - внешнее вещание в среде с высоким уровнем ошибок - передает транспортные пакеты (длиной 188 либо 188+16 бит) двух типов (сжатые данные -- PES -- и сигнальную таблицу Program Specific Information -- PSI).