Сімейство форматів MPEG. Частина друга - MPEG-2.
Автор: Дан Г'єн
- Вступ
- MPEG-2. Що нового?
- Зміни в алгоритмах стиснення відеоданих порівняно з MPEG-1.
- Scalable Modes - набір алгоритмів, який дозволяє визначити рівень пріоритетів різних шарів відеопотоку. Потік відеоданих поділяється на три шари - base, middle і high. Найбільш пріоритетний на даний момент шар (наприклад, передній план) кодується у великим бітовій
- Spatial scalability (просторове масштабування) - при використанні цього алгоритму, базовий шар кодується з меншою роздільною здатністю. Надалі отримана в результаті кодування інформація висользується в алгоритмах передбачення руху більш пріоритетних шарів.
- Data Partitioning (дроблення даних) - цей алгоритм дробить блоки розміром 64 елементи матриці квантування на два потоки. Один потік даних, більш високопріоритетний складається з низькочастотних (найбільш критичні до якості) компонентів, інший, відповідно менш пріоритетний складається з високочастотних компонентів. Надалі ці потоки обробляються по-різному. Саме тому в MPEG-2 і динамічні та статистичні сцени виглядають досить непогано, на відміну від MPEG-1, де динамічні сцени традиційно жахливі.
- Signal to Noise Ratio (SNR) Scalability (масштабування співвідношення сигна/шум) - при дії цього алгоритму різні за пріоритетом шари кодуються з різною якістю. Низькопріоритетні шари більш дискретизовані, більш грубі, відповідно містять менше даних, а високопріоритетний шар містить додаткову інформацію, яка при декодуванні дозволяє відновити високоякісне зображення.
- Temporal Scalability (тимчасове масштабування) - після дії цього алгоритму у низькопріоритетного шару зменшується кількість ключових блоків інформації, при цьому високопріоритетний шар, навпаки містить додаткову інформацію, яка дозволяють відновити проміжні кадри використовуючи для передбачення інформацію менш пріоритетного шару
- Рівні
- назва рівня
- роздільна здатність
- максимальний бітовий
- якісна відповідність
- Назва профілю
- Опис
- Simple
- Main
- Main+
- Next
- Назва
- Роздільна здатність
- Коментарі
- Зміни в алгоритмах стиснення звукових форматів MPEG-2.
- Об'єднання звуку і відео у форматі MPEG-2.
- Післямова
Вступ
Прабатьок цього формату - MPEG-1, про який йшлося у попередній главі, не вагаючись можна назвати воістину революційним, адже до нього нічого подібного не існувало. Перші відеодиски і супутникові телепередачі у форматі MPEG-1 здавалися дивом - така якість при такому відносно низькому бітрейті. Стиснуте цифрове відео мало якість порівнянну з якістю побутового відеомагнітофона і мало порівняно з аналоговими носіями масу переваг. Але час минав, прогрес у галузі цифрових технологій крокував семимильними кроками, і ось дідусеві MPEG-1 знадобилося істотне доопрацювання, щоб угнатися за чудесами науки і техніки. В результаті виник формат MPEG-2, який є не революційним, а скоріше, еволюційним форматом, виникнувши в результаті переробки MPEG-1 під потреби замовників. А замовниками даного формату були найбільші масмедіа-компанії, які зробили ставку на супутникове телебачення і нелінійний цифровий відеомонтаж.
Це зараз формат MPEG-2 асоціюється в першу чергу з DVD-дисками, а в 1992 році, коли стартували роботи зі створення цього формату, не існувало широко доступних носіїв, на які можна було б записати відеоінформацію стислу MPEG-2, але найголовніше, комп'ютерна техніка того часу не могла забезпечити потрібну смугу пропускання - від 2 до 9 Мбіт в секунду. Натомість даний канал могло забезпечити супутникове телебачення з новітнім на ті часи обладнанням. Такі високі вимоги до каналу зовсім не означали, що ступінь стиснення MPEG-2 нижчий, ніж у MPEG-1, навпаки, значно вищий! А ось роздільна здатність зображення і кількість кадрів в секунду значно більша, так як саме висока якість при розумному бітрейті і була тією основною метою, яку поставили перед комітетом MPEG замовники. Саме завдяки MPEG-2 і стала можливою поява телебачення високої роздільної здатності - HDTV, в якому зображення набагато чіткіше, ніж у звичайного телебачення.
Через кілька років після початку робіт, у жовтні 1995 року через космічний телевізійний супутник «» Pan Am Sat «» було здійснено перше 20-канальне ТВ-мовлення, що використовує стандарт MPEG-2. Супутник здійснював і досі здійснює трансляцію на території Скандинавії, Бельгії, Нідерландів, Люксембургу, Близького Сходу та Африки.
В даний час йде широка експансія HDTV на Далекому Сході - в Японії і Китаї.
Відеопотоки стислі MPEG-2 з бітрейтом 9 Мбіт в секунду використовуються при студійному записі і у високоякісному цифровому відеомонтажі.
З появою перших DVD-програвачів, що володіють колосальною ємністю і відносно доступною ціною, MPEG-2, що цілком природно був обраний як основний формат компресії відеоданих за його високу якість і високий ступінь стиснення. Саме фільми, які використовують MPEG-2, досі є найголовнішим аргументом на користь DVD.
Закінчимо з ретроспективним оглядом MPEG-2 і спробуємо покопатися в його нутрощах. Як вже говорилося, MPEG-2 формат еволюційний, саме тому доречно його розглядати, порівнюючи з його іменитим прабатьком MPEG-1, із зазначенням, що ж нового було внесено у вихідний формат.
MPEG-2. Що нового?
Треба сказати, розробники MPEG-2 підійшли до вирішення поставленої проблеми творчо. Мозковий штурм, розв'язаний з приводу вишукування можливості видалення зайвих бітів і байтів з і без того вже стисненого зображення (згадайте, вже існував MPEG-1, тепер потрібно було вужати його) було розпочато відразу з трьох сторін. Крім покращення алгоритмів компресії відео (одна сторона) та аудіо (інша) було знайдено альтернативний шлях зменшення розміру кінцевого файлу раніше не використовуваний.
Як стало відомо з досліджень комітету MPEG, понад 95% відеоданих, так чи інакше, повторюються в різних кадрах, причому неодноразово. Ці дані є баластними або, якщо використовувати термін, запропонований комітетом MPEG, надлишковими. Надлишкові дані видаляються практично без шкоди для зображення, на місце повторюваних ділянок при відтворенні підставляється один єдиний оригінальний фрагмент. До вже відомих алгоритмів стиснення і видалення надлишкової інформації, які зустрічалися нам у форматі MPEG-1, додався ще один, мабуть, найбільш ефективний. Після розбивки відеопотоку на фрейми, даний алгоритм аналізує вміст чергового фрейму на предмет повторюваних, надлишкових даних. Складається список оригінальних ділянок та таблиця ділянок, що повторюються. Оригінали зберігаються, копії видаляються, а таблиця повторюваних ділянок використовується при декодуванні стисненого відеопотоку. Результатом роботи алгоритму видалення надлишкової інформації є чудове високочетке зображення при низькому бітові. Подібне співвідношення розмір/якість до появи MPEG-2 вважалося недосяжним.
Але й у цього алгоритму є обмеження. Наприклад, повторювані фрагменти повинні бути досить великими, інакше довелося б заводити запис у таблиці повторюваних ділянок мало не на кожен піксел, що звело б користь від таблиці до нуля, оскільки її розмір перевищував би розмір фрейму. І ще вона обставина робить цей алгоритм менш ефективним - найбільш корисним і ефективним було б застосування цього алгоритму не до окремих фреймів, а до всього відеоролика в цілому, оскільки ймовірність знаходження повторюваних ділянок у великій відеоучасці набагато вище, ніж в окремо взятому фреймі. Та й сумарний розмір таблиць для всіх фреймів набагато більший, ніж можливий розмір однієї загальної таблиці. Але, на жаль, MPEG-2 - це потоковий формат, який спочатку призначався для пересилання по супутникових каналах або по кабельних мережах, тому наявність фреймів обов'язкова умова.
Отже, ми розглянули один з підходів, який забезпечив суттєве зменшення розміру кодованого файлу, але якби цей трюк був один, то розробники ніколи не досягли б таких вражаючих результатів, які ми побачили в MPEG-2. Зрозуміло, їм довелося гарненько попітніти над вже існуючими алгоритмами, буквально вилизавши їх і витиснувши все до останнього байта. Дуже істотної модернізації піддалися алгоритми стиснення відео.
Зміни в алгоритмах стиснення відеоданих порівняно з MPEG-1.
Основні зміни торкнулися алгоритмів квантування, тобто алгоритмів перетворення безперервних даних на дискретні. У MPEG-2 використовується нелінійний процес дискретно-косинусного перетворення, який набагато ефективніший за попередника. Формат MPEG-2 надає користувачам і програмістам значно більшу свободу порівняно з MPEG-1. Так тепер стало можливим у процесі кодування задавати точність частотних коефіцієнтів матриці квантування, що безпосередньо впливає на якість отримуваного в результаті стиснення зображення (і на розмір теж). Використовуючи MPEG-2, користувач може задавати наступні значення точності квантування - 8, 9, 10 і 11 біт на одне значення елемента, що робить цей формат значно більш гнучким порівняно з MPEG-1, в якому було тільки одне фіксоване значення - 8 біт на елемент.
Також стало можливим завантажити окрему матрицю квантування (quantization matrix) безпосередньо перед кожним кадром, що дозволяє домогтися дуже високої якість зображення, хоч це і досить трудомістко. Як за допомогою матриці квантування поліпшити якість зображення? Не секрет що швидкі ділянки - традиційно слабке місце для сімейства MPEG, в той час як статичні ділянки зображення кодуються дуже добре. Звідси випливає висновок, що не можна статику і ділянки з рухом кодувати однаково. Оскільки якість зображення залежить від стадії квантування, яка багато в чому залежить від матриці квантування, що використовується, то змінюючи ці матриці для різних ділянок відеоролика можна домогтися поліпшення якості зображення. Багато кодек MPEG-2 роблять це автоматично, але є програми, що дозволяють крім цього задавати матриці квантування вручну, наприклад перекодувальник AVI2MPG2, який можна знайти в мережі Internet за адресою: http://members.home.net/beyeler/bbmpeg.html. Якщо посилання померло, скористайтеся нашою копією файла: bbmpg123.zip
Не оминули нововведення і алгоритми передбачення руху. Ця секція збагатилася новими режимами: 16x8 MC, field MC и Dual Prime. Дані алгоритми суттєво підвищили якість картинки і, що важливо дозволили робити ключові кадри рідше порівняно з MPEG-1, збільшивши, таким чином, кількість проміжних кадрів і підвищивши ступінь стиснення. Основний розмір блоків, на які розбивається зображення, може бути 8х8 точок, як і MPEG-1, 16х16 і 16х8, що втім використовується тільки в режимі 16х8 МС.
Через деякі особливості реалізації алгоритмів передбачення руху в MPEG-2 з'явилися деякі обмеження на розмір картинки. Тепер стало необхідно, щоб роздільна здатність зображення по вертикалі і горизонталі було кратно 16 в режимі покадрового кодування, і 32 по вертикалі в режимі кодування полів (field-encoder), де кожне поле складається з двох кадрів. Розмір кадру збільшився до 16383 * 16383.
Було введено ще два співвідношення колірних площин і площини освітленості - 4:4:4 і 4:2:2.
Крім перерахованих вище поліпшень у формат MPEG-2 були введені ще кілька нових ніде раніше не використовуваних алгоритмів компресії відеоданих.
Найбільш важливі з них - це алгоритми під назвами Scalable Modes, Spatial scalability, Data Partitioning, Signal to Noise Ratio (SNR) Scalability і Temporal Scalability. Безсумнівно, ці алгоритми зробили дуже важливий внесок в успіх MPEG-2 і заслуговують більш докладного розгляду.
Scalable Modes - набір алгоритмів, який дозволяє визначити рівень пріоритетів різних шарів відеопотоку. Потік відеоданих поділяється на три шари - base, middle і high. Найбільш пріоритетний на даний момент шар (наприклад, передній план) кодується у великим бітовій
Spatial scalability (просторове масштабування) - при використанні цього алгоритму, базовий шар кодується з меншою роздільною здатністю. Надалі отримана в результаті кодування інформація висользується в алгоритмах передбачення руху більш пріоритетних шарів.
Data Partitioning (дроблення даних) - цей алгоритм дробить блоки розміром 64 елементи матриці квантування на два потоки. Один потік даних, більш високопріоритетний складається з низькочастотних (найбільш критичні до якості) компонентів, інший, відповідно менш пріоритетний складається з високочастотних компонентів. Надалі ці потоки обробляються по-різному. Саме тому в MPEG-2 і динамічні та статистичні сцени виглядають досить непогано, на відміну від MPEG-1, де динамічні сцени традиційно жахливі.
Signal to Noise Ratio (SNR) Scalability (масштабування співвідношення сигна/шум) - при дії цього алгоритму різні за пріоритетом шари кодуються з різною якістю. Низькопріоритетні шари більш дискретизовані, більш грубі, відповідно містять менше даних, а високопріоритетний шар містить додаткову інформацію, яка при декодуванні дозволяє відновити високоякісне зображення.
Temporal Scalability (тимчасове масштабування) - після дії цього алгоритму у низькопріоритетного шару зменшується кількість ключових блоків інформації, при цьому високопріоритетний шар, навпаки містить додаткову інформацію, яка дозволяють відновити проміжні кадри використовуючи для передбачення інформацію менш пріоритетного шару
У всіх цих алгоритмів багато спільного: всі вони працюю з шарами потоку відеоданих, використання цих алгоритмів дозволяє досягти високого стиснення при практично непомітному погіршенні картинки. Але є ще одна властивість цих алгоритмів, можливо, що і не таке приємне. Використання будь-якого з них, робить відеоролик абсолютно несумісним з форматом MPEG-1. Тому ці алгоритми були далеко не в кожному кодеку MPEG-2.
У результаті з'явилося безліч форматів, різного дозволу, якості, з різним ступенем стиснення і з різним співвідношенням розмір/якість. З метою наведення порядку і остаточної стандартизації MPEG-2 комітетом MPEG були введені поняття рівнів і профілів. Саме рівні та профілі, а так само їх комбінації дозволяють однозначно описати практично будь-який формат з сімейства MPEG-2.
Рівні
Профілі
Допустимі комбінації профілів і рівнів
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 |
Найбільш популярні стандарти.
Назва | Роздільна здатність | Коментарі |
VCD | 352*480*24 (progressive) | VHS |
SVCD | 544*480*30 (interlaced) | Laserdisc (LD), D-2, Якість як у PAL |
DVD | 704*480*30 (interlaced) | Якість CCIR 601.Studio D-1 |
Зміни в алгоритмах стиснення звукових форматів MPEG-2.
Основна зміна - на зміну багаторічному лідеру в області стиснення звуку MPEG Layer 3 прийшов стандарт MPEG-2 AAC (Advanced Audio Coding), вірніше ціле сімейство форматів. Про це сімейство написано безліч статей, зокрема, мій матеріал "Конкуренти MP3. TwinVQ (VQF), MPEG-2 AAC""
Єдино, що хотілося б додати, для MPEG-2 AAC, так само як і для відео, існують профілі: базовий профіль Main, Low Complexity (LC) і Scalable Sampling Rate (SSR, потрібен декодер підтримуючий VBR).
Зі змін форматів звуку (не алгоритмів стиснення) можна назвати нові види частот: 16, 22.05, 24 <unk> ц і підтримку багатоканальності - тепер замість двох каналів, в <unk> підтримуються 5 повноцінних каналів (left, center, right, left surround, right surround) + 1 низькочастотний (subwoofer).
Об'єднання звуку і відео у форматі MPEG-2.
Системний рівень MPEG-2, що відповідає за синхронізацію відео і аудіо, забезпечує це об'єднання в 2 етапи:
Перший етап називається Packetized Elementary Stream (PES) - розбивка звукокого і відео потоку на пакети.
Другий етап може бути двох видів:
- MPEG-2 Program Stream, який повністю сумісний з MPEG-1 System і використовується в основному для локальних передач (носії, мережа Internet, кабельне телебачення).
- MPEG-2 Transport Stream - для передачі транспортних пакетів (довжиною 188 або 188 + 16 біт) двох типів (стислі дані - PES - і сигнальну таблицю Program Specific Information - PSI) через супутникові канали або на поганих ділянках мереж, де можлива велика кількість помилок.
Післямова
На цьому закінчується огляд MPEG-2. Взагалі-то про нього можна говорити дуже довго, але так всього і не розповісти. Особливо цікавим я б порадив відвідати www.mpeg.org, там багато чого цікавого, правда, англійською мовою.
У наступних головах мова піде про дуже популярний зараз формат MPEG-4 (хоча порівняно з MPEG-2, це швидше регрес, ніж прогрес), про його найближчого родича - кодека DivX:) (саме так, зі смайликом він пишеться), а так само про практичні поради щодо їх використання.
Коментувати ()
Якщо Ви помітили помилку - виділіть її мишею і натисніть CTRL + ENTER.
Матеріали за темою
Акустика Edifier M3600D - спасибі Лукасу за це!
Edifier R1280DB: більше можливостей за тих самих умов
Urbanears Baggen и Stammen: скандинавський погляд на домашню акустику
Бездротова гарнітура Microlab T964BT: комфорт на кожен день
Акустика Edifier S360DB - музика високої роздільної здатності
Огляд 2 .1-акустики Microlab M-105: еталон мінімалізму
"