НОСИТЕЛЬ ЗАПИСИ, СПОСОБ И УСТРОЙСТВО ДЛЯ ДЕКОДИРОВАНИЯ ПОТОКОВ ТЕКСТОВЫХ СУБТИТРОВ
RECORD MEDIUM, METHOD AND DEVICE FOR TEXT CAPTION STREAMS DECODING

Область техники
Настоящее изобретение относится к носителю записи, способу и устройству для декодирования потока текстовых субтитров, записанного на носителе записи.
Предшествующий уровень техники
Оптические диски широко используются в качестве оптических носителей записи для записи данных большого объема. В настоящее время среди широкого разнообразия оптических дисков разрабатываются новые цифровые видеодиски высокой плотности записи (далее упоминаемые как HD-DVD), такие как Blu-ray-диски (далее упоминаемые как BD), предназначенные для записи видео и аудио (AV) данных высокой четкости. В настоящее время разрабатываются технические характеристики общих стандартов в качестве требований к оптической записи следующего поколения, которые обеспечат получение данных, существенным образом превосходящих качество традиционных DVD и многих других цифровых устройств.
Соответственно, также разрабатываются устройства оптического воспроизведения, к которым применяются стандарты Blu-ray-дисков (BD). Однако поскольку стандарты Blu-ray-дисков (BD) еще не завершены, имеется еще множество проблем, связанных с разработкой завершенного оптического устройства воспроизведения. В частности, для того чтобы эффективно воспроизводить данные с Blu-ray-диска (BD), должны систематизироваться и обеспечиваться не только основные AV-данные и различные данные, требуемые для обеспечения удобства для пользователя, такие как информация подзаголовков (субтитров) в качестве вспомогательных данных, относящихся к основным AV-данным, но и управляющая информация для воспроизведения основных данных и данных субтитров, записанных на оптическом диске.
Однако в современных стандартах Blu-ray-дисков (BD), поскольку стандарты на вспомогательные данные, в частности, относящиеся к информации подзаголовков, еще не полностью сформированы, имеется множество ограничений в полномасштабной разработке оптического устройства воспроизведения, основанного на Blu-ray-дисках (BD). Такие ограничения вызывают проблемы в предоставлении пользователю вспомогательных данных, таких как субтитры.
Сущность изобретения
Соответственно, настоящее изобретение направлено на декодер текстовых субтитров и на способ для декодирования потоков текстовых субтитров, записанных на носителе записи, который существенным образом преодолевает одну и более проблем, обусловленных ограничениями и недостатками, свойственными предшествующему уровню техники.
Целью настоящего изобретения является создание носителя записи, содержащего диалоговый сегмент стилей, определяющий набор стилей пользовательского управления, каждый из которых обеспечивает возможность изменения, по меньшей мере, одного из свойств представления области, определяемых стилем области.
Другой целью настоящего изобретения является создание способа и устройства для декодирования потока текстовых субтитров с использованием стиля пользовательского управления, который изменяет, по меньшей мере, одно из свойств представления области, определяемых стилем области.
Другие преимущества, цели и признаки изобретения представлены частично в нижеследующем описании и частично будут очевидны для специалистов в данной области техники на основе изучения представленного описания или могут быть получены на основе практической реализации изобретения. Поставленные цели и достигаемые преимущества могут быть реализованы и достигнуты с помощью структуры, представленной в описании и в формуле изобретения, а также иллюстрируемой чертежами.
Для достижения этих целей и получения указанных преимуществ, в соответствии с настоящим изобретением, как оно воплощено и описано в широком аспекте, носитель записи содержит область данных, хранящую, по меньшей мере, один поток текстовых субтитров, каждый из которых содержит сегмент стилей диалога, определяющий набор стилей области, подлежащих применению для, по меньшей мере, одной области текста диалога. Каждый поток текстовых субтитров может дополнительно включать в себя, по меньшей мере, один сегмент представлений диалога, каждый из которых содержит, по меньшей мере, одну область текста диалога и связан с, по меньшей мере, одним из набора стилей области. Сегмент стилей диалога дополнительно определяет набор стилей пользовательского управления для каждого стиля области, причем каждый стиль пользовательского управления может выбираться и конфигурироваться для изменения, по меньшей мере, одного из свойств представления области, определяемых соответствующим стилем области. Например, каждый стиль пользовательского управления может определять направление и величину изменения, по меньшей мере, одного из следующего: горизонтального положения области, вертикального положения области, горизонтального положения текста, вертикального положения текста, строчного интервала, размера шрифта, все из которых определяются в соответствующем стиле области.
В другом аспекте настоящего изобретения предложены способ и устройство для декодирования потока текстовых субтитров, записанного на носителе записи. Буфер загрузки субтитров загружает поток текстовых субтитров, который включает в себя сегмент стилей диалога, определяющий набор стилей области и, по меньшей мере, один сегмент представлений диалога. Каждое представление диалога содержит, по меньшей мере, одну область текста диалога и связано с, по меньшей мере, одним из набора стилей области. Сегмент стилей диалога дополнительно определяет набор стилей пользовательского управления для каждой области, причем каждый стиль пользовательского управления может выбираться и конфигурироваться для изменения, по меньшей мере, одного из свойств представления области, определяемых соответствующим стилем области. Декодер текстовых субтитров может декодировать каждый сегмент представлений диалога с использованием связанного стиля области и одного из набора стилей пользовательского управления, определяемых сегментом представлений диалога.
Каждый стиль пользовательского управления может определять направление и величину изменения в свойствах представления области, определяемых соответствующим стилем области. Свойства представления области включают в себя, по меньшей мере, одно из горизонтального положения области, вертикального положения области, горизонтального положения текста, вертикального положения текста, строчного интервала, размера шрифта, все из которых определяются в соответствующем стиле области.
Понятно, что как предыдущее обобщенное описание, так и последующее детальное описание настоящего изобретения являются иллюстративными и предназначены для дополнительного пояснения заявленного изобретения.
Краткое описание чертежей
Прилагаемые чертежи, которые предназначены для пояснения изобретения и включены в состав материалов заявки, иллюстрируют варианты осуществления изобретения и вместе с описанием служат для объяснения принципов настоящего изобретения. На чертежах представлено следующее:
Фиг.1 - файловая структура файлов данных, записанных на оптическом диске в соответствии с настоящим изобретением;
Фиг.2 - области хранения данных оптического диска согласно примеру осуществления настоящего изобретения;
Фиг.3 - иллюстрация текстового субтитра и основного изображения, представляемого на экране дисплея при воспроизведении потока текстовых субтитров и основного потока AV данных;
Фиг.4 - схематичная диаграмма, иллюстрирующая управление воспроизведением основного AV-клипа и клипов текстовых субтитров с помощью списка воспроизведения;
Фиг.5А - диалог, представляемый на экране дисплея в соответствии с примером осуществления настоящего изобретения;
Фиг.5В - области диалога в соответствии с примером осуществления настоящего изобретения;
Фиг.5С - стили области и подключаемые стили для областей диалога в соответствии с примером осуществления настоящего изобретения;
Фиг.6А - представление диалогов текстовых субтитров на экране дисплея в интервалах меток времени представления (PTS);
Фиг.6В - иллюстрация непрерывностей между диалогами текстовых субтитров, представленными на экране дисплея в интервалах PTS;
Фиг.7А - файл потока текстовых субтитров в соответствии с примером осуществления настоящего изобретения;
Фиг.7В - иллюстрация конкретной информации, содержащейся в блоках DPU и DSU, включенных в поток текстовых субтитров в соответствии с примером осуществления настоящего изобретения;
Фиг.8 - синтаксис для потока текстовых субтитров в соответствии с примером осуществления настоящего изобретения;
Фиг.9А - синтаксис для блока стилей диалога в соответствии с примером осуществления настоящего изобретения;
Фиг.9В - синтаксис для набора стилей диалога, включенного в блок стилей диалога в соответствии с примером осуществления настоящего изобретения;
Фиг.9С - синтаксис для изменяемого пользователем набора стилей, включенного в набор стилей диалога в соответствии с примером осуществления настоящего изобретения;
Фиг.10 - пример выполнения устройства для декодирования основных потоков AV-данных и потоков текстовых субтитров в соответствии с настоящим изобретением;
Фиг.11 - пример выполнения способа декодирования потока текстовых субтитров, записанного на оптическом диске в соответствии с настоящим изобретением.
Наилучший режим выполнения изобретения
Ниже детально описаны предпочтительные варианты осуществления настоящего изобретения, примеры которого представлены на прилагаемых чертежах. Где, возможно, одни и те же ссылочные позиции обозначают одинаковые или сходные элементы на всех чертежах.
В этом детальном описании основные данные представляют аудио/видео (A/V) данные, которые относятся к заголовку (например, титру фильма), записанному на оптическом диске автором. В принципе, AV данные записаны в формате MPEG2 и часто упоминаются как потоки AV данных или основные потоки AV данных. Кроме того, вспомогательные данные представляют все другие данные, требуемые для воспроизведения основных данных, примерами которых являются потоки текстовых субтитров, потоки интерактивной графики, потоки графики презентаций и потоки вспомогательных аудиоданных (например, для просмотра показа слайдов). Эти вспомогательные потоки данных могут записываться в формате MPEG2 или в любом другом формате данных. Они могут мультиплексироваться с потоками AV данных или могут существовать как независимые файлы данных на оптическом диске.
Субтитр представляет информацию надписей, соответствующую воспроизводимым видеоданным (изображению), и может воспроизводиться на предварительно определенном языке. Например, когда пользователь выбирает опцию просмотра одного из множества субтитров из множества субтитров, представленных на различных языках, при просмотре изображений на экране дисплея, информация надписей, соответствующая выбранному субтитру, отображается в предварительно выбранной части экрана дисплея. Если отображаемая информация надписи представляет собой текстовые данные (то есть символы), то выбранный субтитр часто называется текстовым субтитром. В соответствии с одним аспектом настоящего изобретения множество потоков текстовых субтитров в формате MPEG2 могут быть записаны на оптический диск, и они могут существовать как файл множества независимых потоков. Каждый файл потока текстовых субтитров включает в себя текстовые данные для текстового субтитра и данные управления воспроизведением, требуемые для воспроизведения текстовых данных. Соответственно другому аспекту настоящего изобретения, на оптическом диске может быть записан только один поток текстовых субтитров в формате MPEG2.
Фиг.1 иллюстрирует файловую структуру файлов данных, записанных на оптическом диске, примером которого является Blu-ray-диск (далее упоминаемый как BD), в соответствии с настоящим изобретением. Согласно фиг.1, по меньшей мере, один каталог BD (BDMV) включен в корневой каталог (root). Каждый каталог BD включает в себя индексный файл (index.bdmv) и объектный файл (MovieObject.bdmv), которые используются для взаимодействия с одним или более пользователей. Например, индексный файл может содержать данные, представляющие таблицу индексов, имеющую множество выбираемых меню и титров фильмов. Каждый каталог BD, кроме того, включает в себя четыре каталога файлов, которые включают в себя аудио/видео (A/V) данные, подлежащие воспроизведению, и различные данные, требуемые для воспроизведения AV данных.
Каталоги файлов, включенные в каждый каталог BD, являются следующими: каталог потоков (STREAM), каталог информации клипов (CLIPINF), каталог списка воспроизведения (PLAYLIST) и каталог вспомогательных данных (AUX DATA). Прежде всего, каталог потоков (STREAM) включает в себя файлы потоков аудио/видео (A/V) данных, имеющие конкретный формат данных. Например, файлы потоков AV данных могут быть в форме транспортных пакетов стандарта MPEG2 и могут именоваться как "*.m2ts", как показано на фиг.1. Каталог потоков может также включать в себя один или более файлов текстовых потоков субтитров, где каждый файл текстовых потоков субтитров включает в себя данные текста (например, символов) для текстовых субтитров, представленных на конкретном языке, и информацию управления воспроизведением текстовых данных. Файлы текстовых потоков субтитров существуют как независимые файлы потоков в каталоге потоков и могут именоваться как "*.m2ts" или "*.txtst", как показано на фиг.1. Файл потоков AV данных или файл текстовых потоков субтитров, включенный в каталог потоков, часто называют файлом потоков клипов.
Далее, каталог информации клипов (CLIPINF) включает в себя файлы информации клипов, которые соответствуют файлам потоков (AV данных или текстовых субтитров), включенным в каталог потоков, соответственно. Каждый файл информации клипов содержит информацию о свойствах и временных характеристиках воспроизведения для соответствующего файла потоков. Например, файл информации клипа А может включать в себя информацию отображения в которой метки времени представления (PTS) и номера исходных пакетов (SPN) отображены во взаимно однозначном соответствии с помощью карты элементов записи (ЕРМ). С использованием информации отображения конкретное местоположение файла потоков может быть определено из информации временных характеристик In-Time и Out-Time (время входа и время выхода), обеспечиваемой элементами PlayItem и SubPlayItem, как описано ниже более подробно. В промышленном стандарте каждая пара из файла потоков и соответствующего ему файла информации клипов обозначается как клип. Например, элемент 01000.dpi, включенный в файл CLIPINF, включает в себя информацию о свойствах и временных характеристиках воспроизведения элемента 01000.m2ts, включенного в файл STREAM, при этом элементы 01000.clpi и 01000.m2ts образуют клип.
В соответствии с фиг.1 каталог списка воспроизведения (PLAYLIST) включает в себя один или более файлов PlayList списков воспроизведения (*.mpls), где каждый файл PlayIist включает в себя, по меньшей мере, один элемент PlayItem, который обозначает, по меньшей мере, один основной AV клип и время воспроизведения основного AV клипа. Более конкретно, элемент PlayItem содержит информацию In-Time и Out-Time, которая представляет время начала воспроизведения и время окончания воспроизведения для основного AV клипа, обозначенного в элементе PlayItem как Clip_Information_File_Name (имя файла информации клипа). Поэтому файл PlayList представляет основную информацию управления воспроизведением для одного или более основных AV клипов. Кроме того, файл PlayList может дополнительно включать в себя элемент SubPlayItem, который представляет основную информацию управления воспроизведением для файла текстовых потоков субтитров. Если элемент SubPlayItem включен в файл PlayList для воспроизведения одного или более файлов текстовых потоков субтитров, то элемент SubPlayItem синхронизирован с элементом (элементами) PlayItem. С другой стороны, если элемент SubPlayItem используется для воспроизведения просматриваемого показа слайдов, то он может не синхронизироваться с элементом (элементами) Playltem. В соответствии с настоящим изобретением основная функция SubPlayItem заключается в управлении воспроизведением одного или более файлов текстовых потоков субтитров.
Наконец, каталог вспомогательных данных (AUX DATA) может включать в себя файлы потоков вспомогательных данных, примерами которых являются файлы шрифтов (например, *.font или *.otf), файлы всплывающих меню (не показаны), звуковые файлы (например, Sound.bdmv) для генерации звука выбора. Файлы потоков текстовых субтитров могут быть включены в каталог вспомогательных данных вместо каталога потоков.
Фиг.2 иллюстрирует области хранения данных оптического диска согласно настоящему изобретению. Согласно фиг.2 оптический диск включает в себя область системной информации файлов, занимающую самую внутреннюю часть объема диска, область потоков, занимающую самую внешнюю часть объема диска, и область базы данных, находящуюся между областью системной информации файлов и областью потоков. В области системной информации файлов сохранена системная информация для управления всеми файлами данных, показанными на фиг.1. Затем, потоки AV данных и один или более потоков текстовых субтитров сохранены в области потоков. Общие файлы, файлы списков воспроизведения и файлы информации клипов, показанные на фиг.1, сохранены в области базы данных объема диска. Как описано выше, общие файлы включают в себя индексный файл и объектный файл, файлы списков воспроизведения и файлы информации клипов включают в себя информацию, необходимую для воспроизведения потоков AV данных и потоков текстовых субтитров, сохраненных в области потоков. Используя информацию, сохраненную в области базы данных и/или области потоков, пользователь может выбрать конкретный режим воспроизведения и воспроизводить основные потоки AV данных и потоки текстовых субтитров в выбранном режиме воспроизведения.
Фиг.3 иллюстрирует текстовой субтитр и основное изображение, представляемые на экране дисплея, при воспроизведении потока текстовых субтитров и основных потоков AV данных. Основное изображение и текстовой субтитр одновременно отображаются на экране дисплея, когда основной поток AV данных и соответствующий поток текстовых субтитров воспроизводятся синхронным образом.
На фиг.4 представлена схематичная диаграмма, иллюстрирующая управление воспроизведением основного AV клипа и клипов текстовых субтитров с помощью списка воспроизведения (PlayList). Согласно фиг.4 файл PlayList содержит, по меньшей мере, один элемент PlayItem, управляющий воспроизведением, по меньшей мере, одного основного AV клипа, и элемент SubPlayItem, управляющий воспроизведением множества клипов субтитров. Один клип 1 текстового субтитра и клип 2 текстового субтитра, показанные на фиг.4 для английских и корейских текстовых субтитров, могут быть синхронизированы с основным AV клипом, так что основное изображение и соответствующий текстовой субтитр отображаются на экране дисплея одновременно в конкретное время представления. Для отображения текстового субтитра на экране дисплея требуются информация управления отображением (например, информация положения и размера) и информация времени представления, примеры которых проиллюстрированы на фиг.5А-5С.
На фиг.5А иллюстрируется диалог, представленный на экране дисплея, согласно настоящему изобретению. Диалог представляет все текстовые данные субтитров, отображаемые на экране дисплея в течение заданного времени представления. В общем случае, время представления диалога может представляться в метках времени представления (PTS). Например, представление диалога, показанного на фиг.5А, начинается при PTS(k) и заканчивается при PTS(k+1). Поэтому диалог, показанный на фиг.5А, представляет полный блок текстовых данных субтитров, которые отображаются на экране дисплея между моментами PTS(k) и PTS(k+1). Диалог включает в себя, по меньшей мере, одну строку текста (символов) субтитров. Если имеется две или более строк текста субтитров в диалоге, то все текстовые данные могут отображаться согласно стилю, определенному для диалога. Максимальное количество символов, включенных в диалог, может быть ограничено примерно 100.
В дополнение, фиг.5В иллюстрирует области диалога согласно настоящему изобретению. Область представляет разделенную часть текстовых данных субтитров (диалога) на экране дисплея в течение заданного времени представления. Иными словами, диалог включает в себя, по меньшей мере, одну область, и каждая область может включать в себя, по меньшей мере, одну строку текста субтитров. Все текстовые данные субтитров, представляющие область, могут быть отображены на экране дисплея в соответствии со стилем области (глобальным стилем), присвоенным этой области. Максимальное число областей, включенных в диалог, должно определяться на основе желательной скорости декодирования данных субтитров, поскольку большее количество областей, в общем случае, приводит к более низкой скорости декодирования. Например, максимальное число областей для диалога может быть ограничено двумя, чтобы достичь приемлемо высокой скорости декодирования. Однако для других целей максимальное число могло бы быть большим, чем два.
Фиг.5С иллюстрирует информацию стилей для областей диалога в соответствии с настоящим изобретением. Информация стилей представляет собой информацию, определяющую свойства, требуемые для отображения, по меньшей мере, части области, включенной в диалог. Некоторыми из примеров информации стилей являются положение, размер области, цвет фона, выравнивание текста, информация заливки текста и многое другое. Информация стилей может классифицироваться на информацию стилей области (глобальная информация стилей) и подключаемую информацию стилей (локальная информация стилей). Информация стилей области определяет стиль области (глобальный стиль), который применим ко всей области диалога. Например, информация стилей области может состоять, по меньшей мере, из одного из следующего: положения области, размера области, цвета шрифта, цвета фона, заливки текста, выравнивания текста, строчного интервала, названия шрифта, стиля шрифта и размера шрифта области. Например, два разных стиля области применяются для области 1 и области 2, как показано на фиг.5С. Стиль области с положением 1, размером 1, синим цветом фона применяется к области 1, и другой стиль области с положением 2, размером 2 и красным цветом фона применяется к области 2.
С другой стороны, подключаемая информация стилей определяет подключаемый стиль (локальный стиль), который применяется к конкретной части текстовых строк, включенных в область. Например, подключаемая информация стилей может включать в себя, по меньшей мере, одно из типа шрифта, размера шрифта, стиля шрифта и цвета шрифта. Конкретная часть текстовых строк может быть всей строкой текста в пределах области или конкретной частью текстовой строки. Согласно фиг.5С конкретный подключаемый стиль применяется для части текста "гора", включенной в область 1. Иными словами, по меньшей мере, одно из типа шрифта, размера шрифта, стиля шрифта и цвета шрифта конкретной части текстовых строк отличается от остальной части текстовых строк в области 1.
Фиг.6А иллюстрирует представления диалогов текстовых субтитров на экране дисплея на интервалах метки времени представления (PTS). Имеются четыре диалога для отображения между PTS1 и PTS6. Более конкретно, диалог #1 имеет только одну область, и текст #1 отображается в этой области между PTS1 и PTS2. Диалог #2 имеет только область 1 и область 2, и текст #1 и текст #2 отображаются в области 1 и области 2 соответственно между PTS2 и PTS3. Затем, диалог #3 также имеет только одну область, и текст #2 отображается в этой области между PTS3 и PTS4. Между PTS4 и PTS5 нет диалога для представления, и текст #3 отображается в области диалога #4 между PTS5 и PTS6. Информация, определяющая диалог, включает в себя информацию времени представления диалога и текстовые данные диалога, включая информацию стиля и текстовые строки, которые должны отображаться в каждой области диалога. Примером информации времени представления является набор начальной метки PTS и конечной метки PTS, а информация стилей содержит (глобальную) информацию стилей области и подключаемую (локальную) информацию стилей, как описано выше. На фиг.6А показано, что различные наборы информации стилей могут применяться для диалога.
На фиг.6В иллюстрируется непрерывность между диалогами текстовых субтитров, представленных на экране дисплея на интервалах меток PTS. Согласно фиг.6В конечное время представления диалога #1 идентично начальному времени представления диалога #2. Поэтому имеет место непрерывность между диалогом #1 и диалогом #2. Отображение текста #1 в области диалога #1 является непрерывным с отображением текста #1 в области 1 диалога #2. Иными словами, интервалы меток PTS обоих диалогов являются непрерывными, и одна и та же информация стилей (области и подключаемая) используется при представлении текста #1 в обеих областях. Аналогичным образом, другая непрерывность имеет место между диалогом #2 и диалогом #3, поскольку отображение текста #2 в области 2 диалога #2 является непрерывным с отображением текста #2 в области диалога #3. Чтобы гарантировать непрерывность между двумя последовательными диалогами, отображающими один и тот же текст субтитров, интервалы времени представления (интервалы меток PTS) диалогов должны быть непрерывными. Кроме того, одна и та же информация стилей области и подключаемая информация стилей должна использоваться при представлении одного и того же текста в областях, соответственно. Согласно фиг.6В нет непрерывности между диалогом #3 и диалогом #4, поскольку их интервалы меток PTS не являются непрерывными. Индикатор (например, флаг_непрерывного_представления) может быть включен в информацию представления текущего диалога для указания на то, является ли данный диалог непрерывным с предыдущим диалогом.
Фиг.7А иллюстрирует файл потоков текстовых субтитров (например, 10001.m2ts, показанный на фиг.1) согласно настоящему изобретению. Он может быть сформирован из транспортного потока MPEG2, включающего в себя множество транспортных пакетов (ТР), все из которых имеют один и тот же идентификатор пакетов (например, PID=0x18xx). Когда дисковое проигрывающее устройство получает множество входных потоков, включающих в себя конкретный поток текстовых субтитров, оно находит все транспортные потоки, принадлежащие потоку текстовых субтитров, с использованием их PID. Согласно фиг.7А каждый поднабор транспортных потоков образует пакет элементарного потока пакетов (PES). Один из пакетов PES, показанных на фиг.7А, соответствует блоку стилей диалога (DSU), определяющему группу стилей области. Блок DSU часто упоминается как сегмент стилей диалога (DSS). Все остальные пакеты PES соответствуют блокам представлений диалога (DPU), каждый из которых включает в себя информацию представления для диалога, имеющего, по меньшей мере, одну область, и текстовые данные диалога, включающие в себя указатель стиля области, подключаемую информацию стиля и текстовые строки для каждой области. Аналогичным образом блок DPU также часто упоминается как сегмент представлений диалога (DPS).
На фиг.7В показана конкретная информация, содержащаяся в блоке DPU, и блок DSU, включенный в поток текстовых субтитров согласно настоящему изобретению. Блок DSU содержит наборы информации, определяющие группу стилей областей, каждый из которых применим к соответствующей области диалога. Кроме того, блок DPU содержит текстовые данные диалога и информацию представления диалога для диалога. Текстовые данные диалога включают в себя текстовые строки, которые должны быть включены в каждую область диалога, подключаемую информацию стилей для применения к конкретной части текстовых строк и идентификатор стиля области, указывающий на стиль области для применения к каждой области диалога. Идентификатор стиля области идентифицирует один из группы стилей области, определенных в блоке DSU. С другой стороны, информация времени представления может включать в себя начальное время представления (например, PTS_start) и конечное время представления (например, PTS__end) для представления диалога на экране дисплея, и информация обновления палитры может включать в себя указатель (например, флаг_обновления_палитры), указывающий, следует ли обновлять цвета дисплея диалога и применять информацию палитры (например, палитру для обновления) при обновлении цветов дисплея.
Все данные, включенные в поток текстовых субтитров, могут классифицироваться как три типа данных на основе их базовых функций. Например, данные могут классифицироваться как текстовые данные диалога, информация композиции и информация визуализации, как показано на фиг.7В. Текстовые данные диалога включают в себя текстовые строки, подключаемую информацию стилей и идентификатор стиля области для каждой области диалога. Информация композиции включает в себя информацию времени представления, примерами которой являются начальное и конечное время представления, информацию положения для области диалога и информацию обновления палитры для диалога. Наконец, информация визуализации включает в себя информацию, требуемую для визуализации текстовых строк в виде графических данных для представления. Согласно фиг.7В, горизонтальное и вертикальное положения каждой области, включенной в блок DSU, являются частью информации композиции, а ширина области, высота области, цвет шрифта, цвет фона, заливка текста, выравнивание текста, строчный интервал, название шрифта, стиль шрифта и размер шрифта, включенные в блок DSU, представляют информацию визуализации.
Блок DSU включает в себя набор информации стилей области (набор стилей диалога), определяющей ограниченное число определенных автором стилей области, соответственно. Например, максимальное число стилей области, определенных в блоке DSU, может быть ограничено 60, а стили области могут идентифицироваться их идентификаторами стиля области (ид_стиля_области). Поэтому автор сохраняет блок DSU, определяющий только ограниченное число стилей областей на оптическом диске. Стили областей используются дисковым проигрывающим устройством при воспроизведении потоков текстовых субтитров, записанных на оптическом диске. Альтернативно, дисковое проигрывающее устройство может использовать другие стили областей, определенные дополнительным набором информации стилей, которая может быть обеспечена от внешнего источника. Примером такого источника является локальная память данных, включенная в дисковое проигрывающее устройство. В результате области субтитров, воспроизводимые из потоков текстовых субтитров, записанных на оптическом диске, могут иметь разнообразные стили областей.
Фиг.8 иллюстрирует синтаксис для потока текстовых субтитров (поток()_текстовых_субтитров), согласно примеру осуществления настоящего изобретения. Как упомянуто ранее, синтаксис потока текстовых субтитров включает в себя синтаксис для блока стилей диалога (блок()_стилей_диалога), включающего в себя набор информации, определяющей набор стилей областей, соответственно, и синтаксис для множества блоков представления диалога (блок()_представления_диалога), где синтаксис каждого блока DPU включает в себя информацию представления диалога и, по меньшей мере, одну область текста диалога. Каждая область текста диалога включает в себя идентификатор стиля области, одну или более текстовых строк и подключаемую информацию стилей, причем идентификатор стиля области идентифицирует один из набора стилей областей, определенных в синтаксисе DSU.
Фиг.9А иллюстрирует синтаксис для блока стилей диалога (блок()_стилей_диалога), включенного в синтаксис потока текстовых субтитров, показанный на фиг.8. Синтаксис блока стилей диалога включает в себя синтаксис для набора стилей диалога (набор()стилей_диалога), в котором определен набор определенных автором стилей области. На фиг.9В иллюстрируется синтаксис для набора стилей диалога (набор()_стилей_диалога), включенного в синтаксис блока стилей диалога, показанный на фиг.9А. Синтаксис набора стилей диалога включает в себя набор информации стилей области, определяющей набор стилей области (стиль()_области), соответственно, и поле данных или флаг (флаг_стиля_проигрывающего_устройства), указывающий, разрешено ли автором проигрывающему устройству генерировать свой собственный набор стилей (стили проигрывающего устройства) для текстовых субтитров в дополнение к набору определенных автором стилей, определенных в стиле()_области. Синтаксис набора стилей диалога также включает в себя синтаксис для изменяемого пользователем набора стилей (изменяемый_пользователем_ набор()_стилей), определяющего набор стилей пользовательского управления.
Согласно фиг.9В идентификаторы стилей области (ид_стиля_области) присвоены набору стилей области (стиль()_области), соответственно, и каждая информация стиля области представляет глобальную информацию стиля, применимую ко всей части области текста диалога. Идентификатор стиля области, включенный в блок DPU для каждой области, включает в себя один из идентификаторов стиля области. Поэтому стиль области, соответствующий идентификатору стиля области, применяется при воспроизведении, по меньшей мере, одной области текста диалога, содержащегося в каждом блоке DPU.
Ниже более подробно рассмотрены свойства представления конкретной области, определенные в каждом стиле области (стиль()_области). Горизонтальное положение области (горизонтальное_положение_области) определяет горизонтальный адрес верхнего левого пиксела области в графической области, а вертикальное положение области (вертикальное_положение_области) определяет вертикальный адрес верхнего левого пиксела области в графической области. Кроме того, ширина области (ширина_области) определяет горизонтальную длину прямоугольной области от горизонтального положения области, а высота области (высота_области) определяет вертикальную длину прямоугольной области от вертикального положения области. Индекс цвета фона области (индекс_цвета_фона_области) определяет значение индекса, указывающего на цвет фона области.
Кроме того, горизонтальное положение текста (горизонтальное_положение_текста) определяет горизонтальный адрес начала текста в области, а вертикальное положение текста (вертикальное_положение_текста) определяет вертикальный адрес начала текста в области. Заливка текста (заливка_текста) определяет, по меньшей мере, одно из продвижения символа (слева_направо или справа_налево) и продвижение строки (сверху_вниз или снизу__вверх) в области. Выравнивание текста (выравнивание_текста) определяет выравнивание (по левой стороне, центру, правой стороне) визуализируемого текста в области. Если диалог имеет более одной области, то одна и та же заливка текста может быть применена ко всем областям, чтобы исключить введение в заблуждение пользователя. Согласно фиг.9 В, строчный интервал (строчный_интервал) определяет расстояние между двумя соседними строками текста в области. Идентификация шрифта (ид_шрифта) указывает идентификацию шрифта, заданную в файле информации клипа. Стиль шрифта (стиль_шрифта) определяет стиль шрифта для текста в области, примерами которого могут быть нормальный, жирный, курсив и жирный курсив. Размер шрифта (размер_шрифта) определяет размер шрифта для текста в области, примером которого может быть вертикальный размер символов в блоке пикселов. Наконец, индекс цвета шрифта (индекс_цвета_шрифта) определяет значение индекса, указывающее цвет текста в области.
Флаг стиля проигрывающего устройства (флаг_стиля_проигрывающего_устройства), показанный на фиг.9В, указывает на то, разрешено ли автором дисковому проигрывающему устройству генерировать и использовать свой собственный набор стилей (стили проигрывающего устройства), которые могут быть предварительно сохранены в локальной памяти дискового воспроизводящего устройства, для текстовых субтитров, в дополнение к определенным автором стилям областей, определенным в оптическом диске. Например, если значение флага стиля проигрывающего устройства установлено в 1b, то автор разрешает генерировать и/или использовать собственный набор стилей проигрывающего устройства. С другой стороны, если значение флага стиля проигрывающего устройства установлено в 0b, то автор запрещает проигрывающему устройству генерировать и/или использовать набор стилей проигрывающего устройства.
Фиг.9С иллюстрирует синтаксис для изменяемого пользователем набора стилей (изменяемый_пользователем_набор()стилей), включенного в синтаксис набора стилей диалога, показанный на фиг.9В. Элемент (изменяемый_пользователем_набор()стилей) включает в себя набор информации пользовательского управления, определяющий набор стилей пользовательского управления (стиль()_пользовательского_управления), где каждый стиль пользовательского управления конфигурируется для изменения, по меньшей мере, одного из свойств представления области, определенного соответствующим стилем области. Путем выбора одного из набора стилей пользовательского управления пользователь может изменить стиль области для каждой области очень простым способом. Однако если все свойства, определенные стилем области, являются изменяемыми пользователем, то управление отображением диалога пользователем может стать очень трудным. По этой причине свойства представления области, которые являются изменяемыми посредством стиля пользовательского управления, могут ограничиваться, по меньшей мере, одним из горизонтального положения области, вертикального положения области, размера шрифта, горизонтального положения текста, вертикального положения текста и строчного интервала.
В соответствии с фиг.9В и 9С, набор стилей пользовательского управления определяется для каждого стиля области, имеющей ИД стиля области, и ИД пользовательских стилей (ид_пользовательского_стиля) присваиваются набору стилей пользовательского управления, соответственно. Максимальное число стилей пользовательского управления, определенных для каждого стиля области, может быть ограничено 25. Поскольку максимальное число стилей области, определенное в наборе стилей диалога, ограничено 60, то полное число изменяемых пользователем стилей, определенных для блока DPU, должно быть меньше или равно 1500.
Согласно фиг.9С для изменения горизонтального положения области стиль пользовательского управления может включать в себя направление горизонтального положения области (направление_горизонтального_положения_области), определяющее направление перемещения по горизонтали горизонтального положения области и приращение горизонтального положения области (дельта_горизонтального_положения_области), определяющее число горизонтального перемещения в блоках пикселов. Например, горизонтальное перемещение может быть в правом направлении, если направление горизонтального положения установлено в 0, и может быть в левом направлении, если оно установлено в 1. Для изменения вертикального положения области стиль пользовательского управления может включать в себя направление вертикального положения области (направление_вертикального__положения_области), определяющее направление перемещения по вертикали горизонтального положения области и приращение вертикального положения области (дельта_вертикального_положения_области), определяющее число вертикального перемещения в блоках пикселов. Например, вертикальное перемещение может быть в направлении вниз, если направление вертикального положения установлено в 0, и может быть в направлении вверх, если оно установлено в 1. Кроме того, для изменения размера шрифта, определяемого стилем области с ИД стиля области, стиль пользовательского управления может включать в себя направление изменения размера шрифта (размер_шрифта_inc_dec), определяющее направление изменения размера шрифта и разницу размера шрифта (дельта_размера_шрифта), определяющую число изменения размера шрифта в блоках пикселов. Например, размер шрифта может быть увеличен, если (размер_шрифта_inc_dec) установлен на 0, и может быть уменьшен, если он установлен на 1.
Некоторые характеристические признаки набора изменяемых пользователем стилей, согласно настоящему изобретению, являются следующими. Во-первых, набор стилей пользовательского управления определен для каждого из набора стилей области, определенных в блоке стилей диалога, и число, составляющее набор стилей управления, фиксировано. Поэтому число стилей пользовательского управления, определенных двумя различными стилями областей, идентично. Число, составляющее набор стилей пользовательского управления, подлежащих использованию при воспроизведении каждой области текста диалога, фиксировано. Во-вторых, набор стилей пользовательского управления идентифицируется различными ИД стилей пользователя, соответственно. В-третьих, все изменения в свойствах представления области определены в комбинации единого стиля пользовательского управления. Например, горизонтальное положение области и размер шрифта не изменяются отдельно посредством двух разных стилей пользовательского управления. Они изменяются в комбинации посредством единого стиля пользовательского управления. В-четвертых, изменение некоторого свойства представляется его направлением и величиной, вместо действительного значения свойств. Действительное значение свойства может быть получено путем применения величины (дельты) и направления изменения к первоначальному значению свойства, определенному в стиле области.
В заключение, если автор записывает основные потоки AV данных на оптический диск, автор также записывает, по меньшей мере, один поток текстовых субтитров. Каждый поток текстовых субтитров включает в себя блок DSU, определяющий набор стилей диалога и множество блоков DPU. Набор стилей области имеет разные ИД стилей области. Блок DSU дополнительно определяет набор стилей пользовательского управления для каждого стиля области, причем стили пользовательского управления имеют отличающиеся ИД стиля пользователя. Каждый стиль пользовательского управления конфигурируется для изменения, по меньшей мере, одного из свойств определенного автором представления области, которые определены соответствующим стилем области. В дополнение, набор стилей диалога включает в себя флаг стилей проигрывающего устройства, указывающий на то, разрешено ли автором проигрывающему устройству генерировать и/или использовать свой собственный набор стилей проигрывающего устройства для текстовых субтитров, в дополнение к определенному автором набору стилей.
Далее подробно описывается устройство для декодирования основных потоков AV данных и потоков текстовых субтитров согласно настоящему изобретению, пример которого показан на фиг.10. Устройство содержит фильтр 5 идентификатора пакета (PID) для разделения входных потоков на потоки видеоданных, потоки аудиоданных, потоки графических данных, потоки текстовых субтитров, на основе их идентификаторов пакетов, блок 20 декодирования потоков видеоданных, блок 10 декодирования потоков аудиоданных, блок 30 декодирования графических данных и блок 40 декодирования потоков текстовых субтитров для декодирования потоков текстовых субтитров.
Потоки текстовых субтитров могут быть извлечены из оптического диска или из дополнительного внешнего источника, как показано на фиг.10. По этой причине устройство дополнительно содержит переключатель 6, который выбирает источник входных данных. Поэтому, если потоки текстовых субтитров извлекаются из оптического диска, то переключатель 6 выбирает линию А данных, соединенную с фильтром 5 PID. С другой стороны, если они вводятся из внешнего источника, то переключатель 6 выбирает линию В, соединенную с внешним источником.
Согласно фиг.10, блок 10 декодирования потоков аудиоданных, блок 20 декодирования потоков видеоданных и блок 30 декодирования графических данных содержат транспортные буферы 11, 21, 31 соответственно для хранения данных потока, подлежащего декодированию. Видеоматрица (VP) 23 и графическая матрица 33 включены в блок 20 декодирования потоков видеоданных и блок 30 декодирования графических данных соответственно для преобразования декодированных сигналов в отображаемые видео- и графические изображения. Блок 30 декодирования графических данных включает в себя цветную таблицу преобразования (CLUT) 34 для управления уровнями цвета и прозрачности отображаемых графических изображений.
Когда блок 40 декодирования потоков текстовых субтитров получает поток текстовых субтитров, поддерживающий один язык, с переключателя 6, вся часть потока текстовых субтитров может быть предварительно загружена в буфер предварительной загрузки субтитров (SPB) 41 сразу. Альтернативно, если имеется более одного текстового субтитра для поддержки множества языков, все потоки текстовых субтитров могут быть предварительно загружены в буфер SPB 41 сразу. Поэтому размер буфера SPB 41 должен быть определен на основе общего числа файлов потоков текстовых субтитров, получаемых от переключателя 6. Например, размер буфера SPB 41 должен быть больше или равен 0,5 Мбайт для предварительной загрузки 0,5 мегабайтового файла потоков текстовых субтитров. Кроме того, чтобы гарантировать плавное представление текстовых субтитров, когда пользователь переключается между двумя 0,5 мегабайтовыми файлами потоков текстовых субтитров, размер буфера SPB 41 должен быть больше или равен 1 Мбайт. Размер буфера SPB 41 должен быть достаточно большим, чтобы предварительно сразу загрузить все требуемые файлы потоков текстовых субтитров.
Блок 40 декодирования потоков текстовых субтитров, показанный на фиг.10, дополнительно включает в себя буфер предварительной загрузки шрифтов (FPB) 410 для сохранения всех ассоциированных файлов шрифтов, которые могут быть включены в каталог вспомогательных данных, показанный на фиг.1. Аналогичным образом, размер буфера FPB 410 должен быть достаточно большим, чтобы предварительно сразу загрузить все требуемые файлы шрифтов, чтобы гарантировать плавное представление текстовых субтитров, поддерживающих один или более языков. Как только все имеющиеся файлы потоков текстовых субтитров и связанные с ними файлы шрифтов предварительно загружены, извлечение и использование предварительно загруженных данных могут осуществляться простым способом. Также по этой причине управление буфером SPB 41 и буфером FPB 410 может быть довольно простым. Блок 40 декодирования потоков текстовых субтитров дополнительно включает в себя декодер 42 текстовых субтитров, который декодирует каждый поток текстовых субтитров, сохраненный в буфере SPB 41, графическую матрицу 43, в которой декодированные данные субтитров упорядочиваются как отображаемые изображения субтитров, и цветную таблицу преобразования (CLUT) 44 для управления, по меньшей мере, одним из уровней цвета и прозрачности преобразованных изображений субтитров.
Блок 40 декодирования потоков текстовых субтитров дополнительно включает в себя локальную память 45 данных, которая хранит набор стилей проигрывающего устройства, определяющий набор стилей проигрывающего устройства, которые могут селективно использоваться при воспроизведении потока текстовых субтитров, предварительно загруженных в буфер SPB 41. Кроме того, локальная память 45 данных может дополнительно сохранять изменяемый пользователем набор, определяющий набор стилей пользовательского управления для селективного использования при воспроизведении потока текстовых субтитров. Этот изменяемый пользователем набор может быть подобным изменяемому пользователем набору, включенному в блок DSU, показанный на фиг.9С.
Согласно первому аспекту изобретения каждый стиль проигрывающего устройства представляет стиль области, полный набор свойств представления области для области текста диалога, примерами которых являются горизонтальное положение области, вертикальное положение области, ширина области, высота области, индекс цвета фона области, горизонтальное положение текста, вертикальное положение текста, заливка текста, выравнивание текста, строчный интервал, идентификация шрифта, стиль шрифта, размер шрифта и индекс цвета шрифта. В этом случае набор стилей проигрывающего устройства, хранимый в локальной памяти 45 данных, используется независимо от набора стилей области, определенного в блоке DSU.
Во втором аспекте настоящего изобретения каждый стиль проигрывающего устройства конфигурируется для переопределения, по меньшей мере, одного из свойств представления области, которые первоначально определены посредством стиля области, определенного в блоке DSU. Например, если стиль области, определенный в блоке DSU, определяет полный набор свойств представления области, включая идентификацию шрифта, и стиль проигрывающего устройства переопределяет идентификацию шрифта, то переопределенная идентификация шрифта и все другие свойства, определенные стилем области, используются в комбинации.
В третьем аспекте настоящего изобретения каждый стиль проигрывающего устройства конфигурируется для изменения, по меньшей мере, одного из свойств представления области, которые первоначально определены, посредством стиля области, определенного в блоке DSU. Например, стиль проигрывающего устройства может определять направление и величину изменения в горизонтальном положении области, определенном стилем области. В этом случае набор стилей проигрывающего устройства подобен изменяемому пользователем набору, пример которого показан на фиг.9С.
Фиг.11 иллюстрирует способ декодирования потока текстовых субтитров, записанных на оптическом диске, согласно примеру выполнения настоящего изобретения. После того как декодер 42 текстовых субтитров запускает воспроизведение потока текстовых субтитров, предварительно загруженных в буфер SPB 41, он первоначально считывает флаг_стиля_проигрывающего_устройства, включенный в блок DSU, чтобы определить, разрешено ли использование набора стилей проигрывающего устройства, сохраненного в локальной памяти 45 данных (S110). Например, если флаг_стиля_проигрывающего_устройства установлен на 0b, то использование набора стилей проигрывающего устройства не разрешено. В этом случае декодер 42 текстовых субтитров должен использовать определенные автором стили области, записанные на оптическом диске (S111). С другой стороны, если флаг_стиля_проигрывающего_устройства установлен на 1b, то декодеру 42 текстовых субтитров разрешено использование набора стилей проигрывающего устройства, сохраненного в локальной памяти 45 данных. В этом случае декодер 42 текстовых субтитров независимо определяет, следует ли использовать любой один из набора стилей проигрывающего устройства, определенный в наборе стилей проигрывающего устройства (S112). Например, декодер 42 текстовых субтитров может сравнить набор стилей проигрывающего устройства со стилями области, определенными в потоке текстовых субтитров, и использовать результат этого сравнения для определения на этапе S112. Если набор стилей проигрывающего устройства не определен для использования на этапе S112, то используются стили области, записанные на оптическом диске (S111). С другой стороны, если набор стилей проигрывающего устройства определен для использования на этапе S112, то декодер 42 текстовых субтитров может использовать их независимо или в комбинации с набором стилей области, записанных на диске.
Кроме того, когда декодер 42 текстовых субтитров декодирует блок DPU, он может использовать стиль области, идентифицированный идентификатором стиля области, включенным в блок DPU. Если пользователю желательно изменить этот стиль области, он может ввести команду на изменение стиля области. Путем выбора одного из набора стилей пользовательского управления, которые определены набором изменяемых пользователем стилей, определенным в блоке DSU, по меньшей мере, одно из горизонтального положения области, вертикального положения области и размера шрифта может быть изменено.
Устройство, показанное на фиг.10, дополнительно содержит блок 50 суперпозиции изображений, который выполняет суперпозицию изображений, выведенных из блока 20 декодирования видеоданных, блока 30 декодирования графических данных и блока 40 декодирования текстовых субтитров. Эти объединенные изображения отображаются на экране дисплея, как показано на фиг.3. В общем, видеоизображения, выводимые из VP 23 блока 20 декодирования видеоданных, могут отображаться как фон на экране дисплея, и изображения, выведенные из блока 30 декодирования графических данных и/или блока 40 декодирования текстовых субтитров, могут накладываться на видеоизображения в предварительно определенном порядке. Например, если выходные изображения блока 30 декодирования графических данных являются графическими изображениями представления, то эти изображения могут первоначально накладываться на видеоизображения с помощью первого сумматора 52, и потом изображения текстовых субтитров с блока 40 декодирования текстовых субтитров могут накладываться на видеоизображения с помощью второго сумматора 53. Однако если выходные изображения блока 30 декодирования графических данных являются интерактивными графическими изображениями, то изображения текстовых субтитров с блока 40 декодирования текстовых субтитров могут первоначально накладываться на видеоизображения с помощью первого сумматора 52. Затем интерактивные графические изображения могут дополнительно накладываться поверх изображений с наложенными субтитрами с помощью второго сумматора 53.
Наконец, устройство, показанное на фиг.10, дополнительно содержит системный декодер 4 для декодирования входных транспортных потоков (например, транспортных потоков стандарта MPEG) и микропроцессор 3 для управления операциями всех компонентов вышеописанного устройства.
Промышленная применимость
Специалистам в данной области техники должно быть понятно, что различные модификации и видоизменения могут быть выполнены в настоящем изобретении без отклонения от сущности и объема изобретения. Таким образом, следует иметь в виду, что настоящее изобретение перекрывает все такие модификации и видоизменения, при условии, что они входят в объем защиты пунктов формулы изобретения и их эквивалентов. В соответствии с настоящим изобретением множество стилей пользовательского управления определены для каждого стиля области, определенного в сегменте стилей диалога. Каждый стиль пользовательского управления выбирается пользователем и конфигурируется для изменения свойств представления области, определенных соответствующим стилем области. Поэтому пользователь может иметь возможности выбора одного из множества стилей пользовательского управления.