Структуры формата файла многоуровневого видео

Иллюстрации

Показать все

Изобретение относится к области обработки видеоданных. Технический результат заключается в повышении эффективности обработки видеоданных. Технический результат достигается за счет генерации файла, который содержит бокс трека, который содержит метаданные для трека в файле, причем: медиаданные для трека содержат последовательность выборок, каждая из выборок является видеоединицей доступа многоуровневых видеоданных; генерация файла содержит генерацию, в файле, бокса информации подвыборки, который содержит флаги, которые специфицируют тип информации подвыборки, заданной в боксе информации подвыборки, на основе того, что флаги имеют некоторое конкретное значение, подвыборка, соответствующая боксу информации подвыборки, содержит точно одну кодированную картинку и нуль или более не относящихся к уровню видеокодирования (VCL) единиц уровня сетевой абстракции (NAL), ассоциированных с кодированной картинкой; и генерация бокса информации подвыборки содержит, на основе того, что флаги имеют упомянутое конкретное значение, включение, в бокс информации подвыборки, дополнительного значения, которое указывает идентификатор уровня каждой NAL-единицы подвыборки. 8 н. и 28 з.п. ф-лы, 12 ил., 3 табл.

Реферат

[0001] Настоящая заявка испрашивает приоритет Предварительной патентной заявки США № 61/894,886, поданной 23 октября 2013, все содержание которой включено в настоящий документ посредством ссылки.

ОБЛАСТЬ ТЕХНИКИ

[0002] Настоящее раскрытие относится к видео кодированию.

ПРЕДШЕСТВУЮЩИЙ УРОВЕНЬ ТЕХНИКИ

[0003] Возможности цифрового видео могут быть включены в широкий спектр устройств, включая цифровые телевизоры, системы цифрового прямого вещания, системы беспроводного вещания, персональные цифровые помощники (PDA), портативные или настольные персональные компьютеры, планшетные компьютеры, устройства для чтения электронных книг, цифровые камеры, цифровые записывающие устройства, цифровые мультимедийные плееры, видеоигровые устройства, видеоигровые приставки, сотовые или спутниковые радиотелефоны, так называемые ʺсмартфоныʺ, устройства видео телеконференц-связи, устройства потоковой передачи видео и тому подобное. Цифровые видео устройства реализуют методы сжатия видео, такие как описанные в стандартах, определенных MPEG-2, MPEG-4, ITU-T H.263, ITU-T H.264/MPEG-4, Part 10, Расширенное видео кодирование (AVC), стандарт Высокоэффективного видео кодирования (HEVC), находящийся в настоящее время в стадии разработки, и расширения этих стандартов. Видео устройства могут передавать, принимать, кодировать, декодировать и/или сохранять информацию цифрового видео более эффективно путем реализации таких методов сжатия видео.

[0004] Методы сжатия видео выполняют пространственное (внутрикадровое) предсказание и/или временное (межкадровое) предсказание для уменьшения или устранения избыточности, внутренне присущей видео последовательностям. Для блочного видео кодирования, видео вырезка (т.е., видео кадр или часть видео кадра) может быть подразделена на видео блоки, которые могут упоминаться как блоки дерева, единицы кодирования (CU) и/или узлы кодирования. Видео блоки во внутренне (интра-) кодированной (I) вырезке картинки (изображения) кодируются с использованием пространственного предсказания по отношению к опорным выборкам в соседних блоках в той же самой картинке. Видео блоки взаимно (интер-) кодированной (P или B) вырезки картинки могут использовать пространственное предсказание по отношению к опорным выборкам в соседних блоках в той же картинке или временное предсказание по отношению к опорным выборкам в других опорных картинках. Картинки могут упоминаться как кадры, и опорные картинки могут упоминаться как опорные кадры.

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

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

[0006] В общем, настоящее раскрытие относится к сохранению видео контента в файле на основе базового формата медиа файла Международной организации по стандартизации (ISO) (ISOBMFF). Некоторые примеры настоящего раскрытия относятся к способам хранения потоков видео, содержащих множество кодированных уровней, где каждый уровень может быть масштабируемым уровнем, представлением (видом) текстуры, представлением глубины и т.д., и упомянутые способы могут применяться для хранения видеоданных Многовидового высокоэффективного видео кодирования (MV-HEVC), масштабируемого HEVC (SHVC), 3-мерного HEVC (3D-HEVC) и других типов видеоданных.

