Системы кодирования

Иллюстрации

Показать все

Изобретение относится к области кодирования и декодирования видео данных масштабируемым способом. Техническим результатом является облегчение кодирования/декодирования каждого из уровней видео данных в терминале. Технический результат достигается тем, что предложена структура дополнительного набора параметров последовательности ("SPS"), который имеет свой собственный тип модуля уровня сетевой абстракции ("NAL") и разрешает передачу параметров, зависящих от уровня, для небазисных уровней в SVC-среде. Структура дополнительного SPS может использоваться для просмотра информации в среде многовидового видео кодирования (MVC). В общем аспекте предоставляется структура, которая включает в себя информацию из модуля SPS NAL, причем информация описывает параметр для использования в декодировании кодирования первого уровня последовательности изображений и информацию из модуля дополнительного SPS NAL, который имеет другую структуру, чем модуль SPS NAL, причем информация из модуля дополнительного SPS NAL описывает параметр для использования в декодировании кодирования второго уровня последовательности изображений. 5 н. - 30 з.п. ф-лы, 19 ил.

Реферат

ПЕРЕКРЕСТНАЯ ССЫЛКА НА РОДСТВЕННЫЕ ЗАЯВКИ

Настоящая заявка испрашивает приоритет и настоящим полностью включает посредством ссылки для всех целей каждую из (1) предварительной патентной заявки США №60/923,993, озаглавленной "Supplemental Sequence Parameter Set for Scalable Video Coding or Multi-view Video Coding" ("Дополнительный набор параметров последовательности для масштабируемого видео кодирования или многовидового видео кодирования") и поданной 18 апреля 2007 г. (номер поверенного PU070101) и (2) патентной заявки США №11/824,006, озаглавленной "Supplemental Sequence Parameter Set for Scalable Video Coding or Multi-view Video Coding" ("Дополнительный набор параметров последовательности для масштабируемого видео кодирования или многовидового видео кодирования") и поданной 28 июня 2007 г. (номер поверенного РА070032).

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ

По меньшей мере, один вариант осуществления относится к кодированию и декодированию видео данных масштабируемым способом.

УРОВЕНЬ ТЕХНИКИ

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

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

Согласно общему аспекту, к информации осуществляется доступ из модуля уровня сетевой абстракции ("NAL") набора параметров последовательности ("SPS"). Информация описывает параметр для использования в декодировании кодирования первого уровня последовательности изображений. К информации также осуществляется доступ из модуля NAL дополнительного SPS, который имеет структуру, отличную от таковой модуля NAL SPS. Информация из модуля NAL дополнительного SPS описывает параметр для использования в декодировании кодирования второго уровня последовательности изображений. Декодирование последовательности изображений сформировано на основе кодирования первого уровня, кодирования второго уровня, информации, к которой осуществляется доступ из модуля NAL SPS, и информации, к которой осуществляется доступ из модуля NAL дополнительного SPS.

Согласно другому общему аспекту используется структура синтаксиса, которая предусматривает декодирование последовательности изображений в многочисленных уровнях. Структура синтаксиса включает в себя синтаксис для модуля NAL SPS, включающий в себя информацию, описывающую параметр для использования в декодировании кодирования первого уровня последовательности изображений. Структура синтаксиса также включает в себя синтаксис для модуля NAL дополнительного SPS, который имеет структуру, отличную от таковой модуля NAL SPS. Модуль NAL дополнительного SPS включает в себя информацию, описывающую параметр для использования в декодировании кодирования второго уровня последовательности изображений. Декодирование последовательности изображений может быть сформировано на основе кодирования первого уровня, кодирования второго уровня, информации, к которой осуществляется доступ из модуля NAL SPS, и информации из модуля NAL дополнительного SPS.

Согласно другому общему аспекту, сигнал форматируется, чтобы включать в себя информацию из модуля NAL SPS. Информация описывает параметр для использования в декодировании кодирования первого уровня последовательности изображений. Сигнал дополнительно форматируется, чтобы включать в себя информацию из модуля NAL дополнительного SPS, который имеет структуру, отличную от таковой модуля NAL SPS. Информация из модуля NAL дополнительного SPS описывает параметр для использования в декодировании кодирования второго уровня последовательности изображений.

Согласно другому общему аспекту формируется модуль NAL SPS, который включает в себя информацию, описывающую параметр для использования в декодировании кодирования первого уровня последовательности изображений. Формируется модуль NAL дополнительного SPS, который имеет структуру, отличную от таковой модуля NAL SPS. Модуль NAL дополнительного SPS включает в себя информацию, которая описывает параметр для использования в декодировании кодирования второго уровня последовательности изображений. Предоставляется набор данных, который включает в себя кодирование первого уровня последовательности изображений, кодирования второго уровня последовательности изображений, модуль NAL SPS и модуль NAL дополнительного SPS.

