盘写作中的模板化命令的制作方法

文档序号:6569511阅读:127来源:国知局
专利名称:盘写作中的模板化命令的制作方法
盘写作中的模板化命令
相关申请
本申请要求2005年8月29日递交的题为"Rule-Based Authoring and Templatized Commands in Disc Authoring "的共同未决美国临时专利申请 No.60/712,685和题为"Abstractions in Disc Authoring"的共同未决美国临 时专利申请No.60/712,684的优先权。本申请还与题为"Abstractions in
Disc Authoring"的美国专利申请NO. _ (代理案巻号No.113748-
6001US)相关,该在先申请与本申请同日递交。上述专利申请的公开通过 引用被结合于此。
背景技术
本发明一般地涉及盘写作(disc authoring),更具体而言,涉及在写 作诸如蓝光光盘之类的光盘时提供模板化命令。
介质写作系统通常被用于生成符合特定标准的介质制品。例如,数字 多功能盘(DVD)写作系统被用于在DVD上生成诸如音频和视频数据之 类的数据以及用于呈现和访问音频和视频数据的信息。盘上的数据根据为 DVD定义的标准被存储。类似地,蓝光光盘(BD)写作系统被用于创建 根据为BD定义的标准存储信息的光盘。

发明内容
本发明的实现方式包括用于实现用于利用模板化命令进行的盘写作的 技术的系统和方法。
在一种实现方式中, 一种写作蓝光光盘(BD)的方法包括生成代表 模板化导航命令的模板代码,所述模板代码指定将被处理的第一对象,其 中所述模板化导航命令被用于利用可播放的内容提供所述BD的导航控 制;对所述模板代码进行转换以生成多行低级代码;以及将所述低级代码
5自动放置到所述BD上的多个位置上以实现所述BD所需行为。
在另一实现方式中, 一种蓝光光盘(BD)写作系统包括模板代码生 成器,其被配置为生成代表模板化导航命令的模板代码,所述模板代码指 定将被处理的第一对象,其中所述模板化导航命令被用于利用可播放的内 容提供所述BD的导航控制;以及代码转换器,其用于对所述模板代码进
行转换以生成多行低级代码,并且将所述低级代码自动放置到所述BD上 的多个位置上以实现所述BD所需行为。
在阅读了以下详细描述和附图之后,对于本领域普通技术人员,本发 明的其他特征和优点将变得更加明显。