[0007] В одном аспекте, настоящее раскрытие описывает способ обработки многоуровневых видеоданных, причем способ содержит генерацию файла, который содержит бокс трека, который содержит метаданные для трека в файле, причем медиа данные для трека содержат последовательность выборок, каждая выборка является видео единицей доступа многоуровневых видеоданных; генерация файла содержит генерацию, в файле, бокса (блока) информации подвыборки, который содержит флаги, которые специфицируют тип информации подвыборки, заданной в боксе информации подвыборки, и если флаги имеют конкретное значение, подвыборка, соответствующая боксу информации подвыборки, содержит точно одну кодированную картинку и нуль или более не относящихся к уровню видео кодирования (VCL) единиц уровня сетевой абстракции (NAL), ассоциированных с кодированной картинкой.

[0008] В другом аспекте, настоящее раскрытие описывает способ обработки многоуровневых видеоданных, причем способ содержит получение, из файла, бокса трека, который содержит метаданные для трека в файле, причем медиа данные для трека содержат последовательность выборок, каждая из выборок является видео единицей доступа многоуровневых видеоданных; получение, из файла, бокса информации подвыборки, который содержит флаги, которые специфицируют тип информации подвыборки, заданной в боксе информации подвыборки, причем, когда флаги имеют конкретное значение, подвыборка, соответствующая боксу информации подвыборки, содержит точно одну кодированную картинку и нуль или более не-VCL NAL-единиц, ассоциированных с кодированной картинкой.

[0009] В другом аспекте, настоящее раскрытие описывает видео устройство, содержащее носитель хранения данных, сконфигурированный для хранения многоуровневых видеоданных; и один или более процессоров, сконфигурированных, чтобы генерировать файл, который содержит бокс трека, который содержит метаданные для трека в файле, причем медиа данные для трека содержат последовательность выборок, каждая из выборок является видео единицей доступа многоуровневых видеоданных; генерировать файл, причем один или более процессоров генерируют, в файле, бокс информации подвыборки, который содержит флаги, которые специфицируют тип информации подвыборки, заданной в боксе информации подвыборки, и когда флаги имеют конкретное значение, подвыборка, соответствующая боксу информации подвыборки, содержит точно одну кодированную картинку и нуль или более не-VCL NAL-единиц, ассоциированных с кодированной картинкой.

[0010] В другом аспекте, настоящее раскрытие описывает видео устройство, содержащее носитель хранения данных, сконфигурированный для хранения многоуровневых видеоданных; один или более процессоров, сконфигурированных, чтобы получать, из файла, бокс трека, который содержит метаданные для трека в файле, причем медиа данные для трека содержат последовательность выборок, каждая из выборок является видео единицей доступа многоуровневых видеоданных; и получать, из файла, бокс информации подвыборки, который содержит флаги, которые специфицируют тип информации подвыборки, заданной в боксе информации подвыборки, причем, когда флаги имеют конкретное значение, подвыборка, соответствующая боксу информации подвыборки, содержит точно одну кодированную картинку и нуль или более не-VCL NAL-единиц, ассоциированных с кодированной картинкой.

[0011] В другом аспекте, настоящее раскрытие описывает видео устройство, содержащее средство для генерации файла, который содержит бокс трека, который содержит метаданные для трека в файле, причем медиа данные для трека содержат последовательность выборок, каждая из выборок является видео единицей доступа многоуровневых видеоданных; генерация файла содержит генерацию, в файле, бокса информации подвыборки, который содержит флаги, которые специфицируют тип информации подвыборки, заданной в боксе информации подвыборки, и когда флаги имеют конкретное значение, подвыборка, соответствующая боксу информации подвыборки, содержит точно одну кодированную картинку и нуль или более не-VCL NAL-единиц, ассоциированных с кодированной картинкой.

[0012] В другом аспекте, настоящее раскрытие описывает видео устройство, содержащее средство для получения, из файла, бокса трека, который содержит метаданные для трека в файле, причем медиа данные для трека содержат последовательность выборок, каждая из выборок является видео единицей доступа многоуровневых видеоданных; и средство для получения, из файла, бокса информации подвыборки, который содержит флаги, которые специфицируют тип информации подвыборки, заданной в боксе информации подвыборки, причем, когда флаги имеют конкретное значение, подвыборка, соответствующая боксу информации подвыборки, содержит точно одну кодированную картинку и нуль или более не-VCL NAL-единиц, ассоциированных с кодированной картинкой.