Согласно другому общему аспекту используется структура синтаксиса, которая предусматривает кодирование последовательности изображений в многочисленных уровнях. Структура синтаксиса включает в себя синтаксис для модуля NAL SPS. Модуль NAL SPS включает в себя информацию, которая описывает параметр для использования в декодировании кодирования первого уровня последовательности изображений. Структура синтаксиса включает в себя синтаксис для модуля NAL дополнительного SPS. Модуль NAL дополнительного SPS имеет структуру, отличную от таковой модуля NAL SPS. Модуль NAL дополнительного SPS включает в себя информацию, которая описывает параметр для использования в декодировании кодирования второго уровня последовательности изображений. Может быть предоставлен набор данных, который включает в себя кодирование первого уровня последовательности изображений, кодирование второго уровня последовательности изображений, модуль NAL SPS и модуль NAL дополнительного SPS.

Согласно другому общему аспекту к информации первого зависимого уровня доступ осуществляется в первом наборе нормативных параметров. Информация первого зависимого уровня, к которой осуществляется доступ, существует для использования в декодировании кодирования первого уровня последовательности изображений. К информации второго зависимого уровня доступ осуществляется во втором наборе нормативных параметров. Второй набор нормативных параметров имеет структуру, отличную от таковой первого набора нормативных параметров. Информация второго зависимого уровня, к которой осуществляется доступ, существует для использования в декодировании кодирования второго уровня последовательности изображений. Последовательность изображений декодируется на основе одной или более информации первого зависимого уровня, к которой осуществляется доступ, или информации второго зависимого уровня, к которой осуществляется доступ.

Согласно другому общему аспекту сформирован первый набор нормативных параметров, который включает в себя информацию первого зависимого уровня. Информация первого зависимого уровня существует для использования в декодировании кодирования первого уровня последовательности изображений. Формируется второй набор нормативных параметров, который имеет структуру, отличную от таковой первого набора нормативных параметров. Второй набор нормативных параметров включает в себя информацию второго зависимого уровня для использования в декодировании кодирования второго уровня последовательности изображений. Предоставляется набор данных, который включает в себя первый набор нормативных параметров и второй набор нормативных параметров.

Подробности одного или более вариантов осуществления изложены в сопроводительных чертежах и описании ниже. Даже если описано одним конкретным образом, должно быть ясно, что варианты осуществления могут быть сконфигурированы или осуществлены различными способами. Например, вариант реализации может быть осуществлен как способ или реализован как устройство, такое, как, например, устройство, сконфигурированное для осуществления набора этапов или устройство, хранящее команды для осуществления набора этапов, или реализованное в сигнале. Другие аспекты или признаки станут очевидными из последующего подробного описания, рассмотренного в связи с сопроводительными чертежами и формулой изобретения.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

Фиг.1 является блок-схемой для реализации кодера.

Фиг.1a является блок-схемой для другого варианта реализации кодера.

Фиг.2 является блок-схемой для реализации декодера.

Фиг.2a является блок-схемой для другого варианта реализации декодера.

Фиг.3 является структурой варианта осуществления модуля уровня сетевой абстракции ("NAL") набора параметров последовательности ("SPS") единственного уровня.

Фиг.4 является схематичным представлением примера частей потока данных, который иллюстрирует использование модуля NAL SPS.

Фиг.5 является структурой варианта осуществления модуля NAL дополнительного SPS ("SUP SPS").

Фиг.6 является реализацией организационной иерархии среди модуля SPS и многочисленных модулей SUP SPS.

Фиг.7 является структурой другого варианта осуществления модуля NAL SUP SPS.

Фиг.8 является функциональным представлением варианта осуществления масштабируемого видео кодера, который формирует модули SUP SPS.

Фиг.9 является иерархическим представлением варианта осуществления формирования потока данных, который содержит модули SUP SPS.

Фиг.10 является схематичным представлением примера потока данных, сформированного вариантом реализованного на фиг.9.

Фиг.11 является блок-схемой реализации кодера.

Фиг.12 является блок-схемой другого варианта реализации кодера.

Фиг.13 является блок-схемой последовательности этапов способа варианта реализации процесса кодирования, используемого кодерами фиг.11 или 12.

Фиг.14 является схематичным представлением примера потока данных, сформированного процессом на фиг.13.

Фиг.15 является блок-схемой реализации декодера.

