Смекни!
smekni.com

Технологія MPEG-4 (стр. 2 из 3)

Одночасне відтворення декількох об'єктів MPEG-4 координується окремим рівнем, виділеним спеціально для забезпечення синхронізації. Елементарні потоки розбиваються на пакети, після чого проводиться їхнє тактування (розподіл часових інтервалів). Після цього пакети готові для передачі на так називаний транспортний рівень.

Потоки тут, потоки там…

Тимчасова інформація необхідна для декодування даних. У ній зберігається тактова частота синхронізатора (таймера) кодера й оцінки часу вхідних потоків відносно цього синхронізатора. Оцінки часу можна розділити на два типи. Оцінки першого типу вказують, коли повинна декодуватися чергова порція інформації, другого - для вказівки моменту готовності інформації до відтворення.

Варто розрізняти ці два типи оцінок. У деяких алгоритмах стиску відеоінформації деякі кадри визначаються шляхом інтерполяції попереднього і наступного кадрів. Таким чином, поки черговий кадр декодується і готується до відтворення, наступний вже повинний бути декодований і поміщений у буфер. Тому, для забезпечення більшої продуктивності декодера в тимчасову інформацію, як правило, додатково записують і параметри буферизації.

Висловлюючись термінологією семирівневої комунікаційної моделі ISO, MPEG-4 не використовує ніякий принципово новий механізм передачі даних. Існуючих на той час засобів виявився цілком достатньо: потік передачі MPEG-2, асинхронний режим передачі (ATM) і Internet-протокол передачі в реальному часі (RTP). Доречі, потік передачі MPEG-2, використовуваний у цифровому телебаченні, згодом зробив істотний вплив на визначення стандартів радіомовлення.

Для кожного потоку даних може встановлюватися окремий канал передачі. Тому у випадках, коли сцена MPEG-4 містить досить велику кількість таких потоків, процес стає громіздким і неефективним. Щоб уникнути подібних ситуацій у MPEG-4 був включений додатковий інструмент, так званий FlexMux, що грає роль проміжної ланки для перетворення даних у зручну для передачі форму. Пізніше в MPEG-4 був доданий ще один інтерфейс, що дозволяє прикладній програмі посилати запит на з'єднання по заданих параметрах: пропускній здібності устаткування, коефіцієнту помилок, параметрам затримки і т.п.

З погляду прикладної програми цей інтерфейс однаковий як для широкомовних каналів зв'язку й інтерактивних сеансів так і для локальної роботи. У зв'язку з цим розробникам при написанні коду навіть не доводиться замислюватися про те, які механізми лежать в основі. Наступний реліз MPEG-4 уже дозволяв використовувати різні канали передачі на протилежних вузлах мережі для прийому/передача.

Ще одним істотним нововведенням другої версії було введення формату mp4 і засобів конвертації з форматів попередніх версій. Раніш, при використанні MPEG-1 і MPEG-2, таких засобів не було, але для MPEG-4, передбаченого для використання в Internet, вони були просто необхідні.

Візуалізація об'єктів

Класичне "прямокутне" відео є одним із стандартних візуальних об'єктів. Об'єкти довільної форми могли кодуватися окремо від фону, а вже згодом сполучатися з ним і іншими об'єктами.

MPEG-4 пропонує два методи опису об'єктів довільної форми, кожний із який має свої переваги. Відповідно до першого (двійкового) методу будь-який піксел (заданого кольору, яскравості і т.п.) може бути або не бути частиною розглянутого об'єкта. Такий найпростіший, але досить "сирий" підхід ефективний для роботи при низкою швидкості передачі даних. Однак його наслідки - явна "незграбність" елементів зображення, зазублини на вигинах кривих - можуть дратувати.

Для одержання високоякісного зображення використовується інша методика, так називана шкала півтонів (gray scale). Відповідно до цієї методики, кожний пыксел незалежно від того, до якого об'єкта він належить, крім значень "включений" і "виключений" характеризується ступенем прозорості. Завдяки цьому забезпечується ефект згладженого фону та усіх видимих об'єктів.

Класичний приклад згладженого зображення можна побачити по телевізоріу під час трансляції прогнозу погоди. Здається, що карта знаходиться за спиною в диктора, що знаходиться на передньому плані. Насправді вона генерується окремо, після чого об'єкти сполучаються.

Технологія MPEG не визначає точний алгоритм формування візуальних об'єктів. Цей алгоритм, названий відеосегментацією, усе ще залишається метою інтенсивних досліджень. Відомі на сьогоднішній день методи дозволяють вирішити цю задачу, однак вони мають деякі обмеження. Одним із способів відтворення складних об'єктів є їхній запис на блакитному або зеленому фоні (кольори, що потім легко відфільтрувати).

MPEG-4, як і попередні технології, точно визначає тільки процес декодування. Процес кодування, неодноразово удосконалений, усе ще є відкритою темою. Навіть сьогодні, коли алгоритм стискання MPEG-2 практично не використовується, продовжують виявлятися все нові і нові його переваги.

