Способ ресинхронизации для декодирования видеосигнала

Изобретение относится к способу ресинхронизации, который может быть использован в канале декодирования по стандарту MPEG-4. Техническим результатом является обеспечение возможности ресинхронизации сжатого сигнала видеоданных, принимаемого декодером, после обнаружения ошибки передачи в упомянутом сжатом сигнале видеоданных. Технический результат достигается тем, что для обеспечения надлежащего декодирования сжатого сигнала видеоданных, слово ресинхронизации (RW) отличается от известных слов кода переменной длины (VLC), а также стартового кода плоскости видеообъекта и содержит по меньшей мере 17 последовательных нулей, за которыми следует единица, для плоскости видеообъекта, кодированной с двунаправленным предсказанием. 4 н.п. ф-лы, 2 ил.

 

Настоящее изобретение относится к способу ресинхронизации сжатого сигнала видеоданных, принимаемого декодером.

Такой способ ресинхронизации может быть использован, например, в канале декодирования по стандарту MPEG-4 для ресинхронизации декодирования после обнаружения ошибки передачи в принимаемом сжатом сигнале видеоданных.

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

Способ ресинхронизации известен из стандарта MPEG-4 Visual, известного как версия 1 MPEG-4 Visual, ISO/IEK 14496-2 (ISO - международная организация по стандартизации (МОС); IEC - международная электротехническая комиссия (МЭК)).

В стандарте MPEG-4 используются видеообъекты, являющиеся объектами сцены, к которым пользователь может получить доступ и которыми он может манипулировать. Для того чтобы получить доступ к видеообъекту, необходимо иметь кодированное представление его формы. Копии видеообъектов в данный момент времени называются плоскостями видеообъекта (далее упоминаемые как ПВО). Слой видеообъекта представляет собой группу плоскостей видеообъекта, тип формы которых определяется целым числом, называемым форма_слоя_видеообъекта.

Плоскости видеообъекта с внутренним кодированием (далее упоминаемые как I-плоскость видеообъекта (В-ПВО, I-VOP)) кодируются без ссылки на другие изображения. Они обеспечивают точки доступа к кодированной последовательности, где может начинаться декодирование, но они кодируются только со средним сжатием. Плоскости видеообъекта, кодированные с предсказанием (далее упоминаемые как Р-плоскость видеообъекта (П-ПВО, P-VOP)), кодируются более эффективно, используя предсказание с компенсацией движения от предшествующих плоскостей видеообъекта с внутренним кодированием или кодированных с предсказанием, и в основном используются в качестве опорных для дальнейшего предсказания. Плоскости видеообъекта, кодированные с двунаправленным предсказанием (далее упоминаемые как В-плоскость видеообъекта (Д-ПВО, B-VOP)), обеспечивают наивысшую степень сжатия, но требуют предшествующих и последующих опорных плоскостей видеообъекта для компенсации движения. Векторы движения определяются по мере необходимости для каждой области из 16 отсчетов на 16 строк плоскости видеообъекта, далее упоминаемой как макроблок, или области из 8 отсчетов на 8 строк плоскости видеообъекта, далее упоминаемой как блок. Vop_fкод_вперед и vop_fкод_назад являются целыми числами, используемыми при декодировании вектора движения.

Способ ресинхронизации, описанный в стандарте MPEG-4, основывается на слове ресинхронизации, называемом как маркер ресинхронизации (маркер_ресинх), который вводится в сжатый сигнал видеоданных. Однобитовый флаг, называемый «запрет_маркера_ресинх», устанавливается в «1» для индикации того, что в кодированных плоскостях видеообъекта нет маркер_ресинх, и устанавливается в «0» для индикации того, что присутствует такой маркер. Словом ресинхронизации, определенным стандартом MPEG-4, является двоичная последовательность по меньшей мере 16 нулей, за которыми следует единица: «0 0000 0000 0000 0001». Для I-плоскости видеообъекта или для плоскости видеообъекта, где форма_слоя_видеообъекта имеет значение «двоичный_только», маркер_ресинх представляет собой 16 нулей, за которыми следует единица. Длина этого маркер_ресинх зависит от величины vop_fкод_вперед для Р-плоскости видеообъекта и от большего значения одного из чисел: vop_fкод_вперед и vop_fкод_назад для В-плоскости видеообъекта. Зависимость между длиной маркер_ресинх и соответствующим f-кодом определяется как 16+f-код. Маркер_ресинх равен (15+f-код) нулям, за которыми следует единица. Он присутствует только тогда, когда флаг запрет_маркера_ресинх установлен в «0». Маркер_ресинх располагается только непосредственно перед макроблоком и выровнен по границе байта.

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

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