Фиг.16 является блок-схемой другого варианта реализации декодера.

Фиг.17 является блок-схемой последовательности этапов способа варианта реализации процесса декодирования фиг.15 или 16.

ПОДРОБНОЕ ОПИСАНИЕ

В настоящее время существует несколько стандартов видео кодирования, которые могут кодировать видео данные согласно различным уровням и/или профилям. Среди них можно процитировать H.264/MPEG-4 AVC ("стандарт AVC"), также упоминаемый как стандарт расширенного кодирования видео сигнала (AVC), Экспертной группа-4 по вопросам движущегося изображения (MPEG-4), часть 10, Международная организация по стандартизации /Международная электротехническая комиссия (ISO/IEC)/ Рекомендация Н.264, Международный союз телекоммуникаций, сектор телекоммуникаций (ITU-T). Кроме того, существуют расширения для стандарта AVC. Первым подобным расширением является расширение масштабируемого кодирования видео сигнала ("SVC") (Приложение G), упоминаемое как H.264/MPEG-4 AVC, расширение масштабируемого кодирования видео сигнала ("расширение SVC"). Вторым подобным расширением является расширение многовидового кодирования видео сигнала ("MVC") (Приложение Н), упоминаемое как H.264/MPEG-4 AVC, расширение MVC ("расширение MVC").

По меньшей мере, один вариант реализации, описанный в этом изобретении, может использоваться с AVC-стандартом, а также расширениями SVC и MVC. Реализация предусматривает модуль уровня сетевой абстракции ("NAL") дополнительного ("SUP") набора параметров последовательности ("SPS"), который имеет тип модуля NAL, отличный от такового модулей NAL SPS. Модуль SPS типично включает в себя, но не обязательно, информацию для, по меньшей мере, единственного уровня. Кроме того, модуль NAL SPS SUP включает в себя информацию, зависящую от уровня для, по меньшей мере, одного дополнительного уровня. Таким образом, осуществляя доступ к модулям SPS и SPS SUP, декодер имеет доступной некоторую (и типично всю) зависимую от уровня информацию, необходимую для декодирования битового потока.

Используя этот вариант осуществления в AVC-системе, модули NAL SPS SUP не требуется передавать, и может быть передан модуль NAL SPS единственного уровня (как описано ниже). Используя этот вариант осуществления в SVC (или MVC) системе, модуль(и) NAL SPS SUP может (могут) передаваться для желаемых дополнительных уровней (или представлений) в дополнение к модулю NAL SPS. Используя этот вариант осуществления в системе, включающей в себя как AVC-совместимые декодеры и SVC-совместимые (или MVC-совместимые) декодеры, AVC-совместимые декодеры могут игнорировать модули NAL SPS SUP, обнаруживая тип модуля NAL. В каждом случае достигается эффективность и совместимость.

Вышеуказанный вариант осуществления также обеспечивает преимущества для систем (стандартов или иного), которые налагают требование, что определенные уровни совместно используют информацию заголовка, такую как, например, SPS или конкретную информацию, типично передаваемую в SPS. Например, если базовому уровню и его составным временным уровням необходимо совместно использовать SPS, тогда зависимая от уровня информация не может быть передана с совместно используемым SPS. Тем не менее, SUP SPS предусматривает механизм для передачи информации, зависящей от уровня.

SUP SPS различных вариантов осуществления также предусматривает эффективное преимущество в том, что SUP SPS не нужно включать в себя и, следовательно, повторять все параметры в SPS. SUP SPS типично фокусируется на параметрах, зависящих от уровня. Тем не менее, различные варианты осуществления включают в себя структуру SUP SPS, которая включает в себя параметры, не зависящие от уровня, или даже повторяет всю структуру SPS.

Различные варианты осуществления относятся к расширению SVC. Расширение SVC предлагает передачу видео данных согласно нескольким пространственным уровням, временным уровням и уровням качества. Для одного пространственного уровня можно кодировать согласно нескольким временным уровням и для каждого временного уровня - согласно нескольким уровням качества. Следовательно, когда заданы m пространственных уровней, n временных уровней и O уровней качества, видео данные могут кодироваться согласно m*n*O различных комбинаций. Эти комбинации также упоминаются как уровни, или как точки взаимодействия ("IOP"). Согласно возможностям декодера (также упоминаемого как приемник или клиент), различные уровни могут передаваться до определенного уровня, соответствующего максимуму возможностей клиента.