[0013] В другом аспекте, настоящее раскрытие описывает считываемый компьютером носитель хранения данных, имеющий инструкции, сохраненные на нем, которые, при исполнении, побуждают один или более процессоров генерировать файл, который содержит бокс трека, который содержит метаданные для трека в файле, причем медиа данные для трека содержат последовательность выборок, каждая из выборок является видео единицей доступа многоуровневых видеоданных; генерировать файл, причем инструкции побуждают один или более процессоров генерировать, в файле, бокс информации подвыборки, который содержит флаги, которые специфицируют тип информации подвыборки, заданной в боксе информации подвыборки, и когда флаги имеют конкретное значение, подвыборка, соответствующая боксу информации подвыборки, содержит точно одну кодированную картинку и нуль или более не-VCL NAL-единиц, ассоциированных с кодированной картинкой.

[0014] В другом аспекте, настоящее раскрытие описывает считываемый компьютером носитель хранения данных, имеющий инструкции, сохраненные на нем, которые, при исполнении, побуждают один или более процессоров получать, из файла, бокс трека, который содержит метаданные для трека в файле, причем медиа данные для трека содержат последовательность выборок, каждая из выборок является видео единицей доступа многоуровневых видеоданных; и получать, из файла, бокс информации подвыборки, который содержит флаги, которые специфицируют тип информации подвыборки, заданной в поле информации подвыборки, причем, когда флаги имеют конкретное значение, подвыборка, соответствующая боксу информации подвыборки, содержит точно одну кодированную картинку и нуль или более не-VCL NAL-единиц, ассоциированных с кодированной картинкой.

[0015] Детали одного или более примеров раскрытия изложены на приложенных чертежах и в нижеследующем описании. Другие признаки, объекты и преимущества будут очевидны из описания, чертежей и формулы изобретения.

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

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

[0017] Фиг. 2 является блок-схемой, иллюстрирующей примерный видео кодер, который может реализовать методы, описанные в настоящем раскрытии.

[0018] Фиг. 3 является блок-схемой, иллюстрирующей примерный видео декодер, который может реализовать методы, описанные в настоящем раскрытии.

[0019] Фиг. 4 является блок-схемой, иллюстрирующей примерный набор устройств, которые формируют часть сети.

[0020] Фиг. 5 является концептуальной схемой, иллюстрирующей примерную структуру файла в соответствии с одним или более методами настоящего раскрытия.

[0021] Фиг. 6 является концептуальной схемой, иллюстрирующей примерную структуру файла в соответствии с одним или более методами настоящего раскрытия.

[0022] Фиг. 7 является блок-схемой последовательности действий, иллюстрирующей примерную работу устройства генерации файла, в соответствии с одним или более методами настоящего раскрытия.

[0023] Фиг. 8 является блок-схемой последовательности действий, иллюстрирующей примерную операцию, в которой вычислительное устройство выполняет произвольный доступ и/или переключение уровня в соответствии с одним или более методами настоящего раскрытия.

[0024] Фиг. 9 является блок-схемой последовательности действий, иллюстрирующей примерную работу устройства генерации файла, в соответствии с одним или более методами настоящего раскрытия.

[0025] Фиг. 10 является блок-схемой последовательности действий, иллюстрирующей примерную работу вычислительного устройства, в соответствии с одним или более методами настоящего раскрытия.

[0026] Фиг. 11 является блок-схемой последовательности действий, иллюстрирующей примерную работу устройства генерации файла, в соответствии с одним или более методами настоящего раскрытия.

[0027] Фиг. 12 является блок-схемой последовательности действий, иллюстрирующей примерную работу устройства-получателя, в соответствии с одним или более методами настоящего раскрытия.

ДЕТАЛЬНОЕ ОПИСАНИЕ

[0028] Базовый формат медиа файла ISO (ISOBMFF) является форматом файла для хранения медиа данных. ISOBMFF является расширяемым для поддержки хранения видеоданных, соответствующих конкретным стандартам видео кодирования. Например, ISOBMFF был ранее расширен для поддержки хранения видеоданных, соответствующих стандартам видео кодирования H.264/AVC и Высокоэффективного видео кодирования (HEVC). Кроме того, ISOBMFF был ранее расширен для поддержки хранения видеоданных, соответствующих расширениям многовидового кодирования (MVC) и масштабируемого видео кодирования (SVC) H.264/AVC. MV-HEVC, 3D-HEVC и SHVC являются расширениями стандарта видео кодирования HEVC, который поддерживает многоуровневые видеоданные. Признаки, добавленные к ISOBMFF для хранения видеоданных, соответствующих MVC- и SVC-расширениям H.264/AVC, не достаточны для эффективного хранения видеоданных, соответствующих MV-HEVC, 3D-HEVC и SHVC. Иными словами, различные проблемы могут возникать, если бы попытались использовать расширение ISOBMFF для хранения видеоданных, соответствующих MVC- и SVC-расширениям H.264/AVC, для хранения видеоданных, соответствующих MV-HEVC, 3D-HEVC и SHVC.