通过研读附图可以部分地理解本发明就其结构和操作的细节,在附图
中,类似标号指示类似部件,其中
图1提供了 BD-ROM数据结构的简化概述;
图2示出具有定义BD-ROM盘的标题的高级表结构的索引表;
图3示出包括导航命令的电影对象的一个示例,所述导航命令可以启
动播放列表或另一电影对象;
图4示出多张播放列表的一个示例,这些播放列表是片段(clip)中
的播放间隔的集合,其指示将播放片段的哪部分以及何时播放该片段; 图5示出DelayedPlaymark (延迟播放标记)命令的一个示例; 图6示出Delayed Set Button (延迟设置按钮)命令的一个示例; 图7示出Delayed Set Stream (延迟设置流)命令的一个示例; 图8是示出用于使用模板化导航命令来写作蓝光光盘的方法的流程
图9是BDAS的模板化命令部分的框图; 图IOA示出计算机系统和用户的代表;以及
图IOB示出图10A中的计算机系统的一种实现方式的框图,其包括 BDAS的模板化命令部分。
具体实施例方式
如下面将进一步描述的,本发明的实施例提出对于用于写作符合蓝光
光盘(BD)标准规范的介质制品的有效结构和配置的需求。BD写作系统
(BDAS)执行指令以基于BD标准规范存储信息。在一种实现方式中, BDAS提供一组定义的导航命令(称之为"模板化命令"),这组导航命 令被用于提供BD的导航控制。
在阅读本说明书之后,本领域技术人员将明白如何按各种实施例和应 用来实现本发明。但是,虽然这里将描述本发明的各种实施例,但是将会 理解,这些实施例是仅仅通过示例方式而非限制方式提供的。因此,对于 各个实施例的详细描述不应理解为限制所附权利要求书所提出的本发明的 范围或广度。
BD标准规范包括BD只读存储器(BD-ROM)规范,该规范提供了 为了使盘能够按预期工作而需要在BD上定义的多种数据结构。BD-ROM 规范定义了 BD预记录(BD Prerecoded)和BD可记录(BD Recorable)
应用格式。
图1示出BD-ROM数据结构100的概述。BD-ROM具有如下的用于 管理音频/视频(AV)流文件的四层索引表110、电影对象/BD-J对象 120、播放列表130和片段140。
图2所示的索引表200是一种高级表结构,其定义BD-ROM的标 题。标题对应于索引表中的任意条目,包括第一回放210、顶部菜单220 和标题230、 232、 234、 236、 238。第一回放210被内容提供者用于执行 自动回放。每个索引表条目链接到电影对象240、 242、 244、 246或BD-J 对象250、 252。盘播放器在标题将被执行时(例如当标题搜索或菜单调 用操作被调用时)参考该表。
电影对象包括使能动态情形描述的可执行代码行或导航命令。因此, 如图3所示,电影对象(例如300)中的导航命令可以启动播放列表回放 310或另一电影对象320。这使得内容提供者能够根据用户的交互和偏好 来定义一组电影对象,用于管理播放列表的回放。 '
当与盘上的索引表中的BD-J对象相关联的标题被选择时,相应应用被自动启动,并且其生命周期(lifecycle)被绑定到标题。BD-J应用是 Java Xlet,其通过Xlet接口受控于BD-ROM播放器的应用管理器。Xlet 接口具有如下四种状态加载、暂停、活动和毁坏。 一旦BD-J应用被毁 坏,则分配给它的任意资源(例如存储器和AV控件)都被释放。
图4示出播放列表(即"电影播放列表")400、 402、 404、 406,它 们是指示将播放片段的哪部分以及何时播放该片段的片段410、 412、 414 中的播放间隔的集合。 一个这样的播放间隔被称为播放项(Playltem) (例如420)并且包括入点(IN-point)(例如422)和出点(OUT-point)(例如424),其中入点和出点中的每一个指示该片段在时间轴上 的位置。入点指示播放间隔的开始点,而出点指示播放间隔的结束点。
返回参考图1, AV流文件及其关联的数据库属性被认为是一个对 象。在BD-ROM数据结构的上下文中,AV流文件被称为片段AV流文件 144,关联的数据库属性文件被称为片段信息文件142。包括片段AV流文 件144及其相应的片段信息文件142的对象被称为片段140。
片段信息文件142存储了到相应片段AV流文件144的访问点的时间 戳。BD播放器读取片段信息文件142以找到其应该开始从片段AV流文 件144读取数据的位置。因此,在片段AV流文件144和片段信息文件 142之间存在一对一关系。
BD-ROM规范具有一组定义的导航命令,这组导航命令被用于提供 BD的导航控制。BDAS允许用户利用高级脚本语言来写作这些导航命 令。但是,通常需要在盘上的多个位置上书写代表大量导航命令的多行脚 本语言,以实现某些盘的行为。因此,为了简化写作过程,BDAS生成模 板代码(代表导航命令),所述模板代码被自动放置在盘上的多个位置 上。因此,模板代码允许仅利用一行或两行高级脚本语言代码来实现某些 盘的行为。BDAS利用脚本生成器和编译器将这些行高级代码转换成多行 低级代码。由模板代码表示的命令被称为模板化命令。
图5示出"条目标记",这些条目标记通常是电影中的章节的开始 点。因此,条目标记可被用于电影中的跳过。但是,在蓝光光盘中创建的 常规导航情形不允许主菜单中的章节跳过按钮直接访问电影的播放列表,即使在下层低级语言中存在这样的直接跳过命令也是如此。这是因为在很 多情况下,跳过需要通过索引表来执行,以便实现某些功能。因此,要想 从例如第3章节播放电影,首先需要跳到索引表,然后从索引表,针对标 题的电影对象需要执行从第3章节开始播放播放列表的命令。
在一种实现方式中,由BDAS生成模板代码,以在播放下一对象时或
在播放特定对象时从特定条目标记或播放项目开始回放对象(例如一段内
容)。例如,图5所示Delayed PlayMark命令是一种模板化命令,其在 "电影"530中的预定条目标记(即第3章节)522处开始回放播放列表 520。 BDAS生成用于如下按钮的低级代码该按钮在内部将模板化命令 的条目标记(即3)存储在寄存器中。然后,其经由索引表执行到标题的 跳跃。该内容不是从开始播放而是必须从第3章节开始回放这一事实也被 存储在通用寄存器中(Delayed PlayMark标志)。因此,在初始条目上或 从播放前一对象返回的条目,BD跳到索引表500所引用的电影对象 510。如果Delayed PlayMark标志被设置,导航命令则从寄存器取回存储 的条目标记,并从该获取的条目标记522开始回放播放列表520。在此情 况下,电影对象中从开头开始电影的常规命令将被绕过,因为回放从特定 章节开始。到播放列表中的播放项或特定时间的跳跃可以类似地执行。
在另一实现方式中,由BDAS生成模板代码以在播放下一对象时或在 播放特定对象时设置目的地按钮和页面信息。例如,图6所示Delayed Set Button命令是一种模板化命令,其设置目的地页面和按钮。最初,主菜单 页面600例如呈现"播放电影"、"音频"和"预告片"按钮。点击"播 放电影"按钮播放电影(未示出),点击"音频"按钮602打开音频页面 610,其具有可点击的按钮"英语"和"法语"。点击"预告片"按钮 604打开预告片页面620。当预告片页面620中的"蜘蛛侠"按钮622被 按下时,蜘蛛侠预告片650 (即第一对象)被播放。在播放蜘蛛侠预告片 650之后,用户将返回菜单并且目的地被设置为同一页面620上的下一按 钮624 (即针对MIB预告片660的按钮)而非返回主菜单600,这是在回 放了预告片之后简单地跳回菜单的情况下的唯一可能行为。为了实现这种 逻辑的但非标准的行为,BDAS生成低级代码,并在内部将到预告片页面620上的"蜘蛛侠"按钮622的路径存储在通用寄存器中。因此,在初始 条目上或从播放前一对象返回的条目,BD返回主菜单600,然后隐藏的 按钮自动执行和将用户带到预告片页面620和"蜘蛛侠"按钮622。通过 将目的地地址加1,可以将实际目的地设置到下一按钮(即MIB按钮 624)。在另一实现方式中,由BDAS生成模板代码,以在播放下一对象时或 在播放特定对象时设置特定流。例如,图7所示的Belayed Set Stream命 令是一种设置流的模板化命令。在图7所示示例中,音频700被设置为 "英语",图形702被设置为"X按钮",字幕706被设置为"西班牙 语"并且角度708被设置为"2" 。 BDAS生成低级代码并在内部将模板 化命令的流设置存储在通用寄存器中。因此,电影可以在如上所述设置的 流的情况下被播放。在其他实现方式中,由BDAS生成模板代码来实现其他BD行为。在 一个示例中,模板代码被生成以在去往页面上的按钮之前或在来自页面上 的按钮时回放特定转换效果。在另一示例中,模板代码被生成以类似于虚 拟可播放内容的操作回放定义的内容链。在又一示例中,模板代码被生成 以在上述情形中提供继续信息的控制。在另一实现方式中,延迟命令可被分成两类特定的和全局的。特定 延迟命令是只有在播放特定对象时才执行的命令。例如,Delayed PlayMark命令(参见图5)是特定延迟命令,其只有在将播放电影时才被 播放,因为该命令包括针对电影的条目标记。全局延迟命令是无论接下来 播放哪个对象都要执行的命令。例如Delayed Set Stream命令(参见图7) (在一个示例中,其设置音频语言)是全局延迟命令,其无论接下来播放 哪个对象都要被播放。因此,例如,当音频被设置为英语时,无论将播放 的下一对象是电影、菜单、预告片还是"电影介绍",音频都将以英语播 放。代表模板化命令的模板代码可以由用户手动写入,或者由BDAS利用 用户可以从一个对象拉到另一对象的图形连接器来生成。某些模板化命令 可以使用宏来扩展(expose),其中宏使得脚本编译器能够在编译高级代码之前将单行高级代码转换成多行高级代码。这些宏可被用于同时设置多 个命令参数。在某些实现方式中,模板代码可以隐藏。图8是示出用于利用模板化导航命令来写作蓝光光盘的方法的流程图800。在802,生成代表模板化导航命令的模板代码。如上所述,模板化 命令被用于利用可播放的内容提供BD的导航控制。模板代码在804处被 转换以在806处生成多行低级代码。低级代码随后在808处被放置在BD 上的多个位置上,以实现BD的所需行为。图9是BDAS 900的模板化命令部分的框图。在图9所示的实现方式 中,BDAS 900的模板化命令部分包括模板代码生成器920和代码转换器 930。模板代码生成器920接收用户输入并生成模板代码。在一种实现方 式中,模板代码由用户手动写入。在另一实现方式中,模板代码是利用用 户可以从一个对象拉到另一对象的图形连接器来生成的。代码转换器930 随后对模板代码进行转换以生成多行低级代码,所述低级代码被放置在 BD上的多个位置上以实现BD的所需行为。在一个实现方式中,代码转 换器930被配置为脚本编译器,以将模板代码编译成多行低级代码。图IOA示出计算机系统1000和用户1002的表示。用户1002可以使 用计算机系统1000来写作蓝光光盘。计算机系统1000存储并执行BDAS 1012的模板化命令部分,BDAS 1012接收用于生成模板代码的用户输入 并输出多行低级代码以实现BD的所需行为。图IOB示出图IOA中的计算机系统1000的一种实现方式的框图。计 算机系统1000包括控制器1010、存储器1020、存储设备1030、介质设 备1040、用户接口 1050、输入/输出(I/O)接口 1060和网络接口 1070。 这些组件通过公共总线1080互连。可替换地,可以使用不同的连接配 置,例如以控制器为中心的星状图案。控制器1010是可编程处理器并且控制计算机系统IOOO及其组件的操 作。控制器1010从存储器1020或嵌入式控制器存储器(未示出)加载指 令并执行这些指令来控制系统。在其执行中,控制器1010将BDAS 1012 的模板化命令部分作为软件系统提供。可替换地,该服务可以被实现为控 制器1010或计算机系统1000中的分离组件。存储器1020临时存储被计算机系统IOOO的其他组件使用的数据。在一种实现方式中,存储器1020被实现为RAM。在一种实现方式中,存储 器1020还包括长期或永久存储器,例如闪存和/或ROM。存储设备1030临时或长期存储被计算机系统1000的其他组件使用的 数据,例如用于存储BDAS 1012的模板化命令部分所使用的BD数据。 在一种实现方式中,存储设备1030是硬盘驱动器。介质设备1040容纳可移动介质并且读取和/或写入数据到插入的介 质。在一种实现方式中,介质设备1040是光盘驱动器。用户接口 1050包括用于从计算机系统IOOO的用户接受用户输入和向 用户呈现信息的组件。在一种实现方式中,用户接口 1050包括键盘、鼠 标、音频扬声器和显示器。控制器1010使用来自用户的输入来调整计算 机系统1000的操作。I/O接口 1060包括一个或多个I/O端口,用于连接到相应的I/O设 备,例如外部存储设备或补充设备(例如打印机或PDA)。在一种实现 方式中,1/0接口 1060的端口例如包括以下端口 USB端口、 PCMCIA 端口、串行端口和/或并行端口。在另一实现方式中,1/0接口 1060包括 用于与外部设备无线通信的无线接口。网络接口 1070包括有线和/或无线网络连接,例如支持以太网连接的 RJ-45或"Wi-Fi"接口 (802.11)。计算机系统1000包括计算机系统的附加的硬件和软件(例如功率、 冷却、操作系统),但是为了清晰,这些组件没有在图IOB中示出。在其 他实现方式中,计算机系统的不同配置可被使用(例如不同的总线或存储 配置或多处理器配置)。本发明的各种示例性实现方式已被描述。但是,本领域技术人员将会 意识到,其他实现方式也是可能的并且处于本发明的范围内。例如,虽然 已经就BD格式方面排他地描述了使用模板化命令的盘写作系统,但是该 系统可被用于以除了 BD格式之外的其他格式(例如DVD格式和HD-DVD格式)写作盘。因此,本发明不仅仅局限于上述这些实现方式。
权利要求
1.一种写作蓝光光盘(BD)的方法,该方法包括生成代表模板化导航命令的模板代码,所述模板代码指定将被处理的第一对象,其中所述模板化导航命令被用于利用可播放的内容提供所述BD的导航控制;对所述模板代码进行转换以生成多行低级代码;以及将所述低级代码自动放置到所述BD上的多个位置上以实现所述BD所需行为。
2. 如权利要求1所述的方法,其中所述模板代码是单行高级脚本语言。
3. 如权利要求1所述的方法,其中所述模板代码是多行高级脚本语曰。
4. 如权利要求1所述的方法,其中转换所述模板代码包括 利用脚本编译器对所述模板代码进行编译。
5. 如权利要求1所述的方法,其中生成模板代码包括 利用宏来扩展所述模板化导航命令,其中所述宏使得脚本编译器能够在编译所述脚本之前将单行高级代码 转换成多行高级代码。
6. 如权利要求1所述的方法,其中生成模板代码包括 手动写入所述模板代码。
7. 如权利要求1所述的方法,其中生成模板代码包括将图形连接器从所述可播放的内容的一个对象拉到另 一对象。
8. 如权利要求1所述的方法,其中利用可播放的内容提供所述BD的 导航控制包括从所述第 一对象的预定点开始播放所述第 一对象。
9. 如权利要求1所述的方法,其中利用可播放的内容提供所述BD的导航控制包括当从播放第二对象返回时,从所述第一对象的预定点播放所述第一对象。
10. 如权利要求9所述的方法,其中所述第一对象是在页面上可视化 地放在所述第二对象之后的电影对象。
11. 如权利要求1所述的方法,还包括设置用于在所述第一对象中引用的媒体流的参数。
12. 如权利要求1所述的方法,还包括 设置关于在所述第一对象中引用的按钮和页面的信息。
13. 如权利要求1所述的方法,其中利用可播放的内容提供所述BD的导航控制包括在去往页面上的按钮之前或在来自页面上的按钮时播放预定转换效果。
14. 如权利要求1所述的方法,其中利用可播放的内容提供所述BD的导航控制包括播放预定电影对象链。
15. —种蓝光光盘(BD)写作系统,包括模板代码生成器,其被配置为生成代表模板化导航命令的模板代码, 所述模板代码指定将被处理的第一对象,其中所述模板化导航命令被用于利用可播放的内容提供所述BD的导 航控制;以及代码转换器,其用于对所述模板代码进行转换以生成多行低级代码, 并且将所述低级代码自动放置到所述BD上的多个位置上以实现所述BD 所需行为。
16. 如权利要求15所述的系统,其中所述模板代码是单行高级脚本语曰o
17. 如权利要求15所述的系统,其中所述模板代码是多行高级脚本语
18. 如权利要求15所述的系统,其中所述代码转换器包括脚本编译器,其被配置为将所述模板代码编译成多行低级代码。
19. 如权利要求18所述的系统,其中所述模板代码生成器包括 多个宏,其被配置为扩展所述模板化导航命令,其中所述宏使得所述代码转换器能够在编译高级代码之前将单行高级 代码转换成多行高级代码。
20. 如权利要求15所述的系统,其中所述模板代码生成器被配置为允 许用户手动写入所述模板代码。
21. 如权利要求15所述的系统,其中所述模板代码生成器被配置为接收从所述可播放的内容的一个对象拉到另一对象的图形连接器的用户输 入,并且使用所述图形连接器来生成所述模板代码。
22. —种用于写作蓝光光盘(BD)的装置,该装置包括用于生成代表模板化导航命令的模板代码的装置,所述模板代码指定 将被处理的第一对象,其中所述模板化导航命令被用于利用可播放的内容提供所述BD的导 航控制;用于对所述模板代码进行转换以生成多行低级代码的装置;以及 用于将所述低级代码自动放置到所述BD上的多个位置上以实现所述 BD所需行为的装置。
23. —种存储在计算机可读存储介质中的计算机程序,用于写作蓝光 光盘,所述程序包括致使计算机执行以下操作的可执行指令生成代表模板化导航命令的模板代码,所述模板代码指定将被处理的 第一对象,其中所述模板化导航命令被用于利用可播放的内容提供所述BD的导 航控制;对所述模板代码进行转换以生成多行低级代码;以及 将所述低级代码自动放置到所述BD上的多个位置上以实现所述BD 所需行为。
全文摘要
写作蓝光光盘(BD)包括生成代表模板化导航命令的模板代码,所述模板代码指定将被处理的第一对象,其中所述模板化导航命令被用于利用可播放的内容提供所述BD的导航控制;对所述模板代码进行转换以生成多行低级代码;以及将所述低级代码自动放置到所述BD上的多个位置上以实现所述BD所需行为。
文档编号G06F13/00GK101406037SQ200680040501
公开日2009年4月8日 申请日期2006年8月29日 优先权日2005年8月29日
发明者哈加·萨西, 唐纳德·埃克伦德, 汤米·周, 苏米特·玛利克 申请人:索尼株式会社;索尼电影娱乐公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1