ПрологРабота над выпуском стандарта «Продвинутое видеокодирование», которое теперь известно под официальным наименованием Рекомендации ITU-T Н.264 или ISO/IEC 14496 (MPEG-4) Part 10, более трех лет привлекала пристальное внимание всего сообщества стандартизации видеокодирования. Работа была стимулирующей, интенсивной, динамичной и всепоглощающей для всех людей, вовлеченных в разработку этого проекта. Пришло время присмотреться к результатам этого труда. Несмотря на то что доктор Ричардсон не был прямым участником проекта, он имел возможность разработать высококачественное современное введение в новый стандарт и глубоко проанализировать его основные свойства. Эта книга весьма своевременна, поскольку стандарт был завершен совсем недавно. Новый стандарт H.264/AVC был разработан для обеспечения подходящих технических решений для широкого спектра возможных приложений, включая следующие. - Широкополосное вещание по проводам, через спутник, кабельный модем, DSL и др. - Интерактивное или периодическое сохранение данных на оптических и магнитных носителях, DVD и т.п. - Общение и диалог через ISDN, Ethernet. LAN, DSL, беспроводные и мобильные сети и модемы. - Видео по запросу и мультимедийные потоковые сервисы по кабельным модемам, DSL, ISDN, LAN, беспроводным сетям. - Службы мультимедийной почты по каналам DSL, ISDN. Диапазон битовых скоростей и размеров изображений, поддерживаемых стандартом H.264/AVC, весьма широк. Возможности его видеокодировання простираются от малых битовых скоростей и малой частоты кадров с разрешением видеокадра типа «почтовая марка» для мобильной телефонии и соединений по обычным телефонным линиям до высококачественного вещательного и развлекательного телевидения высокой четкости, HDTV и выше. Гибкая интерактивная система для кодированного видео отличается высокими адаптивными способностями применительно к конкретному видеоконтенту для использования в широком многообразии каналов и сетей. В то же время технический дизайн был жестко сфокусирован на обеспечении высокой эффективности кодирования и устойчивости при передачи по всевозможным каналам обычных прямоугольных видеоизображений, которые снимаются стандартными видеокамерами. Поэтому некоторые потенциально интересные, но не получившие широкого применения возможности были умышленно опущены разработчиками (по крайней мере, в первой версии стандарта). Например, поддержка видеообъектов произвольной, а не только прямоугольной формы, некоторые виды масштабирования битовой скорости, хроматические форматы 4:2:2 и 4:4:4, а также цветовое сэмплирование с разрешением более 8 бит на одну цветовую компоненту. По ходу разработки нового стандарта H.264/AVC было применено много новых технических приемов и усовершенствований. Например, была повышена эффективность кодирования по многим параметрам и улучшены алгоритмы предсказания, а именно: • компенсация движения на основе малых блоков, • точность в четверть сэмпла при компенсации движения, • векторы движения, выходящие за границы кадров, • компенсация движения изображения со многими ссылочными кадрами, • использование порядка ссылочных кадров, отличного от хронологического порядка кадров, • разделение метода представления кадров и возможности использования снимков для ссылок, • взвешенное предсказание, • улучшенный «пропущенный» и «прямой» вывод движения, • направленное пространственное предсказание для внутреннего кодирования и • деблокирующее фильтрование внутри цикла. В дополнение к методам улучшенного предсказания в целях повышения эффективности кодирования были также усилены другие стороны конструкции стандарта. Выделим следующие моменты: • преобразование малых размеров блоков, • иерархическое преобразование блока, • преобразование коротких длин слов, • преобразование по точному совпадению, • арифметическое энтропийное кодирование и • контекстно-адаптивное энтропийное кодирование. Для повышения устойчивости к ошибкам и потерям данных, а также для приспособления алгоритмов к широкому классу сетевых окружений некоторые ключевые аспекты системы включают: • параметрическую структуру множеств, • структуру синтаксических единиц NAL, • гибкий размер слоев. • гибкую упорядоченность макроблоков, • произвольную ориентацию слоев, • избыточные изображения, • разделение данных и • SP/SI синхронизации при переключении снимков. Предшественником проекта H.264/AVC являлся недавно разработанный стандарт видеокодирования MPEG-4 Part 2 (Visual). Используемые в нем спецификации повысили степень возможной креативности и гибкости в представлении цифровых видеоданных, особенно при кодировании «объектов» видео, а также при их масштабировании. Были расширены возможности сэмплирования N-бит, а также возможности цветового формата 4:4:4. Появилась возможность обращения с синтетическими визуальными сценами. В этом стандарте возникло множество дизайнерских вариаций (называемых профилями, сейчас насчитывающими 19 различных элементов) для широкого класса приложений. Проект H.264/AVC, в котором имеется только три профиля, возвращается к более узкому и традиционному подходу к рациональному сжатию прямоугольных видеокадров и повышенному вниманию к устойчивости к возможным сетевым потерям. При его разработке авторы не стремились охватить широчайший спектр стандарта MPEG-4 Visual. Система MPEG-4 Visual представляет собой важную веху современного развития технологии, и ее возможности еще не используются в полную меру. Многие люди узнают о новых стандартах чаще всего из публикаций, а не из непосредственного описания. Моя твердая уверенность состоит в том, что если вы хотите изучить какой-то стандарт, то лучше всего раздобыть его полный текст, прочитать, а потом ссылаться на него как на первичный документ, в котором освещены его принципы, сфера применения и возможности. Никакие учебники или обзорные статьи не обеспечат всей полноты картины, которая возникает при тщательном и непосредственном анализе самого стандарта. Вместе с тем не существует такого стандартизованного изложения спецификаций (по крайней мере, для кодирования видео), которое могло бы полностью заменить хорошую техническую книгу по данной теме. Спецификации стандартов пишутся точными, согласующимися, полными и правильными и, к сожалению, не очень читаемыми. При документировании стандартов авторы стремятся опустить информацию, которая не абсолютно необходима при их реализации. Многие люди находят странным, что, например, стандарты видеокодирования ничего не сообщают о том, как работает кодер или как его можно было бы сконструировать. На самом деле, кодеру позволяется делать все что угодно, лишь бы он мог производить биты, поддающиеся правильному декодированию независимо от качества картинки, которое получится в результате декодирования. Люди, однако, смогут лучше понять принципы видеокодирования, если у них будет возможность изучать систему с точки зрения кодера, и почти все учебники (включая этот) начинают изучение системы от кодера. Хорошая книга расскажет вам, почему разработка алгоритма шла именно этим путем и именно так построена вся система. А хороший стандарт может лишь точно рассказать, что он собой представляет, и этим ограничиться. В случае H.264/AVC или MPEG-4 Visual я очень настоятельно советую тем, кто впервые берется изучать эти стандарты, прочитать некоторый вводный обзор вроде этого, а также достать описание более старых и простых стандартов, таких как Н.261 или MPEG-1 и попробовать сначала разобраться с ними. Основные принципы создания цифровых видеокодеков не очень сложны, и они не сильно изменились за все эти годы. Но эти базовые принципы были глубоко спрятаны за техническими усовершенствованиями предмета, так что простые и ясные концепции, лежавшие в его основе, оказались сильно затемнены. Полное описание спецификаций стандарта Н.261 содержит всего 25 страниц, и только на 17 из них изложено полное описание технологии, которая теперь находится в сердцевине всех последующих стандартов видеокодирования. Для сравнения, стандарты H.264/AVC и MPEG-4 изложены на 250 и 500 страницах, соответственно, с высокой плотностью всевозможных технических деталей (при полном отсутствии ключевой информации о том, как кодировать видеоизображение с помощью этих форматов). Такая информация трудна для восприятия даже экспертами при скрупулезном анализе этих стандартов. Книга доктора Ричардсона не является полностью исчерпывающим руководством по данному предмету. Однако его подход высокоинформативен и дает хорошее начальное понимание ключевых моментов. Его изложение концептуально превосходит многие изложения этого стандарта в других публикациях. Все это, а также удивительная своевременность этой книги делают ее важным вкладом в техническую литературу нашего сообщества. Гари Дж. Суливан Биография Гари Дж. Суливана Гари Дж. Суливан является председателем Объединенной группы по видео (Joint Video Group, JVT), которая занимается развитием нового международного стандарта видеокодирования H.264/AVC, ставшего итогом недавно завершенного общего проекта группы экспертов видеокодирования (Video Coding Experts Group, VCEG), организации ITU-T и группы экспертов по движущимся изображениям (Moving Picture Experts Group, MPEG). Он также является докладчиком проекта «Продвинутое видеокодирование» в ITU-T, где ведет работу по VCEG (ITU-T Q.6/SG16) около семи лет. Доктор Суливан осуществлял связь ITU-T с MPEG, работая председателем проекта (ISO/IEC JTC1/SC29/WG11) с марта 2001 года по май 2002 года. В настоящее время он работает программным менеджером по видеостандартам и видеотехнологиям для группы платформ еНоmе A/V корпорации Microsoft. В компании Microsoft он разрабатывал расширение DirectX видеоускорителей API/DDI для операционной платформы Windows.
|