[0029] Например, в отличие от битового потока, который соответствует MVC- или SVC-расширениям H.264/AVC, битовый поток, который соответствует MV-HEVC, 3D-HEVC или SHVC, может включать в себя единицы доступа, которые содержат картинки внутренней (интра) точки произвольного доступа (IRAP) и не-IRAP-картинки. Единица доступа, содержащая IRAP-картинки и не-IRAP-картинки, может быть использована для произвольного доступа в MV-HEVC, 3D-HEVC и SHVC. Однако ISOBMFF и его существующие расширения не обеспечивают способа идентификации таких единиц доступа. Это может воспрепятствовать способности вычислительного устройства выполнять произвольный доступ и переключение уровня.

[0030] Таким образом, в соответствии с одним примером настоящего раскрытия, вычислительное устройство может генерировать файл, который содержит бокс (контейнер) трека, который содержит метаданные для трека в файле. Медиа данные для трека содержат последовательность выборок. Каждая из выборок может быть видео единицей доступа многоуровневых видеоданных (например, видеоданных MV-HEVC, 3D-HEVC или SHVC). В качестве части генерации файла, вычислительное устройство может генерировать, в файле, дополнительный бокс, который документирует все выборки, содержащие по меньшей мере одну IRAP-картинку. Способность определять выборки, содержащие IRAP-картинки, на основе информации в дополнительном боксе может позволить вычислительным устройствам, принимающим файл, выполнять произвольный доступ и переключение уровня без синтаксического анализа и интерпретации NAL-единиц. Это может сократить сложность и время обработки.

[0031] Кроме того, многоуровневые видеоданные, такие как видеоданные MV-HEVC, 3D-HEVC и SHVC, могут включать в себя множество кодированных картинок для каждой единицы доступа. Однако ISOBMFF и его существующие расширения не обеспечивают информацию относительно индивидуальных кодированных картинок в единице доступа, если имеется множество кодированных картинок в единице доступа. Таким образом, в примерах, где вычислительное устройство (например, сервер потоковой передачи) определяет, следует ли отправлять NAL-единицы в файле, вычислительному устройству может потребоваться синтаксически анализировать и интерпретировать информацию, сохраненную в NAL-единицах, чтобы определить, следует ли отправлять NAL-единицы. Синтаксический анализ и интерпретация информации, сохраненной в NAL-единицах, может увеличить сложность вычислительного устройства и может увеличить задержку потоковой передачи.

[0032] Таким образом, в соответствии с одним примером настоящего раскрытия, вычислительное устройство может генерировать файл, который содержит бокс трека, который содержит метаданные для трека в файле. Медиа данные для трека содержат последовательность выборок. Каждая из выборок является видео единицей доступа многоуровневых видеоданных. В качестве части генерации файла, вычислительное устройство генерирует, в файле, бокс информации подвыборки, который содержит флаги, которые специфицируют тип информации подвыборки, заданной в боксе информации подвыборки. Когда флаги имеют конкретное значение, подвыборка, соответствующая боксу информации подвыборки, содержит точно одну кодированную картинку и нуль или более не относящихся к уровню видео кодирования (VCL) NAL-единиц, ассоциированных с кодированной картинкой. Таким путем, вычислительные устройства, которые принимают файл, могут использовать информацию подвыборки, заданную в боксе информации подвыборки, чтобы выполнить определение относительно индивидуальных кодированных картинок в выборке файла. Не-VCL NAL-единицы, ассоциированные с кодированной картинкой, могут включать в себя NAL-единицы для наборов параметров (например, PPS, SPS, VPS) и SEI, применимую к кодированной картинке.

