УСТРОЙСТВО ОБРАБОТКИ ДАННЫХ, СПОСОБ ОБРАБОТКИ ДАННЫХ. ВОСПРОИЗВОДЯЩЕЕ УСТРОЙСТВО, СПОСОБ ВОСПРОИЗВЕДЕНИЯ И ПРОГРАММА
DATA PROCESSING DEVICE, DATA PROCESSING METHOD, REPRODUCING DEVICE, REPRODUCING METHOD AND PROGRAMME

Область техники, к которой относится изобретение
Настоящее изобретение относится к устройству обработки данных, способу обработки данных, воспроизводящему устройству, способу воспроизведения и программе и, в частности, относится к устройству обработки данных, способу обработки данных, воспроизводящему устройству, способу воспроизведения и программе, которые позволяют должным образом воспроизводить контент 3D (трехмерных) изображений с носителя данных.
Уровень техники
Например, такие контенты, как фильмы и так далее, являются широко распространенными контентами двумерных (2D) изображений, но в последнее время выделились контенты трехмерных (3D) изображений, в которых возможно стереоскопическое зрение.
В качестве способов отображения 3D изображений (далее также называемых стереоизображениями) существуют различные способы, но в случае использования любого из способов объем данных 3D изображения больше, чем объем данных 2D изображения.
Кроме того, контенты изображений с высоким разрешением, такие как фильмы, могут быть большими по объему, и требуется носитель данных большой емкости, чтобы записать такие большие по объему контенты изображений, как 3D изображения, которые имеют большой объем данных.
В качестве такого носителя данных большой емкости, например, есть диск Blu-Ray (зарегистрированный товарный знак), такой как BD (Blu-Ray (зарегистрированный товарный знак) - ПЗУ (ROM) (постоянное запоминающее устройство) и так далее (далее также называемый BD).
Далее, предложено также устройство управления файлами, в котором положение записи сигнала на носителе данных определяется с помощью заранее заданного компонента программы размером меньше сектора и преобразуется в файл с помощью средства создания файлов, причем даже при обработке редактирования, такой как разделение или объединение, поданные сигналы в опциональных положениях не должны вновь записываться на носитель данных, чтобы преобразовать в файл только часть подлежащего редактированию сигнала, причем обработка редактирования может осуществляться только на информации управления файлами, за счет чего обработка редактирования может быть значительно упрощена (патентный документ 1).
Ссылки
Патентная литература
PTL 1: Выложенная заявка на патент Японии №11-195287
Сущность изобретения
В соответствии с текущим стандартом BD еще не определено, как 3D изображение записывается на BD или воспроизводится с него.
Однако, если способ записи и воспроизведения контента 3D изображений зависит от автора, который создает контент 3D изображений, существует опасность, что контент 3D изображений не может должным образом воспроизводиться.
Настоящее изобретение сделано в свете этого обстоятельства для того, чтобы позволить осуществить должное воспроизведение контента стереоизображений (3D изображений) с носителя данных, такого как BD.
Воспроизводящее устройство в соответствии с первым объектом настоящего изобретения содержит: считывающее средство, которое считывает с носителя данных перемеженный файл, который является файлом, в котором перемежаются с приращением на фрагмент заранее заданного объема данных первый мультиплексированный поток, включающий в себя базовый поток из базового потока, созданного видеопотоком, закодированным с помощью заранее заданного способа кодирования, и расширенного потока, и второй мультиплексированный поток, включающий в себя расширенный поток, соответствующий базовому потоку, считывает первый информационный файл, который представляет собой данные из первого мультиплексированного потока и который имеет несколько фрагментов, составляющих мультиплексированный поток, и номер начального пакета в первом мультиплексированном потоке для каждого фрагмента, и считывает второй информационный файл, который представляет собой данные из второго мультиплексированного потока и который имеет несколько фрагментов, составляющих второй мультиплексированный поток, и номер начального пакета во втором мультиплексированном потоке для каждого фрагмента; и разделяющее средство для разделения перемеженного файла на первый мультиплексированный поток и второй мультиплексированный поток с помощью первого информационного файла и второго информационного файла.
Может быть осуществлена разбивка, в которой фрагмент является совокупностью исходных пакетов, непрерывно располагаемых на носителе данных.
Может быть осуществлена разбивка, в которой количество фрагментов, входящее в первый информационный файл, и количество фрагментов, входящее во второй информационный файл, является одинаковым.
Может быть осуществлена разбивка, в которой первый информационный файл далее имеет данные об общем количестве исходных пакетов, составляющих первый мультиплексированный поток; второй информационный файл далее имеет данные об общем количестве исходных пакетов, составляющих второй мультиплексированный поток.
Может быть осуществлена разбивка, в которой количество фрагментов, входящих в первый информационный файл, указывается как n+1, причем составляющие первый мультиплексированный поток фрагменты указываются как B(i) (где i=0, …, n), a k-й фрагмент от заголовка первого мультиплексированного потока указывается как B(k), составляющие второй мультиплексированный поток фрагменты указываются как D(i) (где i=0, …, n), а k-й фрагмент от заголовка второго мультиплексированного потока указывается как D(k), номер начального пакета для B(k) указывается как SPN_chunk_start_1[k], номер начального пакета для D(k) указывается как SPN_chunk_start_2[k], общее количество исходных пакетов, составляющих первый мультиплексированный поток, указывается как number_of_source_packets1, а общее количество исходных пакетов, составляющих второй мультиплексированный поток, указывается как number_of_source_packets2, разделяющее средство можно заставить вычислять количество исходных пакетов, составляющих B(k), посредством (SPN_chunk_start_1[k+1]-SPN_chunk_start_1[k]), где k=0…(n-1), вычислять количество исходных пакетов, составляющих D(k), посредством (SPN_chunk_start_2[k+1]-SPN_chunk_start_2[k]), где k=0…(n-1), вычислять количество исходных пакетов, составляющих В(n), посредством (number_of_source_packets1-SPN_chunk_start_1[n]) и вычислять количество исходных пакетов, составляющих D(n), посредством (number_of_source_packets2-SPN_chunk_start_2[n]).
Может быть осуществлена разбивка, в которой набор фрагментов, имеющих одинаковое значение i, имеют одинаковое время воспроизведения в отношении B(i) и D(i).
Можно дополнительно предусмотреть управляющее средство для управления считыванием средством считывания. В данном случае управляющее средство можно заставить считывать ЕР_map, который представляет собой данные первого мультиплексированного потока и данные, имеющие несколько точек входа в первом мультиплексированном потоке, PTS_EP_start[i], указывающий PTS (отметку времени представления), и SPN_EP_start[i], который является номером исходного пакета, показывающим положение для каждой точки входа; обнаруживать SPN_EP_start[m], имеющий меньшее значение, чем ближайший заданный начальный момент времени воспроизведения; обнаруживать SPN_EP_start[m], соответствующий PTS_EP_start[m]; обнаруживать SPN_chunk_start_1[k], имеющий меньшее значение, чем ближайшее SPN_EP_start[m], и его значение k; и определять сумму SPN_chunk_start_1[k] и SPN_chunk_start_2[k] в качестве начального адреса считывания перемеженного файла.
Может быть осуществлена разбивка, в которой базовый поток и расширенный поток являются видеопотоком основного вида и видеопотоком зависимого вида соответственно, причем они созданы видеопотоками, закодированными посредством Н.264 AVC/MVC.
Способ воспроизведения в соответствии с первым объектом изобретения включает в себя этапы, на которых: считывают с носителя данных перемеженный файл, являющийся файлом, в котором перемежаются на приращения фрагмента заранее заданного объема данных первый мультиплексированный поток, включающий в себя базовый поток из базового потока, созданного видеопотоком, закодированным с помощью заранее заданного способа кодирования, и расширенного потока, и второй мультиплексированный поток, включающий в себя расширенный поток, соответствующий базовому потоку; считывают первый информационный файл, который представляет собой данные о первом мультиплексированном потоке и который имеет несколько фрагментов, составляющих мультиплексированный поток, и номер начального пакета в первом мультиплексированном потоке для каждого фрагмента, и считывают второй информационный файл, который представляет собой данные о втором мультиплексированном потоке и который имеет несколько фрагментов, составляющих второй мультиплексированный поток, и номер начального пакета во втором мультиплексированном потоке для каждого фрагмента; и разделяют перемеженный файл на первый мультиплексированный поток и второй мультиплексированный поток с помощью первого информационного файла и второго информационного файла.
Программа в соответствии с первым объектом настоящего изобретения заставляет компьютер исполнять обработку, включающую в себя этапы, на которых: считывают с носителя данных перемеженный файл, являющийся файлом, в котором перемежаются на приращения фрагмента заранее заданного объема данных первый мультиплексированный поток, включающий в себя базовый поток из базового потока, созданного видеопотоком, закодированным с помощью заранее заданного способа кодирования, и расширенного потока, и второй мультиплексированный поток, включающий в себя расширенный поток, соответствующий базовому потоку; считывают первый информационный файл, который представляет собой данные о первом мультиплексированном потоке и который имеет несколько фрагментов, составляющих мультиплексированный поток, и номер начального пакета в первом мультиплексированном потоке для каждого фрагмента, и считывают второй информационный файл, который представляет собой данные о втором мультиплексированном потоке и который имеет несколько фрагментов, составляющих второй мультиплексированный поток, и номер начального пакета во втором мультиплексированном потоке для каждого фрагмента; и разделяют перемеженный файл на первый мультиплексированный поток и второй мультиплексированный поток с помощью первого информационного файла и второго информационного файла.
Устройство обработки данных в соответствии со вторым объектом настоящего изобретения имеет: установочное средство, которое устанавливает информацию о состоянии записи, указывающую, записываются ли на оптический диск данные базового потока и данные расширенного потока в состоянии перемежения на приращения интервала, который является заранее заданным приращением данных, в файле данных управления воспроизведением, который управляет воспроизведением базового потока и расширенного потока, созданных посредством кодирования множества частей видеоданных заранее заданным способом кодирования; и, в случае записи в состоянии перемежения на приращения интервала, устанавливают виртуальный файл, который управляет базовым потоком и расширенным потоком как файлом данных управления воспроизведением.
Может быть осуществлена разбивка, в которой установочное средство далее устанавливает идентифицирующие данные для описывающей файл данных клипа информации, относящейся к клипу, который является воспроизводимым клипом базового потока, и идентифицирующие данные для описывающей файл данных клипа информации, относящейся к клипу расширенного потока, который используется для воспроизведения трехмерного изображения вместе с клипом базового потока.
Может быть осуществлена разбивка, в которой установочное средство устанавливает информацию, относящуюся к интервалам базового потока в файле данных клипа базового потока; и устанавливает информацию, относящуюся к интервалам расширенного потока в файле данных клипа расширенного потока.
Может быть осуществлена разбивка, в которой базовый поток и расширенный поток являются видеопотоком основного вида и видеопотоком зависимого вида соответственно, причем они созданы видеопотоками, закодированными посредством Н.264 AVC/MVC.
Способ обработки данных в соответствии со вторым объектом настоящего изобретения включает в себя этапы, на которых: устанавливают информацию о состоянии записи, указывающую, записываются ли на оптический диск данные базового потока и данные расширенного потока в состоянии перемежения в приращениях интервалов, которые являются заранее заданным приращением данных, в файле данных управления воспроизведением, который управляет воспроизведением базового потока и расширенного потока, созданных посредством кодирования множества частей видеоданных с помощью заранее заданного способа кодирования; и, в случае записи в состоянии перемежения в приращениях интервалов, устанавливают виртуальный файл, который управляет базовым потоком и расширенным потоком в файле данных управления воспроизведением.
Программа в соответствии со вторым объектом настоящего изобретения заставляет компьютер исполнять обработку, включающую в себя этапы, на которых: устанавливают информацию о состоянии записи, указывающую, записываются ли на оптический диск данные базового потока и данные расширенного потока в состоянии перемежения в приращениях интервалов, которые являются заранее заданным приращением данных, в файле данных управления воспроизведением, который управляет воспроизведением базового потока и расширенного потока, созданных посредством кодирования множества частей видеоданных с помощью заранее заданного способа кодирования; и, в случае записи в состоянии перемежения в приращениях интервалов, устанавливают виртуальный файл, который управляет базовым потоком и расширенным потоком в файле данных управления воспроизведением.
Воспроизводящее устройство в соответствии с третьим объектом настоящего изобретения содержит; управляющее средство, чтобы заставить считывать базовый поток и расширенный поток с оптического диска на основе виртуального файла, который управляет базовым потоком и расширенным потоком, расположенными в файле данных управления воспроизведением, в случае если информация о состоянии записи, указывающая, записываются ли на оптический диск данные базового потока и данные расширенного потока в состоянии перемежения в приращениях интервалов, являющемся заранее заданным приращением данных, который установлен в файле данных управления воспроизведением, управляющим воспроизведением базового потока и расширенного потока, созданных посредством кодирования множества частей видеоданных с помощью заранее заданного способа кодирования, указывает, что данные записаны в состоянии перемежения в приращениях интервалов.
Может быть дополнительно предусмотрено средство воспроизведения для воспроизведения базового потока и расширенного потока, которые считываются с оптического диска.
Может быть дополнительно предусмотрено разделяющее средство для разделения данных, считанных с помощью управляющего средства, на данные базового потока и данные расширенного потока на основе данных, относящихся к интервалу, установленному в соответствующих файлах данных клипа, в случае, когда идентифицирующая информация" файла данных клипа, в котором данные, относящиеся к интервалу базового потока, описаны как данные, относящиеся к клипу, который является воспроизводимой частью базового потока, и идентифицирующая информация файла данных клипа, в котором данные, относящиеся к интервалу расширенного потока, описаны как данные, относящиеся к клипу расширенного потока, который используется для воспроизведения трехмерного изображения вместе с клипом базового потока, установлены в файле данных управления воспроизведением.
Может быть осуществлена разбивка, в которой данные, относящиеся к интервалу, представляют собой номер исходного пакета, который начинает каждый из интервалов в потоке, связанном с клипом.
Может быть осуществлена разбивка, в которой базовый поток и расширенный поток являются видеопотоком основного вида и видеопотоком зависимого вида соответственно, причем они созданы видеопотоками, закодированными посредством Н.264 AVC/MVC.
Способ воспроизведения в соответствии с третьим объектом изобретения включает в себя этапы, на которых: заставляют считывать с оптического диска базовый поток и расширенный поток на основе виртуального файла, который управляет базовым потоком и расширенным потоком, установленным в файле данных управления воспроизведением, в случае если информация о состоянии записи, указывающая, записываются ли на оптический диск данные базового потока и данные расширенного потока в состоянии перемежения в приращениях интервалов, который установлен в файле данных управления воспроизведением, управляющем воспроизведением базового потока и расширенного потока, созданных посредством кодирования множества частей видеоданных с помощью заранее заданного способа кодирования, указывает, что данные записаны в состоянии перемежения в приращениях интервалов.
Программа в соответствии с третьим объектом настоящего изобретения заставляет компьютер осуществить процесс, включающий в себя этапы, на которых: заставляют считывать с оптического диска базовый поток и расширенный поток на основе виртуального файла, который управляет базовым потоком и расширенным потоком, установленным в файле данных управления воспроизведением, в случае если информация о состоянии записи, указывающая, записываются ли на оптический диск данные базового потока и данные расширенного потока в состоянии перемежения в приращениях интервалов, который установлен в файле данных управления воспроизведением, управляющем воспроизведением базового потока и расширенного потока, созданных посредством кодирования множества частей видеоданных с помощью заранее заданного способа кодирования, указывает, что данные записаны в состоянии перемежения в приращениях интервалов.
Воспроизводящее устройство в соответствии с четвертым объектом настоящего изобретения содержит: управляющее средство, которое в случае, если информация о состоянии записи, указывающая, записываются ли на оптический диск данные базового потока и данные расширенного потока, установленные в файле данных управления воспроизведением, который управляет воспроизведением базового потока и расширенного потока, созданных посредством кодирования множества частей видеоданных с помощью заранее заданного способа кодирования, в состоянии перемежения в приращениях интервалов, которые являются заранее заданным приращением данных, указывает, что данные записаны в состоянии перемежения в приращениях интервалов, ссылается на виртуальный файл, который управляет базовым потоком и расширенным потоком, которые установлены в файле данных управления воспроизведением, и в случае, если идентифицирующая информация файла данных клипа, описывающая данные, относящиеся к клипу, который является воспроизводимой частью расширенного потока, который управляется виртуальным файлом, установленным в качестве файла данных управления воспроизведением, и идентифицирующая информация файла данных клипа в клипе расширенного потока, записанного на оптическом диске, не совпадают, считывает с оптического диска данные клипа базового потока и считывает данные клипа расширенного потока, записанного на носитель данных, отличный от оптического диска, в качестве данных клипа расширенного потока, используемых для воспроизведения трехмерных изображений вместе с данными клипа базового потока.
Может быть осуществлена разбивка, в которой базовый поток и расширенный поток являются видеопотоком основного вида и видеопотоком зависимого вида соответственно, причем они созданы видеопотоками, закодированными посредством Н.264 AVC/MVC.
Способ воспроизведения в соответствии с четвертым объектом настоящего изобретения включает в себя этапы, на которых: ссылаются на виртуальный файл, который управляет базовым потоком и расширенным потоком, которые установлены в файле данных управления воспроизведением, в случае, если информация о состоянии записи, указывающая, записываются ли на оптический диск данные базового потока и данные расширенного потока, установленные в файле данных управления воспроизведением, который управляет воспроизведением базового потока и расширенного потока, созданных посредством кодирования множества частей видеоданных с помощью заранее заданного способа кодирования, в состоянии перемежения в приращениях интервалов, которые являются заранее заданным приращением данных, указывает, что данные записаны в состоянии перемежения в приращениях интервалов; считывают данные клипа базового потока с оптического диска в случае, когда описана идентифицирующая информация файла данных клипа, в котором данные, относящиеся к клипу, который является воспроизводимой частью расширенного потока, который управляется виртуальным файлом, установленным в качестве файла данных управления воспроизведением, и идентифицирующая информация файла данных клипа в клипе расширенного потока, записанного на оптическом диске, не совпадают; и считывают данные клипа расширенного потока, записанного на носитель данных, отличный от оптического диска, в качестве данных клипа расширенного потока, используемых для воспроизведения трехмерных изображений вместе с данными клипа базового потока.
Программа в соответствии с четвертым объектом настоящего изобретения заставляет компьютер исполнять обработку, включающую в себя этапы, на которых: ссылаются на виртуальный файл, который управляет базовым потоком и расширенным потоком, которые установлены в файле данных управления воспроизведением, в случае, если информация о состоянии записи, указывающая, записываются ли на оптический диск данные базового потока и данные расширенного потока, установленные в файле данных управления воспроизведением, который управляет воспроизведением базового потока и расширенного потока, созданных посредством кодирования множества частей видеоданных с помощью заранее заданного способа кодирования, в состоянии перемежения в приращениях интервалов, которые являются заранее заданным приращением данных, указывает, что данные записаны в состоянии перемежения в приращениях интервалов; считывают данные клипа базового потока с оптического диска в случае, когда описана идентифицирующая информация файла данных клипа, в котором данные, относящиеся к клипу, который является воспроизводимой частью расширенного потока, который управляется виртуальным файлом, установленным в качестве файла данных управления воспроизведением, и идентифицирующая информация файла данных клипа в клипе расширенного потока, записанного на оптическом диске, не совпадают; и считывают данные клипа расширенного потока, записанного на носитель данных, отличный от оптического диска, в качестве данных клипа расширенного потока, используемых для воспроизведения трехмерных изображений вместе с данными клипа базового потока.
В случае первого объекта по настоящему изобретению считывают с носителя данных перемеженный файл, являющийся файлом, в котором перемежаются, на фрагмент приращения заранее заданного объема данных, первый мультиплексированный поток, включающий в себя базовый поток из базового потока, созданного видеопотоком, закодированным с помощью заранее заданного способа кодирования, и расширенного потока, и второй мультиплексированный поток, включающий в себя расширенный поток, соответствующий базовому потоку, и считывают первый информационный файл, который представляет собой данные о первом мультиплексированном потоке и который имеет несколько фрагментов, составляющих мультиплексированный поток, и номер начального пакета в первом мультиплексированном потоке для каждого фрагмента. Кроме того, считывают второй информационный файл, который представляет собой данные о втором мультиплексированном потоке и который имеет несколько фрагментов, составляющих второй мультиплексированный поток, и номер начального пакета во втором мультиплексированном потоке для каждого фрагмента; и перемеженный файл разделяют на первый мультиплексированный поток и второй мультиплексированный поток с помощью первого информационного файла и второго информационного файла.
В случае второго объекта по настоящему изобретению информацию о состоянии записи, указывающую, записываются ли на оптический диск данные базового потока и данные расширенного потока в состоянии перемежения в приращениях интервалов, которые являются заранее заданным приращением данных, устанавливают в файле данных управления воспроизведением, который управляет воспроизведением базового потока и расширенного потока, созданных посредством кодирования множества частей видеоданных с помощью заранее заданного способа кодирования, и, в случае записи в состоянии перемежения в приращениях интервалов, виртуальный файл, который управляет базовым потоком и расширенным потоком, устанавливают как файл данных управления воспроизведением.
В случае третьего объекта по настоящему изобретению базовый поток и расширенный поток считывают с оптического диска на основе виртуального файла, который управляет базовым потоком и расширенным потоком, который установлен в качестве файла данных управления воспроизведением, в случае, если информация о состоянии записи, указывающая, записываются ли на оптический диск данные базового потока и данные расширенного потока в состоянии перемежения в приращениях интервалов, которое является заранее заданным приращением данных, которое установлено в файле данных управления воспроизведением, который управляет воспроизведением базового потока и расширенного потока, созданных посредством кодирования множества частей видеоданных с помощью заранее заданного способа кодирования, указывает, что данные записаны в состоянии перемежения в приращениях интервалов.
В случае четвертого объекта по настоящему изобретению, в случае, если информация о состоянии записи, указывающая, записываются ли на оптический диск данные базового потока и данные расширенного потока, установленные в файле данных управления воспроизведением, который управляет воспроизведением базового потока и расширенного потока, созданных посредством кодирования множества частей видеоданных с помощью заранее заданного способа кодирования, в состоянии перемежения в приращениях интервалов, которое является заранее заданным приращением данных, указывает, что данные записаны в состоянии перемежения в приращениях интервалов, ссылаются на виртуальный файл, который управляет базовым потоком и расширенным потоком, который установлен как файл данных управления воспроизведением, в случае, если идентифицирующая информация файла данных клипа, в котором описаны данные, относящиеся к клипу, который является воспроизводимой частью расширенного потока, который управляется виртуальным файлом, установленным в качестве файла данных управления воспроизведением, и идентифицирующая информация файла данных клипа в клипе расширенного потока, записанного на оптическом диске, не совпадают; данные клипа расширенного потока считываются с оптического диска, и данные клипа расширенного потока, записанные на носитель данных, отличный от оптического диска, считываются в качестве данных клипа расширенного потока, используемых для воспроизведения трехмерных изображений вместе с данными клипа базового потока.
Полезные свойства изобретения
В соответствии с настоящим изобретением контенты стереоизображения (3D изображения) могут воспроизводиться должным образом.
Краткое описание чертежей
Фиг.1 является схемой, иллюстрирующей пример выполнения воспроизводящей системы, включающей в себя воспроизводящее устройство, в котором применено настоящее изобретение.
Фиг.2 является схемой, иллюстрирующей пример съемки.
Фиг.3 является блок-схемой, иллюстрирующей пример выполнения кодера MVC.
Фиг.4 является схемой, иллюстрирующей пример опорного изображения.
Фиг.5 является схемой, иллюстрирующей пример конфигурации транспортного потока.
Фиг.6 является схемой, иллюстрирующей другой пример конфигурации транспортного потока.
Фиг.7 является схемой, иллюстрирующей еще один пример конфигурации транспортного потока.
Фиг.8 является схемой, иллюстрирующей пример управления аудиовизуальным (АВ) потоком.
Фиг.9 является схемой, иллюстрирующей конфигурацию основной дорожки и вспомогательной дорожки.
Фиг.10 является схемой, иллюстрирующей пример конфигурации управления файлом, подлежащим записи на оптический диск.
Фиг.11 является схемой, иллюстрирующей синтаксическую структуру файла PlayList.
Фиг.12 является схемой, иллюстрирующей синтаксическую структуру PlayList() на фиг.11.
Фиг.13 является схемой, иллюстрирующей синтаксическую структуру SubPath() на фиг.12.
Фиг.14 является схемой, иллюстрирующей синтаксическую структуру SubPlayItem (i) на фиг.13.
Фиг.15 является схемой, иллюстрирующей синтаксическую структуру PlayItem() на фиг.12.
Фиг.16 является схемой, иллюстрирующей синтаксическую структуру STN_table() на фиг.15.
Фиг.17 является схемой, иллюстрирующей конкретный пример 3D_PlayList.
Фиг.18 является схемой, иллюстрирующей значение type.
Фиг.19 является схемой, иллюстрирующей значение SubPath_type.
Фиг.20 является блок-схемой, иллюстрирующей пример выполнения воспроизводящего устройства.
Фиг.21 является схемой, иллюстрирующей пример выполнения декодирующего блока на фиг.20.
Фиг.22 является схемой, иллюстрирующей пример 3D_PlayList.
Фиг.23 является схемой, иллюстрирующей синтаксическую структуру файла clpi.
Фиг.24 является схемой, иллюстрирующей принцип управления файлами, который осуществляется с помощью данных по фиг.22 и фиг.23.
Фиг.25 является блок-схемой, описывающей обработку воспроизведения, которая осуществляется в соответствии с файлом 3D_PlayList фиг.22.
Фиг.26 является схемой, иллюстрирующей пример синтаксической структуры chunk_map().
Фиг.27 является схемой, иллюстрирующей конкретный пример chunk_map().
Фиг.28 является схемой, иллюстрирующей разделение фрагмента.
Фиг.29 является схемой, иллюстрирующей другой пример 3D_PlayList.
Фиг.30 является схемой, иллюстрирующей синтаксическую структуру файла clpi.
Фиг.31 является схемой, иллюстрирующей принцип управления файлами, который выполняется с помощью данных по фиг.29 и фиг.30.
Фиг.32 является блок-схемой, описывающей обработку воспроизведения, которая осуществляется в соответствии с файлом 3D_PlayList по фиг.29.
Фиг.33 является схемой, иллюстрирующей еще один 3D_PlayList.
Фиг.34 является схемой, иллюстрирующей синтаксическую структуру файла clpi.
Фиг.35 является схемой, иллюстрирующей принцип управления файлами, который выполняется с помощью данных по фиг.33 и фиг.34.
Фиг.36 является блок-схемой, описывающей обработку воспроизведения, которая выполняется в соответствии с файлом 3D_PlayList по фиг.33.
Фиг.37 является схемой, иллюстрирующей итоговую информацию контента chunk_map() по фиг.27.
Фиг.38 является схемой, иллюстрирующей синтаксическую структуру ЕР_map().
Фиг. 39 является блок-схемой, описывающей обработку данных с произвольной выборкой в воспроизводящем устройстве.
Фиг.40 является схемой, иллюстрирующей пример положений, определенных обработкой данных на этапах S44 и S45.
Фиг.41 является схемой, иллюстрирующей SPN_chunk_start[k], который идентифицирован посредством обработки данных на этапе S46.
Фиг.42 является схемой, иллюстрирующей конфигурацию АВ потока, записанного на оптическом диске.
Фиг.43 является схемой, иллюстрирующей пример АВ потока клипа.
Фиг.44 является схемой, иллюстрирующей пример ЕР_map.
Фиг.45 является схемой, иллюстрирующей пример конфигурации данных исходного пакета, указанной посредством SPN_EP_start.
Фиг.46 является блок-схемой, иллюстрирующей пример выполнения производящего программное обеспечение блока обработки.
Фиг.47 является схемой, иллюстрирующей пример выполнения, включающего производящий программное обеспечение блок обработки.
Подробное описание изобретения
Выполнение воспроизводящей системы
Фиг.1 показывает пример выполнения воспроизводящей системы, включающей в себя воспроизводящее устройство 201, в котором применено настоящее изобретение.
Как показано на фиг.1, воспроизводящая система сформирована воспроизводящим устройством 201 и отображающим устройством 203, соединенными с помощью кабеля HDMI (мультимедийный интерфейс высокой четкости) или тому подобным. Оптический диск 202, такой как BD, установлен на воспроизводящем устройстве 201.
Поток, необходимый для отображения стереоизображения (3D изображения), в котором количество точек обзора равняется двум, записывается на оптический диск 202.
Данные для каждого потока записываются на оптический диск 202 в перемеженном состоянии в приращениях интервалов.
Воспроизводящее устройство 201 является проигрывателем, соответствующим 3D воспроизведению потока, записанного на оптический диск 202. Воспроизводящее устройство 201 воспроизводит поток, который записан на оптическом диске 202, и отображает 3D изображения, которые получены посредством воспроизведения на отображающем устройстве 203, состоящем из телевизионного приемника или тому подобного. Аудиосигнал проигрывается таким же образом посредством воспроизводящего устройства 201 и выводится из громкоговорителя или тому подобного, предусмотренного в отображающем устройстве 203.
Поток, посредством которого 3D изображения могут быть отображены, записан на оптическом диске 202. В качестве способа кодирования для записи потока на оптический диск 202 используется, например, Н.264 AVC (усовершенствованное видеокодирование) / MVC (видеокодирование многих точек обзора).
Профиль Н.264 AVC/MVC
Н.264 AVC/MVC имеет поток изображений, называемый видео основного вида, и поток изображений, называемый видео зависимого вида, которые определены. В дальнейшем в соответствующих случаях они будут называться просто MVC.
Фиг.2 является схемой, иллюстрирующей пример съемки.
Как показано на фиг.2, съемка осуществляется с помощью одной камеры для (левого) изображения L и с помощью другой камеры для (правого) изображения R, причем предметом съемки является одна и та же цель. Первоначальный поток видео, снятый одной камерой для изображения L и другой камерой для изображения R, вводится в кодирующее устройство MVC.
Фиг.3 является блок-схемой, иллюстрирующей пример выполнения кодера MVC.
Как показано на фиг.3, кодер 211 MVC выполнен из кодера 221 H.264/AVC, декодера 222 H.264/AVC, вычисляющего глубину блока 223, кодера 224 для видео зависимого вида и мультиплексора 225.
Поток видео №1, снятого камерой для изображения L, вводится в кодер 221 H.264/AVC и вычисляющий глубину блок 223. Также видео №2, снятое камерой для изображения R, вводится в вычисляющий глубину блок 223 и кодер 224 для видео зависимого вида. Поток видео №2 может вводиться в кодер 221 H.264/AVC и вычисляющий глубину блок 223, а поток видео №1 может вводиться в вычисляющий глубину блок 223 и кодер 224 для видео зависимого вида.
Кодер 221 Н.264 AVC кодирует видео №1 как, например, профильный видеопоток Н.264 AVC/High. Кодер 221 H.264/AVC выводит видеопоток AVC, полученный путем кодирования, на декодер 222 H.264/AVC и мультиплексор 225 в качестве видеопотока основного вида.
Декодер 222 H.264/AVC декодирует видеопоток AVC, полученный с кодера 221 H.264/AVC, и выводит поток видео №1, полученный посредством декодирования, на кодер 224 для видео зависимого вида.
Вычисляющий глубину блок 223 рассчитывает поток видео №1 и поток видео №2 на основании глубины (параллакса) и выводит вычисленные данные глубины на мультиплексор 225.
Кодер 224 для видео зависимого вида кодирует поток видео №1, полученный с декодера 222 H.264/AVC, и поток видео №2, введенный извне, и выводит видеопоток зависимого вида.
Видеопоток основного вида не позволяет осуществить кодирование с предсказанием, которое использует другой поток в качестве опорного изображения, но разрешается, как показано на фиг.4, кодирование с предсказанием, которое использует видео основного вида в качестве опорного изображения. Например, в случае осуществления кодирования, при котором изображение L представляет собой видео основного вида, а изображение R представляет собой видео зависимого вида, количество данных видеопотока зависимого вида, полученных как его результат, становится меньшим по сравнению с количеством данных видеопотока основного вида.
Теперь, вследствие кодирования посредством H.264/AVC выполняется оценка временного направления для видео основного вида. Кроме того, оценка временного направления вместе с оценкой между точками обзора выполняются для видео зависимого вида. Для декодирования видео зависимого вида декодирование соответствующего видео основного вида, которое является опорным источником во время кодирования, должно быть закончено заранее.
Кодер 224 для видео зависимого вида выводит видеопоток зависимого вида, полученный путем кодирования с помощью такой оценки между точками обзора, на мультиплексор 225.
Мультиплексор 225 мультиплексирует видеопоток основного вида, полученный с кодера 221 H.264/AVC, видеопоток зависимого вида, полученный с вычисляющего глубину блока 223 (данные глубины), и видеопоток зависимого вида, поданный с кодера 224 для видео зависимого вида, например, как транспортный поток MPEG2. Видеопоток основного вида и видеопоток зависимого вида могут быть мультиплексированы в один транспортный поток MPEG2 или могут быть включены в отдельные транспортные потоки MPEG2.
Мультиплексор 225 выводит созданный транспортный поток (транспортный поток MPEG2, TS MPEG2). Транспортный поток, выводимый из мультиплексора 225, записывается на оптический диск 202 в записывающем устройстве вместе с другими данными управления и подается на воспроизводящее устройство 201 в том виде, как он записан на оптическом диске 202.
В дальнейшем, из двух видео зависимого вида, видео зависимого вида, созданное из информации глубины, называется видео для вида D1, а видео зависимого вида, созданное из изображения R, называется видео для вида D2. Отметим, что видео зависимого вида, созданное из изображения R, может обрабатываться как видео для вида D1, а видео зависимого вида, состоящее из информации глубины, может обрабатываться как видео для вида D2.
Кроме того, воспроизведение 3D, которое осуществляется с помощью видео основного вида и видео для вида D1, называется воспроизведением B-D1. Воспроизведение 3D, которое осуществляется с помощью видео основного вида и видео для вида D2, называется воспроизведением B-D2.
В случае осуществления воспроизведения B-D1 в соответствии с командами от пользователя и так далее воспроизводящее устройство 201 считывает и воспроизводит видеопоток основного вида и видеопоток проекции Die оптического диска 202.
Также, в случае осуществления воспроизведения B-D2, воспроизводящее устройство 201 считывает и воспроизводит видеопоток основного вида и видеопоток проекции D2 с оптического диска 202.
Далее, в случае осуществления нормального воспроизведения 2D изображений воспроизводящее устройство 201 считывает и воспроизводит только видеопоток основного вида с оптического диска 202.
Видеопоток основного вида является видеопотоком AVC, закодированным посредством H.264/AVC, в связи с чем, если проигрыватель совместим с форматом BD, его видеопоток основного вида может быть воспроизведен, и изображение 2D может быть отображено.
Пример конфигурации транспортного потока
Фиг.5 является схемой, иллюстрирующей пример конфигурации транспортного потока (TS).
Потоки для каждого из видео основного вида, видео зависимого вида, первичного аудио, основной презентационной графики, зависимой презентационной графики, основной интерактивной графики и зависимой интерактивной графики мультиплексируются в основном транспортном потоке на фиг.5. Таким образом, видеопоток зависимого вида вместе с видеопотоком основного вида могут быть включены в основной транспортный поток.
Основной транспортный поток и вспомогательный транспортный поток записываются на оптический диск 202. Основной транспортный поток является транспортным потоком, включающим в себя по меньшей мере видеопоток основного вида. Вспомогательный транспортный поток является транспортным потоком, который включает в себя потоки, отличные от видеопотока основного вида, и используется вместе с основным транспортным потоком.
Потоки для каждой из основной проекции и зависимой проекции приготовлены также для презентационной графики и интерактивной графики, чтобы 3D отображение было задействовано аналогично видео.
Фиг.6 является схемой, иллюстрирующей другой пример конфигурации транспортного потока.
Потоки для каждого из видео основного вида и видео зависимого вида мультиплексируются в основном транспортном потоке по фиг.6.
С другой стороны, потоки для каждого из первичного аудио, основной презентационной графики, зависимой презентационной графики, основной интерактивной графики и зависимой интерактивной графики мультиплексируются во вспомогательном транспортном потоке.
Таким образом, видеопоток может быть мультиплексирован в основном транспортном потоке, а потоки презентационной графики, интерактивной графики и так далее могут быть мультиплексированы во вспомогательном транспортном потоке.
Фиг.7 является схемой, иллюстрирующей еще один пример конфигурации транспортного потока.
Потоки для каждого из видео основного вида, первичного аудио, основной презентационной графики, зависимой презентационной графики, основной интерактивной графики и зависимой интерактивной графики мультиплексируются в основном транспортном потоке по фиг.7.
С другой стороны, видеопоток зависимого вида включается во вспомогательный транспортный поток.
Таким образом, видеопоток зависимого вида может иногда включаться в транспортный поток, который отделен от видеопотока основного вида.
Формат программного взаимодействия
Фиг.8 является схемой, иллюстрирующей пример управления АВ (аудио-видео) потоком, осуществляемого воспроизводящим устройством 201.
Управление АВ потоком осуществляется с помощью двух уровней в списке воспроизведения и клипе, как показано на фиг.8. АВ поток может быть записан не только на оптический диск 202, но также в локальное запоминающее устройство воспроизводящего устройства 201.
Теперь, пара из АВ потока и данных клипа, которые являются прикрепленными данными, рассматривается как один объект, и вместе они называются клипом. В дальнейшем файл, хранящий АВ поток, будет называться файлом АВ потока. Кроме того, файл, хранящий данные клипа, также будет называться файлом данных клипа.
АВ поток отображается на временной оси, и точка доступа для каждого клипа первоначально указывается в списке воспроизведения отметкой времени. Файл данных клипа используется для нахождения адреса, с которого начинается декодирование в АВ потоке и так далее.
Список воспроизведения является совокупностью воспроизводимых частей АВ потока. Одна воспроизводимая часть в АВ потоке называется единицей воспроизведения. Единица воспроизведения представлена точкой IN и точкой OUT в воспроизводимой части на временной оси. Как показано на фиг.8, список воспроизведения состоит из множества единиц воспроизведения.
Список воспроизведения, показанный первым слева на фиг.8, состоит из двух единиц воспроизведения, и из двух этих единиц воспроизведения на первую часть и последнюю часть АВ потока, включенные в клип с левой стороны, ссылаются соответственно.
Список воспроизведения, показанный вторым слева, состоит из одной единицы воспроизведения, в связи с чем ссылаются на весь АВ поток, включенный в клип с правой стороны.
Список воспроизведения, показанный третьим слева, состоит из двух единиц воспроизведения, и из двух этих единиц воспроизведения на часть, имеющую АВ поток, включенный в клип с левой стороны, и часть, имеющую АВ поток, включенный в клип с правой стороны, ссылаются соответственно.
Например, в случае, если единица воспроизведения с левой стороны, которая включена в список воспроизведения, показанный первым слева, определена в качестве цели воспроизведения программой навигации по диску, воспроизведение осуществляется в отношении первой части АВ потока, включенной в клип с левой стороны, на которую ссылается ее единица воспроизведения. Таким образом, список воспроизведения используется в качестве информации управления воспроизведением для управления воспроизведением АВ потоков.
В списке воспроизведения воспроизводимая дорожка, выполненная в соответствии с набором из одной или нескольких единиц воспроизведения, называется основной дорожкой.
Также, в списке воспроизведения воспроизводимая дорожка, выполненная в соответствии с одной или несколькими единицами воспроизведения, параллельная основной дорожке, называется вспомогательной дорожкой.
Фиг.9 является схемой, иллюстрирующей конфигурацию основной дорожки и вспомогательной дорожки.
Список воспроизведения может иметь одну основную дорожку и одну или несколько вспомогательных дорожек.
Вышеописанный видеопоток основного вида управляется как поток, на который ссылается единица воспроизведения, составляющая основную дорожку. Кроме того, видеопоток зависимого вида управляется как поток, которым управляет вспомогательная единица воспроизведения, составляющая вспомогательную дорожку.
Список воспроизведения на фиг.9 имеет одну основную дорожку, составленную из набора из трех единиц воспроизведения, и три вспомогательных дорожки.
Единица воспроизведения, составляющая основную дорожку, имеет идентификатор, установленный последовательно с начала. Вспомогательные дорожки также имеют идентификаторы Subpath_id=0, Subpath_id=1 и Subpath_id=2 последовательно с начала.
В соответствии с примером на фиг.9 одна вспомогательная единица воспроизведения включена во вспомогательную дорожку для Subpath_id=0 и две вспомогательные единицы воспроизведения включены во вспомогательную дорожку для Subpath_id=1. Кроме того, одна вспомогательная единица воспроизведения включена во вспомогательную дорожку для Subpath_id=2.
По меньшей мере один видеопоток (основные данные изображений) включен в ссылку АВ потока клипов одной единицей воспроизведения.
Кроме того, один или более аудиопотоков, воспроизведенных с тем же тактированием (синхронизированных с), что и видеопоток, включенный в АВ поток клипов, могут быть включены или могут быть не включены в АВ поток клипов.
Один или несколько потоков данных заголовков (ПГ - презентационная графика) поразрядной карты отображения, которые проигрываются синхронно с видеопотоком, включенным в АВ поток клипов, могут быть включены или могут быть не включены в АВ поток клипов.
Один или несколько потоков ИГ (ИГ - интерактивная графика), которые воспроизводятся синхронно с видеопотоком, включенным в файл АВ потока клипа, могут быть включены или могут быть не включены в АВ поток клипов. Поток ИГ используется для отображения графики, такой как нажимаемая пользователем кнопка.
Видеопоток и ни одного или несколько аудиопотоков, ни одного или несколько потоков ПГ и ни одного или несколько потоков ИГ, которые воспроизводятся синхронно, далее мультиплексируются в АВ поток клипов, на который ссылается одна единица воспроизведения.
Кроме того, одна вспомогательная единица воспроизведения ссылается на видеопоток, аудиопоток или поток ПГ или тому подобный поток, который отличается от АВ потока клипов (отдельный поток), на который ссылается единица воспроизведения.
Управление АВ потоком с помощью такого списка воспроизведения, единицы воспроизведения и вспомогательной единицы воспроизведения раскрыто, например, в заявке на патент Японии, публикация №2008-252740, и в заявке на патент Японии, публикация №2005-348314.
Конфигурация каталога
Фиг.10 является схемой, иллюстрирующей пример конфигурации управления файлом, подлежащим записи на оптический диск 202.
Как показано на фиг.10, файлы управляются иерархическим образом конфигурацией каталога. Один корневой каталог создается на оптическом диске 202. Под корневым каталогом находится диапазон, управляемый одной записывающей воспроизводящей системой.
Каталог BDMV расположен под корневым каталогом.
Сразу под каталогом BDMV хранятся файл индекса, который является файлом с наименованием, установленным как "Index.bdmv", и файл кинообъекта, который является файлом с наименованием, установленным как "MovieObject.bdmv".
Под каталогом BDMV представлены каталог BACKUP, каталог PLAYLIST, каталог CLIPINF, каталог STREAM и так далее.
Файлы списка воспроизведения, описывающие списки воспроизведения, хранятся в каталоге PLAYLIST. Каждый список воспроизведения установлен наименованием, сочетающим пятиразрядное число и расширение ".mpis". Один файл списка воспроизведения, показанный на фиг.10, установлен наименованием файла "00000. mpis".
Файлы данных клипа хранятся в каталоге CLIPINF. Каждый файл данных клипа установлен наименованием, сочетающим пятиразрядное число и расширение ".clip".
Три файла данных клипа на фиг.10 установлены наименованиями файлов "00001.clip", "00002.clip", "00003.clip" соответственно. В дальнейшем файлы данных клипа в соответствующих случаях будут именоваться файлами clip.
Например, файл clip "00001. clip" является файлом, описывающим данные, относящиеся к клипу видео основного вида.
Файл clip "00002.clip" является файлом, описывающим данные, относящиеся к клипу видео для вида D2.
Файл clip "00003.clip" является файлом, описывающим данные, относящиеся к клипу видео для вида D1.
Файлы потока хранятся в каталоге STREAM. Каждый файл потока установлен наименованием, сочетающим пятиразрядное число и расширение ".m2ts", или наименованием, сочетающим пятиразрядное число и расширение ".ilvt". В дальнейшем файлы, имеющие расширение ".m2ts", будут в соответствующих случаях именоваться файлами m2ts. Кроме того, файлы, имеющие расширение ".ilvt", будут именоваться файлами ilvt.
Файл m2ts "00001.m2ts" является файлом для 2D воспроизведения, и за счет определения этого файла осуществляется считывание видеопотока основного вида.
Файл m2ts "00002.m2ts" является файлом видеопотока проекции D2, а файл m2ts "00003.m2ts" является файлом видеопотока проекции D1.
Файл ilvt "l0000.ilvt" является файлом для воспроизведения B-D1, и за счет определения этого файла осуществляется считывание видеопотока основного вида и видеопотока проекции D1.
Файл ilvt "20000.ilvt" является файлом для воспроизведения B-D2, и за счет определения этого файла осуществляется считывание видеопотока основного вида и видеопотока проекции D2.
Кроме того, что показано на фиг.10, под каталогом BDMV также представлены каталоги, которые хранят файлы аудиопотоков и тому подобное.
Синтаксическая структура различных данных
Фиг.11 является схемой, иллюстрирующей синтаксическую структуру файла списка воспроизведения.
Файл списка воспроизведения является файлом, который хранится в каталоге PLAYLIST и установлен расширением ".mpls".
type_indicator на фиг.11 указывает тип файла "xxxxx.mpls".
version_number указывает номер версии "xxxx.mpls". version_number состоит из четырехразрядного числа, например, "0240", которое указывает, что это "3D Spec version", оно расположено в файле списка воспроизведения для 3D воспроизведения. Список воспроизведения, в котором описаны файлы списка воспроизведения, установленные "0240", описан позже 3D_PlayList.
PlayList_start_address указывает адрес заголовка в PlayList(), имеющий относительное количество байтов от заглавного байта в файле списка воспроизведения в качестве единиц.
PlayListMark_start_address указывает адрес заголовка в PlayListMark(), имеющий относительное количество байтов от заглавного байта в файле списка воспроизведения в качестве единиц.
ExtensionData_start_address указывает адрес заголовка в ExtensionData(), имеющий относительное количество байтов от заглавного байта в файле списка воспроизведения в качестве единиц.
Вслед за ExtensionData_start_address включен 160-разрядный reserved_for_future_use.
Параметры, относящиеся к управлению воспроизведением списка воспроизведения, такие как ограничения воспроизведения, хранятся в AppInfoPlayList().
Параметры, относящиеся к основной дорожке и вспомогательной дорожке и тому подобному, хранятся в PlayList(). Содержание PIayList() будет описано позже.
Данные метки списка воспроизведения, то есть данные, относящиеся к метке, которые представляют собой место назначения скачка (точку скачка) в работе пользователя или команде, которая указывает перескок главы или тому подобное, хранятся в PlayListMark().
ExtensionData() образован так, чтобы позволить ввести в него частные данные.
Фиг.12 является схемой, иллюстрирующей синтаксическую структуру PlayList() по фиг.11.
length является 32-разрядным целым числом без знака, которое показывает количество байтов от следующего непосредственно за length поля до конца PlayList(). To есть length указывает количество байтов от reserved_for_riiture_use до конца PlayList.
Следующим за length готовится 16-разрядный reserved_jfor_future_Lise.
number_of_PlayItems является 16-разрядным полем, указывающим количество Playltems в PlayList. В случае примера по фиг.9 количество Play Items равняется трем. Значение Playltem_id задается от нуля в том порядке, в котором PlayItem() появляется в PlayList. Например, на фиг.9 заданы Playltem_id=0, 1, 2.
number_of_SubPaths является 16-разрядным полем, указывающим количество вспомогательных дорожек в PlayList. В случае примера по фиг.9 количество вспомогательных дорожек равняется трем. Значение SubPath_id задается от нуля в том порядке, в котором SubPath() появляется в PlayList. Например, на фиг.9 заданы SubPath_id=0, 1, 2. В следующих затем операторах на PlayItem() ссылаются только для количества Playltems, а на SubPathQ ссылаются только для количества вспомогательных дорожек.
Фиг.13 является схемой, иллюстрирующей синтаксическую структуру SubPathQ по фиг.12.
length является 32-разрядным целым числом без знака, которое показывает количество байтов от следующего непосредственно за length поля до конца PlayList(). To есть length указывает количество байтов от reserved_for_future_use до конца PlayList.
Следующим за length готовится 16-разрядный reserved_for_future_use.
SubPath_type является 8-разрядным полем, указывающим тип применения вспомогательных дорожек. SubPath_type используется в случае указания, например, того, какой тип вспомогательной дорожки относится к аудио, буферу изображения или текстовому заголовку.
Следующим за SubPath_type готовится 15-разрядный reserved_for_ruture_use.
is_repeat_SubPath является однобитным полем, определяющим способ воспроизведения вспомогательной дорожки, и указывает, осуществляется ли воспроизведение вспомогательной дорожки повторно между воспроизведением основной дорожки или осуществить ли воспроизведение вспомогательной дорожки только один раз. Например, это используется в случае, когда тактирование воспроизведения клипа, на который ссылается основная дорожка, и клипа, на который ссылается вспомогательная дорожка (в случае, когда основная дорожка является дорожкой слайд-шоу видеокадров, а вспомогательная дорожка является дорожкой аудио, являющегося фоновой музыкой).
Следующим за is_repeat_SubPath готовится 8-разрядный reserved_for_future_use.
number_of_SubPlayItems является 8-разрядным полем, указывающим количество SubPlayItem в одной вспомогательной дорожке (количество входных данных). Например, number_of_SubPlayItems из SubPlayItems, где SubPath_id=0 на фиг.9, составляет 1, а number_of_SubPlayItems из SubPlayItems, где SubPath_id=1 на фиг.9, составляет 2. В дальнейшем на SubPlayItem() ссылаются только для количества SubPlayItems.
Фиг.14 является схемой, показывающей синтаксическую структуру SubPlayItem(i) по фиг.13.
length является 16-разрядным целым числом без знака, которое показывает количество байтов от следующего непосредственно за length поля до конца PlayList(). To есть length указывает количество байтов от reserved_for_future_use до конца SubPlayItem().
SubPlayItem (i) по фиг.14 описывает отдельно случай, когда SubPlayItem ссылается на один клип, и случай ссылки на множество клипов.
Будет описан случай, когда SubPlayItem ссылается на один клип.
Clip_Information_file_name [0] указывает имя файла данных клипа, на который ссылается SubPlayItem.
Clip_codec_identifier [0] указывает способ работы кодека клипа. Следующим за Clip_codec_identifier [0] готовится reserved_for_future_use.
is_multi_Clip-entries является флажком, указывающим наличие регистрации множества клипов. В случае если флажок is_multi_Clip-entries установлен, ссылаются на синтаксическую структуру в случае, если SubPlayItem ссылается на множество клипов.
ref_to_STC_id [0] является данными, относящимися к прерывистым точкам STC (прерывистым точкам системной временной развертки).
SubPlayItem_IN_time указывает начальное положение воспроизводимой части вспомогательной дорожки, a SubPlayItem_OUT_time указывает конечное положение.
sync_PlayItem_id и sync_start_PTS_of_PlayItem указывают заданный момент времени на временной оси основной дорожки, которую начинает проигрывать вспомогательная дорожка.
SubPlayItem_IN_time, SubPlayItem_OUT_time, sync_PlayItem_id и sync_startPTS_of_PlayItem используются совместно клипом, на который ссылается SubPlayItem.
Описание будет дано в случае, «если is_multi_Clip-entries=lb» и если SubPlayItem ссылается на множество клипов.
num_of_Clip_entries указывает количество клипов, на которые ссылаются. Количество Clip_Information_file_name [Subclip_entry_id] определяет количество клипов, исключая Clip_Information_file_name [0].
Clip_codec__identifier [SubClip_entry_id] указывает способ кодека клипа.
ref_to_STC_id [SubClip_entry_id] является данными, относящимися к прерывистым точкам STC (прерывистым точкам системной временной развертки). Следующим за ref_to_STC_id [SubClip_entry_id] готовится reserved_foi_future_use.
Фиг.15 является схемой, иллюстрирующей синтаксическую структуру PlayItem() по фиг.12.
length является 16-разрядным целым числом без знака, которое показывает количество байтов от следующего непосредственно за length поля до конца PlayItem().
Clip_Information_file_name [0] указывает наименование файла данных клипа, на который ссылается Playltem. Следует отметить, что такое же пятиразрядное число включено в наименование файла в файле m2ts, включающего в себя соответствующие ему клип и наименование файла в файле данных клипа.
Clip_codec_identifier [0] указывает способ работы кодека клипа. Следующим за Clip_codec_identifier [0] готовится reserved_for_future_use. Следующим за reserved_for_future_use включаются is_multi_angle и connection_condition.
ref_to_STC_id [0] является данными, относящимися к прерывистым точкам STC (прерывистым точкам системной временной развертки).
IN_time указывает начальное положение воспроизводимой части Playltem, a OUT_time указывает конечное положение.
Следующими за OUT_time включаются UO__mas_table(), Playltem_random_access_mode и still_mode.
Данные АВ потока, на которые ссылается объектная единица воспроизведения, включены в STN_table(). Кроме того, в случае, если имеется вспомогательная дорожка, которая подлежит воспроизведению способом, соотнесенным с объектной единицей воспроизведения, включаются также данные АВ потока, на которые ссылаются SubPlayItems, составляющие вспомогательную дорожку.
Фиг.16 является схемой, иллюстрирующей синтаксическую структуру STN_table() по фиг.15.
STN_table() устанавливается в качестве определяющего признака Playltem.
length является 16-разрядным целым числом без знака, которое показывает количество байтов от следующего непосредственно за length поля до конца PlayList(). Следующим за length готовится 16-разрядный reserved_for_future_use.
number_of_video_stream_entries указывает количество потоков, подлежащих введению (регистрации) в STN_table(), в котором представлен video_stream_id.
video_stream_id является данными для определения видеопотока. Например, видеопоток основного вида идентифицируется здесь посредством video_stream_id.
Идентификатор команд видеопотока зависимого вида может быть определен по STN_table() или найден посредством вычислений путем добавления заранее заданного значения к идентификатору команд видеопотока основного вида.
video_stream_number является номером видеопотока, которое используется для переключения видео и который можно видеть пользователю.
number_of_audio_stream_entries указывает число потоков первого аудиопотока, подлежащего вводу в STN_table(), где представлен audio_stream_id. audio_stream_id является данными для определения аудиопотока, a audio_stream_number является номером аудиопотока, который используется для переключения аудио и который можно видеть пользователю.
number_of_audio_stream2_entries указывает число потоков второго аудиопотока, подлежащего вводу в STN_table(), где представлен audio_stream_id2. audio_stream_id2 является данными для определения аудиопотока, a audio_stream_number является номером аудиопотока, который используется для переключения аудио и который можно видеть пользователю. В этом примере возможно переключение аудио, подлежащего воспроизведению.
numbei_of_PG_txtST_stream_entries указывает число потоков, подлежащих вводу в STN_table(), где представлен PG_txtST_stream_id. Сюда вводятся поток ПГ, имеющий заголовок побитного отображения, подлежащий кодированию на основе длин серий, и текстовый файл заголовка (txtST). PG_txtST_stream_id является данными для определения потока заголовка, a PG_txtST_stream_number является номером потока заголовка, который используется для переключения заголовков и который можно видеть пользователю.
number_pf_IG__stream_entries указывает число потоков, подлежащих вводу в STN_table(), где представлен IG_stream_id. Сюда вводятся потоки ИГ. IG_stream_id является данными для определения потока ИГ, a IG_stream_number является номером потока графики, который используется для переключения графики и который можно видеть пользователю.
Идентификаторы основного транспортного потока и вспомогательного транспортного потока также регистрируются в STN_table(). То обстоятельство, что их идентификатор является идентификатором транспортного потока и не единичным потоком, описывается в stream_attribute().
Конкретный пример списка воспроизведения
Фиг.17 является схемой, иллюстрирующей конкретный пример 3D_PlayList, который является списком для 3D воспроизведения.
Для простоты описания число и ":", указывающее номер строки, показаны слева на фиг.17. Число и ":" здесь не составляют 3D_PlayList.
number_of_PlayItems во второй строке соответствует number_of_PlayItems на фиг.12 и указывает количество единиц воспроизведения в 3D_PlayList. Co второй строки до восьмой строки находятся описания, относящиеся к единицам воспроизведения. То есть строки с третьей до восьмой соответствуют описаниям единиц воспроизведения, использующим дальнейшие предложения на фиг.12.
ref_to_B_clpi_file_name в пятой строке соответствует Clip_Information_file_name [0] на фиг.15 и указывает, за исключением расширения ".m2ts", пятиразрядное число наименования файла в файле m2ts, хранящемся в видеопотоке основного вида. Таким описанием идентифицируются файл m2ts, на который должны ссылаться, и файл clpi видеоклипа основного вида.
type в шестой строке показывает видео основного вида и тип размещения на оптическом диске 202 связанных с ним видеоданных вида D1/D2. type устанавливается с помощью reserved_for_future_use, который, например, следует за Clip_codec_identifier [0] на фиг.15.
Фиг.18 является схемой, иллюстрирующей значение type.
То, что значение type составляет 0, указывает, что видео основного вида, видео для вида D1 и видео для вида D2 не перемежаются.
В этом случае оба из существующих видео для вида D1/D2 или один из пакетов мультиплексируются в один транспортный поток MPEG2 вместе с пакетом видео основного вида.
То, что значение type составляет 1, указывает, что перемежаются видео основного вида, видео для вида D1 и видео для вида D2.
В этом случае три транспортных потока из первого транспортного потока, который включает в себя видео для вида В, второй транспортный поток, который включает в себя видео для вида D1, и третий транспортный поток, который включает в себя видео для вида D2, перемежаются на оптическом диске 202 в приращениях интервалов.
То, что значение type составляет 2, указывает, что перемежаются видео основного вида и видео для вида D1.
В этом случае два транспортных потока из первого транспортного потока, который включает в себя видео для вида В, и второй транспортный поток, который включает в себя пакет видео для вида D1, перемежаются на оптическом диске 202 в приращениях интервалов. Пакет видео для вида D2 может быть мультиплексирован в первом транспортном потоке. Также пакет видео для вида D2 может быть мультиплексирован во втором транспортном потоке.
То, что значение type составляет 3, указывает, что перемежаются видео основного вида и видео для вида D2.
В этом случае два транспортных потока из первого транспортного потока, который включает в себя пакет видео для вида В, и второй транспортный поток, который включает в себя пакет видео для вида D2, перемежаются на оптическом диске 202 в приращениях интервалов. Пакет видео для вида D1 может быть мультиплексирован в первом транспортном потоке. А также пакет видео для вида D1 может не быть мультиплексирован во втором транспортном потоке.
Возвращаясь к описанию по фиг.17, STN_table в седьмой строке соответствует STN_table() на фиг.15. Как описано в отношении фиг.16, идентификатор каждого потока, на который дается ссылка в 3D_PlayList, описывается в STN_table.
number_of_SubPaths в девятой строке соответствует number_of_SubPaths на фиг.12 и указывает количество SubPaths в 3D_PlayList. С девятой строки до четырнадцатой строки находятся описания, относящиеся к вспомогательной дорожке. То есть строки с десятой до четырнадцатой соответствуют описаниям вспомогательной дорожки, использующим дальнейшие предложения на фиг.12.
SubPath_type в двенадцатой строке соответствует SubPath_type на фиг.13 и показывает тип вспомогательной дорожки.
Фиг.19 является схемой, иллюстрирующей значение SubPath_type.
Для описания того, какое из различных значений, показанных на фиг.19, является первичным, то обстоятельство, что значение SubPath_type составляет 8, указывает на то, что эта вспомогательная дорожка воспроизводит видео для вида D2.
Кроме того, то обстоятельство, что значение SubPath_type составляет 9, указывает на то, что эта вспомогательная дорожка воспроизводит видео для вида D1.
ref_to_clpi_file_name в тринадцатой строке на фиг.17 соответствует Clip_Information_file_name [0] на фиг.14.
В случае когда вспомогательная дорожка воспроизводит видео для вида D1, ref_to_clpi_file_name указывает, за исключением расширения ".m2ts", пятиразрядное число наименования файла в файле m2ts, хранящемся в видео для вида D1. Таким описанием определяется файл clip, на который делается ссылка.
С другой стороны, в случае, когда SubPath2 воспроизводит видео для вида D2, ref_to_clpi_file_name в тринадцатой строке указывает, за исключением расширения ".m2ts", пятиразрядное число наименования файла в файле m2ts, хранящемся в видео для вида D2.
С шестнадцатой строки до тридцатой строки находится описание, относящееся к interleaved_file_info(), то есть файл ilvt. Например, готовится описание, относящееся к файлу ilvt, с помощью reserved_for_mture_use в Playltem() и SubPath().
С семнадцатой строки до двадцать второй строки находится описание для случая, когда значение type в шестой строке составляет 1 и когда перемежаются видео основного вида, видео для вида D1 и видео для вида D2.
ref_to_D1-B_interleaved_file_name в восемнадцатой строке указывает, за исключением расширения ".ilvt", пятиразрядное число наименования файла в файле ilvt для воспроизведения видео основного вида и видео для вида D1.
ref_to_D2-B_interleaved_file__name в девятнадцатой строке указывает, за исключением расширения ".ilvt", пятиразрядное число наименования файла в файле ilvt для воспроизведения видео основного вида и видео для вида D2.
ref_to_D1_clpi_file_name в двадцатой строке указывает, за исключением расширения ".m2ts", пятиразрядное число наименования файла для файла m2ts, хранящего видео для вида D1. При таком описании идентифицируется файл clip, на который делается ссылка во время воспроизведения файла m2ts видео для вида D1.
ref_to_D2_clpi_nle_name в двадцать первой строке указывает, за исключением расширения ".m2ts", пятиразрядное число наименования файла для файла m2ts, хранящего видео для вида D2. При таком описании идентифицируется файл clip, на который делается ссылка во время воспроизведения файла m2ts видео для вида D2.
С двадцать третьей строки по двадцать шестую строку находится описание, на которое делается ссылка в случае, когда значение типа в шестой строке равно 2 и видео для основного вида и видео для вида D1 перемежены.
ref_to_D1-B_interleaved_file_name в двадцать четвертой строке указывает, за исключением расширения ".ilvt", пятиразрядное число наименования файла ilvt для воспроизведения видео для основного вида и видео для вида D 1.
ref_to_D1_clpi_file_name в двадцать пятой строке указывает, за исключением расширения ".m2ts", пятиразрядное число наименования файла для файла m2ts, хранящего видео для вида D1. При таком описании идентифицируется файл clip, на который делается ссылка во время воспроизведения файла m2ts видео для вида D1.
С двадцать седьмой строки по тридцатую строку находится описание, на которое делается ссылка в случае, когда значение типа в шестой строке равно 3 и видео для основного вида и видео для вида D2 перемежены.
ref_to_D1-B_interleaved_file_name в двадцать шестой строке указывает, за исключением расширения ".ilvt", пятиразрядное число наименования файла ilvt для воспроизведения видео для основного вида и видео для вида D2.
ref_to_D2_clpi_file_name в двадцать девятой строке указывает, за исключением расширения ".m2ts", пятиразрядное число наименования файла для файла m2ts, хранящего видео для вида D2. При таком описании идентифицируется файл clip, на который делается ссылка во время воспроизведения файла m2ts видео для вида D2.
Таким образом, в случае, если данные на оптическом диске 202 перемежены, в 3D_Playlist описаны данные, по которым можно идентифицировать наименование файла для файла clip, соответствующего АВ потоку клипа, для видео для вида D1 и видео для вида D2.
Пример выполнения воспроизводящего устройства 201
Фиг.20 является блок-схемой, иллюстрирующей пример выполнения воспроизводящего устройства 201.
Контроллер 251 исполняет управляющую программу, которую готовят заранее, и управляет операциями воспроизводящего устройства 201.
Например, контроллер 251 управляет дисководом 252 для считывания файла списка воспроизведения для 3D воспроизведения. Кроме того, контроллер 251 вызывает считывание основного транспортного потока и вспомогательного транспортного потока на основе идентификаторов, зарегистрированных в STN_table, и подает их в декодирующий блок 256.
Дисковод 252 считывает данные с оптического диска 202 под управлением контроллера 251 и выводит считанные данные в контроллер 251, память 253 или декодирующий блок 256.
Память 253 хранит данные и так далее, необходимые для контроллера 251, чтобы по мере необходимости исполнять требуемые типы обработки.
Местная память 254 выполнена, например, в виде накопителя на жестком диске (HDD). Видеопотоки для видов D1/D2 и так далее, которые загружаются с сервера 272, записываются в местную память 254, Потоки, записанные в местную память 254, также подаются по мере необходимости в декодирующий блок 256.
Интерфейс 255 интернета осуществляет связь с сервером 272 по сети 271 под управлением контроллера 251 и подает данные, загруженные из сервера 272, в местную память 254.
Из сервера 272 загружаются данные для обновления данных, записанных на оптическом диске 202. Загруженные видеопотоки для видов D1/D2 можно использовать вместе с видеопотоками основного вида, записанными на оптический диск 202, благодаря чему можно реализовать 3D воспроизведение контента, отличного от контента на оптическом диске 202. Когда видеопотоки для видов D1/D2 загружены, по мере необходимости обновляется также содержание списка воспроизведения.
Декодирующий блок 256 декодирует потоки, поданные с дисковода 252 или из местной памяти 254, и выводит полученный видеосигнал на отображающее устройство 203. Аудиосигнал также выводится на отображающее устройство 203 по заранее заданному тракту.
Блок 257 оперативного ввода выполнен из таких устройств, как кнопки, клавиши, сенсорная панель, поворотный переключатель, мышь и так далее, и приемного блока, который принимает такие сигналы, как инфракрасные лучи, которые передаются с дистанционного блока управления. Блок 257 оперативного ввода распознает операции пользователя и подает сигналы, показывающие содержание распознанных операций, в контроллер 251.
Фиг.21 является схемой, иллюстрирующей пример выполнения декодирующего блока 256.
Разделяющий блок 281 под управлением контроллера 251 разделяет поданные с дисковода 252 данные на данные пакетов, составляющих основной транспортный поток, и данные пакетов, составляющих вспомогательный транспортный поток. Например, считанный с оптического диска 202 транспортный поток подается в разделяющий блок 281 на основе идентификаторов потоков, описанный в STN_table() в файле списка 3D воспроизведения.
Разделяющий блок 281 выводит и сохраняет разделенные пакеты, составляющие основной транспортный поток, в буфер 282 считывания и выводит и сохраняет пакеты, составляющие вспомогательный транспортный поток, в буфер 285 считывания.
Кроме того, разделяющий блок 281 выводит и сохраняет пакеты, составляющие вспомогательный транспортный поток, поданный из местной памяти 254, в буфер 285 считывания.
Как описано выше, имеют место случаи, в которых видео для видов D1/D2, загруженное из сервера 272, сохраняется в местной памяти 254. По команде воспроизведения вместе с видео основного вида, записанным на оптический диск 202, видеопотоки для видов D1/D2, служащие в качестве вспомогательного транспортного потока, считываются из местной памяти 254 и подаются в разделяющий блок 281.
Фильтр 283 пакетных идентификаторов (PID) назначает пакеты, составляющие основной транспортный поток, хранящийся в буфере 282 считывания, на основе пакетных идентификаторов, установленных в каждом пакете. Пакетные идентификаторы пакетов, составляющих видеопоток основного вида, пакетные идентификаторы пакетов, составляющих видео для вида D1, и пакетные идентификаторы пакетов, составляющих видео для вида D2, определяются каждый контроллером 251.
Фильтр 283 пакетных идентификаторов считывает видеопакеты основного вида, включенные в основной транспортный поток, из буфера 282 считывания и выводит и сохраняет их в буфере 284 элементарного потока (ES). Элементарный поток, составленный из видеопакетов основного вида, сохраняется в буфере 284 элементарного потока.
Кроме того, в случае, когда видеопакеты для видов D1/D2 мультиплексируются в основном транспортном потоке, их пакеты выделяются на основе пакетных идентификаторов и выводятся на коммутатор 287.
Фильтр 286 пакетных идентификаторов считывает видеопакеты для видов D1/D2, включенные во вспомогательный транспортный поток, из буфера 285 считывания и выводит их на коммутатор 287.
Отметим, что описывается обработка только для видео основного потока и видео для видов D1/D2, но, как описано со ссылкой на фиг.5, в основном транспортном потоке могут быть мультиплексированы такие графические данные, как ПГ (презентационная графика) и ИГ (интерактивная графика). Аналогично, как описано со ссылкой на фиг.6, во вспомогательном транспортном потоке могут быть также мультиплексированы данные субтитров и графические данные иные, нежели видео для видов D1/D2.
Фильтр 283 пакетных идентификаторов и фильтр 286 пакетных идентификаторов назначают их данные на основе пакетного идентификатора и выводят их в заранее заданные выходные адреса назначения. Декодер для декодирования графических данных или тому подобного соединяется с выводом (кружочком) выходного адреса назначения, показанным в блоке фильтра 283 пакетных идентификаторов и фильтра 286 пакетных идентификаторов на фиг.21.
Коммутатор 297 выводит и сохраняет видеопакеты для видов D1/D2, поданные из фильтра 283 пакетных идентификаторов, в буфер 288 элементарного потока. Кроме того, коммутатор 287 выводит и сохраняет видеопакеты для видов D1/D2, поданные из фильтра 286 пакетных идентификаторов, в буфер 288 элементарного потока. Элементарный поток, составленный из видеопакетов для видов D1/D2, сохраняется в буфере 288 элементарного потока.
Коммутатор 289 выводит в декодер 290 видеопакеты основного вида, хранящиеся в буфере 284 элементарного потока, и пакеты, которые должны подвергнуться декодированию в видеопакетах для видов D1/D2, хранящихся в буфере 288 элементарного потока. Данные момента времени, такие как временная метка декодирования (DTS), устанавливаются в пакете PES из видео основного вида и видео для видов D1/D2, и считывание выполняется из буфера на основе их данных момента времени.
Видеодекодер 290 декодирует пакеты, поданные из коммутатора 289, и выводит данные из видео основного вида или видео для видов D1/D2, полученные при декодировании.
Пример 1 из 3D_Playlist
Фиг.22 является схемой, показывающей пример 3D_PlayList.
3D_Playlist, описанный в файле "00000.mpls" списка воспроизведения на фиг.22, представляет собой список воспроизведения, который контролирует воспроизведение оптического диска 202, в котором перемежены видео основного вида, видео для вида D1 и видео для вида D2. Т.е. значение типа равно 1.
В примере по фиг.22 ref_to_B_clpi_file_name из Playltem() равно "00001". Из этого описания в случае воспроизведения "00001.m2ts", который является файлом m2ts видео основного вида, идентифицируется ссылка на файл clip "00001. clip" по фиг.10.
Кроме того, SubPath_type из SubPath() [1] равен "9". Тот факт, что SubPath_type равен "9", указывает, что первый SubPath здесь представляет собой вспомогательный тракт для воспроизведения видео для вида D2.
ref_to_clip_Hle_name из SubPath() [1] равен "00002". Из этого описания в случае воспроизведения видео для вида D2 идентифицируется ссылка на файл clip "00002. clip" по фиг.10.
SubPath_type из SubPath() [2] равен "8". Тот факт, что SubPathJype равен "8", указывает, что первый SubPath здесь представляет собой вспомогательный тракт для воспроизведения видео для вида D1.
ref_to_clpi_file_name из SubPath() [2] равен "00003". Из этого описания в случае воспроизведения видео для вида D1 идентифицируется ссылка на файл clip "00003. clip" по фиг.10.
ref_to_D1-B_interleaved_file_name из interleaved_file_info() равен "10000". Из этого описания в случае выполнения воспроизведения D1-B идентифицируется ссылка на файл ilvt "10000.ilvt" по фиг.10.
ref_to_D2-B_interieaved_file_name из interleaved_file_info() равен "20000". Из этого описания в случае выполнения воспроизведения D2-B идентифицируется ссылка на файл ilvt "20000.ilvt" по фиг.10.
ref_to_Dl_clpi_file_name равен "00003". Из этого описания в случае воспроизведения видео для вида D1 идентифицируется ссылка на файл clip "00003.clip" по фиг.10.
ref_to_D2_clpi_Hle_name равен "00002". Из этого описания в случае воспроизведения видео для вида D2 идентифицируется ссылка на файл clip "00002.clip" по фиг.10.
Фиг.23 является схемой, показывающей синтаксическую структуру файла clip, используемого вместе с 3D_Playlist по фиг.22.
Вид А на фиг.23 является схемой, показывающей пример файла clip "00001.clip". Как описано выше, файл clip "00001.clip" представляет собой файл, на который должна делаться ссылка в случае воспроизведения "00001.m2ts", который является файлом m2ts видео основного вида.
number_of_source_packets1 указывает количество исходных пакетов, включенных в файл m2ts "00001.m2ts".
EP_map указывает данные положения точки входа (ЕР) в транспортном потоке в файле "m2ts "00001.m2ts".
chunk_map() указывает количество исходных пакетов (SPN), указывающее начальное положение для каждого фрагмента по порядку от заголовочного пакета для транспортного потока, включенного в файл m2ts "00001.m2ts".
фрагмент принадлежит одному транспортному потоку и представляет собой набор исходных пакетов, которые непрерывно размещены на оптическом диске 202. Теперь будет дано описание для одного фрагмента, применимое к интервалу, расположенному на оптическом диске 202.
chunk_map() указывает длину каждого фрагмента. Конкретный пример chunk_map() будет описан позже.
Вид В на фиг.23 является схемой, показывающей пример файла clip "00002.clip". Файл clip "00002.clip" представляет собой файл, на который должна делаться ссылка в случае воспроизведения видео для вида D2.
Вид С на фиг.23 является схемой, показывающей пример файла clip "00003.clip". Файл clip "00003.clip" представляет собой файл, на который должна делаться ссылка в случае воспроизведения видео для вида D1. Содержание описания вида В по фиг.23 и вида С по фиг.23 такие же, как показано на виде А по фиг.23.
Фиг.24 является схемой, показывающей принцип управления файлами, который осуществляется с помощью данных по фиг.22 и фиг.23.
Как показано на фиг.24, управление файлами осуществляется в виде трехуровневой конфигурации из физического уровня, уровня файловой системы и прикладного уровня. 3D_PlayList по фиг.22 и файл clip по фиг.23 являются данными прикладного уровня.
Физический уровень представляет собой уровень оптического диска 202, в котором видео основного вида, видео для вида D1 и видео для вида D2 записаны в состоянии перемежения.
В примере по фиг.24 фрагмент видео для вида D1, фрагмент видео для вида D2 и фрагмент видео основного вида расположены по порядку. На фиг.24 блок, обозначенный буквой "В", указывает фрагмент видео основного вида, блок, обозначенный буквой "D1", указывает фрагмент видео для вида D1, а блок, обозначенный буквой "D2", указывает фрагмент видео для вида D2.
Таким образом, интервалы (фрагменты) видео основного вида, видео для вида D1 и видео для вида D2 расположены так, чтобы перемежаться на оптическом диске 202. Перемеженное расположение означает циклическое расположение, в котором интервалы одного и того же типа в потоке не являются смежными.
В уровне файловой системы потоковый файл (файл m2ts, файл ilvt), определенный приложением с наименованием файла, и различные фрагменты на оптическом диске 202 коррелированы. Файловая система представляет собой, например, файловую систему UDF.
Как показано на фиг.24, файл m2ts "00001.m2ts" составлен из фрагментов видео основного вида, расположенных на оптическом диске 202.
Кроме того, файл m2ts "00002.m2ts" составлен из фрагментов видео для вида D2, расположенных на оптическом диске 202.
Файл m2ts "00003.m2ts" составлен из фрагментов видео для вида D1, расположенных на оптическом диске 202.
Файл "20000.ilvt" составлен из фрагментов видео для вида D2 и фрагментов видео основного вида, расположенных на оптическом диске 202.
Файл "10000.ilvt" составлен из фрагментов видео для вида D1 и фрагментов видео основного вида, расположенных на оптическом диске 202.
В случае когда "00001.m2ts" определен приложением и считанным данным дается команда на выполнение 2D воспроизведения, фрагмент видео основного вида считывается в соответствии с управлением от файловой системы.
Кроме того, в случае, когда "10000.ilvt" определен приложением и считанным данным дается команда на выполнение B-D1 воспроизведения, фрагмент видео для вида D1 и фрагмент видео основного вида считываются в соответствии с управлением от файловой системы.
В случае когда "20000.ilvt" определен приложением и считанным данным дается команда на выполнение B-D2 воспроизведения, фрагмент видео для вида D2 и фрагмент видео основного вида считываются в соответствии с управлением от файловой системы.
Рабочий пример 1
Теперь, со ссылкой на блок-схему алгоритма по фиг.25 будет описана обработка воспроизведения, которая осуществляется в соответствии с файлом 3D_PlayList по фиг.22.
На этапе S1 контроллер 251 подтверждает из значения типа, что видео основного вида, видео для вида D1 и видео для вида D2 перемежены.
В этом случае на этапе S2 управление переходит к считыванию interleaved_file_info().
На этапе S3 контроллер 251 определяет, дана ли команда на B-D1 воспроизведение, на основе операций пользователя и так далее.
В случае если на этапе S3 определено, что дана команда на B-D1 воспроизведение, на этапе S4 контроллер 251 указывает "10000.ilvt" (ref_to_D1-B_interleaved_file_name), описанный в interleaved_file_info(), и вызывает считывание фрагмента видео основного вида и фрагмента видео для вида D1 с оптического диска 202 посредством файловой системы UDF.
Фрагмент видео основного вида и фрагмент видео для вида D1, которые считаны дисководом 252, подаются в разделяющий блок 281 декодирующего блока 256.
На этапе S5 разделяющий блок 281 разделяет поданные данные на данные файла m2ts "00001.m2ts" и данные файла m2ts "00003.m2ts" на основе chunk_map() из "00001. clip" (ref_to_B_clpi_file_name) и chunk_map() из "00003.clpi" (ref_to_D1_clpi_file_name) по фиг.23. Разделяющий блок 281 выводит данные файла m2ts "00001.m2ts" в буфер 282 считывания и выводит данные файла m2ts "00003.m2ts" в буфер 285 считывания. Разделение данных, выполняемое с помощью chunk_map(), будет описано позже.
Данные файла m2ts "00001.m2ts", хранящиеся в буфере 282 считывания, подаются в декодер 290 через фильтр 283 пакетных идентификаторов, буфер 284 элементарного потока и коммутатор 289. Данные файла m2ts "00003.m2ts", хранящиеся в буфере 285 считывания, подаются в декодер 290 через фильтр 286 пакетных идентификаторов, коммутатор 287, буфер 288 элементарного потока и коммутатор 289.
На этапе S6 декодер 290 декодирует (воспроизводит) пакеты, которые последовательно подаются из коммутатора 289.
С другой стороны, в случае, когда на этапе S3 определено, что не было команды на B-D1 воспроизведение, т.е. в случае, когда определено, что дана команда на B-D2 воспроизведение, на этапе S7 контроллер 251 указывает "20000. ilvt" (ref_to_D2-B_interleaved_file_name), описанный в interleaved_file_info(), и вызывает считывание фрагмента видео основного вида и фрагмента видео для вида D2 с оптического диска 202 посредством файловой системы UDF.
На этапе S8 разделяющий блок 281 разделяет поданные данные на данные файла m2ts "00001.m2ts" и данные файла m2ts "00002.m2ts" на основе chunk_map() из "00001.clip" (ref_to_B_clpi_file_name) и chunk_map() из "00002.clpi" (ref_to_D2_clpi_file_name). Разделяющий блок 281 выводит данные файла m2ts "00001.m2ts" в буфер 282 считывания и выводит данные файла m2ts "00002.m2ts" в буфер 285 считывания.
После этого данные файла m2ts "00001.m2ts" и данные файла m2ts "00002.m2ts" подаются в декодер 290 аналогично тому, как они подаются во время B-D1 воспроизведения и воспроизводятся на этапе S6.
Разделение данных с помощью chunk_map()
Фиг.26 является схемой, показывающей пример синтаксической структуры chunk_map().
number_of_chunks указывает количество фрагментов, на которые должна делаться ссылка. После number_of_chunks описываются данные фрагментов только для указанного здесь количества.
SPN_chunk_start [i] указывает количество исходных пакетов (SPN) (длину) с начальным положением заголовочного фрагмента в качестве основы, например, от положения его основы до начального положения каждого фрагмента. Количество исходных пакетов до начального положения каждого фрагмента описывается по порядку от заголовочного фрагмента.
Фиг.27 является схемой, показывающей конкретный пример chunk_map().
Вид А на фиг.27 представляет собой chunk_map(), описанный в файле clip "00001.clip", в котором number_of_chunks равно (n+1).
Кроме того, SPN_chunk_start [i] равен 0, с1, с2, …, cn.
Первое значение 0, как показано на виде С по фиг.28, указывает, что количество исходных пакетов равно 0, а начальное положение заголовочного фрагмента видео основного вида включено в файл m2ts "00001.m2ts" в качестве основы от положения его основы до начального положения первого фрагмента (В[0]).
Второе значение с1 указывает, что количество исходных пакетов от положения основы до начального положения второго фрагмента (В[1]) равно с1.
Третье значение с2 указывает, что количество исходных пакетов от положения основы до начального положения второго фрагмента (В[2]) равно с2.
(n+1)-е значение cn указывает, что количество исходных пакетов от положения основы до начального положения (n+1)-го фрагмента (В[n]) равно cn.
Вид В на фиг.27 представляет собой chunk_map(), описанный в файле clip "00002.clip", в котором number_of_chunks равно (n+1).
Кроме того, SPN_chunk_start [i] равен 0, b1, b2, …, bn.
Первое значение 0, как показано на виде В по фиг.28, указывает, что количество исходных пакетов равно 0, а начальное положение заголовочного фрагмента видео для вида D2 включено в файл m2ts "00002.m2ts" в качестве основы от положения его основы до начального положения первого фрагмента (D2[0]).
Второе значение b1 указывает, что количество исходных пакетов от положения основы до начального положения второго фрагмента (D2[1] равно b1.
Третье значение b2 указывает, что количество исходных пакетов от положения основы до начального положения второго фрагмента (D2[2]) равно b2.
(n+1)-е значение bn указывает, что количество исходных пакетов от положения основы до начального положения (n+1)-го фрагмента (D2[n]) равно bn.
Вид С на фиг.27 представляет собой chunk_map(), описанный в файле clip "00003. clip", в котором number_of_chunks равно (n+1).
Кроме того, SPN_chunk_start [i] равен 0, а1, а2, …, an.
Первое значение 0, как показано на виде А по фиг.28, указывает, что количество исходных пакетов равно 0, а начальное положение заголовочного фрагмента видео для вида D1 включено в файл m2ts "00003.m2ts" в качестве основы от положения его основы до начального положения первого фрагмента (D1[0]).
Второе значение а1 указывает, что количество исходных пакетов от положения основы до начального положения второго фрагмента (D1[1]) равно а1.
Третье значение а2 указывает, что количество исходных пакетов от положения основы до начального положения второго фрагмента (D1[2]) равно а2.
(n+1)-е значение an указывает, что количество исходных пакетов от положения основы до начального положения (n+1)-го фрагмента (D1[n] равно an.
D1[i], D2[i] и B[i] расположены циклически на оптическом диске 202 в порядке, показанном на виде D по фиг.28.
В случае когда данные, считанные с оптического диска 202, подаются из дисковода 252, разделяющий блок 281 отделяет данные значения количества исходных пакетов, которое равняется а1, от заголовка поданных данных как D1[0] на основе описания three_chunk_map() по фиг.27.
Кроме того, разделяющий блок 281 отделяет значение количества исходных пакетов данных, эквивалентное b1, от положения в конце D1[0] как D2[0] и отделяет значение количества исходных данных, эквивалентное с1, от положения в конце D2[0] как В[0].
Разделяющий блок 281 отделяет значение количества исходных пакетов данных, эквивалентное а2-а1, от положения в конце В[0] как D1[1].
Разделяющий блок 281 отделяет значение количества исходных пакетов данных, эквивалентное b2-b1, от положения в конце D1[1] как D2[1] и отделяет значение количества исходных пакетов данных, эквивалентное с2-с1, от положения в конце D2[1] как В[1].
Отметим, что фрагментами, которые должны подвергнуться разделению, являются только D1[i] и B[i] в случае выполнения B-D1 воспроизведения, и являются только D2[i] и B[i] в случае выполнения B-D2 воспроизведения.
Таким образом, разделение данных разделяющим блоком 281 выполняется с помощью данных длины каждого фрагмента, описанного в chink_map().
Будет приведено дополнительное описание chunk_map().
Когда тип = 0, chunk_map() является опциональным (не необходимым) для того, чтобы на файл clip делалась ссылка от ref_to_B_clpi_file_name. В случае когда имеется chunk_map(), плейер должен игнорировать его chunk_map().
Кроме того, chunk_map() является опциональным (не необходимым) для файла clip, соответствующего файлу m2ts в местной памяти 254. В случае когда имеется chunk_map(), плейер должен игнорировать его chunk_map().
Когда тип = 1, соответствующие три транспортных потока из транспортного потока видео основного вида, транспортного потока видео для вида D1 и транспортного потока видео для вида D2 разделяются каждый на фрагменты одного и того же количества (n+1) соответственно. Т.е. для D1[i], D2[i] и B[i] по фиг.28 фрагменты пары с одним и тем же значением индекса i разделяются так, чтобы иметь одно и то же время воспроизведения.
Аналогично, когда тип = 2, соответствующие два транспортных потока из транспортного потока видео основного вида и транспортного потока видео для вида D1 разделяются каждый на фрагменты одного и того же количества (n+1) соответственно. Т.е. для перемеженных D1[i], B[i] фрагменты пары с одним и тем же значением индекса i разделяются так, чтобы иметь одно и то же время воспроизведения.
Когда тип = 3, соответствующие два транспортных потока из транспортного потока видео основного вида и транспортного потока видео для вида D2 разделяются каждый на фрагменты одного и того же количества (n+1) соответственно. Т.е. для перемеженных D2[i], B[i] фрагменты пары с одним и тем же значением индекса i разделяются так, чтобы иметь одно и то же время воспроизведения.
Пример 2 для 3D_PlayList
Фиг.29 является схемой, показывающей другой пример 3D_PlayList.
3D_PlayList, описанный в файле PlayList из "0000.mpls" по фиг.29, представляет собой список воспроизведения, управляющий воспроизведением оптического диска 202, в котором перемежены видео основного вида и видео для вида D2, т.е. значение типа составляет 3.
За исключением пункта, в котором описание SubPath является всего лишь описанием ссылающегося на SubPath видео для вида D2, и пункта, который описывает отличия interleaved_file_info(), описание 3D_PlayList по фиг.29 аналогично описанию по фиг.22.
То есть SubPathJype для SubPath() равен "9". Тот факт, что SubPathJype равен "9", указывает на то, что здесь SubPath является вспомогательным трактом, воспроизводящим видео для вида D2.
Кроме того, ref_to_clpi_file_name равен "00002".
ref_to_D2-B_interleaved_file_name из interleaved_file_info() по фиг.29 равен "20000". Из этого описания в случае выполнения D2-B воспроизведения идентифицируется ссылка на файл ilvt "20000. ilvt" по фиг.10.
Кроме того, ref_to_D2_clpi_file_name равен "00002". Из этого описания в случае выполнения воспроизведения видео для вида D2 идентифицируется ссылка на файл clip "00002.clpi" по фиг.10.
Фиг.30 является схемой, иллюстрирующей синтаксическую структуру файла clip, который используется вместе с 3D_PlayList по фиг.29.
Вид А на фиг.30 является схемой, показывающей пример файла clip "00001. clip", a вид В на фиг.30 является схемой, показывающей пример файла clip "00002.clpi". В любой файл clip включаются ЕР_map и приведенное выше описание chunk_map().
Фиг.31 является схемой, показывающей принцип управления файлами, который выполняется с помощью данных по фиг.29 и фиг.30.
Как иллюстрируется на фиг.31, физический уровень представляет собой уровень оптического диска 202, в котором в перемеженном состоянии записаны видео основного вида и видео для вида D2.
Файл m2ts "00001.m2ts" составлен из фрагментов видео основного вида, расположенных на оптическом диске 202.
Кроме того, файл m2ts "00002.m2ts" составлен из фрагментов видео для вида D2, расположенных на оптическом диске 202.
Файл ilvt "20000. ilvt" составлен из фрагментов видео для вида D2 и фрагментов видео для основного вида, расположенных на оптическом диске 202.
В случае когда "00001.m2ts" определяется приложением и дается команда на выполнение 2D воспроизведения считанных данных, фрагмент видео основного вида считывается в соответствии с управлением от файловой системы.
В случае когда "20000.ilvt" определяется приложением и дается команда на выполнение B-2D воспроизведения считанных данных, фрагмент видео для вида D2 и фрагмент видео основного вида считываются в соответствии с управлением от файловой системы.
Рабочий пример 2
Обработка воспроизведения, которая осуществляется согласно файлу 3D_PlayList по фиг.29, будет описана со ссылкой на блок-схему алгоритма по фиг.32.
На этапе S11 контроллер 251 подтверждает из значения типа, что видео основного вида и видео для вида D2 перемежены.
В этом случае на этапе S12 контроллер 251 переходит к считыванию interleaved_file_info().
В случае когда дана команда на B-D2 воспроизведение, на этапе S13 контроллер 251 определяет "20000.ilvt" (ref_to_D2-B_interleaved_file_name), описанный в interleaved_file_info(), и вызывает считывание с оптического диска 202 фрагментов видео основного вида и фрагментов видео для вида D2.
Фрагменты видео основного вида и фрагменты видео для вида D2, считанные дисководом 252, подаются в разделяющий блок 281 декодирующего блока 256.
На этапе S14 разделяющий блок 281 разделяет поданные данные на данные файла m2ts "00001.m2ts" и данные файла m2ts "00002.m2ts" на основе chunk_map() из "00001.clip" (ref_to_B_clpi_file_name) и chunk_map() из "00002.clpi" (ref_to_D2_clpi_file_name). Разделяющий блок 281 выводит данные файла "00001. clip" в буфер 282 считывания и выводит данные файла "00002.clpi" в буфер 285 считывания.
Данные файла "00001. clip", хранящиеся в буфере 282 считывания, подаются в декодер 290 через фильтр 283 пакетных идентификаторов, буфер 284 элементарного потока и коммутатор 289. С другой стороны, данные из файла "00002.m2ts", хранящиеся в буфере 285 считывания, подаются в декодер 290 через фильтр 286 пакетных идентификаторов, коммутатор 287, буфер 288 элементарного потока и коммутатор 289.
На этапе S15 декодер 290 декодирует пакеты, последовательно подаваемые из коммутатора 289.
Пример 3 для 3D PlayList
Фиг.33 является схемой, показывающей еще один 3D_PlayList.
3D_PlayList, описанный в файле PlayList из "00000.mpIs" по фиг.33, представляет собой список воспроизведения для управления воспроизведением видео основного вида и видео для вида D2, записанных на оптическом диске 202, и видео для вида D1, записанного в местной памяти 284. На оптическом диске 202 видео основного вида и видео для вида D2 перемежены.
Значение типа из Play Item() равно 3, поскольку это указывает тип расположения данных на оптическом диске 202.
SubPathJype для SubPath() [1] равен "9". Тот факт, что SubPath_type равен "9", указывает на то, что здесь первый SubPath является вспомогательным трактом для воспроизведения видео для вида D2.
Кроме того, ref_to_clpi_file_name из SubPath() [1] равен "00002". Из этого описания в случае воспроизведения видео для вида D2 идентифицируется ссылка на файл clip "00002.clpi" по фиг.10.
SubPath_type для SubPath() [2] равен "8". Тот факт, что SubPathJype равен "8", указывает на то, что здесь первый SubPath является вспомогательным трактом для воспроизведения видео для вида D1.
Кроме того, ref_to_clpi_file_name из SubPath() [2] равен "00003". Из этого описания в случае воспроизведения видео для вида D1 идентифицируется ссылка на файл clip "00003.clip", записанный в местной памяти 254.
Здесь добавляется описание, относящееся ко второму SubPath, когда загружается видео для вида D1.
ref_to_D2-B_interleaved_file_name из interleaved_file_info() равен "20000". Из этого описания в случае выполнения B-D2 воспроизведения идентифицируется ссылка на файл ilvt "20000.ilvt" по фиг.10.
Кроме того, ref_to_D2_clpi_file_name равен "00002". Из этого описания в случае воспроизведения видео для вида D2 идентифицируется ссылка на файл clip "00002.clpi" по фиг.10.
Отметим, что в местной памяти 254 видео для вида D1 не перемежено, благодаря чему файл ilvt, относящийся к видео для вида D1, не требуется.
Фиг.34 является схемой, показывающей синтаксическую структуру файла clip, используемого вместе с 3D_PlayList по фиг.33.
Вид А на фиг.34 является схемой, показывающей пример файла clip "00001. clip", a вид В на фиг.34 является схемой, показывающей пример файла clip "00002. clip". Для любого файла clip включены описания ЕР_map и chunk_map().
Фиг.35 является схемой, показывающей принцип управления файлами, который выполняется с помощью данных по фиг.33 и фиг.34.
Как показано на фиг.35, физический уровень представляет собой уровень оптического диска 202, в котором в перемеженном состоянии записаны видео основного вида и видео для вида D2, и местной памяти 254, в которой записан файл видео для вида D1, на который ссылается второй SubPath.
В примере на фиг.35 наименование файла для файла m2ts, хранящего видео для вида D1, есть "00003.m2ts". Кроме того, наименование файла для файла clip, соответствующего "00003.m2ts", есть "00003. clip".
Файл m2ts "00001.m2ts" составлен из фрагментов видео основного вида, расположенных на оптическом диске 202.
Кроме того, файл m2ts "00002.m2ts" составлен из фрагментов видео для вида D2, расположенных на оптическом диске 202.
Файл ilvt "20000.ilvt" составлен из фрагментов видео для вида D2 и фрагментов видео основного вида, расположенных на оптическом диске 202.
В случае когда "00001.m2ts" определен приложением и считанным данным дается команда на выполнение 2D воспроизведения, фрагмент видео основного вида считывается в соответствии с управлением от файловой системы.
В случае когда "00001.m2ts" определен приложением и считанным данным дается команда на выполнение B-D1 воспроизведения, фрагмент видео основного вида считывается в соответствии с управлением от файловой системы. Кроме того, файл M2ts видео для вида D1 считывается из местной памяти 254, определяя "00003.m2ts" в соответствии с описанием второго SubPath (вспомогательного тракта) из 3D_PlayList по фиг.33.
В случае когда "20000.ilvt" определен приложением и считанным данным дается команда на выполнение B-D2 воспроизведения, фрагмент видео для вида D2 и фрагмент видео основного вида считываются в соответствии с управлением от файловой системы.
Рабочий пример 3
Обработка воспроизведения, которая осуществляется в соответствии с файлом 3D_PlayList по фиг.33, будет описана со ссылкой на блок-схему алгоритма по фиг.36.
На этапе S21 контроллер 251 подтверждает из значения типа, что видео основного вида и видео для вида D2 перемежены.
В этом случае на этапе S22 контроллер 251 переходит к считыванию interleaved_file_info().
На этапе S23 контроллер 251 определяет, дана ли команда на B-D1 воспроизведение.
В случае выполнения B-D1 воспроизведения используются данные, записанные на оптическом диске 202, и данные, записанные в местную память 254. С другой стороны, в случае выполнения B-D2 воспроизведения используются данные, записанные на оптическом диске 202.
В случае когда на этапе S23 определено, что не было команды на B-D1 воспроизведение, т.е. была команда на B-D2 воспроизведение, на этапе S24 контроллер 251 удаляет наименование Х клипа "00002" (за исключением части расширения наименования файла m2ts, включающей в себя видео для вида D2), в том числе видео для вида D2, составляющее "20000.ilvt" (ref_to_D2-B_interleaved_file_name), описанный в interleaved_file_info().
На этапе S25 контроллер 251 удаляет наименование Y клипа "00002", ссылающееся на subPath_type=9 (вспомогательный тракт, воспроизводящий видео для вида D2).
На этапе S26 контроллер 251 распознает, что видео для вида D2 включено в "20000.ilvt", поскольку Y является тем же самым, что и X. Когда Y здесь отличается от X, клип, включающий в себя видео для вида D2, находится в местной памяти 254.
На этапе S27 контроллер 251 определяет "20000.ilvt" (ref_to_D2-B_interleaved_file_name), описанный в interleaved_file_info(), и вызывает считывание фрагментов видео основного вида и фрагментов видео для вида D2 с оптического диска 202 посредством файловой системы UDF.
Фрагменты видео основного вида и фрагменты видео для вида D2, считанные дисководом 252, подаются в разделяющий блок 281 декодирующего блока 256.
На этапе S28 разделяющий блок 281 разделяет поданные данные на данные файла m2ts "00001.m2ts" и данные файла m2ts "00002.m2ts" на основе chunk_map() из "00001. clip" (ref_to_B_clpi_file_name) и chunk_map () из "00002.clpi" (ref_to_D2_clpi_file_name). Разделяющий блок 281 выводит данные файла m2ts "00001.m2ts" в буфер 282 считывания и выводит данные файла m2ts "00002.m2ts" в буфер 285 считывания.
Данные файла m2ts "00001.m2ts", хранящиеся в буфере 282 считывания, подаются в декодер 290 через фильтр 283 пакетных идентификаторов, буфер 284 элементарного потока и коммутатор 289. С другой стороны, данные файла m2ts "00002. m2ts", хранящиеся в буфере 285 считывания, подаются в декодер 290 через фильтр 286 пакетных идентификаторов, коммутатор 287, буфер 288 элементарного потока и коммутатор 289.
На этапе S29 декодер 290 декодирует пакеты, последовательно подаваемые из коммутатора 289.
С другой стороны, в случае, когда на этапе S23 определено, что дана команда на В-D1 воспроизведение, на этапе S30 контроллер 251 удаляет наименование Х клипа "00002", включающее в себя видео для вида D2, составляющее "20000. ilvt" (ref_to_D2-B_interleaved_file_name), описанный в interleaved_file_info().
На этапе S31 контроллер 251 удаляет наименование Y клипа "00003", ссылающееся на subPath_type=8 (вспомогательный тракт, воспроизводящий видео для вида D1).
На этапе S32 контроллер 251 распознает, что Y отличается от части, исключающей расширение "00001.clip" (ref_to_B_clpi_file_name), и что Y отличается от X, благодаря чему клип видео для вида D1 находится в местной памяти 254. Теперь, когда Y такой же, как часть, исключающая расширение "00001. clip", либо когда Y такой же, как X, видео для вида D1 включается в "20000.ilvt".
На этапе S33 контроллер 251 использует ЕР_map из "00001.clip" (ref_to_B_clpi_file_name) и заставляет дисковод 252 считывать файл m2ts "00001.m2ts". EP_map из "00001.clip" включает в себя данные точки ввода, служащей в качестве начального положения файла m2ts "00001.m2ts".
На этапе S34 контроллер 251 использует ЕР_map из "00003.clip" (на который ссылается SubPath() [2]) для считывания файла m2ts "00003.m2ts" из местной памяти 254. EP_map из "00003.clip" включает в себя данные точки ввода, служащей в качестве начального положения декодирования файла m2ts "00003.m2ts".
Считанные фрагменты видео основного вида и фрагменты видео для вида D1 подаются в разделяющий блок 281 декодирующего блока 256.
После сохранения в буфере 282 считывания данные файла m2ts "00001.m2ts", считанные с оптического диска 202, подаются в декодер 290 через фильтр 283 пакетных идентификаторов, буфер 284 элементарного потока и коммутатор 289.
Кроме того, после сохранения в буфере 285 считывания данные файла m2ts "00003.m2ts", считанные из местной памяти 254, подаются в декодер 290 через фильтр 286 пакетных идентификаторов, коммутатор 287, буфер 288 элементарного потока и коммутатор 289.
На этапе S29 декодер 290 декодирует пакеты, последовательно подаваемые из коммутатора 289.
Способ воспроизведения с произвольным доступом "10000.ilvt" с помощью chunk_map()
Фиг.37 является схемой, показывающей итоговую информацию контента chunk_map(), описанную со ссылкой на фиг.27.
Когда SPN_chunk_start, описанный в chunk_map() каждого файла clip (количество исходных пакетов (длина) от основного положения), расположен, принимая i в вертикальном направлении, это делается, как показано на фиг.37.
Фиг.38 является схемой, показывающей синтаксическую структуру ЕР_map(), описанную в каждом файле clip вместе с chunk_map().
На ЕР_map() делается ссылка, чтобы идентифицировать начальное положение декодирования, когда выполняется случайный доступ или тому подобное.
number_of)EP_entries указывает количество точек ввода (ЕР).
После number_of_EP_entries описание готовится для каждой точки ввода (ЕР). PTS_EP_start [i] указывает отметку времени представления (PTS) для точки ввода (ЕР), а SPN_start [i] указывает количество исходных пакетов (SPN) для точки ввода (ЕР). Таким образом, отметка времени представления (PTS) и количество исходных пакетов (SPN) для каждой точки ввода коррелируются и регистрируются в ЕР_map.
Описание обработки для воспроизводящего устройства 201 будет дано со ссылкой на блок-схему алгоритма по фиг.39.
Теперь будет дано описание для случая, в котором дается ссылка на 3D_PlayList по фиг.22 для выполнения B-D1 воспроизведения и выполняется случайный доступ.
На этапе S41 контроллер 251 подтверждает из значения типа, что видео основного вида, видео для вида D1 и видео для вида D2 перемежены.
В этом случае на этапе S42 контроллер 251 переходит к считыванию interleaved_file_info().
На этапе S43 контроллер 251 определяет, что "10000.ilvt" (ref_to_D1-B_interleaved_file_name), описанный в interleaved_file_info(), является файлом считывания.
В случае начального воспроизведения с момента времени x в "00000.mpls" из 3D_PlayList на этапе S44 контроллер 251 использует ЕР_map из "00001.clip" (ref_to_B_clpi_file_name), чтобы найти PTS_EP_start [m], имеющий значение, которое меньше, чем ближайший x.
На этапе S45 контроллер 251 удаляет SPN_EP_start [m], который соответствует PTS_EP_start [m]. Как описано со ссылкой на фиг.38, PTS_EP_start [i] и SPN_EP_start [i] коррелируются и регистрируются в ЕР_map.
Фиг.40 является схемой, показывающей пример положений, определенных обработкой данных на этапах S44 и S45.
Как показано на фиг.40, в случае начала воспроизведения с момента времени x на временной оси на этапе S44 идентифицируется PTS_EP_start [m], имеющий значение меньше чем и ближайшее к х. Кроме того, на этапе S45 идентифицируется SPN_EP_start [m], соответствующий PTS_EP_start [m].
На этапе S46 контроллер 251 использует chunk_map из "00001. clip" и находит SPN_chunk_start [k], имеющий значение меньше чем и ближайшее к SPN_EP_start [m]. Значение SPN_chunk_start [k], идентифицированное обработкой на этапе S46, показано на фиг.41.
На этапе S47 контроллер 251 определяет сумму SPN_chunk_start [k] из chunk_map() в "00001. clip" и SPN_chunk_start [k] из chunk_map() в "00003.clip" (ref_to_D1_clpi_file_name) в качестве начального адреса считывания из "10000.ilvt".
Начальный адрес считывания в "10000.ilvt", определенный здесь, показывает начальный адрес фрагмента D1 [k] в "10000.ilvt".
На этапе S48 контроллер 251 определяет "10000.ilvt" (ref_to_D1-B_interleaved_file_name) и заставляет считывать фрагменты видео основного вида и фрагменты видео для вида D1 из адреса, определенного на этапе S47, через файловую систему UDF.
Фрагменты видео основного вида и фрагменты видео для вида D1, которые считаны, подаются в разделяющий блок 281 декодирующего блока 256.
На этапе S49 разделяющий блок 281 разделяет поданные данные на данные файла m2ts "00001.m2ts" и данные файла m2ts "00003.m2ts" на основе chunk_map() из "00001. clip" (ret_to_B_clip_file_name) и chunk_map() из "00003.clip" (ref_to_D1_clpi_file_name). Разделяющий блок 281 выводит данные файла m2ts "00001.m2ts" в буфер 282 считывания и выводит данные файла m2ts "00003.m2ts" в буфер 285 считывания.
Данные файла m2ts "00001.m2ts", хранящиеся в буфере 282 считывания, подаются в декодер 290 через фильтр 283 пакетных идентификаторов, буфер 284 элементарного потока и коммутатор 289. Данные файла m2ts "00003.m2ts", хранящиеся в буфере 285 считывания, подаются в декодер 290 через фильтр 286 пакетных идентификаторов, коммутатор 287, буфер 288 элементарного потока и коммутатор 289.
На этапе S50 декодер 290 декодирует пакеты, которые последовательно подаются из коммутатора 289.
Случайный доступ к файлу ilvt осуществляется, как описано выше.
Обзор ЕР_map
Теперь будет описан ЕР_map.
Будет описан ЕР_map из видео основного вида, но ЕР_map аналогично устанавливается и для видео видов D1/D2. Например, в случае, когда точка ввода установлена в определенной картинке видео основного вида, точка ввода устанавливается также в соответствующей картинке видео для видов D1/D2.
Картинка видео основного вида и картинка видео для видов D1/D2, которые находятся в одном и том же положении, когда картинки каждого потока размещаются в порядке кодирования / порядке декодирования или порядке отображения, являются соответствующими картинками.
Фиг.42 является схемой, показывающей конфигурацию аудио-видео (АВ) потока, записанного на оптическом диске 202.
Транспортный поток, включающий в себя видеопоток основного вида, составлен из целого числа выровненных блоков, имеющих размер 6144 байтов.
Выровненный блок составлен из 32 исходных пакетов. Исходный пакет имеет 192 байта. Один исходный пакет составлен из 4-байтного дополнительного заголовка транспортного пакета (TP_extra_header) и 188-байтного транспортного пакета.
Данные видео основного вида пакетизируются в пакет пакетного элементарного потока (PES) MPEG2. Пакет PES образован пакетным заголовком PES, прикрепленным к информационной части пакета PES. Потоковые идентификаторы идентифицируют тип элементарного потока, который переносит пакет PES, включены в заголовок пакета PES.
Пакет PES далее пакетизируется в транспортный пакет. То есть пакет PES разделяется на объемы полезной информации транспортного пакета, к полезной информации добавляется заголовок транспортного пакета, и образуется транспортный пакет. Заголовок транспортного пакета включает в себя пакетный идентификатор, который идентифицирует информацию данных, хранящихся в полезной информации.
Отметим, что исходный пакет снабжается исходным пакетным номером, который увеличивается на единицу за раз для каждого исходного пакета, например, с началом АВ-потока клипа в качестве 0. Кроме того, выровненный блок начинается с первого байта исходного пакета.
Когда предусмотрена временная отметка в точке доступа клипа, ЕР_map используется для поиска адреса данных, который предназначен для считывания и который начинает данные в файле АВ-потока клипа. ЕР_map является списком точек ввода, выделенных из элементарного потока и транспортного потока.
EP_map имеет адресные данные, чтобы искать точку ввода, которая должна начинать декодирование в АВ-потоке. Одна часть данных точки ввода в ЕР_map составлена из пары пакетного транспортного потока и адреса в АВ-потоке модуля доступа, соответствующего пакетному транспортному потоку. При AVC/H.264 значение данных одной картинки сохраняется в блоке доступа.
Фиг.43 является схемой, показывающей пример АВ потока клипа.
АВ поток клипа на фиг.43 представляет собой видеопоток (видеопоток основного вида), составленный из исходных пакетов, идентифицированных с помощью PID=х. Видеопоток различается пакетным идентификатором, включенным в заголовок транспортного пакета в исходном пакете для каждого исходного пакета.
На фиг.43 к исходному пакету присоединен цвет, включающий в себя ведущий байт картинки мгновенного обновления декодирования (IDR) в исходных пакетах видеопотока. Прямоугольник без цвета указывает исходные пакеты, включающие в себя данные, которые не будут точками случайного доступа, и исходные пакеты, включающие в себя данные иных потоков.
Картинка IDR является I-картинкой и декодируется сначала в группе картинок (GOP), которая включает в себя картинку IDR. Во время декодирования картинки IDR все данные относятся к декодированию, такие как состояние буфера ссылочной картинки, номера кадров и порядковый счет картинки (РОС), контролируемый до сброса.
Например, исходный пакет с исходным пакетным номером х1, включающий в себя заголовочный байт картинки IDR, к которому можно обращаться случайным образом от видеопотока, различающегося пакетным идентификатором PID=x, расположен в положении PTS=pts (x1) на временной оси АВ потока клипа.
Аналогично, исходный пакет, включающий в себя заголовочный байт картинки IDR, к которой можно обращаться случайным образом, является исходным пакетом с исходным пакетным номером х2 исходного пакета и расположен в положении PTS=pts (х2).
Фиг.44 является схемой, концептуально показывающей пример EP_map, соответствующий АВ потоку клипа по фиг.43.
Как показано на фиг.44, EP_map составлен из stream_PID, PTS_EP_start и SPN_EP_start.
stream_PID указывает пакетный идентификатор транспортного пакета, который переносит видеопоток.
PTS_EP_start указывает пакетный транспортный поток блока доступа, начинающегося с картинки IDR, к которой можно обращаться случайным образом.
SPN_EP_start указывает адрес исходного пакета, включающий в себя первый байт блока доступа, на который должна делаться ссылка значением PTS_EP_start.
Пакетный идентификатор видеопотока сохраняется в stream_PID, и генерируется EP_map_for_one_stream_PID(), который является табличной информацией, показывающей соответствующее соотношение PTS_EP_start и SPN_EP_start.
Например, PTS=pts (x1) и исходный пакетный номер x1, PTS=pts (x2) и исходный пакетный номер x2, …, PTS=pts (xk) и исходный пакетный номер xk описываются в EP_map_for_one_stream_PID (0) из видеопотока PID=x соответствующим образом.
Такая таблица генерируется также для каждого из видеопотоков, мультиплексированных в одном и том же АВ потоке клипа. ЕР_map, включающий в себя выработанную таблицу, сохраняется в информационном файле клипа, соответствующем этому АВ потоку клипа.
Фиг.45 является схемой, показывающей пример конфигурации данных исходного пакета, который указывает SPN_EP_start.
Как описано выше, исходный пакет выполнен в виде, в котором 4-байтовый заголовок прикреплен к 188-байтному транспортному пакету. Часть транспортного пакета составлена из заголовочной части (заголовок транспортного пакета) и информационной части. SPN_EP_start указывает исходный пакетный номер для исходного пакета, который включает в себя первый байт блока доступа, который начинается с картинки IDR.
В AVC/H.264 блок доступа, т.е. картинка, начинается с разграничителя блока доступа (разграничителя AU). После разграничителя AU следуют SRS и PPS. Вслед за этим сохраняется начальная часть или все данные части картинки IDR.
Тот факт, что значение payload_unit_start_indicator в заголовке ТР в транспортном пакете равно 1, указывает, что новый пакет PES начинается здесь с полезной информации транспортного пакета. Блок доступа здесь должен начинаться с исходного пакета.
Такой ЕР_map готовится для каждого из видеопотока основного вида и видеопотока зависимого вида.
Пример выполнения воспроизводящего устройства
Фиг.46 является блок-схемой, показывающей пример выполнения производящего программное обеспечение блока 301 обработки.
Видеокодер 311 имеет такое же выполнение, что и кодер 211 MVC по фиг.3. Видеокодер 311 генерирует видеопоток основного вида и видеопоток зависимого вида путем кодирования множества частей видеоданных с помощью Н.264 AVC/MVC и выводит их в буфер 312.
Аудиокодер 313 кодирует входной аудиопоток и выводит полученные данные в буфер 314. Аудиопоток для записи на диск вводится в аудиокодер 313 вместе с потоками видео основного вида и видео зависимого вида.
Кодер 315 данных кодирует различные описанные выше типы данных иных, нежели видео и аудио, такие как файлы PlayList, и выводит полученные кодированием данные в буфер 316.
Например, кодер 315 данных устанавливает тип (фиг.18) в файле PlayList для указания того, записаны ли данные видеопотока основного вида и данные видеопотока для видов D1/D2 на оптическом диске в состоянии перемежения в приращениях фрагментов.
Кроме того, в случае, когда данные видеопотока основного вида и данные видеопотока для видов D1/D2 записаны на оптическом диске в состоянии перемежения, кодер 315 данных устанавливает вышеописанный файл ilvt как файл PlayList. Файл ilvt функционирует как виртуальный файл, который виртуально обобщает и контролирует данные видеопотока основного вида и данные видеопотока для видов D1/D2.
Далее, кодер 315 данных устанавливает наименование файла для информационного файла клипа для каждого клипа в списке воспроизведения и устанавливает ЕР_map и chunk_map в каждом из информационных файлов клипа.
Мультиплексирующий блок 317 мультиплексирует видеоданные и аудиоданные, хранящиеся в каждом из буферов, и данные иные, нежели потока, вместе с синхронизирующим сигналом и выводит их в блок 318 кодирования с исправлением ошибок.
Блок 318 кодирования с исправлением ошибок прикладывает корректирующий ошибки код к данным, мультиплексированным мультиплексирующим блоком 317.
Модулирующий блок 319 подвергает модуляции данные, поданные из блока 318 кодирования с исправлением ошибок, и выводит их. Выход модулирующего блока 319 представляет собой программное обеспечение для записи на оптическом диске 202, которое можно воспроизводить на воспроизводящем устройстве 201.
Производящий программное обеспечение блок 301 обработки с такой конфигурацией обеспечивается в записывающее устройство.
Фиг.47 является схемой, иллюстрирующей пример выполнения, включающий производящий программное обеспечение блок 301 обработки.
Часть конфигурации, показанная на фиг.47, может быть также предусмотрена в записывающем устройстве.
Записывающий сигнал, генерируемый производящим программное обеспечение блоком 301 обработки, подвергается обработке оригинала блоком 331 предобработки оригинала, и генерируется сигнал в формате, подлежащем записи на оптическом диске 202. Генерированный сигнал подается в записывающий оригинал блок 333.
С помощью изготавливающего оригинал записи блока 332 подготавливается оригинал, сделанный из стекла или тому подобного, и на него наносится записывающий материал, сделанный из фоторезиста или тому подобного. Таким образом, изготавливается записывающий оригинал.
С помощью записывающего оригинал блока 333 лазерный луч модулируется в соответствии с записывающим сигналом, подаваемым из блока 331 предобработки оригинала, и излучается на фоторезист оригинала. Таким образом, фоторезист на оригинале экспонируется в соответствии с записывающим сигналом. После этого оригинал проявляется и на оригинале появляются питы.
С помощью изготавливающего металлический оригинал блока 334 над оригиналом выполняется такая обработка, как гальванопластика, и изготавливается металлический оригинал, на который перенесены питы на стеклянной пластине. Из металлического оригинала здесь вырабатывается далее металлический штамп, и он принимается как форма для литья под давлением.
С помощью блока 335 обработки матрицированием такой материал, как полиметил метакрилат (РММА) или поликарбонат (PC), инжектируется посредством инжекции или тому подобного в литьевую форму, и выполняется отверждение. Альтернативно, после покрытия металлического штампа отверждаемой ультрафиолетом смолой (2Р) или тому подобным осуществляется облучение ультрафиолетом и отверждение. Таким образом, питы на металлическом штампе могут переноситься на копию, сделанную из смолы.
С помощью формирующего пленку блока 336 обработки на этой копии формируется отражающая пленка за счет испарения или напыления. Альтернативно, отражающая пленка формируется на копии посредством покрытия методом центрифугирования.
С помощью блока 337 постобработки на диске выполняется обработка внутреннего и наружного диаметров и осуществляется необходимая доработка, такая как склеивание двух дисков. Далее, после прикрепления этикетки или прикрепления ступицы, копия вводится в картридж. Таким образом завершается оптический диск 202, в котором записаны данные, воспроизводимые воспроизводящим устройством 201.
Вышеописанную серию обработок можно осуществлять аппаратно, а можно осуществлять и программно. В случае программного осуществления этой серии обработок программы, содержащие их программное обеспечение, устанавливаются в компьютере, который встроен в предназначенное аппаратное обеспечение, или в универсальный персональный компьютер.
Подлежащая установке программа записывается на съемный носитель данных и предоставляется. Кроме того, ее можно предоставить посредством кабеля или беспроводной передачи, например, по локальной сети, Интернету или посредством цифрового вещания.
Варианты осуществления настоящего изобретения не ограничиваются вышеописанными вариантами осуществления, и различные модификации могут быть сделаны без отхода от сущности настоящего изобретения.
Список ссылочных позиций
201 - Воспроизводящее устройство
202 - Оптический диск
203 - Отображающее устройство
211 - Кодер MVC
221 - Кодер H.264/AVC
222 - Декодер H.264/AVC
223 - Вычисляющий глубину блок
224 - Кодер видео зависимого вида
225 - Мультиплексор
251 - Контроллер
252 - Дисковод
253 - Память
254 - Местная память
255 - Интерфейс Интернета
256 - Декодирующий блок
257 - Блок оперативного ввода