Слово ресинхронизации должно отличаться от всех возможных битовых последовательностей, которые могут содержаться в сжатом сигнале видеоданных, так как нет априорных знаний, где может быть слово ресинхронизации. Например, в стандарте MPEG-4 слово ресинхронизации должно отличаться от всех возможных слов кода переменной длины (далее упоминаемых как слова КПД, VLC), а также стартового кода плоскости видеообъекта, который отмечает начало плоскости видеообъекта.

Однако стандарт MPEG-4 в его настоящем состоянии допускает некоторые комбинации слов КПД, которые могут привести к существованию непредвиденных слов ресинхронизации в сжатом сигнале видеоданных и, как результат, к ложной ресинхронизации. Одной комбинацией битов, которая получается в результате декодирования макроблока, принадлежащего к В-плоскости видеообъекта, и которая может привести к такой нежелательной ресинхронизации, является следующая:

режим макроблока для В-блоков (MODB): 00

тип макроблока (MB_TYPE): 0001

шаблон кодированного блока

для В-блоков (СВРВ): 1 000 00

информация квантователя (DBQUANT): 0

слово КПД (VLC) вектора движения: 0000 0000 0011. 1.

Этот пример показывает конкретную комбинацию слов КПД, которая содержит группу из 16 последовательных нулей, за которыми следует единица: 5 нулей, соответствующих слову КПД СВРВ, 1 нуль, соответствующий слову КПД DBQUANT, и 10 нулей, соответствующих слову КПД вектора движения -15,5. В этом случае существует неоднозначность между этой конкретной комбинацией слов КПД и словом ресинхронизации, которое также состоит из 16 последовательных нулей (15+f-код, причем f-код в этом случае равен 1), за которыми следует единица. Конкретная комбинация слов КПД может эмулировать ресинхронизацию, которая не ожидается. В этом случае видеодекодер стандарта MPEG-4 не может правильно декодировать сжатый сигнал видеоданных.

Способ ресинхронизации в соответствии с настоящим изобретением отличается тем, что содержит этап обнаружения слова ресинхронизации, которое содержит по меньшей мере 17 последовательных нулей, за которыми следует единица, для плоскости видеообъекта, кодированной с двунаправленным предсказанием.

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

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

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

Эти и другие аспекты изобретения очевидны и объяснены с ссылкой на описанные ниже примеры выполнения.

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

Настоящее изобретение ниже описывается, в качестве примера, с ссылкой на прилагаемые чертежи, на которых:

на фиг.1 представлен видеопакет, содержащий слово ресинхронизации в соответствии с изобретением; и

на фиг.2 представлена блок-схема, изображающая способ ресинхронизации в соответствии с изобретением.

ПОДРОБНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ

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

Этот способ ресинхронизации описан в контексте сигнала видеоданных стандарта MPEG-4, но он также применим к сжатым сигналам видеоданных других типов, которые манипулируют видеообъектами.

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

На фиг.1 представлен типичный видеопакет. Этот видеопакет содержит:

- слово ресинхронизации (СР, RW), используемое для маркировки начала нового видеопакета;

- информацию заголовка, такую как адрес макроблока (NUM) первого макроблока, содержащегося в пакете, параметр квантования (Q) и Код Расширения Заголовка (КРЗ, НЕС), причем информация заголовка необходима для перезапуска процесса декодирования;

- данные макроблока (MBD).

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

Упомянутая последовательность содержит:

- слово КПД режима макроблока для В-блоков (MODB). Это слово КПД MODB присутствует только в кодированных макроблоках В-плоскостей видеообъекта и равно:

- 1, если для макроблока не присутствуют ни данные СВРВ, ни данные МВ_TYPE,

- 01, если для макроблока присутствуют только данные MB_TYPE,

- 00, если для макроблока присутствуют данные СВРВ и МВ_TYPE;

- слово КПД типа макроблока (MB_TYPE). Это слово КПД MB_TYPE присутствует только в кодированных макроблоках В-плоскостей видеообъекта, для которых включен один вектор движения. Коды для МВ_TYPE равны 1, 01, 001 или 0001 в зависимости от используемого типа вектора движения;

- слово КПД шаблона кодированного блока для В-блоков (СВРВ). Это слово СВРВ представляет собой 3-6-битовый код, причем каждый бит в коде представляет кодированное/некодированное состояние блока. Для каждого непрозрачного блока с коэффициентами соответствующий бит в коде устанавливается в «1»;

- слово КПД информации квантователя (DBQUANT). Это слово DBQUANT определяет изменение в квантователе для В-плоскостей видеообъекта. Кодами для DBQUANT являются 10, 0 или 11;

