Текст книги "Профессиональный авторинг DVD"
Автор книги: Вячеслав Голиней
Жанр: Программы, Компьютеры
сообщить о неприемлемом содержимом
Текущая страница: 12 (всего у книги 20 страниц)
В этом разделе будет рассказано, как создать команду второго типа в окне моделирования. При этом команда Compare будет добавлена к команде первого типа, созданной, как было описано в предыдущем разделе.
Команда Compare сравнивает один навигационный параметр с другим. В качестве примера можно привести конструкцию «Если значение параметра GPRM7 равно значению параметра SPRM9, то надо воспроизвести третий титул (Title 3)».
Команда Compare может также сравнивать навигационный параметр с конкретной цифрой, как в конструкции «Если значение параметра SPRM13 больше, чем 6, то надо выполнить команду Jump to PGC in System Space».
Иными словами, если результат сравнения будет истинным, то DVD-плеер выполнит соответствующие инструкции. Если же результат будет ложным, то DVD-плеер эти инструкции пропустит.
Примечание.
Команды SetSystem и Set классифицируются как команды второго типа, даже если они не используются вместе с командами Link или Compare.
Для создания команды второго типа из команды первого типа нужно в окне моделирования ниже секции Jump To (Перейти к) установить флажок Compare (Сравнение). В результате будет отображена секция Compare (Сравнение) с дополнительными элементами управления, перечисленными в следующем списке (см. рис. 11.4):
• GPRM – сравниваются два параметра GPRM;
• SPRM – параметр GPRM сравнивается с параметром SPRM;
• Immediate – сравнивается заданная величина с параметром GPRM.
Рис. 11.4. Секция Compare.
На этой вкладке нужно выбрать переключатель SPRM (рис. 11.5).
Рис. 11.5. Выбор переключателя SPRM.
В этой области задаются параметры сравнения величин. Для левой части сравнения нужно установить значение GPRM1. Это первый регистр общего назначения. В правой части сравнения следует задать значение SPRM5. Это пятый системный регистр.
Операторы, использующиеся в операциях сравнения, приведены в табл. 11.3.
Таблица 11.3. Описание операторов сравнения
Теперь нужно установить оператор сравнения >=. В результате будет создана команда второго типа. Она будет отображена в списке команд, указывая, что воспроизведение первой PGC произойдет только в случае, если значение параметра GPRM1 больше либо равно значению параметра SPRM5.
Создание команды третьего типаКоманда третьего типа исполняет инструкции Set и Compare, а затем, в зависимости от результатов, связывает программную цепочку меню с ячейкой, программой, программной цепочкой или точкой продолжения (Resume point).
Для создания команды третьего типа в окне моделирования нужно в редакторе сценариев выбрать вводную PGC или PGC меню. Если окно моделирования еще не открыто, то нужно выполнить команду меню View ► Simulation Window (Вид ► Окно моделирования). В окне редактирования (нижняя часть окна моделирования) следует перейти на закладку PGC Commands (Команды PGC). В списке надо выбрать значение Pre, Post или Cell в списке в зависимости от того, какой тип команды требуется создать.
Если выбрать значение Pre или Post, то можно будет создать команду Jump To для перехода только к PGC меню либо к точке продолжения. Если выбрать значение Cell, то можно будет создать команду Jump To к любому объекту назначения, доступному в меню Jump To (Перейти к).
Затем следует сбросить флажок No Command (Нет команды). В меню Command (Команда) нужно выбрать значение Type 3 Command (Команда третьего типа) (рис. 11.6). В результате на экране будут отображены секции, соответствующие командам Type, Set, Compare и Jump To.
Рис. 11.6. Выбор команды третьего типа.
Значения, которые можно выбрать в списке Type (Тип), приведены в следующем списке (см. рис. 11.7):
• Set Compare LinkSIns – задает значения параметров GPRM или SPRM и сравнивает их со значениями других параметров GPRM, SPRM или с заданным значением. Если сравнение будет истинным, то выполняется инструкция Jump;
• Compare & Set-LinkSIns – сравнивает значения параметров GPRM или SPRM со значениями других параметров GPRM, SPRM или с заданным значением. Если сравнение будет истинным, то команда присваивает то или иное значение параметру и исполняет инструкцию Jump;
• Compare-Set & LinkSIns – сравнивает значения параметров GPRM или SPRM со значениями других параметров GPRM, SPRM или с заданным значением. Если сравнение будет истинным, то команда присваивает то или иное значение параметру, но исполняет инструкцию Jump вне зависимости от того, каков был результат сравнения.
Рис. 11.7. Изменение вида секций в зависимости от выбранного значения в списке Type.
В секции Set нужно указать, что нужно будет присваивать параметру GPRM. Можно использовать значения другого параметра GPRM, SPRM или некую заданную величину (Immediate). Также нужно выбрать способ присвоения параметру GPRM того или иного значения. Можно просто присвоить это значение (Assign) или же выполнить предварительную математическую операцию для расчета значения (рис. 11.8).
Рис. 11.8. Выбор математической операции при задании значения параметру.
В списке Jump To (Перейти к) нужно выбрать значение объекта назначения для команды третьего типа (см. рис. 11.9).
Рис. 11.9. Выбор объекта назначения перехода.
В списке Jump To (Переход) находятся три значения типа Cell (Ячейка), три – типа Program (Программа) и четыре – типа PGC (Программная цепочка). Также можно создать переход на текущую PGC в область Post (Post command of the current PGC) или продолжить воспроизведение видеопотока (Resume). При создании команды третьего типа в областях Pre или Post доступно только значение Resume.
Для присвоения номера кнопки параметру SPRM нужно задать соответствующее значение для параметра Highlight Button (Подсвечиваемая кнопка).
Если в качестве объекта назначения выбирается команда No Jump, то нужно задавать номер кнопки в пределах PGC, где расположены команды, так как команда третьего типа подразумевает обязательный переход. Если же нужно выбрать требуемый объект назначения, то следует определить специфический номер кнопки для присвоения его параметру SPRM. Нужно использовать нулевое значение, если не следует присваивать номер кнопки параметру SPRM.
Копирование и вставка команд навигацииПользователь может копировать и вставлять навигационные команды прямо в редакторе сценариев. Это позволяет легко добавлять требуемые команды для PGC и команды кнопок без кропотливой работы в окне моделирования.
Копирование команд PGCДля копирования и вставки команд Pre, Post или Cell требуется в области авторинга редактора сценариев выбрать программную цепочку, содержащую команды, которые требуется скопировать. Затем нужно выполнить команду меню Edit ► Copy Special (Редактировать ► Специальная вставка). В подменю нужно выбрать одну из команд из следующего списка (рис. 11.10):
• Pre Commands;
• Post Commands;
• Cell Commands.
Рис. 11.10. Выбор команд для копирования.
Затем нужно выделить PGC, в которую требуется вставить скопированные команды. После этого следует выполнить команду меню Edit ► Paste (Редактировать ► Вставить). Команды будут добавлены в выбранную PGC, и соответствующий флаг приобретет желтую заливку. Любые существующие команды указанного типа будут заменены новыми.
Копирование команд кнопокПримечание.
Пользователь может также копировать команды PGC при помощи щелчка правой кнопки мыши на соответствующей иконке и выполнения требуемой команды копирования из контекстного меню. Команда вставки также доступна из контекстного меню.
Для копирования и вставки команд кнопок нужно в области авторинга редактора сценариев выбрать иконку меню, содержащую команды, которые требуется скопировать. Затем следует выполнить команду меню Edit ► Copy Special ► Button Commands (Редактировать ► Специальная вставка ► Команды кнопок).
После этого нужно выбрать иконку меню, в которую требуется вставить скопированные команды. Затем следует выполнить команду меню Edit ► Paste (Редактировать ► Вставить). Команды будут вставлены в выбранную PGC, а флаг Btns приобретет желтую заливку. Любые существующие команды кнопок будут заменены новыми.
Удаление команд PGCПримечание.
Пользователь может также копировать команды PGC при помощи щелчка правой кнопки мыши на соответствующей иконке и выполнения требуемой команды копирования из контекстного меню. Команда вставки также доступна из контекстного меню.
В редакторе сценариев пользователь может разом удалить все команды Pre, Post или Cell, назначенные программной цепочке. Это позволяет избежать длительного процесса очистки в окне моделирования.
Для удаления всех Pre, Post или Cell-команд PGC нужно в области авторинга редактора сценариев выбрать PGC, содержащую команды, которые требуется удалить, и щелкнуть на ней правой кнопкой мыши. Из контекстного меню нужно выбрать одну из команд, перечисленных в следующем списке:
• Remove Pre Commands – удалить Pre-команды;
• Remove Cell Commands – удалить Cell-команды;
• Remove Post Commands – удалить Post-команды.
Команды PGC будут удалены, и соответствующие флаги будут отображаться без заливки цветом.
Глава 12
О навигационных параметрах
Спецификация DVD определяет два типа навигационных параметров. В ней рассматриваются системные параметры (SPRM) и регистры общего назначения (GPRM). Команды навигации используют эти параметры при управлении воспроизведением материала на DVD-плеере.
Пользователь может устанавливать значения навигационных параметров в виде чисел, логических величин или в качестве счетчиков, увеличивающих свое значение с каждой новой секундой.
Использование в процессе авторинга навигационных параметров и команд придает ему сходство с написанием программ на некоем языке программирования. Например, бывает нужно создать меню с тремя командами, чтобы зритель не имел возможности получить доступ к третьей команде, не воспользовавшись сначала первой и второй командами. В общих чертах для выполнения этой работы необходимо выполнить простую последовательность действий.
1. Установить значения параметра для сравнения с другими параметрами.
2. Изменить величину параметра.
3. Сравнить измененное значение параметра со значением параметра, соответствующим команде, к которой зритель пытается получить доступ.
Навигационные параметры предоставляют возможность авторам DVD-дисков гибко управлять навигацией и создавать интерактивность, которой прежде нельзя было добиться. Программа Scenarist является одной из немногих систем авторинга DVD, которая позволяет использовать все возможности, которые предоставляют навигационные параметры.
Системные параметрыСистемные параметры (SPRM – System PaRaMeter) отображают статус таких параметров DVD-плеера, как видео– и аудиопотоки, таймер, главы, номера титулов и т. д. Команды навигации могут использовать эти параметры для выполнения самых разнообразных действий. Значения некоторых системных параметров могут быть установлены в DVD-плеере. Например, можно указать, какой следует воспроизводить аудиопоток или поток subpicture. А некоторые системные параметры предназначены только для чтения, такие как уровни родительского контроля и языковые предпочтения.
Существует 24 системных параметра (SPRM), которые рассматриваются в табл. 12.1. Значения по умолчанию представлены в шестнадцатеричной, десятичной и двоичной системах счисления. Три параметра зарезервированы для будущих целей, девять параметров предназначены только для чтения (0, 12, 14, 15, 16, 17, 18, 19 и 20). Оставшиеся параметры могут быть изменены в программе авторинга или самим зрителем.
Таблица 12.1. Системные параметры
Параметры общего назначения
Спецификация DVD указывает, что DVD-плеер должен содержать 16 ячеек памяти, к которым может обращаться содержимое DVD-видеодиска.
Каждая ячейка является 16-битным беззнаковым регистром. В ней можно хранить числа от 0 до 65 535. Эти ячейки называются параметрами общего назначения, или GPRM.
Каждый параметр GPRM содержит значение, которое пользователь может проверить, задать его значение или изменить значение. Это позволяет создавать сложные ветвящиеся сценарии воспроизведения DVD-диска.
В параметрах GPRM можно хранить значения, полученные из SPRM, или значения, просчитанные во время воспроизведения, а также задавать условия навигации на основе этих значений.
DVD-плеер очищает все параметры GPRM, когда зритель останавливает воспроизведение и извлекает диск из плеера.
Использование параметров общего назначенияРазработчик может использовать GPRM, чтобы после воспроизведения сразу позволить зрителю перейти в подменю, вместо того чтобы проходить через корневое меню, когда зритель нажимает клавишу Menu на пульте дистанционного управления. Следует применять этот прием, если нужно разработать сценарий для зрителя, желающего каждый раз возвращаться в подменю, не проходя через команды корневого меню.
Также можно использовать GPRM для временного ограничения показа видеоматериала, когда счетчик отсчитывает положенное время, по истечении которого воспроизведение будет автоматически переключено на другой поток.
Другие варианты использования GPRM приведены в следующем списке:
• накапливать очки зрителя по ходу просмотра некоего материала, допустим, рекламной информации, и по достижении определенного уровня обеспечивать предоставление доступа к дополнительным возможностям сценария. В качестве бонусного материала можно использовать, например, новые видеоролики;
• выжидать определенное время, за которое зритель должен принять решение, и если зритель так и не сделал свой выбор, то автоматически начать воспроизведение заранее определенного видеоматериала;
• отсчитывать период времени, в течение которого зритель выбирает команду меню, и в зависимости от накопленного значения переводить воспроизведение по намеченным маршрутам, которые не обязаны совпадать с выбором зрителя;
• накапливать информацию о просмотренных зрителем разделах диска и при дальнейшей навигации предоставлять зрителю доступ к тем разделам, которые он еще не просматривал, скрывая те разделы, где он уже был;
• создавать скрытые кнопки, которые будут проявляться, только если зритель в определенной последовательности активировал команды меню;
• подсвечивать кнопки текущего языка;
• модифицировать поведение DVD-плеера;
• задавать уровни родительского контроля;
• управлять доступом по паролю.
Команды Set исполняют арифметические или логические операции на основе значений одного или нескольких GPRM, SPRM или заданных величин. Также они сохраняют результат в каком-либо параметре GPRM. Существующие команды Set приведены в следующем списке:
• Assign (Присвоение) – присваивает параметру GPRM заданное значение, значение GPRM или SPRM;
• Exchange (Обмен) – меняет местами значения в двух параметрах GPRM;
• Add (Добавить) – присваивает GPRM значение суммы заданной величины и GPRM или двух параметров GPRM;
• Subtract (Вычесть) – присваивает GPRM значение разности между заданной величиной и GPRM или разности значений двух параметров GPRM;
• Multiply (Умножить) – присваивает GPRM значение произведения заданной величины и значения GPRM или произведение двух параметров GPRM;
• Divide (Поделить) – присваивает GPRM значение отношения заданной величины к GPRM или отношение двух GPRM друг к другу. Результирующее значение не может быть нулем;
• Remainder (Остаток) – присваивает GPRM значение остатка в результате деления заданной величины на GPRM или деления двух GPRM;
• Random Value (Случайное значение) – присваивает GPRM случайное число или выбирает для присваивания случайным образом значение другого параметра GPRM. Результирующее значение не может быть нулем;
• Bitwise Product (Побитовое И) – присваивает GPRM результат побитового И заданной величины и GPRM, двух GPRM или GPRM и SPRM;
• Bitwise Sum (Побитовое ИЛИ) – присваивает GPRM результат побитового ИЛИ заданной величины и GPRM, двух GPRM или GPRM и SPRM;
• Exclusive Or (Исключающее ИЛИ) – присваивает GPRM результат побитового Исключающего ИЛИ заданной величины и GPRM, двух GPRM или GPRM и SPRM.
Глава 13
Логические операции
DVD-плееры хранят значения параметров GPRM и SPRM в своих системных регистрах. Каждый регистр состоит из двух байтов, то есть значения параметров занимают 16 бит. Каждый бит может иметь значение 1 (Включен) или 0 (Выключен). Можно сказать, что каждый параметр GPRM или SPRM состоит из строки битов.
Программа Scenarist позволяет записывать на DVD-диске команды, которые будут исполняться DVD-плеером, для сравнения величин GPRM или SPRM и использовать булеву логику для получения результирующего значения. Это результирующее значение может быть либо нулем, что соответствует ложному сравнению, либо ненулевой величиной, которая обозначает истинное сравнение. В зависимости от результата сравнения DVD-плеер может либо выполнить команду, либо пропустить ее.
Например, шестой бит в параметре SPRM (2) определяет, будет ли отображаться на экране subpicture. Единичное значение включает отображение subpicture на экране, а при нулевом значении subpicture скрывается. Пользователь может использовать операции логического сравнения значения 1000000 с параметром SPRM (имеющим значение 1011011) для определения отображения subpicture на экране. Логический оператор & является оператором булевой логики и соответствует инструкции И. Каждый бит в первой строке сравнивается с таким же битом во второй строке в соответствии со следующими правилами:
• 0 & 0 = 0 (False – ЛОЖЬ);
• 0 & 1 = 0 (False – ЛОЖЬ);
• 1 & 0 = 0 (False – ЛОЖЬ);
• 1 & 1 = 1 (True – ИСТИНА).
Чтобы получить ненулевую величину, нужно, чтобы оба бита с одинаковыми порядковыми номерами имели единичное значение. Так, если значение параметра SPRM, равное 10110011, сравнить с величиной 10000000, то будет получен результат 10000000, который соответствует логическому значению True (Истина).
В этом случае результат True (ИСТИНА) означает, что поток subpicture включен и будет отображаться на экране. Если седьмой бит параметра SPRM (2) имеет другое значение, то результат будет нулевым, что соответствует логическому значению False (ЛОЖЬ). В программе Scenarist приходится оперировать с десятеричными величинами, поэтому вышеприведенный пример означает, что производится сравнение значения параметра SPRM 91 со значением 64.
Создание процедуры логического сравненияДля следующего примера потребуется создать главное меню с тремя кнопками, которые получат обозначения Кнопка 1, Кнопка 2 и Кнопка 3, а также три коротких видеофрагмента.
Этот пример покажет, как можно создать меню, в котором зритель должен активировать первую и вторую кнопки, прежде чем он сможет активировать третью кнопку. Для этого нужно добавить кнопки, соединенные с тремя видеофрагментами (Video 1, Video 2 и Video 3), следует присвоить параметры GPRM кнопкам Кнопка 1 и Кнопка 2, связать операцию сравнения с кнопкой Кнопка 3, а также добавить команду Post к каждому титулу видеофрагментов, чтобы по окончании воспроизведения управление передавалось обратно в главное меню.
Связывание подсветок кнопок с тремя видеопотокамиДля связывания кнопок с тремя титулами нужно в области авторинга редактора сценариев добавить папку языка к видеоменеджеру, а затем переместить подготовленное меню на эту папку. Затем требуется добавить титулы Title_1, Title2 и Title_3 к VTS1. На них нужно переместить видеоматериалы Fragmentl, Fragment2 и Fragment3. Следует удостовериться, что каждому титулу назначены различные видеоматериалы (см. рис. 13.1).
Рис. 13.1. Сценарий с добавленными PGC меню и трех фрагментов видеоматериала.
Нужно выбрать главное меню и открыть окно моделирования. В нем нужно нарисовать контуры подсветок трех кнопок и выровнять их по вертикали. В этом примере такое выравнивание применяется из-за того, что кнопки расположены друг под другом (см. рис. 13.2).
Рис. 13.2. Пример разрабатываемого меню.
Затем следует выполнить команду меню Tools ► Auto Route (Инструменты ► Автоматическая расстановка связей) и добавить связи между кнопками. Также нужно протянуть линию связи от флага Btns создаваемого меню к титульной папке Title_1.
Если PGC свернута, то флаг Btns отображается у иконки самой PGC. Если же PGC развернута, то флаг отображается у иконки меню. В открывшемся диалоговом окне нужно выбрать кнопку Кнопка 1.
Связь будет сформирована и отображена в виде розовой стрелки, соединяющей объекты. Флаг Btns будет отображен с желтой заливкой.
То же самое нужно сделать для кнопок Кнопка 2 и Кнопка 3, соединяя их с титульными папками Title2 и Title3 соответственно. По окончании работы должно существовать три связи между меню и тремя титульными папками (рис. 13.3).
Рис. 13.3. Расставленные связи меню.
Правообладателям!
Это произведение, предположительно, находится в статусе 'public domain'. Если это не так и размещение материала нарушает чьи-либо права, то сообщите нам об этом.