Как используется в данном документе, зависимая от уровня информация относится к информации, которая относится конкретно к единственному уровню. То есть, по определению, информация является зависящей от определенного уровня. Подобную информацию не требуется обязательно изменять от уровня к уровню, но типично она предоставляется отдельно для каждого уровня.

Как используется в материалах настоящей заявки, синтаксис высокого уровня относится к синтаксису, представленному в битовом потоке, который постоянно хранится иерархически выше уровня макроблоков. Например, синтаксис высокого уровня, как используется в материалах настоящей заявки, может относиться, без ограничения указанным, к синтаксису в заголовке битовых потоков, дополнительному уровню информации расширения (SEI), уровню изображения набора параметров (PPS), уровню набора параметров последовательности (SPS) и уровню заголовка модуля сетевого уровня абстракции (NAL).

На фиг.1 примерный SVC-кодер обозначен ссылочной позицией 100 ссылки. SVC-кодер 100 может также использоваться для AVC-кодирования, то есть для единственного уровня (например, базовый уровень). Дополнительно, SVC-кодер 100 может использоваться для MVC-кодирования, как должно быть понятно специалисту в данной области техники. Например, различные компоненты SVC-кодера 100 или варианты этих компонентов могут использоваться в кодировании многочисленных представлений.

Первый вывод модуля 142 временной декомпозиции соединен, в сигнальной связи, с первым вводом внутреннего прогнозирования для модуля 146 внутренних блоков. Второй вывод модуля 142 временной декомпозиции соединен, в сигнальной связи, с первым вводом модуля 144 кодирования движения. Вывод внутреннего прогнозирования для модуля 146 внутренних блоков соединен, в сигнальной связи, с вводом кодера 149 преобразования/энтропии (масштабируемый по отношению "сигнал-шум" (SNR)). Первый вывод кодера 149 преобразования/энтропии соединен, в сигнальной связи, с первым вводом мультиплексора 170.