[0033] В многоуровневых видеоданных, единица доступа может включать в себя кодированные картинки, которые маркированы как предназначенные для вывода, и кодированные картинки, которые маркированы как не предназначенные для вывода. Видео декодер может использовать кодированные картинки, которые маркированы как не предназначенные для вывода, в качестве опорных картинок для декодирования картинок, которые маркированы как предназначенные для вывода. Заголовок NAL-единицы для NAL-единицы вырезки картинки может включать в себя флаг вывода картинки (например, pic_output_flag в HEVC), который указывает, маркирована ли картинка как предназначенная для вывода. В ISOBMFF-файле, каждая выборка должна быть ассоциирована с временем вывода (например, временем композиции), которое указывает, когда выборка должна выводиться. Однако картинки, которые маркированы как не предназначенные для вывода, не имеют времен вывода. Таким образом, наличие картинок, которые маркированы как не предназначенные для вывода, может нарушить это требование ISOBMFF или может потребовать нестандартных методов обхода ошибок.

[0034] Таким образом, в соответствии с одним или более методами настоящего раскрытия, вычислительное устройство может генерировать файл, который содержит бокс медиа данных, который вмещает медиа контент. Медиа контент содержит последовательность выборок. Каждая из выборок содержит единицу доступа многоуровневых видеоданных. В качестве части генерации файла, вычислительное устройство может, в ответ на определение, что по меньшей мере одна единица доступа битового потока многоуровневых видеоданных включает в себя кодированную картинку, которая имеет флаг вывода картинки, равный первому значению (например, 1), и кодированную картинку, которая имеет флаг вывода картинки, равный второму значению (например, 0), использовать по меньшей мере два трека для хранения битового потока в файле. Для каждого соответствующего трека из по меньшей мере двух треков, все кодированные картинки в каждой выборке соответствующего трека имеют то же самое значение флага вывода картинки. Картинки, имеющие флаги вывода картинки, равные первому значению (например, 1), разрешены для вывода, а картинки, имеющие флаги вывода картинки, равные второму значению (например, 0), разрешены для использования в качестве опорных картинок, но не разрешены для вывода. Использование по меньшей мере двух треков может разрешить проблему, описанную выше, так как каждой выборке в каждом треке может быть присвоено соответствующее время вывода, и видео декодер не может выводить картинки в треке, содержащем выборки, которые не разрешены для вывода.

[0035] Хотя большая часть описания методов настоящего раскрытия описывает MV-HEVC, 3D-HEVC и SHVC, понятно, что методы настоящего раскрытия могут применяться к другим стандартам видео кодирования и/или их расширениям.

[0036] Фиг. 1 является блок-схемой, иллюстрирующей пример системы 10 видео кодирования и декодирования, которая может использовать методы, описанные в настоящем раскрытии. Как показано на фиг. 1, система 10 включает в себя устройство-источник 12, которое генерирует кодированные видеоданные, подлежащие декодированию позже устройством-получателем 14. Устройство-источник 12 и устройство-получатель 14 могут содержать любое из широкого спектра устройств, включая настольные компьютеры, ноутбуки (т.е., портативные компьютеры), планшетные компьютеры, приставки, телефонные трубки, такие как так называемые смартфоны, так называемые смарт-планшеты, телевизоры, камеры, устройства отображения, цифровые медиа плееры, видеоигровые приставки, устройства потокового видео и т.п. В некоторых случаях устройство-источник 12 и устройство-получатель 14 могут быть выполнены с возможностью беспроводной связи. Устройство-источник 12 и устройство-получатель 14 могут рассматриваться как видео устройства.

[0037] В примере по фиг. 1, устройство-источник 12 включает в себя источник 18 видео, видео кодер 20 и выходной интерфейс 22. В некоторых случаях, выходной интерфейс 22 может включать в себя модулятор/демодулятор (модем) и/или передатчик. В устройстве-источнике 12, источник 18 видео может включать в себя такой источник, как устройство съемки видео, например, видео камеру, архив видео, содержащий ранее отснятое видео, интерфейс получения видео для приема видео от провайдера видео контента и/или систему компьютерной графики для генерации данных компьютерной графики, таких как исходное видео, или комбинацию таких источников. Однако методы, описанные в настоящем раскрытии, могут быть применены к видео кодированию в общем и могут быть применены к беспроводным и/или проводным приложениям.

[0038] Видео кодер 20 может кодировать снимаемое, предварительно отснятое или сгенерированное компьютером видео. Устройство-источник 12 может передавать кодированные видеоданные непосредственно на устройство-получатель 14 через выходной интерфейс 22 устройства-источника 12. Кодированные видеоданные могут также (или альтернативно) сохраняться в устройстве 33 хранения для последующего доступа устройством-получателем 14 или другими устройствами для декодирования и/или воспроизведения.