- слово КПД вектора движения. Это слово КПД представляет собой 1-13-битовый код и содержит до 10 последовательных нулей, как описано в нижеследующих примерах:

КодыРазность векторов
0000 0000 0010 1-16
0000 0000 0011 1-15,5
0000 0000 0011 015,5
0000 0000 0010 016

Определение вышеописанных слов КПД приводит к комбинации битов, которая содержит как максимум группу из 17 последовательных нулей, за которыми следует единица: 6 нулей, соответствующих слову КПД СВРВ, 1 нуля, соответствующего слову КПД DBQUANT, и 10 нулей, соответствующих слову КПД вектора движения. Упомянутая комбинация битов может быть неоднозначной в случае слова ресинхронизации, имеющего (15+f-код) нулей, если f-код равен 1 или 2. Это возможный случай, так как значение f-кода, соответствующее vop_fкод_вперед или vop_fкод_назад, является 3-битовым целым числом, принимающим значения от 1 до 7, причем значение, равное нулю, запрещено, и упомянутые значения зависят от диапазона величин вектора движения.

В результате этого длина слова ресинхронизации должна быть увеличена и должна содержать по меньшей мере 17 последовательных нулей. Слово ресинхронизации маркер_ресинх в соответствии с изобретением представляет собой двоичную последовательность по меньшей мере 16 нулей, за которыми следует единица: «0 0000 0000 0000 0001». Для I-плоскости видеообъекта (В-ПВО) или плоскости видеообъекта, где форма слоя видеообъекта имеет значение «двоичный_только», маркер_ресинх равен 16 нулям, за которыми следует единица. Длина этого маркер_ресинх зависит от значения vop_fкод_вперед для Р-плоскости видеообъекта и от большего значения одного из чисел: vop_fкод_вперед и vop_fкод_назад для В-плоскости видеообъекта. В предпочтительном варианте выполнения зависимость между длиной маркер_ресинх и соответствующим f-кодом определяется как 16+f-код для Р-плоскости видеообъекта и как 16+n+f-код для B-VOP. Маркер_ресинх равен (15+f-код) нулям, за которыми следует единица, для P-VOP, и (15+n+f-код) нулям, за которыми следует единица, для B-VOP, где n - целое число, строго большее нуля. Он присутствует только тогда, когда флаг запрет_маркера_ресинх установлен в «0». Маркер_ресинх располагается только перед макроблоком и выровнен по границе байта.

На фиг.2 представлена блок-схема, изображающая способ ресинхронизации в соответствии с изобретением. Во время этапа декодирования (DEC) принимается сжатый сигнал видеоданных (CS) и выдается выходной сигнал (OS). Выходной сигнал анализируется во время этапа анализа ошибки (ERR). Если обнаруживается ошибка в сжатом сигнале видеоданных, такая как, например, недопустимое слово КПД или семантическая ошибка, на этапе обнаружения (DET) производится поиск слова ресинхронизации в сжатом сигнале видеоданных. Упомянутое слово ресинхронизации зависит от типа плоскости видеообъекта и содержит:

- 16 нулей, за которыми следует единица, для I-плоскости видеообъекта;

- (15+f-код) нулей, за которыми следует единица, для Р-плоскости видеообъекта;

- (15+n+f-код) нулей, за которыми следует единица, для В-плоскости видеообъекта, где

n - целое число. строго большее нуля.

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

В первом варианте осуществления изобретения слово КПД СВРВ, включающее 6 последовательных нулей, не является возможной комбинацией, так как это слово КПД, которое соответствовало бы 6 некодированным блокам, включало бы тогда слово КПД MODB, равное 1 или 01 (нет данных СВРВ). В этом случае наиболее неблагоприятным словом КПД СВРВ является «100000» и величина n, равная 1, соответствующая слову ресинхронизации с (16+f-код) нулями, за которыми следует единица, достаточна, чтобы исключить любую неоднозначность между упомянутым словом ресинхронизации и известными словами КПД.

Во втором варианте осуществления изобретения предусматривается слово КПД MODB, равное 00, связанное со словом КПД СВРВ, включающим 6 последовательных нулей, так как эта комбинация слов КПД разрешена по стандарту MPEG-4. Следовательно, величина n равна 2, соответствующая слову ресинхронизации с (17+f-код) нулями, за которыми следует единица, которая предотвращает любую неоднозначность в случае комбинации слов КПД, включающих группу из 17 последовательных нулей, за которыми следует единица: 6 нулей, соответствующих слову КПД СВРВ, 1 нуль, соответствующий слову КПД DBQUANT, и 10 нулей, соответствующих слову КПД вектора движения.

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

