СПОСОБ КОДИРОВАНИЯ ИЗОБРАЖЕНИЙ, СПОСОБ ДЕКОДИРОВАНИЯ ИЗОБРАЖЕНИЙ, СПОСОБ УПРАВЛЕНИЯ ПАМЯТЬЮ, УСТРОЙСТВО КОДИРОВАНИЯ ИЗОБРАЖЕНИЙ, УСТРОЙСТВО ДЕКОДИРОВАНИЯ ИЗОБРАЖЕНИЙ, УСТРОЙСТВО УПРАВЛЕНИЯ ПАМЯТЬЮ И УСТРОЙСТВО КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ ИЗОБРАЖЕНИЙ
IMAGE ENCODING METHOD, IMAGE DECODING METHOD, MEMORY MANAGING METHOD, IMAGE ENCODING APPARATUS, IMAGE DECODING APPARATUS, MEMORY MANAGING APPARATUS AND APPARATUS FOR ENCODING AND DECODING IMAGES

Область техники, к которой относится изобретение
Настоящее изобретение относится к способу кодирования изображений, способу декодирования изображений и т.п. для видео.
Уровень техники
В способе кодирования изображений для кодирования видео объем информации, как правило, сжимается за счет избыточности в пространственном измерении и временном измерении, имеющихся в видео. Как правило, преобразование в частотную область применяется в качестве способа использования избыточности в пространственном измерении, а кодирование с межкадровым предсказанием (именуемым далее внешним предсказанием) применяется в качестве способа использования избыточности во временном измерении. При кодировании кадра во время кодирования с внешним предсказанием кодированный кадр, который предшествует подлежащему кодированию текущему кадру или следует за ним в порядке отображения, используется в качестве опорного кадра. Вектор движения образуется посредством выполнения оценки движения в текущем кадре относительно опорного кадра, при этом вычисляется разность между видеоданными текущего кадра и предсказанного кадра, полученного путем выполнения компенсации движения на основе вектора движения, благодаря чему устраняется избыточность во временной области.
При использовании стандарта кодирования изображений, называемого Н.264, который уже является унифицированным, для сжатия объема информации используются три типа кадров; то есть, I-кадр, В-кадр и Р-кадр. I-кадр представляет собой кадр, по которому кодирование с внешним предсказанием не выполнено, иными словами, кадр, по которому выполнено внутрикадровое предсказание (именуемое далее внутренним предсказанием). Р-кадр представляет собой кадр, по которому кодирование с внешним предсказанием выполнено по отношению к кодированному кадру, который предшествует подлежащему кодированию текущему кадру или следует за ним в порядке отображения. В-кадр представляет собой кадр, по которому кодирование с внешним предсказанием выполнено по отношению к двум кодированным кадрам, которые предшествуют текущему кадру или следуют за ним в порядке отображения. Кроме того, I-кадр и Р-кадр содержат секцию коммутации и т.д. (секцию SI, секцию SP) для коммутации между потоками и т.д.
При использовании способа кодирования изображений и способа декодирования изображений, которые соответствуют существующему стандарту Н.264, требуется, чтобы эти способы были применимы ко всем основным соотношениям, которые могут предусматриваться в соответствии с определением указанных типов кадров. Например, при декодировании Р-кадра требуется, чтобы обеспечивалось обращение к кадру, который следует в порядке отображения. Кроме того, при наличии двух векторов движения для В-кадра направления этих векторов движения могут быть прямыми или обратными. Кроме того, может осуществляться обращение к кадрам, являющимся различными для различных блоков в секции. Для того чтобы соответствовать гибкости такой опорной структуры, для способа кодирования изображений и способа декодирования изображений в Н.264 требуется осуществление некоторых процессов (см., например, Непатентную литературу 1).
СПИСОК БИБЛИОГРАФИЧЕСКИХ ССЫЛОК
НЕПАТЕНТНАЯ ЛИТЕРАТУРА
NPL 1
ITU-TH. 264 03/2010
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
ТЕХНИЧЕСКАЯ ПРОБЛЕМА
Однако при использовании способа кодирования изображений и способа декодирования изображений, описанных в вышеуказанной Непатентной литературе 1, существует проблема, состоящая в том, что нагрузка по обработке высока. С учетом вышеописанной проблемы целью настоящего изобретения является создание способа кодирования изображений и способа декодирования изображений для обеспечения снижения нагрузки по обработке.
РЕШЕНИЕ ПРОБЛЕМЫ
Для того чтобы достичь вышеописанной цели, способ кодирования изображений в соответствии с одним вариантом настоящего изобретения представляет собой способ кодирования изображений для кодирования видеосигнала, причем данный способ кодирования изображений включает в себя: обращение к некоторому изображению как к опорному изображению для текущего изображения, подлежащего кодированию, в случае, если множество изображений, входящих в видеосигнал, разбивается на слои так, что каждое из множества изображений принадлежит соответствующему одному из слоев, причем текущее изображение является одним из множества изображений, принадлежащим первому слою, а опорное изображение принадлежит второму слою, расположенному в области, ограниченной в соответствии с первым слоем; и кодирование текущего изображения на основе опорного изображения.
В соответствии с вышеописанной структурой, слой, к которому принадлежит опорное изображение, к которому осуществляется обращение при кодировании текущего изображения, подлежащего кодированию, существует в области, ограниченной в соответствии с первым слоем, к которому принадлежит текущее изображение. Таким образом, поскольку опорное изображение, к которому осуществляется обращение при кодировании текущего изображения, ограничено в соответствии с первым слоем, возможно снижение нагрузки по обработке при кодировании.
Кроме того, поскольку опорное изображение ограничено, при декодировании изображения, кодируемого, как описано выше, возможно также снижение нагрузки по обработке при декодировании. Кроме того, при обращении может быть запрещено обращение к изображению, которое принадлежит слою, расположенному выше первого слоя, при этом может осуществляться обращение к изображению, принадлежащему второму слою, как к опорному изображению, причем второй слой расположен в области, ограниченной первым слоем, или ниже первого слоя.
В соответствии с вышеописанной структурой, поскольку запрещено обращение к изображению, которое принадлежит слою, расположенному выше первого слоя, которому принадлежит текущее изображение, возможно кодирование текущего изображение с меньшей нагрузкой по обработке. Аналогичным образом, поскольку при декодировании кодированного изображения также нет необходимости в обращении к изображению, которое принадлежит слою, расположенному выше слоя, которому принадлежит кодированное изображение, возможно декодирование кодированного изображение с меньшей нагрузкой по обработке. Кроме того, в случае, если каждое изображение, входящее в видеосигнал, обрабатывается как изображение, подлежащее кодированию, и видеосигнал кодируется, при декодировании любого изображения, входящего в кодированный видеосигнал, нет необходимости в обращении к изображению, которое принадлежит слою, расположенному выше слоя, которому принадлежит изображение, подлежащее кодированию. Таким образом, устройству декодирования изображений лишь необходимо декодировать изображение, которое принадлежит слою, являющемуся целью специального воспроизведения, и, следовательно, можно избежать проблемы декодирования и обращения к изображению, которое принадлежит слою, расположенному выше, чем слой, который является целью специального воспроизведения. Например, в случае, если слой, который является целью специального воспроизведения, такого как воспроизведение с N-кратной скоростью (N>2), является слоем низшего уровня, расположенным внизу, устройству декодирования изображений нет необходимости декодировать и обращаться к изображению, которое не является целью специального воспроизведения, и ему необходимо лишь декодировать каждое из изображений, которые принадлежат слою низшего уровня. Например, указанное каждое из множества изображений является кадром или секцией.
Кроме того, с целью достижения описанной выше цели способ кодирования изображений в соответствии с другим вариантом настоящего изобретения представляет собой способ кодирования изображений для кодирования видеосигнала, причем данный способ кодирования изображений включает в себя: генерирование флага, указывающего, должно ли налагаться ограничение на выбор опорного изображения, обращение к которому осуществляется для кодирования текущего изображения, подлежащего кодированию, в случае, если множество изображений, входящих в видеосигнал, разбивается на слои так, что каждое из множества изображений принадлежит соответствующему одному из слоев, причем текущее изображение является одним из множества изображений; выбор в качестве опорного изображения для текущего изображения того изображения, которое соответствует условию, ограниченному в соответствии с первым слоем, которому принадлежит текущее изображение, в случае, если флаг указывает, что должно налагаться ограничение; кодирование текущего изображения с обращением к выбранному опорному изображению; и включение флага в видеосигнал, который был закодирован.
В соответствии с вышеописанной структурой, в случае, если флаг указывает на добавление ограничения, изображение, которое соответствует условию, ограниченному в соответствии с первым слоем, которому принадлежит текущее изображение, подлежащее кодирование, выбирается в качестве опорного изображения. В частности, опорное изображение, к которому осуществляется обращение для кодирования текущего изображения, ограничивается в соответствии с первым слоем. В результате возможно снижение нагрузки по обработке при кодировании текущего изображения. Кроме того, поскольку флаг, который указывает, налагать ли ограничение на выбор опорного изображения, генерируется и включается в кодированный видеосигнал, устройство декодирования изображений, которое декодирует кодированный видеосигнал, легко может определять, наложено ли ограничение на выбор опорного изображения. В результате этого устройство декодирования изображений может надлежащим образом декодировать кодированный видеосигнал с меньшей нагрузкой по обработке.
Кроме того, при выборе опорного изображения в случае, если служащее критерием изображение, которое принадлежит второму слою, расположенному в области, ограниченной в соответствии с первым слоем, расположено между текущим изображением и изображением-кандидатом в порядке кодирования, может быть запрещен выбор изображения-кандидата в качестве опорного изображения, при этом в качестве опорного изображения может быть выбрано изображение, отличное от изображения-кандидата. Например, при выборе опорного изображения запрещается выбор изображения-кандидата в качестве опорного изображения в случае, если служащее критерием изображение принадлежит второму слою, расположенному в области, ограниченной ниже первого слоя. Кроме того, при выборе опорного изображения может быть запрещен выбор в качестве опорного изображения изображения-кандидата, которое предшествует текущему изображению в порядке кодирования.
В соответствии с вышеописанной структурой, можно выбирать изображение-кандидат в качестве опорного изображения и дополнительно снижать нагрузку по обработке.
Кроме того, чтобы достичь вышеописанной цели, способ декодирования изображений в соответствии с одним вариантом настоящего изобретения представляет собой способ декодирования изображений для декодирования кодированного видеосигнала, причем данный способ декодирования изображений включает в себя: обращение к изображению как к опорному изображению для текущего изображения, подлежащего кодированию, в случае, если множество изображений, входящих в кодированный видеосигнал, разбивается на слои так, что каждое из множества изображений принадлежит соответствующему одному из слоев, причем текущее изображение является одним из множества изображений, принадлежащим первому слою, а опорное изображение принадлежит второму слою, расположенному в области, ограниченной в соответствии с первым слоем; и декодирование текущего изображения на основе опорного изображения. Например, вышеописанный способ декодирования изображений дополнительно включает в себя генерирование опорного списка, который указывает на одно или более изображений, каждое из которых принадлежит первому слою или слою ниже первого слоя, отличных от всех изображений, которые принадлежат своим соответствующим слоям, расположенным выше первого слоя, из числа изображений, входящих в кодированный видеосигнал, причем при обращении к опорному изображению опорное изображение выбирается из указанного одного или более изображений, указанных в опорном списке.
В соответствии с вышеописанной структурой, слой, которому принадлежит опорное изображение, к которому осуществляется обращение для декодирования текущего изображения, подлежащего декодированию, существует в области, которая ограничена в соответствии с первым слоем, которому принадлежит текущее изображение. Таким образом, поскольку опорное изображение, к которому осуществляется обращение для декодирования текущего изображения, ограничено в соответствии с первым слоем, возможно снижение нагрузки по обработке при декодировании.
Кроме того, чтобы достичь описанной выше цели, способ декодирования изображений в соответствии с другим вариантом настоящего изобретения представляет собой способ декодирования изображений для декодирования кодированного видеосигнала, причем данный способ декодирования изображений включает в себя: получение из кодированного видеосигнала флага, указывающего, наложено ли ограничение на выбор опорного изображения, обращение к которому осуществляется для декодирования текущего изображения, подлежащего декодированию, в случае, если множество изображений, входящих в кодированный видеосигнал, разбивается на слои так, что каждое из множества изображений принадлежит соответствующему одному из слоев, причем текущее изображение является одним из множества изображений; выбор в качестве опорного изображения для текущего изображения того изображения, которое соответствует условию, ограниченному в соответствии с первым слоем, которому принадлежит текущее изображение, в случае, если флаг указывает, что должно налагаться ограничение; и декодирование текущего изображения с обращением к выбранному опорному изображению.
В соответствии с вышеописанной структурой, в случае, если флаг указывает, что наложено ограничение, изображение, которое соответствует условию, ограниченному в соответствии с первым слоем, которому принадлежит текущее изображение, подлежащее декодирование, выбирается в качестве опорного изображения. В частности, опорное изображение, к которому осуществляется обращение для декодирования текущего изображения, ограничивается в соответствии с первым слоем. В результате возможно снижение нагрузки по обработке при декодировании текущего изображения.
Кроме того, чтобы достичь описанной выше цели, способ управления памятью в соответствии с одним вариантом настоящего изобретения представляет собой способ управления памятью для управления памятью, в которой сохраняется изображение, обращение к которому осуществляется для кодирования или декодирования видеосигнала, причем данный способ управления памятью включает в себя хранение в некоторой области памяти целевого изображения, подлежащего хранению, в случае, если множество изображений, входящих в видеосигнал, разбивается на слои так, что каждое из множества изображений принадлежит соответствующему одному из слоев, причем указанная область ограничивается емкостью слоя, которая представляет собой емкость, выделенную слою, которому принадлежит целевое изображение, причем целевое изображение является одним из множества изображений. В частности, вышеописанный способ управления памятью дополнительно включает в себя выделение каждому из слоев соответствующей части имеющейся емкости памяти в качестве емкости слоя.
Например, существует случай, в котором долговременное опорное изображение, к которому осуществляется обращение в течение длительного времени, принадлежит другому слою, при этом долговременное опорное изображение сохраняется в другой области памяти. В таком случае, когда подлежащее сохранению целевое изображение сохраняется в другой области, долговременное опорное изображение в некоторых случаях может быть удалено из памяти. Поэтому вновь необходимо выполнять такую обработку, как декодирование долговременного опорного изображения, с целью обращения к долговременному опорному изображению после удаления долговременного опорного изображения из памяти. На основании вышеизложенного, при использовании способа управления памятью в соответствии с одним вариантом настоящего изобретения ввиду того, что подлежащее сохранению целевое изображение сохраняется в некоторой области памяти, которая ограничена емкостью слоя, которая выделяется слою, которому принадлежит целевое изображение, возможно предотвращение удаления долговременного опорного изображения из памяти. Иными словами, можно без сбоев сохранять необходимое опорное изображение в памяти. В результате этого, возможно исключение такого избыточного процесса, как повторное декодирование долговременного опорного изображения. Кроме того, возможно снижение нагрузки по обработке, например, для успешной подачи команды управления памятью для удаления для выдачи команды на удаление ненужного изображения, чтобы без сбоев сохранять необходимое опорное изображение в памяти.
При этом при хранении в случае, если в указанной области не осталось доступной емкости для сохранения целевого изображения, имеющееся изображение, которое сохранялось раньше всего из одного или более имеющихся изображений, уже сохраненных в указанной области, может быть удалено из указанной области, чтобы сохранялось целевое изображение.
Кроме того, слой, которому принадлежит опорное изображение, может быть ограничен тем же слоем, что и слой, которому принадлежит текущее изображение, подлежащее обработке, или слоем, расположенным ниже его, причем опорное изображение является изображением, к которому должно осуществляться обращение для кодирования или декодирования текущего изображения из множества изображений, входящих в видеосигнал, при этом при послойном выделении емкости слоя емкость слоя, большая, чем емкость слоя, выделенная слою высшего уровня, расположенного выше слоя низшего уровня, может быть выделена слою низшего уровня, расположенному внизу множества слоев.
В соответствии с вышеописанной структурой, поскольку слой, которому принадлежит опорное изображение, ограничен слоем на том же уровне, что и уровень, которому принадлежит текущее изображение, или уровнем ниже его, весьма вероятно, что обращение к изображению, которое принадлежит слою низшего уровня, осуществляется в течение более длительного интервала времени, чем к изображению, которое принадлежит слою высшего уровня. На основании вышеизложенного, при использовании способа управления памятью в соответствии с одним вариантом настоящего изобретения емкость слоя, большая, чем емкость слоя, выделяемая слою высшего уровня, выделяется слою низшего уровня, и, следовательно, возможно сохранение в памяти на длительный интервал времени изображения, которое принадлежит слою низшего уровня. В результате этого, при обращении к изображению, которое принадлежит слою низшего уровня, возможно предотвращение такой ситуации, в которой изображение удаляется из памяти и поэтому обращение к нему невозможно.
Кроме того, вышеописанный способ управления памятью может дополнительно включать в себя отметку атрибута на изображении, которое принадлежит слою, расположенному выше слоя, которому принадлежит текущее изображение, являющееся целью кодирования и декодирования, из множества изображений, хранящихся в памяти. Например, при отметке атрибута отмечается атрибут, который указывает, что изображение не используется для обращения.
В соответствии с вышеописанной структурой, поскольку атрибут отмечается на изображении, легко можно идентифицировать ненужное изображение, которое не предполагается использовать для обращения, и удалить данное изображение из памяти до удаления других изображений. В результате этого, можно эффективно использовать емкость памяти.
Следует отметить, что настоящее изобретение может быть реализовано не только в виде способа кодирования изображений, способа декодирования изображений и способа управления памятью, как описано выше, но и в виде устройства для осуществления процессов в соответствии с вышеупомянутыми способами, интегральной схемы, программы, обеспечивающей осуществление компьютером процессов в соответствии с этими способами, и носителя информации, на котором хранится программа.
ПОЛЕЗНЫЕ ЭФФЕКТЫ ИЗОБРЕТЕНИЯ
Способ кодирования изображений и способ декодирования изображений в соответствии с настоящим изобретением могут снижать нагрузки по обработке.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг. 1 представляет собой блок-схему, иллюстрирующую устройство кодирования изображений в соответствии с Вариантом осуществления 1 настоящего изобретения;
фиг. 2 представляет собой схему, иллюстрирующую опорную структуру, создаваемую блоком внутреннего предсказания в соответствии с Вариантом осуществления 1 настоящего изобретения;
фиг. 3 представляет собой пример способа управления памятью в том случае, когда удаляется необходимый опорный кадр;
фиг. 4 представляет собой схему, иллюстрирующую пример способа управления памятью в том случае, когда налагается ограничение на порядок кодирования кадров;
фиг. 5 представляет собой схему, иллюстрирующую способ управления памятью, осуществляемый блоком управления памятью в соответствии с Вариантом осуществления 1 настоящего изобретения;
фиг. 6 представляет собой блок-схему последовательности операций, иллюстрирующую процессы, осуществляемые устройством кодирования изображений в соответствии с Вариантом осуществления 1 настоящего изобретения;
фиг. 7 представляет собой блок-схему последовательности операций, иллюстрирующую процессы с использованием флага, осуществляемые устройством кодирования изображений в соответствии с Вариантом осуществления 1 настоящего изобретения;
фиг. 8 представляет собой блок-схему последовательности операций, иллюстрирующую конкретные процессы, осуществляемые устройством кодирования изображений в соответствии с Вариантом осуществления 1 настоящего изобретения;
фиг. 9 представляет собой блок-схему, иллюстрирующую устройство декодирования изображений в соответствии с Вариантом осуществления 1 настоящего изобретения;
фиг. 10 представляет собой блок-схему последовательности операций, иллюстрирующую процессы, осуществляемые устройством декодирования изображений в соответствии с Вариантом осуществления 1 настоящего изобретения;
фиг. 11 представляет собой блок-схему последовательности операций, иллюстрирующую процессы с использованием флага, осуществляемые устройством декодирования изображений в соответствии с Вариантом осуществления 1 настоящего изобретения;
фиг. 12 представляет собой схему, иллюстрирующую пример способа управления памятью в соответствии с Вариантом осуществления 1 настоящего изобретения;
фиг. 13 представляет собой блок-схему последовательности операций, иллюстрирующую конкретные процессы, осуществляемые устройством декодирования изображений в соответствии с Вариантом осуществления 1 настоящего изобретения;
фиг. 14 представляет собой блок-схему последовательности операций, иллюстрирующую опорную структуру в соответствии с примером модификации Варианта осуществления 1 настоящего изобретения;
фиг. 15 представляет собой схему, иллюстрирующую пример способа управления памятью в соответствии с примером модификации Варианта осуществления 1 настоящего изобретения;
фиг. 16 представляет собой схему, иллюстрирующую другой пример способа управления памятью в соответствии с Модификацией 1 варианта осуществления настоящего изобретения;
фиг. 17 иллюстрирует общую конфигурацию системы поставки контента для реализации услуг распределения контента;
фиг. 18 представляет собой общую конфигурацию системы цифрового вещания;
фиг. 19 представляет собой блок-схему, иллюстрирующую пример конфигурации телевизора;
фиг. 20 представляет собой блок-схему, иллюстрирующую пример конфигурации блока воспроизведения/записи информации, который считывает информацию с носителя информации, которым является оптический диск, и записывает на него;
фиг. 21 представляет собой чертеж, на котором показан пример конфигурации носителя информации, которым является оптический диск;
фиг. 22А представляет собой пример сотового телефона;
фиг. 22В представляет собой пример конфигурации сотового телефона;
фиг. 23 иллюстрирует структуру мультиплексированных данных;
фиг. 24 представляет собой чертеж, схематически иллюстрирующий, как каждый из потоков мультиплексируется в мультиплексированных данных;
фиг. 25 представляет собой чертеж, более подробно иллюстрирующий, как видеопоток сохраняется в потоке PES-пакетов;
фиг. 26 представляет собой чертеж, на котором показана структура TS-пакетов и исходных пакетов в мультиплексированных данных;
фиг. 27 представляет собой чертеж, на котором показана структура РМТ;
фиг. 28 представляет собой чертеж, иллюстрирующий внутреннюю структуру информации мультиплексированных данных;
фиг. 29 представляет собой чертеж, на котором показана внутренняя структура информации атрибута потока;
фиг. 30 представляет собой чертеж, на котором показаны этапы идентификации видеоданных;
фиг. 31 представляет собой блок-схему, иллюстрирующую пример конфигурации интегральной схемы для реализации способа кодирования видеосигналов и декодирования видеосигналов в соответствии с каждым из Вариантов осуществления;
фиг. 32 представляет собой чертеж, на котором показана конфигурация для переключения между задающими частотами;
фиг. 33 представляет собой чертеж, на котором показаны этапы для идентификации видеоданных и переключения между задающими частотами;
фиг. 34 представляет собой чертеж, на котором показана таблица соответствия, в которой стандарты видеоданных связаны с задающими частотами;
фиг. 35А представляет собой чертеж, на котором показан пример конфигурации для совместного использования модуля блока обработки сигналов; и
фиг. 35В представляет собой чертеж, на котором показан другой пример конфигурации для совместного использования модуля блока обработки сигналов.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
Сначала, перед описанием вариантов осуществления в соответствии с настоящим изобретением, описываются некоторые процессы, осуществляемые при кодировании или декодировании изображений.
Например, устройство кодирования изображений и устройство декодирования изображений создают опорный список (называемый также списком опорных кадров). В частности, эти устройства при кодировании или декодировании секции, такой как В-секция с обращением к другому кадру, создает опорный список, в котором приводятся кадры, к которым должно осуществляться обращение для секции (макроблока, входящего в секцию). В этом процессе необходимо сортировать кадры в порядке номеров кадров в опорном списке (процесс сортирования во время инициализации опорного списка). Например, устройство кодирования изображений и устройство декодирования изображений после получения В-секции добавляют опорный кадр, к которому осуществляется обращение для В-секции (кадра, используемого как для кратковременного обращения, так и для долговременного обращения. В дальнейшем в этом документе используется то же обозначение) к опорному списку (L0, L1). При этом устройство кодирования изображений и устройство декодирования изображений сортируют опорные кадры в опорном списке (L0, L1) в порядке убывания (в порядке «молодые в первую очередь») в соответствии с номерами кадров (Pic Num) опорных кадров.
Кроме того, устройство кодирования изображений и устройство декодирования изображений обеспечивают хранение в отдельной логической памяти (DPB: буфер декодированных кадров) такого кадра в качестве опорного кадра, обращение к которому осуществляется в течение длительного времени, например. При этом для предотвращения переполнения памяти требуется отмечать атрибут на каждом из этих кадров, хранящихся в памяти, для управления этими кадрами.
Например, устройство кодирования изображений и устройство декодирования изображений отмечают атрибут «не используется для обращения» на кадре, который не используется в качестве опорного кадра, после определения того, что вероятность обращения к кадру становится меньше, или приема заданной команды (ММСР: команды управления памятью). Следует отметить, что заданной командой является команда, которая устанавливает, что обращение к подлежащему управлению кадру не должно осуществляться. В частности, такой способ управления отметкой включает в себя способ управления FIFO (первым пришел - первым обслужен) и адаптивный контроль памяти с помощью команды контроля управления памятью.
При этом гибкость опорной структуры, которая становится возможной благодаря определению кадра Н.264, непосредственно не способствует упрощению реализации устройства декодирования изображений. Хотя гибкость опорной структуры может способствовать улучшению эффективности кодирования со сжатием, может ли гибкость способствовать упрощению реализации устройства декодирования изображений, которое воспроизводит кодированные данные (кодированный поток) или нет - это отдельный вопрос. Таким образом, гибкость опорной структуры повышает нагрузку по обработке устройства кодирования изображений и устройства декодирования изображений. Например, существует случай, в котором реализация устройства декодирования изображений упрощается, в случае, если можно определить, что наложены ограничивающие условия.
Кроме того, существует случай, в котором, по меньшей мере, чрезмерная гибкость налагает ограничение на общие процессы. Например, когда устройство кодирования изображений и устройство декодирования изображений, которые обращаются к большому числу опорных кадров в течение длительного времени, управляют памятью (выполняя обработку отметок) с использованием вышеупомянутого способа FIFO, существует случай, в котором кадр, необходимый для обращения, удаляется из памяти ввиду ограниченного размера памяти. Кроме того, в случае, если устройство кодирования изображений и устройство декодирования изображений осуществляют адаптивный контроль памяти с использованием вышеупомянутой команды управления памятью, команда (команда управления памятью) требуется при каждом осуществлении контроля.
На основании вышеизложенного, способ кодирования изображений и способ декодирования изображений в соответствии с одним вариантом осуществления настоящего изобретения характеризуются снижением нагрузки по обработке с помощью опорной структуры, на которую налагается ограничивающее условие. Кроме того, способ управления памятью в соответствии с одним вариантом осуществления настоящего изобретения характеризуются предотвращением увеличения нагрузки по обработке, посредством этого предотвращая удаление из памяти кадра, необходимого для обращения.
Ниже со ссылкой на чертежи описывается один вариант осуществления настоящего изобретения. Необходимо отметить, что в каждом из вариантов осуществления, объясняемых ниже, описывается предпочтительный конкретный пример настоящего изобретения. Численное значение, форма, материал, структурные элементы, места размещения и виды соединений структурных элементов, этапы, порядок этапов и т.д. являются примерами и не ограничивают настоящее изобретение. Настоящее изобретение ограничивается лишь объемом формулы изобретения. Таким образом, среди множества структурных элементов в описываемых ниже вариантах осуществления структурные элементы, не описываемые в независимых пунктах формулы изобретения, которые соответствуют наиболее полной концепции настоящего изобретения, не обязательно требуются для решения проблемы настоящего изобретения, а объясняются как компоненты для более предпочтительного варианта осуществления.
ВАРИАНТ ОСУЩЕСТВЛЕНИЯ 1
Фиг. 1 представляет собой блок-схему, иллюстрирующую устройство кодирования изображений в соответствии с Вариантом осуществления 1 настоящего изобретения.
Устройство 1000 кодирования изображений в соответствии с настоящим вариантом осуществления отличается тем, что на обращение кадра при кодировании с внутренним предсказанием налагается ограничение в соответствии со структурой слоя кадра. Описанное выше устройство 1000 кодирования изображений содержит: вычитатель 1101; блок 1102 ортогонального преобразования; блок 1103 квантования; блок 1104 энтропийного кодирования; блок 1105 обратного квантования; блок 1106 обратного ортогонального преобразования; сумматор 1107; деблочный фильтр 1108; память 1109; блок 1110 внутреннего предсказания; блок 1111 внешнего предсказания; блок 1112 оценки движения; коммутатор 1113; и блок 1200 контроля памяти.
Вычитатель 1101 получает видеосигнал и предсказанное изображение с коммутатора 1113. Затем вычитатель 1101 вычитает предсказанное изображение из текущего кодируемого блока, входящего в видеосигнал, посредством этого генерируя разностное изображение.
Блок 1102 ортогонального преобразования выполняет ортогональное преобразование (частотное преобразование), такое как дискретное косинусное преобразование разностного изображения, генерируемого вычитателем 1101, посредством этого преобразуя разностное изображение в блок коэффициентов, содержащий множество коэффициентов. Блок 1103 квантования квантует каждый из частотных коэффициентов, входящих в блок коэффициентов, посредством этого генерируя блок квантованных коэффициентов.
Блок 1105 обратного квантования выполняет обратное квантование блока коэффициентов, квантованного блоком 1103 квантования. Блок 1106 обратного ортогонального преобразования выполняет обратное ортогональное преобразование (обратное частотное преобразование), такое как обратное дискретное косинусное преобразование, каждого из частотных коэффициентов, входящих в блок коэффициентов, над которым выполнялось обратное квантование, посредством этого генерируя декодированное разностное изображение.
Сумматор 1107 получает предсказанное изображение с коммутатора 1113 и добавляет предсказанное изображение к декодируемому разностному изображению, генерируемому блоком 1106 обратного ортогонального преобразования, посредством этого генерируя локальное декодированное изображение (изображение реконфигурирования).
Деблочный фильтр 1108 устраняет явления блокирования локального декодированного изображения, генерированного сумматором 1107, и сохраняет локальное декодированное изображение в памяти 1109. Память 1109 представляет собой память для хранения локального декодированного изображения в качестве опорного изображения для внешнего предсказания. Необходимо отметить, что память 1109 используется в качестве буфера декодированных кадров (DPB).
Блок 1110 внутреннего предсказания выполняет внутреннее предсказание по текущему блоку, подлежащему кодированию, с использованием локального декодированного изображения, генерированного сумматором 1107, посредством этого генерируя предсказанное изображение (внутреннее предсказанное изображение).
Блок 1112 оценки движения обнаруживает вектор движения для текущего блока, входящего в видеосигнал, и выдает обнаруженный вектор движения в блок 1111 внешнего предсказания и блок 1104 энтропийного кодирования.
Блок 1111 внешнего предсказания обращается к изображению, хранящемуся в памяти 1109, и использует вектор движения, обнаруженный блоком 1112 оценки движения, посредством этого выполняя компенсацию движения по текущему блоку. Блок 1111 внешнего предсказания выполняет компенсацию движения, как описано выше; то есть, выполняет внешнее предсказание по текущему блоку, посредством этого генерируя предсказанное изображение (внешнее предсказанное изображение) текущего блока.
Кроме того, блок 1111 внешнего предсказания расслаивает кадры, входящие в видеосигнал. В частности, блок 1111 внешнего предсказания разделяет по слоям кадры, входящие в видеосигнал, таким образом, что каждый из кадров принадлежит соответствующему одному из слоев. Необходимо отметить, что блок 1111 внешнего предсказания, например, разделяет множество кадров в настоящем варианте осуществления; однако каждое из изображений, подлежащих расслоению, не ограничивается кадром, при этом могут использоваться иные элементы изображения, такие как секция.
В таком случае, блок 1111 внешнего предсказания обращается - в качестве опорного кадра для текущего кадра, подлежащего кодированию - к кадру, который принадлежит второму слою, имеющемуся в области, которая ограничена в соответствии с первым слоем, которому принадлежит текущий кадр, являющийся одним из кадров. В частности, блок 1111 внешнего предсказания запрещает обращение к кадру, который принадлежит вышележащему слою или находится на более высоком уровне, чем первый слой, и обращается в качестве опорного кадра к кадру, который принадлежит второму слою, расположенному в области, ограниченной тем же уровнем, что и первый слой, или более низким уровнем.
Кроме того, блок 1111 внешнего предсказания генерирует флаг, указывающий, должно ли налагаться ограничение на выбор опорного кадра, обращение к которому осуществляется при кодировании текущего кадра, подлежащего кодированию, который является одним из кадров, и выдает данный флаг в блок 1104 энтропийного кодирования. Например, в случае, если на текущий кадр налагается ограничение обращения на основе структуры слоев, как описано выше, блок 1111 внешнего предсказания генерирует флаг, указывающий 1, и выдает данный флаг в блок 1104 энтропийного кодирования. Иными словами, в случае, если флаг указывает добавление ограничения, блок 1111 внешнего предсказания выбирает в качестве опорного кадра для текущего кадра тот кадр, который удовлетворяет условию, ограниченному в соответствии с первым слоем, которому принадлежит текущий кадр.
Кроме того, блок 1111 внешнего предсказания генерирует для каждого из кадров, которые расслаиваются, информацию слоя, указывающую на слой, которому принадлежит кадр, и выдает данную информацию слоя в блок 1104 энтропийного кодирования и блок 1200 контроля памяти.
При выполнении кодирования с внутренним предсказанием по текущему блоку, подлежащему кодированию, коммутатор 1113 выдает предсказанное изображение (внутреннее предсказанное изображение), генерируемое блоком 1110 внутреннего предсказания, в вычитатель 1101 и сумматор 1107. В противоположность этому, при выполнении кодирования с внешним предсказанием по текущему блоку, подлежащему кодированию, коммутатор 1113 выдает предсказанное изображение (внешнее предсказанное изображение), генерируемое блоком 1111 внешнего предсказания, в вычитатель 1101 и сумматор 1107.
Блок 1104 энтропийного кодирования выполняет энтропийное кодирование (кодирование переменной длины) по: блоку коэффициентов, квантованному блоком 1103 квантования; вектору движения, обнаруженному блоком 1112 оценки движения; и флагу и информации слоя, генерируемым блоком 1111 внешнего предсказания, посредством этого генерируя кодированный поток. С помощью описанных выше процессов кодированный поток включает в себя флаг и информацию слоя, описанные выше.
Блок 1200 контроля памяти получает из блока 1111 внешнего предсказания информацию слоя каждого из кадров и управляет кадром, хранящимся в памяти 1109, на основе слоя кадра, указанного информацией слоя; то есть, на основе структуры слоя. В частности, блок 1200 контроля памяти выделяет в качестве емкости слоя часть доступной емкости памяти в памяти 1109 для каждого из слоев. Затем блок 1200 контроля памяти сохраняет текущий кадр, подлежащий сохранению, в некоторую область в памяти 1109, которая ограничена емкостью слоя, являющейся емкостью, выделенной слою, которому принадлежит текущий кадр. Необходимо отметить, что в случае, если в указанной области не осталось доступной емкости для сохранения текущего кадра, подлежащего сохранению, блок 1200 контроля памяти может удалить из указанной области имеющийся кадр, который сохранялся раньше всего из одного или более имеющихся кадров, уже сохраненных в указанной области, чтобы сохранялся текущий кадр.
При этом при выделении емкости слоя для каждого из слоев блок 1200 контроля памяти выделяет слою низшего уровня, расположенному внизу слоев, емкость слоя, большую, чем емкость слоя, выделенная слою высшего уровня, расположенному выше слоя низшего уровня.
Кроме того, блок 1200 контроля памяти отмечает атрибут на кадре, который принадлежит слою, расположенному выше слоя, которому принадлежит текущий кадр, подлежащий кодированию, из числа кадров, хранящихся в памяти 1109. В частности, блок 1200 контроля памяти отмечает атрибут, который указывает, что кадр не используется для обращения.
Ниже подробно описывается структура слоя и опорная структура кадра, которая создается блоком 1111 внешнего предсказания.
Фиг. 2 представляет собой схему, иллюстрирующую структуру слоя и опорную структуру, создаваемую блоком 1111 внешнего предсказания. Необходимо отметить, что на фиг. 2 алфавитный и цифровой знаки, добавленные к кадру, указывают, соответственно, тип кадра и порядок отображения кадра. Например, I0 означает тип «I» кадра и порядок «0» отображения кадра, а Br2 означает тип «В» кадра и порядок «2» отображения кадра.
Блок 1111 внешнего предсказания определяет опорную структуру на основе структуры слоя, создаваемой путем разбиения множества кадров, входящих в видеосигнал, на слои, как показано на фиг. 2. При этом блок 1111 внешнего предсказания использует кадр, расположенный в верхней части в порядке отображения из множества кадров, в качестве I-кадра и использует кадры за исключением I-кадра в верхней части в качестве В-кадра. Кроме того, в случае, если блок 1111 внешнего предсказания выполняет внешнее предсказание по кадру, который принадлежит некоторому слою, для каждого из множества слоев он обращается к кадру, который принадлежит тому же уровню, что и данный слой, или более низкому уровню. В частности, при использовании опорной структуры, создаваемой блоком 1111 внешнего предсказания, налагается ограничение, которое не позволяет обращаться к кадру, относящемуся к слою, расположенному выше слоя, которому принадлежит текущий кадр, подлежащий кодированию, или выше (что позволяет осуществлять обращение к кадру в слое, являющемся тем же, что и текущий слой, или более низким слоем).
Например, блок 1111 внешнего предсказания обращается к кадру I0, который принадлежит слою 0, и кадру Br2, который принадлежит слою 2, при выполнении внешнего предсказания по кадру В1, который принадлежит слою 3, как показано на фиг. 2. Кроме того, при выполнении внешнего предсказания по кадру Bf8, который принадлежит слою 0 на низшем уровне, блок 1111 внешнего предсказания обращается к кадру I0, который принадлежит тому же слою 0. При этом может осуществляться обращение только к предыдущим кадрам в порядке отображения для внешнего предсказания кадра, который принадлежит слою 0 на низшем уровне.
Как описано выше, при использовании опорной структуры в соответствии с настоящим вариантом осуществления можно улучшить эффективность сжатия видеосигнала, поскольку кадры, отличные от I-кадра, являются В-кадрами. Как правило, кадр, который кодируется с обращением к большему числу опорных кадров, может улучшить эффективность сжатия в большей степени, чем кадр, который кодируется с обращением к меньшему числу опорных кадров. Таким образом, при использовании опорной структуры в соответствии с настоящим вариантом осуществления можно улучшить эффективность сжатия видеосигнала, поскольку кадры, отличные от I-кадра, являются В-кадрами.
Кроме того, при использовании опорной структуры в соответствии с настоящим вариантом осуществления кадр, который принадлежит слою на более высоком уровне среди множества слоев, кодируется с обращением к кадру, который принадлежит тому же слою, или к кадру, который принадлежит слою на более низком уровне. Это упрощает выполнение специального воспроизведения, такого как воспроизведение с двойной скоростью, в устройстве воспроизведения, содержащем устройство декодирования изображений.
Например, при выполнении воспроизведения с высокой скоростью устройство воспроизведения воспроизводит лишь кадры, которые принадлежат слою 0. При использовании опорной структуры, изображенной на фиг. 2, устройство воспроизведения воспроизводит кадры I0, Bf8 и Bf16. Кадры, которые принадлежат уровням 0 и 1, воспроизводятся, когда скорость воспроизведения должна уменьшаться, а кадры, которые принадлежат уровням 0, 1 и 2, воспроизводятся, когда скорость воспроизведения должна уменьшаться еще больше. Как описано выше, можно легко достичь гибкого воспроизведения с высокой скоростью путем определения опорной структуры в соответствии со слоями.
В частности, в случае, если устройство кодирования изображений кодирует текущий кадр, подлежащий отображению, который отображается при специальном воспроизведении с обращением в качестве опорного кадра к кадру, который принадлежит слою на уровне, более высоком, чем слой, которому принадлежит текущий кадр, устройство воспроизведения должно декодировать опорный кадр, несмотря на то, что опорный кадр не отображается при специальном воспроизведении. Однако при использовании устройства 1000 кодирования изображений в соответствии с настоящим вариантом осуществления каждому из кадров запрещается обращаться к кадру, который принадлежит слою на более высоком уровне, чем слой, которому принадлежит каждый из кадров. Поэтому можно исключить в устройстве воспроизведения проблему декодирования опорного кадра, который не отображается при специальном воспроизведении. В результате этого, в соответствии с настоящим вариантом осуществления, можно снизить нагрузку по обработке устройства декодирования изображений, входящего в устройство воспроизведения.
При этом блок 1111 внешнего предсказания генерирует флаг, как описано выше. В частности, блок 1111 внешнего предсказания выдает флаг, который определяет одним битом, является ли видеосигнал (поток) (i) кодированным с использованием иерархического ограничивающего условия для специальной цели (например, специального воспроизведения) или (ii) потоком, который кодировался без ограничивающего условия. Блок 1104 энтропийного кодирования добавляет флаг (1 бит) в верхней части блока доступа (например, блока произвольного доступа или последовательности) в кодированном потоке, например. Это позволяет устройству воспроизведения определять с использованием наименьшего числа бит, предназначен ли кодированный поток или кодированный кадр для специальной цели, такой как воспроизведение с высокой скоростью и произвольный доступ. В результате этого можно минимизировать влияние совместимости для кодированного потока, то есть, видеосигнала, кодированного по общепринятому стандарту Н.264, и устройства декодирования изображений, которое декодирует кодированный поток. Кроме того, к дополнительной части отдельно от вышеупомянутого флага (1 бит) может быть добавлена информация, указывающая структуру слоев и опорную структуру в соответствии с целью, то есть, информация, указывающая, наложено ли ограничение, такая как SEI (дополнительная расширяющая информация).
Кроме того, блок 1111 внешнего предсказания генерирует информацию слоя, как описано выше. В частности, блок 1111 внешнего предсказания выдает для каждого слоя информацию слоя (идентификационную информацию) для идентификации того, какому слою принадлежит кадр. Блок 1104 энтропийного кодирования в это же время добавляет информацию слоя к заголовку кадра, соответствующему информации слоя. В частности, блок 1111 внешнего предсказания выделяет ту же информацию слоя всем секциям в кадре (фрейме или паре полей). Это вызвано тем, что не обязательно выделять каждую часть (секцию) в кадре соответствующему одному из слоев, отличающихся друг от друга, в случае специального воспроизведения, такого как воспроизведение с высокой скоростью или произвольный доступ. С помощью описанных выше процессов блок 1104 энтропийного кодирования добавляет к заголовку кадра информацию слоя, такую как набор параметров кадра.
В результате этого, при выполнении воспроизведения с высокой скоростью кодированного потока устройство воспроизведения получает информацию слоя из заголовка кадра и воспроизводит только кадры, необходимые для воспроизведения с высокой скоростью.
Кроме того, блок 1104 энтропийного кодирования может размещать множество элементов информации слоя вместе в верхней части кодированного потока. В частности, блок 1104 энтропийного кодирования размещает в верхней части кодированного потока в качестве управляющей информации каждую информацию слоя множества кадров, входящих в кодированный поток, в соответствии с порядком кодирования или порядком отображения кадров. Устройство воспроизведения может определять, какого рода воспроизведение с высокой скоростью (специальное воспроизведение) может выполняться, путем считывания управляющей информации в верхней части перед декодированием кодированного потока.
Кроме того, в таком случае, как хранение кодированного потока на оптическом диске, блок 1104 энтропийного кодирования может хранить на оптическом диске управляющую информацию отдельно от кодированного потока. Благодаря хранению управляющей информации отдельно от кодированного потока в устройстве воспроизведения возможно определение того, какого рода воспроизведение с высокой скоростью может выполняться, перед воспроизведением кодированного потока.
Необходимо отметить, что в соответствии с настоящим вариантом осуществления кадр, который принадлежит слою на высоком уровне, кодируется с обращением к кадру, который принадлежит слою на том же уровне или на более низком уровне. Однако кадр, который принадлежит слою на заданном уровне, может кодироваться исключительно с обращением к кадру, который принадлежит слою на более высоком уровне, чем заданный уровень. Как показано пунктирной стрелкой на фиг. 2, например, кадр, который принадлежит слою на низшем уровне, кодируется с обращением к кадру, который принадлежит слою на более высоком уровне. Если быть точнее, кадр Bf16, который принадлежит слою 0 на низшем уровне, кодируется с обращением к кадру Br4, который принадлежит слою 1 на высшем уровне, и кадру Br6, который принадлежит слою 2 на более высоком уровне.
Как описано выше, кадр, который принадлежит слою на заданном уровне, обращается к кадру, который принадлежит слою на более высоком уровне, посредством этого обеспечивая дальнейшее улучшение эффективности сжатия видеосигнала. При этом ввиду того, что на специальное воспроизведение налагается ограничение, к кодированному потоку вновь может быть добавлена информация, которая указывает, какого рода специальное воспроизведение может выполняться. Например, добавляется информация, которая указывает, вплоть до какого слоя кадров может осуществляться обращение кадра, который принадлежит слою на низшем уровне. Например, как показано на фиг. 2, блок 1111 внешнего предсказания выдает информацию, указывающую, что может быть осуществлено обращение к кадру, принадлежащему уровню 2, при этом блок 1104 энтропийного кодирования добавляет эту информацию к кодированному потоку. В результате этого на основе данной информации устройство воспроизведения определяет, что возможно воспроизведение кадров, которые принадлежат своим соответствующим слоям 0, 1 и 2, и кадров, которые принадлежат своим соответствующим слоям 0, 1, 2 и 3, в качестве специального воспроизведения. Информация, указывающая, вплоть до какого слоя кадров может осуществляться обращение, может добавляться в заголовок кодированного потока или может сохраняться в качестве управляющей информации, отличной от кодированного потока.
Необходимо отметить, что блок 1111 внешнего предсказания при выполнении внешнего предсказания кадра, следующего за кадром, который принадлежит слою на низшем уровне в порядке отображения, может запрещать обращение к кадру, предшествующему кадру, который принадлежит слою на низшем уровне в порядке отображения. Иными словами, блок 1111 внешнего предсказания рассматривает кадр, который принадлежит слою на низшем уровне, как служащий критерием кадр для задания ограничения обращения. При использовании такого ограничения обращения в случае, если устройство декодирования изображений осуществляет произвольную выборку кадра, который принадлежит слою на низшем уровне, можно обеспечить декодирование кадров, расположенных вслед за кадром, произвольная выборка которого осуществляется. Кроме того, блок 1111 внешнего предсказания может выдавать в кадр, который принадлежит слою на низшем уровне, информацию, указывающую, является ли данный кадр служащим критерием кадром для ограничения обращения. В этом случае блок 1104 энтропийного кодирования добавляет к кадру информацию, указывающую, является ли данный кадр служащим критерием кадром. В соответствии с описанными выше процессами, ввиду того, что служащий критерием кадр и кадры, отличные от служащего критерием кадра, присутствуют вместе в слое на низшем уровне, можно достичь как улучшения эффективности сжатия, так и произвольной выборки видеосигнала.
При этом служащим критерием кадром может являться кадр, который принадлежит не слою на низшем уровне, а, например, слою на уровне ниже, чем текущий кадр, подлежащий кодированию. Если быть точнее, служащим критерием кадром является кадр, который принадлежит второму слою, расположенному в области, ограниченной в соответствии с первым слоем, которому принадлежит текущий кадр; то есть, в области, лежащей ниже, чем первый слой. Например, служащий критерием кадр находится между текущим кадром и кадром-кандидатом в порядке кодирования. В этом случае блок 1111 внешнего предсказания при выборе опорного кадра запрещает выбор в качестве опорного кадра кадра-кандидата, который предшествует текущему кадру в порядке кодирования, и выбирает кадр, отличный от кадра-кандидата, в качестве опорного кадра. При этом можно выбирать соответствующий кадр в качестве опорного кадра и дополнительно снижать нагрузку по обработке.
Кроме того, блок 1111 внешнего предсказания может обращаться к кадру в слое на низшем уровне при выполнении внешнего предсказания по кадру в положении произвольной выборки. В частности, при выполнении внешнего предсказания по кадру, который принадлежит слою 3, который может быть положением произвольной выборки, может осуществляться обращение только к кадру в слое 0 как к опорному кадру. Это позволяет устройству декодирования изображений при декодировании кадра в положении произвольной выборки непосредственно обращаться к опорному кадру в слое 0 и декодировать кадр в положении выборки без декодирования кадра в промежуточном слое, то есть, слое между слоем, которому принадлежит кадр в положении доступа, и слоем 0 в низшем слое. Кроме того, дополнительные данные кодирования, такие как секция Switching P (SP), не требуются.
Ниже подробно описывается способ управления памятью для управления памятью 1109, осуществляемого с помощью блока 1200 контроля памяти.
Например, в случае, если способ управления памятью в соответствии с существующим стандартом Н.264 попросту применяется к опорной структуре, изображенной на фиг. 2, опорный кадр, к которому осуществляется обращение для кодирования текущего кадра, подлежащего кодированию, удаляется из памяти 1109, приводя к тому, что в некоторых случаях обращение к опорному кадру невозможно.
Фиг. 3 представляет собой пример способа управления памятью в том случае, когда удаляется необходимый опорный кадр.
Сначала кадр I0 кодируется и декодируется и сохраняется в качестве опорного кадра I0 в памяти в 0-м процессе в порядке кодирования. Затем опорные кадры последовательно сохраняются в памяти. Кадр I0, кадр Bf8, кадр Br4 и кадр Br2 сохраняются в памяти в третьем процессе в порядке кодирования. Далее в четвертом процессе в порядке кодирования кадр Br6 вновь добавляется в память 1109, и кадр I0, сохраненный в памяти раньше всего, удаляется из памяти.
Однако ввиду того, что обращение к кадру I0 осуществляется для кодирования кадра В1 в пятом процессе в порядке кодирования, кадр I0 должен вновь декодироваться в пятом процессе. Иными словами, требуется, чтобы емкость памяти была достаточно большой для хранения кадра I0 в памяти для кодирования кадра В1.
Таким же образом, как и выше, кадр Bf8 удаляется из памяти в девятом процессе в порядке кодирования. Однако ввиду того, что обращение к кадру Bf8 осуществляется для кодирования кадра Br12 в десятом процессе в порядке кодирования, кадр Bf8 должен вновь декодироваться в десятом процессе. Иными словами, чтобы обеспечить сохранение кадра Bf8 в памяти в десятом процессе в порядке кодирования, необходимо, чтобы емкость памяти была больше. В соответствии с другим вариантом, должна применяться команда управления памятью (ММСО).
Как указано выше, простое применение способа управления памятью в соответствии с существующим стандартом Н.264 к опорной структуре, изображенной на фиг. 2, создает проблему, состоящую в том, что опорный кадр, который должен храниться в памяти, вычитается.
Для решения этой проблемы на порядок кодирования кадров может налагаться ограничение.
Фиг. 4 представляет собой схему, иллюстрирующую пример способа управления памятью в том случае, когда налагается ограничение на порядок кодирования кадров.
Например, налагается ограничение, что кадр, который принадлежит слою, отличному от слоя на высшем уровне, кодируется как можно позже в порядке кодирования. Необходимо отметить, что даже при таком ограничении обращение к кадру, который является следующим, не осуществляется для кодирования кадра, который предшествует в порядке кодирования. Кроме того, порядок кодирования является тем же, что и порядок декодирования.
Если быть точнее, в соответствии с порядком кодирования, показанном на фиг. 4, кадр Bf6 в слое 2 следует за кадрами В1 и В3 в слое 3 в порядке кодирования. При кодировании кадра В1 в слое 3 в соответствии с таким порядком кодирования кадр I0, обращение к которому осуществляется кадром В1, сохраняется в памяти 1109. Таким образом, можно избежать проблемы повторного декодирования кадра I0 и сократить возрастание емкости памяти 1109.
Однако даже в таком случае кадр Br8 удаляется из памяти с помощью девятого процесса (кодирование и декодирование кадра Bf16) в порядке кодирования. В результате этого, ввиду того, что обращение к кадру Bf8 осуществляется для кодирования кадра Br12 в десятом процессе в порядке кодирования, кадр Bf8 должен вновь декодироваться в десятом процессе. Иными словами, чтобы обеспечить сохранение кадра Bf8 в десятом процессе в порядке кодирования, необходимо, чтобы емкость памяти была больше. В соответствии с другим вариантом, должна применяться команда управления памятью (ММСО).
Фиг. 5 представляет собой схему, иллюстрирующую способ управления памятью, осуществляемый блоком 1200 управления памятью в соответствии с настоящим вариантом осуществления.
Блок 1200 управления памятью управляет памятью 1109 с помощью структуры слоев и опорной структуры кадра. Например, память 1109 имеет емкость памяти для хранения четырех кадров. В этом случае блок 1200 управления памятью выделяет слою 0 на низшем уровне емкость памяти для двух кадров в качестве емкости слоя из емкости памяти для четырех кадров, которая является доступной емкостью памяти 1109. Кроме того, блок 1200 управления памятью выделяет и слою 1, и слою 2 емкость памяти для одного кадра в качестве емкости слоя из вышеуказанной емкости памяти для четырех кадров памяти 1109. В частности, емкость слоя для одного кадра выделяется каждому из промежуточных слоев, отличных от слоя 0 на низшем уровне и слоя 3 на высшем уровне.
Далее блок 1200 управления памятью получает из блока 1111 внешнего предсказания информацию слоя кадра, входящего в видеосигнал. В случае, если информация слоя указывает на слой 0, блок 1200 управления памятью сохраняет кадр в области емкости слоя памяти 1109, которая выделяется слою 0. Кроме того, в случае, если информация слоя указывает на слой 1 или 2, блок 1200 управления памятью сохраняет кадр в области емкости слоя памяти 1109, которая выделяется слою 1 или 2.
В настоящем варианте осуществления, как описано выше, емкость слоя больше выделяется слою на низком уровне, которому принадлежит кадр, к которому другие кадры будут обращаться с большей вероятностью, и меньше выделяется слою на высоком уровне, которому принадлежит кадр, к которому другие кадры будут обращаться с меньшей вероятностью. Это позволяет без сбоев сохранять в памяти 1109 опорный кадр, необходимый для кодирования и декодирования без увеличения емкости памяти или применения ММСО.
Необходимо отметить, что способ выделения емкости слоя не ограничивается примером, приведенным на фиг. 5. Блоку 1200 управления памятью необходимо лишь больше выделять емкость слоя слою на низком уровне. Например, блок 1200 управления памятью может выделять емкость слоя для трех кадров уровню 0 и емкость слоя для одного кадра всем остальным уровням 1 и 2.
Фиг. 6 представляет собой блок-схему последовательности операций, иллюстрирующую процессы, осуществляемые устройством 1000 кодирования изображений в соответствии с настоящим вариантом осуществления.
Блок 1111 внешнего предсказания устройства 1000 кодирования изображений обращается в качестве опорного изображения для текущего изображения, подлежащего кодированию, к изображению, которое принадлежит второму слою в области, ограниченной в соответствии с первым слоем, которому принадлежит текущее изображение (Этап S10). Затем устройство 1000 кодирования изображений кодирует текущее изображение на основе опорного изображения (Этап S11). Необходимо отметить, что блок 1111 внешнего предсказания служит в качестве опорного блока (первого опорного блока), который обращается к опорному изображению в соответствии с настоящим вариантом осуществления. Кроме того, по меньшей мере, один структурный элемент, предусмотренный в устройстве 1000 кодирования изображений, служит в качестве блока кодирования, который кодирует текущее изображение.
При этом слой, которому принадлежит опорное изображение, к которому осуществляется обращение для кодирования текущего изображения, находится в области, ограниченной в соответствии с первым слоем, которому принадлежит текущее изображение. Таким образом, поскольку опорное изображение, к которому осуществляется обращение для кодирования текущего изображения, ограничено в соответствии с первым слоем, возможно снижение нагрузки по обработке при кодировании. Кроме того, поскольку опорное изображение ограничено при декодировании изображения, также кодируемого, как описано выше, возможно снижение нагрузки по обработке при декодировании.
При этом при обращении к опорному изображению на Этапе S10 блок 1111 внешнего предсказания запрещает обращение к изображению, которое принадлежит слою на более высоком уровне, чем первый слой, и обращается в качестве опорного изображения к изображению, которое принадлежит второму слою, расположенному в области, ограниченной первым слоем или слоем ниже первого слоя.
При этом ввиду того, что запрещено обращение к изображению, которое принадлежит слою, расположенному выше первого слоя, которому принадлежит текущее изображение, возможно кодирование текущего изображение с меньшей нагрузкой по обработке. Аналогичным образом ввиду того, что при декодировании кодированного изображения также нет необходимости в обращении к изображению, которое принадлежит слою, расположенному выше слоя, которому принадлежит кодированное изображение, возможно декодирование кодированного изображение с меньшей нагрузкой по обработке. Кроме того, в случае, если каждое изображение, входящее в видеосигнал, обрабатывается как изображение, подлежащее кодированию, и при этом видеосигнал кодируется, при декодировании любых изображений, входящих в кодированный видеосигнал, нет необходимости в обращении к изображению, которое принадлежит слою, расположенному выше слоя, которому данное изображение. Таким образом, устройству декодирования изображений лишь необходимо декодировать изображение, которое принадлежит слою, являющемуся целью специального воспроизведения (воспроизведения с высокой скоростью), и, следовательно, можно избежать проблемы декодирования и обращения к изображению, которое принадлежит слою, расположенному выше, чем слой, который является целью специального воспроизведения. В случае, если слой, который является целью специального воспроизведения, такого как воспроизведение с N-кратной скоростью (N>2), является слоем низшего уровня 0, расположенным внизу, устройству декодирования изображений нет необходимости декодировать и обращаться к изображению, которое не является целью специального воспроизведения и в слоях 1, 2 и 3, расположенных выше слоя низшего уровня. Необходимо отметить, что каждое из изображений является кадром или секцией.
Фиг. 7 представляет собой блок-схему последовательности операций, иллюстрирующую процессы, в которых используется флаг и которые осуществляются устройством 1000 кодирования изображений в соответствии с настоящим вариантом осуществления.
Блок 1111 внешнего предсказания устройства 1000 кодирования изображений генерирует флаг, который указывает, должно ли добавляться ограничение на выбор опорного изображения, обращение к которому должно осуществляться для кодирования текущего кадра, подлежащего кодированию (Этап S20). Далее в случае, если флаг указывает на добавление ограничения, блок 1111 внешнего предсказания выбирает в качестве опорного изображения для текущего изображения то изображение, которое соответствует условию, ограниченному в соответствии с ограничением в соответствии с первым слоем, которому принадлежит текущее изображение (Этап S21). Далее устройство 1000 кодирования изображений кодирует текущее изображение с обращением к выбранному опорному изображению (Этап S22). Затем блок 1104 энтропийного кодирования устройства 1000 кодирования изображений включает данный флаг в кодированный поток, который является кодированным видеосигналом (Этап S23). Необходимо отметить, что блок 1111 внешнего предсказания служит в качестве блока генерирования флага, который генерирует флаг, и, в то же время, в качестве блока выбора, который выбирает опорное изображение в соответствии с настоящим вариантом осуществления. Кроме того, по меньшей мере, один структурный элемент, предусмотренный в устройстве 1000 кодирования изображений, служит в качестве блока кодирования, который кодирует текущее изображение, подлежащее кодированию. Кроме того, блок 1104 энтропийного кодирования служит в качестве блока вставки, который вставляет флаг в кодированный поток.
При этом в случае, если флаг указывает на добавление ограничения, изображение, которое соответствует условию, ограниченному в соответствии с первым слоем, которому принадлежит текущее изображение, выбирается в качестве опорного изображения. В частности, опорное изображение, обращение к которому осуществляется для кодирования текущего изображения, ограничивается в соответствии с первым слоем. В результате этого возможно уменьшение нагрузки по обработке при кодировании текущего изображения. Кроме того, поскольку флаг, который указывает, налагать ли ограничение для выбора опорного изображения, генерируется и включается в кодированный поток, устройство декодирования изображений легко может определять, наложено ли ограничение на выбор опорного изображения. В результате этого устройство декодирования изображений может надлежащим образом декодировать кодированный видеосигнал с меньшей нагрузкой по обработке.
Фиг. 8 представляет собой блок-схему последовательности операций, иллюстрирующую конкретные процессы, осуществляемые устройством 1000 кодирования изображений в соответствии с настоящим вариантом осуществления.
Сначала устройство 1000 кодирования изображений получает видеосигнал, подлежащий кодированию.
Далее устройство 1000 кодирования изображений разбивает на слои кадры, входящие в полученный видеосигнал (Этап S101). Затем устройство 1000 кодирования изображений кодирует кадры в соответствии с ограничением на основе структуры слоев кадров (Этап S102). Далее устройство 1000 кодирования изображений выдает кодированный поток, содержащий кодированные кадры, информацию слоя кадров и флаг (S103).
Фиг. 9 представляет собой блок-схему, иллюстрирующую устройство декодирования изображений в соответствии с одним вариантом осуществления настоящего изобретения.
Устройство 2000 декодирования изображений в соответствии с настоящим вариантом осуществления является устройством, которое надлежащим образом декодирует кодированный поток, генерируемый устройством 1000 кодирования изображений, и содержит: блок 2101 энтропийного декодирования; блок 2102 обратного квантования; блок 2103 обратного ортогонального преобразования; сумматор 2104; деблочный фильтр 2105; память 2106; блок 2107 внутреннего предсказания; блок 2108 внешнего предсказания; коммутатор 2109; и блок 2200 контроля памяти.
Блок 2101 энтропийного декодирования получает кодированный поток и выполняет энтропийное декодирование (декодирование переменной длины) по кодированному потоку. В частности, блок 2101 энтропийного декодирования генерирует квантованный блок коэффициентов, вектор движения, флаг и информацию слоя посредством выполнения энтропийного декодирования.
Блок 2102 обратного квантования выполняет обратное квантование по квантованному блоку коэффициентов, сформированному в результате энтропийного декодирования, выполняемого блоком 2101 энтропийного декодирования. Блок 2103 обратного ортогонального преобразования выполняет обратное ортогональное преобразование (обратное частотное преобразование), такое как обратное дискретное косинусное преобразование каждого из частотных коэффициентов, входящих в блок прошедших обратное квантование коэффициентов, посредством этого генерируя декодированное разностное изображение.
Сумматор 2104 получает предсказанное изображение с коммутатора 2109 и добавляет предсказанное изображение к декодируемому разностному изображению, генерируемому блоком 2103 обратного ортогонального преобразования, посредством этого генерируя локальное декодированное изображение (изображение реконфигурирования).
Деблочный фильтр 2105 устраняет явления блокирования декодированного изображения, генерированного сумматором 2104, сохраняет декодированное изображение в памяти 2106 и выдает декодированное изображение.
Блок 2107 внутреннего предсказания выполняет внутреннее предсказание по текущему блоку, подлежащему кодированию, с использованием декодированного изображения, генерированного сумматором 2104, посредством этого генерируя предсказанное изображение (внутреннее предсказанное изображение).
Блок 2108 внешнего предсказания в качестве опорного изображения обращается к изображению, хранящемуся в памяти 2106, и использует вектор движения, сформированный в результате энтропийного декодирования, выполняемого блоком 2101 энтропийного декодирования, посредством этого выполняя компенсацию движения по текущему блоку. Блок 2108 внешнего предсказания выполняет компенсацию движения, как описано выше; то есть, выполняет внешнее предсказание по текущему блоку, посредством этого генерируя предсказанное изображение (внешнее предсказанное изображение) текущего блока.
При этом блок 2108 внешнего предсказания налагает ограничение на выбор таким же образом, как и блок 1111 внешнего предсказания устройства 1000 кодирования изображений. То есть, блок 2108 внешнего предсказания обращается в качестве опорного кадра для текущего кадра, подлежащего декодированию, к кадру, который принадлежит второму слою, имеющемуся в области, которая ограничена в соответствии с первым слоем, которому принадлежит текущий кадр. В частности, блок 2108 внешнего предсказания запрещает обращение к кадру, который принадлежит вышележащему слою или находится на более высоком уровне, чем первый слой, и обращается в качестве опорного кадра к кадру, который принадлежит второму слою, расположенному в области, ограниченной первым слоем или слоем ниже первого слоя.
Кроме того, блок 2108 внешнего предсказания генерирует опорный список, который указывает один или более кадров, каждый из которых принадлежит первому слою или слою ниже первого слоя, отличных от всех остальных кадров, которые принадлежат своим соответствующим слоям, присутствующим выше, чем первый слой, из числа кадров, входящих в кодированный поток. Блок 2108 внешнего предсказания при обращении к опорному кадру выбирает опорный кадр из одного или более кадров, указанных в опорном списке.
Кроме того, блок 2108 внешнего предсказания получает флаг, описанный выше. При этом в случае, если флаг указывает добавление ограничения, блок 2108 внешнего предсказания выбирает в качестве опорного кадра для текущего кадра тот кадр, который удовлетворяет условию, ограниченному в соответствии с первым слоем, которому принадлежит текущий кадр. Например, блок 2108 внешнего предсказания выбирает опорный кадр с использованием служащего критерием кадра таким же образом, как и блок 1111 внешнего предсказания устройства 1000 кодирования изображений. Затем блок 2108 внешнего предсказания декодирует текущий кадр с обращением к выбранному опорному кадру.
В случае, если выполнено кодирование с внутренним предсказанием по текущему блоку, коммутатор 2109 выдает предсказанное изображение (внутреннее предсказанное изображение), генерируемое блоком 2107 внутреннего предсказания, в сумматор 2104. При этом в случае, если выполнено кодирование с внешним предсказанием по текущему блоку, коммутатор 2109 выдает предсказанное изображение (внешнее предсказанное изображение), генерируемое блоком 2108 внешнего предсказания, в сумматор 2104.
Блок 2200 контроля памяти получает из блока 2101 энтропийного декодирования информацию слоя каждого из кадров и управляет каждым из кадров, хранящихся в памяти 2106, на основе слоя кадра, указанного в информации слоя, то есть, на основе структуры слоя таким же образом, как и блок 1200 контроля памяти устройства 1000 кодирования изображений.
Фиг. 10 представляет собой блок-схему последовательности операций, иллюстрирующую процессы, осуществляемые устройством 2000 декодирования изображений в соответствии с настоящим вариантом осуществления.
Блок 2108 внешнего предсказания устройства 2000 декодирования изображений обращается в качестве опорного изображения для текущего изображения, подлежащего декодированию, к изображению, которое принадлежит второму слою в области, ограниченной в соответствии с первым слоем, которому принадлежит текущее изображение (Этап S30). Затем устройство 2000 декодирования изображений декодирует текущее изображение на основе опорного изображения (Этап S31). Необходимо отметить, что блок 2108 внешнего предсказания служит в качестве опорного блока (второго опорного блока), который обращается к опорному изображению в соответствии с настоящим вариантом осуществления. Кроме того, по меньшей мере, один или более структурных элементов, предусмотренных в устройстве 2000 декодирования изображений, служат в качестве блоков кодирования, которые декодируют текущее изображение. Кроме того, изображением является кадр, секция и т.д.
Например, блок 2108 внешнего предсказания генерирует опорный список, который указывает один или более кадров, каждый из которых принадлежит слою, имеющемуся на том же уровне, что и первый слой, или на более низком уровне, отличных от всех остальных кадров, которые принадлежат своим соответствующим слоям, присутствующим выше, чем первый слой, из числа кадров, входящих в кодированный поток. Затем блок 2108 внешнего предсказания при обращении к опорному кадру на Этапе S30 выбирает опорный кадр из одного или более кадров, указанных в опорном списке.
При этом слой, которому принадлежит опорное изображение, к которому осуществляется обращение для декодирования текущего изображения, находится в области, ограниченной в соответствии с первым слоем, которому принадлежит текущее изображение. Таким образом, поскольку опорное изображение, к которому осуществляется обращение для декодирования текущего изображения текущего изображения, ограничено в соответствии с первым слоем, возможно снижение нагрузки по обработке при декодировании.
Фиг. 11 представляет собой блок-схему последовательности операций, иллюстрирующую процессы, осуществляемые устройством 2000 декодирования изображений в соответствии с настоящим вариантом осуществления.
Блок 2108 внешнего предсказания устройства 2000 декодирования изображений получает из кодированного потока флаг, который указывает, налагать ли ограничение на выбор опорного изображения, к которому должно осуществляться обращение для декодирования текущего изображения, являющегося одним из изображений, входящих в кодированный поток (Этап S40). Далее, в случае, если флаг указывает, что ограничение наложено, блок 2108 внешнего предсказания выбирает в качестве опорного изображения для текущего изображения то изображение, которое удовлетворяет условию, ограниченному в соответствии с первым слоем, которому принадлежит текущее изображение (Этап S41). Затем устройство 2000 декодирования изображений декодирует текущее изображение на основе выбранного опорного кадра (Этап S42). Необходимо отметить, что блок 2108 внешнего предсказания служит в качестве блока получения флага, который получает флаг, и, в то же время, в качестве блока выбора, который выбирает опорное изображение.
При этом в случае, если флаг указывает, что ограничение наложено, изображение, которое соответствует условию, ограниченному в соответствии с первым слоем, которому принадлежит текущее изображение, выбирается в качестве опорного изображения. В частности, опорное изображение, обращение к которому осуществляется для декодирования текущего изображения, ограничивается в соответствии с первым слоем. В результате этого возможно уменьшение нагрузки по обработке при декодировании текущего изображения.
Фиг. 12 представляет собой блок-схему последовательности операций, иллюстрирующую способ управления памятью в соответствии с настоящим вариантом осуществления.
Блок 2200 контроля памяти устройства 2000 декодирования изображений сохраняет целевое изображение, подлежащее сохранению, из числа изображений, входящих в кодированный поток, в области памяти 2106, которая ограничена емкостью слоя, являющейся емкостью слоя, выделенной слою, которому принадлежит целевое изображение (Этап S50). В частности, блок 2200 контроля памяти выделяет в качестве емкости слоя часть имеющейся емкости памяти в памяти 2106 для каждого из слоев. Необходимо отметить, что в соответствии с настоящим вариантом осуществления блок 2200 контроля памяти служит в качестве устройства управления памятью и содержит блок контроля сохранения для сохранения целевого изображения для описанного выше хранения.
Например, существует случай, в котором долговременное опорное изображение, к которому осуществляется обращение в течение длительного времени, принадлежит другому слою, при этом долговременное опорное изображение сохраняется в другой области. В таком случае, когда целевое изображение сохраняется в другой области, долговременное опорное изображение в некоторых случаях может удаляться из памяти 2106. Поэтому вновь необходимо выполнять такую обработку, как декодирование долговременного опорного изображения, с целью обращения к долговременному опорному изображению после удаления долговременного опорного изображения из памяти 2106. На основании вышеизложенного, при использовании способа управления памятью в соответствии с настоящим вариантом осуществления ввиду того, что подлежащее сохранению целевое изображение сохраняется в некоторой области памяти, которая ограничена емкостью слоя, которая выделяется слою, которому принадлежит целевое изображение, и ограничена емкостью слоя, возможно предотвращение удаления долговременного опорного изображения из памяти 2106. Иными словами, можно без сбоев сохранять необходимое опорное изображение в памяти 2106. В результате этого возможно исключение такого избыточного процесса, как повторное декодирование долговременного опорного изображения. Кроме того, возможно снижение нагрузки по обработке для успешной подачи команды управления памятью для выдачи команды на удаление ненужного изображения, чтобы без сбоев сохранять необходимое опорное изображение в памяти 2106.
Необходимо отметить, что в случае, если при сохранении целевого изображения в вышеописанной области не осталось емкости для сохранения целевого изображения, блок 2200 контроля памяти удаляет из указанной области имеющееся изображение, которое сохранялось раньше всего из одного или более имеющихся изображений, уже сохраненных в указанной области, чтобы сохранялся целевой кадр.
В соответствии с настоящим вариантом осуществления, слой, которому принадлежит опорное изображение, являющееся изображением, к которому должно осуществляться обращение для кодирования или декодирования текущего изображения, подлежащего обработке, из множества изображений, входящих в видеосигнал (кодированный поток), ограничивается слоем, находящимся на том же уровне, которому принадлежит текущее изображение, или на более низком уровне. В таком случае при выделении емкости слоя для каждого из слоев блок 2200 управления памятью выделяет слою 0 низшего уровня, расположенному в нижней части слоев, емкость слоя, большую, чем емкость слоя, выделяемая слою высшего уровня, расположенному выше, чем слой 0 низшего уровня.
При этом ввиду того, что слой, которому принадлежит опорное изображение, ограничен слоем на том же уровне, которому принадлежит текущее изображение, или на более низком уровне, весьма вероятно, что обращение к изображению, которое принадлежит слою 0 низшего уровня, должно осуществляться в течение более длительного интервала времени, чем к изображению, которое принадлежит слою высшего уровня. Ввиду вышеизложенного, емкость слоя, большая, чем емкость слоя, выделяемая слою высшего уровня, выделяется слою 0 низшего уровня с использованием способа управления памятью в соответствии с настоящим вариантом осуществления и, следовательно, возможно хранение в памяти изображения, которое принадлежит слою 0 низшего уровня, в течение длительного времени. В результате этого, при обращении к изображению, которое принадлежит слою 0 низшего уровня, возможно предотвращение такой ситуации, в которой изображение удаляется из памяти 2106 и, следовательно, обращение к нему не может осуществляться.
Кроме того, блок 2200 контроля памяти отмечает атрибут на изображении, который принадлежит слою, расположенному выше слоя, которому принадлежит текущий кадр, подлежащий декодированию, из изображений, хранящихся в памяти 2106. Например, блок 2200 контроля памяти отмечает атрибут, который указывает, что изображение не используется для обращения.
При этом ввиду того, что атрибут отмечается на изображении, легко можно идентифицировать ненужное изображение, которое не предполагается использовать для обращения, и удалить данное изображение из памяти 2106 до удаления остальных изображений. В результате этого можно эффективно использовать емкость памяти 2106.
Фиг. 13 представляет собой блок-схему последовательности операций, иллюстрирующую конкретные процессы, осуществляемые устройством 2000 декодирования изображений в соответствии с настоящим вариантом осуществления.
Сначала устройство 2000 декодирования изображений получает флаг, состоящий из одного бита, из кодированного потока и определяет, указывает ли данный флаг на 1 (Этап S201).
В случае, если устройство 2000 декодирования изображений определяет, что флаг не указывает на 1 («Нет» на Этапе S201), устройство 2000 декодирования изображений получает текущий кадр, подлежащий декодированию, который соответствует данному флагу (Этап S202) и декодирует текущий кадр с помощью общего способа (например, внешнего предсказания или внутреннего предсказания согласно стандарту Н.264) (Этап S203).
С другой стороны, в случае, если устройство 2000 декодирования изображений определяет, что флаг указывает на 1 («Да» на Этапе S201), устройство 2000 декодирования изображений получает текущий кадр, подлежащий декодированию, который соответствует данному флагу (Этап S204) и определяет, является ли текущий кадр кадром, подлежащим декодированию с помощью внешнего предсказания (Этап S205).
В случае, если устройство 2000 декодирования изображений определяет, что текущий кадр не является кадром, подлежащим декодированию с помощью внешнего предсказания («Нет» на Этапе S205), устройство 2000 декодирования изображений декодирует текущий кадр с помощью внутреннего предсказания (Этап S206).
С другой стороны, в случае, если устройство 2000 декодирования изображений определяет, что текущий кадр является кадром, подлежащим декодированию с помощью внешнего предсказания («Да» на Этапе S205), устройство 2000 декодирования изображений получает информацию слоя текущего кадра (Этап S207). Затем блок 2108 внешнего предсказания устройства 2000 декодирования изображений идентифицирует кадр, который принадлежит слою на более высоком уровне, чем слой, указанный в информации слоя (Этап S208). Далее блок 2108 внешнего предсказания создает опорный список (L0, L1) текущего кадра с использованием кадра, отличного от идентифицированного кадра из числа кадров, хранящихся в памяти 2106 (Этап S209).
Кроме того, блок 2200 контроля памяти устройства 2000 декодирования изображений отмечает атрибут, который означает «не используется для обращения» на кадре, идентифицированном на Этапе S208 (Этап S210). Затем блок 2108 внешнего предсказания декодирует текущий кадр с помощью внешнего предсказания с использованием опорного кадра, указанного в опорном списке, созданном на Этапе S209 (Этап S211).
На Этапе S210 блок 2200 контроля памяти отмечает атрибут, который означает «не используется для обращения» на всех опорных кадрах, которые принадлежат слою на более высоком уровне, чем слой, указанный в информации слоя, из числа кадров (опорных кадров), находящихся в памяти 2106. Это позволяет устройству 2000 декодирования изображений заранее знать, что к кодированному потоку присоединяется ограничивающее условие, что не допускается обращение к кадру, который принадлежит слою на более высоком уровне, чем слой текущего кадра.
Как описано выше, в соответствии с настоящим вариантом осуществления атрибут «не используется для обращения» может отмечаться на опорном кадре, который, безусловно, не должен использоваться для обращения, с помощью третьего способа (способа, основанного на структуре слоев), отличного от общего управления FIFO и адаптивного контроля памяти с помощью ММСО. Это позволяет при выдаче (отображении) опорного кадра автоматически удалять опорный кадр из памяти 210.
Кроме того, устройство 2000 декодирования изображений при создании опорного списка на Этапе S209 (процесс сортировки во время инициализации опорного списка) генерирует или обновляет опорный список текущего кадра, подлежащего декодированию (или текущей секции, подлежащей декодированию), за исключением опорного кадра в слое более высокого уровня, чем слой текущего кадра, из опорного списка. Это позволяет упростить процесс создания опорного списка.
МОДИФИКАЦИЯ
Необходимо отметить, что в настоящем варианте осуществления может выполняться обращение к кадру и управление памятью, показанные на фиг. 14, фиг. 15 и фиг. 16.
Фиг. 14 представляет собой схему, на которой показана опорная структура в соответствии с настоящей модификацией. Необходимо отметить, что на фиг. 14 алфавитный знак, цифровой знак и цифровой знак в скобках, добавленные к кадру, означают тип кадра, порядок отображения кадра и порядок кодирования кадра соответственно. I0(0) означает тип «I» кадра, порядок «0» отображения кадра и порядок «0» кодирования кадра. Br2(3) означает тип «В» кадра, порядок «2» отображения кадра и порядок «3» кодирования кадра.
Например, при использовании опорной структуры в соответствии с настоящей модификацией обращение к предыдущему кадру в порядке отображения осуществляется при кодировании или декодировании каждого из кадров Bf8(1) и Bf16(9), которые являются В-кадрами, принадлежащими слою 0 на низшем уровне, как показано сплошными стрелками, каждая из которых обозначена f на фиг. 14. Кроме того, при кодировании или декодировании кадра, который принадлежит слою на более высоком уровне, чем слой 0, и на более низком уровне, чем слой 3 высшего уровня, такого как кадр Br2(3), который принадлежит слою 2, обращение к следующему кадру в порядке отображения осуществляется, как показано сплошными стрелками, каждая из которых обозначена r на фиг. 14.
Как описано выше, устройство 1000 кодирования изображений и устройство 2000 декодирования изображений в соответствии с настоящей модификацией для того, чтобы кодировать или декодировать В-кадр, могут обращаться в качестве опорного кадра только к кадру, имеющемуся в одном направлении (назад или вперед) по отношению к В-кадру в порядке отображения. В этом случае устройство 1000 кодирования изображений может включать в кодированный поток однонаправленный флаг, который указывает, ограничено ли обращение лишь одним направлением. При этом однонаправленный флаг указывает: допускается ли обращение только к предыдущим кадрам, а не к следующим кадрам в слое 0; и допускается ли обращение только к следующим кадрам, а не к предыдущим кадрам в слоях 1 и 2. Как описано выше, однонаправленный флаг указывает, наложено ли ограничение на обращение с точки зрения структуры слоев. Кроме того, устройство 1000 кодирования изображений включает в кодированный поток однонаправленный флаг для каждого заданного блока, такого как последовательность в кодированном потоке. Устройство 2000 декодирования изображений получает однонаправленный флаг, включенный в кодированный поток, и декодирует текущий кадр, подлежащий декодированию, с обращением лишь к кадру, имеющемуся в одном направлении (назад или вперед), в соответствии со слоем текущего кадра в случае, если флаг одного направления указывает на ограничение обращения.
Необходимо отметить, что устройство 2000 декодирования изображений даже в случае, если однонаправленный флаг указывает ограничение обращения, может обращаться к кадру в направлении, отличном от указанного одного направления, как показано пунктирными стрелками, обозначенными opt, что означает «вариант» на фиг. 14, в случае, если может использоваться кадр в направлении, отличном от указанного одного направления. Кроме того, устройство 1000 кодирования изображений может указывать кадр в указанном одном направлении с помощью типа кадра. В этом случае устройство 1000 кодирования изображений включает в кодированный поток тип кадра, а устройство 2000 декодирования изображений обращается в качестве опорного кадра к кадру в указанном одном направлении на основе типа кадра, включенного в кодированный поток. Кроме того, в случае, если в кодированный поток включается информация слоя, устройство 2000 декодирования изображений освобождает память 2106 на основе информации слоя.
Фиг. 15 представляет собой схему, на которой показан пример способа управления памятью в соответствии с настоящей модификацией.
Устройство 2000 декодирования изображений при выполнении воспроизведения с 1-кратной скоростью (нормального воспроизведения) по кодированному потоку, имеющему опорную структуру, изображенную на фиг. 14, декодирует кадр, который принадлежит каждому из слоев 0, 1, 2 и 3. В этом случае после декодирования кадров, которые принадлежат своим соответствующим слоям 0, 1 и 2, устройство 2000 декодирования изображений сохраняет эти кадры в памяти 2106 в качестве опорных кадров. С другой стороны, даже после декодирования кадров, которые принадлежат слою 3, устройство 2000 декодирования изображений не сохраняет эти кадры в памяти 2106 в качестве опорных кадров. В противном случае, даже когда кадры, которые принадлежат слою 3, сохраняются в памяти 2106, блок 2200 контроля памяти отмечает атрибут «не используется для обращения» на этих кадрах после сохранения этих кадров.
Фиг. 16 представляет собой схему, на которой показан другой пример способа управления памятью в соответствии с настоящей модификацией.
Устройство 2000 декодирования изображений при выполнении ускоренного воспроизведения вперед кодированного потока, имеющего опорную структуру, показанную на фиг. 14, декодирует кадр, который принадлежит каждому из слоев 0, 1 и 2, за исключением слоя 3. В частности, декодирование или воспроизведение кадров Br1(4), Br3(5), Br5(7) и Br7(8) не производится. В этом случае после декодирования кадров, которые принадлежат своим соответствующим слоям 0 и 1, устройство 2000 декодирования изображений сохраняет эти кадры в памяти 2106 в качестве опорных кадров. С другой стороны, даже после декодирования кадров, которые принадлежат слою 2, устройство 2000 декодирования изображений не сохраняет эти кадры в памяти 2106 в качестве опорных кадров. В противном случае, даже когда кадры, которые принадлежат слою 2, сохраняются в памяти 2106, блок 2200 контроля памяти отмечает атрибут «не используется для обращения» на этих кадрах после сохранения этих кадров.
Возможно также снижение нагрузки по обработке при кодировании или декодировании с использованием способа обращения к кадру и способа управления памятью в соответствии с настоящей модификацией.
ВАРИАНТ ОСУЩЕСТВЛЕНИЯ 2
Обработка, описанная в вышеупомянутом Варианте осуществления, может быть просто реализована в независимой вычислительной системе путем записи на носителе информации программы для реализации конфигураций способа кодирования видео (способа кодирования изображений) и способа декодирования видео (способа декодирования изображений), описанных в вышеупомянутом Варианте осуществления. Носителями информации могут являться любые носители информации при условии, что на них может быть записана программа, например, магнитный диск, оптический диск, магнито-оптический диск, карта с интегральной схемой и полупроводниковое запоминающее устройство.
Ниже описываются применения способа кодирования видео (способа кодирования изображений) и способа декодирования видео (способа декодирования изображений), описанных в вышеупомянутом Варианте осуществления, и системы, в которых они используются. Система отличается тем, что включает в себя устройство кодирования и декодирования изображений, которое содержит устройство кодирования изображений, использующее способ кодирования изображений, и устройство декодирования изображений, использующее способ декодирования изображений. В отдельных случаях могут соответствующим образом использоваться и иные конфигурации системы.
Фиг. 17 иллюстрирует общую конфигурацию системы ех100 поставки контента для реализации услуг распределения контента. Зона предоставления услуг связи делится на соты требуемого размера, при этом в каждую из сот помещены базовые станции ех106, ех107, ех108, ех109 и ех110, которые являются стационарными беспроводными станциями.
Система ех100 поставки контента соединена с устройствами, такими как компьютер ех111, персональный цифровой помощник (PDA) ех112, камера ех113, сотовый телефон ех114 и игровая вычислительная машина ех115 с помощью Интернета ех101, поставщика ех102 услуг Интернета и сети ех104 телефонной связи, а также базовых станций ех106 - ех110 соответственно.
Однако конфигурация системы ех100 поставки контента не ограничивается конфигурацией, показанной на фиг. 17, и допустима комбинация, в которой соединены любые из элементов. Кроме того, любое устройство может быть непосредственно соединено скорее с сетью ех104 телефонной связи, чем через базовые станции ех106-ех110, которые являются стационарными беспроводными станциями. Кроме того, устройства могут быть связаны друг с другом через ближнюю беспроводную связь и пр.
Камера ех113, такая как цифровая видеокамера, выполнена с возможностью записи видео. Камера ех116, такая как цифровая видеокамера, выполнена с возможностью записи как статических изображений, так и видео. Кроме того, сотовым телефоном ех114 может быть сотовый телефон, который соответствует любым из таких стандартов, как Глобальная система мобильной связи (GSM), Многостанционный доступ с кодовым разделением (CDMA), Широкополосный многостанционный доступ с кодовым разделением (W-CDMA), Долгосрочное развитие (LTE) и Высокоскоростная пакетная передача данных (HSPA). В соответствии с другим вариантом, сотовым телефоном ех114 может быть Персональный миниатюрный радиотелефон (PHS).
В системе ех100 поставки контента потоковый сервер ех103 соединен с камерой ех113 и пр. через сеть ех104 телефонной связи и базовую станцию ех109, что обеспечивает распределение изображений передачи в прямом эфире и пр. При таком распределении контент (например, видео музыкальной передачи в прямом эфире), который записывается пользователем, применяющим камеру ех113, кодируется, как описано выше в каждом из Вариантов осуществления (это означает, что камера ех113 служит в качестве устройства кодирования изображений в соответствии с настоящим изобретением), и кодированный контент передается на потоковый сервер ех103. С другой стороны, потоковый сервер ех103 осуществляет распределение потока передаваемых данных контента клиентам по их запросам. К клиентам относятся компьютер ех111, PDA ех112, камера ех113, сотовый телефон ех114 и игровая вычислительная машина ех115, которые выполнены с возможностью декодирования вышеупомянутых кодированных данных. Каждое из устройств, которое приняло и распределило данные, декодирует и воспроизводит кодированные данные (это означает, что каждое из устройств служит в качестве устройства декодирования изображений в соответствии с настоящим изобретением).
Записанные данные могут кодироваться камерой ех113 или потоковым сервером ех103, который передает данные, либо процесс кодирования может быть разделен между камерой ех113 и потоковым сервером ех103. Аналогичным образом, распределенные данные могут декодироваться клиентами или потоковым сервером ех103, либо процесс декодирования может быть разделен между клиентами и потоковым сервером ех103. Кроме того, данные статических изображений и видео, записываемых не только камерой ех113, но и камерой ех116, могут передаваться на потоковый сервер ех103 через компьютер ех111. Процессы кодирования могут выполняться камерой ех116, компьютером ех111 или потоковым сервером ех103 либо осуществляться ими совместно.
Кроме того, процессы кодирования и декодирования могут выполняться большой интегральной схемой (БИС) ех500, как правило, входящей и в компьютер ех111, и в устройства. БИС ех500 может быть выполнена в виде одного кристалла или множества кристаллов. Программное обеспечение для кодирования и декодирования видео может быть включено в носитель информации какого-либо типа (например, постоянное запоминающее устройство на компакт-диске (CD-ROM), гибкий диск, жесткий диск), который считывается компьютером ех111 и пр., при этом процессы кодирования и декодирования могут выполняться с помощью данного программного обеспечения. Кроме того, в случае, если сотовый телефон ех114 оснащен камерой, могут передаваться видеоданные, получаемые камерой. Видеоданные представляют собой данные, кодированные с помощью БИС ех500, входящей в сотовый телефон ех114.
Кроме того, потоковый сервер ех103 может состоять из серверов и компьютеров и может децентрализовывать данные и обрабатывать децентрализованные данные, регистрировать или распределять данные.
Как описано выше, клиенты могут принимать и воспроизводить кодированные данные в системе ех100 поставки контента. Иными словами, клиенты могут принимать и декодировать информацию, передаваемую пользователем, и воспроизводить декодированные данные в реальном времени в системе ех100 поставки контента таким образом, что пользователь, не имеющий каких-либо определенных прав и оборудования, может реализовывать персональное широковещание.
Помимо примера системы ех100 поставки контента, по меньшей мере, одно из устройства кодирования видео (устройства кодирования изображений) и устройства декодирования видео (устройства декодирования изображений), описанных в каждом из Вариантов осуществления, может быть реализовано в системе ех200 цифрового вещания, показанной на фиг. 18. В частности, широковещательная радиостанция ех201 передает или транслирует посредством радиоволн на вещательный спутник ех202 мультиплексированные данные, полученные мультиплексированием аудиоданных и прочих данных в видеоданные. Видеоданными являются данные, кодированные с помощью способа кодирования видео, описанного в вышеупомянутом Варианте осуществления (иными словами, данные, кодированные с помощью устройства кодирования изображений в соответствии с настоящим изобретением). После приема мультиплексированных данных вещательный спутник ех202 передает радиоволны для вещания. Затем домашняя антенна ех204 с функцией приема спутникового вещания принимает радиоволны. Затем устройство, такое как телевизор (приемное устройство) ех300 и телевизионная абонентская приставка (STB) ех217, декодирует принятые мультиплексированные данные и воспроизводит декодированные данные (это означает, что данное устройство служит в качестве устройства декодирования изображений в соответствии с настоящим изобретением).
Кроме того, устройство ех218 считывания/записи, которое (i) считывает и декодирует мультиплексированные данные, записанные на носитель информации ех215, такой как цифровой видеодиск (DVD) или Blu-Ray-диск (BD), или (i) кодирует видеосигналы в носителе информации ех215, а в некоторых случаях записывает данные, полученные объединением аудиосигнала и кодированных данных, может включать в себя устройство декодирования видео или устройство кодирования видео, как показано в вышеупомянутом Варианте осуществления. В этом случае воспроизведенные видеосигналы отображаются на мониторе ех219 и могут воспроизводиться другим устройством или системой с помощью носителя информации ех215, на котором записаны мультиплексированные данные. Можно также реализовать устройство декодирования видео в телевизионной абонентской приставке ех217, соединенной с кабелем ех203 для кабельного телевизора или с антенной ех204 для спутникового и/или наземного вещания, чтобы отображать видеосигналы на мониторе ех219 телевизора ех300. Устройство декодирования видео может быть реализовано не в телевизионной абонентской приставке, а в телевизоре ех300.
Фиг. 19 иллюстрирует телевизор (приемное устройство) ех300, в котором используются способ кодирования видео и способ декодирования видео, описанные в вышеупомянутом Варианте осуществления. Телевизор ех300 содержит: тюнер ех301, который получает или выдает мультиплексированные данные, получаемые путем объединения аудиоданных и видеоданных, через антенну ех204 или кабель ех203 и т.д. и который принимает широковещательную передачу; блок ех302 модуляции/демодуляции, который демодулирует принимаемые мультиплексированные данные или модулирует данные в мультиплексированные данные, подлежащие выдаче вовне; и блок ех303 мультиплексирования/демультиплексирования, который демультиплексирует модулированные мультиплексированные данные в видеоданные и аудиоданные либо мультиплексирует видеоданные и аудиоданные, кодированные блоком ех306 обработки сигналов, в данные.
Телевизор ех300 дополнительно содержит: блок ех306 обработки сигналов, содержащий блок ех304 обработки аудиосигналов и блок ех305 обработки видеосигналов (служащие в качестве устройства кодирования изображений и устройства декодирования изображений в соответствии с настоящим изобретением), которые декодируют аудиоданные и видеоданные и кодируют аудиоданные и видеоданные соответственно; громкоговоритель ех307, который выдает декодированный аудиосигнал; и выходной блок ех309, содержащий блок отображения ех308, который отображает декодированный видеосигнал, например, дисплей. Кроме того, телевизор ех300 содержит интерфейсный блок ех317, содержащий блок ех312 ввода действий, который принимает вводимые пользователем действия. Кроме того, телевизор ех300 содержит блок ех310 управления, который осуществляет общее управление каждым составляющим элементом телевизора ех300, и блок ех311 подачи электропитания, который подает электропитание в каждый из элементов. Помимо блока ех312 ввода, интерфейсный блок ех317 может содержать: мост ех313, который соединяется с внешним устройством, таким как устройство ех218 считывания/записи; блок ех314 гнезд для обеспечения подключения носителя ех216 информации, такого как карта памяти SD; привод ех315, подключаемый к внешнему носителю информации, такому как жесткий диск; и модем ех316, подключаемый к сети телефонной связи. При этом носитель ех216 информации может электрически записывать информацию с помощью энергонезависимого/энергозависимого полупроводникового запоминающего элемента для хранения. Составляющие элементы телевизора ех300 соединены друг с другом с помощью синхронной шины.
Сначала описывается конфигурация, в которой телевизор ех300 декодирует мультиплексированные данные, полученные извне с помощью антенны ех204 и пр., и воспроизводит декодированные данные. В телевизоре ех300 в результате действия пользователя с пульта дистанционного управления ех220 и пр. блок ех303 мультиплексирования/демультиплексирования демультиплексирует мультиплексированные данные, демодулированные блоком ех302 модуляции/демодуляции под управлением блока ех310 управления, содержащим центральный процессор (ЦП). Кроме того, блок ех304 обработки аудиосигналов декодирует демультиплексированные аудиоданные, а блок ех305 обработки видеосигналов декодирует демультиплексированные видеоданные с помощью способа декодирования, описанного в вышеупомянутом Варианте осуществления, в телевизоре ех300. Выходной блок ех309 выдает вовне декодированный видеосигнал и аудиосигнал соответственно. В случае, если выходной блок ех309 выдает вовне декодированный видеосигнал и аудиосигнал, эти сигналы могут временно храниться в буферах ех318 и ех319 и пр. таким образом, что эти сигналы воспроизводятся синхронно друг с другом. Кроме того, телевизор ех300 может считывать мультиплексированные данные не посредством широковещательной передачи и пр., а с носителей информации ех215 и ех216, таких как магнитный диск, оптический диск и карта памяти SD. Далее описывается конфигурация, в которой телевизор ех300 кодирует аудиосигнал и видеосигнал и передает данные вовне или записывает данные на носитель информации. В телевизоре ех300 в результате действия пользователя с пульта дистанционного управления ех220 и пр. блок ех304 обработки аудиосигналов кодирует аудиосигнал, а блок ех305 обработки видеосигналов кодирует видеосигнал под управлением блока ех310 управления с помощью способа кодирования, описанного в вышеупомянутом Варианте осуществления. Блок ех303 мультиплексирования/демультиплексирования мультиплексирует кодированный видеосигнал и аудиосигнал и выдает результирующие сигналы вовне. В случае, если блок ех303 мультиплексирования/демультиплексирования мультиплексирует видеосигнал и аудиосигнал, эти сигналы могут временно храниться в буферах ех320 и ех321 и пр. таким образом, что эти сигналы воспроизводятся синхронно друг с другом. При этом может быть множество буферов ех318, ех319, ех320 и ех321, как показано на чертеже, либо в телевизоре ех300 может совместно использоваться, по меньшей мере, один буфер. Кроме того, данные могут храниться в буфере таким образом, что можно избежать переполнения и назаполнения системы между блоком ех302 модуляции/демодуляции и блоком ех303 мультиплексирования/демультиплексирования, например.
Кроме того, телевизор ех300 может включать в себя конфигурацию для приема входных аудио/видео (AV) сигналов с микрофона или камеры, отличную от конфигурации для получения аудиоданных и видеоданных из широковещательной передачи или с носителя информации, и может кодировать полученные данные. Хотя телевизор ех300 может кодировать, мультиплексировать и выдавать выходные данные в описании, он может быть выполнен с возможностью только приема, декодирования и выдачи выходных данных, а не кодирования, мультиплексирования и выдачи выходных данных.
Кроме того, в случае, если устройство ех218 считывания/записи считывает мультиплексированные данные с носителя информации или записывает на него, один из телевизора ех300 и устройства ех218 считывания/записи может декодировать или кодировать мультиплексированные данные, при этом телевизор ех300 и устройство ех218 считывания/записи могут совместно осуществлять декодирование или кодирование.
Например, на фиг. 20 показана конфигурация блока ех400 воспроизведения/записи информации в тех случаях, когда данные считываются с оптического диска или записываются на него. Блок ех400 воспроизведения/записи информации включает в себя составляющие элементы ех401, ех402, ех403, ех404, ех405, ех406 и ех407, описываемые ниже. Оптическая головка ех401 высвечивает лазерное пятно на рабочей поверхности носителя ех215 информации, то есть, оптическом диске для записи информации и обнаруживает отраженное излучение от рабочей поверхности носителя ех215 информации для считывания информации. Блок ех402 модуляционной записи осуществляет электрическое возбуждение полупроводникового лазера, входящего в оптическую головку ех401, и модулирует лазерное излучение в соответствии с записываемыми данными. Блок ех403 демодуляции воспроизведения усиливает сигнал воспроизведения, получаемый путем электрического обнаружения отраженного излучения от рабочей поверхности с помощью фотоприемника, входящего в оптическую головку ех401, и демодулирует сигнал воспроизведения путем выделения составляющей сигнала, записываемой на носитель ех215 информации для воспроизведения необходимой информации. Буфер ех404 временно хранит информацию, подлежащую записи на носитель ех215 информации, и информацию, воспроизводимую с носителя ех215 информации. Электродвигатель ех405 диска вращает носитель ех215 информации. Блок ех406 следящего управления перемещает оптическую головку ех401 на заданную информационную дорожку в процессе управления приводом вращения электродвигателя ех405 диска, чтобы следовать за лазерным пятном. Блок ех407 управления системой осуществляет общее управление блоком ех400 воспроизведения/записи информации. Процессы записи и считывания могут быть реализованы блоком ех407 управления системой, использующим различную информацию, хранящуюся в буфере ех404, и при необходимости генерирующим и добавляющим новую информацию, а также блоком ех402 модуляционной записи, блоком ех403 демодуляции воспроизведения и блоком ех406 следящего управления, которые записывают и воспроизводят информацию с помощью оптической головки ех401 в процессе их согласованного управления. Блок ех407 управления системой содержит, например, микропроцессор и выполняет обработку путем обеспечения выполнения компьютером программы считывания и записи.
Хотя согласно описанию оптическая головка ех401 высвечивает лазерное пятно, она может осуществлять запись с высокой плотностью с помощью ближнепольного излучения.
На фиг. 21 показан носитель ех215 информации, которым является оптический диск. На рабочей поверхности носителя ех215 информации спирально выполнены направляющие канавки, при этом информационная дорожка ех230 заранее записывает адресную информацию, указывающую абсолютное положение на диске в соответствии с изменением формы направляющих канавок. Адресная информация включает в себя информацию для определения положений блоков ех231 записей, которые являются единицей записи данных. Воспроизведение информационной дорожки ех230 и считывание адресной информации в устройстве, которое записывает и воспроизводит данные, может приводить к определению положения блоков записей. Кроме того, носитель ех215 информации включает в себя зону ех233 записи данных, внутреннюю кольцевую зону ех232 и внешнюю кольцевую зону ех234. Зона ех233 записи данных является зоной, используемой для записи пользовательских данных. Внутренняя кольцевая зона ех232 и внешняя кольцевая зона ех234, находящиеся внутри зоны ех233 записи данных и за ее пределами соответственно, предназначены для специального использования за исключением записи пользовательских данных. Блок ех400 воспроизведения/записи информации считывает кодированные аудиоданные, кодированные видеоданные или мультиплексированные данные, получаемые путем мультиплексирования кодированных аудиоданные и видеоданных с зоны ех233 записи данных носителя ех215 информации и записывает в нее.
Хотя в качестве примера в данном описании описан оптический диск, имеющий слой, такой как DVD и BD, оптический диск этим не ограничивается и может представлять собой оптический диск, имеющий многослойную структуру и выполненный с возможностью осуществления записи на часть, отличную от поверхности. Кроме того, оптический диск может иметь структуру для многомерной записи/воспроизведения, например, для записи информации с помощью излучения различных цветов с различными длинами волн в одной и той же части оптического диска и для записи информации, имеющей различные слои, под различными углами.
Кроме того, автомобиль ех210, имеющий антенну ех205, может принимать данные со спутника ех202 и пр. и воспроизводить видео на устройстве отображения, таком как автомобильная навигационная система ех211, установленном в автомобиле ех210, в системе ех200 цифрового вещания. При этом конфигурация автомобильной навигационной системы ех211 является конфигурацией, например, содержащей приемный блок GPS из конфигурации, показанной на фиг. 19. То же самое относится к конфигурации компьютера ех211, сотового телефона ех114 и пр.
На фиг. 22А показан сотовый телефон ех114, использующий способ кодирования видео и способ декодирования видео, описанные в вышеупомянутом Варианте осуществления. Сотовый телефон ех114 содержит: антенну ех350 для передачи и приема радиоволн с помощью базовой станции ех110; блок ех365 камеры, выполненный с возможностью записи движущихся и статических изображений; и блок ех358 отображения, такой как жидкокристаллический дисплей, для отображения данных, таких как декодированное видео, записанное блоком ех365 камеры или принятое антенной ех350. Сотовый телефон ех114 дополнительно содержит: блок основного корпуса, содержащий набор клавиш ех366 управления; блок ех357 аудиовыхода, такой как громкоговоритель для вывода звука; блок ех356 аудиовхода, такой как микрофон для ввода звука; блок ех367 памяти для хранения записанного видео или статических изображений, записанного звука, кодированных или декодированных данных принятого видео, статических изображений, электронной почты и пр.; и блок ех364 гнезд, являющийся интерфейсным блоком для носителя информации, который хранит данные таким же образом, как и блок ех367 памяти.
Далее со ссылкой на фиг. 22В описывается пример конфигурации сотового телефона ех114. В сотовом телефоне ех114 главный блок ех360 управления, предназначенный для общего управления каждым блоком главного корпуса, содержащего блок ех358 отображения, а также клавиши ех366 управления, соединен с помощью синхронной шины ех370 с блоком ех361 подачи электропитания, блоком ех362 управления вводом действий, блоком ех355 обработки видеосигналов, блоком ех363 интерфейса камеры, блоком ех359 управления жидкокристаллическим дисплеем (ЖКД), блоком ех352 модуляции/демодуляции, блоком ех353 мультиплексирования/демультиплексирования, блоком ех354 обработки аудиосигналов, блоком ех364 гнезд и блоком ех367 памяти.
При нажатии клавиши завершения вызова или клавиши питания в результате действия пользователя блок ех361 подачи электропитания подает на соответствующие блоки питание от аккумуляторной батареи, чтобы включить сотовый телефон ех114.
В сотовом телефоне ех114 блок ех354 обработки аудиосигналов преобразует аудиосигналы, получаемые блоком ех356 аудиовхода в режиме разговора, в цифровые аудиосигналы под управлением главного блока ех360 управления, содержащего ЦП, постоянное запоминающее устройство (ПЗУ) и оперативное запоминающее устройство (ОЗУ). Затем блок ех352 модуляции/демодуляции выполняет широкополосную обработку цифровых аудиосигналов, а приемопередающий блок ех351 выполняет цифро-аналоговое преобразование и преобразование частоты данных, чтобы передавать результирующие данные посредством антенны ех350. Кроме того, в сотовом телефоне ех114 приемопередающий блок ех351 усиливает данные, принимаемые антенной ех350 в режиме разговора и выполняет преобразование частоты и аналого-цифровое преобразование данных. Затем блок ех352 модуляции/демодуляции выполняет обратную широкополосную обработку данных, а блок ех354 обработки аудиосигналов преобразует их в аналоговые аудиосигналы, чтобы выдавать их посредством блока ех357 аудиовыхода.
Кроме того, в случае, если в режиме передачи данных передается электронная почта, текстовые данные электронной почты, вводимые результате срабатывания клавиш ех366 управления и пр. главного корпуса, отправляются в главный блок ех360 управления посредством блока ех362 управления вводом действий. Главный блок ех360 управления обеспечивает выполнение блоком ех352 модуляции/демодуляции широкополосной обработки текстовых данных, а приемопередающий блок ех351 выполняет цифро-аналоговое преобразование и преобразование частоты результирующих данных для передачи данных на базовую станцию ех110 посредством антенны ех350. В случае приема электронной почты над принимаемыми данными выполняется обработка, которая является приблизительно обратной обработке при передаче электронной почты, и результирующие данные выдаются в блок ех358 отображения.
В случае передачи видео, статических изображений или видео и звука в режиме передачи данных блок ех355 обработки видеосигналов сжимает и кодирует видеосигналы, поступающие с блока ех365 камеры, с помощью способа кодирования видео, описанного в вышеупомянутом Варианте осуществления (это означает, что блок ех355 обработки видеосигналов служит в качестве устройства кодирования изображений в соответствии с настоящим изобретением), и передает кодированные видеоданные в блок ех353 мультиплексирования/демультиплексирования. Напротив, в случае, если блок ех365 камеры записывает видео, статические изображения и пр., блок ех354 обработки аудиосигналов кодирует аудиосигналы, получаемые блоком ех356 аудиовхода, и передает кодированные аудиоданные в блок ех353 мультиплексирования/демультиплексирования.
Блок ех353 мультиплексирования/демультиплексирования мультиплексирует кодированные видеоданные, поступающие с блока ех355 обработки видеосигналов, и кодированные аудиоданные, поступающие с блока ех354 обработки аудиосигналов, с помощью заданного способа. Затем блок ех352 модуляции/демодуляции выполняет широкополосную обработку мультиплексированных данных, а приемопередающий блок ех351 выполняет цифро-аналоговое преобразование и преобразование частоты данных, чтобы передавать результирующие данные посредством антенны ех350.
При приеме данных видеофайла, который связан с веб-страницей и пр. в режиме разговора или при приеме электронной почты с прикрепленным видео и/или звуком для того, чтобы декодировать мультиплексированные данные, принимаемые посредством антенны ех350, блок ех353 мультиплексирования/демультиплексирования демультиплексирует мультиплексированные данные в поток битов видеоданных и поток битов аудиоданных и подает в блок ех355 обработки видеосигналов кодированные видеоданные и в блок ех354 обработки аудиосигналов кодированные аудиоданные по синхронной шине ех370. Блок ех355 обработки видеосигналов декодирует видеосигнал с помощью способа декодирования видео, соответствующего способу декодирования, описанному в каждом из Вариантов осуществления, а затем блок ех358 отображает, например, видео и статические изображения, включенные в видеофайл, связанный с веб-страницей посредством блока е359 управления ЖКД. Кроме того, блок ех354 обработки аудиосигналов декодирует аудиосигнал, а блок ех357 аудиовыхода выдает звук.
Кроме того, аналогично телевизору ех300 оконечное устройство, такое как сотовый телефон ех114, возможно, имеет 3 типа конфигурации реализации, включающие в себя не только (i) передающее и приемное оконечные устройства, содержащие как устройство кодирования, так и устройство декодирования, но и (ii) передающее оконечное устройство, содержащее только устройство кодирования, и (iii) приемное оконечное устройство, содержащее только устройство декодирования. Хотя согласно описанию система ех200 цифрового вещания принимает и передает мультиплексированные данные, получаемые путем мультиплексирования аудиоданных и видеоданных, мультиплексированными данными могут быть данные, получаемые путем мультиплексирования не аудиоданных, а символьных данных, относящихся к видео в видеоданных, и могут быть не мультиплексированными данными, а самими видеоданными.
В этой связи, способ кодирования видео и способ декодирования видео в вышеупомянутом Варианте осуществления могут использоваться в любом из описанных устройств и систем. Тем самым могут быть получены преимущества, описанные в вышеупомянутом Варианте осуществления.
Кроме того, настоящее изобретение не ограничивается вышеупомянутым Вариантом осуществления, и возможны различные модификации и варианты в пределах объема настоящего изобретения.
ВАРИАНТ ОСУЩЕСТВЛЕНИЯ 3
Видеоданные могут генерироваться путем переключения при необходимости между (i) способом кодирования видео или устройством кодирования видео, описанным в каждом из Вариантов осуществления, и (ii) способом кодирования видео или устройством кодирования видео в соответствии с другим стандартом, таким как MPEG-2, MPEG4-AVC и VC-1.
При этом в случае, если множество видеоданных, соответствующих другим стандартам, генерируется, а затем декодируется, способы декодирования должны выбираться в соответствии с различными стандартами. Однако ввиду того, что невозможно обнаружить, какому стандарту соответствуют каждые из множества видеоданных, подлежащих декодированию, существует проблема, состоящая в том, что подходящий способ декодирования не может быть выбран.
Для того чтобы решить эту проблему, мультиплексированные данные, получаемые мультиплексированием аудиоданных и пр. в видеоданных, имеют структуру, включающую в себя идентификационную информацию, указывающую на то, какому стандарту соответствуют видеоданные. Ниже описывается конкретная структура мультиплексированных данных, содержащих видеоданные, генерируемые в способе кодирования видео и с помощью устройства кодирования видео, описанных в каждом из Вариантов осуществления. Мультиплексированные данные представляют собой цифровой поток в формате транспортного потока MPEG2.
Фиг. 23 иллюстрирует структуру мультиплексированных данных. Как показано на фиг. 23, мультиплексированные данные могут быть получены мультиплексированием, по меньшей мере, видеопотока, звукового потока, потока презентационной графики (PG) и потока интерактивной графики. Видеопоток представляет собой первичное видео и вторичное видео фильма, звуковой поток (IG) представляет собой первичную часть звука и вторичную часть звука, подлежащую смешиванию с первичной частью звука, а поток презентационной графики представляет собой субтитры фильма. При этом первичное видео представляет собой обычное видео, подлежащее отображению на экране, а вторичное видео представляет собой обычное видео, подлежащее отображению в меньшем окне в основном видео. Кроме того, поток интерактивной графики представляет собой интерактивный экран, формируемый размещением на экране компонентов графического пользовательского интерфейса (GUI). Видеопоток кодируется в способе кодирования видео или с помощью устройства кодирования видео, описанных в каждом из Вариантов осуществления, либо в способе кодирования видео или с помощью устройства кодирования видео в соответствии с общепринятым стандартом, таким как MPEG-2, MPEG4-AVC и VC-1. Звуковой поток кодируется в соответствии со стандартом, таким как Dolby-AC-3, Dolby Digital Plus, MLP, DTS, DTS-HD и линейная импульсно-кодовая модуляция (PCM).
Каждый поток, входящий в мультиплексированные данные, идентифицируется с помощью идентификатора процесса (PID). Например, 0х1011 выделяется видеопотоку, используемому для видео или фильма, 0х1100-0x111F выделяются потокам презентационной графики, 0х1200-0x121F выделяются потокам интерактивной графики, 0x1B00-0x1B1F выделяются видеопотокам, используемым для вторичного видео или фильма, а 0x1A00-0x1A1F выделяются звуковым потокам, используемым для вторичного видео, смешиваемого с первичным аудио.
Фиг. 24 схематически иллюстрирует, как мультиплексируются данные. Сначала видеопоток ех235, состоящий из видеокадров, и звуковой поток ех238, состоящий из звуковых кадров, преобразуются в поток ех236 пакетов элементарного пакетизированного потока (PES-пакетов) и поток ех239 PES-пакетов, а далее в пакеты ех237 транспортного потока (TS-пакеты) и TS-пакеты ех240 соответственно. Аналогичным образом, данные потока презентационной графики ех241 и данные потока интерактивной графики ех244 преобразуются в поток ех242 PES-пакетов и поток ех245 PES-пакетов и далее в TS-пакеты ех243 и TS-пакеты ех246 соответственно. Эти TS-пакеты мультиплексируются в поток для получения мультиплексированных данных ех247.
Фиг. 25 более подробно иллюстрирует, как видеопоток сохраняется в потоке PES-пакетов. В первой полосе на фиг. 25 показан поток видеокадров в видеопотоке. Во второй полосе показан поток PES-пакетов. Как показано стрелками, обозначенными yy1, yy2, yy3 yy4 на фиг. 25, видеопоток разделяется на такие кадры, как I-кадры, В-кадры и Р-кадры, каждый из которых является блоком видеопрезентации, при этом кадры хранятся в полезной нагрузке каждого из PES-пакетов. Каждый из PES-пакетов имеет PES-заголовок, при этом PES-заголовок хранит временную метку предоставления (PTS), указывающую время отображения кадра, и временную метку декодирования (DTS), указывающую время декодирования кадра.
Фиг. 26 иллюстрирует формат TS-пакетов, в конечном итоге записываемых в мультиплексированные данные. Каждый из TS-пакетов представляет собой 188-байтовый пакет фиксированной длины, включающий в себя 4-байтовый TS-заголовок, содержащий информацию, такую как PID, для идентификации потока и 184-байтовую полезную нагрузку TS для хранения данных. PES-пакеты разделяются и хранятся в полезных нагрузках TS соответствующим образом. В случае, если используется ПЗУ на Blu-Ray-диске, каждому из TS-пакетов назначается 4-байтовый TP_Extra_Header, посредством этого приводя к 192-байтовым исходным пакетам. Исходные пакеты записываются в мультиплексированные данные. TP_Extra_Header хранит такую информацию, как Arrival_Time_Stamp (ATS). ATS показывает время начала передачи, в которое каждый из TS-пакетов должен передаваться в PID-фильтр. Исходные пакеты размещаются в мультиплексированных данных, как показано в нижней части фиг. 26. Номера, возрастающие с заголовка мультиплексированных данных, называются номерами исходных пакетов (SPN).
Каждый из TS-пакетов, входящих в мультиплексированные данные, включает в себя не только звуковые потоки, видеопотоки, субтитры и пр., но и Таблицу ассоциаций программ (РАТ), Таблицу структуры программ (РМТ) и Поле эталонных часов (PCR). РАТ показывает, что означает PID в РМТ, используемой в мультиплексированных данных, при этом PID самой РАТ регистрируется как ноль. РМТ хранит PID потоков видео, звука, субтитров и пр., входящих в мультиплексированные данные, и информацию атрибута потоков, соответствующих PID. РМТ также имеет различные дескрипторы, относящиеся к мультиплексированным данным. Дескрипторы содержат такую информацию, как информация управления копированием, показывающую, разрешается ли копирование мультиплексированных данных или нет. PCR хранит информацию времени системного таймера (STC), соответствующую ATS и показывающую, когда пакет PCR передается в декодер, чтобы достичь синхронизации между таймером поступления (АТС), который является осью времени ATS, и системным таймером (STC), который является осью времени PTS и DTS.
На фиг. 27 подробно показана структура РМТ. Заголовок РМТ расположен в верхней части РМТ. Заголовок РМТ описывает длину данных, входящих в РМТ и пр. После заголовка РМТ располагается множество дескрипторов, относящихся к мультиплексированным данным. В дескрипторах описывается такая информация, как информация управления копированием. После дескрипторов располагается множество элементов информации потока, относящейся к потокам, входящим в мультиплексированные данные. Каждый элемент информации потока содержит дескрипторы потока, каждый из которых описывает такую информацию, как тип потока для идентификации кодека сжатия потока, PID потока и информацию атрибута потока (такую как частота кадров или соотношение сторон). Число дескрипторов потока равно числу потоков в мультиплексированных данных.
При записи мультиплексированных данных на носитель информации и пр. они записываются вместе с информационными файлами мультиплексированных данных.
Каждый из информационных файлов мультиплексированных данных является управляющей информацией мультиплексированных данных, как показано на фиг. 28. Информационные файлы мультиплексированных данных находятся во взаимно однозначном соответствии с мультиплексированными данными, при этом каждый из файлов содержит информацию мультиплексированных данных, информацию атрибута потока и карту ввода.
Как показано на фиг. 28, мультиплексированные данные включают в себя скорость передачи в системе, время начала воспроизведения и время окончания воспроизведения. Скорость передачи в системе означает максимальную скорость передачи, при которой целевой декодер системы, описываемый ниже, передает мультиплексированные данные в фильтр PID. Интервалы ATS, входящие в мультиплексированные данные, устанавливаются не более скорости передачи в системе. Время начала воспроизведения указывает на PTS в видеокадре в заголовке мультиплексированных данных. Интервал одного кадра добавляется к PTS в видеокадре в конце мультиплексированных данных, при этом PTS устанавливается на время окончания воспроизведения.
Как показано на фиг. 29, элемент атрибута информации регистрируется в информации атрибута потока для каждого PID каждого потока, входящего в мультиплексированные данные. Каждый элемент информации атрибута содержит различную информацию в зависимости от того, является ли соответствующий поток видеопотоком, звуковым потоком, потоком презентационной графики или потоком интерактивной графики. Каждый элемент информации атрибута видеопотока несет информацию, включающую в себя то, какой тип кодека сжатия используется для сжатия видеопотока, а также разрешающую способность, соотношение сторон и частоту кадров элементов данных кадров, входящих в видеопоток. Каждый элемент информации атрибута звукового потока несет информацию, включающую в себя то, какой тип кодека сжатия используется для сжатия звукового потока, сколько каналов входит в звуковой поток, какой язык поддерживает звуковой поток и насколько высока частота дискретизации. Информация атрибута видеопотока и информация атрибута звукового потока используются для инициализации декодера до того, как проигрыватель воспроизведет эту информацию.
В настоящем варианте осуществления используемые мультиплексированные данные имеют тип потока, входящего в РМТ. Кроме того, при записи мультиплексированных данных на носитель информации используется информация атрибута видеопотока, входящая в информацию мультиплексированных данных. В частности, способ кодирования видео или устройство кодирования видео, описанные в каждом из Вариантов осуществления, включает в себя этап или блок для выделения уникальной информации, отражающей видеоданные, генерируемые с помощью способа кодирования видео или устройства кодирования видео в каждом из Вариантов осуществления, типу потока, входящего в РМТ или в информацию атрибута видеопотока. При использовании данной конфигурации видеоданные, генерируемые с помощью способа кодирования видео или устройства кодирования видео, описанных в каждом из Вариантов осуществления, могут отличаться от видеоданных, соответствующих другому стандарту.
Кроме того, на фиг. 30 показаны этапы способа декодирования видео в соответствии с Вариантом осуществления 9. На Этапе exS100 тип потока, входящий в РМТ или в информацию атрибута видеопотока, получается из мультиплексированных данных. Далее на Этапе exS101 определяется, указывает ли тип потока или информация атрибута видеопотока, что мультиплексированные данные генерируются с помощью способа кодирования видео или устройства кодирования видео в каждом из Вариантов осуществления. В случае, если определяется, что мультиплексированные данные генерируются с помощью способа кодирования видео или устройства кодирования видео в каждом из Вариантов осуществления, на Этапе exS102 тип потока или информация атрибута видеопотока декодируется с помощью способа декодирования видео в каждом из Вариантов осуществления. Кроме того, в случае, если тип потока или информация атрибута видеопотока указывает на соответствие общепринятым стандартам, таким как MPEG-2, MPEG4-AVC и VC-1, на Этапе exS103 тип потока или информация атрибута видеопотока декодируется с помощью способа декодирования видео в соответствии с общепринятыми стандартами.
В этой связи, выделение нового уникального значения типу потока или информации атрибута видеопотока обеспечивает определение того, может ли способ кодирования видео или устройство кодирования видео, описанные в каждом из Вариантов осуществления, выполнять декодирование. Даже в случае использования мультиплексированных данных, соответствующих другому стандарту, может выбираться подходящий способ или устройство декодирования. Таким образом, становится возможным декодировать информацию без каких-либо ошибок. Кроме того, способ или устройство кодирования видео либо способ или устройство декодирования видео в данном Варианте осуществления может использоваться в описанных выше устройствах и системах.
ВАРИАНТ ОСУЩЕСТВЛЕНИЯ 4
Каждый из способа кодирования видео, устройства кодирования видео, способа декодирования видео и устройства декодирования видео в каждом из Вариантов осуществления обычно осуществляется в виде интегральной схемы или большой интегральной схемы (БИС). В качестве примера БИС фиг. 31 иллюстрирует пример конфигурации БИС ех500, выполненной на одном кристалле. БИС ех500 содержит элементы ех501, ех502, ех503, ех504, ех505, ех506, ех507, ех508 и ех509, описываемые ниже, при этом данные элементы соединяются друг с другом с помощью шины ех510. Блок ех505 подачи электропитания активируется в результате подачи питания на каждый из элементов при включении блока ех505 подачи электропитания.
Например, в случае, если выполняется кодирование, БИС ех500 принимает сигнал аудио/видео (AV-сигнал) с микрофона ех117, камеры ех113 и пр. через устройство ех509 ввода-вывода аудио/видео (AV) под управлением блока ех501 управления, содержащего ЦП ех502, контроллер ех503 памяти, контроллер ех504 потока и блок ех512 управления задающей частотой. Принимаемый AV-сигнал временно хранится во внешней памяти ех511, такой как синхронное динамическое запоминающее устройство с произвольной выборкой (SDRAM). Под управлением блока ех501 управления хранящиеся данные сегментируются на части данных в соответствии с объемом и скоростью обработки для передачи в блок ех507 обработки сигналов. Затем блок ех507 обработки сигналов кодирует звуковой сигнал и/или видеосигнал. При этом кодирование видеосигнала является кодированием, описанным в каждом из вариантов осуществления. Кроме того, блок ех507 обработки сигналов иногда мультиплексирует кодированные звуковые данные и кодированные видеоданные, а устройство ех506 ввода-вывода потока выдает мультиплексированные данные вовне. Выдаваемые мультиплексированные данные передаются на базовую станцию ех107 либо записываются на носитель ех215 информации. В случае, если мультиплексируются наборы данных, данные должны временно сохраняться в буфере ех508 таким образом, что наборы данных синхронизируются друг с другом.
Хотя память ех511 является элементом вне БИС ех500, она может входить в БИС ех500. Буфер ех508 не ограничивается одним буфером, а может состоять из нескольких буферов. Кроме того, БИС ех500 может быть выполнена на одном кристалле или множестве кристаллов.
Кроме того, хотя блок ех501 управления включает в себя ЦП ех502, контроллер ех503 памяти, контроллер ех504 потока и блок ех512 управления задающей частотой, конфигурация блока ех501 управления этим не ограничивается. Например, блок ех507 обработки сигналов может дополнительно включать в себя ЦП. Включение еще одного ЦП в блок ех507 обработки сигналов может улучшить скорость обработки. Кроме того, в другом примере ЦП ех502 может выполнять функцию элемента блока ех507 обработки сигналов или служить в качестве него и, например, может включать в себя блок обработки звуковых сигналов. В таком случае блок ех501 управления включает в себя блок ех507 обработки сигналов или ЦП ех502, содержащий элемент блока ех507 обработки сигналов.
В данном случае используется наименование «БИС», но может также использоваться наименование «интегральная схема (ИС)», «системная интегральная схема (СИС)», «сверхбольшая интегральная схема (СБИС)» или «ультрабольшая интегральная схема (УБИС)» в зависимости от степени интеграции.
Кроме того, способы обеспечения интеграции не ограничиваются БИС, и интеграция может обеспечиваться с помощью специальной схемы или универсального процессора и т.д. Для той же цели может использоваться программируемая пользователем вентильная матрица (ППВМ), которая может быть запрограммирована после изготовления БИС, или реконфигурируемый процессор, который обеспечивает реконфигурирование соединения или конфигурации БИС.
В будущем с развитием полупроводниковой технологии технологию БИС может заменить совершенно новая технология. Функциональные блоки могут интегрироваться с помощью такой технологии. Возможно применение настоящего изобретения в биотехнологии.
ВАРИАНТ ОСУЩЕСТВЛЕНИЯ 5
В случае, если данные декодируются в способе кодирования видео или с помощью устройства кодирования видео, описанных в каждом из Вариантов осуществления, по сравнению с тем случае, когда видеоданные соответствуют общепринятому стандарту, такому как MPEG-2, MPEG4-AVC и VC-1, объем обработки может возрасти. Таким образом, задающая частота в БИС ех500 должна быть установлена выше задающей частоты ЦП ех502, используемого в случае, если декодируются видеоданные, соответствующие общепринятому стандарту. Однако в случае, если устанавливается более высокая задающая частота, существует проблема, состоящая в том, что энергопотребление возрастает.
Для того, чтобы решить эту проблему, устройство кодирования видео, такое как телевизор ех300 и БИС ех500, выполнено с возможностью определения того, какому стандарту соответствуют видеоданные, и переключения между задающими частотами в соответствии с определенным стандартом. На фиг. 32 показана конфигурация ех800 в настоящем варианте осуществления. Блок ех803 переключения задающей частоты устанавливает более высокую задающую частоту в случае, если видеоданные генерируются с помощью способа кодирования видео или устройства кодирования видео, описанных в каждом из Вариантов осуществления. Затем блок ех803 переключения задающей частоты выдает команду в блок ех801 обработки при декодировании, который осуществляет способ декодирования, описанный в каждом из Вариантов осуществления, на декодирование видеоданных. В случае, если видеоданные соответствуют общепринятому стандарту, блок ех803 переключения задающей частоты устанавливает более низкую задающую частоту, чем задающая частота видеоданных, генерируемых с помощью способа кодирования видео или устройства кодирования видео, описанных в каждом из Вариантов осуществления. Затем блок ех803 переключения задающей частоты выдает команду в блок ех802 обработки при декодировании, который соответствует общепринятому стандарту, на декодирование видеоданных.
В частности, блок ех803 переключения задающей частоты содержит ЦП ех502 и блок ех512 управления задающей частотой на фиг. 31. При этом каждый из блока ех801 обработки при декодировании, который осуществляет способ декодирования, описанный в каждом из Вариантов осуществления, и блока ех802 обработки при декодировании, который соответствует общепринятому стандарту, соответствует блоку ех507 обработки сигналов на фиг. 31. ЦП ех502 определяет, какому стандарту соответствуют видеоданные. Затем блок ех512 управления задающей частотой определяет задающую частоту на основе сигнала с ЦП ех502. Кроме того, блок ех507 обработки сигналов декодирует видеоданные на основе сигнала с ЦП ех502. Например, идентификационная информация, описанная в Варианте осуществления 3, может использоваться для идентификации видеоданных. Идентификационная информация не ограничивается описанной в Варианте осуществления 3, а может представлять собой любую информацию при условии, что данная информация указывает, какому стандарту соответствуют видеоданные. Например, в случае, если то, какому стандарту соответствуют видеоданные, может определяться на основе внешнего сигнала для определения, что видеоданные используются для телевизора или диска и т.д., определение может выполняться на основе такого внешнего сигнала. Кроме того, ЦП ех502 выбирает задающую частоту на основе, например, таблицы соответствия, в которой стандарты видеоданных связаны с задающими частотами, как показано на фиг. 34. Задающая частота может выбираться путем сохранения таблицы соответствия в буфере ех508 и внутренней памяти БИС и в результате обращения ЦП ех502 к таблице соответствия.
На фиг. 33 показаны этапы для осуществления способа в Варианте осуществления 11. Сначала на Этапе exS200 блок ех507 обработки сигналов получает идентификационную информацию из мультиплексированных данных. Далее на Этапе exS201 ЦП ех502 определяет, генерируются ли видеоданные на основе идентификационной информации с помощью способа кодирования и устройства кодирования, описанных в каждом из Вариантов осуществления. В случае, если видеоданные генерируются с помощью способа кодирования видео и устройства кодирования видео, описанных в каждом из Вариантов осуществления, на Этапе exS202 ЦП ех502 передает в блок ех512 управления задающей частотой сигнал для установки более высокой задающей частоты. Затем блок ех512 управления задающей частотой устанавливает более высокую задающую частоту. С другой стороны, в случае, если идентификационная информация указывает, что видеоданные соответствуют общепринятому стандарту, такому как MPEG-2, MPEG4-AVC и VC-1, на Этапе exS203 ЦП ех502 передает в блок ех512 управления задающей частотой сигнал для установки более низкой задающей частоты. Затем блок ех512 управления задающей частотой устанавливает более низкую задающую частоту, чем в том случае, когда видеоданные генерируются с помощью способа кодирования видео и устройства кодирования видео, описанных в каждом из Вариантов осуществления.
Кроме того, наряду с переключением задающих частот эффект сохранения электроэнергии может быть улучшен путем изменения напряжения, подаваемого на БИС ех500 или на устройство, содержащее БИС ех500. Например, в случае, если устанавливается более низкая задающая частота, напряжение, подаваемое на БИС ех500 или на устройство, содержащее БИС ех500, может быть установлено более низким, чем в случае, если задающая частота установлена более высокой.
Кроме того, в случае, если объем обработки для декодирования больше, задающая частота может быть установлена более высокой, а в случае, если объем обработки для декодирования меньше, задающая частота может быть установлена более низкой в качестве способа установки задающей частоты. Таким образом, способ установки не ограничивается описанными выше. Например, в случае, если объем обработки для декодирования видеоданных в соответствии с MPEG4-AVC больше, чем объем обработки для декодирования видеоданных, генерируемых с помощью способа кодирования видео и устройства кодирования видео, описанных в каждом из Вариантов осуществления, задающая частота может устанавливаться в обратном порядке по отношению к установке, описанной выше.
Кроме того, способ установки задающей частоты не ограничивается способом установки более низкой задающей частоты. Например, в случае, если идентификационная информация указывает, что видеоданные генерируются с помощью способа кодирования видео и устройства кодирования видео, описанных в каждом из Вариантов осуществления, напряжение, подаваемое на БИС ех500 или на устройство, содержащее БИС ех500, может быть установлено более высоким. В случае, если идентификационная информация указывает, что видеоданные соответствуют общепринятому стандарту, такому как MPEG-2, MPEG4-AVC и VC-1, напряжение, подаваемое на БИС ех500 или на устройство, содержащее БИС ех500, может быть установлено более низким. В другом примере в случае, если идентификационная информация указывает, что видеоданные генерируются с помощью способа кодирования видео и устройства кодирования видео, описанных в каждом из Вариантов осуществления, регулирование частоты ЦП ех502, возможно, не должно приостанавливаться. В случае, если идентификационная информация указывает, что видеоданные соответствуют общепринятому стандарту, такому как MPEG-2, MPEG4-AVC и VC-1, регулирование частоты ЦП ех502 может приостанавливаться в заданный момент времени, поскольку ЦП ех502 имеет дополнительную вычислительная мощность. Даже в том случае, когда идентификационная информация указывает, что видеоданные генерируются с помощью способа кодирования видео и устройства кодирования видео, описанных в каждом из Вариантов осуществления, в случае, если ЦП ех502 может иметь время задержки, регулирование частоты ЦП ех502 может приостанавливаться в заданный момент времени. В таком случае интервал времени приостановления может устанавливаться более коротким, чем в случае, когда идентификационная информация указывает, что видеоданные соответствуют общепринятому стандарту, такому как MPEG-2, MPEG4-AVC и VC-1.
В связи с этим, эффект сохранения электроэнергии может быть улучшен путем переключения между задающими частотами в соответствии со стандартом, которому соответствуют видеоданные. Кроме того, в случае, если регулирование частоты БИС ех500 или устройства, содержащего БИС ех500, осуществляется с помощью аккумуляторной батареи, ресурс аккумуляторной батареи может быть увеличен с использованием эффекта сохранения электроэнергии.
ВАРИАНТ ОСУЩЕСТВЛЕНИЯ 6
Существуют случаи, в которых множество видеоданных, соответствующих другому стандарту, выдается на устройства и системы, такие как телевизор и мобильный телефон. Чтобы обеспечить декодирование множества видеоданных, соответствующих различным стандартам, блок ех507 обработки сигналов БИС ех500 должен соответствовать различным стандартам. Однако при индивидуальном использовании блоков ех507 обработки сигналов, которые соответствуют соответствующим стандартам, возникают проблемы увеличения размера схемы БИС ех500 и увеличения стоимости.
Для решения этой проблемы предусматривается конфигурация, в которой блок обработки при декодировании для реализации способа декодирования видео, описанного в каждом из Вариантов осуществления, и блока обработки при декодировании, соответствующего общепринятому стандарту, такому как MPEG-2, MPEG4-AVC и VC-1, частично используются совместно. Кроме того, ех900 на фиг. 35А демонстрирует еще один пример, в котором обработка частично осуществляется совместно. Например, способ декодирования видео, описанный в каждом из Вариантов осуществления, и способ декодирования видео, соответствующий MPEG4-AVC, имеют частично совместные элементы обработки, такие как энтропийное кодирование, обратное квантование, деблочная фильтрация и предсказание с компенсацией движения. Совместно используемые элементы обработки могут включать в себя использование блока ех902 обработки при декодировании, который соответствует MPEG4-AVC. В отличие от него, блок ех901 специализированной обработки при декодировании может использоваться для другой обработки, которая характерна только для настоящего изобретения. Блок обработки при декодировании для реализации способа декодирования видео, описанного в каждом из Вариантов осуществления, может совместно использоваться для совместно используемой обработки, а блок специализированной обработки при декодировании может использоваться для обработки, характерной для обработки MPEG4-AVC.
Кроме того, ех1000 на фиг. 35В демонстрирует еще один пример, в котором обработка частично осуществляется совместно. В данном примере используется конфигурация, включающая в себя блок ех1001 специализированной обработки при декодировании, который поддерживает обработку, характерную для настоящего изобретения, блок ех1002 специализированной обработки при декодировании, который поддерживает обработку, характерную для другого общепринятого стандарта, и блок ех1003 обработки при декодировании, который поддерживает обработку, совместно используемую способом декодирования видео настоящего изобретения и общепринятым способом декодирования видео. При этом блоки ех1001 и ех1002 специализированной обработки при декодировании не обязательно специализируются на обработке настоящего изобретения и общепринятого стандарта соответственно, а могут являться блоками, выполненными с возможностью реализации универсальной обработки. Кроме того, конфигурация Варианта осуществления 12 может быть реализована с помощью БИС ех500.
В этой связи, уменьшение размера схемы БИС ех500 и уменьшение стоимости возможны за счет совместного использования блока обработки при декодировании для обработки, совместно осуществляемой способом декодирования видео в настоящем изобретении и способом декодирования видео в соответствии с общепринятым стандартом.
ПРОМЫШЛЕННАЯ ПРИМЕНИМОСТЬ
Способ кодирования видео и способ декодирования видео в соответствии с настоящим изобретением обеспечивают полезный эффект, состоящий в снижении нагрузки по обработке, и могут применяться, например, в видеокамере, сотовом телефоне, имеющем функции записи и воспроизведения видео, персональном компьютере, устройстве записи и воспроизведения и т.д.
СПИСОК ССЫЛОЧНЫХ ПОЗИЦИЙ
1000 устройство кодирования изображений
1101 вычитатель
1102 блок ортогонального преобразования
1103 блок квантования
1104 блок энтропийного кодирования
1105 блок обратного квантования
1106 блок обратного ортогонального преобразования
1107 сумматор
1108 деблочный фильтр
1109 память
1110 блок внутреннего предсказания
1111 блок внешнего предсказания
1112 блок оценки движения
1113 коммутатор
1200 блок контроля памяти
2000 устройство декодирования изображений
2101 блок энтропийного декодирования
2102 блок обратного квантования
2103 блок обратного ортогонального преобразования
2104 сумматор
2105 деблочный фильтр
2106 память
2107 блок внутреннего предсказания
2108 блок внешнего предсказания
2109 коммутатор
2200 блок контроля памяти