[0039] Устройство-получатель 14 включает в себя входной интерфейс 28, видео декодер 30 и устройство 32 отображения. В некоторых случаях входной интерфейс 28 может включать в себя приемник и/или модем. Входной интерфейс 28 устройства-получателя 14 принимает кодированные видеоданные по линии связи 16. Кодированные видеоданные, переданные по линии связи 16 или предоставленные на устройстве 33 хранения, могут включать в себя различные синтаксические элементы, сгенерированные видео кодером 20 для использования видео декодером, таким как видео декодер 30, при декодировании видеоданных. Такие синтаксические элементы могут быть включены в кодированные видеоданные, передаваемые по среде связи, сохраненные на носителе хранения или сохраненные на файловом сервере.

[0040] Устройство 32 отображения может быть встроенным в устройство-получатель 14 или может быть внешним по отношению к нему. В некоторых примерах, устройство-получатель 14 может включать в себя встроенное устройство отображения и может также быть сконфигурировано, чтобы взаимодействовать с внешним устройством отображения. В других примерах, устройство-получатель 14 может быть устройством отображения. В общем, устройство 32 отображения отображает декодированные видеоданные пользователю и может содержать любое из разнообразных устройств отображения, таких как жидкокристаллический дисплей (LCD), плазменный дисплей, дисплей на органических светоизлучающих диодах (OLED) или устройство отображения другого типа.

[0041] Видео кодер 20 и видео декодер 30 могут быть реализованы, каждый, как любая из разнообразных подходящих схем кодера, таких как один или более микропроцессоров, процессоров цифровых сигналов (DSP), специализированных интегральных схем (ASIC), программируемых вентильных матриц (FPGA), дискретная логика, программное обеспечение, аппаратные средства, программно-аппаратные средства или их комбинации. Когда методы реализованы частично в программном обеспечении, устройство может хранить инструкции для программного обеспечения на подходящем не-транзиторном (не-временном) считываемом компьютером носителе и исполнять инструкции в аппаратных средствах с использованием одного или более процессоров, чтобы выполнять методы настоящего раскрытия. Каждый из видео кодера 20 и видео декодера 30 может быть включен в один или более кодеров или декодеров, каждый из которых может быть встроен как часть комбинированного кодера/декодера (кодека) в соответствующее устройство.

[0042] Устройство-получатель 14 может принимать кодированные видеоданные, подлежащие декодированию, через линию связи 6. Линия связи 16 может содержать любой тип носителя или устройства, способного перемещать кодированные видеоданные от устройства-источника 12 к устройству-получателю 14. В одном примере, линия связи 16 может содержать среду связи, позволяющую устройству-источнику 12 передавать кодированные видеоданные непосредственно к устройству-получателю 14 в реальном времени. Кодированные видеоданные могут быть модулированы в соответствии со стандартом связи, таким как протокол беспроводной связи, и переданы к устройству-получателю 14. Среда связи может содержать любую беспроводную или проводную среду связи, такую как радиочастотный (RF) спектр или одна или более физических линий передачи. Среда связи может формировать часть пакетной сети, такой как локальная сеть, сеть широкого охвата или глобальная сеть, такая как Интернет. Среда связи может включать в себя маршрутизаторы, коммутаторы, базовые станции или любое другое оборудование, которое может быть полезным для обеспечения связи от устройства-источника 12 к устройству-получателю 14.

[0043] Альтернативно, выходной интерфейс 22 может выводить кодированные данные на устройство 33 хранения. Аналогично, входной интерфейс 28 может получать доступ к устройству 33 хранения кодированных данных. Устройство 33 хранения может включать в себя любые из различных распределенных или локально доступных носителей хранения данных, таких как накопитель на жестком диске, Blu-ray диски, DVD, CD-ROM, флэш-память, энергозависимая или энергонезависимая память или любые другие подходящие цифровые носители хранения для хранения кодированных видеоданных. В другом примере, устройство 33 хранения может соответствовать файловому серверу или другому промежуточному устройству хранения, которое может хранить кодированное видео, сгенерированное устройством-источником 12. Устройство-получатель 14 может получать доступ к сохраненным видеоданным с устройства 33 хранения посредством потоковой передачи или загрузки. Файловый сервер может быть любым типом сервера, способным хранить кодированные видеоданные и передавать эти кодированные видеоданные на устройство-получатель 14. Примеры файловых серверов включают в себя веб-сервер (например, для веб-сайта), FTP сервер, подключенные к сети устройства хранения (NAS) или накопитель на локальном диске. Устройство-получатель 14 может получать доступ к кодированным видеоданным через любое стандартное соединение передачи данных, включая Интернет-соединение. Это может включать в себя беспроводный канал (например, Wi-Fi соединение), проводное соединение (например, DSL, кабельный модем и т.д.) или комбинацию того и другого, которая подходит для доступа к кодированным видеоданным, сохраненным на файловом сервере. Передача кодированных видеоданных от устройства 33 хранения может быть потоковой передачей, передачей загрузки или их комбинацией.