Трохи подумавши

Поряд із високошвидкісними технологіями істотна частина досліджень проводилася з метою забезпечення якісного відтворення анімації на пристроях із дуже низькою швидкістю прийому/передачі даних, зокрема на мобільних пристроях. Формат MPEG-4 виявився придатним для відтворення відео на безпроводному устаткуванні (ще одна область застосування технології GSM/Global System for Mobile Communications) при швидкості передача 10 kb/s - швидкості, що використовується на сьогоднішній день для голосового зв'язку!

Істотною проблемою при роботі з мобільними пристроями є велика імовірність помилок при передачі даних. Для боротьби з цим розроблено багато засобів, що дозволяють декодеру якнайшвидше перебороти і загладити неминучі помилки. Одним із таких засобів є маркери ресинхронізації, що зберігаються в потоках із відеоінформацією і дозволяють уникнути порушення синхронізації в результаті помилки.

Іншим ефективним засобом є використання так називаного оборотного коду змінної довжини. Такий код коректно декодируется навіть при зчитуванні в зворотному порядку. Це дозволяє терміналу коректно відтворювати інформацію, починаючи з найближчого маркера ресинхронізації, знайденого до місця виникнення помилки.

Ефективність роботи навіть при низкій швидкості передачі даних забезпечується завдяки використанню масштабованих об'єктів. У наші дні багато Internet-провайдерів для доступу до аудіо-відео інформації дозволяють абонентам самостійно встановлювати якість одержуваної інформації відповідно до пропускної спроможності користувального устаткування. Отже, провайдеру доводиться кодировать ту саму інформацію декілька разів з орієнтацією на широкий діапазон апаратних можливостей користувачів. Масштабоване кодування дозволятє уникнути цього і кодувати дані тільки один раз. Налагодження на потрібну пропускну спроможність у цьому випадку буде робитися безпосередньо перед відтворенням або навіть під час відтворення.

У процесі масштабування базовий рівень передає інформацію з деякою базовою якістю відтворення. Якщо можливості устаткування дозволяють поліпшити якість, передається додаткова інформація з наступних більш високих рівнів. Причому, якщо сцена включає декілька об'єктів, то можна передати інформацію тільки про деякі, найбільше істотні з них. Такий метод масшатбування є принципово новим. Він навіть дозволяє забезпечувати для різних об'єктів різний рівень захисту, тобто, приміром, найбільше важливі об'єкти має сенс захищати краще. Ця можливість дуже істотна, оскільки забезпечення певного захисту вимагає додаткових витрат ресурсів.

Ще один спосіб збереження графічної інформації, так звані спрайти, як правило, використовується для кодування незмінних фрагментів зображення. Припустимо, наприклад, що в деякомій інтерактивній програмі користувач змінює кут огляду камери. Це означає, що фон та інші об'єкти повинні цілком перемальовуватися при кожній такій зміні. При використанні спрайта для визначення, приміром, фонового зображення, досить однієї передачі даних, Що містяться в ньому. Після цього, для формування нового виду огляду досить інформації про нові координати чотирьох вже визначених точок.

Усміхніться!

З широкого спектра можливостей MPEG-4 самою забавною, мабуть, є можливість нанесення зображень на образи, згенеровані комп'ютером. А якщо ці образи ще й анімовані, то різниця між штучний і реальний стає майже непомітна. Взагалі, на довільний дво- або тривимірний об'єкт (точніше, його каркас) можна накласти будь-яку картинку. Тоді навіть при незначній деформації каркаса створюється враження реального відео (наприклад, прапора, що розвівається). Для створення більш складних ефектів отриману анімовану картинку можна накласти на інший каркас. Причому, тоді виходить й істотне зменшення трафика, оскільки замість того, щоб після кожної зміни посилати цілком обновлене зображення, досить послати інформацію про параметри деформації, а безпосередньо деформація буде виконуватися локально.

Особливий інтерес представляють визначені форми людського обличчя, точніше, його електронної моделі для різних емоційних станів із заданим набором рухів.

Завдяки інтерфейсу MPEG-4 для мовного відтворення тексту стало можливим використання анімованих зображень обличчя для дублювання або синтезу людського голосу в реальному часі.

Генерація образу обличчя може робитися як на етапі декодування так і з використанням заздалегідь заготовлених шаблонів. У якості каркаса такої моделі може використовуватися довільна тривимірна поверхня або навіть фотознімок людини.

За допомогою спеціальних команд можна управляти окремими фрагментами зображення (губами, очима і т.п.), примушуючи їх рухатися синхронізовано з розмовою. Засоби для моделювання всього людського тіла будуть розроблені в другій версії MPEG-4.

Живий або електронний?

Біля десяти років тому, коли Moving Picture Expert Group тільки починала свої дослідження, аудіоінформація вважалася другорядною і нерозривно зв'язаною з відео. Сьогодні значення і якість відтворення аудіо нітрохи не поступаються відео.