Настоящее изобретение относится к способу и устройству, предназначенным для адресации потока битов, который должен быть записан или который записывают на носитель данных, например на оптический диск.
Предшествующий уровень техники
При записи потока битов можно произвольно разделять этот поток битов на подблоки более регулярной структуры. Данные представления в DVD (в цифровых видеодисках или в цифровых универсальных дисках) организованы в блоки, которые называются Блок видеообъекта, которые сокращенно обозначаются VOBU или Блок объектов потока, которые обозначаются SOBU, например, в DVD VR для видеозаписи на DVD блоки называются VOBU. VOBU имеют переменный размер (количество данных, измеряемое количеством секторов), а также имеют различную длительность (которая измеряется в количестве видеофайлов). SOBU имеет постоянный размер, но переменную длительность.
Для воспроизведения данных с диска спецификация DVD VR предусматривает наличие "карты VOBU", которая представляет собой таблицу, в которой для каждого VOBU записи вводится его длина в секторах и длительность в полях.
В патенте ЕР-А-0729153 описана таблица, которая используется для режима комбинированного воспроизведения, причем в этой таблице код времени назначается каждому сектору оптического диска, который может иметь переменную скорость передачи.
Краткое описание изобретения
Таблица для поиска данных на носителе данных может основываться на данных потока битов, которые разделяются на части постоянной длительности. "Длительность" означает разность между временем поступления первого пакета части данных и временем поступления пакета, следующего непосредственно после последнего пакета этой части данных.
"Организация" в общем контексте записи на DVD VR или записи потока представляет собой задачу перевода заданной величины времени (времени представления в случае записи DVD VR или времени поступления пакета в случае записи потока) в величину адреса на диске, по которому можно найти требуемые данные.
В таких системах карта VOBU или SOBU или "список отображения", который обозначает как MAPL, может содержать определенный размер или определенное смещение или определенный размер изменения или, в общем, определенную величину типа адреса для каждой из этих частей с постоянной длительностью. При записи величин изменения вместо общей длительности для текущего VOBU или SOBU эти входные элементы могут быть описаны с использованием более короткой длины слова, что позволяет составить карту MAPL с разумным размером.
Возможный тип организационного процесса для таких систем может включать следующие этапы:
- Путем разделения и усечения вычисляется по данной величине времени индекс входного элемента в списке отображения, который необходимо просмотреть.
- Содержание входного элемента в списке отображения непосредственно описывает величину адреса, доступ к которому необходимо осуществить, или все входные элементы списка отображения, вплоть до этого индекса, должны суммироваться с нарастающим итогом для получения величины адреса, доступ к которому необходимо осуществить.
Большой недостаток такого типа MAPL, который основывается на частях с постоянной длительностью, состоит в следующем:
- В случае низкой скорости передачи бит при записи части данных постоянной длительности будут иметь малые размеры, то есть, каждая часть будет содержать только несколько секторов данных или, в крайнем случае, только часть сектора данных. Диск может содержать огромное количество таких частей, так что MAPL может стать слишком большим, чтобы его можно было держать в памяти.
- В случае высокой скорости передачи бит при записи части данных с постоянной длительностью будут иметь большой размер, то есть, каждая часть будет содержать большое количество секторов данных. Поэтому адресация одной части или другой части будет соответствовать очень грубой адресации в масштабе (сектора), то есть, адрес части, полученный из MAPL, может указывать на место, отстоящее на большое количество секторов от требуемого в данный момент местоположения.
Поэтому организация на основе частей с постоянной длительностью в некоторых случаях может привести к слишком большому размеру MAPL (до половины емкости диска), и в других случаях может привести к слишком грубой адресации.
Целью настоящего изобретения является описание способа назначения адреса носителя данных заданной величине времени, причем этот способ не имеет указанных недостатков. Эта цель достигается с помощью способа, описанного в пункте 1 формулы изобретения.
В соответствии с настоящим изобретением список MAPL отображения основывается на частях данных постоянной длины или размера, то есть, на постоянном количестве битов в части. В носителе данных типа DVD-RAM, в котором данные физически организованы в "блоки ЕСС" (ЕСС: код исправления ошибок), каждый размером 32 кбайта, в особенности предпочтительно, чтобы вышеприведенный постоянный размер или число, кратное ему, использовались в качестве постоянного размера части данных. Однако может также использоваться любой другой постоянный размер. В случае применения частей данных с постоянным размером MAPL содержит для каждой из этих частей с постоянным размером конкретную абсолютную длительность или, предпочтительно, конкретное изменение длительности, которое указывает на разницу времени поступления первого пакета части данных и времени поступления пакета, следующего непосредственно за последним пакетом этой части данных. Процесс организации, то есть вычисления требуемого адреса VOBU или SOBU включает следующие этапы:
- Суммирование с нарастающим итогом изменений длительности, содержащихся в MAPL до тех пор, пока данное значение времени не подойдет ближе всего к требуемому VOBU или SOBU, то есть, до тех пор, пока сумма изменений длительностей будет меньше или равна заданной величины времени, и результат после прибавления следующего изменения длительности будет больше, чем заданная величина времени, предполагая, что производится сканирование вперед входных элементов VOBU или SOBU, или до тех пор, пока сумма изменений длительности будет больше, чем заданная величина времени, предполагая, что выполняется сканирование входных элементов VOBU или SOBU назад.
- Текущий индекс входного элемента в этом списке отображения, умноженный на постоянный размер части данных, непосредственно приводит к получение величины адреса, доступ к которому необходимо осуществить.
Преимущества MAPL, основанного на постоянном размере в соответствии с настоящим изобретением, состоят в следующем:
- Размер MAPL не зависит от скорости потока битов при записи.
- Точность адресации MAPL является постоянной, при этом степень разбиения, в общем, соответствует "постоянной размера части данных", которая может выбираться соответствующим образом так, чтобы она была постоянной для всех типов дисков, постоянной для данного диска или постоянной для определенной записи на конкретном диске.
Предпочтительно, таблица адресов содержит дополнительную величину инициализации, которая инициализирует накопление изменений длительности времени.
В принципе способ в соответствии с настоящим изобретением предназначен для адресации потока битов, которые должны быть записаны или которые записываются на носитель данных, например, в устройство записи DVD, в котором используется таблица адресов, которая основывается на частях указанного потока битов, и в котором:
- каждая из указанных частей включает постоянное количество битов указанного потока битов;
- каждому входному элементу в таблице адресов для указанных частей назначается текущий индекс, в частности, каждому входному элементу в таблице адресов, за исключением одного, который имеет наивысший индекс, в указанной таблице адресов назначается изменение длительности;
- таблица адресов дополнительно содержит величину инициализации, которая позволяет совместно использовать одинаковые биты между заранее заданной величиной самых старших двоичных разрядов (MSB) временной метки приложения и такой же величиной самых младших двоичных разрядов (LSB) для указанных изменений длительности;
- для получения величины адреса для осуществления доступа к требуемому адресу указанная величина инициализации и все изменения длительности вплоть до ближайшей длительности времени, соответствующей указанной величине адреса, суммируются с нарастающим итогом, и текущий индекс, соответствующий входному элементу изменения длительности, относящийся к указанному ближайшему времени, умножается на указанную постоянную величину для вычисления указанной величины адреса.
Предпочтительные дополнительные варианты воплощения способа в соответствии с настоящим изобретением описаны в соответствующих зависимых пунктах формулы изобретения.
Краткое описание чертежей
Варианты воплощения настоящего изобретения описаны со ссылками на прилагаемые чертежи, на которых:
фиг.1 изображает упрощенную блок-схему всей системы записи потока DVD;
фиг.2 - основную структуру директории и файлов;
фиг.3 - структуру данных навигации;
фиг.4 - пакет потока;
фиг.5 - список отображения в соответствии с настоящим изобретением;
фиг.6 - структуру этого списка отображения;
фиг.7 - пример списка отображения;
фиг.8 - сравнение нескольких величин времени;
фиг.9 - структуру IAPAT;
фиг.10 - структуру АРАТ и PAT.
фиг.11 - структуру ATS.
Примеры вариантов воплощения
Система записи потока DVD VR разработана для использования перезаписываемых DVD дисков для записи существующих цифровых потоков битов, их редактирования и воспроизведения их в виде потока битов.
Используются следующие сокращения:
АР: пакет приложения, АРАТ: время поступления пакета приложения, ATS: временная метка приложения, IAPAT: инкрементное увеличение АРАТ (величины изменений с разрешением 12 бит), LB: логический блок, LSB: самый младший двоичный разряд, MAPL: список отображения, MSB: самый старший двоичный разряд, MTU SHFT: сдвиг на блок времени отображения (целая величина без знака, например, 18), PAT: время поступления пакета, RBN: относительный номер байта, RBP: относительное положение байта, RLBN: относительный номер логического блока, SCR: опорная системная тактовая частота, SOB: объект потока, SOBU: блок объекта потока, SOB_E_APAT: АРАТ последнего АР SOB, SOB_S_APAT: АРАТ первого АР SOB, SOBU_S_APAT: АРАТ первого АР SOBU, STB: электронное устройство, SUM_IAPAT = суммирование величин IAPAT, TOC: таблица содержания.
Данная система разработана так, чтобы она удовлетворяла следующим требованиям:
Механизм согласования по времени, т.е. временная метка добавляется к каждому передаваемому пакету для обеспечения правильной подачи пакета при воспроизведении.
Для расширения областей применения следует обеспечить возможность записи не в режиме реального времени. Однако в этом случае STB должно генерировать информацию о временной метке.
Стратегия размещения данных и файл поддерживают запись потока в режиме реального времени.
Многие цифровые услуги требуют наличия сервисной информации, которая обычно вводится в поток в режиме реального времени. Для поддержания STB, в которое поступают данные из устройства воспроизведения DVD, DVD должен иметь дополнительное пространство, которое может использоваться STB для дублирования части сервисной информации и для добавления дополнительной информации ТОС.
Должна поддерживаться защита от копирования. Кроме того, любая перестановка элементов провайдером услуги или STB должна быть выдержана без изменения.
Требования Пользователя могут быть сгруппированы на требования для записи, требования для воспроизведения и требования для редактирования:
Запись в режиме реального времени
Система должна быть сконструирована таким образом, чтобы она позволяла осуществлять запись в режиме реального времени цифровых потоков. Она также должна позволять пользователю объединять записи, даже если эти записи состоят из различных форматов потока. Если записи объединяются, желательно обеспечить возможность воспроизведения без стыков, но это требование не обязательное.
Поддержка навигации
Для поддержки навигации во время записи должны генерироваться две части информации (списки):
1) "Оригинальная" версия списка воспроизведения. Этот список содержит информацию относительно низкого уровня, например, карту времени или порядок (передачи) пакетов записи. Доступ к этому списку может осуществляться STB, и его содержание понятно для стримера DVD, а также STB. В оригинальной версии список позволяет производить воспроизведение всей записи. Доступ к списку воспроизведения может быть выполнен и расширен после записи с помощью STB для получения более сложной последовательности воспроизведения.
2) Вторая часть информации, список отображения, генерируется для поддержки устройства, записывающего поток, для воспроизведения порций (ячеек) потока пакетов, которые описываются как домены приложения, например "передаваемые пакеты" или "время". Этот список принадлежит и понимается только стримером DVD.
Описание содержания
Система должна зарезервировать место, которое может использоваться STB для накопления информации ТОС и сервисной информации высокого уровня. Эта информация предоставляется пользователю для навигации по содержанию записанной на диске информации, и может содержать расширенную информацию GUI (графического интерфейса пользователя). От записывающего устройства потока не требуется понимание этого содержания. Однако может оказаться полезным сделать общей часть информации ТОС, например, на основе строки символов, так, чтобы она была общей между STB и DVD, чтобы позволить записывающему поток устройству самому формировать основное меню.
Воспроизведение отдельных записей и воспроизведение всех записей последовательно должно осуществляться с помощью списка воспроизведения.
Меню устройства воспроизведения для выбора точек входа
STB может генерировать расширенные меню на основании информации ТОС, записанной на диске. Однако должна быть возможность генерировать простые меню с помощью самого стримера, например, с использованием некоторой информации, записанной в виде "символов", которая является общей для STB и DVD.
Режимы комбинированного воспроизведения
STB должно иметь возможность управлять комбинированным воспроизведением с помощью "списка воспроизведения". Из-за природы передаваемого потока свойства комбинированного воспроизведения могут быть ограничены основными свойствами, например, поиском по времени или перескакиванием по названиям.
Свойства последовательности воспроизведения, определяемые пользователем, так же как программирование или контроль со стороны родителей, могут поддерживаться с помощью списка воспроизведения.
Стример DVD должен создавать "оригинальную версию" списка воспроизведения. Он также должен позволять производить расширение и модификацию списка воспроизведения с помощью STB для расширенных возможностей воспроизведения. Стример DVD не отвечает за содержание такого расширенного списка (списков) воспроизведения.
Система должна поддерживать стирание отдельных записей по запросу пользователя. Если возможно, система должна осуществлять такое свойство под управлением STB. Система может поддерживать редактирование типа вставки.
На упрощенной схеме общей системы, изображенной на фиг.1, устройство AD приложения взаимодействует через интерфейс IF, например, интерфейс типа IEEE1394, с устройством STRD стримера, например, с записывающим устройством DVD. Стример STR в устройстве STRD посылает свои данные через выходное средство ВТНО буферизации и обработки временной метки на IF и принимает данные из IF через входное средство BTHI буферизации и обработки временной метки. AD посылает свои данные через выходное средство BTHOAD буферизации и обработки временной метки в IF и принимает из IF данные через входное средство BTHIAD буферизации и обработки временной метки.
В отношении структуры директории и файлов организация данных потока и данных навигации при записи потока DVD выполняется определенным образом, в котором учитываются следующие моменты:
- любое устройство STRD стримера DVD имеет некоторые требования в отношении накопления его собственного списка отображения или навигационных данных, имеющих отношение к данному стримеру на диске. Эти данные используются исключительно для воспроизведения записанных данных; не требуется их понимание или даже их отображение для какого-либо внешнего устройства AD приложения.
- любое устройство STRD стримера DVD должно связываться с устройством AD приложения, к которому оно подключено. Такая связь должна быть настолько универсальной, чтобы к стримеру можно было подключать максимально возможный диапазон приложений. Навигационные данные для поддержания такой связи называются общими навигационными данными и должны быть понятными для стримера, а также для устройства приложения.
Устройство STRD стримера должно предлагать подключенному устройству AD приложения средство для накопления его собственных частных данных любого требуемого вида. От стримера не требуется понимание какого-либо их содержания, внутренней структуры или значения этих данных, относящихся к навигации приложения.
На фиг.2 изображена возможная структура директории и файла, в которых содержатся все данные, составляющие содержание диска. Файлы, в которых записано содержание диска, размещаются в директории STRREC, которая находится в корневой директории. В директории STRREC созданы следующие файлы:
- COMMON.IFO
Основная информация, предназначенная для описания содержания потока. Требуется его понимание как устройством приложения, так и стримером.
- STREAMER.IFO
Частная информация объекта потока, относящаяся к устройству стримера. Не требуется ее понимание устройством приложения.
- APPLICAT.IFO
Частные данные приложения, то есть, информация, которая относится конкретно к приложению (приложениям), подключенному к стримеру. Не требуется ее понимание стримером.
- REALTIME.SOB
Правильным образом записанные данные потока в режиме реального времени.
Следует отметить, что за исключением файлов, описанных выше, директория STRREC не должна содержать какие-либо другие файлы или директории.
В отношении структуры данных навигации, данные навигации предназначены для управления записью, воспроизведением и редактированием любых потоков битов, которые записаны. Как показано на фиг.3, данные навигации включают информацию стримера управления видеоизображением (STR_VMGI), которая содержится в файле под названием COMMON.IFO, и информацию файла потока (SFI), которая содержится в файле под названием STREAMER.IFO. С точки зрения устройства стримера, эти два вида информации являются достаточными для выполнения всех необходимых операций.
В дополнение к ним, запись потока DVD также предусматривает возможность резервирования места накопления для частных данных APD_MG приложения, которые, в общем, также могут рассматриваться как навигационные данные.
STR_VMGI и SFI представляют собой данные навигации, которые непосредственно относятся к работе стримера. STR_VMGI включает два вида информационных таблиц, а именно таблицу (VMGI_MAT) управления информацией видеоменеджера и таблицу (PL_SRPT) указателя поиска списка воспроизведения в этом порядке. SFI включает три вида таблиц информации, а именно общую информацию (SF_GI) файла потока, указатели #n (SOBI_SRP#n) поиска SOBI и всю информацию #n (SOBI#n) объекта потока в этом порядке.
Не существует каких-либо ограничений при записи потока в том, что каждая таблица навигационной информации должна быть совмещена с границами секторов.
VMGI_MAT включает пункты информации, такие как адрес информации (STRI) стримера и адрес STR_VMGI, начальный адрес таблицы SFIT информации файла потока данных, начальный адрес информации (ORG_PGCI) последовательности оригинальной программы и начальный адрес таблицы (UD_PGCIT) информации последовательности программы, определенной пользователем.
PL_SRPT включает информационные пункты, такие как количество указателей поиска списка воспроизведения, конечный адрес PL_SRPT, количества последовательностей программ информации списка воспроизведения, время создания списка воспроизведения и первичная текстовая информация.
Общая информация (SOBI_GI) об объектах потока включает информационные пункты, такие как тип (SOB_TY) SOB, время (SOB_REC_TM) записи SOB, номер SOB_STY_N информации потока, флаги (AUD_FLAGS) данных блока доступа, начало SOB АРАТ (SOB_S_APAT), конец SOB АРАТ (SOB_E_APAT), первый SOBU этого SOB (SOB_S_SOBU), количество входных элементов списка отображения (MAPL_ENT_Ns).
MAPL_ENT_Ns описывает количество входных элементов в списке отображения, которое следует после SOBI_GI.
Список MAPL отображения в соответствии с настоящим изобретением предназначен для предоставления всей необходимой информации так, чтобы данные входные элементы в списке воспроизведения эффективно переводились в пары адресов на диске и наоборот.
Также возможно включать частные данные приложения, которые состоят из трех видов информации, а именно общая информация о частных данных приложения, набор из одного или большего количества указателей поиска частных данных приложения и набор из одного или большего количества областей частных данных приложения. Если существуют какие-либо частные данные приложения, то эти три вида информации записываются и хранятся в этом порядке в файле APPLICAT.IFO.
Данные потока (Stream Data) включают один или большее количество объектов потока (SOB), каждый из которых может быть записан как "поток программ", как описано в системах ISO/IEC 13818-1.
SOB может быть остановлен кодом окончания программы (program_end_code). Величина поля SCR в первом пакете каждого SOB может быть не равна нулю. SOB содержит данные потока (Stream Data), упакованные в виде последовательности пакетов потока "Stream Packs" (S_PCK). Данные потока могут быть организованы как один элементарный поток и переносятся в виде пакетов PES с идентификатором потока (stream_id).
Как показано на фиг.4, пакет потока включает 14-байт заголовка пакета и пакет потока PES, которому принадлежит 6-байт заголовка пакета PES, байт идентификатора подпотока Substream ID и область данных потока. Область данных потока имеет заголовок в виде 9-байт заголовка приложения и, в случае необходимости, расширение заголовка приложения, и соответственно остальная часть представляет собой область пакета приложения. Объект потока состоит из одного или большего количества пакетов потока.
Таблица MAPL, изображенная на фиг.5, содержит n частей или SOBU, от SOBU#1 до SOBU#n, потока битов, который должен быть записан, или записанного потока битов. SOBU#1-SOBU#n-1 присваиваются соответствующие входные элементы инкрементного времени поступления пакета приложения IАРАТ#1-IAPAT#n-1. DAV обозначает требуемый адрес или целевой адрес в потоке битов. Каждому SOBU#1-SOBU#n соответствует постоянное количество битов в потоке битов.
Как показано на фиг.6, список отображения включает исходное время MAPL IAPAT#0 и ноль или большее количество случаев "инкрементного времени поступления пакета приложения" (IAPAT).
Структура величины IAPAT изображена на фиг.9. IAPAT описывает инкрементное увеличение времени прихода пакета приложения соответствующего блока объекта потока в формате, описывающем инкрементное увеличение PAT записей потока DVD, который определен ниже.
Для пояснения того, как вычисляется IAPAT(i) во время записи, будут использоваться следующие условные обозначения:
- для сокращений М будет обозначать количество входных элементов списка отображения MAPL_ENT_Ns.
- SOBU_S_APAT(i) (1≤i≤М) будет обозначать начало времени поступления пакета приложения блока №i объекта потока данного объекта потока, то есть время поступления пакета первого пакета, принадлежащего к блоку №i объекта потока. SOBU_S_APAT(1) будет равен временной метке приложения первого пакета приложения блока №1 объекта потока данного объекта потока.
- IAPAT(0) будет обозначать исходную величину для списка отображения.
- IAPAT(i) будет обозначать i-й входной элемент в списке отображения, то есть, IAPAT(0) будет первым и IAPAT(M-1) будет последним входным элементом списка отображения.
- SUM_IAPAT(i) будет обозначать суммирование IAPAT от 0 до i (i<М)
причем SUM_IAPAT от (-1)=0.
Затем будет выбрано IAPAT (i) так, что
IAPAT(i)=
для i=0, 1, 2,..., М-1.
Диапазон изменения величины IAPAT ограничивается разрешающей способностью (12 бит) величины IAPAT и ее минимальной величиной (IAPAT(i)=1 для i>0 и IAPAT(0)=0):
и
Функция минимального значения floor(х) представляет собой округление с понижением, например floor(1,2)=floor(1,8)=1, floor(-1,2)=floor(-1,8)=-2.
SOBU_S_APAT(i) описан в формате описания PAT записи потока DVD. Но при оценке приведенных выше уравнений они должны рассматриваться как если бы они представляли собой целые числа без знака размером 6 байт.
На фиг.7 показан вдоль оси времени пример порядка SOBU, SOBU S АРАТ и IAPAT. Левая сторона оси времени разделена на "блоки времени отображения", а правая сторона оси времени представляет SOBU.
Блок времени отображения является длительностью, соответствующей IAPAT=1, и она может быть вычислена как
Для MTU_SHFT=18 бит она соответствует приблизительно 5,69 миллисекунд.
SOB_S_APAT описывает начало времени поступления пакета приложения объекта потока, то есть время поступления пакета первого пакета, принадлежащего SOB. SOB_S_APAT описан ниже в формате, описывающем PAT записи потока DVD:
PAT состоят из основной части и части расширения. Основная часть содержит так называемую величину блока 90 кГц, и часть расширения содержит менее значимую величину, которая измеряется блоками по 27 МГц.
(a) Выбор SOB_S_APAT для новой записи
Вновь записанный SOB будет обычно начинаться с первого пакета приложения SOBU. В этом случае SOB_S_APAT и временная метка приложения первого пакета приложения SOB будет обычно устанавливаться в 0.
(b) Вычисление SOB_S_APAT после редактирования
После редактирования, например, стирания начала SOB, SOB_S_АРАТ, временная метка приложения первого пакета приложения первого SOBU из данного SOB и временная метка приложения первого пакета приложения, принадлежащего к SOB, могут отличаться и могут не быть равны 0.
Все возможные случаи перекрываются следующим общим определением SOB_S_APAT:
- допусти, что atse будет представлять собой 30-битовую временную метку приложения первого пакета приложения, принадлежащего данному SOB и
- допустим, что N представляет собой количество всех временных меток приложения при круговой адресации, которая происходит между 30-битовой временной меткой приложения первого пакета приложения, начинающегося в первом SOBU данного SOB и atse, то есть 0≤N≤1, тогда
SOB_S_APAT[MTU_SHFT+11...0]=atse [MTU_SHFT+11...0] SOB_S_APAT[47...MTU_SHFT+12]=N
При таком определении SOB_S_APAT, АРАТ первого пакета приложения, начинающегося в первом SOBU данного SOB, будет равен или больше 0 и меньше, чем 2 MTU_SHFT+12.
На фиг.10 изображен формат описания PAT записи потока DVD. Переменные на данном чертеже определяются следующим образом:
PAT_base: величина основания PAT, измеряемая блоком 90 кГц
PAT_exten: величина расширения PAT, измеряемая блоком
27 МГц (0≤PAT_EXTEN<300)
PAT в секундах=(РАТ_bаsе/90000 Гц)+(РАТ_ехtеn/27000000 Гц)
Для уникального представления времени, PAT_exten должно быть в диапазоне 0≤PAT_exten<300. Вместе, PAT_base и РАТ_exten перекрывают диапазон более 1696 часов.
SOB_E_APAT описывает конец времени поступления пакета приложения объекта потока, то есть, время поступления пакета последнего пакета, принадлежащего данному SOB, в формате описания PAT записи потока DVD. Общее определение SOB_E_APAT следующее:
- пусть atse будет 30-битовой временной меткой приложения последнего пакета приложения, принадлежащего данному SOB, и
- пусть N будет количество всех временных меток приложения при круговой адресации, которые возникают между 30-битовой временной меткой приложения первого пакета приложения, начинающегося в первом SOBU данного SOB, и atse, то есть, N≥0, тогда
SOB_E_APAT[MTU_SHFT+11..0]=atse [MTU_SHFT+11...0]
SOB_S_APAT[47...MTU_SHFT+12]=N
Временная метка (ATS) приложения перед каждым пакетом приложения состоит из 30-битовой величины. ATS включает основную часть и часть расширения. Основная часть содержит так называемую величину блока 90 кГц, и часть расширения содержит менее значимые величины, которые измеряются в блоках по 27 МГц. На фиг.11 изображен формат описания временной меткой приложения записи потока DVD. Переменные на данном чертеже определены следующим образом:
AU_START, когда установлено в "1", показывает, что соответствующий пакет приложения содержит случайную входную точку доступа (начало случайного блока доступа) в поток
AU_END, когда установлено в "1", показывает, что соответствующий пакет приложения представляет собой последний пакет случайного блока доступа
ATS base - основная величина ATS, измеряемая в блоках 90 кГц
ATS_exten - величина расширения ATS, измеряемая в блоках по 27 МГц
ATS в секундах=(ATS_base/90000 Гц)+(ATS_exten/27000000 Гц)
Для уникального представления времен, ATS exten должна выбираться в диапазоне 0≤ATS_exten<300. Совместно ATS base и ATS_exten перекрывают диапазон, превышающий 23 секунды.
Фиг.8 изображает диапазоны величин ATS, IAPAT и SUM_IAPAT по отношению к диапазону АРАТ размером 48-бит. ATS перекрывает биты от 0 до 29. IAPAT перекрывает биты от 18 до 29. SUM_IAPAT перекрывает биты от 18 до 47.
Существенное преимущество настоящего изобретения состоит в том, что список отображений генерирует временные метки SUM_IAPAT, из которых 12 бит самого младшего двоичного разряда (LSB) с номера 18 по номер 29 идентичны 12 бит самого старшего двоичного разряда (MSB) с номера 18 до номера 29 временных меток ATS приложения. Это свойство позволяет упростить схему устройства записи в режиме реального времени.
Пример функции для сканирования данных представления до тех пор, пока не будет найден требуемый пакет приложения
Следующая функция описывает, как сканировать данные представления с целью получения отдельного пакета приложения, связанного с временем "х" поступления пакета. В соответствии с этим, список отображения и доступ к нему будут описаны более подробно, например, внутренние промежуточные величины, которые необходимы на последующих этапах, см. фиг.5, 6 и 7. Основной результат доступа к списку отображения представляет собой смещение сектора SOFF, которое указывает, где начинается сканирование. Полное сканирование будет выполняться внутри данного SOB. Используются следующие обозначения:
- х48 представляет собой 6-байтовую величину АРАТ, которая обозначена ниже "48".
- величина "30", присоединенная к другим переменным, указывает, что они состоят из 30 бит, например, временная метка ATS приложения.
- IAPAT(0), IAPAT(1),... обозначают входные элементы списка отображения.
- форма var[a...b] обозначает область бит переменной var между битами а и b включительно.
- '[i...k]’ обозначает биты от i до k двоичного числа, i=MSB, k=LSB.
- ‘/*...*/’ обозначает поясняющие комментарии.
Для упрощения примера предполагается, что каждый сектор содержит целое число, по меньшей мере, одного пакета (пакетов) приложения.
Функция get_application_packet_location(x48)
a)sum_iapat48=IАРАТ(0) *2MTU-SHFT; k=1
b) ss48=IAPAT (k) *2MTU-SHБT
c) if (sum_iapat48 + ss48)[47...18]≥x48[47...18], then go to g)
d) sum_iapat48=sum__iapat48+ss48
e) k=k+1
f) if k<MAPL_ENT_Ns, then go to b)
g) soff=(k-1) *SOBU_SZ /*смещение сектора SOBU# (k) по отношению к 1-му SOBU данного SOB*/
h) offset48[47...30]=sum_iapat48[47...30]
i) offset48[29...0]=0
j) current_ats30=0;
k) ap_no=1
/*Количество АР в секторе, ≤1 ap_no≤AP_Ns*/
l) previous_ats30=current_ats30
m) current_ats30=(ATS пакета приложения #ар_nо сектора #soff)
n) if previous_ats30 больше, чем current_ats30, then offset48=offset48+230 /*циклическая адресация ATS*/
о) if current_ats30+offset48=x48 then go to s)
/*требуемое найдено!*/
p) if сектор #soff содержит по меньшей мере еще одно начало пакета приложения, then
ap_no=ap_no+1
go to m)
q) soff=soff+1
r) go to k)
s) конец функции
Требуемый пакет приложения будет теперь получен как пакет #ар_nо сектора #soff. Величина ар_nо=1 обозначает первый пакет приложения, начинающийся в данном секторе. Величина soff=0 обозначает первый сектор первого SOBU данного SOB.
Приведенная выше функция представляет собой более общий пример. Она может быть упрощена, если MTU_SHFT<19. Это требование выполняется, поскольку MTU_SHFT определяется как равное 18.
a) sum_iapat30=IAPAT(0); k=1
b) sum _iapat30=sum_iapat30+IAPAT(k)
c) if sum_iapat30≥x48[47...18], then go to f)
d) k=k+1
e) if k<MAPL_ENT_Ns, then go to b)
f) soff=(k-1)*SOBU_SZ /*смещение сектора SOBU# (k) по отношению к 1-му SOBU данного SOB*/
g) ap_no=1
/*количество АР в секторе, 1≤ар_no≤АР_РКТ_Ns*/
h) if (ATS пакета #ap_no приложения сектора #soff) равен х48 [29...0], then go to 1)
/*требуемая величина найдена!*/
i) if сектор #soff содержит по меньшей мере еще одно начало пакете приложения, then
ар_no=ap_no+1
go to h)
j) soff=soff+1
k) go to g)
1) конец функции
Требуемый пакет приложения будет теперь получен как пакет #ар_nо сектора #soff. Величина ар_nо=1 обозначает первый пакет приложения, начинающийся в данном секторе.
Величина soff=0 обозначает первый сектор в первом SOBU данного SOB.
30 бит ATS имеют такой же вес, как и 30 самых младших разрядов (LSB) АРАТ.
Не требуется, чтобы первый сектор первого SOBU SOB принадлежал этому SOB. Если первая часть SOB была стерта, то остальная часть SOB может начинаться в середине SOBU, то есть первый сектор данного SOBU не является частью этого SOB.
При записи потока приложение выполняет собственное заполнение свободных мест не значащей информацией так, что нет необходимости использовать способы регулировки длины пакета DVD-ROM Video или DVD-VR. При записи потока можно предположить, что пакеты потока будут всегда иметь необходимую длину.
Поток данных также содержит временные метки ATS приложения, например в пределах пакетов данных.
Изобретение относится к области адресации потока битов, которые должны быть записаны или записываются на носитель данных, например на оптический диск. Данные организованы в виде блоков видеообъектов переменного размера и переменной длительности. Для обеспечения доступа используется список отображения (таблица адреса), основанный на частях потока бит с постоянным размером каждой части. Список дополнительно содержит исходную величину, которая не назначается ни одной из указанных частей. Для получения величины адреса, необходимой для получения требуемого адреса, указанная величина и все величины изменения длительности до ближайшей величины длительности для части данных, соответствующей требуемому адресу, суммируются с нарастающим итогом. Указанная исходная величина времени выбирается такой, что биты величин изменения длительности соответствуют по своему весу соответствующему количеству битов самого старшего двоичного разряда временных меток приложения. Технический результат - сокращение объема таблицы адресов при повышении точности адресации. 5 з.п. ф-лы, 11 ил, 1 табл.
- используют таблицу (MAPL) адреса, которая основывается на частях (SOBU#i) указанного потока битов;
- каждая из указанных частей включает постоянное количество битов указанного потока битов;
- указанные части содержат пакеты данных, включающие временные метки (ATS) приложения;
отличающийся тем, что
- используя для величин (IAPAT#i) изменения длительности, индекс в диапазоне от "1" до "n" или "n-1" соответственно для каждого входного элемента таблицы адреса или для каждого входного элемента таблицы адреса, за исключением одного, который имеет индекс "n", назначают одну из указанных величин изменения длительности, в которой такая величина изменения длительности представляет собой разность между временем поступления первого пакета данных части и временем поступления пакета данных, следующего непосредственно после последнего пакета данных этой части;
- кроме указанных величин (IAPAT#i) указанного изменения длительности, указанная таблица адреса содержит исходную величину (IАРАТ#0), которая не назначается ни одной из указанных частей (SOBU#i);
- для получения величины адреса, необходимой для получения требуемого адреса (DAV) в указанном носителе данных, указанная величина (IАРАТ#0) времени и все величины изменения длительности до ближайшей величины длительности для этой части данных, соответствующей указанному требуемому адресу, суммируются с нарастающим итогом, в которой текущий индекс (i) для входного элемента (IAPAT#i) изменения длительности, относящегося к указанной величине ближайшей длительности времени, умножается на указанное постоянное количество битов с целью вычисления указанной величины адреса, в котором указанная исходная величина времени выбирается такой, что биты указанных величин изменения длительности соответствуют по своему весу соответствующему количеству битов самого старшего двоичного разряда указанных временных меток (ATS) приложения.
ЕР 797204 А, 24.09.1997 | |||
Способ лечения посттравматических парезов и невритов лицевого и тройничного нервов у онкологических больных опухолями головы и шеи в раннем послеоперационном периоде на этапах комбинированного лечения | 2021 |
|
RU2759471C1 |
УСТРОЙСТВО ДЛЯ ВОСПРОИЗВЕДЕНИЯ ИНФОРМАЦИИ С НОСИТЕЛЯ ЗАПИСИ И НОСИТЕЛЬ ЗАПИСИ ДЛЯ ИСПОЛЬЗОВАНИЯ В ТАКОМ УСТРОЙСТВЕ | 1991 |
|
RU2051428C1 |
ИМИТАТОР СИГНАЛОВ УПРАВЛЕНИЯ ПОЗИЦИОНИРОВАНИЕМ МАГНИТНЫХ ГОЛОВОК ОТНОСИТЕЛЬНО МАГНИТНЫХ ДИСКОВ | 1991 |
|
RU2017239C1 |
US 5844865 A, 01.12.1998. |
Авторы
Даты
2005-02-10—Публикация
1999-08-30—Подача