[0044] Методы настоящего раскрытия не обязательно ограничены беспроводными приложениями или настройками. Методы могут быть применены к видео кодированию при поддержке любых из различных мультимедийных приложений, таких как беспроводное телевизионное вещание, передачи кабельного телевидения, передачи спутникового телевидения, передачи потокового видео, например, через Интернет, кодирование цифрового видео для хранения на носителе хранения данных, декодирование цифрового видео, сохраненного на носителе хранения данных, или других приложений. В некоторых примерах, система 10 может быть сконфигурирована для поддержки однонаправленной или двунаправленной передачи видео для поддержки приложений, таких как потоковое видео, видео воспроизведение, видео вещание и/или видео телефония.

[0045] Кроме того, в примере на фиг. 1, система 10 видео кодирования включает в себя устройство 34 генерации файла. Устройство 34 генерации файла может принимать кодированные видеоданные, сгенерированные устройством-источником 12. Устройство 34 генерации файла может генерировать файл, который включает в себя кодированные видеоданные. Устройство-получатель 14 может принимать файл, сгенерированный устройством 34 генерации файла. В различных примерах, устройство 34 генерации файла может включать в себя различные типы вычислительных устройств. Например, устройство 34 генерации файла может содержать медиа-информированный сетевой элемент (MANE), серверное вычислительное устройство, персональное вычислительное устройство, специализированное вычислительное устройство, коммерческое вычислительное устройство или любой другой тип вычислительного устройства. В некоторых примерах, устройство 34 генерации файла является частью сети доставки контента. Устройство 34 генерации файла может принимать кодированные видеоданные от устройства-источника 12 через канал, такой как линия связи 16. Кроме того, устройство-получатель 14 может принимать файл от устройства 34 генерации файла через канал, такой как линия связи 16. Устройство 34 генерации файла может рассматриваться как видео устройство.

[0046] В других примерах, устройство-источник 12 или другое вычислительное устройство может генерировать файл, который включает в себя кодированные видеоданные. Однако для простоты объяснения, настоящее раскрытие описывает устройство 34 генерации файла как генерирующее файл. Тем не менее, должно быть понятно, что такие описания применимы к вычислительным устройствам в общем.

[0047] Видео кодер 20 и видео декодер 30 могут работать в соответствии со стандартом сжатия видео, таким как стандарт Высокоэффективного видео кодирования (HEVC) или его расширение. Стандарт HEVC может также упоминаться как ISO/IEC 23008-2. Недавно структура HEVC была финализирована Объединенной группой по сотрудничеству в области видео кодирования (JCT-VC) Группы экспертов по видео кодированию (VCEG) ITU-T и Группой экспертов по движущимся изображениям (MPEG) ISO/IEC. Последняя проектная спецификация HEVC, упоминаемая далее как HEVC WD, доступна из http://phenix.int-evry.fr/jct/doc_end_user/documents/14_Vienna/wg11/JCTVC-N1003-v1.zip. Многовидовое расширение HEVC, а именно, MV-HEVC, также разрабатывается JCT-3V. Последний рабочий проект (WD) MV-HEVC, озаглавленный ʺMV-HEVC Draft Text 5ʺ и упоминаемый далее как MV-HEVC WD5, доступен из http://phenix.it-sudparis.eu/jct2/doc_end_user/documents/5_Vienna/wg11/JCT3V-E1004-v6.zip. Масштабируемое расширение HEVC, называемое SHVC, также разрабатывается JCT-VC. Последний рабочий проект (WD) SHVC, озаглавленный ʺHigh efficiency video coding (HEVC) scalable extension draft 3ʺ и упоминаемый далее как SHVC WD3, доступен из http://phenix.it-sudparis.eu/jct/doc_end_user/documents/14_Vienna/wg11/JCTVC-N1008-v3.zip. Последний рабочий проект (WD) расширения диапазона HEVC доступен из http://phenix.int-evry.fr/jct/doc_end_user/documents/14_Vienna/wg11/JCTVC-N1005-v3.zip. Последний рабочий проект (WD) 3D-расширения HEVC, а именно, 3D-HEVC, озаглавленный ʺ3D-HEVC Draft Text 1ʺ, доступен из http://phenix.int-evry.fr/jct2/doc_end_user/documents/5_Vienna/wg11/JCT3V-E1001-v3.zip. Видео кодер 20 и видео декодер 30 могут работать в соответствии с одним или более из этих стандартов.

