DVD-Video/NAV PACK 内部
NAV(导航)PACK 包含一个 PCI(演示控制信息)包和一个 DSI(数据搜索信息)包。我不确定这两个的顺序是否重要,但每个 VOBU 都必须以 NAV PACK 开头。
PCI 包定义按钮。这里也隐藏了用于打开此 VOBU 中视频的 Macrovision APS 复制保护标志。
(有关更多详细信息,请参阅 这里)
按钮是用户与 DVD-Video 内容交互的方式。它们可以出现在菜单和标题中。它们的外观和行为由当前可见的字幕流定义,以及来自最后看到的 PCI 包的信息。由于所有这些信息都来自 VOB 文件,该文件被播放器持续读取,因此按钮可以是动态的:它们可以出现和消失,改变它们的外观,并且随着时间的推移而移动。
每个按钮都属于一个按钮组,最多可以有三个按钮组。按钮组满足两个相互矛盾的目的:一方面,它们允许不同的颜色方案(突出显示/选定颜色的选择),另一方面,它们在宽屏画面在窄屏设备上以字母盒或平移扫描模式显示时,提供了替代布局与在宽屏设备上显示时。这就是为什么即使有 36 个按钮条目的空间,一个宽屏菜单也可以限制为仅 12 个按钮,如果您为宽屏画面提供三种替代按钮布局。
按钮可以处于三种状态之一:正常状态是由字幕流定义的。一个按钮始终处于突出显示状态:这由按钮矩形内的字幕像素从 PCI 中的相关表条目获取其颜色(包括透明度)来指示,覆盖字幕流指定的颜色。当用户使用遥控器上的上/下/左/右键时,突出显示状态根据 PCI 表中定义的相应空间关系信息从一个按钮移动到另一个按钮。
为了清楚起见:在正常、突出显示和选中状态之间切换纯粹是通过更改分配给像素值的颜色(和透明度)来完成的;像素值不会从字幕流中指定的像素值更改。
然后,当用户按下“确定”或“回车”按钮时,突出显示的按钮会(应该)短暂地显示在“选中”状态,然后执行与该按钮关联的交互命令。一些播放器似乎并不在意是否显示按钮的选中状态。
按钮也可以定义为“自动操作”按钮;这意味着关联的命令在按钮突出显示后立即执行,而无需等待“确定”按下。这对于定义需要比一个屏幕上容纳的更多按钮的菜单特别有用;“下一屏”和“上一屏”按钮可以是自动操作按钮,从而减少了用户在屏幕之间切换所需的按键次数。
一种常见的技术是,字幕流定义的“正常”状态根本不显示任何可见的(不透明的)字幕像素。相反,由视频层定义用户看到按钮的“正常”外观。这是因为视频层允许更精细的、全彩图像,而字幕则限制为最多四种颜色。“突出显示”和“选中”修饰仍然限制为最多四种颜色。
DSI 包包含指向先前和后续 VOBU 的链接,这些链接在从 0.5 秒到 120 秒的各种预定义时间偏移处。这有助于播放器实现其快速播放(快进/快退)模式。它还定义了对应于不同摄像机视角的 VOBU 如何交织在一起。