Устройство кодирования видео с предсказанием, способ кодирования видео с предсказанием, программа кодирования видео с предсказанием, устройство декодирования видео с предсказанием, способ декодирования видео с предсказанием и программа декодирования видео с предсказанием
Иллюстрации
Показать всеИзобретение относится к области кодирования и декодирования видео с предсказанием. Технический результат заключается в повышении эффективности использования заголовка блока уровня сетевой абстракции. Технический результат достигается за счет ввода, на котором вводят множество изображений, образующих видеопоследовательность, кодирования, на котором кодируют эти изображения для генерирования данных сжатых изображений, включающих в себя набор опорных изображений (RPS), и инкапсулируют эти данные сжатых изображений в блок NAL, декодирования, на котором декодируют информацию заголовка блока NAL и упомянутый RPS, где упомянутый RPS идентифицирует набор изображений, который используется для внешнего предсказания ассоциированного изображения, упомянутая информация заголовка блока NAL содержит nal_unit_type, а кодирование определяет nal_unit_type так, чтобы указать однозначно, используются ли данные кодированного изображения для внешнего предсказания при декодировании других изображений того же самого временного уровня или нет. 2 н. и 2 з.п. ф-лы, 10 ил., 5 табл.
Реферат
ОБЛАСТЬ ТЕХНИКИ
[0001] Настоящее изобретение относится к устройству кодирования видео с предсказанием, способу кодирования видео с предсказанием, программе кодирования видео с предсказанием, устройству декодирования видео с предсказанием, способу декодирования видео с предсказанием и программе декодирования видео с предсказанием.
УРОВЕНЬ ТЕХНИКИ
[0002] В традиционной технологии сжатия видео битовый поток инкапсулируется в блок уровня сетевой абстракции (NAL). Блок NAL предоставляет самостоятельный пакет и дает идентификационную информацию в разных сетевых окружениях. Заголовок блока NAL содержит информацию, используемую на системном уровне. Заголовок блока NAL становится частью заголовка пакета, используемого в пакетной сети, и спроектирован с возможностью управления медийными сетевыми элементами (MANE).
[0003] Заголовок блока NAL в традиционной технологии включает в себя нижеследующие синтаксические элементы: nal_ref_flag, который указывает, используется ли блок NAL в качестве опорного в процессе декодирования другого блока NAL; nal_unit_type, который указывает тип содержимого, передаваемого блоком NAL, причем блок NAL содержит информацию, такую как набор параметров, кодированный слайс (вырезка) или сообщение дополнительной информации по усовершенствованию (SEI); и temporal_id, который указывает временной идентификатор блока NAL.
[0004] Традиционная технология описывается в Непатентной литературе 1.
СПИСОК ЦИТИРУЕМОЙ ЛИТЕРАТУРЫ
НЕПАТЕНТНАЯ ЛИТЕРАТУРА
[0005] Непатентная литература 1: Benjamin Bross et al., "High efficiency video coding (HEVC) text specification draft 7", Объединенной команды по кодированию видео (JCT-VC) ITU-T SGI6 WP3 и ISO/IEC JTC1/SC29/WG11, 9-я встреча: Женева, CH, 27-е апреля – 7-е мая 2012.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
ТЕХНИЧЕСКАЯ ПРОБЛЕМА
[0006] Так как MANE спроектированы для проверки минимального числа байтов в начале пакета, заголовок блока NAL является ограниченным ресурсом. В традиционной технологии заголовок блока NAL составляет только 2 байта. По этой причине все синтаксические элементы заголовка блока NAL являются важными и должны передавать как можно больше информации и не относиться к другим синтаксическим элементам.
[0007] В большинстве типов блока NAL, nal_ref_flag должен быть установлен в фиксированное значение, и таким образом nal_ref_flag не нужен. В спецификации, описанной в Непатентной литературе 1, есть только три вида типов блока NAL, nal_ref_flag которого может принять значение 0 или 1. В других типах блока NAL, заданных в спецификации, значение nal_ref_flag является фиксированным. Это показано в Таблице 1.
Таблица 1 | ||
Диапазон типов блока NAL | Возможный nal_ref_flag | Фиксированный/переменныйnal_ref_flag |
1-3 | 0 или 1 | Переменный |
4-8 | 1 | Фиксированный |
25-28 | 1 | Фиксированный |
29-31 | 0 | Фиксированный |
Таблица 1 является таблицей, показывающей соответствие между значениями nal_unit_type (столбец "диапазон блоков NAL") и возможными значениями nal_ref_flag (столбец "возможный nal_ref_flag"). В этом случае типы блока NAL nal_unit_type могут иметь значения 1, 2 или 3, и значение nal_ref_flag может быть 0 или 1. Остающиеся типы блока NAL зарезервированы или точно не определены.
[0008] Хотя значение nal_ref_flag однозначно определяется согласно значению nal_unit_type, как описано выше, традиционный способ назначает соответствующие биты для nal_ref_flag и nal_unit_type, что является неэффективным проектным решением.
РЕШЕНИЕ ПРОБЛЕМЫ
[0009] Решением вышеуказанной проблемы является предположить значение nal_ref_flag исходя из типа блока NAL, без явной отправки nal_ref_flag в заголовке блока NAL. Три типа блока NAL, в которых предполагается, что nal_ref_flag равен 1, добавляются к трем типам блока NAL, содержимым которых может быть опорное изображение или неопорное изображение. Для первоначальных трех типов блока NAL предполагается, что nal_ref_flag равен 0.
[0010] Для того чтобы решить вышеприведенную изложенную проблему, устройство кодирования видео с предсказанием согласно аспекту настоящего изобретения содержит средство ввода, которое вводит множество изображений, образующих видеопоследовательность; и средство кодирования, которое кодирует изображения посредством либо внутреннего предсказания, либо внешнего предсказания, чтобы сгенерировать данные сжатого изображения, и которое объединяет в пакеты данные сжатого изображения вместе с информацией заголовка пакета, при этом информация заголовка пакета содержит тип изображения, и при этом средство кодирования определяет тип изображения, чтобы однозначно указать, используются ли данные кодированного изображения для ссылки при декодировании другого изображения. Средство кодирования устройства кодирования видео с предсказанием согласно одному аспекту настоящего изобретения определяет тип изображения, чтобы однозначно указать, используются ли данные кодированного изображения для ссылки при декодировании другого изображения на том же самом временном уровне.
[0011] Устройство декодирования видео с предсказанием согласно аспекту настоящего изобретения содержит средство ввода, которое вводит данные сжатого изображения, возникающие в результате кодирования множества изображений, образующих видеопоследовательность, посредством либо внутреннего предсказания, либо внешнего предсказания и объединения в пакеты данных сжатого изображения с информацией заголовка пакета; и средство декодирования, которое восстанавливает информацию заголовка пакета и данные сжатого изображения, при этом информация заголовка пакета содержит тип изображения, однозначно указывающий, используются ли данные восстановленного изображения для ссылки при декодировании другого изображения, и при этом средство декодирования определяет, на основе типа изображения, используются ли данные восстановленного изображения для ссылки при декодировании другого изображения.
[0012] В устройстве декодирования видео с предсказанием согласно аспекту настоящего изобретения средство декодирования определяет, используются ли данные восстановленного изображения для ссылки при декодировании другого изображения, на основе таблицы соответствия, в которой тип изображения предварительно сохранен в связи с информацией, указывающей, используются ли данные восстановленного изображения для ссылки при декодировании другого изображения. Средство декодирования устройства декодирования видео с предсказанием согласно аспекту настоящего изобретения определяет, на основе типа изображения, используются ли данные восстановленного изображения для ссылки при декодировании другого изображения на том же самом временном уровне.
[0013] Способом кодирования видео с предсказанием согласно аспекту настоящего изобретения является способ кодирования видео с предсказанием, содержащий: этап ввода, на котором вводят множество изображений, образующих видеопоследовательность; и этап кодирования, на котором кодируют изображения посредством либо внутреннего предсказания, либо внешнего предсказания, чтобы сгенерировать данные сжатого изображения, и объединяют в пакеты данные сжатого изображения с информацией заголовка пакета, при этом информация заголовка пакета содержит тип изображения, и при этом этап кодирования определяет тип изображения, чтобы однозначно указать, используются ли данные кодированного изображения для ссылки при декодировании другого изображения. На этапе кодирования способа кодирования видео с предсказанием согласно аспекту настоящего изобретения определяют тип изображения, чтобы однозначно указать, используются ли данные кодированного изображения для ссылки при декодировании другого изображения на том же самом временном уровне.
[0014] Способом декодирования видео с предсказанием согласно аспекту настоящего изобретения является способ декодирования видео с предсказанием, содержащий: этап ввода, на котором вводят данные сжатого изображения, возникающие в результате кодирования множества изображений, образующих видеопоследовательность, посредством либо внутреннего предсказания, либо внешнего предсказания, и объединения в пакеты данных сжатого изображения с информацией заголовка пакета; и этап декодирования, на котором восстанавливают информацию заголовка пакета и данные сжатого изображения в качестве данных восстановленного изображения, при этом информация заголовка пакета содержит тип изображения, однозначно указывающий, используются ли данные восстановленного изображения для ссылки при декодировании другого изображения, и при этом этап декодирования определяет, на основе типа изображения, используются ли данные восстановленного изображения для ссылки при декодировании другого изображения.
[0015] В способе декодирования видео с предсказанием согласно аспекту настоящего изобретения этап декодирования определяет, используются ли данные восстановленного изображения для ссылки при декодировании другого изображения, на основе таблицы соответствия, в которой тип изображения предварительно сохранен в связи с информацией, указывающей, используются ли данные восстановленного изображения для ссылки при декодировании другого изображения. На этапе декодирования способа декодирования видео с предсказанием согласно аспекту настоящего изобретения определяют, на основе типа изображения, используются ли данные восстановленного изображения для ссылки при декодировании другого изображения на том же самом временном уровне.
[0016] Программой кодирования видео с предсказанием согласно аспекту настоящего изобретения является программа кодирования видео с предсказанием, содержащая: модуль ввода, который вводит множество изображений, образующих видеопоследовательность; и модуль кодирования, который кодирует изображения посредством либо внутреннего предсказания, либо внешнего предсказания, чтобы сгенерировать данные сжатого изображения, и который объединяет в пакеты данные сжатого изображения вместе с информацией заголовка пакета, при этом информация заголовка пакета содержит тип изображения, и при этом модуль кодирования определяет тип изображения, чтобы однозначно указать, используются ли данные кодированного изображения для ссылки при декодировании другого изображения. Модуль кодирования программы кодирования видео с предсказанием согласно аспекту настоящего изобретения определяет тип изображения, чтобы однозначно указать, используются ли данные кодированного изображения для ссылки при декодировании другого изображения на том же самом временном уровне.
[0017] Программой декодирования видео с предсказанием согласно аспекту настоящего изобретения является программа декодирования видео с предсказанием, содержащая: модуль ввода, который вводит данные сжатого изображения, возникающие в результате кодирования множества изображений, образующих видеопоследовательность, посредством либо внутреннего предсказания, либо внешнего предсказания, и объединения в пакеты данных сжатого изображения с информацией заголовка пакета; и модуль декодирования, который восстанавливает информацию заголовка пакета и данные сжатого изображения, при этом информация заголовка пакета содержит тип изображения, однозначно указывающий, используются ли данные восстановленного изображения для ссылки при декодировании другого изображения, и при этом модуль декодирования определяет, на основе типа изображения, используются ли данные восстановленного изображения для ссылки при декодировании другого изображения.
[0018] В программе декодирования видео с предсказанием согласно аспекту настоящего изобретения модуль декодирования определяет, используются ли данные восстановленного изображения для ссылки при декодировании другого изображения, на основе таблицы соответствия, в которой тип изображения предварительно сохранен в связи с информацией, указывающей, используются ли данные восстановленного изображения для ссылки при декодировании другого изображения. Модуль декодирования программы декодирования видео с предсказанием согласно аспекту настоящего изобретения определяет, на основе типа изображения, используются ли данные восстановленного изображения для ссылки при декодировании другого изображения на том же самом временном уровне.
ЭФФЕКТЫ ИЗОБРЕТЕНИЯ
[0019] Эффектом является экономия битов, используемых для nal_ref_flag, и обеспечение возможности их использования в качестве другой информации указания. Это является наиболее эффективным использованием заголовка блока NAL. Другой способ использования состоит в обеспечении возможности расширения типов блока NAL с 6 битов до 7 битов. В настоящее время существующие типы блока NAL назначаются половине из доступных 64 значений nal_unit_type, и другие 32 значения nal_unit_type зарезервированы и могут быть использованы при задании новых типов блока NAL в будущем. Посредством использования трех из этих зарезервированных значений типов блока NAL и расширяя количество битов типов блока NAL до 7 битов, становится целесообразно задать 93 (128-32-3=93) дополнительных блока NAL в будущем.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0020] Фиг. 1 является блок-схемой, показывающей устройство кодирования видео с предсказанием согласно варианту осуществления настоящего изобретения.
Фиг. 2 является блок-схемой, показывающей устройство декодирования видео с предсказанием согласно варианту осуществления настоящего изобретения.
Фиг. 3 является схемой последовательности операций, показывающей обработку способа кодирования видео с предсказанием согласно варианту осуществления настоящего изобретения.
Фиг. 4 схемой последовательности операций, показывающей подробную часть обработки способа кодирования видео с предсказанием согласно варианту осуществления настоящего изобретения.
Фиг. 5 схемой последовательности операций, показывающей обработку способа декодирования видео с предсказанием согласно варианту осуществления настоящего изобретения.
Фиг. 6 схемой последовательности операций, показывающей подробную часть обработки способа декодирования видео с предсказанием согласно варианту осуществления настоящего изобретения.
Фиг. 7 является аппаратной конфигурацией компьютера для исполнения программы, хранящейся на носителе информации.
Фиг. 8 является общим видом компьютера для исполнения программы, хранящейся на носителе информации.
Фиг. 9 является блок-схемой, показывающей пример конфигурации программы кодирования видео с предсказанием.
Фиг. 10 является блок-схемой, показывающей пример конфигурации программы декодирования видео с предсказанием.
ВАРИАНТЫ ОСУЩЕСТВЛЕНИЯ ИЗОБРЕТЕНИЯ
[0021] Варианты осуществления настоящего изобретения будут описаны ниже с использованием Фиг. 1-10.
[0022] Сначала будет описан способ кодирования видео с предсказанием. Фиг. 1 является блок-схемой, показывающей устройство кодирования видео с предсказанием согласно варианту осуществления настоящего изобретения. Ссылочный номер 101 обозначает терминал ввода, 102 - блок разбиения на блоки, 103 - блок генерирования предсказанного сигнала, 104 - память кадров, 105 - блок вычитания, 106 - блок преобразования, 107 - блок квантования, 108 - блок деквантования, 109 - блок обратного преобразования, 110 - блок сложения, 111 - блок энтропийного кодирования, 112 - терминал вывода, и 113 - терминал ввода. Терминал ввода 101 соответствует средству ввода. Блок 105 вычитания, блок 106 преобразования, блок 107 квантования и блок 111 энтропийного кодирования соответствуют средству кодирования. Блок 108 деквантования, блок 109 обратного преобразования и блок 110 сложения соответствуют средству декодирования.
[0023] Что касается устройства кодирования видео с предсказанием, сконфигурированного как описано выше, его функционирование будет описано ниже. Видеосигнал, состоящий из множества изображений, подается в терминал 101 ввода. Изображение цели кодирования разбивается на множество областей блоком 102 разбиения на блоки. В варианте осуществления настоящего изобретения целевое изображение разбивается на блоки, каждый состоящий из пикселей 8×8, но оно может быть разбито на блоки любого размера или формы, в отличие от вышеприведенного. Предсказанный сигнал затем генерируется для области как цели процесса кодирования, (которая в дальнейшем будет называться целевым блоком). Вариант осуществления согласно настоящему изобретению использует два типа способов предсказания. А именно, ими являются внешнее предсказание и внутреннее предсказание.
[0024] При внешнем предсказании восстановленные изображения, которые были кодированы и в дальнейшем восстановлены, используются в качестве опорных изображений, и информация движения для предоставления предсказанного сигнала с наименьшей ошибкой из целевого блока определяется исходя из опорных изображений. Этот процесс называется оценкой движения. В зависимости от ситуации целевой блок может быть дополнительно разбит на подобласти, и для каждой из подобластей может быть определен способ внешнего предсказания. В этом случае наиболее эффективный способ разбиения для всего целевого блока и информация движения каждой подобласти определяются исходя из различных способов разбиения. В вариантах осуществления согласно настоящему изобретению операция проводится в блоке 103 генерирования предсказанного сигнала, целевой блок подается по линии L102 и опорные изображения подаются по линии L104. Опорными изображениями, которые должны быть здесь использованы, являются множество изображений, которые были кодированы и восстановлены в прошлом. Подробности являются такими же, как в способах MPEG-2 или 4 и H.264, которые являются традиционными технологиями. Информация движения и способ разбиения на подобласти, определяемые как описано выше, подаются по линии L112 в блок 111 энтропийного кодирования для кодирования в нем, и затем кодированные данные выводятся из терминала 112 вывода. Информация (опорный индекс), указывающая, из какого опорного изображения из множества опорных изображений получен предсказанный сигнал, также отправляется по линии L112 в блок 111 энтропийного кодирования. Блок 103 генерирования предсказанного сигнала получает сигналы опорных изображений из памяти 104 кадров, на основе опорных изображений и информации движения, соответствующих способу разбиения на подобласти и каждой подобласти, и генерирует предсказанный сигнал. Сигнал с внешним предсказанием, сгенерированный таким образом, подается по линии L103 в блок 105 вычитания.
[0025] При внутреннем предсказании сигнал с внутренним предсказанием генерируется с использованием значений реконструированных пикселей, пространственно смежных с целевым блоком. Конкретно, блок 103 генерирования предсказанного сигнала получает сигналы реконструированных пикселей в том же кадре из памяти 104 кадров и экстраполирует эти сигналы, чтобы сгенерировать сигнал с внутренним предсказанием. Информация о способе экстраполяции подается по линии L112 в блок 111 энтропийного кодирования для кодирования в нем, и затем кодированные данные выводятся из терминала 112 вывода. Сигнал с внутренним предсказанием, сгенерированный таким образом, подается в блок 105 вычитания. Способ генерирования сигнала с внутренним предсказанием в блоке 103 генерирования предсказанного сигнала является таким же, как способ H.264, являющийся традиционной технологией. Предсказанный сигнал с наименьшей ошибкой выбирается из сигналов с внешним предсказанием, полученных как описано выше, и выбранный предсказанный сигнал подается в блок 105 вычитания.
[0026] Блок 105 вычитания вычитает предсказанный сигнал (поданный по линии L103) из сигнала целевого блока (поданного по линии L102), чтобы сгенерировать остаточный сигнал. Этот остаточный сигнал преобразуется посредством дискретного косинусного преобразования блоком 106 преобразования, чтобы образовать коэффициенты преобразования, которые квантуются блоком 107 квантования. Наконец, блок 111 энтропийного кодирования кодирует квантованные коэффициенты преобразования, и кодированные данные выводятся вместе с информацией о способе предсказания из терминала 112 вывода.
[0027] Для внутреннего предсказания или внешнего предсказания последовательного целевого блока сжатый сигнал целевого блока подвергается обратной обработке для восстановления. А именно, блоком 108 деквантования осуществляется обратное квантование квантованных коэффициентов преобразования и затем преобразуются посредством обратного дискретного косинусного преобразования блоком 109 обратного преобразования, чтобы восстановить остаточный сигнал. Блок 110 сложения осуществляет сложение восстановленного остаточного сигнала с предсказанным сигналом, поданным по линии L103, чтобы восстановить сигнал целевого блока, и восстановленный сигнал сохраняется в памяти 104 кадров. Настоящий вариант осуществления использует блок 106 преобразования и блок 109 обратного преобразования, но в других вариантах осуществления также возможно использовать другую обработку преобразования вместо этих блоков преобразования. В зависимости от ситуации, в некоторых вариантах осуществления блок 106 преобразования и блок 109 обратного преобразования могут быть опущены.
[0028] Входные данные из терминала ввода 113 включают в себя информацию порядка отображения каждого изображения, тип кодирования каждого изображения (кодирование с внутренним предсказанием, кодирование с внешним предсказанием или кодирования с двунаправленным предсказанием) и информацию о типе блока NAL, и блок 103 генерирования предсказанного сигнала функционирует на основе этих порций информации. Эти порции информации также подаются по линии L113 в блок 111 энтропийного кодирования для кодирования в нем, и кодированные данные выводятся из терминала 112 вывода. Функционирование блока 111 энтропийного кодирования для кодирования типа блока NAL будет описано позднее.
[0029] Далее будет описан способ декодирования видео с предсказанием. Фиг. 2 является блок-схемой, показывающей устройство декодирования видео с предсказанием согласно варианту осуществления настоящего изобретения. Ссылочный номер 201 обозначает терминал ввода, 202 - блок анализа данных, 203 - блок деквантования, 204 - блок обратного преобразования, 205 - блок сложения, 206 - терминал вывода, 207 - память кадров, 208 - блок генерирования предсказанного сигнала и 209 - блок управления памятью кадров. Терминал ввода 201 соответствует средству ввода. Блок 202 анализа данных, блок 203 деквантования, блок 204 обратного преобразования и блок 205 сложения соответствуют средству декодирования. В других вариантах осуществления средство декодирования может быть средством, отличным от вышеприведенного. Кроме того, в вариантах осуществления средство декодирования может быть сконфигурировано без блока 204 обратного преобразования.
[0030] Что касается устройства декодирования видео с предсказанием, сконфигурированного как описано выше, его функционирование будет описано ниже. Сжатые данные, возникающие в результате кодирования со сжатием устройством кодирования видео с предсказанием, вводятся посредством терминала ввода 201. Эти сжатые данные содержат остаточный сигнал, возникающий в результате кодирования с предсказанием каждого целевого блока, полученного посредством разбиения изображения на множество блоков, и информацию, относящуюся к генерированию предсказанного сигнала. Информация, относящаяся к генерированию предсказанного сигнала, включает в себя, в дополнение к типу блока NAL, информацию о разбиении на блоки (размер блока), информацию движения и вышеупомянутый опорный индекс в случае внешнего предсказания, и включает в себя информацию о способе экстраполяции из реконструированных окружающих пикселей в случае внутреннего предсказания.
[0031] Блок 202 анализа данных извлекает остаточный сигнал целевого блока, информацию, относящуюся к генерированию предсказанного сигнала, включающую в себя тип блока NAL, параметр квантования, и информацию порядка отображения изображения из сжатых данных. Операция для извлечения типа блока NAL в блоке 202 анализа данных будет описана позднее. Блоком 203 деквантования осуществляется обратное квантование остаточного сигнала целевого блока на основе параметра квантования (поданного по линии L202). Результат преобразуется посредством дискретного косинусного преобразования блоком 204 обратного преобразования.
[0032] Далее информация, относящаяся к генерированию предсказанного сигнала, такая как информация порядка отображения целевого изображения, тип кодирования изображения, тип блока NAL и опорный индекс, подается по линии L206 в блок 208 генерирования предсказанного сигнала. Блок 208 генерирования предсказанного сигнала осуществляет доступ к памяти 207 кадров, на основе информации, относящейся к генерированию предсказанного сигнала, для получения опорного сигнала из множества опорных изображений (по линии L207), и генерирует предсказанный сигнал. Этот предсказанный сигнал подается по линии L208 в блок 205 сложения, блок 205 сложения осуществляет сложение этого предсказанного сигнала с восстановленным остаточным сигналом для восстановления сигнала целевого блока, и сигнал выводится по линии L205 из терминала 206 вывода и одновременно сохраняется в память 207 кадров.
[0033] Восстановленные изображения, которые должны быть использованы для декодирования и восстановления последовательного изображения, хранятся в памяти 207 кадров.
[0034] Таблица 2 и Таблица 3 являются таблицами, указывающими варианты выбора двух типов синтаксиса, касающихся режима использования двух байтов заголовка блока NAL.
Таблица 2 | |
nal_unit(NumBytesInNALunit) { | Дескриптор |
forbidden_zero_bit | f(1) |
зарезервирован | u(1) |
nal_unit_type | u(6) |
temporal_id | u(3) |
reserved_one_5bits | u(5) |
.... (Оставшаяся часть блока NAL) |
Таблица 3 | |
nal_unit( NumBytesInNALunit) { | Дескриптор |
forbidden_zero_bit | f(1) |
зарезервирован | u(1) |
nal_unit_type | u(6) |
temporal_id | u(3) |
reserved_one_5bits | u(5) |
.... (Оставшаяся часть блока NAL) |
В Таблицах 2 и 3 числа в скобках в столбце "Дескриптор" указывают количество битов соответствующих элементов.
[0035] В заголовке синтаксиса блока NAL из Таблицы 2 nal_ref_flag заменен зарезервированным битом (зарезервирован). Этот бит игнорируется существующими в настоящее время устройствами декодирования, но ему может быть назначено новое значение или семантика для будущих устройств декодирования. Следует отметить, что размещение битов в Таблице 2 служит лишь для описания, и зарезервированный бит может быть размещен в другом месте в 2-байтном заголовке.
[0036] В синтаксисе заголовка блока NAL из Таблицы 3 nal_unit_type назначено 7 битов, и тем самым самое большое могут быть заданы 128 разных видов nal_unit_type. В настоящем варианте осуществления было выбрано назначение 7 битов для nal_unit_type, но бит, сэкономленный в nal_ref_flag, может быть назначен для temporal_id.
[0037] Таблица 4 показывает типы блока NAL в настоящем варианте осуществления.
Таблица 4 | |||
nal_unit_type | Категория | Содержимое синтаксической структуры блока NAL и RBSP | nal_ref_flag |
0 | Не определен | - | |
1 | Другой слайс | Кодированный слайс не RAP, не TFD и не TLA-изображения slice_layer_rbsp() | 0 |
2 | TFD-слайс | Кодированный слайс TFD-изображения slice_layer_rbsp() | 0 |
3 | TLA-слайс | Кодированный слайс не TFD TLA-изображения slice_layer_rbsp() | 0 |
4 | RAP-слайс | Кодированный слайс CRAT-изображения slice_layer_rbsp() | 1 |
5 | RAP-слайс | Кодированный слайс CRANT-изображения slice_layer_rbsp() | 1 |
6 | RAP-слайс | Кодированный слайс BLCT-изображения slice_layer_rbsp() | 1 |
7 | RAP-слайс | Кодированный слайс BLCNT-изображенияslice_layer_rbsp() | 1 |
8 | RAP-слайс | Кодированный слайс IDR-изображения slice_layer_rbsp() | 1 |
9 | Другой слайс | кодированный слайс не RAP, не TFD и не TLA-изображения slice_layer_rbsp() | 1 |
10 | TFD-слайс | Кодированный слайс TFD-изображения slice_layer_rbsp() | 1 |
11 | TLA-слайс | Кодированный слайс не TFD TLA-изображенияslice_layer_rbsp() | 1 |
12..24 | Зарезервирован | ||
25 | Набор параметров | Набор параметров видео video_parameter_set_rbsp() | 1 |
26 | Набор параметров | Набор параметров последовательности seq_parameter_set_rbsp() | 1 |
27 | Набор параметров | Набор параметров изображения pic_parameter_set_rbsp() | 1 |
28 | Набор параметров | Набор параметров адаптации aps_rbsp() | 1 |
29 | Информация | Разграничитель блока доступа access_unit_delimiter_rbsp() | 0 |
30 | Информация | Данные заполнителя filler_data_rbsp() | 0 |
31 | Информация | Дополнительная информация по усовершенствованию (SEI) sei_rbsp() | 0 |
32..47 | Зарезервирован | - | |
48..63 | Не определен |
Таблица 4 является таблицей, показывающей значения nal_ref_flag, оцененные исходя из значений nal_unit_type. Типы блока NAL могут быть сгруппированы во множество категорий, которые показаны во втором столбце Таблицы 4. Категории описаны ниже.
1) RAP-слайс: блок NAL, включающий в себя кодированный слайс изображения произвольного доступа.
2) TLA-слайс: блок NAL, включающий в себя кодированный слайс доступа к временному уровню.
3) TFD-слайс: блок NAL, включающий в себя кодированный слайс изображения, помеченного для сброса.
4) Другой слайс: блок NAL, включающий в себя кодированный слайс, помимо вышеуказанных слайсов.
5) Набор параметров: блок NAL, включающий в себя набор параметров видео, последовательности, изображения или адаптации.
6) Информация: блок NAL, включающий в себя разграничитель доступа, данные заполнителя или дополнительную информацию по усовершенствованию (SEI).
[0038] В настоящем варианте осуществления три новых вида типов блока NAL, соответствующих 9, 10, и 11 как значениям nal_unit_type (типам изображений), добавляются к nal_unit_type при традиционной технологии. Блоки NAL с этими значениями для nal_unit_type включают в себя те же типы слайса, как и блоки NAL с соответствующими значениями для nal_unit_type 1, 2 и 3. nal_unit_type: 1 включает в себя кодированный слайс не RAP, не TFD и не TLA-изображения, nal_unit_type: 2 включает в себя кодированный слайс TFD-изображения, и nal_unit_type: 3 включает в себя кодированный слайс не TFT-изображения и TLA-изображения.
Настоящий вариант осуществления отличается от традиционной технологии в том, что значения 1, 2 и 3 являются кодированными слайсами, принадлежащими неопорным изображениям, и значения 9, 10, и 11 являются кодированными слайсами, принадлежащими опорным изображениям.
[0039] Значения, назначенные соответствующим категориям, не ограничены категориями, описанными выше. Кроме того, каждая категория может быть расширена до некоторых подкатегорий, и этим подкатегориям могут быть назначены новые значения, с использованием зарезервированных значений в Таблице 4.
[0040] Фиг. 3 показывает функционирование устройства кодирования видео с предсказанием для кодирования заголовка блока NAL в настоящем варианте осуществления. На этапе 118 устройство кодирования видео с предсказанием получает видеоданные, которые должны быть объединены в пакеты. На этапе 120 устройство кодирует первый бит блока NAL, всегда имеющий фиксированное значение 0. На этапе 130 устройство определяет nal_unit_type и кодирует его. На этапе 140 устройство кодирует temporal_id и на этапе 150 устройство кодирует зарезервированные 5 битов (reserved_one_5bits), завершающие заголовок блока NAL. На этапе 160 устройство объединяет в пакеты оставшуюся полезную нагрузку (полезную нагрузку) и прекращает обработку.
[0041] Фиг. 4 показывает подробности процесса при определении и кодировании nal_unit_type на вышеуказанном этапе 130.
[0042] На этапе 210 устройство кодирования видео с предсказанием определяет, являются ли данные, которые должны быть объединены в пакеты, кодированным слайсом, принадлежащим любому из изображений произвольного доступа (RAP); если данные являются кодированным слайсом, принадлежащим любому из RAP (ДА), устройство переходит на этап 220. Если нет (НЕТ), устройство переходит на этап 230.
[0043] На этапе 220 устройство кодирования видео с предсказанием кодирует nal_unit_type посредством числа от 4 до 8, чтобы предположить, что nal_ref_flag равен 1, согласно типу RAP, и затем переходит на этап 140.
[0044] На этапе 230 устройство кодирования видео с предсказанием определяет, являются ли данные, которые должны быть объединены в пакеты, набором параметров, и если данные определены как набор параметров (ДА), устройство переходит на этап 240. Если данные не являются набором параметров (НЕТ), устройство переходит на этап 250.
[0045] На этапе 240 устройство кодирования видео с предсказанием кодирует nal_unit_type посредством числа от 25 до 28, чтобы предположить, что nal_ref_flag равен 1, согласно набору параметров, и затем устройство переходит на этап 140.
[0046] На этапе 250 устройство кодирования видео с предсказанием определяет, являются ли данные, которые должны быть объединены в пакеты, информационными данными, и если данные являются информационными данными (ДА), устройство переходит на этап 260. Если нет (НЕТ), устройство переходит на этап 270.
[0047] На этапе 260 устройство кодирования видео с предсказанием кодирует nal_unit_type посредством числа от 29 до 31, чтобы предположить, что nal_ref_flag равен 0, согласно типу информации, и затем переходит на этап 140.
[0048] На этапе 270 устройство кодирования видео с предсказанием определяет, являются ли данные, которые должны быть объединены в пакеты, опорным изображением, и если данные являются опорным изображением (ДА), устройство переходит на этап 280. Если данные не являются опорным изображением (НЕТ), устройство переходит на этап 290. Определение того, являются ли данные опорным изображением и