[0048] Альтернативно, видео кодер 20 и видео декодер 30 могут работать в соответствии с другими проприетарными или промышленными стандартами, такими как стандарт ITU-T H.264, альтернативно упоминаемый как MPEG 4, часть 10, Расширенное видео кодирование (AVC) или расширения этих стандартов. Методы настоящего раскрытия, однако, не ограничены каким-либо конкретным стандартом кодирования. Другие примеры стандартов сжатия видео включают в себя ITU-T H.261, ISO/IEC MPEG-1 Visual, ITU-T H.262 или ISO/IEC MPEG-2 Visual, ITU-T H.263, ISO/IEC MPEG-4 Visual и ITU-T H.264 (также известный как ISO/IEC MPEG-4 AVC), включая его расширения Масштабируемого видео кодирования (SVC) и Многовидового видео кодирования (MVC).

[0049] Хотя не показано на фиг. 1, в некоторых аспектах, видео кодер 20 и видео декодер 30 могут быть интегрированы, каждый, в аудио кодер и декодер и могут включать в себя соответствующие блоки мультиплексирования-демультиплексирования (MUX-DEMUX) или другие аппаратные средства и программное обеспечение, чтобы обрабатывать кодирование как аудио, так и видео в общем потоке данных или отдельных потоках данных. Если применимо, в некоторых примерах, блоки MUX-DEMUX могут соответствовать протоколу мультиплексора ITU H.223 или другим протоколам, таким как протокол пользовательских дейтаграмм (UDP).

[0050] JCT-VC работает над развитием стандарта HEVC. Усилия по стандартизации HEVC основаны на развитой модели устройства видео кодирования, упоминаемой как тестовая модель HEVC (HM). HM предполагает различные дополнительные функциональные возможности устройств видео кодирования относительно существующих устройств в соответствии, например, с ITU-T H.264/AVC. Например, в то время как H.264/AVC обеспечивает девять режимов кодирования с интра-предсказанием, HM может обеспечивать тридцать три режима кодирования с интра-предсказанием.

[0051] В общем, рабочая модель HM описывает, что видео кадр или картинка может быть разделена на последовательность блоков дерева или наибольших единиц кодирования (LCU), которые включают в себя выборки яркости и цветности. Блоки дерева могут также упоминаться как единицы дерева кодирования (CTU). Блок дерева имеет сходное назначение, как и у макроблока H.264/AVC. Вырезка включает в себя ряд последовательных блоков дерева в порядке кодирования. Видео кадр или картинка могут быть разделены на одну или более вырезок. Каждый блок дерева может быть разбит на единицы кодирования (CU) в соответствии с квадродеревом. Например, блок дерева, такой как корневой узел квадродерева, может быть разбит на четыре дочерних узла, и каждый дочерний узел может, в свою очередь, быть родительским узлом и может быть разбит на другие четыре дочерних узла. В итоге, неразбитый дочерний узел, в качестве листового узла квадродерева, содержит узел кодирования, т.е. кодированный видео блок. Синтаксические данные, ассоциированные с кодированным битовым потоком, могут определять максимальное число раз разбиения блока дерева и могут также определять минимальный размер узлов кодирования.

[0052] CU включает в себя узел кодирования и единицы предсказания (PU) и единицы преобразования (TU), ассоциированные с узлом кодирования. Размер CU соответствует размеру узла кодирования и должен быть квадратной формы. Размер CU может находиться в пределах от 8×8 пикселов до размера блока дерева максимум 64x64 пиксела или больше. Каждая CU может содержать одну или более PU и одну или более TU. Синтаксические данные, ассоциированные с CU, могут описывать, например, разделение CU на одну или более PU. Режимы разделения могут различаться в соответствии с тем, кодирована ли CU в режиме пропуска или в прямом режиме, кодирована в режиме интра-предсказания или кодирована в режиме интер-пре