Группирование кадров изображения на видеокодировании
Иллюстрации
Показать всеИзобретение относится к группированию мультимедийных файлов и может использоваться при потоковой передаче мультимедийных данных. Технический результат - уменьшение недостатков, обусловленных проблемами выбора эталонного изображения, оповещения о значимости P-кадров, регулировки масштабируемости, вставке видеопоследовательности в середину другой видеопоследовательности, достигается тем, что кодируют видеокадры с целью формирования масштабируемой сжатой видеопоследовательности, содержащей видеокадры, закодированные согласно первому и второму форматам кадров. Видеокадры первого формата кадров являются независимыми видеокадрами, а видеокадры второго формата кадров прогнозируются на основе одного из множества других видеокадров. Видеопоследовательность имеет первую подпоследовательность, определенную в ней, причем часть первой подпоследовательности формируется кодированием видеокадров первого формата кадров; а также вторую подпоследовательность, часть которой формируется кодированием видеокадров второго формата кадров, и один видеокадр второй подпоследовательности прогнозируется на основе одного из видеокадров первой подпоследовательности. Данные идентификаторов кадров второй подпоследовательности определяются в видеопоследовательности. 8 н. и 16 з.п. ф-лы, 14 ил.
Реферат
Область техники, к которой относится изобретение
Настоящее изобретение относится к группированию мультимедийных файлов, в частности видеофайлов и, особенно, в связи с использованием потоковой передачи.
Предшествующий уровень техники
Термин «потоковая передача» относится к одновременной отправке и воспроизведению данных, обычно мультимедийных данных, таких как аудио- или видеофайлы, при которой получатель может начать воспроизведение данных уже до того, как были приняты все передаваемые данные. Системы потоковой передачи мультимедийных данных содержат сервер потоковой передачи и терминальные устройства, которые получатели используют для установления соединения для передачи данных, обычно через телекоммуникационную сеть, с сервером потоковой передачи. Из сервера потоковой передачи получатели извлекают либо сохраненные данные, либо мультимедийные данные реального масштаба времени, и, наиболее предпочтительно, воспроизведение мультимедийных данных может быть начато почти в режиме реального времени с передачей данных посредством прикладной программы обработки потоковой передачи, включенной в терминал.
С точки зрения сервера потоковой передачи потоковая передача может осуществляться либо в виде обычной потоковой передачи, либо в виде последовательной загрузки в терминал. При обычной потоковой передаче управление передачей мультимедийных данных и/или содержания данных осуществляется либо таким образом, что скорость передачи в битах по существу соответствует скорости воспроизведения терминального устройства, либо, если телекоммуникационная сеть, используемая в передаче, является узким местом в передаче данных, то таким образом, что скорость передачи в битах по существу соответствует ширине полосы пропускания, доступной в телекоммуникационной сети. При последовательной загрузке передача мультимедийных данных и/или содержания данных вовсе не обязательно должна смешиваться, однако обычно мультимедийные файлы передаются получателю с использованием управления потоком данных посредством протокола передачи данных. Затем терминалы принимают, сохраняют и воспроизводят точную копию данных, переданных из сервера, причем указанная копия может быть позднее вновь воспроизведена на терминале без необходимости снова начинать потоковую передачу через телекоммуникационную сеть. Однако мультимедийные файлы, сохраняемые в терминале, обычно бывают очень большими, и их перенос в терминал отнимает много времени, а также для них может потребоваться значительный объем памяти, из-за чего часто предпочтительна обычная потоковая передача.
Видеофайлы в мультимедийных файлах содержат большое число неподвижных кадров, которые, чтобы создать впечатление движущегося изображения, отображаются в быстрой последовательности (обычно от 15 до 30 кадров в секунду). Кадры изображения обычно содержат несколько стационарных фоновых объектов, определяемых информацией изображения, которая по существу остается неизменной, и несколько движущихся объектов, определяемых информацией изображения, которая изменяется в некоторой степени. Информация, состоящая из последовательно отображаемых кадров изображения, обычно во многом подобна, то есть последовательные кадры изображения содержат большую избыточность. Избыточность, возникающая в видеофайлах, может быть разделена на пространственную, временную и спектральную избыточность. Пространственная избыточность относится к взаимной корреляции смежных пикселей изображения, временная избыточность относится изменениям, имеющим место в конкретных объектах изображения в последовательных кадрах, и спектральная избыточность относится к корреляции различных цветовых составляющих в пределах кадра изображения.
Чтобы уменьшить объем данных в видеофайлах, данные изображения могут быть сжаты в меньшую форму путем снижения объема избыточной информации в кадрах изображения. Кроме того, при кодировании большинство современных видеокодеров понижает качество изображения в некоторых частях кадра изображения, которые являются менее важными в видеоинформации. Далее, многие способы видеокодирования позволяют снижать избыточность битового потока, закодированного из данных изображения, посредством эффективного, свободного от потерь кодирования параметров сжатия, известного как VLC (кодирование с переменной длиной).
Кроме того, многие способы видеокодирования используют вышеописанную временную избыточность последовательных кадров изображения. В указанном случае используется способ, известный как временное прогнозирование с компенсацией движения, то есть содержание некоторых (обычно большинства) кадров изображения в видеопоследовательности прогнозируется на основе других кадров в последовательности путем отслеживания изменений в конкретных объектах или областях в последовательных кадрах изображения. Видеопоследовательность всегда содержит несколько сжатых кадров изображения, информация изображения которых не была определена с использованием временного прогнозирования с компенсацией движения. Такие кадры называются интракадрами, или I-кадрами. Соответственно, кадры изображения видеопоследовательности с компенсацией движения, прогнозируемые на основе предыдущих кадров изображения, называются интер-кадрами, или Р-кадрами (прогнозированные). Информация изображения Р-кадров определяется с использованием одного I-кадра и, возможно, одного или нескольких ранее закодированных Р-кадров. Если кадр теряется, то кадры, зависящие от него, далее не могут быть правильно декодированы.
I-кадр обычно инициирует видеопоследовательность, задаваемую как группа изображений (GOP), Р-кадры которой могут быть определены только на основе I-кадра и предыдущих Р-кадров рассматриваемой GOP. Следующий I-кадр начинает новую группу изображений GOP, причем информация изображения, содержащаяся в нем, не может быть определена на основе кадров предыдущей GOP. Другими словами, группы изображений не перекрываются во времени, и каждая группа изображений может быть декодирована отдельно. Кроме того, многие способы видеосжатия применяют двунаправленно прогнозируемые В-кадры, которые помещаются между двумя опорными кадрами (I- и Р-кадрами, или двумя Р-кадрами) в группе изображений GOP, причем информация изображения В-кадра прогнозируется на основе обоих кадров - предшествующего опорного кадра и кадра, следующего за В-кадром. Следовательно, В-кадры обеспечивают информацию изображения более высокого качества, чем Р-кадры, но обычно они не используются в качестве опорных кадров, и, следовательно, их удаление из видеопоследовательности не ухудшает качество последующих изображений. Однако ничто также не препятствует использованию В-кадров в качестве опорных кадров, только в таком случае они не могут быть удалены из видеопоследовательности без ухудшения качества кадров, зависящих от них.
Каждый видеокадр может быть разделен на так называемые макроблоки, которые содержат цветовые составляющие (как, например, Y (составляющая яркости), U, V (цветоразностные составляющие) всех пикселей прямоугольной области изображения. Более конкретно, макроблоки состоят, по меньшей мере, из одного блока, приходящегося на цветовую составляющую, причем каждый блок содержит цветовые значения (как, например, Y, U или V) одного уровня цвета в соответствующей области изображения. Пространственное разрешение блоков может отличаться от такового для макроблоков, например, U- и V-составляющие могут отображаться с использованием только половины разрешения Y-составляющей. Макроблоки могут быть далее сгруппированы в срезы, причем это те группы макроблоков, которые обычно выбираются в порядке сканирования изображения. В способах видеокодирования временное прогнозирование обычно выполняется в отношении конкретных блоков или макроблоков, а не в отношении конкретных кадров изображения.
Чтобы обеспечить возможность гибкой потоковой передачи видеофайлов, многие системы видеокодирования применяют масштабируемое кодирование, в котором некоторые элементы или группы элементов видеопоследовательности могут быть удалены без воздействия на воссоздание других частей видеопоследовательности. Масштабируемость обычно реализуется посредством группирования кадров изображения в несколько иерархических слоев. Кадры изображения, закодированные в кадры изображения базового слоя, по существу содержат только те, которые являются обязательными для декодирования видеоинформации на приемном устройстве. Таким образом, базовый слой каждой группы изображений GOP содержит один I-кадр и необходимое число Р-кадров. Ниже базового слоя могут быть определены один или несколько слоев улучшения, причем каждый из таких слоев улучшает качество видеокодирования по сравнению с верхним слоем. Таким образом, слои улучшения содержат Р- или B-кадры, прогнозированные на основе компенсации движения из одного или нескольких изображений верхнего слоя. Кадры обычно нумеруются в соответствии с рядом членов арифметической прогрессии.
При потоковой передаче скорость передачи в битах должна допускать возможность управления либо на основе используемой полосы пропускания, либо максимального значения скорости декодирования или скорости передачи в битах, соответствующего получателю. Управление скоростью передачи в битах можно осуществлять либо на сервере потоковой передачи, либо в некотором элементе телекоммуникационной сети. Простейшая методика, с помощью которой сервер потоковой передачи может управлять скоростью передачи в битах, заключается в том, чтобы отбрасывать из передачи В-кадры, имеющие большое информационное содержание. Далее, сервер потоковой передачи может определять количество слоев масштабируемости, которые должны передаваться в видеопотоке, и, таким образом, количество слоев масштабируемости может изменяться всегда, когда начинается новая группа изображений GOP. Также можно использовать различные способы кодирования видеопоследовательности. Соответственно, из битового потока в элементе телекоммуникационной сети могут быть удалены В-кадры, а также другие Р-кадры слоев улучшения.
Вышеупомянутая схема имеет несколько недостатков. Многие способы кодирования, как, например, кодирование по стандарту Н.263 ITU/T (Международного союза по телекоммуникациям. Комитет по стандартизации телекоммуникаций), знакомы с процедурой, называемой выбор эталонного изображения. В выборе эталонного изображения, по меньшей мере, часть Р-изображения прогнозируется на основе, по меньшей мере, одного изображения, отличающегося от того, которое непосредственно предшествовало Р-изображению во временной области. Выбранное эталонное изображение передается в закодированном битовом потоке или в полях заголовка битового потока способом, специфическим для конкретного изображения, сегмента изображения (например, среза или группы макроблоков), макроблока или блока. Выбор эталонного изображения может быть обобщен так, что прогнозирование может быть также выполнено на основе изображений, следующих во времени за изображением, которое должно кодироваться. Далее, выбор эталонного изображения может быть обобщен так, чтобы охватить все типы прогнозируемых во времени кадров, включая В-кадры. Поскольку также можно выбрать, по меньшей мере, одно изображение, предшествующее I-изображению, которое начинает группу изображений GOP в качестве эталонного изображения, то группа изображений, использующая выбор эталонного изображения, не обязательно может декодироваться независимо. Кроме того, регулировка масштабируемости или способа кодирования в сервере потоковой передачи или в элементе сети становится затруднительной, поскольку видеопоследовательность должна быть декодирована, проанализирована и буферизована в течение длительного периода времени, чтобы позволить обнаружить какие-либо зависимости между различными группами изображений.
Другая проблема в способах кодирования предшествующего уровня техники состоит в том, что не существует какого-либо пригодного способа оповещения о различиях в значимости между интеркадрами. Например, когда должно быть последовательно спрогнозировано множество Р-кадров, первые Р-кадры обычно являются наиболее значимыми для воссоздания, поскольку большее число кадров изображения зависит от первого Р-кадра, чем от последующих Р-кадров. Однако известные способы кодирования не в состоянии обеспечить простой способ для оповещения о таких различиях в значимости.
Еще одна проблема относится к вставке видеопоследовательности в середину другой видеопоследовательности, что обычно приводило к разрыву в нумерации изображения. Нумерация изображений обычно используется для обнаружения потери кадров изображения. Однако, если отдельная видеопоследовательность, например коммерческая, вставляется в видеопоследовательность, то упомянутая отдельная видеопоследовательность обычно обеспечивается своей нумерацией изображения, которая не соответствует возрастающей нумерации изображения первоначальной видеопоследовательности. Таким образом, приемный терминал интерпретирует отклоняющуюся нумерацию изображения как сигнал потерянных кадров изображения и начинает ненужные действия, чтобы восстановить кадры изображения, которые считаются потерянными, или запросить их повторную передачу. С подобной проблемой сталкиваются при масштабировании видеопоследовательности: например, если удаляется много последовательных кадров, то приемный терминал может неоправданно интерпретировать указанные удаления как ошибки протокола.
Сущность изобретения
Таким образом, задача настоящего изобретения заключается в том, чтобы обеспечить способ и устройство, осуществляющее способ, которые позволяют уменьшить недостатки, обусловленные вышеупомянутыми проблемами. Задачи настоящего изобретения решаются посредством способа, видеокодера, видеодекодера, элемента системы потоковой передачи и компьютерных программ, которые характеризуются признаками, приведенными в независимых пунктах формулы изобретения.
Предпочтительные варианты воплощения настоящего изобретения раскрываются в зависимых пунктах.
Изобретение основано на идее кодирования масштабируемой сжатой видеопоследовательности, содержащей видеокадры, закодированные на основе, по меньшей мере, первого и второго формата кадров, причем видеокадры, удовлетворяющие первому формату кадров, не зависят от других видеокадров, то есть они обычно являются I-кадрами, а видеокадры, соответствующие второму формату кадров, прогнозируются на основе, по меньшей мере, из одного из других видеокадров, например, Р-кадров. Видеопоследовательность содержит первую подпоследовательность, сформированную в ней, причем, по меньшей мере, часть упомянутой подпоследовательности формируется кодированием видеокадров (I-кадров), по меньшей мере, первого формата кадров (I-кадры), и, по меньшей мере, вторую подпоследовательность, по меньшей мере часть которой формируется кодированием видеокадров, по меньшей мере, второго формата кадров (например, Р-кадры), причем, по меньшей мере, один видеокадр второй подпоследовательности прогнозируется на основе, по меньшей мере, одного видеокадра первой подпоследовательности. Кроме того, идентификационные данные видеокадров, содержащихся в упомянутой, по меньшей мере, второй подпоследовательности, определяются в рассматриваемой видеопоследовательности.
Следовательно, существенным аспектом настоящего изобретения является определение подпоследовательностей, от которых зависит каждая подпоследовательность, т.е. подпоследовательность будет содержать информацию обо всех подпоследовательностях, которые непосредственно использовались для прогнозирования кадров изображения, содержащихся в рассматриваемой подпоследовательности. Эта информация передается в битовом потоке видеопоследовательности, предпочтительно отдельно от информации фактического изображения, за счет чего данные изображения, содержащиеся в видеопоследовательности, могут быть масштабированы предпочтительным образом, поскольку допускающие независимое декодирование участки видеопоследовательности могут быть легко определены, а также упомянутые участки могут быть удалены без воздействия на декодирование оставшихся данных изображения.
Согласно предпочтительному варианту воплощения изобретения для видеопоследовательностей формируется иерархия масштабируемого кодирования, согласно которой первый слой масштабируемости видеопоследовательности кодируется таким образом, что он содержит, по меньшей мере, видеокадры первого формата кадров, т.е. I-кадры, а более низкие слои масштабируемости видеопоследовательности кодируются таким образом, что они содержат, по меньшей мере, видеокадры второго формата кадров, т.е. Р- и/или В-кадры, сгруппированные в подпоследовательности, в которых, по меньшей мере, один видеокадр прогнозируется либо на основе видеокадра верхнего слоя масштабируемости, либо на основе другого видеокадра той же подпоследовательности. Количество слоев масштабируемости не ограничено.
Согласно предпочтительному варианту воплощения изобретения для каждого видеокадра определяется уникальный идентификатор, объединяющий номер слоя масштабируемости, идентификатор подпоследовательности и номер изображения. Идентификатор может быть включен в поле заголовка видеопоследовательности или в поле заголовка в соответствии с протоколом передачи, используемым для передачи видеопоследовательности.
Преимущество процедуры, соответствующей изобретению, состоит в том, что обеспечивается гибкая иерархия кодирования, которая, с одной стороны, обеспечивает возможность масштабирования скорости передачи видеопоследовательности в битах, которая должна передаваться без требования декодирования видеопоследовательности, а с другой стороны, обеспечивается возможность независимого декодирования каждой подпоследовательности. Это позволяет серверу потоковой передачи, например, выгодным образом регулировать скорость передачи в битах без декодирования видеопоследовательности, без аналитического анализа и буферизации, поскольку сервер потоковой передачи способен выводить взаимозависимости различных подпоследовательностей непосредственно из идентификаторов и их взаимозависимостей. Далее, сервер потоковой передачи может, при необходимости, проводить специфическую для конкретной подпоследовательности регулировку масштабируемости или применяемого кодирования, поскольку взаимозависимости различных кадров известны. Еще одно преимущество состоит в том, что иерархия кодирования и нумерация изображений согласно изобретению позволяет легко вставлять отдельную видеопоследовательность в другую видеопоследовательность.
Перечень фигур чертежей
Изобретение поясняется ниже описанием конкретных вариантов его воплощения со ссылками на чертежи, на которых представлено следующее:
фиг.1 - общая система потоковой передачи мультимедийных данных, в которой может применяться иерархия масштабируемого кодирования, соответствующая изобретению,
фиг.2 - иерархия масштабируемого кодирования, соответствующая предпочтительному варианту воплощения изобретения,
фиг.3а и 3б - варианты воплощения изобретения для регулировки масштабируемости,
фиг.4а, 4б и 4в - варианты воплощения изобретения для регулировки нумерации изображения,
фиг.5а, 5б и 5в - варианты воплощения изобретения для использования В-кадров в иерархии масштабируемого кодирования,
фиг.6а, 6б и 6в - иерархии масштабируемого кодирования, соответствующие предпочтительным вариантам воплощения изобретения, совместно с выбором эталонного изображения,
фиг.7 - компоновка согласно предпочтительному варианту воплощения изобретения для кодирования монтажного перехода.
Подробное описание предпочтительных вариантов воплощения
Далее раскрывается система общего назначения, предназначенная для потоковой передачи мультимедийных данных, основополагающие принципы которой могут применяться в отношении любой телекоммуникационной системы. Хотя изобретение описано здесь с конкретной ссылкой на систему потоковой передачи, в которой мультимедийные данные передаются, наиболее предпочтительно, через телекоммуникационную сеть, применяющую протокол передачи данных с коммутацией пакетов, такую как сеть на основе Интернет протокола (IP сеть), изобретение может быть одинаково хорошо реализовано в сетях с коммутацией каналов, таких как стационарные телефонные сети PSTN/ISDN (коммутируемая телефонная сеть общего пользования/цифровая сеть с комплексными услугами) или в наземных сетях мобильной связи общего пользования (PLMN). Далее, изобретение может применяться при потоковой передаче мультимедийных файлов в форме как обычной потоковой передачи, так и последовательной загрузки или для реализации, например, видеовызовов.
Также следует отметить, что хотя изобретение описано здесь с конкретной ссылкой на системы потоковой передачи и изобретение также преимущественно может применяться к ним, оно не ограничено только системами потоковой передачи, но также может применяться к любой системе воспроизведения видеонезависимо то того, как загружается файл, который должен быть декодирован и откуда он загружается. Следовательно, изобретение может применяться, например, для проигрывания видеофайла, который должен загружаться с цифрового многофункционального диска (DVD) или с любого другого компьютерного носителя данных, например, в соответствии с изменяющейся производительностью обработки данных, доступной для видеопроигрывания. В частности, изобретение может применяться к различным типам видеокодирования с низкими скоростями передачи в битах, которые обычно используются в телекоммуникационных системах, на которые наложены ограничения полосы пропускания. Одним из примеров является система, определенная в стандарте Н.263 ITU-T, а также система, определяемая в стандарте H.26L (возможно, позже может стать Н.264). В связи с этим изобретение может применяться к мобильным станциям, например, и в этом случае видеопроигрывание может быть реализовано таким образом, чтобы регулировать как изменение пропускной способности передачи или качества канала, так и доступной в данный момент мощности процессора, когда мобильная станция используется также для выполнения приложений, отличных от видеопроигрывания.
Далее, следует отметить, что в целях ясности изобретение будет описано посредством описания кодирования кадра изображения и временного прогнозирования на уровне кадров изображения. Однако на практике кодирование и временное прогнозирование обычно имеют место на уровне блока или макроблока, как описано выше.
Со ссылкой на фиг.1 будет описана типичная система мультимедийной потоковой передачи, которая является предпочтительной системой для применения процедуры, соответствующей настоящему изобретению.
Система потоковой передачи мультимедийных данных обычно содержит один или несколько мультимедийных источников 100, таких как видеокамера и микрофон, либо файлы видеоизображений или компьютерной графики, хранящиеся на носителе данных. Необработанные данные, полученные из различных мультимедийных источников 100, объединяются в мультимедийный файл в кодере 102, который также может называться модулем редактирования. Необработанные данные, поступающие из одного или нескольких мультимедийных источников 100, сначала захватываются с помощью средства 104 захвата, входящего в кодер 102, причем указанное средство захвата обычно реализуется в виде различных интерфейсных карт, программного драйвера или прикладного программного обеспечения, управляющего функцией карты. Например, видеоданные могут захватываться с помощью платы видеозахвата и соответствующего ей программного обеспечения. Выходные данные средства 104 захвата обычно представляют собой либо несжатый, либо незначительно сжатый поток данных, например, несжатые видеокадры формата YUV 4:2:0 или формата JPEG движущегося изображения, когда подразумевается плата видеозахвата.
Редактор 106 связывает различные потоки мультимедийной информации вместе, чтобы синхронизировать видео- и аудиопотоки, которые должны воспроизводиться одновременно по желанию. Редактор 106 может также редактировать каждый поток мультимедийной информации, такой как видеопоток, например, путем деления пополам частоты смены кадров или путем снижения пространственного разрешения. Отдельные, хотя и синхронизированные, потоки мультимедийной информации сжимаются в устройстве 108 сжатия, в котором каждый поток мультимедийной информации сжимается отдельно с помощью устройства 108 сжатия, подходящего для потока мультимедийной информации. Например, видеокадры формата YUV 4:2:0 могут быть сжаты с использованием видеокодирования с низкой скоростью передачи в битах согласно рекомендации стандарта Н.263 или H.26L ITU-T. Отдельные синхронизированные и сжатые потоки мультимедийной информации обычно перемежаются в мультиплексоре 110, причем выходные данные, полученные из кодера 102, обычно представляют собой единый однородный битовый поток, который содержит данные множества потоков мультимедийной информации и который может называться мультимедийным файлом. Также следует отметить, что формирование мультимедийного файла не обязательно требует мультиплексирования множества потоков мультимедийной информации в один файл, но сервер потоковой передачи может перемежать потоки мультимедийной информации непосредственно перед их передачей.
Мультимедийные файлы передаются в сервер 112 потоковой передачи, который способен выполнять потоковую передачу либо как потоковую передачу в режиме реального времени, либо в форме последовательной загрузки. При последовательной разгрузке мультимедийные файлы сначала сохраняются в памяти сервера 112, откуда они могут быть извлечены для передачи, когда возникает потребность. При потоковой передаче в режиме реального времени редактор 102 передает непрерывный поток мультимедийной информации мультимедийных файлов в сервер 112 потоковой передачи, а сервер 112 направляет поток непосредственно клиенту 114. В качестве дополнительной опции потоковая передача в режиме реального времени также может выполняться таким образом, чтобы мультимедийные файлы сохранялись в запоминающем устройстве, которое доступно из сервера 112, откуда может происходить потоковая передача в режиме реального времени, и, когда возникает потребность, начинается передача непрерывного потока мультимедийной информации мультимедийных файлов. В таком случае редактор 102 не обязательно управляет потоковой передачей каким-либо средством. Сервер 112 потоковой передачи выполняет формирование трафика мультимедийных данных с учетом доступной полосы пропускания либо максимальной скорости декодирования или проигрывания, соответствующей клиенту 114, причем сервер потоковой передачи способен регулировать скорости передачи в битах потока мультимедийной информации, например, посредством отбрасывания В-кадров из передачи или посредством регулировки количества слоев масштабируемости. Далее, сервер 112 потоковой передачи может модифицировать поля заголовка мультиплексированного потока мультимедийной информации, чтобы уменьшить их размер и инкапсулировать мультимедийные данные в пакеты данных, которые подходят для передачи в применяемой телекоммуникационной сети. Клиент 114 обычно может регулировать, по меньшей мере до некоторой степени, действие сервера 112, используя подходящий протокол управления. Клиент 114 способен управлять сервером 112, по меньшей мере, таким способом, чтобы для передачи клиенту можно было выбрать требуемый мультимедийный файл, в дополнение к чему клиент обычно способен останавливать или прерывать передачу мультимедийного файла.
Когда клиент 114 принимает мультимедийный файл, этот файл сначала подается в демультиплексор 116, который разделяет потоки мультимедийной информации, содержащиеся в мультимедийном файле. Затем отдельные сжатые потоки мультимедийной информации подаются в устройство 118 распаковки, в котором каждый отдельный поток мультимедийной информации распаковывается устройством распаковки, подходящим для каждого конкретного потока мультимедийной информации. Распакованные и воссозданные потоки мультимедийной информации подаются в модуль 120 проигрывания, где потоки мультимедийной информации воспроизводятся в соответствующем темпе согласно их данным синхронизации и подаются в средство 124 представления. Средство 124 фактического представления может содержать, например, дисплей компьютера или мобильной станции и громкоговорители. Клиент 114 также обычно имеет блок 122 управления, которым обычно конечный пользователь может управлять через интерфейс пользователя, и он обычно управляет как действием сервера через вышеописанный протокол управления, так и действием модуля 120 проигрывания на основе инструкций, подаваемых конечным пользователем.
Следует отметить, что перенос мультимедийных файлов от сервера 112 к клиенту 114 происходит через телекоммуникационную сеть, причем маршрут переноса содержит множество элементов телекоммуникационной сети. Следовательно, возможно, имеется какой-то сетевой элемент, который может выполнять формирование трафика мультимедийных данных в отношении доступной полосы пропускания либо максимальной скорости декодирования или проигрывания, соответствующей клиенту 114, по меньшей мере частично, тем же самым способом, что был описан выше в связи с сервером потоковой передачи.
Теперь будет описано масштабируемое кодирование в отношении предпочтительного варианта воплощения изобретения со ссылкой на фиг.2. Фиг.2 изображает часть сжатой видеопоследовательности, имеющей первый кадр 200, который является интракадром, или I-кадром, и, следовательно, независимо определяемым видеокадром, информация изображения которого определяется без использования временного прогнозирования с компенсацией движения. I-кадр 200 помещается на первом слое масштабируемости, который может быть назван интраслоем. Каждому слою масштабируемости присваивается уникальный идентификатор, например, номер слоя. Следовательно интраслою может быть присвоен, например, номер 0 или некоторый другой алфавитно-цифровой идентификатор, например буква или комбинация буквы и числа.
Соответственно, подпоследовательности, состоящие из групп из одного или нескольких видеокадров, определяются для каждого слоя масштабируемости, причем, по меньшей мере, одно из изображений в группе (обычно первое или последнее) прогнозируется во времени на основе, по меньшей мере, видеокадра другой подпоследовательности обычно либо более высокого, либо того же самого слоя масштабируемости, причем остальная часть видеокадров прогнозируется во времени либо только на основе видеокадров той же подпоследовательности, либо, возможно, также на основе одного или нескольких видеокадров упомянутой второй подпоследовательности. Подпоследовательность может быть декодирована независимо, безотносительно других подпоследовательностей, за исключением упомянутой второй подпоследовательности. Подпоследовательностям каждого слоя масштабируемости присваивается уникальный идентификатор, используя, например, последовательную нумерацию, начиная с числа 0, заданного для первой подпоследовательности слоя масштабируемости. Поскольку I-кадр 200 определяется независимо и также может быть декодирован независимо при приеме, безотносительно других кадров изображения, он также формирует в некотором смысле отдельную подпоследовательность.
Следовательно, существенный аспект настоящего изобретения заключается в том, чтобы определить каждую подпоследовательность в терминах тех подпоследовательностей, от которых зависит упомянутая подпоследовательность. Другими словами, подпоследовательность содержит информацию обо всех подпоследовательностях, которые непосредственно использовались для прогнозирования кадров изображения рассматриваемой подпоследовательности. Эта информация передается в битовом потоке видеопоследовательности, предпочтительно отдельно от информации фактического изображения, и следовательно, данные изображения видеопоследовательности предпочтительно можно регулировать, поскольку легко определить части видеопоследовательности, которые должны декодироваться независимо и могут быть удалены без воздействия на декодирование остальных данных изображения.
Затем, в пределах каждой подпоследовательности, видеокадрам подпоследовательности даются номера изображений, используя, например, последовательную нумерацию, которая начинается номером 0, заданным первому видеокадру подпоследовательности. Поскольку I-кадр 200 также образует отдельную подпоследовательность, его номером изображения является 0. На фиг.2, I-кадр 200 показывает тип (I), идентификатор подпоследовательности и номер изображения (0.0) кадра.
Фиг.2 далее изображает следующий I-кадр 202 интраслоя, причем этот кадр, таким образом также является независимо определенным видеокадром, который был определен без использования временного прогнозирования с компенсацией движения. Частота передачи I-кадров во времени зависит от многих факторов, касающихся видеокодирования, содержания информации изображения и полосы пропускания, которую нужно использовать, и, в зависимости от приложения или от прикладного окружения, I-кадры передаются в видеопоследовательности с интервалами, например, от 0,5 до 10 секунд. Поскольку I-кадр может быть независимо декодирован, он также образует отдельную подпоследовательность. Поскольку это вторая подпоследовательность в интраслое, последовательная нумерация идентификатора подпоследовательности I-кадра 202 составляет единицу. Далее, поскольку I-кадр 202 также образует отдельную подпоследовательность, в подпоследовательности есть только один видеокадр, и его номер изображения составляет 0. Следовательно, I-кадр 202 может быть обозначен идентификатором (I.1.0). Соответственно, идентификатор следующего кадра на интраслое составляет (I.2.0), и т.д. В результате, только независимо определенные I-кадры, в которых информация изображения не определяется с использованием временного прогнозирования с компенсацией движения, кодируются в первый слой масштабируемости, т.е. интраслой. Подпоследовательности также могут быть определены с использованием другого вида нумерации или других идентификаторов при условии, что подпоследовательности можно отличать друг от друга.
Следующий слой масштабируемости, который, например, имеет номер слоя 1 и который может упоминаться как базовый слой, содержит закодированные с компенсацией движения интер- или Р-кадры, обычно прогнозируемые только на основе предыдущих кадров изображения, то есть в данном случае на основе I-кадров верхнего интраслоя. Информация изображения первого Р-кадра 204 базового слоя, показанного на фиг.2, определяется с использованием I-кадра 200 интраслоя. Р-кадр 204 начинает первую подпоследовательность базового слоя и поэтому идентификатор подпоследовательности Р-кадра 204 составляет 0. Далее, поскольку Р-кадр 204 является первым кадром изображения первой подпоследовательности базового слоя, то номер изображения Р-кадра 204 равен 0. Таким образом, Р-кадр 204 может быть идентифицирован как (Р.0.0).
Последующий во времени Р-кадр 206 базового слоя прогнозируется на основе предыдущего Р-кадра 204. Таким образом, Р-кадры 204 и 206 принадлежат одной и той же подпоследовательности, вследствие чего Р-кадр 206 также получает идентификатор подпоследовательности 0. Поскольку Р-кадр 206 является вторым кадром изображения в подпоследовательности 0, то номер изображения Р-кадра 206 равен 1, и Р-кадр 206 может быть идентифицирован как (P.0.1).
Слой масштабируемости, следующий за базовым слоем и имеющий номер слоя 2, называется слоем улучшения 1. Этот слой содержит закодированные с компенсацией движения Р-кадры, прогнозируемые только на основе предыдущих кадров изображения, в данном случае либо на основе I-кадров интраслоя, либо на основе Р-кадров базового слоя. Фиг.2 показывает