ОБЛАСТЬ ТЕХНИКИ
Настоящее изобретение относится к стереоскопическому представлению графики, используя структуру с двумя декодерами графики в устройстве воспроизведения.
УРОВЕНЬ ТЕХНИКИ
В последние годы быстро увеличилось распространение дисков Blu-ray (в дальнейшем называемые "BD"), совместимых со стандартом оптических дисков следующего поколения. Устройство воспроизведения, совместимое со стандартом BD-ROM, позволяет получать удовольствие от видео, которое имеет высокую степень реализма, посредством вывода потока высококачественного видео, в котором субтитры и графика были наложены на устройстве отображения, таком как дисплей, связанный с устройством воспроизведения (например, см. патентный документ 1).
Между тем, начало распространяться техническое направление устройств отображения для отображения не только плоских изображений, но также стереоскопических представлений, которые позволяют получать удовольствие от видео, которое, кажется, что «выпрыгивает» на зрителя. Хотя есть различные способы для стереоскопических отображений, в качестве основного принципа стереоскопическое видео искусственно создается, реализуя систему показа различных картинок левым и правым глазам в качестве левого вида и правого вида, используя различие между этими двумя глазами.
Список цитируемой литературы
[Патентная литература 1]
Публикация японской патентной заявки W02005-119675.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Техническая проблема
Возникает проблема, как выполнить стереоскопическое отображение графики, которая должна быть составлена из видео и воспроизведена. При этом, когда графикой являются субтитры или меню, эти субтитры или меню можно заставить появляться, как будто проецируя из экранного отображения посредством смещения координат данных изображения, составляющих несжатый графический объект, согласно времени воспроизведения левого вида и времени воспроизведения правого вида соответственно. В этом смещении координат графика просто появляется перед экраном в плоском состоянии и не кажется стереоскопической непосредственно.
В работах кино последних лет есть пример реализации анимированной графики, который тщательно синхронизирует персонажи в кино работе посредством использования структуры данных Потока Графики Представления, который главным образом используется для субтитров.
В стереоскопическом виде, вызванном смещением координат, когда графика представляет, например, анимированный персонаж, просто кажется, что плоский персонаж находится перед экраном, и стереоскопическое воспроизведение таких особенностей, как углубления в лице анимированного персонажа, или способа, которым выдается нос, невозможно. По этой причине имеется точка зрения, что эта технология является недостаточной для целей развлечения.
Ввиду этого, чтобы заставить анимированный персонаж появиться стереоскопически, существует идея объединить данные графики левого вида и данные графики правого вида в одном графическом потоке и посредством декодирования этого потока графики, вызывая реализацию стереоскопического вида.
Однако, при использовании этой идеи, так как нагрузка декодирования графического декодера удваивается, тактовая частота, которая является опорной для работы графического декодера, должна быть сделана выше, таким образом, мешая снизить стоимость продукта.
Чтобы избежать необходимость делать тактовую частоту выше, один подход заключается в том, чтобы заставить графические данные иметь структуру с 2 потоками и сделать устройство воспроизведения со структурой с 2 декодерами. Другими словами, данные графики левого вида и данные графики правого вида встроены в отдельные графические потоки, и устройство воспроизведения снабжено двумя графическими декодерами. Затем, принуждение двух графических декодеров обрабатывать два графических потока позволяет заставить устройство воспроизведения декодировать данные графики левого вида и правого вида, не делая тактовую частоту слишком высокой.
Между тем, имеется проблема в том, что, используя структуру с 2 декодерами в устройстве воспроизведения, стереоскопический вид графики во время произвольного доступа не может быть гарантирован. Эта проблема описывается более подробно следующим образом. Потоки графики левого вида и правого вида структурированы соответственно так, чтобы включать в себя множество наборов отображения (в дальнейшем называемых "DS", (НО)), и каждый DS - это группа данных, которая должна быть использована для отображения одной экранной особенности одного или более графических изображений. Существует множество типов DS. Есть DS, которые включают в себя все данные, необходимые для отображения одного экранного отображения графики, и DS, которые включают в себя только разность от непосредственно предшествующего DS. DS, который указывает разность от непосредственно предшествующего DS, не может независимо выполнить отображение всей графики. Здесь, так как есть разность в перспективе между изображением, видимым с левого вида, и изображением, видимым с правого вида, даже в случае, в котором включены все данные, необходимые для отображения одного экранного отображения графики, существуют случаи, в которых имеется большое изменение от непосредственно предшествующего DS в анимированном персонаже в одном DS, в то время как ввиду мертвой зоны, нет большого изменения в анимированном персонаже в другом DS. Поэтому считается, что включение только разности от непосредственно предшествующего DS является достаточным.
В этом случае проблема заключается в том, что, пропуская эти DS в устройстве воспроизведения, даже если декодирование может быть выполнено правильно для одной из графики, для другой данные, необходимые для воспроизведения, не могут быть предоставлены декодеру и не могут быть декодированы. В результате существуют случаи, в которых стереоскопический вид графики невозможен во время произвольного доступа.
Настоящее изобретение стремится обеспечить носитель записи, который гарантирует стереоскопический вид графики во время произвольного доступа.
РЕШЕНИЕ ПРОБЛЕМЫ
Чтобы решить вышеупомянутую задачу, носитель записи, который является вариантом осуществления настоящего изобретения, является носителем записи, на котором записан видео поток, поток графики левого вида и поток графики правого вида, причем поток графики левого вида и поток графики правого вида каждый включает в себя один или более наборов отображения, каждый набор отображения является группой данных, используемой для отображения одной экранной особенности одного или более графических объектов, эти один или более наборов отображения, включенные в поток графики левого вида, находятся в соответствии один-к-одному с одним или более наборами отображения, включенными в поток графики правого вида, и идентичное время воспроизведения для видео потока на временной оси воспроизведения установлено в наборах отображения, которые соответствуют друг другу, причем каждый набор отображения включает в себя информацию состояния, указывающую, что набор отображения является одним из: (i) всех данных, необходимых для отображения одной экранной особенности одного или более графических объектов, и (ii) разности от непосредственно предшествующего набора отображения, и идентичный контент указан информацией состояния, включенной в наборы отображения, которые соответствуют друг другу в потоке графики левого вида и потоке графики правого вида.
ВЫГОДНЫЕ РЕЗУЛЬТАТЫ ИЗОБРЕТЕНИЯ
Согласно структуре, описанной выше в качестве средства решения проблемы, информация состояния наборов отображения потока графики левого вида, и информация состояния наборов отображения потока графики правого вида, который соответствует этому набору отображения, имеют идентичный контент. Поэтому, когда информация состояния в наборе отображения одного графического потока указывает, что все данные, необходимые для отображения одной экранной особенности графики включены, информация состояния в соответствующем наборе отображения другого графического потока указывает, что включены все данные, необходимые для отображения этой одной экранной особенности графики.
Соответственно, так как наборы DS предоставлены в точках, которые вероятно должны быть выбраны как точки начала воспроизведения во время произвольного доступа, если возможно декодировать один из графических потоков, также обязательно возможно декодировать другой графический поток. Таким образом, возможно обеспечение стереоскопического вида графики во время произвольного доступа.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг.1 показывает структуру системы домашнего кинотеатра;
Фиг.2 показывает внутреннюю структуру BD-ROM;
Фиг.3 показывает формат применения BD-ROM;
Фиг.4 показывает процесс, посредством которого исходные пакеты, составляющие поток левого вида и поток правого вида, записывают в область AV данных;
Фиг.5 показывает соответствия между физическими блоками BD-ROM и исходными пакетами, составляющими один экстент файла;
Фиг.6 показывает множество числовых диапазонов, в которые могут попасть идентификаторы пакета TS-пакетов, и типы PES потока для TS-пакетов для ИД пакета в этих диапазонах числовых значений, в соответствии друг другу;
Фиг.7 показывает компоновку перемежения;
Фиг.8 показывает пример внутренних структур потока BaseView и потока EnhancedView;
Фиг.9 показывает, что тип видео предоставляется для воспроизведения при переключении между прозрачностью/непрозрачностью дисплейных очков в моменты времени, показанные на Фиг.8;
Фиг.10 показывает стереоскопический эффект из-за эффекта остаточного изображения в глазу;
Фиг.11 показывает структуру потока PG;
Фиг.12 показывает логическую структуру, составленную из различных типов функциональных сегментов;
Фиг.13 показывает структуру данных CD и PDS;
Фиг.14 показывает структуру данных WDS и PCS;
Фиг.15 показывает типы DS, composition_numbers, и forced_on_flags для наборов DS, соответствующих потоку PG левого вида и потоку PG правого вида;
Фиг.16 показывает пример нотации WDS и PCS, которые принадлежат DS левого вида;
Фиг.17 показывает пример примечания WDS и PCS, которые принадлежат DS правого вида;
Фиг.18 показывает object_ids потоков DS, соответствующих потоку PG левого вида и потоку PG правого вида;
Фиг.19 указывает ось времени воспроизведения AV клипа, которому был назначен DSn;
Фиг.20 показывает пример файла информации клипа;
Фиг.21 показывает внутреннюю структуру таблицы карты входов;
Фиг.22 показывает запись точки входа на карте входов;
Фиг.23 показывает, как установлены карты входов, соответствующие каждому левому виду и правому виду;
Фиг.24 показывает структуру данных информации списка воспроизведения;
Фиг.25 показывает структуру данных таблицы информации подпути;
Фиг.26 показывает, какие секции воспроизведения определены для левого вида и правого вида;
Фиг.27 показывает внутреннюю структуру таблицы номеров потока видео;
Фиг.28 показывает внутреннюю структуру таблицы информации PG-потока в STN_table;
Фиг.29 показывает внутреннюю структуру данных расширения в информации списка воспроизведения;
Фиг.30 показывает внутреннюю структуру таблицы номеров потоков видео;
Фиг.31 показывает внутреннюю структуру устройства воспроизведения;
Фиг.32 показывает внутреннюю структуру блока 1 воспроизведения;
Фиг.33 - блок-схема, показывающая процедуру обработки для обработки воспроизведения списка воспроизведения;
Фиг.34 - блок-схема, показывающая процедуру воспроизведения, основанную на STN_table_extension;
Фиг.35 - блок-схема, показывающая процедуру для установки PSR2, когда состояние устройства изменяется и когда требуется изменение потока;
Фиг.36 - блок-схема, указывающая процедуру установки PSR2;
Фиг.37 показывает внутреннюю структуру блока 1 воспроизведения в вариации 1-1;
Фиг.38 показывает структуру потока IG;
Фиг.39 показывает логическую структуру, составленную из множества типов функционального сегмента;
Фиг.40 показывает соответствия между ICS и Interactive_composition;
Фиг.41 показывает внутреннюю структуру ICS;
Фиг.42 показывает внутреннюю структуру информации страницы для произвольного значения (количество страниц x) среди множества страниц;
Фиг.43 показывает пример нотации ICS, принадлежащего DS левого вида;
Фиг.44 показывает пример нотации ICS, принадлежащего DS правого вида;
Фиг.45 показывает внутреннюю структуру блока 1 воспроизведения в варианте осуществления 2;
Фиг.46 принадлежит ограничению порядка мультиплексирования PG-потока левого вида и PG-потока правого вида;
Фиг.47 показывает вариацию структуры данных PCS, и
Фиг.48 показывает DS, который включает в себя 3D-PCS.
ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
Варианты осуществления настоящего изобретения описаны ниже со ссылками на чертежи.
[Вариант осуществления 1]
Общая структура
Фиг.1 показывает режим, относящийся к акту использования носителя записи и устройства воспроизведения. Как показано на Фиг.1A, BD-ROM 100, который является примером носителя записи, и устройство 200 воспроизведения составляют систему домашнего кинотеатра вместе с телевизором 300, парой жидкокристаллических дисплейных очков 400 с затвором, и блок 500 дистанционного управления, и предоставлены для использования пользователем.
BD-ROM 100 выдает, например, кинофильм на систему домашнего кинотеатра.
Устройство 200 воспроизведения соединено с телевизором 300 и воспроизводит BD-ROM 100.
Телевизор 300 предоставляет интерактивную операционную среду пользователю посредством отображения видео посредством воспроизведения кинофильма, отображения меню и т.д.
Жидкокристаллические дисплейные очки 400 с затвором состоят из пары жидкокристаллических затворов и блока управления и реализуют стереоскопический вид с использованием параллакса между глазами пользователя. Жидкокристаллические затворы жидкокристаллических очков 400 с затвором используют жидкокристаллические линзы, имеющие такое свойство, что коэффициент пропускания света линзы изменяется в зависимости от приложенного напряжения. Блок управления жидкокристаллических дисплейных очков 400 с затвором принимает от устройства воспроизведения сигнал синхронизации, указывающий переключение между выходным сигналом изображения правого вида и изображения левого вида, и переключается между первым состоянием и вторым состоянием согласно этому сигналу синхронизации.
Фиг.1B показывает первое состояние. В первом состоянии приложенное напряжение настроено так, чтобы сделать жидкокристаллическую линзу, соответствующую правому виду, непрозрачной, а жидкокристаллическая линза, соответствующая левому виду, становится прозрачной. В этом состоянии изображение для левого вида подается для просмотра.
Фиг.1C показывает второе состояние. Во втором состоянии приложенное напряжение настроено так, чтобы сделать жидкокристаллическую линзу, соответствующую правому виду, прозрачной, а жидкокристаллическая линза, соответствующая левому виду, становится непрозрачной. В этом состоянии изображение для правого вида подается для просмотра.
Вообще, правый вид и левый вид человеческих глаз воспринимают немного различные изображения из-за позиционного различия между ними. Это позиционное различие дает возможность людям воспринимать изображения, видимые глазу, как стереоскопическое изображение. Ввиду этого, посредством синхронизации тактирования, при котором жидкокристаллические дисплейные очки 400 с затвором переключаются между первым состоянием и вторым состоянием, как описано выше, при тактировании переключения выходного сигнала между изображением правого вида и изображением левого вида, пользователь испытывает иллюзию, что плоская поверхность является стереоскопической.
Ниже описан временной интервал для отображения изображения правого вида и изображения левого вида.
В частности, в изображении монокулярного (моноскопического) отображения имеется разница в просмотре между правым видом и левым видом, соответствующим бинокулярному параллаксу, и отображение, которое кажется стереоскопическим, достигается посредством выполнения отображения посредством выполнения переключения между правым видом и левым видом в коротком периоде времени.
Длительность каждого временного интервала должна быть достаточно короткой, чтобы создать оптическую иллюзию, что показано трехмерное (т.е. стереоскопическое) изображение.
Возвращаясь к Фиг.1A, блок 500 дистанционного управления является устройством для приема пользовательских операций в отношении иерархического GUI (графического пользовательского интерфейса). Чтобы иметь возможность принять такие пользовательские операции, блок 500 дистанционного управления снабжается клавишей меню для вызова меню, образующего GUI, клавишей курсора для перемещения фокуса от одного компонента GUI к другому компоненту меню GUI, клавишей ввода для активизации в настоящее время сфокусированного элемента меню GUI и клавишей возврата для того, чтобы возвратиться к более высокой странице иерархического меню, и цифровыми клавишами.
Это завершает описание системы домашнего кинотеатра.
Носитель записи
Ниже описан носитель записи, предназначенный для воспроизведения устройством 200 воспроизведения. Носителем записи, который воспроизводится устройством 200 воспроизведения, является BD-ROM 100. Фиг.2 показывает внутреннюю структуру BD-ROM 100.
Первый ряд изображает BD-ROM, который является многослойным оптическим диском. Второй ряд изображает спиральную дорожку на каждом слое записи таким образом, чтобы «расширяться» в горизонтальном направлении. Спиральная дорожка обрабатывается как одна непрерывная область записи. Область записи состоит из начальной зоны, расположенной в наиболее внутреннем положении, оконечной зоны, расположенной в наиболее удаленном положении, и областях записи на первом, втором и третьем слоях записи, расположенных между начальной и оконечной зонами.
Третий ряд изображает область файловой системы BD-ROM. Область файловой системы состоит из "области управления томом" и "логического адресного пространства".
"Область управления томом" является областью, имеющей информацию управления файловой системой, хранящейся в ней. Информация управления файловой системой используется для обработки соответствующих областей записи на первом, втором и третьем слоях записи как одно непрерывное пространство файловой системы.
"Логическое адресное пространство" является адресным пространством, в котором сектора являются адресуемыми с последовательными номерами логических блоков (НЛБ, LBN). Таким образом, соответствующие области записи на первом, втором и третьем слоях записи, изображенные во втором ряду, составляют одно непрерывное логическое адресное пространство.
Четвертый ряд изображает распределение логического адресного пространства в области управления файловой системой. Область управления файловой системой имеет области записи не-AV данных в самом внутреннем положении и также имеет области записи AV данных непосредственно после области записи не-AV данных.
Пятый ряд изображает экстенты, записанные в области записи не-AV данных и области записи AV данных. В области записи AV данных записаны экстенты (EXT, EXT, EXT… на чертеже), составляющие AV файл. В области записи не-AV данных записаны экстенты (EXT, EXT, EXT… на чертеже), составляющие файл, кроме AV-файла.
Фиг.3 изображает формат применения BD-ROM.
"Каталог BDMV" является каталогом для хранения таких данных как AV содержимое и информации управления, хранимой на BD-ROM. BDMV каталог имеет пять подкаталогов под названием "JAR directory", "BDJO directory", "PLAYLIST directory” (“Каталог СПИСОК ВОСПРОИЗВЕДЕНИЯ"), "CLIPINF directory" и "STREAM directory" (“Каталог ПОТОК”). Каталог BDMV содержит два типа файлов: "index.bdmv" и "MovieObject.bdmv".
Файл "index.bdmv" содержит информацию управления, относящуюся ко всему BD-ROM. Файл index.bdmv считывается первым после того, как диск вставлен в устройство воспроизведения, что позволяет устройству воспроизведения уникально идентифицировать диск. Кроме того, файл index.bdmv указывает для каждого множества названий, доступных для воспроизведения на BD-ROM, номер названия и BD-J объект или объект кинофильма, определяющий это название.
"MovieObject.bdmv" содержит один или более объектов кинофильма. Каждый объект кинофильма является объектом управления, определяющим процедуру управления, которая должна быть выполнена устройством воспроизведения в операционном режиме (режиме HDMV), в котором интерпретатор команды является объектом управления. Объект кинофильма включает в себя одну или более команд и флаг маски, указывающий, маскировать ли вызов меню или вызов названия, сделанный пользователем.
Каталог "JAR directory" содержит файл JAR, соответствующий архивному файлу. Архивный файл создают посредством объединения одного или более файлов класса и одного или более файлов данных в единственный файл. Эти один или более файлов класса и один или более файлов данных объединяют в один файл с использованием, например, архиватора (не изображен).
Описание ниже относится к архивному файлу Java (зарегистрированный товарный знак) как примеру архивного файла.
Например, архивный файл Java (зарегистрированный товарный знак) определяет процедуру управления, которая должна быть выполнена устройством воспроизведения в операционном режиме (BD-J режиме). Объектом управления в BD-J режиме является виртуальная машина Java, которая является интерпретатором байт-кода, обеспеченным в устройстве воспроизведения. Файл, содержащий файл Java, идентифицируется 5-цифровым номером "zzzzz" и расширением "jar".
“BDJO directory" является каталогом, в который помещен файл, содержащий объект управления (объект BDJ). Объект BDJ определяет процедуру управления, которая должна быть выполнена устройством воспроизведения в операционном режиме (BD-J режиме). Объектом управления в BD-J режиме является виртуальная машина Java, которая является интерпретатором байт-кода, обеспеченным в устройстве воспроизведения. Файл, содержащий объект BDJ, идентифицируется 5-цифровым номером "zzzzz" и расширением "bdjo".
"PLAYLIST directory” является каталогом, в который помещен файл, содержащий информацию списка воспроизведения. Информация списка воспроизведения включает в себя информацию основного пути, определяющую секцию воспроизведения видео потока BaseView, и информацию подпути, определяющую секцию воспроизведения видео потока EnhancedView. Файл, содержащий информацию списка воспроизведения, идентифицирован пятицифровым числом "yyyyy" и расширением "mpls". Видео поток BaseView является видео потоком для представления монокулярного (двумерного) отображения для одного из левого вида и правого вида. С другой стороны, видео поток для представления правого вида или левого вида и не являющийся видео потоком BaseView, называется как "поток видео EnhanqedView". Данные картинки, составляющие поток видео EnhancedView, сжаты на основании корреляции экранного отображения с данными картинки, составляющими соответствующий поток видео BaseView.
Одним примером схемы сжатия видео, использующей корреляцию между правым и левым видами, является Multiview Video Coding (MVC), который является стандартом сжатия видео, предоставленным посредством исправления MPEG-4 AVC/H.264. Группа Joint Video Team (JVT) является объединенным проектом между ISO/IEC MPEG и ITU-T VJCEG и завершила разработку MVC, который является исправлением к стандарту сжатия видео H.264/MPEG-4 AVC, в июле 2008. MVC предназначен для совместного кодирования множества видео изображений для множества различных видов. В этом кодировании корреляция между прошлыми и будущими экранными изображениями используется для кодирования, так же как корреляция между экранными изображениями для различных точек просмотра, чтобы достичь более высокой эффективности сжатия по сравнению со сжатием, выполненным отдельно для экранных изображений различных видов.
Потоки, составляющие BaseView и EnhancedView, не являются ограниченными потоками видео. Потоки графики представления (PG) могут также составить BaseView и EnhancedView. В нижеследующем описании "поток BaseView" может относиться к любому из потока видео BaseView и потока PG BaseView, и "поток EnhancedView" относится к потоку видео EnhancedViqw и потоку PG EnhancedView.
"CLIPINF directory" является каталогом, в который помещен файл, содержащий информацию клипа (файл информации клипа). Файл информации клипа идентифицирован 5-цифровым идентификатором "xxxxx" и расширением "clpi" и включает в себя карты входов. Одна из карт входов имеет видео поток для левого вида, и другая имеет видео поток для правого вида.
Экстенты, составляющие файлы, содержащиеся в упомянутых выше каталогах, записаны в области не-AV данных.
"STREAM directory" является каталогом для хранения файла AV клипа, содержащего поток монокулярного видео, и файла AV клипа, содержащего поток стереоскопического видео. Файл, содержащий поток монокулярного видео, идентифицирован 5-цифровым идентификатором "xxxxx" и расширением "m2ts". Файл, хранящий поток стереоскопического видео, идентифицирован 5-цифровым идентификатором "xxxxx" и расширением "ilts".
Экстент, составляющий файл, содержащий поток BaseView и помещенный в каталог STREAM, и экстент, составляющий файл, содержащий поток EnhancedView и помещенный в каталог STREAM, записаны в области записи AV данных.
Фиг.4 показывает процессы, посредством которых исходные пакеты потока BaseView и потока EnhancedView записываются в область AV данных. На чертеже первый ряд изображает TS-пакеты, составляющие поток BaseView или поток EnhandedView.
К каждому TS-пакету из 188 байт, который составляет поток BaseView или поток EnhancedView, присоединен 4-байтовый заголовок TS_extra_header (заштрихованный прямоугольник на чертеже), как изображено во втором ряду чертежа, что приводит к последовательности исходных пакетов из 192 байт. TS_extra_header включает в себя Arrival_Time_Stamp, указывающее время, в которое TS-пакет должен быть введен в декодер.
Исходные пакеты потока BaseView и потока EnhancedView составляют одну или более "последовательностей ATC". "Последовательность ATC” относится к компоновке исходных пакетов, составляющих ось времени для ATS без какого-либо разрыва (т.е., нет разрыва во времени прибытия) в значениях полей Arrival_Time_Clock, на которые ссылаются поля Arrival_Time_Stamp. Другими словами, "последовательность ATC" относится к последовательности исходных пакетов, имеющих последовательную последовательность полей Arrival_Time_Clock, на которые ссылаются поля Arrival_Time_Stamp. Как описано ниже, ATS присоединяется во главе TS-пакета и указывает время, в которое TS-пакет должен быть передан декодеру.
Такая ATC последовательность составляет AV клип и записана на записывающих слоях с именем файла "xxxxx.m2ts".
Аналогично любому обычному компьютерному файлу, такой AV клип разделен на один или более экстентов файла и записан в области на записывающих слоях. Третий ряд на Фиг.4 изображает AV клип, и четвертый ряд схематично изображает, как AV клип записан. Экстенты файла, изображенные в четвертом ряду как составляющие файл, имеют длину данных, равную или больше заранее определенного размера (этот размер называют S_EXT).
Фиг.5 изображает соотношение между физическими блоками BD-ROM и исходными пакетами, составляющих один экстент файла. Как изображено на втором ряду на чертеже, множество секторов сформировано в области записи AV файла BD-ROM. Исходные пакеты экстента файла разделены на группы из множества исходных пакетов и записаны в смежные сектора, как изображено в первом ряду. Множество исходных пакетов все вместе называется как "Выровненный Блок", и запись на BD-ROM выполняется в Выровненных Блоках.
Как изображено на третьем ряду чертежа, код с исправлением ошибок присоединен к каждому множеству секторов, чтобы составить блок ECC. Устройство воспроизведения обеспечено, чтобы получить полный набор исходных пакетов, пока доступ к BD-ROM делается в Выровненных Блоках. Это завершает описание процесса записи AV клипа на BD-ROM.
Фиг.6A - таблица, показывающая возможные числовые диапазоны идентификаторов ИД пакета для TS-пакетов (PID) и типы потоков PES, переносимых TS-пакетами, имеющими соответствующие ИД пакета.
TS-пакеты, имеющие ИД пакета "0x0100" образуют карту программы (Program_map), тогда как TS-пакеты, имеющие ИД пакета "0x1001", образуют тактирование программы (PCR)
TS-пакеты, имеющие ИД пакета "0x1011", образуют видео поток BasjeView, и TS-пакеты, имеющие ИД пакета "0x1012", образуют видео поток EnhancedView.
TS-пакеты, имеющие ИД пакета в пределах от "0x1100" до "0x111F", образуют аудио поток.
TS-пакеты, имеющие ИД пакета в пределах от "0x1220" до "0x123F", образуют PG поток BaseView. TS-пакеты, имеющие ИД пакета в пределах от "0x1240" до "0x125F", образуют PG поток EnhancedView. Отметим, что TS-пакетам, образующим поток PG для двумерного вида и не BaseView PG поток, назначают идентификаторы ИД пакета в пределах от "0x1200" до "0x121F".
TS-пакеты, составляющие видео потоки, и TS-пакеты, составляющие PG потоки, группируются в зависимости от того, составляют ли TS-пакеты BaseView или EnhancedView. Фиг.6B показывает один пример.
Как показано на Фиг.6B, группа исходных пакетов, составляющих BaseView, включает в себя: исходные пакеты (каждый изображен как "Video" на чертеже), имеющие PID "0x1011" и образующие видео поток BaseView; исходные пакеты (каждый изображен как "Audio"), имеющие PID "0x1100" и образующие аудио поток; и исходные пакеты (каждый изображен как "PG"), имеющие PID "0x1220", "0x1221", "0x1222", "0x1223", "0x1224", "0x1225", и "0x1226" и образующие PG поток.
С другой стороны, группа исходных пакетов, составляющих EnhancedView, включает в себя: исходные пакеты (каждый изображен как "Video"), имеющие PID "0x1012" и составляющие EnhancedView видео поток; исходные пакеты (каждый изображен как "Audio"), имеющие PID "0x1101" и образующие аудио поток; и исходные пакеты (каждый изображен как "PG"), имеющие PID "0x1240”, "0x1241", "0x1242", "0x1243", "0x1244" и "0x1245" и образующие PG-поток.
Исходные пакеты, принадлежащие группе BaseView и группе EnhancedView, перемежаются. Фиг.7 показывает один пример перемеженной компоновки исходных пакетов. В примере, показанном на чертеже, экстенты, составляющие BaseView и EnhancedView, поочередно записывают в порядке "BaseView", "EnhancedView", "BaseView" и "EnhancedView"...
На Фиг.7 первый ряд изображает AV-файл, и второй ряд изображает экстенты EXT_L[i], EXT_L[i+l], EXT_R[i], и EXT_R[i +1], составляющие AV-файл. Третий ряд изображает последовательность исходных пакетов, принадлежащих этим экстентам, и четвертый ряд изображает последовательность секторов на слое записи. Следует заметить, что переменные "i" и "i+1" в скобках указывают порядок воспроизведения соответствующих экстентов. Согласно этой нотации, два экстента, снабженные переменной "i", а именно, EXT_L[i] и EXT_R[i], должны быть воспроизведены синхронно. Точно так же два экстента, снабженные переменной "i+1", а именно, EXT_L[i+1] и EXT_R[i+l], должны быть воспроизведены синхронно.
Экстенты EXT_L[i] и EXT_L[i+l] составлены исходными пакетами, имеющими PID "0x1011". Пунктирные стрелки h1, h2, h3 и h4 указывают членство, т.е., какому из потока BaseView и потока EnhancedView принадлежит каждый из экстентов EXT_L[i] и EXT_L[i+1]. Согласно членству, обозначенному стрелками h1 и h2, экстенты EXT_L[i] и EXT_L[i+1] принадлежат потоку BaseView, и экстенты EXT_R[i] и EXT_R[i+1] принадлежат потоку EnhancedView, как обозначено стрелками h3 и h4.
Размер экстента EXT_L[i] назван SEXT_L[i], тогда как размер экстента EXT_R [i] назван SEXT_R[i].
Ниже описано, как определить размер SEXT_L и SEXT_R. Следует заметить, что в устройстве воспроизведения экстенты считываются поочередно в два буфера считывания, один для правого вида и другой для левого вида, прежде чем будут выданы на видео декодер. Ввиду этого, SEXT_L и SEXT_R должны быть определены ввиду затраченного времени прежде, чем соответствующие буферы считывания для правого вида и левого вида заполнятся. Если Rmax1 обозначает скорость передачи к буферу считывания правого вида, емкость буфера считывания правого вида должна быть определена так, чтобы удовлетворить следующему соотношению:
Буфер считывания правого вида = Rmax1 × "Время, затраченное на заполнение буфера считывания левого вида во время операции, использующей скачок".
Термин "скачок" синонимичен с поиском на диске. Непрерывная область, которая может быть сохранена для записи в BD-ROM, ограничена. Поэтому, поток BaseView и поток EnhancedView не обязательно расположены рядом друг с другом на BD-ROM, и вместо этого записываются в раздельных областях.
Ниже рассмотрен термин "Время, затраченное на заполнение буфера считывания левого вида во время операции, использующей скачок". TS-пакеты передают на буфер считывания левого вида со скоростью передачи Rud-Rmax2. Rud-Rmax2 указывает разность между скоростью вывода Rmax2 буфера считывания левого вида и скоростью Rud ввода буфера считывания левого вида. Затем, время, затраченное на заполнение буфера считывания левого вида, выражается как RB2/(Rud-Rmax2).
Относительно считывания данных в буфер считывания левого вида необходимо рассмотреть время скачка (Tjump) от потока видео правого вида к потоку видео левого вида и время скачка (Tjump) от потока видео левого вида к потоку видео правого вида. Таким образом, время, выраженное как (2×Tjump+RB2/(Rud-Rmax2)), необходимо, чтобы заполнить буфер считывания левого вида.
Пусть Rmax1 обозначает скорость передачи буфера считывания правого вида. Тогда все исходные пакеты в буфере считывания правого вида должны быть выведены со скоростью передачи Rmax1 в течение времени хранения буфера считывания левого вида. Поэтому, размер RB1 буфера считывания правого вида задан следующим выражением:
RB1≥Rmax1×{2×Tjump+RB2/(Rud-Rmax2)}
Аналогично, размер RB2 буфера считывания левого вида задается следующим выражением:
RB2≥Rmax2×{2×Tjump+RB1/(Rud-Rmax1)}
В частности, размер памяти буфера считывания правого вида и буфера считывания левого вида равен 1,5 MB или меньше. Согласно настоящему варианту осуществления, размер SEXT_R экстента и размер SEXT_L экстента задаются равными или по существу равными буферу считывания правого вида и буферу считывания левого вида, соответственно. Это завершает описание того, как записываются поток BaseView и поток EnhancedView.
Ниже описана внутренняя структура потока BaseView и потока EnhancedView.
Фиг.8 изображает внутреннюю структуру стереоскопической пары из потока BaseView и потока EnhancedView для стереоскопического просмотра.
Каждый из потока BaseView и потока EnhancedView содержит данные картинки, например. Существует много типов данных картинки (кадра), включая I-картинку, P-картинку, и В-картинку.
I-картинка - данные картинки, соответствующие одному экранному изображению.
P-картинка - данные картинки, представляющие разность от I-картинки, на которую ссылается P-картинка.
В-картинка - данные картинки, сгенерированные со ссылкой на I-картинку и со ссылкой на P-картинку.
Второй ряд этого чертежа изображает внутреннюю структуру потока BaseView. Этот поток содержит части данных картинки I1, P2, Br3, Br4, P5, Br6, Br7 и P9.
Эти части данных картинки декодируются с тактированием, указанным посредством DTS (отметка времени декодирования: указание времени, в которое декодирование этой части данных картинки декодером должно быть начато), присоединенных к соответствующим частям данных картинки. Первый ряд изображает картинки левого вида и декодированные картинки I1, P2, Br3, Br4, P5, Br6, Br7 и P9. Изображения левого вида представлены посредством выполнения воспроизведения этих картинок в порядке I1, Br3, Br4, P2, Br6, Br7 и P5 согласно значениям PTS, присоединенным к соответствующим картинкам.
Четвертый ряд изображает внутреннюю структуру потока EnhancedView. Этот вторичный видео поток содержит картинки P1, P2, B3, B4, P5, B6, B7 и P8. Эти части данных картинки декодируются с тактированием, обозначенным посредством DTS, присоединенных к соответствующим частям данных картинки. Третий ряд изображает изображения правого вида. Изображения правого вида представлены посредством выполнения воспроизведения декодированных картинок P1, P2, B3, B4, P5, B6, B7 и P8 в порядке P1, B3, B4, P2, B6, B7 и P5 согласно значениям PTS (отметка времени представления: информация, указывающая моменты времени представления видео и аудио этой картинки), присоединенным к соответствующим картинкам.
Пятый ряд изображает, как состояния дисплейных очков 400 LC с затвором переключаются. Как изображено в пятом ряду, один из затворов LC, соответствующих правому виду, закрыт в течение времени, когда изображения левого вида представляются, тогда как другой из затворов LC, соответствующий левому виду, закрыт в течение времени, когда представляются изображения правого вида.
Кроме того, потоки EnhancedView сжимают в соответствии с внутрикадровым предсказанием, используя временную избыточность между картинками, а также избыточность между картинками, соответствующими различным видам. То есть картинки потока EnhancedView являются сжатыми в отношении картинок потока BaseView, имеющих то же самое время представления.
Например, первая P-картинка в потоке EnhancedView ссылается на I-картинку в потоке BaseView, и В-картинка в потоке EnhancedView ссылается на Br-картинку в потоке BaseView. Вторая P-картинка в потоке EnhancedView ссылается на P-картинку в потоке BaseView.
Фиг.9 иллюстрирует изображения воспроизведения, представленные пользователю посредством переключения прозрачного/непрозрачного состояния дисплейных очков с временами, изображенными на Фиг.8. Предположим, что период отображения экрана равен 1/24 секунды, и прозрачное/непрозрачное состояния индивидуальных дисплейных очков, соответствующих правому виду и левому виду, переключаются каждые 1/48 секунды. Следовательно, картинки, соответствующие правому виду и левому виду, поочередно представляются одна за другой. Фиг.9 схематично изображает, что изображения, представленные для левого вида, немного отличаются от изображений, представленных для правого вида, в отношении угла и/или положения лица человека, появляющегося на этих изображениях (заметим, что разница в угле и положении лица на Фиг.9 и 10 является только схематическими иллюстрациями).
Фиг.10 иллюстрирует стереоскопическое изображение, созданное остаточным изображением в человеческом глазу. Переключение прозрачного/непрозрачного состояний дисплейных очков согласно тактированию, показанному на Фиг.8, дает возможность вынудить распознавание в качестве стереоскопического изображения.
Ниже описаны PG-потоки. Фиг.11 изображает структуру PG-потока. На Фиг.11 первый ряд изображает последовательность TS-пакетов, составляющих AV клип, и второй ряд изображает последовательность PES-пакетов, составляющих PG-поток. Последовательность PES-пакетов во втором ряду получается посредством извлечения и конкатенации полезных данных TS-пакетов, имеющих заранее определенный PID из числа TS-пакетов в первом ряду.
Третий ряд изображает структуру PG потока. Поток PG состоит из функциональных сегментов, включающих в себя PCS (сегмент композиции представления), WDS (сегмент определения окна), PDS (сегмент определения палитры), ODS (Object_Definition_Segment, сегмент определения объекта), и END (конец сегмента набора отображения). Из этих функциональных сегментов PCS называют сегментом композиции отображения, и WDS, PDS, ODS, и END называют сегментами определения. Пакеты PES и функциональные сегменты могут находиться в соответствии “один к одному” или в соответствии "один ко многим". Таким образом, один функциональный сегмент может быть преобразован в один PES-пакет или фрагментирован во множество PES-пакетов и записан на BD-ROM.
Фиг.11B изображает PES-пакеты, полученные посредством преобразования функциональных сегментов. Как изображено на Фиг.11B, каждый PES-пакет состоит из "заголовка пакета" и "полезных данных", которые являются объектом данных этого функционального сегмента. Заголовок пакета содержит DTS и PTS функционального сегмента. В нижеследующем описании DTS и PTS, содержащиеся в заголовке PES пакета функционального сегмента, называется как DTS и PTS функционального сегмента.
Функциональные сегменты различных упомянутых выше типов составляют логическую структуру, как показано на Фиг.12. Фиг.12 изображает логическую структуру, составленную различными типами функциональных сегментов. На этом чертеже четвертый ряд изображает функциональные сегменты, третий ряд изображает типы Display Set (наборов отображения), второй ряд изображает Display Set (наборы отображения), и первый ряд изображает Периоды (Epoch). Каждый набор отображения (в дальнейшем, просто "DS"), изображенный во втором ряду, является набором функциональных сегментов, составляющих одно экранное отображение графических данных, или графических данных, содержащихся в PG потоке. Кроме того, пунктирная линия kz1 на чертеже указывает членство, то есть, какой из функциональных сегментов, изображенных в четвертом ряду, принадлежит какому DS. Показано, что последовательность функциональных сегментов PCS-WDS-PDS-ODS-END составляет один DS. Устройство воспроизведения способно конфигурировать одно экранное отображение графических данных посредством считывания с BD-ROM множества функциональных сегментов, составляющих этот DS.
Каждый Период, изображенный в первом ряду, относится к периоду на временной оси воспроизведения AV клипа, в отношении которого управление памятью является непрерывным, и также относится к группе данных, назначенных этому периоду. Память, которая должна управляться, включает в себя графическую плоскость для хранения одного экранного отображения графических данных, и буфер объектов для хранения декомпрессированных графических данных. Управление памятью, как говорят, является непрерывным, если никакого прерывания графической плоскости и буфера объектов не происходит в течение Периода, и стирание и воспроизведение графических данных происходит только во время ограниченной прямоугольной области графической плоскости. (*Следует заметить, что "прерывание" означает очистить сохраненный контент всей Графической Плоскости и всего Буфера Объектов). Другими словами, прямоугольная область является фиксированной по размеру и положению в Периоде. Когда удаление и воспроизведение графики выполняется в пределах фиксированной прямоугольной области, обеспечивается синхронизация графики и видео. Другими словами, Период - это единица времени на временной оси воспроизведения, во время которой обеспечена синхронизация между видео и графикой. Чтобы изменить эту заранее определенную область, для которой выполняется воспроизведение/удаление, необходимо определить точку изменения на временной оси воспроизведения и установить новый Период от этой точки вперед. На границе между такими двумя Периодами синхронизация между видео и графикой не обеспечивается.
Кроме того, описанный в отношении положения субтитров на экране отображения, Период, как говорят, является периодом на временной оси воспроизведения, во время которого субтитры показываются только в пределах фиксированной прямоугольной области экрана отображения.
Это заканчивает описание Периодов. Ниже описаны Наборы Отображения.
На Фиг.12 пунктирные линии hk1, 2 указывают, какому типу DS в третьем ряду принадлежит каждый DS во втором ряду. Кроме того, последовательности DS, включая Начало Периода (Epoch Start), Точка Захвата (Acquisition Point) и Нормальный Случай (Normal Case), составляют Период, изображенный в первом ряду. Следует заметить, что "Начало Периода", "Точка Захвата" и "Нормальный Случай" обозначают типы DS. Хотя DS Точка Захвата предшествует DS Нормальный Случай на Фиг.12, это является просто примером и порядок может быть полностью изменен.
"Начало Периода" является набором отображения, который указывает начало нового Периода. Поэтому Начало Периода содержит полный набор функциональных сегментов, необходимых для образования состава отображения. Начало Периода обеспечено в такой позиции, которая, вероятно, будет выбрана в качестве точки начала воспроизведения, и начало части в кинофильме является одним примером.
"Точка Захвата" является набором отображения, который не является началом Периода, но содержит полный набор функциональных сегментов, необходимых для формирования последующего состава отображения. DS Точка Захвата гарантирует, что графика должным образом отображается пока воспроизведение начато с DS Точка Захвата. Другими словами, DS Точка Захвата разрешает композицию экранного отображения от средней точки в Периоде. Каждый DS Точка Захвата обеспечен в такой позиции, которая может быть выбрана в качестве начальной точки, например, позиции, которая является задаваемой с использованием поиска времени. "Поиск времени" относится к операции, посредством которой пользователь вводит цифры минут/секунд, чтобы определить местонахождение соответствующей точки воспроизведения. Это время задается пользовательским вводом в единицах, скажем, 10 секунд (или 10 минут), так, чтобы точки воспроизведения, расположенные с промежутками в 10 секунд (или 10 минут), были задаваемыми с использованием поиска времени. Наборы DS Точка Захвата предоставлены в позициях, которые являются задаваемыми с использованием поиска времени, так, чтобы воспроизведение PG-потока было должным образом выполнено в ответ на поиск времени.
Набор DS "Нормальный Случай" содержит только данные разности относительно предыдущего Набора Отображения. Например, если графика DSv имеет тот же самый контент, что и непосредственно предшествующий DSu, но будет иметь отличную композицию отображения от DSu, то DSv будет набором DS Нормальный Случай, содержащим только PC и END. При такой компоновке нет необходимости обеспечивать ODS, которые были уже предоставлены. В результате количество данных, хранящихся на BD-ROM, может быть уменьшено. С другой стороны, невозможно показать графику, используя один только DS Нормальный Случай, так как этот DS содержит только данные разности.
Ниже описаны Сегменты Определения (CD, WDS, и PDS).
"Object_Definition_Segment" (Сегмент Определения Объекта) - функциональный сегмент, который определяет графический объект. Ниже описаны графические объекты.
AV клипы, записанные на BD-ROM, показывают качество изображения, эквивалентное таковому из высококачественных телевизионных кадров. Разрешение для отображения графических объектов установлено равным эквивалентным высокому 1920×1080. Это высокое разрешение позволяет воспроизводить субтитры стиля кинотеатра (например, субтитры стиля четкого рукописного текста) и анимированные персонажи на BD-ROM, например. Графический объект состоит из множества частей длины серии данных. Данные длины серии выражают строку пикселей, используя код пикселя, который указывает значение пикселя и непрерывную длину значения пикселя. Код пикселя имеет 8 битов в длину, и принимает значение 1-255. Данные длины серии позволяют выбрать 256 цветов из возможных 16777216 в соответствии с кодом пикселя, и выбрать цвет пикселя. Следует заметить, что, когда графический объект предназначен для представления субтитров, необходимо расположить текстовую строку на прозрачном фоне.
ODS определяет PG согласно структуре данных, показанной на Фиг.13A. Как показано на Фиг.13A, ODS состоит из следующих полей: “segment_type" указывающее, что сегмент является типа ODS; "segment_length", указывающее длину данных ODS; "object_id", уникально идентифицирующее графический объект, соответствующий PG в Периоде; "object_version_number", указывающее версию ODS в Периоде; "last_in_sequence_flag"; и "object_data_fragment", содержащее последовательную последовательность байтов, соответствующих части или всем PG.
Период графического потока включает в себя множество ODS, имеющих одинаковый ID. Множество ODS, имеющих одинаковый ID, также имеют одинаковую ширину и высоту и назначаются с общей области в Object Buffer (Буфере Объектов). После того, как один из ODS, имеющих одинаковый ID, считан в общей области, этот считанный ODS перезаписывается последующим ODS, имеющим тот же самый ID. Таким образом, согласно ходу воспроизведения видео потока, ODS в буфере объектов, перезаписываемые впоследствии считанными ODS, которые имеют тот же самый идентификатор, позволяют картинкам в ODS достигнуть временного перехода. Ограничение, что графические объекты, имеющие одинаковый ID, также имеют одинаковый вертикальный и горизонтальный размер, применяется только в пределах одного и того же Периода. Графические объекты, принадлежащие конкретному Периоду, и графические объекты, принадлежащие следующему Периоду, могут иметь различные вертикальные и горизонтальные размеры.
Ниже поясняются last_insequence_flag и object_data_fragment. В некоторых случаях невозможно сохранить декомпрессированную графику, которая составляет PG в одном ODS из-за ограничения полезных данных пакета PES. В таких случаях графика разбивается на ряд последовательных фрагментов, и один фрагмент устанавливается равным object_data_fragment. Когда один Graphic Object (Графический Объект) сохраняется как больше чем один фрагмент, каждый фрагмент, кроме последнего фрагмента, имеет один и тот же размер. Последний фрагмент меньше чем или равен размеру предыдущих фрагментов. ODS, несущий фрагменты, появляется в одном и том же последовательном порядке в DS, с концом последовательности, указанным посредством ODS, имеющим last_insequence_flag. Хотя вышеописанный синтаксис ODS основан на предпосылке, что фрагменты расположены в порядке от предшествующих PES, фрагменты могут быть расположены так, чтобы каждый PES содержал пустую часть.
"Palette Definition Segment” (Сегмент Определения Палитры) (PDS) является функциональным сегментом, хранящим данные палитры. Данные палитры указывают комбинации кодов пикселей из 1-255 и значения пикселей. Каждое значение пикселя составлено из разностного компонента красного (значение Cr), разностного компонента синего (значение Cb), компонента яркости (значение Y), и прозрачности (значение T). Каждый код пикселя в данных длины серии преобразуется в значение пикселя, указанное палитрой, чтобы сгенерировать цвет. Структура данных PDS показана на Фиг.14B. Как показано на Фиг.14B, PDS включает в себя следующие поля: "segment_type", указывающее, что сегмент имеет тип PDS; "segment_length", указывающее длину данных PDS; "palette_id" для уникальной идентификации палитры, включенной в PDS, "paliette_version_number", указывающее версию PDS в пределах Периода; и "palette_entry", несущее информацию для каждой записи. Поле "palette_entry" указывает разностный компонент красного (Cr_value), разностный цветовой компонент синего (Cb_value), компонент светимости (Y_value) и прозрачность (T_value) для каждой записи.
Ниже описан WDS.
"Window_definition_segment" (Сегмент определения окна) - функциональный сегмент, который определяет прямоугольную область на Графической Плоскости. Как описано выше, управление памятью непрерывно по Периоду при условии, что очистка и воспроизведение имеют место только в пределах фиксированной прямоугольной области на Графической Плоскости. Прямоугольную область на Графической Плоскости называется "Окном" и определена посредством WDS. Фиг.15A изображает структуру данных WDS. Как показано на чертеже, WDS включает в себя следующие поля: "window_id", уникально идентифицирующее Окно на Графической Плоскости; "window_horizontal_position", указывающее горизонтальную позицию верхнего левого пикселя на Графической Плоскости; "window_vertical_position", указывающее вертикальную позицию верхнего левого пикселя на Графической Плоскости; "window_width", указывающее ширину Окна на Графической Плоскости; и "window_height", указывающее высоту Окна на Графической Плоскости.
Ниже описаны значения, которые может принимать поле window_horizontal_position, поле window_vertical_position, и поле window_width. Эти поля относятся к системе координат, определяющей внутреннюю область графической плоскости. Эта Графическая Плоскость имеет двумерную область, имеющую размер, определенный значениями video_height и video_width.
Поле window_horizontal_position определяет горизонтальную позицию верхнего левого пикселя Окна на Графической Плоскости и таким образом принимает значение в диапазоне от 1 до video_width. Поле window_vertical_position определяет вертикальную позицию верхнего левого пикселя Окна на Графической Плоскости, и таким образом принимает значение в диапазоне от 1 до video_height.
Поле window_width поле задает ширину Окна на Графической Плоскости, и таким образом принимает значение в диапазоне от 1 до (video_width) - (window_horizontal_position). Поле window_height задает высоту Окна на Графической Плоскости, и таким образом принимает значение в диапазоне от 1 до (video_height) - (window_vertical_jposition).
Положение и размер Окна могут быть определены для каждого Периода, используя поля window_horizontal_position, window_vertical_position, window_width и window_height в WDS. Таким образом, настройки могут быть сделаны во время авторской разработки, таким образом, что Окно не мешает элементам картинки в течение Периода. Например, Окно может быть сделано таким, чтобы появляться в желательных границах, чтобы гарантировать, что субтитры, показанные с использованием графики, ясно видны. Так как WDS может быть определено для каждого Периода, графика отображается в подходящей позиции на экране дисплея, когда элементы картинки изменяются во времени. Это поддерживает то, что графика показывается в подходящей позиции, чтобы гарантировать ясный вид графики. В результате качество выходного сигнала кинофильма может быть поднято до уровня кинофильма, в котором субтитры встроены в картинку.
Ниже описан "END of Display Set Segment” (Конец Сегмента Набора Отображения). Конец Сегмента Набора Отображения - функциональный сегмент, указывающий, что передача Набора Отображения завершена, и располагающийся непосредственно после последнего ODS в Наборе Отображения. Конец Сегмента Набора Отображения включает в себя следующие поля: "segment_type", указывающее, что сегмент является типа Конец Набора Отображения; и "segment_length", указывающее длину данных Конца Сегмента Набора Отображения. Поля Конца Сегмента Набора Отображения специально не требуют описания и таким образом не изображены на чертежах.
Это завершает описание ODS, PDS, WDS и END.
Ниже описан PCS. PCS - функциональный сегмент для составления интерактивного экранного отбражения. Фиг.14B изображает структуру данных PCS. Как показано на Фиг.14B, PCS включают в себя следующие поля: "segment_type"; "segment_length"; "composition_number"; "composition_state"; "palette_update_flag"; "palette_id" и "composition_object (1) to (m)".
Поле "composition_number" идентифицирует обновление графики в Наборе Отображения, используя число от 0 до 15. В частности, поле composition_number увеличивается на единицу для каждого обновления графики с начала Периода до PCS, содержащего поле composition_number.
Поле "composition_state" указывает, является ли Набор Отображения, начинающийся с PCS, Normal Case, Acquisition Point или Epoch Start.
Поле "palette_update_flag" указывает, описывают ли PCS Обновление Отображения только палитры. Обновление отображения только палитры - обновление, которое ограничивается заменой палитры новой палитрой. Чтобы указать Обновление Отображения Только палитры, palette_update_flag установлен равным 1.
Palette_id указывает палитру, которая должна использоваться для Обновления отображения только палитры.
Поля "composition_object" (1)-(m) каждое содержит информацию управления для реализации композиции экранного отображения, используя Набор Отображения, которому принадлежит PCS. На Фиг.14B composition_object(i) расширен, как обозначено пунктирными линиями wd1, чтобы проиллюстрировать внутреннюю структуру полей composition_object. Как иллюстрируется, composition_object(i) включает в себя следующие поля: "object_id_ref"; "window_id_ref"; "forced_on_flag"; "object_cropped_flag"; "object_horizontal_position"; "object_vertical_position"; и "cropping_rectarigle_information (1) (2)... (n)".
Поле “object_id_ref" содержит опорное значение, которое является идентификатором PG (object_id). Это опорное значение идентифицирует PG, которые должны использоваться, чтобы представить композицию отображения, соответствующую composition_object (i).
Поле window_id_ref содержит опорное значение, которое является идентификатором окна (window_id). Это опорное значение определяет Окно, в котором PGs должен быть показан, чтобы представить композицию отображения, соответствующую composition_object (i).
"Forced_on_flag" равно 1, когда указывает графический объект, который должен быть принудительно показан, даже когда графический объект установлен в OFF (выключен) в установках устройства воспроизведения.
Поле "object_cropped_flag" указывает, должны ли PG, обрезанные в буфере объектов, быть показаны. Когда поле object_cropped_flag установлено равным 1, обрезанные PG в буфере объектов отображаются. Когда поле object_cropped_flag установлено в 0, обрезанные PG в буфере объектов не отображаются.
Поле object_horizontal_position определяет горизонтальную позицию левого верхнего пикселя PG на графической плоскости.
Поле object_vertical_position определяет вертикальную позицию левого верхнего пикселя PGs на графической плоскости.
Поля "cropping_rectangle information (1), (2)... (n)" являются действительными, когда поле "object_cropped_flag" установлено в 1. cropping_rectangle information (i) расширено, как обозначено пунктирными линиями wd2, чтобы проиллюстрировать внутреннюю структуру информации поля “composition_rectangle information”. Как обозначено пунктирными линиями, cropping_rectangle information (i) включает в себя следующие поля: "object_cropping_horizontal position"; "object_cropping_vertical position"; "object_cropping_width"; и "object_cropping_height".
Поле object_cropping_horizontal_position задает горизонтальную позицию пикселя левого верхнего угла обрезающего прямоугольника для PG на графической плоскости. Обрезающий прямоугольник используется, чтобы обрезать часть PG и соответствует "Region" в стандарте ESTI В300743.
Поле "object_cropping_vertical_position" определяет вертикальную позицию левого верхнего пикселя графического объекта на графической плоскости.
Поле "object_cropping_width" задает ширину обрезающего прямоугольника в графическом объекте.
Поле "object_cropping_height" задает ширину обрезающего прямоугольника в графическом объекте.
Это завершает описание структуры данных PCS.
Ограничение при использовании модели с 2 декодерами
Ниже описано, как поля вышеописанных функциональных сегментов устанавливаются для каждого потока PG левого вида и потока PG правого вида, соответственно.
Фиг.15 показывает соответствие между типом DS, composition_number и forced_on_flag включенных в поток PG левого вида, и типом DS, composition_number, и forced_on_flag, которые включены в поток PG правого вида. Как показано на Фиг.15, DS, который является Epoch Start (Началом Периода) и DS, который является Acquisition Point (Точкой Захвата) всегда существуют как пара левого вида и правого вида. Причина этого заключается в том, что Epoch Start и Acquisition Point - единица, которая может укомплектовать рисунок из одного или более графических объектов как единого блока, и 3D воспроизведение не может быть выполнено, если Epoch Start и Acquisition Point не являются парой. Другими словами, когда DS для левого вида есть Epoch Start, всегда есть парный DS для правого вида, и это composition_state также должно быть Epoch Start.
Точно так же, когда DS левого вида есть Acquisition Point, DS правого вида всегда существует, чтобы быть парным с DS левого вида, и это composition_state также должно быть Acquisition Point.
Когда DS левого вида есть Normal Case, также предпочтительно чтобы соответствующий его DS правого вида был Normal Case.
Таким образом, делая DS такими, которые соответствуют совместному использованию одного и того же типа, может быть обеспечен стереоскопический вид, например, при выполнении произвольного доступа. Другими словами, когда DS левого вида, например, является Epoch Start, так как DS соответствующего правого вида является также Epoch Start, компоновка DS левого вида и DS правого вида в позициях, когда обнаруживают, что эти наборы отображения пропущены, позволяет избежать ситуации, в которой декодируется только один из левого вида и правого вида, и другой не может быть декодирован.
Кроме того, как показано на Фиг.15, composition_number для DS левого вида должно быть равным composition_number для DS правого вида, который должен быть воспроизведен как парный с DS левого вида. Установка composition_numbers равными для корреляции DS для левого вида и правого вида таким образом позволяет графическому декодеру легко определить, какой из DS левого вида и DS правого вида выводить во время воспроизведения.
Кроме того, необходимо установить forced_on_flag в DS потока PG левого вида в то же значение, что и forced_on_flag для DS, соответствующего PG-потоку правого вида. Причина этого в том, что стереоскопический вид графического объекта невозможен, когда только правый вид графического объекта (или только левый вид графического объекта) выводятся во время воспроизведения, и соответствующий левый вид графического объекта (или правый вид графического объекта) не выводится.
Тот факт, что сегменты композиции представления сохранены в PES пакетах, был уже описан. Конечно, PTS пакета PES, который хранит сегмент композиции представления, включенный в DS левого вида, должен быть идентичным по значению с PTS пакета PES, который хранит сегмент композиции представления, включенный в DS правого вида.
Кроме того, в сегменте определения палитры для DS левого вида и сегменте определения палитры соответствующего DS правого вида, идентичный контент установлен для соответствий между кодовыми значениями, яркостью и цветовой разностью, и palette_ids также являются идентичными для обоих.
Ниже описано, как заполняются поля WDS и другие поля, описанные выше в PCS. Фиг.16 и 17 показывают примеры записи WDS и PCS, принадлежащих Набору Отображения. Здесь, хотя пример описан как случай, в котором графикой являются анимированные персонажи, графика может быть титрами, составленными из набора декоративных символов и т.д.
Фиг.16 показывает пример записи WDS и PCS, принадлежащих DS левого вида. На Фиг.16A значение поля window_horizontal_position (левая) и поля window_vertical_position в WDS задают верхние левые координаты Окна на графической плоскости. Поле window_width и поле window_height в WDS определяют высоту и ширину экранного отображения окна. Здесь, (левая) для window_horizontal_position (левая) означает, что эта позиция window_horizontal_position имеет отличное значение от соответствующей позиции window_horizontal_position (правая).
На Фиг.16A поле object_cropping_horizontal_position (левая) и поле object_cropping_vertical_position, которые включены в информацию обрезания, определяют базовую точку прямоугольника обрезания в системе координат, началом которой является верхний левый угол графического объекта в буфере объектов. Прямоугольник обрезания (обведенный толстой линией) затем определяется, используя значения поля object_cropping_width, поля object_cropping_height, и базовой точки. Обрезанный графический объект затем располагается в области cp1 (обведенной прямоугольником) так, чтобы верхний левый угол обрезанного графического объекта лежал в пикселе, определенном значением поля object_horizontal_position (левая) и значением поля object_vertical_position в системе координат графической плоскости. Это вынуждает записывать графику в окно графической плоскости. Следовательно, на графику накладывается движущаяся картинка.
Фиг.17 является примером WDS и PCS, принадлежащих DS правого вида. На Фиг.17A window_horizontal_position (правая) и window_vertical_position в WDS указывает левую верхнюю координату окна в графической плоскости, и window_width и window_height указывают ширину и высоту экранного отображения окна. Здесь, "правое" в window_horizontal_position (правая) означает, что эта window_horizontal_position является отличным значением от window_horizontal_position (левая) соответствующего левого вида.
Позиции object_cropping_horizontal_position (правая) и object_cropping_vertical_position в информации обрезания Фиг.17A указывают базовую точку диапазона обрезания в системе координат, которая берет левую верхнюю координату графики в буфере объектов в качестве основы. Диапазон, обозначенный object_cropping_width, object_cropping_height, и этой базовой точкой (обозначенной частью толстой линии на чертеже), является диапазоном обрезания. Обрезанная графика компонуется в системе координат графической плоскости в прямоугольной области cp2, которая имеет object_horizontal_position (правая) и object_vertical_position в качестве базовой точки (левая верхняя). Это вынуждает записывать графику в окно графической плоскости. Следовательно, на графику налагается движущаяся картинка.
Как показано выше, в отношении WDS window_width и window_height установлены равными одним и тем же значениям и в левом виде и в правом виде. Причина этого в том, что, когда горизонтальные ширины и вертикальные ширины экранных отображений окон различны между левым видом и правым видом, имеются случаи, в которых графика вписывается в экранное отображение окна в одном виде, и не вписывается в экранное отображение в другом виде, и синхронизация между видео и графикой в таком случае не гарантируется. Кроме того, относительно левой верхней координаты окна в графической плоскости, значение window_vertical_position является одинаковым и для левого вида и для правого вида, но значение window_horizontal_position различно между левым видом и правым видом. Это обычно вызывается разностью в позиции видимого объекта в горизонтальном направлении между левым глазом и правым глазом. В зависимости от способа генерирования графики значения window_vertical_position могут быть различными между левым видом и правым видом, и значения window_horizontal_position могут быть одинаковым и для левого вида и для правого вида.
Кроме того, object_cropping_width и object_cropping_height могут быть установлены равными одним и тем же значениям и для левого вида и для правого вида. Причина этого в том, что, когда диапазон обрезания различен, разница приводит к графике, скомпонованной в графической плоскости между левым видом и правым видом. Кроме того, относительно базовой точкой диапазона обрезания, хотя object_cropping_vertical_position установлена равной одинаковому значению и в левом виде и в правом виде, object_cropping_horizontal_position установлена равным различным значениям между левым видом и правым видом. Значения object_cropping_vertical_position могут быть различными между левым видом и правым видом, и значение object_cropping_horizontal_position может быть одинаковым между левым видом и правым видом.
Кроме того, относительно базовой точкой прямоугольного диапазона, хотя object_vertical_position установлена равной одинаковому значению между левым видом и правым видом, object_horizontal_position установлена равной различным значениям между левым видом и правым видом. Как описано выше, это обычно вызывается разностью в положении видимого объекта в горизонтальном направлении между левым глазом и правым глазом. В зависимости от способа генерирования графики значения object_vertical_position могут быть различными между левым видом и правым видом, и значения object_horizontal_position могут быть одинаковыми и для левого вида и для правого вида.
Кроме того, как показано на Фиг.16 и 17, так как графика левого вида и графика правого вида являются графикой, рассматриваемой с различных углов, object_data_fragments обоих ODS естественно являются различными. Как показано на Фиг.18, object_id установлен равным одному и тому же значению. Причина этого в том, что, используя структуру с 2 декодерами в устройстве воспроизведения, возможно использовать структуру, в которой контроллер графики совместно используется между этими двумя декодерами, и в этом случае, если object_id графических объектов, соответствующих левому виду и правому виду, не установлены равными одинаковому значению, графический контроллер не может различить, какие графические объекты соответствуют друг другу.
Добавление вышеописанного ограничения позволяет выполнить реализацию стереоскопического вида в структуре с 2 декодерами посредством потока PG левого вида и потока PG правого вида.
Ниже описан способ, в котором Наборы Отображения, включающие в себя PCS и ODS распределены на временной оси воспроизведения AV клипа. Период (Epoch) является периодом на временной оси воспроизведения, в течение которого управление памятью является непрерывным, и каждый Период состоит из одного или более Наборов Отображения. Поэтому ниже рассмотрен способ, в котором один или более Наборов Отображения распределены на временной оси воспроизведения. Следует заметить, что осью времени воспроизведения является принятая ось, используемая для того, чтобы назначить декодированное тактирование и тактирование воспроизведения для каждого экранного отображения данных картинки, составляющих видео поток, который является мультиплексированным в AV клип. Тактирование декодирования и тактирование воспроизведения выражаются с точностью до 1/90000 секунд. DTS и PTS, связанные с PCS и ODS в Наборе Отображения, задают распределения моментов времени для синхронного управления на временной оси воспроизведения. Другими словами, DS распределяют по временной оси воспроизведения посредством выполнения синхронного управления, используя DTS и PTS, связанные с PCS и ODS.
DSn Набора Отображения для Наборов Отображения, принадлежащих Периоду, распределяют по временной оси воспроизведения, используя PTS и DTS, которые установлены так, как показано на Фиг.19. Фиг.19 показывает ось времени воспроизведения AV клипа, для которой был распределен DSn. На Фиг.19 начало периода DSn задано значением DTS (DTS (DSn [PCS])) из PCS, принадлежащего этому DSn, и конец этого периода задан значением PTS (PTS (DSn [PCS])) того же самого PCS. Тактирование для первого отображения также задано значением PTS (PTS(DSn[PCS])) PCS. Если тактирование желательной картинки в видео потоке согласовано с PTS (DSn[PCS])), то первое отображение DSn будет синхронизировано с видео потоком.
PTS(DSn[PCS]) является значением, полученным посредством суммирования DTS(DSn[PCS]) периода для декодирования ODS (DECODEDURATION) к DTS (DSn [PCS]).
Декодирование, необходимое для первого отображения DSn, выполняется в DECODEDURATION. На Фиг.19, период mc1 - это период, во время которого декодируется произвольный ODS (ODSm), принадлежащий DSn. Начальная точка периода декодирования mc1 задается посредством DTS (ODSn [ODSm]), и конечная точка периода декодирования mc1 задается посредством PTS (ODSn [ODSm]).
Поэтому Период предписывается посредством назначения каждого из ODS в Периоде временной оси воспроизведения. Это завершает описание распределения по временной оси воспроизведения.
Файл информации клипа
Фиг.20 показывает пример файла информации клипа. Как показано на чертеже, каждый файл информации клипа содержит информацию управления для AV клипа. Файлы информации клипа обеспечиваются в соответствии один к одному AV клипам, и каждый состоит из информации клипа, таблицы атрибутов потока и таблицы карты входов.
Выносная линия zh1 показывает в увеличенном виде внутреннюю структуру таблицы атрибутов потока. Как показано выносной линией, таблица атрибутов потока содержит, для каждого PID, часть информации атрибутов соответствующего потока, включенного в AV клип. Информация атрибутов включает в себя различную информацию для каждого потока BaseView и потока EnhancedView.
Выносная линия zh2 показывает в увеличенном виде внутреннюю структуру потока BaseView. Как показано выносной линией, информация атрибутов потока для потока BaseView, составленного из TS-пакетов, имеющих PID=0x1011, определяет кодек, разрешение, соотношение сторон изображения, и частоту кадров.
Ниже описана внутренняя структура таблицы карты входов.
Таблица карты входов показывает соотношения между исходным количеством пакетов произвольного исходного пакета и PTS на временной оси STC, из числа временных осей STC, определенных с использованием ID пакета.
Ось времени STC является осью времени MPEG2-TS, определенной, чтобы указать время декодирования и время отображения. "Последовательность STC" относится к последовательности исходных пакетов, которые не имеют какой-либо неоднородности в STC (частоте системных часов), которая является временной осью системы для AV потоков.
Фиг.21A изображает внутреннюю структуру таблицы карты входов. Выносная линия eh1 показывает в увеличенном виде внутреннюю структуру таблицы карты входов.
Как показано выносной линией eh1, карты входов обеспечены одна для каждого пакетизированного элементарного потока, составленного из множества типов TS-пакетов. Более конкретно, одна карта входов обеспечивается для потока BaseView, составленного из TS-пакетов, имеющих PID=0x1011, и одна карта входов - для потока EnhancedView, составленного из TS-пакетов, имеющих PID=0x1012. Карты входов указывают множество "точек входа", каждая из которых является информацией, составленной из пары PTS и SPN. Каждая точка входа имеет, в дополнение к PTS и SPN, флаг способа отображения (флаг "is_angle_change"), указывающий, возможно ли декодирование из этого SPN. Кроме того, значение, которое увеличивается для каждой точки входа от начальной точки 0, называют "ИД точки входа" (в дальнейшем называемую "EP_ID").
При использовании этой карты входов устройству воспроизведения разрешено определять местоположение исходного пакета, соответствующего произвольной точке на временной оси видео потока. Например, выполняя специальную операцию воспроизведения, такую как быстрый переход вперед или «обратная перемотка» (переход назад), устройству воспроизведения разрешается эффективно выполнить воспроизведение, не анализируя AV клип, посредством выбора I-картинки, записанной в карте входов в качестве начальной точки воспроизведения. Кроме того, карта входов обеспечивается для каждого видео потока, мультиплексированного в AV клип, и этими картами входа управляют с использованием PID.
Выносная линия eh2 показывает в увеличенном виде внутреннюю структуру карты входов элементарного потока, составленного из исходных пакетов, имеющих PID=0x1011. Карта входов указывает точки входа, соответствующие EP_ID=0, EP_ID=1, EP_ID=2 и EP_ID=3. Точка входа, соответствующая EP_ID=0, состоит из флага is_angle_change, установленного в ON, SPN=3 и PTS=80000. Точка входа, соответствующая EP_ID=1, состоит из флага is_angle_change, установленного в OFF, SPN=1500 и PTS=270000.
Точка входа, соответствующая EP_ID=2, состоит из флага is_angle_change, установленного в OFF, SPN=3200 и PTS=360000. Точка входа, соответствующая EP_ID=3, состоит из флага is_angle_change, установленного в OFF, SPN=4800, и PTS=450000.
Фиг.21B показывает исходные пакеты, заданные множеством точек входа в карте входов, соответствующей PID=0x1011, показанный на Фиг.23A. Точка входа, соответствующая EP_ID=0, указывает SPN=3, и этот исходный номер пакета связан с PTS=80000. Точка входа, соответствующая EP_ID=1, указывает SPN=1500, и этот исходный номер пакета связан с PTS=270000.
Точка входа, соответствующая EP_ID=2, указывает исходный пакет, имеющий SPN=3200, и этот исходный номер пакета связан с PTS=360000. Точка входа, соответствующая EP_ID=3, указывает исходный пакет, имеющий SPN=4800, и этот исходный номер пакета связан с PTS=450000.
Фиг.22 изображает точки входа, записанные в карте входов. Первый ряд изображает ось времени, заданную последовательностью STC. Второй ряд изображает карту входов в информации клипа. Третий ряд изображает последовательности исходных пакетов в последовательности ATC.
Стрелки te1, te2, te3 и te4 схематично показывают отношение соответствия между точками t1, t11, t21 и t31 воспроизведения на временной оси ATC и соответствующими точками входа. Стрелки sh1, sh2, sh3 и sh4 схематично показывают отношения соответствия между SPN=n1, n11, n21 и n31 и соответствующими точками входа.
Рассмотрим карту входа, которая определяет исходные пакеты, имеющие SPN=n1, из числа исходных пакетов в последовательности ATC. В случае этой карты входов PTS установлена для указания t1 в последовательности STC. Эта карта входов позволяет устройству воспроизведения выполнить произвольный доступ к SPN=n1 в последовательности ATC, с использованием временной точки PTS=t1 в последовательности STC. Кроме того, если исходный пакет SPN=n21 определен из числа исходных пакетов в последовательности ATC, PTS карты входов установлена для указания t21 в последовательности STC. Эта карта входов позволяет устройству воспроизведения выполнять произвольный доступ к SPN=n21 в последовательности ATC, с использованием PTS временной точки = t21.
Фиг.23 показывает, как установлены карты входов, соответствующие каждому левому виду и правому виду. Согласно соответствиям на Фиг.23, номер исходного пакета в последовательности STC записан как номер исходного пакета каждой точки входа, и PTS в последовательности STC записана, как PTS каждой точки входа. Карты входов указывают, как исходные пакеты соответствуют временной оси.
Стрелки th1, th2, th3 и th4 схематично показывают соответствие между временными точками t1 и t2 воспроизведения на временной оси STC и этими точками входа. Стрелки sh1, sh2, sh3 и sh4 схематично показывают соответствия между SPN=n1, n11, n8 и n18 в последовательности ATC и точками входа.
Пятый ряд изображает экстенты левого вида и правого вида, записанные посредством перемежения, и является таким же как чертежи, описанные выше. Третий ряд показывает карты входов, соответствующие соответственно PID=0x1011 и PID=0x1012. Карта входов, соответствующая PID=0x1011, включает в себя точку входа, указывающую n1 и точку входа, соответствующую n8. Эти точки входа указывают соответствия между n1 и n8, и t1 и t2 на временной оси STC. Карта входов, соответствующая PID=0x1012, включает в себя точку входа, указывающую n11, и точку входа, указывающую n18. Эти точки входа показывают соответствия между n11 и n18, и t1 и t2 на оси времени STC.
Таким образом, экстенты левого вида и правого вида, которые должны быть воспроизведены в одной и той же временной точке на временной оси, могут быть записаны в значительно удаленных позициях в области записи AV данных. Все же, с использованием карт входа, соответствующих соответственно этим экстентам, к исходным пакетам в начале экстента правого вида и экстента левого вида можно однозначно получить доступ на основании соответствующего PTS.
Это завершает описание файлов информации клипа.
Информация списка воспроизведения
Ниже описаны подробности информации списка воспроизведения.
Фиг.24 изображает структуру данных информации Списка воспроизведения (PlayList). На Фиг.24 информация Списка воспроизведения включает в себя информацию атрибута воспроизведения, информацию MainPath (Основной Путь), таблицу информации SubPath (Подпуть) и данные расширения.
Сначала описана информация атрибута воспроизведения. Выносная линия mp3 показывает в увеличенном виде внутреннюю структуру информации атрибута воспроизведения. Как показано выносной линией mp3, информация атрибута воспроизведения включает в себя "номер версии", указывающий версию стандартов, на которых основан контент, "тип воспроизведения" и "флаг стереоскопического отображения". Поле "номер версии" может хранить значение, такое как "2.00", указывающее версию формата применения BD-ROM. Поле "тип воспроизведения” вынуждает устройство воспроизведения выполнять "последовательное" или "случайное/смешанное" воспроизведение. Последовательное воспроизведение должно воспроизводить элементы воспроизведения PlayItem, включенные в Список воспроизведения, в порядке от начала.
Ниже описана информация MainPath. Выносная линия mp1 указывает в увеличенном виде внутреннюю структуру информации MainPath. Как показано стрелкой mp1, MainPath определен множеством информационных частей PlayItem #1... #m. Информация PlayItem определяет одну логическую секцию воспроизведения, которая составляет MainPath. Структура информации PlayItem показана в увеличенном виде посредством выносной линии mp2. Как показано этой выносной линией, информация PlayItem состоит из наборов "Clip_information_file_name", который указывает имя файла информации секции воспроизведения AV клипа, принадлежащего точке IN и точке OUT секции воспроизведения, "Clip_codec_identifier", который указывает способ кодирования AV клипа, "is_multi_angle", который указывает, является ли PlayItem многоугловым, "connection_condition", который указывает состояние соединения между PlayItem (текущий PlayItem) и PlayItem, который является непосредственно предшествующим текущему PlayItem (предыдущий PlayItem), "ref_to_STC_id[0]" уникально указывающий STC_Sequence, указанную посредством PlayItem в качестве целевой, “ln_time", который является информацией времени, указывающей начальную точку секции воспроизведения, "Out_time", которая является информацией времени, указывающей точку окончания секции воспроизведения, "U0_mask_table", указывающее, какая пользовательская операция должна быть маскирована в PlayItem, "STN_table", "BaseView_indicator", и "multi_clip_entry". Среди них эти элементы, которые являются путями воспроизведения, являются парой “In_time", которая является информацией времени, указывающей начальную точку секции воспроизведения, и "Out_time", которая является информацией времени, указывающей точку окончания секции воспроизведения. Информация пути воспроизведения состоит из этой пары "In_time" и "Out_time".
STN_table (Stream Number_table) является таблицей, в которой пары состоят из записи потока, включающей ID пакета, и атрибута потока, назначенного номеру логического потока. Порядок пар входа потока и атрибута потока в STN_table указывает ранжирование приоритета соответствующих потоков.
Когда BaseView_indicator равен 0, BaseView равен Left, и когда BaseView_indicator равен 1, BaseView равен Right.
Фиг.25 изображает внутреннюю структуру таблицы информации SubPath. Выносная линия su1 показывает в увеличенном виде внутреннюю структуру информации SubPath. Как показано выносной линией su1, таблица информации SubPath включает в себя множество частей информации SubPath 1, 2, 3... m. Эти части из информации SubPath являются множеством случаев, полученных из структуры одного класса, и таким образом имеют общую внутреннюю структуру. Выносная линия su2 показывает в увеличенном виде совместно используемую внутреннюю структуру информации SubPath. Как показано этой выносной линией, каждая часть информации SubPath включает в себя SubPath_type, указывающую тип SubPath, и одну или более части информации SubPlayItem (... Информация SubPlayItem #1-#m...). Выносная линия su3 показывает в увеличенном виде внутреннюю структуру SubPlayItem. Как показано этой выносной линией, каждая часть информации SubPlayItem состоит из "Clip_information_file_name", "Clip_codec_ideiitifier", "ref_to_STC_id[0]", "SubPlayItem_In_Time", "SubPlayItem_Out_time", "sync_PlayItem_id", и "sync_start_PTS_of_PlayItem". Ниже описана внутренняя структура SubPlayItem.
“Clip_information_file_name" является информацией, которая уникально определяет, посредством имени файла информации клипа, SubClip соответствующую SubPlayItem.
"Clip_codec_identifier" указывает способ кодирования AV клипа.
"ref_to_STC_id[0] "уникально указывает STC_Sequence, являющуюся целевой для SubPlayItem.
"SubPlayItem_In_time" - информация, указывающая начальную точку SubPlayItem на временной оси воспроизведения SubClip.
"SubPlayItem_Out_time" - информация, указывающая оконечную точку SubPlayItem на временной оси воспроизведения SubClip.
"sync_PlayItem_id" является информацией, которая уникально идентифицирует PlayItem из числа PlayItems в MainPath, который должен быть синхронизирован с SubPlayItem. SubPlayItem_In_time существует на временной оси воспроизведения PlayItem, определяемого посредством sync_PlayItem_id.
"sync_start_PTS_of_PlayItem" указывает, где на временной оси воспроизведения PlayItem, определенного посредством sync_PlayItem_id, существует начальная точка SubPlayItem, определенного с помощью "SubPlayItem", с точностью времени 45 КГЦ.
Фиг.26 изображает секции воспроизведения, определенные для каждого левого вида и правого вида. Фиг.26 основана на Фиг.23. Более конкретно, In_Time и Out_Time в PlayItem указаны на временной оси во втором ряду на Фиг.23, на которой основана Фиг.26. На временной оси первого ряда указаны In_Time и Out_Time SubPlayItem. Третий - пятый ряды идентичны соответствующим частям Фиг.23. I-картинка левого вида и правого вида находятся в одной и той же точке на временной оси. Левый вид и правый вид связаны друг с другом информацией PlayItem и информацией SubPlayItem.
Левый вид и правый вид связаны друг с другом информацией PlayItem и информацией SubPlayItem.
Фиг.27 показывает внутреннюю структуру таблицы видео потока. Как показано выносной линией mh1, таблица номера видео потока включает в себя пары stream_entry и stream_attribute.
"stream_entry" включает в себя "ref_to_stream_PID_of_main_Clip", указывающее значение ссылки для PID PES-пакетов, которые составляют первичный элементарный поток, "video_format", указывающее способ отображения видео, такой как NTSC, PAL и т.д., и "frame_rate", указывающее частоту кадров, такую как 1/24 секунды, 1/29,94 секунды и т.д.
Фиг.28 показывает внутреннюю структуру таблицы информации PG-потока в STN_table. Таблица информации PG-потока в STN_table состоит из "информации способа отображения" (display method information) и "n частей информации потока". N частей информации потока находятся в соответствии один к одному с номерами потока, и состоят из stream_entry и stream_attribute. Выносная линия gh1 показывает в увеличенном виде внутреннюю структуру stream_entry. Один из "ref_to_stream_PID_of_mainClip", " ref_to_Sub_Path_id", "ref_to_SubClip_entry_id" и "ref_to_stream_PID_of_subClip" установлен в stream_entry. "ref_to_stream_PID_of_SubClip" указывает PID для потока PG, который соответствует номеру потока, существующему в одном и том же AV клипе как видео поток.
Ниже описаны данные расширения. Фиг.29 показывает внутреннюю структуру данных расширения в информации Списка воспроизведения. Выносная линия et1 указывает в увеличенном виде внутреннюю структуру данных расширения. Как показано этой выносной линией, данные расширения состоят из полей STN_table_extension, соответствующих соответственно информационным частям PlayItem #1-#N. Выносная линия et2 указывает в увеличенном виде внутреннюю структуру STN_table_extension, соответствующей информационной части PlayItem #1. Как показано этой выносной линией, STN_table_extension, соответствующая информационной части PlayItem #1, включает в себя "таблицу номеров потоков видео".
Фиг.30 изображает внутреннюю структуру таблицы номера потока видео.
Таблица номеров потоков видео включает в себя N флагов e1 enhanced_view_is_available, и N пар f1 stream_entries и stream_attributes. Эти пары связаны с номерами 1-N потоков, и флаг enhanced_view_is_available может уникально определить одну из пар с использованием номера потока от 1 до N. Эти пары stream_entry и stream_attribute могут также быть уникально определены с использованием номера потока от 1 до N.
Как обозначено выносной линией vh1, "Stream_entry" включает в себя "ref_to_stream_PID_of_main_clip", указывающее значения ссылки для PID, назначенного PES-пакетам, составляющим первичный видео поток. Как обозначено выносной линией vh2, stream_attribute включает в себя поле "video_format" и поле "frame_rate".
Порядок этих stream_entries в этих таблицах указывает приоритетный порядок выбора потока, когда устройство воспроизведения выбирает поток. Другими словами, устройство воспроизведения предпочтительно выбирает потоки, записи которых являются самыми высокими в таблице.
Когда флаг "enhanced_view_is_available" установлен в ON, чтобы сделать EnhancedView действительным, "ref_to_stream_of_MainClip" описан, чтобы указать идентификаторы ID 0x1011 и 0x1012 пакета.
Ниже описана таблица информации PG-потока в STN_table_extension. Внутренняя структура таблицы информации PG-потока в STN_table_extension включает в себя N частей информации потока. Эти n частей информации потока находятся в соответствии один к одному c номерами потока и состоят из stream_entry и stream_attribute. Stream_entry включает в себя пару, составленную из значения ссылки соответствующего PID пакета PES, который содержит воспроизводимый поток PG левого вида, и значения ссылки PID пакета PES, содержащего поток PG правого вида.
Здесь, имеются такое же количество пар stream_entry и stream_attribute в STN_table_extension, как количество пар stream_entry и stream_attributes в STN_table. Пары stream_entry и stream_attribute в STN_table находятся в соответствии один к одному с парами stream_entry и stream_attribute в STN_table, и они имеют одинаковые номера потока. Потоки левого вида и правого вида, указанные посредством stream_entry в STN_table_extension, и потоки, указанные посредством stream_entry соответствующей STN_table в основном являются идентичными, и позиция отображения является отличной только в горизонтальном направлении. То есть, скажем, разность, соответствующая параллаксу между глазами человека, была добавлена к потоку, обозначенному stream_entry в STN_table, и имеются потоки левого вида и правого вида, обозначенные посредством stream_entry в STN_table_extension.
Следует заметить, что "контент", упомянутый в настоящем описании, является блоком, включающим в себя информацию Списка воспроизведения, управляемую номером некоторого названия, и видео поток, в котором AV клипы, на которые ссылается Список воспроизведения, были мультиплексированы, и также называется как "название".
Это завершает описание информации Списка воспроизведения.
Устройство воспроизведения
Ниже описаны подробности устройства воспроизведения. Фиг.31 показывает внутреннюю структуру устройства воспроизведения. Устройство 200 воспроизведения включает в себя BD-накопитель 201, БИС системы (блок воспроизведения) 1, HDMI интерфейс 202, набор 203 регистров состояния/установки воспроизведения, память 205 статического сценария, подсистема 206 управления воспроизведением, память 207 неупорядоченного массива, BD-J платформу 208, память 209 динамического сценария, модуль 210 управления режимом, интерпретатор 211 команд и модуль 212 обнаружения UO.
BD-накопитель 201 выполняет загрузку/считывание/извлечение BD-ROM, и выполняет доступ BD-ROM. В качестве конкретной структуры, накопитель BD-ROM 112 включает в себя, например, полупроводниковый лазер (не изображен), коллимирующую линзу (не изображена), разделитель луча (не изображен), линзу объектива (не изображена), линзу конденсора (не изображена) и оптическую головку (не изображена), включающую в себя оптический детектор (не изображен). Оптический луч, испускаемый из полупроводникового лазера, фокусируется на информационной стороне оптического диска через коллимирующую линзу, разделитель луча, и полевую линзу. Сфокусированный оптический луч отражается/преломляется на оптическом диске и фокусируется на датчике света через линзу объектива, разделитель луча и линзу конденсора. Сигнал, сгенерированный согласно количеству света, принятого датчиком света, представляет данные, считанные с BD-ROM.
Как показано на Фиг.32, БИС системы (блок воспроизведения) 1 включает в себя буфер 2 считывания, PID фильтр 3, транспортные буферы 4a, 4b, 4c, 4d и 4e, периферийную схему 4f, видео декодер для левого вида 5a, видео декодер для правого вида 5b, видео плоскость (L) 6a, видео плоскость (R) 6b, переключатель 7, графический декодер для левого вида 8a, графический декодер для правого вида 8b, графическую плоскость для левого вида 9a, графическую плоскость для правого вида 9b, блок CLUT для L 10a, блок CLUT для R 10b, блок смещения для L 11a, блок смещения для R 11b, переключатель выходного сигнала CLUT 12, сумматор 13 и Аудио Декодер 14.
Буфер 2 считывания обычно является памятью FIFO, которая временно хранит исходный пакет, считанный с BD-ROM, и является буфером для передачи исходного пакета к PID фильтру 3 после регулировки его скорости передачи. В частности, буфер 2 считывания состоит из буфера считывания правого вида для хранения исходного пакета правого вида, и буфера считывания левого вида для хранения исходного пакета левого вида.
PID фильтр 3 выполняет фильтрование в отношении множества TS-пакетов, которые выданы из буфера 2 считывания. PID фильтр передает только TS-пакеты, имеющие заранее определенные PID, на один из Транспортных Буферов 4a, 4b, 4c, 4d и 4e. В PID фильтре 3 нет буферизации. Соответственно, TS-пакеты, входящие в PID фильтр 3, мгновенно записываются в один из Транспортных Буферов 4a, 4b, 4c, 4d, и 4e, согласно PID TS-пакета.
Транспортные Буферы 4a, 4b, 4c, 4d и 4e являются памятью FIFO для хранения TS-пакетов, выведенных из PID фильтра 3. Скорость, при которой TS-пакет считывается из Транспортных Буферов 4a, 4b, 4c, 4d и 4e, обозначена скоростью передачи Rx.
Периферийная схема 4f имеет прошитую логику для преобразования TS-пакетов, считанных из Транспортных Буферов 4c и 4d, в функциональные сегменты. Функциональные сегменты затем сохраняются в Буфере Кодированных Данных (EB).
Видео декодер для левого вида 5a декодирует TS-пакеты, выданные из PID фильтра 3, чтобы получить несжатую картинку левого вида, и записывает эту картинку в Видео Плоскость (L) 6a.
Видео декодер для правого вида 5b декодирует TS-пакеты, выданные из PID фильтра 3, чтобы получить несжатую картинку правого вида, и записывает эту картинку в Видео Плоскость (R) 6b.
Видео плоскость (L) 6a является памятью для хранения в ней картинки левого вида несжатого типа.
Видео плоскость (R) 6b является памятью для хранения в ней картинки правого вида несжатого типа.
Переключатель 7 переключается между выведением на сумматор 13 картинки левого вида и картинки правого вида.
Графический декодер для левого вида 8a декодирует поток PG левого вида для получения несжатой графики и записывает несжатую графику в графическую плоскость для левого вида 9a в качестве графических объектов. В частности, как показано на Фиг.32, графический декодер для левого вида 8a включает в себя Буфер Кодированных Данных (EB) 81a, периферийную схему 82a, Процессор 83a потоковой графики, Буфер Объектов (OB) 84a, Буфер Композиции (CB) 85 и графический контроллер 86a.
Буфер Кодированных Данных (EB) 81a используется для сохранения функциональных сегментов вместе с DTS и PTS. Такие функциональные сегменты получают, удаляя заголовок TS-пакета и заголовок PES пакета из каждого TS-пакета транспортного потока, сохраненного в Транспортном Буфере 4c, и компонуя оставшиеся полезные данные в последовательности. DTS и PTS, содержавшиеся в удаленных заголовках TS-пакетов и заголовках PES пакетов, сохраняются в Буфере Кодированных Данных в соответствии с функциональными сегментами.
Периферийная схема 82a имеет прошитую логику для передачи данных из буфера 81a кодированных данных (EB) на процессор 83a потоковой графики и передачи данные из буфера 81a кодированных данных (EB) на буфер 85a композиции. Когда время потока достигает DTS в ODS, периферийная схема передает ODS из буфера 81a кодированных данных (EB) на процессор 83a потоковой графики. Кроме того, когда текущее время достигает DTS в PCS и PDS, периферийная схема передает PCS и PDS из буфера 81a кодированных данных (EB) на буфер (CB) 85a композиции.
Процессор 83a потоковой графики декодирует ODS, чтобы получить несжатую графику, имеющую индексные цвета, и передает несжатую графику в буфер 84a объектов (OB) в качестве графического объекта. Декодирование процессором 83a потоковой графики начинается во время DTS, коррелированное c ODS, и заканчивается временем окончания декодирования, показанным посредством PTS, коррелированным с ODS. Скорость Rd декодирования графического объекта, описанного выше, является скоростью вывода процессора 83a потоковой графики.
Буфер 84a объектов (OB) соответствует буферу пикселей в стандарте ETSI EN 300743. Графические объекты, декодированные процессором 83a потоковой графики, хранятся в буфере 84a объектов (OB).
Буфер 85a композиции является памятью для хранения PCS и PDS.
Графический контроллер 86a декодирует PCS в буфере 85a композиции и выполняет управление на основании декодированных PCS. В частности, графика записывается в буфер 84a объектов (OB), графика считывается из буфера 84a объектов (OB), и графика отображается. Тактирование выполнения этого управления основано на значении PTS PES-пакета, который хранит PCS.
Графический декодер для правого вида 8b декодирует PG поток правого вида, чтобы получить графику несжатого типа, и записывает графику несжатого типа в графическую плоскость для правого вида 9b в качестве графических объектов. Так как подробности этой структуры являются такими же, как графический декодер для левого вида 8a, его описание опущено.
Графическая плоскость для левого вида 9a является памятью плоскости, имеющей область для хранения одной экранной особенности графики, и хранит одну экранную особенность несжатой графики (левый вид).
Графическая плоскость для правого вида 9b является памятью плоскости, имеющей область для хранения одной экранной особенности графики, и хранит одну экранную особенность несжатой графики (правый вид).
Блок CLUT для L10a, с использованием таблицы поиска цвета PDS, указанного набором palette_id, преобразует код пикселей, сохраненный в графической плоскости для левого вида 9a, в значение пикселей, которое равно Y, Cr, Cb.
Блок CLUT для R10b, с использованием таблицы поиска цвета PDS, указанного набором palette_id, преобразует код пикселей, сохраненный в графической плоскости для правого вида 9b, в значение пикселей, которое равно Y, Cr, Cb.
Здесь, один и тот же palette_id установлен и в блоке CLUT для L1 10a и в блоке CLUT для R10b.
Блок OFFSET для L11a регулирует глубину несжатой графики левого вида с преобразованным цветом.
Блок OFFSET для R11b регулирует глубину несжатой графики правого вида с преобразованным цветом.
Переключатель 12 выходного сигнала CLUT переключается между несжатой графикой левого вида, несжатой графикой правого вида при выдаче несжатой графики, которая должна быть выведена на сумматор 13.
Сумматор 13 умножает несжатую графику, преобразованную блоком CLUT для L10a (или блоком CLUT для R10b), на значение T (прозрачность), показанное в PDS. Сумматор 13 затем получает составное изображение посредством суммирования результата умножения с данными несжатой картинки, хранящимся в Видео Плоскости (L) 6a (или Видео Плоскости (R) 6b), и выдает составное изображение.
Аудиодекодер 14 декодирует TS-пакеты, выведенные из PID фильтра 3, и выдает несжатые аудио данные.
Это завершает описание составляющих элементов блока воспроизведения 1.
Возвращаясь к Фиг.31, блок 202 передачи/приема HDMI включает в себя интерфейс, который совместим, например, со стандартами HDMI (HDMI: High Definition Multimedia Interface, мультимедийный интерфейс высокого разрешения), и выполняет передачу и прием способом, совместимым со стандартами HDMI, между устройством воспроизведения и устройством (в настоящем примере, телевизором 300), которое подсоединено посредством HDMI. Видео, в отношении которого суммирование было выполнено сумматором 13, и несжатые аудио данные, которые были декодированы аудио декодером 14, передают к телевизору 300 через блок HDMI передачи/приема HDMI.
Телевизор 300 хранит информацию, указывающую, поддерживает ли, например, телевизор 103 стереоскопическое отображение, информацию, относящуюся к возможному разрешению для монокулярного (т.е. двумерного) отображения, информацию, относящуюся к возможному разрешению для стереоскопического отображения. В ответ на запрос от устройства воспроизведения через блок 202 передачи/приема HDMI телевизор 103 передает к устройству воспроизведения запрошенную необходимую информацию (например, информацию, относящуюся к тому, поддерживает ли телевизор 300 стереоскопическое отображение, информацию, относящуюся к возможному разрешению для монокулярного (т.е. двумерного) отображения, и информацию, относящуюся к возможному разрешению для стереоскопического отображения).
Таким образом, устройству воспроизведения разрешено захватить информацию, указывающую, поддерживает ли телевизор 103 стереоскопическое отображение, от телевизора 300 через блок 202 передачи/приема HDMI.
Набор 203 регистров устройства воспроизведения/настройки (PSR) является набором регистров, включающим регистр статуса устройства воспроизведения, хранящий статус воспроизведения Списка воспроизведения, регистр параметров воспроизведения, хранящий информацию конфигурации, указывающую конфигурацию устройства воспроизведения, регистр общего назначения, доступный для сохранения произвольной информации, используемую контентами. Статус воспроизведения Списка воспроизведения представляет информацию, такую как тип AV данных, которая используется из числа различных типов информации AV данных, указанных в Списке воспроизведения, и текущая позиция (время) Списка воспроизведения воспроизводится. Когда статус устройства воспроизведения Списка воспроизведения изменяется, подсистема 206 управления воспроизведением сохраняет измененный статус устройства воспроизведения в наборе 203 PSR. Далее, в ответ на запрос от приложения, выполняемого интерпретатором команды, который является выполняющимся объектом в режиме EDMV, или посредством платформы Java, которая является выполняющимся объектом в BD-J режиме, подсистема управления воспроизведением сохраняет значение, определенное приложением в наборе 203 PSR, и передает сохраненное значение к приложению.
Кроме того, имеются флаги и т.д., указывающие способность стереоскопического воспроизведения, и способ отображения стереоскопического воспроизведения, например, в наборе 203 PSR.
Стереоскопическая способность указывает, имеет ли устройство воспроизведения способность выполнить стереоскопическое воспроизведение.
Флаг стереоскопического воспроизведения указывает, намеревается ли пользователь выполнить стереоскопическое воспроизведение.
Память 205 статического сценария является памятью для хранения информации текущего Списка воспроизведения и информации текущего клипа. Информация текущего Списка воспроизведения относится к конкретной части информации Списка воспроизведения, предназначенной для текущей обработки из числа множества информационных частей Списка воспроизведения, к которым можно получить доступ с BD-ROM. Информация текущего клипа относится к информации, предназначенной для текущей обработки из числа множества информационных частей Списка воспроизведения, к которым можно получить доступ с BD-ROM.
Подсистема 206 управления воспроизведением выполняет функции AV воспроизведения и функции воспроизведения Списка воспроизведения в соответствии с запросами функций от интерпретатора команд, который является объектом выполнения в режиме HDMV, или от платформы Java, которая является объектом выполнения в BD-J режиме. Функции воспроизведения AV являются функциональными операциями, которые следуют за операциями DVD плеера и CD плеера, и включают в себя следующие типы обработки: Начало Воспроизведения, Остановка Воспроизведения, Пауза, Пауза-Остановка, Остановка Функции Статического Изображения, Быстрый переход вперед на скорости, определенной непосредственным значением, Быстрый переход назад на скорости, определенной непосредственным значением, Изменение Аудио, Изменение Субтитров, и Изменение угла. Функциями воспроизведения Списка воспроизведения являются функции Начало Воспроизведения и Остановка Воспроизведения среди функций воспроизведения AV, упомянутых выше, которые выполняются согласно информации Списка воспроизведения.
Память 207 неупорядоченного массива является областью стека для сохранения байт-кодов системных приложений, байт-кодов приложений BD-J, системных параметров, используемых системными приложениями, и параметров приложений, используемых BD-J приложениями.
BD-J платформа 208 является платформой Java, которая является объектом выполнения в BD-J режиме, и полностью реализует Java2 Micro_Edition (J2ME) Personal Basis Edition (PBP 1.0) и спецификацию Глобально Выполняемого MHP (GEM1.0.2) для целей пакетной мультимедийной информации. BD-J платформа 208 включает в себя загрузчик класса и интерпретатор байт-кода. Загрузчик класса является одним из системных приложений и считывает байт-код BD-R приложения из файла класса, содержащегося в файле архива JAR, в память неупорядоченного массива так, чтобы BD-J приложение было загружено. Интерпретатор байт-кода преобразует байт-код, содержащий BD-J приложение, сохраненное в памяти 207 неупорядоченного массива и этот байт-код, содержащий системное приложение в родной код, и позволяет MPU выполнять BD-J приложение.
Память 209 динамического сценария является памятью для хранения текущего динамического сценария и используется для обработки интерпретатором команд, который является объектом выполнения в режиме HDMV, и посредством платформы Java, которая является объектом выполнения в BD-J режиме. Текущий динамический сценарий относится к сценарию, который предназначен для текущего выполнения из числа Index.bdmv, BD-J объекта и объекта кинофильма, записанного на BD-ROM.
Администратор 210 модулей, который является примерным модулем управления режимом, хранит index.bdmv, считанный из BD-ROM, и выполняет управление режимом и управление ветвлением. Управление режимом посредством администратора 210 модулей является назначением модуля, а именно, заданием, какой из интерпретатора 211 команд и BD-J модуля выполняет динамический сценарий.
Интерпретатор 211 команд является примерным модулем HDMV и является DVD виртуальным плеером, который является объектом выполнения в режиме HDMV. Интерпретатор команд, который является объектом выполнения в режиме HDMV, декодирует и выполняет команду навигации, включенную в программу сценария. Так как команды навигации записаны в синтаксисе, который подобен DVD-Видео, управление воспроизведением, подобное Видео DVD, может быть выполнено, выполняя команду навигации.
Модуль 212 обнаружения UO (пользовательской операции) обнаруживает пользовательскую операцию, сделанную в удаленном контроллере 500 или на передней панели устройства 200 воспроизведения и выдает информацию, указывающую обнаруженную пользовательскую операцию (в дальнейшем, просто "UO”, пользовательская операция), модулю 210 управления режимом. Из числа принятых UO те UO, которые совместимы с текущим режимом устройства воспроизведения, выборочно передают к одному из модулей, который выполняет текущий режим. Например, если пользовательские операции для перемещения курсора в одно из направлений вверх, вниз, вправо и влево и для активизации текущего выбора приняты в режиме HDMV, модуль 212 обнаружения UO передает эти UO к модулю режима HDMV.
Обработка воспроизведения списка воспроизведения
Ниже описаны подробности обработки воспроизведения Списка воспроизведения.
Фиг.33 - блок-схема, показывающая процедуру обработки для обработки воспроизведения Списка воспроизведения.
На этапе S1 информация Списка воспроизведения считывается. Затем выполняются этапы S2-S5. На этапе S2 оценивают, имеет ли устройство способность воспроизведения. На этапе S3 оценивают, имеет ли телевизор, соединенный с устройством воспроизведения, способность стереоскопического воспроизведения. На этапе S4 оценивают, действителен ли флаг способа отображения, включенный в информацию атрибута воспроизведения текущего Списка воспроизведения. Если любое из суждений на этапах S2-S4 дает результат "Нет", этап S5 выполняют вслед за выполнением воспроизведения каждого элемента PlayItem, на основании STN_table, включенной в соответствующие части информации PlayItem.
Если все суждения на этапах S2-S4 дают результат "ДА", этап S5 выполняют, чтобы выполнить каждый PlayItem на основании STN_table_extension, включенном в соответствующие части информации PlayItem.
Фиг.34 - блок-схема, иллюстрирующая процедуру для выполнения воспроизведения согласно STN_table_extensions.
На этапе S51 текущее количество PlayItem инициируется в "1" и обработка идет в цикле, состоящем из этапов S52-S62. В этом цикле этапы S52-S60 выполняются в отношении текущего номера PlayItem, и затем текущий номер PlayItem увеличивается (этап S61), чтобы повторить этапы S52-S60 в отношении нового текущего номера PlayItem. Цикл повторяют, пока текущий номер PlayItem не достигает последнего из номеров PlayItem (этап S62: Да). Подробности этапов S52-S60 описаны ниже.
На этапе S52 PlayItem.In_Time и PlayItem.Out_Time текущего PlayItem преобразуются в Start_SPN[i] и End_SPN[i], с использованием карты входов, соответствующей ID пакета потока BaseView.
Затем выбирают подходящий поток EnhancedView, и выбирают подходящий текущий поток PG (этап S53). Номера текущих потоков выбранных потоков сохраняют в PSR (этап S54). Определяют SubPlayItem, ассоциированный с номером текущего потока (этап S55). SubPlayItemIn_Time и SubPlayItemOut_Time преобразуют в Start_SPN[j] и End_SPN[j], с использованием карты входов [j], соответствующей ID пакета[j] потока EnhancedView (этап S56).
Чтобы считать TS-пакет[i], имеющий ID[i] пакета, задают экстенты, принадлежащие считанному диапазону [i] от Start_SPN[i] до End_SPN[i] (этап S57). Кроме того, чтобы считать TS-пакет [j]? имеющий ID [j] пакета, определяют экстенты, принадлежащие считанному диапазону от Start_SPN[j] до End_SPN[i] (этап S58). Затем, на этапе S59 экстенты, принадлежащие соответствующим считанным диапазонам [i] и [j], сортируют в порядке возрастания адресов. На этапе S60 накопителю дают инструкцию последовательно считать экстенты, принадлежащие соответствующим считанным диапазонам [i] и [j] на основании сортированных адресов. Это завершает описание процедуры воспроизведения, выполняемой на основании STN_table_extension.
Ниже описана процедура для выбора PG-потока. Существуют два типа процедуры для выбора PG потока, на основании STN_table или STN_table_extension. Один - "Процедура, когда условие воспроизведения изменено", и другой - "Процедура, когда запрошено изменение потока". Выбор PG-потока выполняют посредством подсистемы 206 управления воспроизведением.
"Процедура, когда условие воспроизведения изменено" выполняется, когда статус устройства воспроизведения изменяется в ответ на событие, произошедшее с устройством воспроизведения.
"Процедура, когда запрошено изменение потока" выполняется, когда пользователь запрашивает переключение между потоками.
Фиг.35A - блок-схема, иллюстрирующая процедуру для установки PSR 2 в то время, когда имеет место изменение статуса. Здесь PSR2 указывает текущий номер PG-потока.
На этапе S11 делают суждение относительно того, равно ли число записей, включенных в STN_table, "0". Если число записей равно "0", значение, хранимое в PSR 2, поддерживается (этап S13).
Этап S12 выполняется, если число записей, включенных в STN_table, не равно "0". На этапе S12 выполняют определение относительно того, больше ли число записей, включенных в STN_table, чем значение, хранимое в PSR 2, и удовлетворено ли условие (A). Условие (A) удовлетворено, если устройство воспроизведения способно выполнить воспроизведение потока PG, определенного значением, хранимым в PSR 2. Если определение на этапе S12 приводит к результату "Да", значение; хранимое в PSR 2, поддерживается (этап S14). С другой стороны, если значение, хранимое в PSR 2, больше чем число входов, включенных в STN_table, или условие (A) не удовлетворено, значение PSR 2 сбрасывается (этап S15).
Фиг.35B - блок-схема, иллюстрирующая процедуру для установки PSR 2 в то время, когда имеет место изменение потока. Блок-схема, показанная на Фиг.42B, идентична блок-схеме, показанной на Фиг.42A, за исключением того, что обозначение "PSR 2" заменено на X. "X" обозначает значение, основанное на пользовательской операции.
На этапе S20, показанном в этой блок-схеме, выполняется определение относительно того, больше ли число входов, включенных в STN_table, чем X, и является ли условие (A) истинным. Условие (A) истинно, если устройство воспроизведения способно выполнять воспроизведение потока PG, указанного значением, хранимым в PSR 2. Это определение выполняют, сравнивая значение PSR 15 (указывающее возможность субтитров) с Stream_coding_type PG-потока. Если X удовлетворяет этому условию, значение PSR 2 устанавливают равным значению X (этап S21).
С другой стороны, если значение X больше, чем число входов, или условие (A) не удовлетворено, тогда оценивают, равно ли значение X "0xFFFF" (этап S22). Если значение X не равно "0xFFFF", номер потока PG, указанный пользователем, предполагается недействительным. Таким образом, значение X, заданное пользовательской операцией, отвергается, и значение, хранимое в PSR 2, поддерживается (этап S24). Если значение, хранимое в PSR 2, равно "0xFFFF", PSR 2 устанавливается соответственно (этап S23).
Фиг.36 - блок-схема, указывающая процедуру установки PSR2. В блок-схеме этапы S31 и S32 формируют цикл, в котором этапы S33 - S35 повторяют для каждого потока субтитров, описанного в STN_table. В цикле поток PG, обрабатываемый в настоящее время, называется как PG поток i. На этапе S33 оценивают, является ли PG поток i потоком графических субтитров или потоком текстовых субтитров. Если поток i субтитров является потоком графических субтитров, обработка переходит на этап S34.
На этапе S34 оценивают, удовлетворяет ли поток i графических субтитров следующим условиям (a) и (b).
Условие (a) удовлетворено, если устройство воспроизведения способно выполнять воспроизведение потока i графических субтитров.
Условие (b) удовлетворено, если атрибут языка потока i графических субтитров соответствует параметрам настройки языка устройства воспроизведения.
Суждение относительно условия (b) делают, проверяя, соответствует ли PG_language_code, включенный в STN_table, значению, хранимому в PSR 16 (указание установки языка устройства).
На этапе S35, с другой стороны, оценивают, удовлетворяет ли текстовый поток субтитров следующим условиям (a) и (b).
Условие (a) удовлетворено, если устройство воспроизведения способно расширять текстовый поток i субтитров в шрифты.
Условие (b) удовлетворено, если атрибут языка потока i графических субтитров i соответствует параметрам настройки языка устройства воспроизведения.
Суждение относительно условия (a) делают посредством проверки, указывает ли PSR 30 устройства воспроизведения, что устройство воспроизведения имеет "способность воспроизведения". Суждение относительно условия (b) делают посредством проверки, соответствует ли PG_language_code, включенное в STN_table, значению, хранимому в PSR 16.
Когда процессы этапов S33 к S35 были повторены в отношении каждого потока PG, процессы этапов S36-S41 выполнены.
На этапе S36 определение выполняют относительно того, удовлетворяет ли какой-нибудь графический субтитр условию (a). Если никакой из графических субтитров не удовлетворяет условию (a), PSR 2 устанавливают в недействительное значение (0xFFFF) (этап S38).
На этапе S37 определение выполняют относительно того, удовлетворяет ли какой-нибудь поток PG обоим условиям (a) и (b). Если один или более потоков PG удовлетворяют обоим условиям (a) и (b), PSR 2 устанавливают в значение, равное номеру потока одного из потоков PG, имеющих более высокий порядок записи в STN_table (этап S41).
На этапе 39 PSR 2 устанавливают в значение, равное номеру потока одного из потоков, имеющих самый высокий порядок записи в STN_table, из числа потоков графических субтитров и потоков текстовых субтитров, где каждый удовлетворяет только условию (a).
Когда PRS2 был установлен, определение выполняют относительно того, способно ли устройство воспроизведения выполнять 3D воспроизведение, используя левый вид и правый вид. Если воспроизведение 3D возможно, PID для потока PG левого вида и PG потока правого вида, соответствующие номеру потока PSR2, устанавливают в PID фильтре 3, и выполняют фильтрование пакетов.
Декодер графики левого вида и декодер графики правого вида начинают работу, и декодирование выполняют в отношении двух систем групп TS-пакетов.
Согласно варианту осуществления, описанному выше, множество DS потока PG левого вида и множество DS потока PG правого вида находятся в соответствии один к одному, и идентичный PTS установлен в сегментах композиции представления соответствующих DS. Кроме того, composition_state, имеющее идентичный контент, устанавливается в сегментах композиции представления соответствующих DS.
Поэтому, если composition_state является, например, Epoch Start для DS одного из потоков PG, composition_state для DS другого одного из потоков PG также является Epoch Start.
Соответственно, так как эти DS предоставлены в точках, которые вероятно, будут выбраны как точки начала воспроизведения во время произвольного доступа, если декодирование одного из потоков PG возможно, декодирование другого потока PG является по необходимости возможным. Поэтому, это позволяет обеспечить стереоскопический вид графики во время произвольного доступа.
Кроме того, в DS, соответствующих потоку PG левого вида и потоку PG правого вида, composition_number и forced_on_flag устанавливаются с идентичным контентом, и PDS соответствующих DS устанавливаются с идентичным контентом. Кроме того, в WDS window_width, window_heigh, и window_vertical_position устанавливаются с идентичным контентом, и в PCS object_cropping_width, object_cropping_height, object_cropping_vertical_position, и object_vertical_position устанавливаются с идентичным контентом.
Таким образом, в DS, соответствующих потоку PG левого вида и потоку PG правого вида, поля, отличные от горизонтальных положений объекта и положения отображения (window_horizontal_position, object_horizontal_position, object_cropping_horizontal_position) устанавливаются с идентичным контентом, таким образом, обеспечивая управление контентом двух графических контроллеров в устройстве воспроизведения по существу аналогичным, и делая более простую структуру аппаратных средств.
Вариант 1-1
Устройство воспроизведения включает в себя блок CLUT для L10a для левого вида и блок CLUT для R10b для правого вида. Так как один и тот же индикатор palette_id должен быть установлен для каждого блока CLUT, может использоваться один и тот же блок CLUT. Ниже описан вариант, в котором левый вид и правый вид используют один и тот же блок CLUT.
Фиг.37 показывает внутреннюю структуру БИС системы в устройстве воспроизведения в варианте 1-1.
Графическая плоскость для левого вида 9a и графическая плоскость для правого вида 9b обе соединены с переключателем 15 выходного сигнала CLUT.
При выдаче несжатой графики, которая должна быть выдана к блоку CLUT 10, переключатель 15 выходного сигнала CLUT переключается между несжатой графикой левого вида и несжатой графикой правого вида.
Блок 11 смещения настраивает глубину несжатой графики левого вида или правого вида, для которых цвет был преобразован блоком CLUT 10, и выдает глубину к сумматору 13.
Как описано выше, так как выходной сигнал графической плоскости для левого вида 9a и графической плоскости для правого вида 9b присоединены к одному и тому же блоку CLUT 10 через переключатель 15 выходного сигнала CLUT, наряду с сокращением объема аппаратных средств, преимущество заключается в том, что декодер графики 3D может быть сформирован из декодера 2D графики с небольшими изменениями.
[Вариант осуществления 2]
Хотя вариант осуществления 1 описывает реализацию стереоскопического вида PG-потока в модели с 2 декодерами, настоящий вариант осуществления описывает стереоскопический вид интерактивной графики (в дальнейшем называемой "IG") в модели с 2 декодерами.
Поток IG реализует интерактивное отображение графического объекта. Фиг.38A показывает структуру потока IG. Первый ряд показывает последовательность TS-пакетов, которая составляет AV клип. Второй ряд показывает последовательность PES-пакетов, которая составляет графический поток. Последовательность PES пакетов во втором ряду состоит из TS-пакетов, из которых полезные данные были удалены для TS-пакетов, имеющих заранее определенный PID, из числа TS-пакетов в первом ряду, и связывающих полезные данные вместе. Третий ряд показывает структуру графического потока. Графический поток состоит из функциональных сегментов, называемых ICS (Сегмент интерактивной композиции), PDS (Сегмент определения палитры), ODS (Сегмент определения объекта), и END (Конец сегмента наборов отображения). ICS называется как сегмент композиции представления, и управляет структурой экранного отображения интерактивных графических объектов. Так как соответствия между пакетами PES и функциональными сегментами, и деталями других функциональных сегментов, являются такими же, как PG, их описание опущено.
Фиг.38B показывает PES-пакет, полученный посредством преобразования функционального сегмента. Так как Фиг.38B также аналогична случаю PG, описание ее здесь опущено.
Фиг.39 показывает логические структуры различных типов функциональных сегментов. Первый ряд на Фиг.39 показывает Период, второй ряд показывает Набор Отображений, третий ряд показывает типы Набора Отображений, и четвертый ряд показывает функциональные сегменты, принадлежащие Набору Отображений. Есть также типы Начало Периода (Epoch Start), Точка захвата (Acquisition Point), и Нормальный Случай (Normal Case), но они являются такими же, как описано в случае PG.
Поток IG характеризуется управлением поведения многостраничного меню в соответствии с продвижением вдоль вышеописанной временной оси воспроизведения для воспроизведения движущихся картинок. Композиция, которая позволяет этой характеристике реализоваться, относится к interactive_composition в ICS. Ниже описана внутренняя структура interactive_composition.
Фиг.40A и 40B показывают соответствие между ICS и interactive_composition. Соотношение между ICS и interactive_composition является или соответствие один к одному типа, показанного на Фиг.40A, или соответствие "один ко многим" типа, показанного на Фиг.40B.
Это соотношение есть соответствие один к одному, когда размер данных interactive_composition является малым, достаточным для сохранения в единственном ICS.
Это соотношение есть "один ко многим", когда размер данных interactive_composition является большим, и interactive_composition фрагментирован и сохранен множеством ICS. Так как interactive_composition может быть сохранен, используя множество ICS, нет пределов на его размер данных, который может быть увеличен, скажем, до 512 kMB, 1 MB, или более. Соответствие "один ко многим" также возможно между ICS и interactive_composition. Однако, для простоты, случай, где ICS и interactive_composition находятся в соответствии один к одному, используется в нижеследующем описании.
Фиг.41 показывает структуру данных ICS. Каждый ICS хранит или весь interactive_composition или часть interactive_compostion, полученной фрагментацией. Как показано слева на Фиг.41, ICS включает в себя segment_descriptor, чтобы указать, что это - ICS, номера горизонтальных и вертикальных пикселей, которые будут использоваться посредством ICS, video_descriptor, указывающий скорость кадров, composition_descriptor, и interactive_composition или часть interactive_composition_data_fragment, полученного фрагментацией.
Стрелка cu1 на Фиг.41 указывает на раскрытие структуры данных composition_descriptor. Как указано, composition_descriptor включает в себя поле composition_state, которое указывает, имеет ли Набор Отображения, которому принадлежит ICS, тип Нормальный Случай, тип Acquisition Point, тип Epoch Start, или тип Effect_Sequence, и composition_number, указывающий отсчет комбинаций экранных отображений.
Стрелка cu2 Фиг.41 указывает раскрытие структуры данных interactive_composition. Как указано, interactive_composition включает в себя поле interactive_composition_length, поле stream_model, поле user_interface_model, composition_time_out_pts, selection_time_out_pts, user_time_out_duration, и части информации страницы (1) (2)... (i)... (number_of_page - 1), каждая из которых соответствует визуализируемой странице в многостраничном меню
Поле interactive_compostion_length указывает длину данных interactive_composition.
Поле stream_model указывает тип модели потока, которую использует interactive_composition. Модель потока указывает формат, используемый для записи interactive_composition на BD-ROM, и способ, которым interactive_composition должна управляться буфером композиции в устройстве воспроизведения. В частности, модель потока указывает, был ли графический поток i) демультиплексирован из AV клипа и загружен в буфер композиции, или ii) предварительно загружен в буфере композиции как Подклип (SubClip).
Поле user_interface_model указывает, является ли пользовательский тип пользовательского интерфейса, предполагаемого посредством interactive_composition, Always On U/I (всегда включенным пользовательским интерфейсом) или Pop-up U/I (Выпадающим пользовательским интерфейсом). При Always On U/I меню Отобразить/Удалить происходит в соответствии с ходом воспроизведения AV клипа. При Pop-up U/I меню Отобразить/Удалить вызывается пользовательской операцией.
Composition_time_out_pts указывает завершающий период (Epoch END) Периода, которому принадлежит ICS. Так как интерактивное управление посредством ICS становится невозможным в завершающем периоде, временная точка, указанная посредством composition_time_out_pts, указывает конец интерактивного управления.
selection_time_out_pts указывает период времени, разрешенный для автоматической активизации кнопки в выбранном состоянии. Более конкретно, каждая кнопка соответствует выбору элемента на многостраничном меню, и selection_time_out_pts определяет время, затраченное на изменение кнопки в активное состояние после выбора.
Оператор IF на Фиг.41 (if (Stream_model=='0b')), показывает, что вышеописанные composition_time_out_pts и selection_time_out_pts являются информационными элементами, которые появляются только когда поле stream_model = мультиплексировано. Если модель потока предварительно загружена, ни поле composition_time_out, ни поле selection_time_out не используются.
Поле user_time_out_duration указывает промежуток времени, разрешенный перед удалением для страницы, отображенной в ответ на пользовательскую операцию. В случае Always On U/I, так как только страницы от второй страницы вперед отображаются в ответ на пользовательские операции, только эти Подстраницы (SubPages) удаляются, когда длительность user_time_out истекла. После того, как Подстраницы удалены, первая страница отображается. В случае Pop-up U/I, с другой стороны, так как каждая страница многостраничного меню отображается в ответ на пользовательскую операцию, все страницы удаляются, когда user_time_out_duration истек. Результатом является состояние, в котором ничто не отображается (No Menu Displayed).
Фиг.42 показывает внутреннюю структуру информации страницы для заданной страницы (страница (x)) среди множества страниц. Как обозначено слева на Фиг.42, информация страницы (x) включает в себя "page_id", который уникально идентифицирует страницу (x), "page_version_number", "U0_mask_table", поле "in_effect", указывающее результат отображения, который должен быть воспроизведен во время начала отображения страницы (x), поле "out_effect", указывающее результат отображения, который должен быть воспроизведен во время окончания отображения страницы (x), "animation_frame_rate_code", в котором записана частота кадра, которая должна быть применена, "default_selected_button_id_ref", "default_selected_button_id_ref", "default_activated_button_id_ref", "pallet_id_ref", и "информация кнопки (1) (2)... (number_of_buttons - 1)" соответствующие соответственно множеству кнопок на странице (x).
Поле "UO_Mask_Table" указывает, разрешать ли или не разрешать пользовательскую операцию на странице (x). Если это поле маски установлено «не разрешать», любая пользовательская операция на устройстве воспроизведения становится недействительной.
Поле "default_selected_button_id_ref" указывает, когда начинается отображение страницы (x), определены ли кнопки, чье состояние по умолчанию есть выбранное состояние, в интерактивном режиме или пассивным образом. В частности, когда это поле содержит 0xff, кнопки, чье состояние по умолчанию есть выбранное состояние, определены интерактивно. В этом случае значения параметров настройки в Регистре Статуса Плеера (Player Status Register - PSR) в устройстве воспроизведения предпочтительно интерпретируются, и кнопки, указанные в PSR, установлены в выбранное состояние. Когда это поле не содержит 0xff, кнопки, чье состояние по умолчанию - выбранное состояние, определены статически. В этом случае, номера кнопок, определенные в поле default_selecte_button_id_ref, записаны в PSR, и соответствующие кнопки установлены в выбранное состояние.
Поле "default_activated_button_id_ref" указывает кнопки, автоматически установленные в активное состояние, когда достигнута временная точка, указанная посредством selection_time_out_pts. Если поле default_activated_button_id_ref содержит FF, эта кнопка в выбранном состоянии в течение заранее определенного периода является автоматически выбранной. Если default_activated_button_id_ref поле содержит 00, эта кнопка в выбранном состоянии автоматически не выбирается. Когда поле default_activated_button_id_ref содержит значение, отличное от 00 или FF, это значение интерпретируется как действительный номер кнопки.
Поле "pallete_id_ref" указывает ИД палитры, которая должна быть установлена в блоке CLUT для страницы (x).
Информация кнопки (поле button_info) определяет каждую кнопку, отображенную на странице (x). Вышеописанные поля задают каждую страницу в многостраничном меню. Ниже описана внутренняя структура информации кнопки. В этом описании произвольная одна из кнопок на странице (x) обозначена как кнопка (i). На Фиг.42 стрелки cx1 указывают в увеличенном виде внутреннюю структуру button_info (i).
Каждая кнопка, представленная на странице, имеет три состояния, которыми являются нормальное состояние, выбранное состояние и активизированное состояние. Когда кнопка находится в нормальном состоянии, кнопка просто отображается. Когда кнопка находится в выбранном состоянии, на кнопке в настоящее время находится фокус в результате пользовательской операции, но еще не активизирована. Когда кнопка находится в активизированном состоянии, кнопка была активизирована. Так как каждая кнопка имеет эти три состояния, button_info (i) представлен следующей информацией.
Поле button_id показывает значение, уникально идентифицирующее кнопку (i) в структуре interactive_composition.
Поле button_numeric_select_value показывает флаг, указывающий, является ли кнопка (i) численно выбираемой.
Поле auto_action_flag показывает, активизируется ли кнопка (i) автоматически. Когда поле auto_action_flag установлено в ON (битовое значение "1"), кнопка (i) переходит не в выбранное состояние, а непосредственно в активизированное состояние при выборе. С другой стороны, когда поле auto_action_flag установлено в OFF (битовое значение "0"), кнопка (i) переходит не в активизированное состояние, а в выбранное состояние при выборе.
Поле button_horizontal_position и поле button_vertical_position соответственно определяют горизонтальное и вертикальное положения левого верхнего пикселя кнопки (i) на интерактивном отображении.
Структура neighbor_info показывает кнопки для приема выбранного состояния в ответ на пользовательские операции, сделанные для перемещения фокуса в направлении вверх, вниз, вправо и влево, когда кнопка (i) находится в выбранном состоянии. Структура neighbor_info состоит из полей upper_button_id_ref, lower_button_id_ref, left_button_id_ref, и right_button_id_ref.
Поле upper_button_id_ref определяет номер кнопки, чтобы кнопка приняла выбранное состояние, если пользовательская операция, инструктирующая переместить фокус в направлении вверх, в то время как кнопка (i) находится в выбранном состоянии. Операция перемещения вверх выполняется при нажатии клавиши Move Up удаленного контроллера. Если это поле установлено в тот же самый номер кнопки, как таковой кнопки (i), пользовательская операция для клавиши перемещения вверх игнорируется.
Точно так же поле lower_button_id_ref, поле left_button_id_ref, поле Right_button_id_ref каждое определяет номера кнопки для кнопки, чтобы принять выбранное состояние, если выполнена пользовательская операция, инструктирующая переместить фокус в направлении вниз, влево или вправо, в то время как кнопка (i) находится в выбранном состоянии. Соответствующие операции выполняются при нажатии клавиши Move Down, клавиши Move Left, и клавиши Move Right удаленного контроллера. Если эти поля установлены в тот же самый номер кнопки как таковой кнопки (i), пользовательские операции для этих клавиш игнорируются.
Структура normal_state_info определяет нормальное состояние кнопки (i) и состоит из полей normal_start_object_id_ref, normal_end_object_id_ref, и normal_repeat_flag.
Поле normal_start_object_id_ref определяет первое из значений object_id, которые последовательно назначены на последовательность ODS, используемых для представления нормального состояния кнопки (i) в анимации.
Поле normal_end_object_id_ref определяет последнее из значений object_id, которые последовательно назначены на последовательность ODS, используемых для представления нормального состояния (i) в анимации. Если поле normal_end_object_id_ref задает то же самое значение ID, как таковое в normal_start_object_id_ref, статическое изображение графического объекта, идентифицированного этим ИД, представляется как кнопка (i).
Поле normal_repeat_flag определяет, должна ли быть непрерывно повторена анимация кнопки (i) в нормальном состоянии.
Структура selected_state_info определяет выбранное состояние кнопки (i). Структура selected_state_info состоит из полей selected_state_sound_id_ref, selected_start_object_id_ref, selected_end_obj ect_id_ref, и selected_repeat_flag.
Поле selected_state_sound_id_ref определяет звуковые данные, которые должны быть воспроизведены как звук щелчка, когда кнопка (i) переводится в выбранное состояние. Звуковые данные задаются посредством sound_id части звуковых данных, содержащихся в файле, названном sound.bdmv. Когда это поле установлено в "0xFF", никакие звуковые данные не ассоциированы с выбранным состоянием кнопки (i), и таким образом никакой звук щелчка не воспроизводится, когда кнопка (i) изменяется в выбранное состояние.
Поле selected_start_object_id_ref определяет первое одно из значений object_id, которые последовательно назначены на последовательность ODS, используемых, чтобы представить выбранное состояние кнопки (i) в анимации.
Поле selected_end_object_id_ref определяет последнее одно из значений object_id, которые последовательно назначены последовательности ODS, используемых, чтобы представить нормальное состояние кнопки (i) в анимации. Если поле selected_end_object_id_ref задает то же самое значение ИД, как таковое из selected_start_object_id_ref, статическое изображение графического объекта, идентифицированного этим ИД, представляется как кнопка (i).
Поле selected_repeat_flag задает, должна ли быть непрерывно повторена анимация кнопки (i) в выбранном состоянии. Если поля selected_start_object_id_ref и selected_end_object_id_ref имеют одно и то же значение, поле selected_repeat_flag устанавливается в значение "00".
Структура activated_state_info определяет активизированное состояние кнопки (i), и состоит из полей activated_state_sound_id_ref, activated_start_object_id_ref, и activated_end_object_id_ref.
Поле activated_state_sound_id_ref определяет звуковые данные, которые должны быть воспроизведены как звук щелчка, когда кнопка (i) переведена в активизированное состояние. Звуковые данные определены посредством sound_id части звуковых данных, содержащихся в файле sound.bdmv. Когда это поле установлено в "0xFF", никакие звуковые данные не ассоциированы с активизированным состоянием кнопки (i), и таким образом никакой звук щелчка не воспроизводится, когда кнопка (i) изменяется на активизированное состояние.
Поле activated_start_object_id_ref определяет первое из значений object_id, которые последовательно назначаются на последовательность ODS, используемых, чтобы представить активизированное состояние кнопки (i) в анимации.
Активизированное поле end_object_id_ref определяет последнее одно из значений object_id, которые последовательно назначены последовательности ODS, используемых, чтобы представить активизированное состояние кнопки (i) в анимации.
Структура "navigation_command" показывает команду навигации, которая должна быть выполнена, когда кнопка (i) активизирована. Представительным примером команды навигации является команда SetButtonPage. Команда SetButtonPage инструктирует устройство воспроизведения отобразить требуемую страницу многостраничного меню с требуемой одной из кнопок на странице в выбранном состоянии. С использованием таких команд навигации создатели контента могут легко описать переходы по страницам во время создания.
Это завершает описание внутренней структуры информации кнопки.
Ограничения при использовании модели с 2 декодерами
Ниже описано, как поля вышеописанных функциональных сегментов устанавливаются для левого вида и правого вида, соответственно, и это, в основном является тем же самым как в случае PG. То есть тип DS и composition_number в потоке IG левого вида установлены в идентичные значения как тип DS и composition_ number в соответствующем потоке IG правого вида.
Кроме того, идентичное значение установлено в интерактивном сегменте композиции в DS левого вида и интерактивном сегменте композиции в соответствующем DS правого вида для PTS PES-пакетов, которые хранят эти сегменты композиции представления.
Кроме того, идентичный контент установлен для соответствий между значением кода, разностью яркости и цвета, и для сегмента определения палитры DS левого вида, и для сегмента определения палитры соответствующего DS правого вида, и palette_id также идентичен.
Ниже описано, как поля, отличные от описанных выше, записываются в ICS. Фиг.43 и 44 показывают пример записи ICS, которая принадлежит Набору Отображения. Фиг.43 и 44 показывают пример, в котором множество кнопок записаны в графической плоскости.
Фиг.43 показывает пример ICS, принадлежащего DS левого вида. Как показано на Фиг.43, кнопка 1 названия, определенная информацией кнопки (0), обеспечена в диапазоне, который принимает button_horizontal_position 1 (левый) и button_vertical_position в качестве базовой (левой верхней) точки в системе координат графической плоскости. Кроме того, кнопка m названия, определенная информацией кнопки (number_of_buttons-1), обеспечена в диапазоне, который принимает значение button_horizontal_position m (левая) и button_vertical_position в качестве базовой (левой верхней) точки. Таким образом, кнопки названий записывают в графической плоскости. Это вызывает отображение кнопки названия как составленной с движущейся картинкой.
Фиг.44 показывает пример ICS, принадлежащей к DS правого вида. Как показано на Фиг.44, кнопка 1 названия, определенная информацией кнопки (0), обеспечена в диапазоне, который принимает button_horizontal_position 1 (правая) и button_vertical_position в качестве базовой точки (левой верхней) в системе координат графической плоскости. Кроме того, кнопка m названия, определенная информацией кнопки (number_of_buttons-1), обеспечена в диапазоне, который принимает значение button_horizontal_position m (правая) и button_horizontal_position в качестве базовой (левой верхней) точки. Таким образом, графику записывают в графической плоскости. Это вызывает отображение графики как составленной с движущейся картинкой.
Хотя button_vertical_position установлена равной такому же значению как базовая точка и в левом виде и в правом виде, как описано выше, button_horizontal_position устанавливается с различными значениями в левом виде и правом виде.
Кроме того, button_id установлен равным одинаковому значением и в левом виде и в правом виде. Причина этого в том, что устройство воспроизведения, которое использует 2 декодера, имеет структуру, в которой эти два декодера совместно используются между графическим контроллером. По этой причине, если button_id не установлено равным одинаковому значению как графический объект, соответствующий DS левого вида и правого вида, графический контроллер не может различить, какие графические объекты соответствуют друг другу.
Элементы, отличные от вышеупомянутых в button_information, а именно, neighbor_info, normal_state_info, selected_state_info, activated_state_info, и navigation_command, идентичный контент используется и для левого вида и для правого вида.
Кроме того, в DS, соответствующих левому виду и правому виду, идентичные значения установлены для composition_time_out_pts, selection_time_out_pts и user_time_out_duration.
Добавление вышеупомянутых ограничений позволяет реализовать стереоскопический вид в структуре с 2 декодерами посредством потока IG левого вида и потока IG правого вида.
Устройство воспроизведения
Ниже описаны подробности БИС системы, включенной в устройство воспроизведения согласно настоящему варианту осуществления. Фиг.45 показывает внутреннюю структуру БИС системы в настоящем варианте осуществления. Основная структура является такой же, как на Фиг.32. Отличие от Фиг.32 заключается в том, что графический контроллер 86 совместно используется между контроллером графики левого вида и контроллером графики правого вида. Ниже описана причина этого. В случае IG ожидается, что графический декодер принимает уведомление о UO от модуля обнаружения UO. Поэтому, когда есть два графических контроллера, каждый принимает уведомление UO от модуля обнаружения UO. Если это сделано, так как уведомления о UO от модуля обнаружения UO графическому контроллеру могут быть выполнены только последовательно, имеет место разница во времени между графическими контроллерами. В результате при выполнении обработки на основании UO, есть возможность сбоя, имеющего место между графическими контроллерами. По этой причине графический контроллер 86 совместно используется между левым видом и правым видом.
Графический контроллер 86, который совместно используется между левым видом и правым видом, декодирует ICS, обеспеченный в буфере 85a композиции, выполняет управление на основании ICS, декодирует ICS, обеспеченный в буфере композиции 85b, и выполняет управление на основании ICS.
Кроме того, когда уведомление о UO принято от модуля 212 обнаружения UO, графический контроллер 86 выполняет управление, соответствующее этому UO, в отношении графического декодера для левого вида и графического декодера для правого вида, соответственно.
Более подробно, графический контроллер 86 выполняет вырисовывание графики со ссылкой на информацию кнопки, заданной PSR 11 (информация текущей страницы) из множества частей информации страницы в ICS, предоставленном в буфере 85a композиции. Это вырисовывание выполняется посредством считывания графики, заданной посредством normal_start_obj ect_id и normal_end_object_id normal_state_info из буфера 84a объектов, в частях информации кнопки в информации текущей страницы, и записи графику в графическую плоскость для левого вида 9a. Среди информации кнопки в информации текущей страницы информация, заданная посредством PSR 10, является графикой, определенной посредством selected_start_object_id и selected_end_object_id в selected_state_info, которая считана из буфера 84a объектов, и записана в графической плоскости для левого вида 9a. Согласно чертежу, страницы, упорядоченные от кнопки 1 названия к кнопке m названия появляется в графической плоскости для левого вида 9a, и являются составленными с движущейся картинкой. Правый вид также является аналогичным.
Согласно варианту осуществления, как описано выше, в DS, которая коррелирует поток IG левого вида и поток IG правого вида, так как composition_state установлено с идентичным контентом, посредством обеспечения этих DS в точках, которые вероятно будут выбраны как точки начала воспроизведения, аналогичны случаю PCS, позволяет обеспечить стереоскопический вид графики во время произвольного доступа.
Кроме того, вынуждая графический контроллер в устройстве воспроизведения быть совместно используемым между левым видом и правым видом, по сравнению со случаем использования структуры с 2 контроллерами, позволяет сократить объем аппаратных средств, и достичь уменьшенной стоимости устройства.
Дополнительные замечания
Хотя это завершает описание наилучшего варианта осуществления настоящего изобретения, известного заявителю на дату подачи настоящей заявки, конечно, настоящее изобретение не ограничено вышеупомянутым вариантом осуществления.
(1) Устройство 200 воспроизведения может дополнительно включать в себя локальное запоминающее устройство. Локальное запоминающее устройство включает в себя встроенный носитель и сменный носитель и используется для хранения данных, такие как загруженный дополнительный контент, и данные, которые используются приложениями. Область хранения для дополнительного контента разделена специально для отдельных BD-ROM, и область хранения для хранения данных, используемых приложениями, разделена специально для отдельных приложений. Информация управления слиянием, задающая правила для слияния загруженного дополнительного контента с данными на BD-ROM, также хранится во встроенном носителе или сменном носителе.
Встроенным носителем, является, например, перезаписываемый носитель записи, такой как жесткий диск или память, встроенная в устройство воспроизведения.
Сменным носителем, является, например, портативный носитель записи, и предпочтительно является портативной карточкой с полупроводниковой памятью, такой как карта SD.
Следующее описание дано посредством примера, в котором сменным носителем является карточка с полупроводниковой памятью. Устройство воспроизведения включает в себя слот (не изображен) для вставки сменного носителя, и интерфейс (например, I/F (интерфейс) карточки с памятью) для считывания сменного носителя, вставленного в слот. Когда карточка с полупроводниковой памятью вставляется в слот, сменный носитель электрически соединяется с устройством воспроизведения, и с использованием интерфейса (например, I/F карточки с памятью) данные, записанные на карточке с полупроводниковой памятью, могут быть преобразованы в электрические сигналы и считаны.
Когда устройство 200 воспроизведения включает в себя локальное запоминающее устройство, виртуальная файловая система может быть дополнительно включена. Виртуальная файловая система создает виртуальный BD-ROM (виртуальный пакет), посредством слияния дополнительного контента, обеспеченного на локальном запоминающем устройстве, с контентом, находящимся на BD-ROM, на основании информации управления слиянием, загруженной вместе с дополнительным контентом в локальное запоминающее устройство 113. Интерпретатор команд, который является объектом выполнения в режиме HDMV, и BD-J платформа, которая является объектом выполнения в BD-J режиме, может сделать ссылку на виртуальный пакет таким же образом, как оригинальный BD-ROM. Во время воспроизведения виртуального пакета устройству воспроизведения разрешено выполнять управление воспроизведением посредством использования данных на BD-ROM и данных в локальном запоминающем устройстве.
Кроме того, устройство 200 воспроизведения может дополнительно включать в себя сетевой интерфейс. Сетевой интерфейс предназначен для выполнения связи с помощью обмена информацией с устройством, которое является внешним к устройству воспроизведения. Сетевой интерфейс способен обращаться к серверу, соединенному с сетью, используя Интернет, и получая доступ к серверу, соединенному посредством локальной сети. Например, сетевой интерфейс может использоваться, чтобы загрузить дополнительный BD-ROM - контент, сделанный доступным в Интернете, и воспроизвести контент, используя функцию сети посредством выполнения обмена данными с сервером, заданным посредством контента в Интернете. Дополнительный контент BD-ROM относится к контенту, который не включен в оригинальный BD-ROM, и, например, включает в себя дополнительные дублированные аудио, субтитры, специальные особенности, приложения и т.д. Возможно управлять сетевым интерфейсом из BD-J платформы, и возможно загрузить в локальное запоминающее устройство дополнительный контент, сделанный доступным в Интернете.
(2) Есть случаи, в которых потоки PG левого вида и правого вида получают посредством загрузки этих потоков в качестве дополнительного контента. В этом случае в одном AV клипе имеются случаи, в которых существуют только потоки PG левого вида и правого вида. Ограничение в таком случае описано ниже.
Фиг.46 является диаграммой шаблона, иллюстрирующей мультиплексирование PG-потока (L) и PG-потока (R). Здесь верхний ряд показывает структурный пример PG-потока (L), и здесь состоит из двух DS, а именно, Набора Отображения (L) 1 и Набора Отображения (L) 2.
Второй ряд сверху показывает, как поток PG (L) был TS-пакетирован.
Нижний ряд показывает структурный пример PG-потока (R), и здесь состоит из двух DS, а именно, Набора Отображения (R) 1 и Набора Отображения (R) 2.
Второй ряд снизу показывает, как поток PG (R) был TS-пакетирован.
Здесь, пара DS, состоящая из левого вида и правого вида, необходима для 3D отображения. На Фиг.46 Набор Отображения (L) 1 и Набор Отображения (R) 1 формируют пару, Набор Отображения (L) 2 и Набор Отображения (R) 2 формируют пару, и эти пары используются для 3D отображения. При мультиплексировании DS левого вида и DS правого вида, которые формируют пару, компонуются, как показано на Фиг.46, так, чтобы DS левого вида был всегда первым в потоке. То есть DS левого вида снабжен меньшим номером TS-пакета. Кроме того, таблица входов устанавливается для потока левого вида. Соответственно, даже во время перерыва в воспроизведении, так как DS правого вида может быть декодирован сразу после DS левого вида, DS левого вида и DS правого вида могут всегда декодироваться как пара. Поэтому, можно избежать ситуации, в которой может быть декодирован только один из пары и другой не может быть декодирован.
Кроме того, положения входов, которые должны использоваться для перерыва в воспроизведении и специального воспроизведения, записаны на Фиг.46, и посредством обеспечения обоих DS в паре из левого вида и правого вида дальше назад, чем TS-пакет, который указан этим входом, даже при выполнении воспроизведения перерыва на основании этого входа, парные DSs левого вида и правого вида отображаются правильно.
Следует заметить, что, хотя описан пример обеспечения DS как пары после входа, оба DS могут быть обеспечены перед входом. В этом случае, при выполнении перерыва в воспроизведении на основании входа, так как оба парных DS не могут быть декодированы, возможно предотвратить случай, в котором показывается только один из левого вида и правого вида, и таким образом уменьшить дискомфорт при просмотре.
(3) Хотя описан случай в вышеупомянутых вариантах осуществления подготовки отдельных потоков PG для левого вида и правого вида, здесь сначала описан способ адаптации одного PG-потока к 3D отображению. Фиг.47 показывает структуру данных 3D-PCS. Разница между PCS, изображенными на Фиг.14, и этим 3D-PCS заключается в поле, указанном compositon_object(), и L_R_flag был добавлен, чтобы указать, предназначен ли этот объект для левого глаза или правого глаза. Например, когда composition_object() указывает, что объект предназначен для левого глаза, L_R_flag установлен в 0, и когда composition_object() указывает, что объект предназначен для правого глаза, L_R_flag установлен равным 1.
Обычно, когда PG отображается в 3D, объект для левого глаза и объект для правого глаза должны быть парой. Другими словами, значение number_pf_composition в 3D-PCS должно обязательно быть четным числом, и должно быть одним и тем же номером объекта () композиции для левого глаза и объекта () композиции для правого глаза.
Кроме того, когда 3D-PCS как функциональный сегмент является мультиплексированным (включая 2D-PCS), как показано на Фиг.48A, 3D-PCS обеспечиваются в позиции перед 2D-PCS в потоке. Другими словами, 3D-PCS дается меньший номер TS-пакета, чем 2D-PCS, и соответственно, так как совместимое с 3D устройство воспроизведения может найти 3D-PCS первым, совместимое с 3D устройство воспроизведения может перескочить через (пропустить) 2D-PCS, которое не является необходимым для отображения 3D.
Кроме того, 3D-ODS, маркированный как таковой на чертеже, указывает ODS, включающий в себя объект, на который можно сослаться только из 3D-PCS. Установка различных значений для segment_type в 3D-ODS и segment_type в ODS позволяет сократить нагрузку декодирования в устройстве воспроизведения, которое не является совместимым 3D, так как через 3D-ODS можно перескочить. Кроме того, когда на объект ссылаются и 2D-PCS и 3D-PCS, определение его как ODS вместо 3D-ODS позволяет объекту быть совместно используемым между 2D и 3D.
Кроме того, например, когда есть множество composition_objects в 3D-PCS, соответствующие composition_objects () правого глаза могут быть скомпонованы, чтобы следовать за composition_objects() левого глаза. Последовательная компоновка таких пар composition_object L и R имеет выгоду предоставления возможности легкой верификации, что forced_on_flags соответствующих composition_object L и R являются одинаковыми. Кроме того, ограничивая порядок компоновки L и R таким образом, так как флаги L-R, которые указывают, являются ли composition_objects() L или R, могут быть удалены, позволяет использовать одну и ту же структуру данных как 2D-PCS, которая уже существует, и интерпретировать 3D-PCS с помощью почти неизмененной программы интерпретации 2D PCS.
Ниже описан второй способ, чтобы сделать один поток PG субтитров совместимым с 3D. Отличие от Фиг.48a заключается в том, что 3D-PCS левого глаза (3D-PCS (L)) и 3D-PCS правого глаза (3D-PCS (R)) готовятся отдельно как 3D-PCS (L) и 3D-PCS (R) (см. Фиг.48B). Выгода такого разделения 3D-PCS левого глаза и 3D-PCS правого глаза заранее описана ниже. Для тех SD-PCS, которые включают в себя информацию и для L и для R, как описано выше, необходимо установить новый флаг (L_R_flag) для того, чтобы указать, предназначен ли объект, на который будут ссылаться, для левого глаза или для правого глаза. Кроме того, когда флаг не предоставлен, необходимо обеспечить ограничения компоновки, например задавая, что composition_object () с нечетным номером предназначен для L, и четно пронумерованный composition_object () - для R. Другими словами, при декодировании 3D-PCS, необходимо изменить программу, которая интерпретирует 2D-PCS так, чтобы новое поле, названное посредством L_R_flag, могло быть считано, или выполнить обработку так, чтобы composition_objects () с нечетным номером и четно пронумерованные composition_objects () могли быть интерпретированы соответственно как L и R.
С другой стороны, так как разделение сегментов как 3D-PCS (L) и 3D-PCS (R) и выполнение передачи позволяют структурам 3D-PCS (L) и 3D-PCS (R) быть такими же, как структура 2D PCS, одна и та же программа может использоваться, как программа, используемая для интерпретации 2D-PCS. В этом случае, так как декодер различает 3D PCS (3D-PCS(L) и 3D-PCS (R)) и 2D-PCS, соответствующий segment_type может быть установлен различным. Например, если segment_type нормального 2D PCS установлен как 0x00, значение segment_type для 3D-PCS (L) установлено как 0x01, и значение segment_type для 3D-PCS (R) установлено как 0x02. Альтернативно, определяя компоновку 3D-PCS (L) и 3D-PCS (R) заранее так, чтобы номер TS-пакета 3D-PCS (L) был меньшим, позволяет проводить различие между 2D PCS и 3D-PCS, даже когда segment_types и для 3D-PCS (L) и для 3D-PCS (R) установлены в 0x01.
Кроме того, относительно компоновки PCS 3D-PCS (L), 3D-PCS (R), и 2D PCS, обеспечивая 3D-PCS (L) и 3D-PCS (R) первыми, и обеспечивая 2D PCS после них, позволяют сократить нагрузку декодирования, так как если 3D-PCS находятся первыми в устройстве воспроизведения, совместимым с 3D, эти 2D-PCS, найденные затем, можно пропустить.
(4) Хотя в вышеупомянутом варианте осуществления оба DS, соответствующие левому виду и правому виду, установлены имеющими равные значения composition_number, новое поле (например, L_R_Pairing_number) может быть обеспечено, и это поле может быть установлено равным в обоих соответствующих DS.
(5) Хотя в вышеупомянутом варианте осуществления поток PG левого вида ссылается на объект в PG потоке левого вида, и поток PG правого вида ссылается на объект в PG потоке правого вида, например, PG поток правого вида может быть сформирован, чтобы ссылаться на объект PG потока левого вида. Конфигурирование PG потоков левого и правого вида, чтобы ссылаться на объекты друг друга, имеет преимущество в том, что нет необходимости передавать один и тот же объект к правому и левому, таким образом, позволяя сохранить полосу пропускания, необходимую для передачи.
(6) Хотя в вышеупомянутом варианте осуществления жидкокристаллические дисплейные очки 104 с затвором состоят из пары жидкокристаллических затворов и блока управления и обеспечивают стереоскопический вид пользователю с использованием параллакса между глазами пользователя, настоящее изобретение не ограничено этим. Например, на рынке имеются очки, которые реализуют стереоскопический вид посредством использования фильтра поляризации вместо жидких кристаллов, и очки, использующие этот тип механизма, также могут использоваться.
(7) Хотя в вышеупомянутом варианте осуществления описание основано на способе формирования стереоскопического просмотра с использованием жидкокристаллических дисплейных очков 104, другой способ также может использоваться для отображения изображения левого вида и изображения правого вида для левого глаза и правого глаза, соответственно. Например, способ, который не использует оборудование специального просмотра, такое как очки, который использует «параллельный» способ, или отображение, такое как двояковыпуклая линза, может использоваться.
Кроме того, относительно следующих технологических особенностей, дальнейшие усовершенствования и модификации могут быть добавлены. Реализовать ли варианты осуществления описанным способом или использовать любое из усовершенствований / модификации является произвольным усмотрением того, кто реализует это изобретение.
Реализация в качестве устройства записи
Когда устройство 200 воспроизведения включает в себя локальное запоминающее устройство и накопитель на сменных носителях, так как в этой структуре предполагается, что запись будет выполнена на накопитель встроенного носителя и сменного носителя, устройство воспроизведения, описанное в настоящем описании, можно сказать, имеет двойную функцию в качестве устройства записи. Когда устройство 200 воспроизведения функционирует как устройство записи, запись объектов управления выполняется согласно следующим двум режимам.
i) Когда устройство 200 воспроизведения имеет функцию выполнения воспроизведения виртуального пакета, BD-J объект записывается следующим образом. То есть, когда BD-ROM вставлен, согласно запросу от приложения, дополнительный контент, соответствующий BD-ROM, получают от WWW-сервера через сеть. Полученный дополнительный контент включает в себя BD-J объект, в котором записана таблица управления GUI. "Таблица управления GUI" является таблицей управления, используемой, когда приложение при работе выполняет GUI, и включает в себя разрешение использовать, при выполнении отображения GUI, данные шрифта для использования для этого GUI, и флаг маски, который задает, когда пользователь выполняет вызов меню или вызов названия на GUI, маскировать ли такие запросы.
В устройстве 200 воспроизведения блок управления, который выполняет управление записью, записывает полученный BD-J объект в локальное запоминающее устройство согласно запросу от приложения. Делая это, контенты, записанные на BD-ROM, объединяются с дополнительными контентами, записанными в локальном запоминающем устройстве, чтобы составить виртуальный пакет.
Здесь, BD-ROM имеет записанный на нем идентификатор корневого сертификата диска, идентификатор организации, которой BD-ROM были распределены контенты, и идентификатор BD-ROM. Область, в которой должны быть сохранены дополнительные контенты, определяется посредством пути файла, включающего идентификатор корневого сертификата диска, идентификатор организации, и идентификатор BD-ROM.
Приложение выполняет запись посредством передачи блоку управления файла, который задает область, в которой должен быть сохранен дополнительный контент.
Когда локальное запоминающее устройство имеет файловую систему с ограничениями на названия каталогов и файлов в 255 символов или меньше, путь файла, используемый для записи в локальное запоминающее устройство, включает в себя имена файла и расширения в файловой системе в формате 8.3, в которой имя каталога ограничено 8 символами или меньше, и имя файла, так же как название расширения, ограничено тремя символами или меньше.
ii) Когда устройство 200 воспроизведения поддерживает функцию приема услуги изготовления по требованию или электронной услуги продажи в распоряжение покупателя (MODEST), BD-J объект записывается следующим образом.
Когда устройство 200 воспроизведения принимает BD-J объект, поставляемый с помощью услуги изготовления по требованию или электронной услуги продажи в распоряжение покупателя, каталог по умолчанию и каталог MODEST создаются ниже корневого каталога сменного носителя, и каталог BDMV создается ниже каталога MODEST. Каталог MODEST является первым каталогом MODEST, который является каталогом MODEST, который создан, когда услуга принимается первый раз. Во время приема услуги во второй раз, блок управления устройства 200 воспроизведения создает другой каталог MODEST, соответствующий каждой услуге.
Как описано выше, после получения BD-J объекта, в котором записана таблица управления GUI, блок управления записывает программу запуска в каталог по умолчанию, и записывает BD-J объект в каталог BDMV ниже MODEST каталога. Эта программа запуска является первой программой, которая должна быть выполнена, когда носитель записи загружается в устройство 200 записи. Программа запуска вынуждает устройство 200 воспроизведения показывать меню, разрешающее пользователю выполнить операцию для выбора каталога BDMV. В ответ на такую пользовательскую операцию устройство 102 воспроизведения выполняет функцию изменения корня. В ответ на пользовательскую операцию, сделанную в меню, функция изменения корня вынуждает устройство воспроизведения распознавать в качестве корневого каталога каталог MODEST, которому принадлежит выбранный каталог BDMV. Функция изменения корня разрешает выполнение управления воспроизведением в соответствии с такой же процедурой управления, как воспроизведение BD-ROM, на основании полученного BD-J объекта.
Приложение Java (ТМ)
Приложением BD-J может быть, например, клиентское приложение электронной торговли (EC), или может быть игрой он-лайн, играемой против соперников в Интернет. Кроме того, работая вместе с поисковой подсистемой, различные он-лайн услуги могут быть оказаны пользователю.
Блоки, включающие в себя таблицу управления GUI
Таблица управления GUI может быть обеспечена в BD-J объекте. Кроме того, таблица управления GUI может быть сформирована так, чтобы информация списка воспроизведения и информация элемента PlayItem находились в соответствии. В то время, когда текущий Список воспроизведения становится указанным Списком воспроизведения, или текущий PlayItem становится указанным PlayItem, после освобождения памяти плоскости, память плоскости может быть зарезервирована для стереоскопического воспроизведения, или память плоскости может быть зарезервирована для монокулярного воспроизведения. Делая это, управление областью запоминающего устройства выполняется с большей временной точностью.
Потоки видео для стереоскопического вида
В вышеупомянутом описании пара потоков видео левого и правого вида записаны на BD-ROM, но это только один пример. Видео поток EnhancedView, записанный на BD-ROM, может быть видео потоком с информацией, указывающей значение глубины для каждого пикселя для каждой из множества картинок, и воспроизведение такого видео потока выполняется.
Пакеты, которые должны быть реализованы
При реализации устройства воспроизведения, следующие BD-J расширения предпочтительно реализуются в устройстве воспроизведения. BD-J расширения включает в себя различные пакеты, которые были специализированы для обеспечения функций, превосходящих GEM [1.0.2] для формата Java (ТМ). Пакетами, которым предоставлены BD-J расширения, являются следующие.
- org.bluray.media
Этот пакет обеспечивает специализированные функции, которые должны быть добавлены к инфраструктуре Java (ТМ) Media. Управление для выбора углов, аудио и субтитров добавляется к пакету.
- org.bluray.ti
Этот пакет включает в себя структуру для того, чтобы обратиться к API для обработки посредством сопоставления "услуги" с " названиями" согласно GEM [1.0.2] и обращения к информации названия из BD-ROM, и структуре для выбора нового названия.
- org.bluray.application
Этот пакет включает в себя API для того, чтобы управлять периодами жизни приложений. Кроме того, этот пакет включает в себя API для ссылки на необходимую информацию для сигнализации при выполнении приложения.
- org.bluray.ui
Этот пакет включает в себя класс, который определяет постоянные номера для ключевых событий, специализированных в BD-ROM, и реализует синхронизацию с видео воспроизведением.
- org.bluray.vfs
Этот пакет обеспечивает схему связывания для связывания контентов, которые записаны на BD-ROM (контенты на диске) и контентов в локальном запоминающем устройстве, которые не записаны на BD-ROM (контенты вне диска), так, чтобы гладкое воспроизведение контентов было разрешено независимо от местоположения контентов.
Схема связывания связывает контенты, находящиеся на BD-ROM (AV клипы, субтитры, BD-J приложения) со связанным содержимым, находящимся на локальном запоминающем устройстве. Эта Схема связывания реализует гладкое воспроизведение независимо от местоположения контентов.
Диапазон применения языка программирования
Это описано в вышеупомянутом варианте осуществления, в котором язык Java (ТМ) используется в качестве языка программирования для виртуальной машины. Однако, язык программирования не ограничен Java (ТМ), и другие языки программирования, такие как B-Shell, Perl Script, и ECMA Script, которые используются в операционной системе UNIX (ТМ) т.п., могут также использоваться.
Изменение на Multidrive
Вышеописанный вариант осуществления описывает BD-ROM как пример носителя записи, и накопитель BD-ROM как пример конкретного устройства, имеющего функцию считывания данных с BD-ROM. Однако, BD-ROM является просто одним примером, и возможно также выполнить операции, описанные в вышеупомянутом варианте осуществления, когда носитель на оптическом диске, такой как BD-R, BD-RE, DVD, или CD используются как носитель записи, данные, имеющие вышеописанную структуру данных, сохраняются на таком носителе записи, и есть устройство накопителя, способное считывать такой носитель записи.
Носители записи согласно вариантам осуществления включают в себя все типы носителей пакетов, такие как оптические диски, карточки с полупроводниковой памятью и т.д. Носители записи из вышеупомянутого варианта осуществления описаны посредством примера, относящегося к оптическому диску (например, существующий оптический диск только для считывания, такой как BD-ROM или DVD ROM). Однако, настоящее изобретение не ограничено этим. Например, возможно, что устройство терминала, имеющее функцию записи 3D контентов (например, эта функция может быть включена в устройство воспроизведения, или может быть включена в устройство, отличное от устройства воспроизведения), записывает 3D контенты, включая данные, которые необходимы для реализации настоящего изобретения, и были переданы или распределены по сети, на перезаписываемом оптическом диске (например, существующий перезаписываемый оптический диск, такой как BD-RE или DVD RAM). Настоящее изобретение может быть внедрено, выполняя воспроизведение такого носителя записи устройством воспроизведения согласно настоящему изобретению.
Кроме того, возможно реализовать настоящее изобретение, когда носителем записи является, помимо оптического диска, например, сменный носитель, такой как карточка с памятью SD (карточка с полупроводниковой памятью).
Когда полупроводниковая память используется вместо BD-ROM, может использоваться структура, в которой данные передают в буфер 2 считывания, память 207 неупорядоченного массива, память 209 интерактивного сценария, и статическую память 205 через интерфейс для считывания данных, хранящихся в карточке с полупроводниковой памятью.
В частности, может использоваться следующая структура. То есть, когда карточка с полупроводниковой памятью вставлена в слот (не изображен) в устройстве 200 воспроизведения, устройство 200 воспроизведения и карточка с полупроводниковой памятью электрически соединяются через интерфейс I/F карточки с памятью. Данные, записанные на карточке с полупроводниковой памятью, могут быть переданы через интерфейс карточки с памятью в буфер 2 считывания, память 207 неупорядоченного массива, память 209 интерактивного сценария и память 205 статического сценария.
Ниже описан механизм защиты авторского права в отношении данных, хранящихся на BD-ROM. С точки зрения, например, повышения конфиденциальности данных и защиты авторского права, имеются случаи, в которых части данных, записанных на BD-ROM, кодируются как необходимо.
Например, среди данных, записанных на BD-ROM, шифрование может быть применено к данным, соответствующим видео потоку, данным, соответствующим аудио потоку, и/или данным, соответствующим потоку, который включает в себя и видео и аудио.
Ниже описано расшифрование кодированных данных, которые находятся среди данных, записанных на BD-ROM.
Данные, соответствующие ключу, необходимому для расшифровки кодированных данных на BD-ROM (например, ключ устройства), сохраняются заранее в устройстве воспроизведения.
С другой стороны, BD-ROM имеет записанные на нем данные, соответствующие ключу, необходимому для расшифровки кодированных данных (например, MKB (блок ключа носителя), соответствующий ключу устройства), и записаны данные, которые являются ключом для расшифровки кодированных данных, которые сами являются закодированными (например, кодированный ключ названия, соответствующий ключу устройства и MKB). Здесь, ключ устройства, MKB, и кодированный ключ названия соответствуют друг другу, и, кроме того, соответствуют идентификатору (например, ИД тома), записанному в области, которая не может быть нормально скопирована на BD-ROM (область под названием BCA). Если эта комбинация не является корректной, код не может быть расшифрован. Только если комбинация корректна, ключ, необходимый для того, чтобы расшифровать код, например, декодированный ключ названия, полученный посредством декодирования кодированного ключа названия, на основании ключа устройства, MKB, и ключ тома может быть выявлен, и с использованием ключа, необходимого для кодирования, кодированные данные могут быть расшифрованы.
Когда вставленный BD-ROM воспроизводится в устройстве воспроизведения, кодированные данные не могут быть воспроизведены, если BD-ROM не включает в себя ключ устройства, который является парным с ключом названия или MKB (или соответствует ключу названия или MKB). Причина этого в том, что ключ, необходимый для расшифровывания кодированных данных (ключ названия), сам является закодированным при записи на BD-ROM (как кодированный ключ названия), и если комбинация этого MKB и ключа устройства не является корректной, ключ, необходимый для расшифровки кода, не может быть выявлен.
С другой стороны, устройство воспроизведения конфигурируется так, чтобы, если комбинация кодированного ключа названия, MKB, ключа устройства, и ИД тома является корректной, видео поток декодируется, например, с использованием ключа, необходимого для расшифровки кода (декодированный ключ названия, полученный посредством декодирования кодированного ключа названия, на основании ключа устройства, MKB, и ИД тома), и аудио поток декодируется аудио декодером.
Хотя вышеупомянутое описание принадлежит механизму защиты авторского права данных, хранящихся на BD-ROM, носитель записи не ограничен BD-ROM, и настоящее изобретение может быть реализовано, используя, например, считываемую/перезаписываемую полупроводниковую память (например, карточку с полупроводниковой памятью, имеющую энергонезависимое свойство, такую как карта SD).
Например, устройство воспроизведения может быть сконфигурировано записывать данные, соответствующие данным, записанным на BD-ROM, на карточке с памятью с использованием цифрового распределения, и воспроизводить данные с карточки с полупроводниковой памятью. При распределении необходимых данных с использованием цифрового распределения и записи распределенных данных, предпочтительно распределять данные посредством выполнения частичного или полного декодирования распределенных данных по мере необходимости, и оставлять данные, которые необходимы для карточки с полупроводниковой памятью в кодированном состоянии.
Ниже описана операция, использующая цифровое распределение для записи данных (распределенные данные), соответствующих данным, описанным в вышеупомянутых вариантах осуществления, в полупроводниковую память.
Операции, описанные выше, могут быть сконфигурированы для выполнения устройством воспроизведения, описанным в этих вариантах осуществления, или устройством терминала, предназначенным для записи распределенных данных в полупроводниковую память, которая является отдельной от устройства воспроизведения в вариантах осуществления. Здесь описан пример устройства воспроизведения, выполняющего эти операции. Кроме того, SD карта описана в качестве примера цели назначения записи.
При записи распределенных данных в SD карточку с памятью, вставленную в слот устройства воспроизведения, сначала запрашивается передача распределенных данных к серверу распределения (не изображен), который накапливает распределенные данные. Устройство воспроизведения считывает с SD карточки с памятью информацию для уникальной идентификации SD карточки с памятью, которая вставлена в устройство воспроизведения в это время (например, конкретный идентификационный номер, назначенный индивидуально на конкретную SD карточку с памятью, в частности, серийный номер SD-карточки с памятью и т.д.), и передает считанную информацию идентификации к серверу распределения наряду с запросом распределения.
Эта информация идентификации для уникальной идентификации SD карточки с памятью соответствует, например, вышеописанному ИД тома.
Между тем, в сервере распределения декодирование выполняется так, чтобы необходимые данные из данных, которые распределяются (видео потоки, аудио потоки и т.д.) могли быть декодированы с использованием ключа, который необходим для расшифровки кода (например, ключ названия), и эти необходимые данные хранятся в сервере.
Например, частный ключ хранится в сервере распределения, и сервер распределения сконфигурирован так, чтобы различные публичные ключи были созданы интерактивно, чтобы соответствовать соответственно идентификационным номерам, специфическим для карточки с полупроводниковой памятью.
Кроме того, сервер распределения сконфигурирован так, чтобы кодирование было возможно по направлению к ключу, который необходим для расшифровки самих кодированных данных (ключ названия) (другими словами, сконфигурирован так, чтобы кодированный ключ названия мог быть выдан).
Выданная информация публичного ключа включает в себя информацию, соответствующую вышеописанному MKB, ИД тома и кодированному ключу названия. Если комбинация, например, идентификационный номер, специфический для карточки с полупроводниковой памятью, фактический публичный ключ, включенный в публичную ключевую информацию, описанную ниже, и ключ устройства, записанный заранее в устройстве записи, является правильной, то ключ, необходимый для расшифровки кода (например, ключа названия, полученного декодированием кодированного ключа названия, на основании, например, ключа устройства, MKB, и идентификационного номера, специфического для карточки с полупроводниковой памятью), и с использованием этого полученного ключа (ключа названия), необходимого для расшифровки кода, может быть выполнено декодирование кодированных данных.
Затем устройство воспроизведения записывает принятую информацию публичного ключа и распределенные данные в области записи карточки с полупроводниковой памятью, вставленной в слот.
Ниже описан примерный способ для декодирования и воспроизведения кодированных данных, из числа данных, включенных в информацию публичного ключа, записанную в области записи карточки с полупроводниковой памятью, и данных, включенных в данные распределения.
Принятая информация публичного ключа является, например, записанной в список устройств, указывающей сам публичный ключ (например, MKB и кодированный ключ названия), информацией подписи, идентификационным номером, специфическим для карточки с полупроводниковой памятью, и информацией, относящейся к устройству, которое должно быть сделано недействительным.
Информация подписи включает в себя, например, хэш-значения информации публичного ключа.
В списке устройств записывается информация, относящаяся, например, к устройству, которое возможно выполняет неавторизованное воспроизведение. Ей является, например, ключ устройства, идентификационный номер устройства воспроизведения, или идентификационный номер декодера в устройстве воспроизведения, записанный заранее на устройстве воспроизведения, информация для уникального определения устройства, части, включенной в устройство, или функцией (программой) устройства, возможно выполняющего неавторизованное воспроизведение.
Нижеследующее описание относится к воспроизведению кодированных данных из числа данных распределения, записанных в области записи карточки с полупроводниковой памятью.
Сначала выполняется проверка, относящаяся к тому, можно ли самим кодированным ключом оперировать прежде, чем декодировать кодированные данные с использованием непосредственно публичного ключа.
В частности, выполняются следующие проверки:
(1) есть ли совпадение между информацией идентификации полупроводниковой памяти, включенной в информацию публичного ключа, и конкретным идентификационным номером, сохраненным заранее на карточке с полупроводниковой памятью,
(2) есть ли совпадение между хэш-значением информации публичного ключа, вычисленного в устройстве воспроизведения, и хэш-значением, включенным в информацию подписи, и
(3) выполняет ли, на основании информации, указанной в списке устройств, включенной в информацию публичного ключа, устройство воспроизведения, выполняющее воспроизведение, возможно неавторизованное воспроизведение (например, посредством проверки, соответствует ли ключ устройства, включенный в список устройств, ключу устройства, сохраненному в устройстве воспроизведения заранее). Эти проверки могут быть выполнены в любом порядке.
Управление выполняют так, что устройство воспроизведения не декодирует кодированные данные, если любое из следующего удовлетворено, в вышеописанных проверках 1-3: i) идентификационная информация, специфическая для полупроводниковой памяти, включенная в информацию публичного ключа, не соответствует конкретному идентификационному номеру, сохраненному заранее на карточке с полупроводниковой памятью, ii) хэш-значение информации публичного ключа, вычисленное в устройстве воспроизведения, не соответствует хэш-значению, включенному в информацию подписи, или iii), сделан вывод о том, что устройство воспроизведения, выполняющее воспроизведение, возможно выполняет неавторизованное воспроизведение.
Кроме того, делают вывод, что комбинация идентификационного номера, специфического для полупроводниковой памяти, публичного ключа, включенного в информацию публичного ключа, и ключа устройства, записанного заранее в устройстве воспроизведения, является правильной, если i) идентификационная информация, специфическая для карточки с полупроводниковой памятью, включенная в информацию публичного ключа, соответствует конкретному идентификационному номеру, сохраненному заранее на карточке с полупроводниковой памятью, (ii) хэш-значение информации публичного ключа, вычисленное в устройстве воспроизведения, соответствует хэш-значению, включенному в информацию подписи, и (iii), сделан вывод, что устройство воспроизведения возможно не выполняет неавторизованное воспроизведение. Когда сделан вывод, что эта комбинация правильна, кодированные данные дешифруют с использованием ключа, необходимого для декодирования кода (на основании ключа устройства, MKB и специфического для полупроводниковой памяти идентификационного номера).
Например, когда кодированные данные являются видео потоком и аудио потоком, видео декодер декодирует (декодирует) видео поток с использованием ключа, необходимого для расшифровки кода (ключа названия, полученного посредством декодирования кодированного ключа названия), и аудио декодер декодирует (декодирует) аудио поток с использованием ключа, необходимого для расшифровки кода.
Согласно этому типу структуры, для любого устройства воспроизведения, части, функции (программы) и т.д., которые возможно выполняют неавторизованное использование во время электронного распределения, информация для идентификации такового вводится в список устройств, и если распределение предпринято, так как декодирование воспроизведения с использованием информации публичного ключа (этого публичного ключа) может быть подавлено на стороне устройства воспроизведения, если включена информация, которая указана в списке устройств, даже если комбинация специфического для полупроводниковой памяти идентификационного номера, публичного ключа, включенного в информацию публичного ключа, и ключа устройства, записанного в устройстве воспроизведения заранее, правильна, так как управление может быть выполнено так, чтобы дешифрование кодированных данных не было выполнено, использование распределенных данных в отношении неавторизованного устройства может быть подавлено.
Кроме того, предпочтительно использовать структуру, в которой специфический для карточки с полупроводниковой памятью идентификатор, записанный заранее на карточке с полупроводниковой памятью, сохранен в высоко конфиденциальной области записи. Причина заключается в том, что когда конкретный номер, записанный на карточке с полупроводниковой памятью (например, в примере карточки с памятью SD, серийный номер карточки с памятью SD и т.д.), был изменен, незаконное копирование облегчается. Причина в том, что различные специфические идентификационные номера назначены различным карточкам с полупроводниковой памятью, но если эти специфические идентификационные номера изменены так, чтобы быть одинаковыми, вывод согласно (1) становится бессмысленным, и имеется возможность выполнения незаконного копирования, соответствующего номеру, который был изменен.
Соответственно, предпочтительно, чтобы информация, которая является специфическим для карточки с полупроводниковой памятью идентификационным номером, была записана в записывающей области высокой конфиденциальности.
Чтобы реализовать этот тип структуры, например, посредством обеспечения области записи (названной второй областью записи), которая является отдельной от области записи (названной первой областью записи), которая хранит нормальные данные, в качестве областей записи для записи данных высокой конфиденциальности, которые являются специфическими для карточки с полупроводниковой памятью идентификаторами), и обеспечения схемы управления для получения доступа к области записи, доступ ко второй области записи может быть сделан только через эту схему управления.
Например, данные, записанные во второй области записи, были закодированы и записаны. Например, схема для декодирования кодированных данных встроена в схему управления. Когда имеется доступ к данным во второй области записи через схему управления, структура должна быть просто такой, что код является декодирующим, и декодированные данные возвращаются. Кроме того, если схема управления хранит информацию местоположения хранения данных, записанных во второй области записи, и есть запрос доступа к данным, то соответствующее местоположение хранения данных должно быть просто задано, и данные, считанные из этого заданного местоположения хранения, могут быть возвращены.
После выдачи запроса доступа к данным, записанным во второй области записи, к схеме управления через интерфейс карточки с памятью (например, специфическому для полупроводниковой памяти идентификационному номеру), приложения, которые работают в устройстве воспроизведения, которые запрашивают запись в карточку с полупроводниковой памятью с использованием цифрового распределения, схема управления, которая приняла запрос, считывает данные, записанные во второй области записи, и возвращает эти данные приложению, работающему в устройстве воспроизведения. Наряду со специфическим для карточки с полупроводниковой памятью идентификационным номером, запрос распределения необходимых данных должен быть запрошен только от сервера распределения, и информация публичного ключа, посланная от сервера распределения и соответствующая запросу распределения данных, может быть записана в первую область записи.
Кроме того, приложение, работающее в устройстве воспроизведения, которое запрашивает запись на карточку с полупроводниковой памятью с использованием цифрового распределения, прежде, чем выдать запрос к схеме управления через интерфейс карточки с памятью, чтобы получить доступ к данным, записанным во второй области записи (например, специфическим для карточки с полупроводниковой памятью идентификационным номерам), предпочтительно проверяет заранее, было ли приложение изменено. Например, цифровой сертификат, совместимый с ранее существовавшими спецификациями X.509, может использоваться при проверке на изменение.
Кроме того, доступ к данным распределения, записанным в первой области записи карточки с полупроводниковой памятью, не обязательно должен быть доступом через схему управления на карточке с полупроводниковой памятью.
Реализация в качестве программы
Прикладная программа, описанная в вариантах осуществления, может быть сделана, как описано ниже. Сначала разработчик программного обеспечения с использованием языка программирования записывает исходную программу, чтобы реализовать содержание блок-схем и функциональных структурных элементов. При записи исходной программы, которая воплощает содержание блок-схем и функциональных структурных элементов, разработчик программного обеспечения использует структуры классов, переменные, переменные массивов и вызовы внешних функций, чтобы записать программу в соответствии с синтаксисом языка программирования.
Записанные исходные программы выдаются в качестве файлов компилятору. Компилятор транслирует исходные программы и создает объектную программу.
Трансляция компилятором состоит из процессов анализа синтаксиса, оптимизации, распределения ресурсов и генерации кода. Анализ синтаксиса включает в себя лексический анализ и семантический анализ исходных программ и преобразование исходных программ в промежуточную программу. Оптимизация включает в себя операции для разделения промежуточной программы на основные блоки, анализ потока управления промежуточной программы, и анализ потока данных промежуточной программы. При распределении ресурсов, чтобы повысить соответствие с набором команд целевого процессора, переменные в промежуточной программе распределяются на регистр или память в целевом процессоре. Генерация кода выполняется посредством преобразования промежуточных команд в промежуточной программе в программный код и получения объектной программы.
Объектная программа, сгенерированная здесь, состоит из одного или более программных кодов для выполнения на компьютере этапов блок-схем и различных процессов, выполняемых функциональными структурными элементами в вариантах осуществления. Здесь, программный код может быть любым из различных типов, таких как «родной» (собственный) код процессора или байт-код Java. Существуют различные форматы для реализации этапов посредством программного кода. Если возможно использовать внешние функции, чтобы реализовать этапы, операторы вызова, которые вызывают такие функции, становятся программным кодом. Кроме того, имеются случаи, в которых программный код для реализации одного этапа, снабжается атрибутами, чтобы отделить объектные программы. В RISC процессоре, в котором типы команд ограничены, этапы блок-схем могут быть реализованы, комбинируя команды операции вычисления, логические команды вычисления, команды инструкций перехода и т.д.
Когда объектные программы созданы, программист запускает редактор связей. Редактор связей распределяет объектные программы и библиотечные программы в ячейки памяти, комбинирует объектные программы и библиотечные программы в один (блок) и выдает в загрузочный модуль. Ожидается, что загрузочный модуль, сгенерированный таким образом, должен быть считан компьютером, и вынуждает компьютер выполнять процедуры обработки и функциональные структурные компоненты, показанные в блок-схемах. Программы могут быть предоставлены пользователям, будучи записанными на носителе записи, который является считываемым компьютером.
Отдельная реализация БИС
БИС (большая интегральная схема, LSI) системы получают посредством реализации бескорпусного кристалла на высокоплотной подложке и монтажа кристалла в корпус. БИС системы также получают посредством реализации множества бескорпусных кристаллов на высокоплотной подложке и монтажа кристалла в корпус так, чтобы множество бескорпусных кристаллов внешне выглядели как одна БИС (такую систему БИС называют многокристальным модулем).
БИС системы имеет QFP (плоский корпус с четырехсторонним расположением выводов) тип и PGA (корпус с матричным расположением штырьковых выводов) тип. В системе QFP-типа БИС выводы присоединены к четырем сторонам корпуса. В системе PGA-типа БИС много выводов присоединены ко всему основанию.
Эти выводы функционируют как интерфейс с другими схемами. БИС системы, которая соединена с другими схемами посредством таких выводов в качестве интерфейса, играет роль ядра устройства 200 воспроизведения.
Такая БИС системы может быть внедрена в различные типы устройств, которые могут воспроизводить изображения, например, в телевизор, игровой автомат, персональный компьютер, односегментный мобильный телефон, а также в устройство 200 воспроизведения. БИС системы, таким образом, значительно расширяет использование настоящего изобретения.
Как показано в вышеупомянутом варианте осуществления, когда буфер, видео декодер, аудио декодер и графический декодер объединены в БИС системы, желательно, чтобы БИС системы соответствовала архитектуре (микросхем) Uniphier.
БИС системы, соответствующая архитектуре Uniphier, включает в себя следующие схемные блоки.
- Процессор параллельных данных (DPP)
DPP является процессором SIMD-типа, где множество элементных процессоров выполняют одну и ту же операцию. DPP достигает параллельного декодирования множества пикселей, составляющих картинку, вынуждая операционные блоки, соответственно внедренные в элементные процессоры, работать одновременно посредством одной инструкции.
- Процессор параллельных инструкций (IPP)
IPP включает в себя: локальный контроллер памяти, который состоит из RAM инструкции, кэша инструкций, RAM данных, и кэша данных; блока обработки, который состоит из блока упреждающего выбора инструкций, декодера, блока выполнения и банка регистров; и виртуального многопроцессорного блока, который вынуждает блок обработки выполнять параллельное выполнение множества приложений.
- Блок MPU
Блок MPU состоит из: периферийных схем, такие как базовые блоки ARM, внешний шинный интерфейс (Блок управления шиной: BCU), контроллера DMA, таймера, контроллера векторов прерывания; и периферийных интерфейсов, таких как UART, GPIO (ввода вывода общего назначения), и синхронного последовательного интерфейса.
- Блок ввода/вывода потока
Блок ввода/вывода потока выполняет ввод/вывод данных с устройством накопителя, устройством жесткого диска, и устройством управления карточки с памятью SD, которые подключены к внешним шинам через интерфейс USB и интерфейс пакетной передачи ATA.
- Блок ввода/вывода аудио-видео
Блок ввода/вывода аудио-видео (AV), который состоит из ввода/вывода аудио, ввода/вывода видео и контроллера OSD, выполняет ввод/вывод данных с телевизором и AV усилителем.
- Блок управления памятью
Блок управления памятью выполняет считывание и запись из/на SD-RAM, подсоединенную к нему через внешние шины. Блок управления памятью состоит из блока соединения с внутренней шиной, чтобы управлять внутренним соединением между блоками, блока управления доступом для передачи данных с SD-RAM, подсоединенным снаружи к БИС системы, и блока планирования доступа для регулирования запросов от этих блоков, чтобы получить доступ к SD-RAM.
Ниже описана подробная процедура продукта. Сначала изображена схемная диаграмма части, которая является БИС системы, на основании чертежей, которые показывают структуры из вариантов осуществления. Затем составляющие элементы целевой структуры реализуются, используя схемные элементы, ИС или БИС.
Когда составляющие элементы реализованы, определяют шины, включенные между схемными элементами, ИС или БИС, периферийные схемы, интерфейсы с внешними объектами и т.п.. Далее определяют линии соединения, линии электропитания, линии заземления, сигналы синхронизации и т.п.. Для этих определений моменты времени операций составляющих элементов регулируются, учитывая спецификации БИС, и обеспечивают пропускные способности, необходимые для составляющих элементов. Вместе с другими необходимыми настройками схемная диаграмма завершается.
После того, как схемная диаграмма завершена, выполняется конструктивная реализация. Конструктивная реализация является работой для создания размещения на плате посредством определения, как разместить части (схемные элементы, ИС, БИС) схем и линии связи на печатной плате.
После того, как конструктивная реализация выполнена, и размещение на печатной плате создано, результаты конструктивной реализации преобразуют в данные CAM, и данные CAM выдают на оборудование, такое как станок с ЧПУ (числовым программным управлением). Станок с ЧПУ выполняет реализацию SoC или реализацию SiP. Реализация SoC (Система на кристалле) является технологией для расположения множества схем на кристалле. Реализация SiP (Система в корпусе) является технологией для упаковывания множества схем с помощью полимера смолой или подобным. С помощью этих процессов БИС системы согласно настоящему изобретению может быть произведена на основании внутренней структуры устройства 200 воспроизведения, описанного в каждом варианте осуществления выше.
Нужно отметить здесь, что интегральную схему, произведенную как описано выше, можно назвать ИС, БИС, ультраБИС, сверхБИС или подобным образом, в зависимости от уровня интеграции.
Также возможно получить БИС системы посредством использования FPGA (Программируемая пользователем вентильная матрица). В этом случае множество логических элементов должны быть расположены подобно решетке, и вертикальные и горизонтальные проводники соединяют на основании комбинаций ввода/вывода, описанных в LUT (Таблица поиска), так, чтобы структура аппаратных средств, описанная в каждом варианте осуществления, могла быть реализована. LUT хранится в SRAM. Так как содержимое SRAM стирается, когда питание отключается, при использовании FPGA необходимо определить информацию конфигурации (Config), чтобы записать LUT на SRAM для реализации структуры аппаратных средств, описанную в каждом варианте осуществления.
В варианте осуществления изобретение реализуется посредством промежуточного программного обеспечения и аппаратными средствами, соответствующими БИС системы, аппаратными средствами, помимо БИС системы, интерфейсной частью, соответствующей промежуточному программному обеспечению, интерфейсной частью для взаимодействия между промежуточным программным обеспечением и БИС системы, интерфейсной частью для взаимодействия между промежуточным программным обеспечением и необходимыми аппаратными средствами, помимо БИС системы, и частью пользовательского интерфейса, и при объединении этих элементов, чтобы сформировать устройство воспроизведения, обеспечиваются конкретные функции, управляющие соответствующими элементами в тандеме.
Соответственно, задание интерфейса, соответствующего промежуточному программному обеспечению, и интерфейса для промежуточного программного обеспечения и БИС системы допускает параллельное, независимое развитие пользовательской части интерфейса, части промежуточного программного обеспечения и части БИС системы устройства воспроизведения соответственно, и допускает более эффективное развитие. Следует заметить, что имеются различные способы разделить соответствующие части интерфейса. Например, когда видео декодер, графический декодер, аудио декодер и сумматор (составной блок) изготовлены на единственном кристалле, разработка интерфейсной части между промежуточным программным обеспечением для управления этими блоками и промежуточным программным обеспечением, соответствующим этим блокам, выполняется посредством разработки кристалла. После завершения, включение разработанного промежуточного программного обеспечения и интерфейсной части в блоке хранения, таком как память устройства воспроизведения, наряду с интегрированием кристалла в устройство воспроизведения, позволяет выполнить разработку устройства воспроизведения и кристалла параллельно, таким образом, улучшая эффективность разработки.
Разносторонность улучшается, когда одна и та же интерфейсная часть используется независимо от типа разработанного кристалла и промежуточного программного обеспечения, соответствующего разработанному кристаллу.
Разумеется, часть, структурированная как БИС системы в вышеупомянутом описании, не ограничивается структурированием как БИС, и может вместо этого формироваться с использованием схем обработки сигнала, которая включает в себя функции, соответствующие тем, которые включены в БИС системы.
Носитель записи
Ниже описан способ создания носителя записи, другими словами, режима использования способа записи для носителя записи, на котором записаны заранее определенные данные.
Способы записи, относящиеся к вышеупомянутому варианту осуществления, включают в себя не только запись в реальном времени, с которой AV клипы и другие данные созданы в режиме реального времени и записаны непосредственно в область на носителе записи, но также и способ, которым оптические диски выпускаются массово, посредством создания всего изображения битового потока, который должен быть записан в области объема заранее, создания мастер-диска на основании этого битового потока, и тиражирования этого диска, а именно, запись пред-формата. Носитель записи, относящийся к вышеупомянутому варианту осуществления, может также быть определен или способом записи в реальном времени, или способом записи посредством записи пред-формата.
Эти способы записи включают в себя следующие этапы: импорт материалов данных, такие как видео, аудио, субтитры и меню; получение PES потока посредством цифрового преобразования и сжатия, кодирование импортированных материалов данных и кодирование согласно MPEG; получение AV клипа посредством мультиплексирования потока PES; создание AV файлов и не-AV файлов в совместимом с BD-ROM формате файла посредством ввода Java (ТМ) программы и AV файлов, полученных на этапе мультиплексирования, записи не-AV файлов на носитель записи и записи AV файлов на носитель записи.
Расположение экстентов в области тома
Как описано выше, когда заранее определенные данные сохраняют в файле и записывают на носитель записи, заранее определенные данные обрабатывают в форме "экстентов" в файловой системе. В носителе записи адресами таких экстентов управляют следующим образом.
Экстенты формируют во множестве физически непрерывных секторов в местах разделения в области тома (объема). Места разделения относятся к областям, которые структурированы из "областей, в которых записаны дескрипторы набора файлов", "областей, в которых записаны дескрипторы терминала", "областей корневого (ROOT) каталога", "областей каталога BDMV", "областей каталога JAR", "областей каталога BDJO", "областей каталога PlayList", "областей каталога CLIPINF", и "областей каталога STREAM", и областей, к которым получает доступ файловая система. Ниже описаны эти области.
"Дескрипторы набора файлов" включают в себя номера логических блоков (LBN), указывающие, какой сектор, из областей в каталоге, имеет запись файла каталога ROOT, записанного в нем. "Дескрипторы терминала" указывают терминальный символ дескриптора набора файлов.
Ниже описаны подробности областей каталогов. Множество областей каталогов, как описано выше, все имеют общую структуру. То есть "область каталога" состоит из "записи файла", "файла каталога" и "области записи файла для файлов более низкого ранга".
"Запись файла" включает в себя "тэг дескриптора", "тэг ICB" и "дескриптор распределения".
«Тэг дескриптора» является тэгом, указывающим, что эта запись файла является записью файла.
«Тэг ICB» указывает информацию атрибута, относящуюся к записи файла.
"Дескриптор распределения" включает в себя номер логического блока (LBN), указывающий позицию записи файлов каталога. Это завершает описание записей файла. Ниже описаны подробности файлов каталога.
"Файлы каталога" включают в себя "дескриптор идентификации файла для каталога более низкого ранга" и "дескрипторы идентификации файла для файлов более низкого ранга".
"Дескриптор идентификации файла для каталога более низкого ранга" является информацией ссылки для получения доступа к каталогу файлов более низкого ранга, который находится под записью файла, и включает в себя идентификационную информацию, которая указывает этот каталог более низкого ранга, длину имени каталога для каталога более низкого ранга, адрес записи файла, который указывает, в каком номере логического блока находится записанная запись файла каталога более низкого ранга, и имя каталога этого каталога более низкого ранга.
"Дескриптор идентификации файла для файлов более низкого ранга" является информацией ссылки для получения доступа к файлу более низкого ранга, который находится под записью файла, и включает в себя идентификационную информацию, указывающую файл более низкого ранга, длину имени файла более низкого ранга, адрес записи файла, указывающий, какой номер логического блока хранит запись файла для файла более низкого ранга, и имя файла для файла более низкого ранга.
Так как дескрипторы идентификации файла в файлах каталога этих каталогов указывают, в каком логическом блоке сохранены каталоги более низкого ранга и записи файла файлов более низкого ранга, отслеживание назад этих дескрипторов идентификации файла позволяет достичь записи файла каталога BDMV из записи файла каталога ROOT, и достичь записи файла каталога PlayList из записи файла каталога BDMV. Записи файла каталога JAR, каталога BDJO, каталога CLIPINF, и каталога STREAM могут быть достигнуты таким же образом.
"Область записи файлов для файлов более низкого ранга" является областью, в которой сохранено содержимое файла более низкого ранга под заранее определенным каталогом. "Запись файла" и один или более "экстентов" сохранены в "области записи файлов для файлов более низкого ранга".
"Запись файла" включает в себя "тэг дескриптора", "тэг ICB", и "дескриптор распределения".
"Тэг дескриптора" является тэгом, указывающим, что эта запись файла является записью файла. Есть типы тэгов, такие как дескрипторы записи файла, дескрипторы битовой карты области и т.д., и в случае записей файла "261" записывают как тэг дескриптора для указания записи файла.
"Тэг ICB" указывает информацию атрибута, относящуюся к записи файла.
"Дескриптор распределения" включает в себя номер логического блока (LBN), указывающий позицию записи экстентов, составляющих файлы более низкого ранга, под определенным каталогом. Дескриптор распределения включает в себя данные, указывающие длину экстента и номер логического блока, указывающий положение записи экстента. Однако, установка старших 2 битов данных, указывающих длину экстента, в "0", указывает экстент, для которого распределение и запись закончились, и установка старших 2 битов данных в "1" указывает экстент, для которого распределение закончилось, но запись не закончилась. Установка в "0" указывает, что этот экстент является продолжающимся экстентом идентификатора распределения. Когда файл более низкого ранга под определенным каталогом разделен на множество экстентов, запись файла имеет множество дескрипторов распределения для каждого экстента.
Обращение к дескриптору распределения записи файла, как описано выше, позволяет узнать адрес экстентов, которые составляют информационные файлы Списка воспроизведения, информационные файлы клипов, файлы AV клипа, файлы BD-J объекта, и файлы архива JAR.
Файлы, которые хранят потоки, данные, и флаги, на которых сосредоточена настоящая заявка, относятся к областям записи файлов, существующих в области каталога каталогов, к которым эти файлы принадлежат, и к ним может быть получен доступ, отслеживая назад дескрипторы идентификации файла в файлах файлов каталога, и идентификаторы распределения в записях файла.
Открытие файла
Ниже описана обработка при считывании файлов на носителе записи в устройство.
Так как AV потоки, Index.bdmv, файлы JAR, и BD-J объекты, которые описаны выше, записаны на BD-ROM в соответствии со структурой файлов и структурой каталога, устройство воспроизведения может считать их в память, выполняя системный вызов для открытия файла.
Открытие файла относится к поиску каталогов по имени файла, заданному во время системного вызова, и если файл существует, резервированию FCB (блока управления файлом), и выполнения обработки для возврата дескриптора файла.
Приложение для записи в реальном времени
Предпосылкой предыдущего описания является то, что в технологии предварительной записи в авторской системе AV клипы и информация Списка воспроизведения записываются на BD-ROM и предоставляются пользователю. Однако, при записи в режиме реального времени AV клипы и информация Списка воспроизведения могут быть записаны на BD-RE, BD-R, жесткий диск, или карточку с полупроводниковой памятью, и предоставлены пользователю.
В этом случае AV клипы могут быть транспортными потоками, полученными посредством кодирования в реальном времени, выполненном устройством записи в отношении аналогового входного сигнала, или могут быть транспортным потоком, полученным посредством разделения на части транспортного потока, который вошел в устройство записи в цифровой форме.
Устройство записи, которое выполняет запись в реальном времени, включает в себя видео кодер, который получает видео поток посредством кодирования видео сигнала, кодер аудио, который получает аудио поток посредством кодирования аудио сигнала, мультиплексор, который получает цифровой поток формата MPEG 2-TS посредством мультиплексирования видео потоков, аудио потоков и т.д., и блок пакетирования источника, который преобразует TS-пакеты, которые составляют цифровой поток формата MPEG2-TS, в исходные пакеты, и сохраняет цифровые потоки MPEG2, которые были преобразованы в формат исходного пакета, в файлах AV клипа, и записывает сохраненные цифровые потоки на BD-RE, BD-R и т.д.
Блок управления устройства записи записывает цифровые потоки, а также выполняет обработку, чтобы сформировать информацию клипа и информацию Списка воспроизведения в памяти. В частности, когда обработка записи запрашивается пользователем, блок управления создает файлы AV клипа и информационные файлы клипа на BD-RE и BD-R.
Если положение начала GOP в аудио потоке обнаружено из транспортного потока, введенного из внешнего устройства, или GOP видео потока сформирована кодером, блок управления устройства записи получает PTS внутренней картинки, расположенной в начале этой GOP, и номер пакета исходного пакета, который хранит начальную часть этой GOP, и добавляет карту входов файла информации клипа посредством объединения в пару этого PTS и номера пакета, и записи EP_PTS с записью EP_SPN. Затем, каждый раз, когда формируется GOP, комбинация записи EP_PTS и записи EP_SPN добавляется к карте входов файла информации клипа. В это время, когда началом GOP является картинка IDR, флаг is_angle_change, установленный в "on", добавляется к паре записи EP_PTS и записи EP_SPN. Когда началом GOP не является картинка IDR, флаг "is_angle_change", установленный в "off", добавляется к паре записи EP_PTS и записи EP_SPN.
Кроме того, информация атрибута потока в файле информации клипа устанавливается согласно атрибуту потока, подлежащего записи. Таким образом, AV клипы и информация клипа формируются и записываются на BD-RE или BD-R, и с помощью карты входов в информации клипа, информация Списка воспроизведения, определяющая канал воспроизведения, генерируется и записывается в BD-RE или BD-R. Выполнение этого типа обработки в технологии записи в режиме реального времени позволяет получить иерархическую структуру, такую как AV клипы - информация клипа - информация Списка воспроизведения.
Реализация в качестве устройства воспроизведения, реализующего управляемое копирование
Устройство воспроизведения, описанное в вариантах осуществления, может иметь функцию записи цифровых потоков посредством управляемого копирования.
Управляемое копирование - это технология для выполнения связи с сервером и позволяющая выполнить копирование только в состоянии, в котором была выполнена авторизация и принято разрешение, при копировании цифровых потоков, информации Списка воспроизведения, информации клипа, и прикладных программ, записанных на носителе записи только для считывания, таком как BD-ROM, и т.д., на считываемый/перезаписываемый носитель записи, такие как другой оптический диск (BD-R, BD-RE, DVD-R, DVD-RW, RAM DVD и т.д.), жесткий диск, сменный носитель (карточка с памятью SD, память типа Memory Stick, компактную флэш память, smart media, мультимедийную карточку и т.д.). Согласно этой технологии возможно выполнить управление, такое как ограничение количества раз для выполнения резервного копирования, разрешение резервного копирования только в состоянии, в котором было выполнено составление счетов и т.д.
При реализации копирования с BD-ROM на BD-R или BD-RE, когда объем записи одинаков между источником копии и назначением копирования в управляемом копировании, достаточно выполнить операцию последовательного копирования, от самой внутренней окружности до наиболее внешней окружности, битовых потоков в BD-ROM, который является источником копии.
Транскодирование необходимо, если ожидается копирование между различными типами носителей. Здесь, "транскодирование" относится к обработке, посредством которой цифровой поток делается совместимым с форматом приложения среды назначения копирования, посредством преобразования формата цифрового потока, записанного на BD-ROM, из формата транспортного потока MPEG2 в формат потока программы MPEG2, или понижения скорости передачи в битах, назначенной видео потоку и аудио потоку, и повторного кодирования потока. Необходимо захватить AV клипы, информацию клипа и информацию Списка воспроизведения посредством выполнения вышеописанной технологии обработки записи в реальном времени для соответствующего транскода.
Устройство воспроизведения, использующее услугу изготовления по требованию или услугу электронной продажи в распоряжение покупателя (MODEST)
Когда устройство 200 воспроизведения поддерживает функцию услуги изготовления по требованию или услугу электронной продажи в распоряжение покупателя (MODEST), BD-J объект записывается следующим образом. Когда устройство 200 воспроизведения принимает BD-J объект, поставляемый с помощью услуги изготовления по требованию или услуги электронной продажи в распоряжение покупателя, каталог по умолчанию и каталог MODEST создаются ниже корневого каталога сменного носителя, и каталог BDMV создается ниже каталога MODEST. Каталог MODEST является первым каталогом MODEST, который является каталогом MODEST, который создается, когда эта услуга принята впервые. Во время приема услуги во второй раз блок управления устройства 200 воспроизведения создает другой каталог MODEST, соответствующий каждой услуге.
Как описано выше, после получения BD-J объекта, в котором записана таблица управления GUI, этот блок управления записывает программу запуска в каталог по умолчанию, и записывает этот BD-J объект в каталог BDMV ниже каталога MODEST. Эта программа запуска является первой программой, которая должна быть выполнена, когда носитель записи загружается в устройство 200 записи. Программа запуска вынуждает устройство 200 воспроизведения показывать меню, позволяющее пользователю выполнить операцию для выбора каталога BDMV. В ответ на такую пользовательскую операцию устройство 102 воспроизведения выполняет функцию изменения корня. В ответ на пользовательскую операцию, сделанную в меню, функция изменения корня вынуждает устройство воспроизведения распознавать в качестве каталога корня каталог MODEST, которому принадлежит выбранный каталог BDMV. Функция изменения корня позволяет выполнить управление воспроизведением в соответствии с той же процедурой управления, как воспроизведение BD-ROM, на основании полученного BD-J объекта.
Способ записи структуры данных
Среди структур данных в этих вариантах осуществления повторение структур, в которых множество информационных частей, имеющих специфическую определенную форму, может быть определено посредством установки начального значения параметра управления и условия повторения в операторе "for".
Кроме того, условие, которое должно быть удовлетворено, и параметр, который должен быть установлен, когда условие удовлетворено, могут быть записаны, используя оператор "if", который является произвольной структурой данных, которая определяет заданную информацию, когда заранее определенное условие удовлетворено. Таким образом, так как структура данных, описанная в этом варианте осуществления, может быть записана, используя грамматику языка программирования высокого уровня, структура данных, описанная в вариантах осуществления, проходит через процесс трансляции компилятором, причем этот процесс включает в себя анализ синтаксиса, оптимизацию, распределение ресурсов, и генерацию кода, и записывается на носитель записи в состоянии, преобразованном в считываемый компьютером компьютерный код, аналогично вышеописанной программе. Таким образом, структуру данных, записанную в языке программирования высокого уровня, рассматривают как поле типа массива в структуре классов, и формируют часть программы. Другими словами, так как данные преобразованы в компьютерный код и записаны на носителе записи, и становятся полем программы, эта структура данных в вариантах осуществления является по существу тем же самым, как эта программа, и может быть защищена как относящееся к компьютеру изобретение.
Расположение информации списка воспроизведения и информации клипа в программе
Чтобы быть загруженной с носителя записи в память и выданной для выполнения компьютером, программа, форматированная для выполнения воспроизведение AV, на основании информации Списка воспроизведения, включает в себя множество секций в памяти, а именно секцию текста, секцию данных, секцию bss и секцию стека.
Секция текста состоит из данных, которые не включают в себя последовательности программных кодов, начальные значения, или реконфигурации.
Секция данных включает в себя начальные значения и компоновку данных, которые могут быть реконфигурированы во время выполнения. Данные, которые сохранены в файлах и к которым получают доступ при необходимости, хранятся в секции данных носителя записи.
Секция bss включает в себя компоновку (организацию) данных, включающую в себя начальные значения. Так как секция текста обращается к данным секции bss посредством задания адреса, должна быть зарезервирована область для секции bss в RAM, определенной во время компилирования и редактирования связей.
Секция стека - это область, временно выделяемая программе по мере необходимости. Локальные параметры, которые должны использоваться временно для реализации обработки блок-схемы, сохранены здесь.
Начальные значения устанавливаются в секции bss при инициализации программы, и необходимые области резервируются в секции стека при инициализации программы.
Так как информация Списка воспроизведения и информация клипа преобразуются в компьютерный код, как описано выше, и записываются на носитель записи, при выполнении программы такой информацией управляют как "данные, которые не конфигурируются" в секции текста, или "данные, хранимые в файлах и доступные по мере необходимости" в секции данных. Информация Списка воспроизведения и информация клипа, описанные в вариантах осуществления, должны быть составляющими элементами программы во время выполнения этой программы и не должны квалифицироваться как простое представление данных.
Настоящее изобретение может быть любой комбинацией вариантов осуществления и дополнительных замечаний.
ПРОМЫШЛЕННАЯ ПРИМЕНИМОСТЬ
Настоящее изобретение может быть применено к носителю записи, на котором записано содержание 3D видео, и особенно эффективно в случае реализации стереоскопического вида 3D персонажа посредством потока PG левого вида и правого вида.
СПИСОК ССЫЛОЧНЫХ ПОЗИЦИЙ
100 BD-ROM
200 устройство воспроизведения
300 Телевизор
400 Жидкокристаллические дисплейные очки с затвором
500 Блок дистанционного управления
201 BD- накопитель
202 Интерфейс HDMI
203 Набор регистров состояния/установки воспроизведения
204 Энергонезависимая память
205 Память статического сценария
206 Подсистема управления воспроизведением
207 Память неупорядоченного массива
208 BD-J платформа
209 Память динамического сценария
210 Модуль управления режимом
211 Интерпретатор команд
212 Модуль обнаружения UO
1 Блок воспроизведения
2 Буфер считывания
3 Фильтр PID
4a, 4b, 4c, 4d, 4e Транспортный Буфер
4f Периферийная схема
5a Видео декодер для левого вида
5b Видео декодер для правого вида
6a Видео плоскость (L)
6b Видео плоскость (R)
7 Переключатель
8a Графический декодер для левого вида
8b Графический декодер для правого вида
9a Графическая плоскость для левого вида
9b Графическая плоскость для правого вида
10a Блок CLUT для L
10b Блок CLUT для R
11a Блок смещения для L
11b Блок смещения для R
12 переключатель выходного сигнала CLUT
13 Сумматор
14 Декодер аудио
Предложены носитель записи, на котором записано 3D видео (стереоизображение), устройство воспроизведения и большая интегральная схема (БИС). Носитель содержит потоки наборов отображения графики левого и правого видов. Каждый набор отображения является группой данных, используемой для отображения графических объектов. Наборы отображения находятся в соответствии один к одному с одним или более наборами отображения, включенными в поток графики другого вида. Соответствующие друг другу наборы отображения имеют идентичное время воспроизведения на временной оси. Каждый набор отображения включает в себя информацию состояния, указывающую, что набор отображения является одним из (i) всех данных, необходимых для отображения одной экранной особенности одного или более графических объектов, и (ii) разности из непосредственно предшествующего набора отображения. Идентичный контент указан информацией состояния, включенной в наборы отображения, которые соответствуют друг другу, в потоках графики левого и правого видов. Техническим результатом является обеспечение стереоскопического вида графики во время произвольного доступа к данным. 3 н. и 9 з.п. ф-лы, 48 ил.
1. Носитель записи, на котором записан видеопоток, поток графики левого вида и поток графики правого вида, в котором
поток графики левого вида и поток графики правого вида каждый включает в себя один или более наборов отображения,
каждый набор отображения является группой данных, используемой для отображения одной экранной особенности одного или более графических объектов,
упомянутые один или более наборов отображения, включенные в поток графики левого вида, находятся в соответствии один к одному с одним или более наборами отображения, включенными в поток графики правого вида, и идентичное время воспроизведения для потока видео на временной оси воспроизведения установлено в наборах отображения, которые соответствуют друг другу,
каждый набор отображения включает в себя информацию состояния, указывающую, что набор отображения является одним из (i) всех данных, необходимых для отображения одной экранной особенности одного или более графических объектов, и (ii) разности из непосредственно предшествующего набора отображения, и
идентичный контент указан информацией состояния, включенной в наборы отображения, которые соответствуют друг другу, в потоке графики левого вида и потоке графики правого вида.
2. Носитель записи по п.1, в котором каждый набор отображения включает в себя множество сегментов функции, это множество сегментов функции включает в себя сегмент композиции представления и один или более сегментов определения объекта,
графические объекты определены сегментами определения объекта,
сегмент композиции представления является функциональным сегментом, который задает структуру экранного отображения с использованием графических объектов, и
информация состояния включена в сегмент композиции представления.
3. Носитель записи по п.2, в котором
каждый сегмент композиции представления включает в себя номер структуры экранного отображения,
номер структуры экранного отображения указывает, какому набору отображения номера принадлежит сегмент композиции представления, и
идентичный номер структуры экранного отображения установлен в сегментах композиции представления, включенных в наборы отображения, которые соответствуют друг другу в потоке графики левого вида и потоке графики правого вида.
4. Носитель записи по п.2, в котором
каждый сегмент композиции представления включает в себя флаг принудительного отображения,
флаг принудительного отображения является флагом, который определяет, заставить ли устройство воспроизведения принудительно показывать графические объекты в наборе отображения, которому принадлежит сегмент композиции представления, и
идентичный контент указан флагами принудительного отображения в сегментах композиции представления, включенных в наборы отображения, которые соответствуют друг другу в потоке графики левого вида и потоке графики правого вида.
5. Носитель записи по п.2, в котором
поток графики левого вида и поток графики правого вида являются пакетизированными элементарными потоками (PES),
сегмент композиции представления сохранен в одном или более пакетов PES,
время воспроизведения добавляется к пакету PES, который хранит сегмент композиции представления, и
время воспроизведения указывает, в какое время выполнять отображение графических объектов в наборе отображения, которому принадлежит сегмент композиции представления.
6. Носитель записи по п.2, в котором
каждый из сегментов определения объекта определяет графический объект с использованием значения кода и длиной последовательности значения кода,
поток графики левого вида и поток графики правого вида каждый включает в себя сегмент определения палитры,
сегмент определения палитры включает в себя данные палитры, указывающие отношение соответствия с яркостью и цветовой разностью для каждого значения кода, и
данные палитры, указывающие отношения соответствия между яркостью и цветовой разностью для каждого значения кода, установлены равными идентичным значениям в сегментах определения палитры, включенных в наборы отображения, которые соответствуют друг другу в потоке графики левого вида и потоке графики правого вида.
7. Носитель записи по п.2, в котором
сегмент композиции представления является сегментом интерактивного управления,
сегмент интерактивного управления включает в себя одну или более частей информации страницы,
одна или более частей информации страницы задают структуру экранного отображения многостраничного меню, каждая часть информации страницы включает в себя одну или более частей информации кнопки, и каждая часть информации кнопки является информацией для отображения графических объектов как одного состояния элемента кнопки и реализует интерактивную структуру экранного отображения на странице, составляющей многостраничное меню,
одинаковое количество страниц включено в наборы отображения, которые соответствуют друг другу в потоке графики левого вида и потоке графики правого вида, и
одинаковое количество кнопок включено в соответствующие страницы.
8. Носитель записи по п.7, в котором
соответствующие кнопки, включенные в соответствующие страницы, имеют идентичные опорные ИД объектов.
9. Носитель записи по п.7, в котором
каждый сегмент композиции представления включает в себя временную отметку выбора, продолжительность пользовательского перерыва и информацию перерыва в композиции,
временная отметка выбора указывает время перерыва, после которого элемент кнопки текущей страницы автоматически активизируется, таким образом, заставляя устройство воспроизведения выполнить команду, включенную в элемент кнопки,
продолжительность пользовательского перерыва указывает длительность перерыва, после которого обозначение текущей страницы возвращается к первой странице, таким образом, вызывая состояние, в котором только первая страница показывается,
информация перерыва в композиции указывает время для завершения интерактивного отображения экрана посредством сегмента композиции представления, и
временная отметка выбора, продолжительность пользовательского перерыва и информация перерыва в композиции указывают идентичный контент в сегментах композиции представления, включенных в наборы отображения, которые соответствуют друг другу в потоке графики левого вида и потоке графики правого вида.
10. Носитель записи по п.2, в котором
каждый сегмент композиции представления включает в себя соседнюю информацию кнопки,
соседняя информация кнопки определяет, когда заранее определенная кнопка находится в выбранном состоянии, и операция над клавишей была выполнена, указывая одно из направлений - вверх, вниз, влево или вправо, причем кнопка должна быть в выбранном следующем состоянии, и
соседняя информация кнопки в сегментах композиции представления, включенных в наборы отображения в соответствующем потоке графики левого вида и потоке графики правого вида, указывает идентичный контент.
11. Устройство воспроизведения, содержащее:
блок считывания, функционирующий так, чтобы считывать поток видео и графический поток с носителя записи,
видеодекодер, функционирующий так, чтобы декодировать считанный видеопоток, и
два графических декодера, функционирующие так, чтобы декодировать считанный графический поток, в котором
видеопоток, поток графики левого вида и поток графики правого вида записаны на носителе записи,
поток графики левого вида и поток графики правого вида каждый включает в себя один или более наборов отображения,
каждый набор отображения является группой данных, используемой для отображения одной экранной особенности одного или более графических объектов,
один или более наборов отображения, включенных в поток графики левого вида, находятся в соответствии один к одному с одним или более наборами отображения, включенными в поток графики правого вида, и идентичное время воспроизведения для видеопотока на временной оси воспроизведения установлено в наборах отображения, которые соответствуют друг другу,
каждый набор отображения включает в себя информацию состояния, указывающую, что набор отображения является одним из (i) всех данных, необходимых для отображения одной экранной особенности одного или более графических объектов, и (ii) разностью из непосредственно предшествующего набора отображения,
идентичный контент указан информацией состояния, включенной в наборы отображения, которые соответствуют друг другу в потоке графики левого вида и потоке графики правого вида,
один из двух графических декодеров является декодером графики левого вида, и другой является декодером графики правого вида,
декодер графики левого вида и декодер графики правого вида каждый включает в себя
процессор, функционирующий так, чтобы получить графический объект посредством декодирования данных, которые определяют графический объект из группы данных,
буфер объектов, который хранит графический объект, полученный посредством декодирования, и
буфер композиции, который хранит данные, задающие структуру экранного отображения с использованием графического объекта из группы данных, причем
декодер графики левого вида и декодер графики правого вида включают в себя графический контроллер в качестве общего составляющего элемента,
графический контроллер, когда достигнуто время воспроизведения, декодирует данные, хранимые в буфере композиции в декодере графики левого вида, которые задают структуру экранного отображения, и данные, хранимые в буфере композиции в декодере графики правого вида, которые задают структуру экранного отображения, и согласно считанным данным конфигурирует структуру экранного отображения левого вида с использованием графического объекта буфера объектов в декодере графики левого вида и конфигурирует структуру экранного отображения правого вида с использованием объекта графики буфера объектов в декодере графики правого вида.
12. Системная БИС в устройстве воспроизведения, содержащая:
блок считывания, функционирующий так, чтобы считывать видеопоток и графический поток с носителя записи,
видеодекодер, функционирующий так, чтобы декодировать считанный видеопоток, и
два графических декодера, действующие, чтобы декодировать считанный графический поток, причем
видеопоток, поток графики левого вида и поток графики правого вида записаны на носителе записи,
поток графики левого вида и поток графики правого вида каждый включает в себя один или более наборов отображения,
каждый набор отображения является группой данных, используемой для отображения одной экранной особенности одного или более графических объектов,
один или более наборов отображения, включенных в поток графики левого вида, находятся в соответствии один к одному с одним или более наборами отображения, включенными в поток графики правого вида, и установлено идентичное время воспроизведения для видеопотока на временной оси воспроизведения в наборах отображения, которые соответствуют друг другу,
каждый набор отображения включает в себя информацию состояния, указывающую, что набор отображения является одним из (i) всех данных, необходимых для отображения одной экранной особенности одного или более графических объектов, и (ii) разностью из непосредственно предшествующего набора отображения,
идентичный контент указан информацией состояния, включенной в наборы отображения, которые соответствуют друг другу в потоке графики левого вида и потоке графики правого вида,
один из двух графических декодеров является декодером графики левого вида, и другой является декодером графики правого вида,
декодер графики левого вида и декодер графики правого вида каждый включает в себя
процессор, функционирующий так, чтобы получить графический объект посредством декодирования данных, которые определяют графический объект из группы данных,
буфер объектов, который хранит графический объект, полученный посредством декодирования, и
буфер композиции, который хранит данные, задающие структуру экранного отображения с использованием графического объекта из группы данных, причем
декодер графики левого вида и декодер графики правого вида включают в себя графический контроллер в качестве общего составляющего элемента,
графический контроллер, когда достигнуто время воспроизведения, декодирует данные, хранимые в буфере композиции в декодере графики левого вида, которые задают структуру экранного отображения, и данные, хранимые в буфере композиции в декодере графики правого вида, которые задают структуру экранного отображения, и согласно считанным данным конфигурирует структуру экранного отображения левого вида с использованием графического объекта буфера объектов в декодере графики левого вида и конфигурирует структуру экранного отображения правого вида с использованием объекта графики буфера объектов в декодере графики правого вида.
US 2004101043 A1, 27.05.2004 | |||
WO 9732437 A1, 04.09.1997 | |||
WO 2004077827 A1, 10.09.2004 | |||
СИСТЕМА ОБЪЕМНОЙ ВИДЕОЗАПИСИ И ВОСПРОИЗВЕДЕНИЯ | 2006 |
|
RU2315439C1 |
Авторы
Даты
2013-10-20—Публикация
2009-09-29—Подача