Первый вывод модуля 132 временной декомпозиции соединен, в сигнальной связи, с первым вводом внутреннего прогнозирования для модуля 136 внутренних блоков. Второй вывод модуля 132 временной декомпозиции соединен, в сигнальной связи, с первым вводом модуля 134 кодирования движения. Вывод внутреннего прогнозирования для модуля 136 внутренних блоков соединен, в сигнальной связи, с вводом кодера 139 преобразования/энтропии (масштабируемый по отношению "сигнал-шум" (SNR). Первый вывод кодера 139 преобразования/энтропии соединен, в сигнальной связи, с первым вводом мультиплексора 170.

Второй вывод кодера 149 преобразования/энтропии соединен, в сигнальной связи, с вводом модуля 138 двухмерной пространственной интерполяции. Вывод модуля 138 двухмерной пространственной интерполяции соединен, в сигнальной связи, вторым вводом внутреннего прогнозирования для модуля 136 внутренних блоков. Второй вывод модуля 144 кодирования движения соединен, в сигнальной связи, с вводом модуля 134 кодирования движения.

Первый вывод модуля 122 временной декомпозиции соединен, в сигнальной связи, с первым вводом внутреннего прогнозирующего устройства 126. Второй вывод модуля 122 временной декомпозиции соединен, в сигнальной связи, с первым вводом модуля 124 кодирования движения. Вывод внутреннего прогнозирующего устройства 126 соединен, в сигнальной связи, с вводом кодера 129 преобразования/энтропии (масштабируемый по отношению "сигнал-шум" (SNR)). Вывод кодера 129 преобразования/энтропии соединен, в сигнальной связи, с первым вводом мультиплексора 170.

Второй вывод кодера 139 преобразования/энтропии соединен, в сигнальной связи, с вводом модуля 128 двухмерной пространственной интерполяции. Вывод модуля 128 двухмерной пространственной интерполяции соединен, в сигнальной связи, со вторым вводом модуля 126 внутреннего прогнозирующего устройства. Второй вывод модуля 134 кодирования движения соединен, в сигнальной связи, с вводом модуля 124 кодирования движения.

Первый вывод модуля 124 кодирования движения, первый вывод модуля 134 кодирования движения и первый вывод модуля 144 кодирования движения, каждый соединен, в сигнальной связи, со вторым вводом мультиплексора 170.

Первый вывод модуля 104 двумерной пространственной децимации соединен, в сигнальной связи, с вводом модуля 132 временной декомпозиции. Второй вывод модуля 104 двухмерной пространственной децимации соединен, в сигнальной связи, с вводом модуля 142 временной декомпозиции.

Ввод модуля 122 временной декомпозиции и ввод модуля 104 двухмерной пространственной децимации доступны как вводы кодера 110 для приема входящего видео 102.

Вывод мультиплексора 170 доступен как вывод кодера 100 для предоставления битового потока 180.

Модуль 122 временной декомпозиции, модуль 132 временной декомпозиции, модуль 142 временной декомпозиции, модуль 124 кодирования движения, модуль 134 кодирования движения, модуль 144 кодирования движения, внутреннее прогнозирующее устройство 126, внутреннее прогнозирующее устройство 136, внутреннее прогнозирующее устройство 146, кодер 129 преобразования/энтропии, кодер 139 преобразования/энтропии, кодер 149 преобразования/энтропии, модуль 128 двумерной пространственной интерполяции, модуль 138 двумерной пространственной интерполяции включены в часть 187 основного кодера для кодера 100.

Фиг.1 включает в себя три основных кодера 187. В показанном варианте осуществления самый нижний основной кодер 187 может кодировать основной уровень, а средний или верхний основные кодеры 187 кодируют более высокие уровни.

На фиг.2 примерный SVC-кодер обозначен в общем ссылочной позицией 200 ссылки. SVC-декодер 200 может также использоваться для AVC-декодирования, то есть для единственного представления. Дополнительно, SVC-декодер 200 может использоваться для MVC-декодирования, как должно быть понятно специалисту в данной области техники. Например, различные компоненты SVC-декодера 200 или варианты этих компонентов могут использоваться в декодировании многочисленных представлений.

Следует заметить, что кодер 100 и декодер 200, а также другие кодеры и декодеры, рассмотренные в этом изобретении, могут конфигурироваться для осуществления различных раскрытых способов согласно изобретению. В дополнение к осуществлению операций кодирования кодеры, описанные в этом изобретении, могут осуществлять различные операции декодирования в процессе реконструкции для того, чтобы отображать ожидаемые действия декодера. Например, кодер может декодировать модули SUP SPS для декодирования кодированных видео данных для создания реконструкции кодированных видео данных для использования в прогнозировании дополнительных видео данных. Следовательно, кодер может выполнять, по существу, все операции, которые выполняются декодером.

Ввод демультиплексора 202 доступен как ввод для декодера 200 масштабируемого видео для приема масштабируемого битового потока. Второй вывод демультиплексора 202 соединен, в сигнальной связи, с вводом декодера 204 пространственного обратного преобразования SNR с масштабируемой энтропией. Первый вывод декодера 204 пространственного обратного преобразования SNR с масштабируемой энтропией соединен, в сигнальной связи, с первым вводом модуля 206 прогнозирования. Вывод модуля 206 прогнозирования соединен, в сигнальной связи, с первым вводом объединителя 230.

Второй вывод декодера 204 пространственного обратного преобразования SNR с масштабируемой энтропией соединен, в сигнальной связи, с первым вводом декодера 210 вектора движения (MV). Выход запоминающего устройства 210 опорного изображения соединяется сигнальной связью с первым входом компенсатора 232 движения. Вывод компенсатора 232 движения соединяется, в сигнальной связи, со вторым вводом объединителя 230.

Второй вывод демультиплексора 202 соединен, в сигнальной связи, с вводом декодера 212 пространственного обратного преобразования SNR с масштабируемой энтропией. Первый вывод декодера 212 пространственного обратного преобразования SNR с масштабируемой энтропией соединен, в сигнальной связи, с первым вводом модуля 214 прогнозирования. Первый вывод модуля 214 прогнозирования соединен, в сигнальной связи, с вводом модуля 216 интерполяции. Вывод модуля 216 интерполяции соединен, в сигнальной связи, со вторым вводом модуля 206 прогнозирования. Второй вывод модуля 214 прогнозирования соединен, в сигнальной связи, с первым вводом объединителя 240.

Второй вывод декодера 212 пространственного обратного преобразования SNR с масштабируемой энтропией соединен, в сигнальной связи, с первым вводом MV-декодера 220. Первый вывод MV-декодера 220 соединен, в сигнальной связи, с первым вводом MV-декодера 210. Второй вывод MV-декодера 220 соединяется, в сигнальной связи, с вводом компенсатора 242 движения. Вывод компенсатора 242 движения соединяется, в сигнальной связи, со вторым вводом объединителя 240.

Второй вывод демультиплексора 202 соединен, в сигнальной связи, с вводом декодера 222 пространственного обратного преобразования SNR с масштабируемой энтропией. Первый вывод декодера 222 пространственного обратного преобразования SNR с масштабируемой энтропией соединен, в сигнальной связи, с вводом модуля 224 прогнозирования. Первый вывод модуля 224 прогнозирования соединен, в сигнальной связи, с вводом модуля 226 интерполяции. Вывод модуля 226 интерполяции соединен, в сигнальной связи, со вторым вводом модуля 214 прогнозирования.

Второй вывод модуля 224 прогнозирования соединен, в сигнальной связи, с первым вводом объединителя 250. Второй вывод декодера 222 пространственного обратного преобразования SNR с масштабируемой энтропией соединен, в сигнальной связи, с вводом MV-декодера 230. Первый вывод MV-декодера 230 соединен, в сигнальной связи, со вторым вводом MV-декодера 220. Второй вывод MV-декодера 230 соединяется, в сигнальной связи, с вводом компенсатора 252 движения. Вывод компенсатора 252 движения соединяется, в сигнальной связи, со вторым вводом объединителя 250.

Вывод объединителя 250 доступен как вывод декодера 200 для вывода сигнала 0 уровня. Вывод объединителя 240 доступен как вывод декодера 200 для вывода сигнала 1 уровня. Вывод объединителя 230 доступен как вывод декодера 200 для вывода сигнала 2 уровня.

На фиг.1a примерный AVC-кодер обозначен в общем ссылочной позицией 2100. AVC-кодер 2100 может использоваться, например, для кодирования единственного уровня (например, основной уровень).

Видео кодер 2100 включает в себя буфер 2110 расположения кадров, имеющий вывод в сигнальной связи с неинверсным вводом объединителя 2185. Вывод объединителя 2185 соединен, в сигнальной связи, с первым вводом преобразователя и квантователя 2125. Вывод преобразователя и квантователя 2125 соединен, в сигнальной связи, с первым вводом энтропийного кодера 2145 и первым вводом обратного преобразователя и обратного квантователя 2150. Вывод энтропийного кодера 2145 соединен, в сигнальной связи, с первым неинверсным вводом объединителя 2190. Вывод объединителя 2190 соединен, в сигнальной связи, с первым вводом буфера 2135 вывода.

Первый вывод контроллера 2105 кодера соединен, в сигнальной связи, со вторым вводом буфера 2110 расположения кадров, вторым вводом обратного преобразователя и обратного квантователя 2150, вводом модуля 2115 решения типа изображения, вводом модуля 2120 решения типа макроблоков (МВ-тип), вторым вводом модуля 2160 внутреннего прогнозирования, вторым вводом фильтра 2165 деблокирования, первым вводом компенсатора 2170 движения, первым вводом блока 2175 оценки движения и вторым вводом буфера 2180 опорного изображения.

Второй вывод контроллера 2105 кодера соединен, в сигнальной связи, с первым вводом устройства 2130 ввода дополнительной информации расширения ("SEI"), вторым вводом преобразователя и квантователя 2125, вторым вводом энтропийного кодера 2145, вторым вводом буфера 2135 вывода и вводом устройства 2140 ввода набора последовательности параметров (SPS) и набора параметров изображения (PPS).

Первый вывод модуля 2115 решения типа изображения соединен, в сигнальной связи, с третьим вводом буфера 2110 расположения кадров. Второй вывод модуля 2115 решения о типе изображения соединен, в сигнальной связи, со вторым вводом модуля 2120 решения о типе макроблоков.

Вывод устройства 2140 ввода набора последовательности параметров ("SPS") и набора параметров изображения ("PPS") соединен, в сигнальной связи, с третьим неинверсным вводом объединителя 2190. Вывод устройства 2130 ввода SEI соединен, в сигнальной связи, со вторым неинверсным вводом объединителя 2190.

Вывод обратного квантователя и обратного преобразователя 2150 соединен, в сигнальной связи, с первым неинверсным вводом объединителя 2127. Вывод объединителя 2127 соединен, в сигнальной связи, с первым вводом модуля 2160 внутреннего прогнозирования и первым вводом фильтра 2165 деблокирования. Вывод фильтра 2165 деблокирования соединен, в сигнальной связи, с первым вводом буфера 2180 опорного изображения. Вывод буфера 2180 опорного изображения соединен, в сигнальной связи, со вторым вводом блока 2175 оценки движения и первым вводом компенсатора 2170 движения. Первый вывод блока 2175 оценки движения соединен сигнальной связью со вторым вводом компенсатора 2170 движения. Второй вывод блока 2175 оценки движения соединения, в сигнальной связи, с третьим вводом энтропийного кодера 2145.

Вывод компенсатора 2170 движения соединен, в сигнальной связи, с первым вводом переключателя 2197. Вывод модуля 2160 внутреннего прогнозирования соединен, в сигнальной связи, со вторым вводом переключателя 2197. Вывод модуля 2120 решения о типе макроблока соединен, в сигнальной связи, с третьим вводом переключателя 2197, чтобы предоставлять управляющий ввод для переключателя 2197. Вывод переключателя 2197 соединен, в сигнальной связи, со вторым неинверсным вводом объединителя 2127 и с инверсным вводом объединителя 2185.

Вводы буфера 2110 расположения кадров и контроллер 2105 кодера доступны как ввод кодера 2100 для приема входящего изображения 2101. Более того, ввод устройства 2130 ввода доступен как ввод кодера 2100 для приема метаданных. Вывод буфера 2135 вывода доступен как вывод кодера 2100 для вывода битового потока.

На фиг.2a ссылочной позицией 2200 обозначен видео декодер, обеспечивающий выполнение видео декодирования согласно стандарту MPEG-4 AVC.

Видео декодер 2200 включает в себя буфер 2210 ввода, который имеет вывод, соединенный сигнальной связью с первым вводом энтропийного декодера 2245. Первый вывод энтропийного декодера 2245 соединен, в сигнальной связи, с первым вводом обратного преобразователя и обратным квантователем 2250. Вывод обратного преобразователя и обратного квантователя 2250 соединен, в сигнальной связи, со вторым неинверсным вводом объединителя 2225. Вывод объединителя 2225 соединен, в сигнальной связи, со вторым вводом фильтра 2265 разблокирования и первым вводом модуля 2260 внутреннего прогнозирования. Второй вывод фильтра 2265 разблокирования соединен, в сигнальной связи, с первым вводом буфера 2280 опорного изображения. Вывод буфера 2280 опорного изображения соединен, в сигнальной связи, со вторым вводом компенсатора 2270 движения.

Второй вывод энтропийного декодера 2245 соединен, в сигнальной связи, с третьим вводом компенсатора 2270 движения и первым вводом фильтра 2265 разблокирования. Третий вывод энтропийного декодера 2245 соединен, в сигнальной связи, с вводом контроллера 2205 декодера. Первый вывод контроллера 2205 декодера соединен, в сигнальной связи, со вторым вводом энтропийного декодера 2245. Первый вывод контроллера 2205 декодера соединен, в сигнальной связи, со вторым вводом обратного преобразователя и обратным квантователя 2250. Третий вывод контроллера 2205 декодера соединен, в сигнальной связи, с третьим вводом фильтра 2265 разблокирования. Четвертый вывод контроллера 2205 декодера соединен, в сигнальной связи, со вторым вводом модуля 2260 внутреннего прогнозирования, с первым вводом компенсатора 2270 движения и со вторым вводом буфера 2280 опорного изображения.

Вывод компенсатора 2270 движения соединен, в сигнальной связи, с первым вводом переключателя 2297. Вывод модуля 2260 внутреннего прогнозирования соединен, в сигнальной связи, со вторым вводом переключателя 2297. Вывод переключателя 2297 соединен, в сигнальной связи, с первым неинверсным вводом объединителя 2225.

Ввод буфера 2210 ввода доступен как ввод декодера 2200 для приема входящего битового потока. Первый вывод фильтра 2265 разблокирования доступен как вывод декодера 2200 для вывода выходящего изображения.

На фиг.3, показана структура для SPS 300 единственного уровня. SPS является структурой синтаксиса, которая в целом содержит элементы синтаксиса, которые используются для нулевой или более полных кодированных видео последовательностей. В расширении SVC, значения некоторых элементов синтаксиса, передаваемых в SPS, являются зависимыми от уровня. Эти элементы синтаксиса, зависящие от уровня, включают в себя, но не ограничены информацией синхронизации, параметрами HRD (представляющий "гипотетический опорный декодер") и информацию ограничения битового потока. "Параметры HRD могут включать в себя, например, индикаторы размера буфера, максимальную битовую скорость и первоначальную задержку. Параметры HRD могут разрешить принимающей системе, например, проверять целостность принятого битового потока и/или определять, может ли принимающая система (например, декодер) декодировать битовый поток. Следовательно, система может предусматривать передачу вышеупомянутых элементов синтаксиса для каждого уровня.

SPS 300 единственного уровня включает в себя SPS-ID 310, который предоставляет идентификатор для SPS. SPS 300 единственного уровня также включает в себя параметры 320 VUI (обозначающие информацию по использованию видео) для единственного уровня. Параметры VUI включают в себя параметры 330 HRD для единственного уровня, такого как, например, основного уровня. SPS 300 единственного уровня может также включать в себя дополнительные параметры 340, хотя вариантам осуществления не нужно включать в себя дополнительные параметры 340.

На фиг.4 схематичное представление потока 400 данных показывает типичное использование SPS 300 единственного уровня. В стандарте AVC, например, типичный поток данных может включать в себя среди других компонентов модуль SPS, многочисленные модули PPS (последовательность параметров изображения), предоставляющие параметры для конкретного изображения, и многочисленные модули для кодированных данных изображения. Подобная общая структура используется на фиг.4, которая включает в себя SPS 300, PPS-1 410, один или более модулей 420, которые включают в себя кодированные данные изображения-1, PPS-2 430 и один или более модулей 440, включающие в себя кодированные данные изображения-2. PPS-1 включает в себя параметры для кодированных данных 420 изображения-1, и PPS-2 430 включает в себя параметры для кодированных данных 440 изображения-2.

Кодированные данные 420 изображения-1 и кодированные данные 440 изображения-2, каждые, ассоциируются с конкретным SPS (SPS 300 в варианте осуществления фиг.4). Это достигается с помощью использования указателей, как поясняется теперь. Кодированные данные 420 изображения-1 включают в себя PPS-ID (не показано), который идентифицирует PPS-1 410, как показано с помощью стрелки 450. PPS-ID может храниться в, например, заголовке битовых потоков. Кодированные данные 440 изображения-2 включают в себя PPS-ID (не показан), который идентифицирует PPS-2 430, как показано с помощью стрелки 460. PPS-1 410 и PPS-2 430, каждый включает в себя SPS-ID (не показан), который идентифицирует SPS 300, как показано стрелками 470 и 480, соответственно.

На фиг.5 показана структура для SUP SPS 500. SUP SPS 500 включает в себя SPS ID 510, VUI 520, который включает в себя параметры 530 HRD для единственного дополнительного уровня, упоминаемого как "(D2, Т2, Q2)", и необязательные дополнительные параметры 540. "D2, Т2, Q2" относится ко второму уровню, который имеет пространственный (D) уровень 2, временный (Т) уровень 2 и уровень 2 качества (Q).

Следует заметить, что различные схемы нумерации могут использоваться для ссылки на уровни. В одной схеме нумерации базовые уровни имеют D, Т, Q из 0, x, 0, означая пространственный уровень ноль, любой временной уровень и уровень качества ноль. В этой схеме нумерации уровни улучшения имеют D, T, Q, в которых D или Q больше чем нуль.

Использование SUP SPS 500 позволяет, например, системе использовать структуру SPS, которая включает в себя только параметры для единственного уровня, или не включает в себя какую-либо информацию, зависящую от уровня. Подобная система может создавать отдельный SUP SPS для каждого дополнительного уровня помимо базового уровня. Дополнительные уровни могут идентифицировать SPS, с которым они ассоциированы с помощью использования SPS ID 510. Очевидно, несколько уровней могут совместно использовать единственный SPS, используя общий SPS ID в их соответствующих модулях SUP SPS.

На фиг.6 показана организационная иерархия 600 для модуля 605 SPS и многочисленных модулей 610 и 620 SUP SPS. Модули 610 SUP SPS показаны как модули SUP SPS единственного уровня, но другие варианты осуществления могут использовать один или более модулей SUP SPS многочисленных уровней в дополнение к или вместо модулей SUP SPS единственного уровня. Иерархия 600 иллюстрирует, что в типичном сценарии многочисленные модули SUP SPS могут ассоциироваться с единственным модулем SPS. Варианты осуществления могут, естественно, включать в себя многочисленные модули SPS, и каждый из модулей SPS может иметь ассоциированные модули SUP SPS.

На фиг.7 показана структура для другого SUP SPS 700. SUP SPS 700 включает в себя параметры для многочисленных уровней, при этом SUP SPS 500 включает в себя параметры для единственного уровня. SUP SPS 700 включает в себя SPS ID 710, VUI 720 и необязательные дополнительные параметры 740. VUI 720 включает в себя параметры 730 HRD для первого дополнительного уровня (D2, Т2, Q2) и для других дополнительных уровней до уровня (Dn, Tn, Qn).

Согласно фиг.6, иерархия 600 может быть модифицирована для использования многоуровневого SUP SPS. Например, комбинация SUP SPS 610 и 620 может быть заменена на SUP SPS 700, если как SUP SPS 610, так и 620 включают в себя тот же самый SPS ID.

Кроме того, может использоваться SUP SPS 700, например, с SPS, который включает в себя параметры для единственного уровня, или который включает в себя параметры для многочисленных уровней или который не включает в себя параметры зависящего уровня для люб