Видеодекодер предназначен для приема сжатого сигнала видеоданных и содержит детектор для обнаружения слова ресинхронизации в сжатом входном сигнале видеоданных и синхронизатор для ресинхронизации декодирования сжатого входного сигнала видеоданных, начиная с обнаружения слова ресинхронизации.

Настоящее изобретение также относится к способу введения в сжатый сигнал видеоданных слова ресинхронизации, содержащего по меньшей мере 17 последовательных нулей, например (15+n+f-код) нулей в предпочтительном варианте выполнения, за которыми следует единица, для видеоданных, соответствующих В-плоскости видеообъекта. Такой способ введения реализован в интегральной схеме, подлежащей встраиванию, например, в видеокодер.

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

Кроме того, в сигнале, обеспечиваемом таким видеокодером или принимаемом таким видеодекодером, может быть определено, что он содержит слово ресинхронизации, которое содержит по меньшей мере 17 последовательных нулей, например (15+n+f-код) нулей в предпочтительном варианте выполнения, за которыми следует единица, для видеоданных, соответствующих В-плоскости видеообъекта.

Очевидно, что использование слова «содержать» и его спряжения не исключают присутствие любых других этапов или элементов, кроме тех, которые определены в любом из пунктов формулы изобретения. Неопределенный артикль (в английском языке), предшествующий элементу или этапу, не исключает присутствие множества таких элементов или этапов.

1. Способ ресинхронизации сжатого сигнала видеоданных, принимаемого декодером, сжатый сигнал видеоданных содержит слово ресинхронизации, способ содержит:

этап обнаружения ошибки в сжатом сигнале видеоданных,

этап обнаружения слова ресинхронизации в сжатом сигнале видеоданных, если такая ошибка обнаружена,

этап обнаружения плоскости видеообъекта, кодированной с двунаправленным предсказанием, в сжатом сигнале видеоданных,

этап повторного декодирования сжатого сигнала видеоданных, начиная с обнаружения слова ресинхронизации,

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

2. Видеодекодер для приема сжатого сигнала видеоданных, содержащий

детектор для обнаружения ошибки в сжатом сигнале видеоданных,

детектор для обнаружения слова ресинхронизации в сжатом сигнале видеоданных, если такая ошибка обнаружена,

детектор для обнаружения плоскости видеообъекта, кодированной с двунаправленным предсказанием, в сжатом сигнале видеоданных,

синхронизатор для повторного декодирования сжатого сигнала видеоданных, начиная с обнаружения слова ресинхронизации,

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

3. Способ введения слова ресинхронизации в сжатый сигнал видеоданных, выдаваемый кодером, в соответствии с рекомендациями стандарта MPEG-4, отличающийся тем, что способ обеспечивает введение слова ресинхронизации, которое содержит по меньшей мере 17 последовательных нулей, за которыми следует единица, для видеоданных, соответствующих плоскости видеообъекта, кодированной с двунаправленным предсказанием.

4. Видеокодер для выдачи сжатого сигнала видеоданных в соответствии с рекомендациями стандарта MPEG-4, содержащий средство для введения слова ресинхронизации в сжатый сигнал видеоданных, отличающийся тем, что средство для введения приспособлено для введения слова ресинхронизации, которое содержит по меньшей мере 17 последовательных нулей, за которыми следует единица, для видеоданных, соответствующих плоскости видеообъекта, кодированной с двунаправленным предсказанием.



 

Похожие патенты:

Изобретение относится к кодированию и декодированию цифровых данных, разделенных на блоки цифр, в порядке значимости цифр. .

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

Изобретение относится к технике передачи изображений и может использоваться в мультимедийной связи

Изобретение относится к буферизации пакетов медиапотока при передаче от передающего устройства приемному устройству

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

Изобретение относится к передаче медиа-потока по предрасположенному к ошибкам каналу цифрового телевещания для переносных устройств (DVB-Н), в котором медиа-дейтаграммы маркированы согласно приоритету, упакованы в секции многопротокольной инкапсуляции, неравномерно защищены с использованием кодов прямого исправления ошибок, пакетированы в транспортный поток и переданы в канал с использованием пачек с временным разделением

Изобретение относится к системам мультимедийной передачи и, в частности, к способам и устройству для обеспечения быстрого получения услуги

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

Изобретение относится к способу передачи/приема сигнала и к устройству для передачи/приема сигнала, которые могут увеличивать скорость передачи данных

Изобретение относится к кодированию цифрового видео, а более конкретно к кодированию переменной длины (VLC) структур кодированных блоков (СВР), используемых для того, чтобы кодировать видео

Изобретение относится к кодированию видео и, в частности, к технологиям контроля ошибок в видео
Наверх