流变换方法和装置,数据记录方法和装置,和数据记录介质.pdf

上传人:111****112 文档编号:369620 上传时间:2018-02-12 格式:PDF 页数:119 大小:4.85MB
返回 下载 相关 举报
摘要
申请专利号:

CN02809869.2

申请日:

2002.11.28

公开号:

CN1509567A

公开日:

2004.06.30

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效|||公开

IPC分类号:

H04N5/92; G11B20/10; //H04N5/85,H04N9/80

主分类号:

H04N5/92; G11B20/10; //H04N5/85,H04N9/80

申请人:

松下电器产业株式会社; 索尼公司; 皇家飞利浦电子股份有限公司

发明人:

八木知隆; 矢羽田洋; 川崎弘二郎; 加藤元树; 中村政信; 威廉默斯·雅各布斯·范赫斯塔尔; 德克兰·帕特里克·凯利

地址:

日本大阪府

优先权:

2001.11.30 JP 367787/2001

专利代理机构:

中科专利商标代理有限责任公司

代理人:

王玮

PDF下载: PDF下载
内容摘要

在存储MPEG流的记录介质中,提供了指示能以一种容易地将第一流(MPEG传送流)变换到第二流(PMEG程序流)的格式记录该流的标志信息(encode_condition)。在该介质中,这样一个标志信息包括在作为一个控制数据分组的Tip数据分组中。因此,可以容易地确定数据是否是用这种格式记录的,而不用分析存储在记录介质中的数据。

权利要求书

1: 一种用于把记录到记录介质上的多路复用的视频和音频数据的第 一流变换到第二流的流变换装置,第一流具有一种把分段数据存储在第 一数据块中的结构,第二流具有一种把分段数据存储在第二数据块中的 结构,第一和第二数据块的最大数据量不同,其中第一流格式是一种用 于变换到第二流的约束格式, 利用约束格式, 把第一流中规定数量的连续第一数据块作为一个单元(多路复用单 元)管理,设置规定数量使得存储在该单元中的总数据量不超过存储到 一个第二数据块的数据量,并且存储在同一单元中的所有数据是相同的 视频流或相同的音频流, 向流变换到的目标第二数据块的系统解码器的输入开始时间与第一 候选时间和第二候选时间中靠后的一个相同,第一候选时间是向一个被 变换的源单元的系统解码器的输入开始时间,第二候选时间是向紧接源 单元变换到的目标第二数据块之前的第二数据块的系统解码器的输入结 束的时间, 记录介质还记录指示记录的第一流是否是以约束格式记录的标志, 流变换系统包括: 可以操作以从记录介质读出第一流的读出部分; 可以操作以把读出第一流变换到第二流的变换部分;和 可以操作以把变换的第二流记录到记录介质的记录部分;和 变换部分参考该标志,以确定第一流的格式是否是约束格式,并且 当确定第一流是利用约束格式记录时,不改变第一数据块的多路复用次 序,逐单元地把构成单元的第一数据块变换到第二数据块,并且选择第 一和第二候选时间中靠后的一个作为变换的第二数据块的时间标记信 息,以设置第二数据块的解码器输入开始时间。
2: 根据权利要求1所述的流变换装置,其中: 把第一流中的多个连续单元作为一个其中插入了控制块的包封管 理; 位于单元首部的第一数据块包括根据第一参考值指示向系统解码器 的输入开始时间的第一时间标记信息(ATS[i]); 控制块包括基于第一参考值的第一时间标记信息(ATS_tip),和基 于与第一参考值不同的第二参考值的第二时间标记信息(PCR_tip);和 位于每个单元的首部的第一数据块的第二时间标记信息 (calculated_PCR[i])和向包括在从第一流变换的第二流中的每个第二数 据块的系统解码器的输入开始时间(SCR[i])从下面公的式获得, SCR[1]=calculated_PCR[1] SCR[i]=max(SCR[i-1]+T,calculated_PCR[i]) calculated_PCR[i]=PCR_tip+(ATS[i]-ATS_tip+C) 其中i是2或更大的整数,T是第二数据块的最小传送时间,和C 是ATS[i]的溢出的校正因数。
3: 根据权利要求1所述的流变换装置,其中当通过参考该标志,确 定第一流的格式不是约束格式时,变换部分对第一流再编码以把第一流 变换到第二流。
4: 一种用于多路复用视频信息和音频信息,以把信息以一种能够从 第一流变换到第二流的格式记录到记录介质的记录装置,第一流具有一 种把数据分段存储在第一数据块中的结构,第二流具有一种把数据分段 存储在第二数据块中的结构,第一和第二数据块的最大数据量不同,其 中 利用这种格式, 将第一流中规定数量的连续第一数据块作为一个单元(多路复用单 元)管理,设置规定数量以便使存储在该单元中的数据总量不超过存储 到第二数据块的数据量,并且存储在同一单元中的所有数据是相同的视 频流或相同的音频流, 通过解码单元把第一流中包括视频数据的多个连续单元作为一个其 中插入了控制块的包封管理,控制块存储用于指示第一流的记录格式是 否是约束格式的标志, 向流变换到的目标第二数据块的系统解码器的输入开始时间与第一 候选时间和第二候选时间中靠后的一个相同,第一候选时间是向被变换 的源单元的系统解码器的输入开始时间,和第二候选时间是向紧接源单 元变换到的目标第二数据块前面的第二数据块的系统解码器的输入结束 的时间, 通过逐单元地将构成该单元的第一数据块变换到一个第二数据块而 不改变第一数据块的多路复用次序地将第一流变换到第二流,并且选择 第一和第二候选时间中靠后的一个作为变换的第二数据块的时间标记信 息,以设置第二数据块的解码器输入开始时间; 记录装置包括: 可以操作以根据格式把要记录的视频信息和音频信息编码到第一流 的编码部分; 可以操作以把编码的第一流记录到记录介质上的记录部分;和 可以操作以控制编码部分和记录部分的控制部分, 当编码第一流时,控制部分预料从编码的第一流变换的第二流,然 后编码第一流使得既不会在编码的第一流中也不会在预料的第二流中发 生缓存器下溢和缓存器溢出中的至少一个。
5: 根据权利要求4所述的记录装置,其中: 把第一流中的多个连续单元作为一个其中插入了控制块的包封管 理; 位于该单元首部的第一数据块包括根据第一参考值指示向一个系统 解码器的输入开始时间的第一时间标记信息(ATS[i]); 控制块包括基于第一参考值的第一时间标记信息(ATS_tip),和基 于与第一参考值不同的第二参考值的第二时间标记信息(PCR_tip);和 位于每个单元的首部的第一数据块的第二时间标记信息 (calculated_PCR[i])和向包括在从第一流变换的第二流中的每个第二数 据块的系统解码器的输入开始时间(SCR[i])从以下的公式获得, SCR[1]=calculated_PCR[1] SCR[i]=max(SCR[i-1]+T,calculated_PCR[i]) calculated_PCR[i]=PCR_tip+(ATS[i]-ATS_tip+C) 其中i是2或更大的整数,T是第二数据块的最小传输时间,和C 是ATS[i]的溢出的校正因数。
6: 一种用于以能使第一流变换到第二流的格式记录多路复用的视频 数据和音频数据的记录介质,第一流具有一种把数据分段存储在第一数 据块中的结构,第二流具有一种把数据分段存储在第二数据块中的结构, 第一和第二数据块的最大数据量不同,其中 通过这种格式, 把第一流中的规定数量的连续第一数据块作为一个单元(多路复用 单元)管理,设置规定数量以便使存储在该单元中的总数据量不超过存 储到一个第二数据块中的数据量,并且存储在同一单元中的所有数据是 相同的视频流或相同的音频流, 通过解码单元把第一流中包括视频数据的多个连续单元作为一个其 中插入了控制块的包封管理,控制块存储了用于指示第一流的记录格式 是否是约束格式的标志, 向流变换到的目标第二数据块的系统解码器的输入开始时间与第一 候选时间和第二候选时间中靠后的一个相同,第一候选时间是向一个被 变换的源单元的系统解码器的输入开始时间,第二候选时间是向紧接着 源单元变换到的目标第二数据块的第二数据块的系统解码器的输入结束 的时间, 通过逐单元地把构成该单元的第一数据块变换到一个第二数据块而 不改变第一数据块的多路复用次序,把第一流变换到第二流,并且选择 第一和第二候选时间中靠后的一个作为变换的第二数据块的时间标记信 息,以设置第二数据块的解码器输入开始时间。
7: 一种用于把记录到记录介质的多路复用的视频数据和音频数据的 第一流变换到第二流的流变换方法,第一流具有一种把数据分段存储在 第一数据块中的结构,第二流具有一种把数据分段存储在第二数据块的 结构,第一和第二数据块的最大数据量不同,其中 第一流格式是一种用于变换到第二流的约束格式, 通过约束格式, 把第一流中规定数量的连续第一数据块作为一个单元(多路复用单 元)管理,设置该规定数量以使存储在多路复用单元中的数据总量不超 过存储在一个第二数据块中的数据量,并且存储在同一单元中的所有数 据是相同的视频流或相同的音频流, 向流变换到的目标第二数据块的系统解码器的输入开始时间与第一 候选时间和第二候选时间中靠后的一个相同,第一候选时间是向一个被 变换的源单元的系统解码器的输入开始时间,第二候选时间是向紧接着 源单元变换到的目标第二数据块的第二数据块的系统解码器的输入结束 的时间, 记录介质还记录用于指示记录的第一流是否是用约束格式记录的标 志, 流变换方法包括: 参考该标志确定第一流的格式,以便把第一流变换到第二流, 当第一流的格式是约束格式时, 逐单元地把构成该单元的第一数据块变换到一个第二数据块,而不 改变第一数据块的多路复用次序,和 选择第一和第二候选时间中靠后的一个作为变换的第二数据块的时 间标记信息,以设置第二数据块的解码器输入开始时间。
8: 一种用于多路复用视频信息和音频信息,以一种能从第一流变换 到第二流的格式将信息记录到记录介质上的记录方法,第一流具有一种 把数据分段存储在第一数据块的结构,第二流具有一种把数据分段存储 在第二数据块的结构,第一和第二数据块的最大数据量不同,其中 通过这种格式, 把第一流中规定数量的连续第一数据块作为一个单元(多路复用单 元)管理,设置该规定数量以便使存储在该单元中的数据总量不超过存 储在一个第二数据块中的数据量,并且存储在同一单元中的所有数据是 相同的视频流或相同的音频流, 通过解码单元把第一流中包括视频数据的多个连续单元作为一个其 中插入了控制块的包封管理,控制块存储用于指示第一流的记录格式是 否是约束格式的标志, 向流变换到的目标第二数据块的系统解码器的输入开始时间与第一 候选时间和第二候选时间中靠后的一个相同,第一候选时间是向一个被 变换的源单元的系统解码器的输入开始时间,第二候选时间是向紧接着 源单元变换到的目标第二数据块的第二数据块的系统解码器的输入结束 的时间, 通过逐单元地把构成该单元的第一数据块变换到第二数据块,而不 改变第一数据块的多路复用次序,把第一流变换成第二流,并且选择第 一和第二候选时间中靠后的一个作为变换的第二数据块的时间标记信 息,以设置第二数据块的解码器输入开始时间, 记录方法包括:当编码第一流时,预料从编码的第一流变换的第二 流,并编码第一流使得既不会在编码的第一流中也不会在预料第二流中 发生缓存器下溢或缓存器溢出中的至少一个。
9: 一种用于在计算机上执行权利要求7或权利要求8中所述的方法 的计算机可读程序。

说明书


流变换方法和装置,数据记录 方法和装置,和数据记录介质

    【技术领域】

    本发明涉及用于记录包括运动图像(视频)数据、静止图像数据、音频数据、和用于数据广播的格式化数据在内的多媒体数据的可读、可记录数据记录介质。本发明还涉及一种将数据记录到这种数据记录介质上的系统和方法。

    背景技术

    虽然最近可重写光盘的最大存储容量仍然是4.7GB,但是现在已经出现了具有数兆字节存储容量的相变(phase-change)DVD-RAM介质。DVD-RAM介质已经在计算机产业中用作存储介质,并且随着实现MPEG-1和MPEG-2数字AV数据编码标准的经济的编码器和解码器的开发结果,有望很快用作音频-视频(AV)领域中的记录和播放介质。

    数字广播已经在日本开始,使得能够将多个节目的视频、音频和数据多路复用到一个MPEG传送流(以下记为MPEG-TS)。使用硬盘驱动器或DVD驱动器的数字广播记录装置也已出现。

    这些下一代数字广播记录器(recorder)通常将广播内容按其广播原样记录,而不变换MPEG-TS。从而记录器不需要能够内部处理MPEG-TS和MPEG程序流(以下记为MPEG-PS),希望这些记录器甚至能够把来自线路输入终端的外部模拟AV内容(即,用户内容)编码成用于记录的MPEG-TS。

    当前的DVD理论标准(例如,DVD-Video,DVD-Audio,DVD视频记录,和DVD流记录标准)将MPEG-PS用于AV流记录。这意味着要在诸如上述数字广播记录器之类的记录器中把使用MPEG-TS记录的内容变换成DVD-Video格式,例如,必须把MPEG-TS变换成MPEG-PS。

    但是,将MPEG-TS多路复用的内容流变换成MPEG-PS需要用于解码器缓存管理地复杂计算过程。因此,变换处理要占用较长的时间,需要对基本流重编码,可能降低图像和声音质量,因而通常难于实现。

    【发明内容】

    因此,本发明旨在解决这些问题,本发明的一个目的是要提供一种用于将数据记录到MPEG传送流,由此能够将以MPEG-TS格式记录的内容快速而简单地变换成MPEG-PS格式的数据记录介质。本发明的另一个目的是要提供一种利用这种数据记录介质记录、变换和播放数据的系统和方法。

    提供了一种根据发明的流变换装置,用于将记录到记录介质的多路复用的视频数据和音频数据的第一流变换成第二流,第一流具有一种用于将数据分段存储在第一数据块中的结构,第二流具有一种用于将数据分段存储在第二数据块中的结构,第一和第二数据块的最大数据量不同,其中第一流格式是一种用于变换到第二流的约束格式。

    通过这种约束格式,将第一流中的规定数量的连续第一数据块作为一个单元(多路复用单元)管理,设定该规定数量以便使存储在该单元中的总数据量不超过存储到一个第二数据块的数据量,并且存储在同一单元中的所有数据是相同视频流或相同音频流。对一个流变换成的目标第二数据块的系统解码器的输入开始时间与第一侯选时间和第二侯选时间中的靠后的一个相同。第一侯选时间是到一个被变换的源单元的系统解码器的输入开始时间。第二侯选时间是紧接着源单元变换到的目标第二数据块之前向第二数据块的系统解码器输入结束的时间。

    记录介质还记录一个指示第一流是否被以约束格式记录的标志。

    流变换系统包括:可以操作以从记录介质读出第一流的读出部分;可以操作以将读出的第一流变换成第二流的变换部分;和可以操作以把变换的第二流记录到记录介质上的记录部分。变换部分参考该标志,以确定第一流的格式是否是约束格式。当确定第一流使用约束格式记录时,逐单元地将构成单元的第一数据块变换成一个第二数据块,而不改变第一数据块的多路复用的次序,并且选择第一和第二侯选时间中靠后的一个作为变换的第二数据块的时间标记信息,以设定第二数据块的解码器输入开始时间。

    可以把第一流中的多个连续单元作为其中插入了一个控制数据块的包封(capsule)管理。位于单元首部的第一数据块可以包括指示对一个系统解码器的基于第一参考值的输入开始时间的第一时间标记信息(ATS[i])。控制数据块可以包含基于第一参考值的第一时间标记信息(ATS_tip),和基于与第一参考值不同的第二参考值的第二时间标记信息(PCR_tip)。可以从下面的等式得到位于每个单元的首部的第一数据块的第二时间标记信息(calculated_PCR[i]),和对包括在从第一流变换的第二流中的每个第二数据块的系统解码器的输入开始时间(SCR[i]),

    SCR[1]=calculated_PCR[1]

    SCR[i]=max(SCR[i-1]+T,calculated_PCR[i])

    calculated_PCR[i]=PCR_tip+(ATS[i]-ATS_tip+C)

    其中i是2或更大的整数,T是第二数据块的最小传送时间,C是ATS[i]的溢出的校正因数。

    当通过参考标志确定第一流的格式不是约束格式时,变换部分可以对第一流重编码,以把第一流变换到第二流。

    提供了一个根据本发明的记录装置,用于多路复用的视频信息和音频信息,将信息以一种能够从第一流变换到第二流的格式记录到记录介质上。

    第一流具有一种将数据分段存储在第一数据块的结构。第二流具有一种将数据分段存储在第二数据块的结构。第一和第二数据块的最大数据量不同。

    通过这种格式,可以把第一流中的规定数量的连续第一数据块作为一个单元(多路复用单元)管理,设定规定数量,以使存储在该单元中的总数据量不超过存储到一个第二数据块中的数据量,并且存储在同一单元中的所有数据都是相同视频流或相同音频流。

    通过解码单元把第一流中包括视频数据的多个连续单元作为其中插入了一个控制数据块的包封管理,控制数据块存储用于指示第一流的记录格式是否是约束格式的标志。

    向流变换成的一个目标第二数据块的系统解码器的输入开始时间与第一侯选时间和第二侯选时间中的靠后的一个相同。第一侯选时间是向被变换的源单元的系统解码器的输入开始时间,第二侯选时间是向紧接着源单元变换成的目标第二数据块之前的第二数据块的系统解码器输入结束的时间。

    通过逐单元地将构成该单元的第一数据块变换成第二数据块,而不改变第一数据块的多路复用的次序地,将第一流变换成第二流,并且选择第一和第二侯选时间中靠后的一个作为变换的第二数据块的时间标记信息,以设置第二数据块的解码器输入开始时间。

    记录装置包括:可以操作以根据格式把要记录的视频信息和音频信息编码到第一流的编码部分;可以操作以把编码的第一流记录到记录介质的记录部分;和可以操作以控制编码部分和记录部分的控制部分。当编码第一流时,控制部分预料从编码的第一流变换的第二流,然后对第一流编码,以便能够既不在编码第一流也不在预料的第二流中发生缓存器下溢和缓存器溢出中的至少一个。

    提供了一种根据本发明的记录介质,用于以一种使得能够将第一流变换成第二流的格式,记录多路复用的视频数据和音频数据。第一流具有一种将数据分段存储在第一数据块的结构,第二流具有一种将数据分段存储在第二数据块的结构。第一和第二数据块的最大数据量不同。

    通过这种格式,可以把第一流中的规定数量的连续第一数据块作为一个单元(多路复用单元)管理,设定规定数量,以使该单元中存储的总数据量不超过存储到一个第二数据块的数据量,并且同一单元中存储的所有数据都是相同视频数据或相同音频数据。由解码单元将第一流中包括视频数据的多个连续单元作为其中插入了一个控制数据块的包封管理,控制数据块存储用于指示第一流的记录格式是否是约束格式的标志。

    向流变换成的一个目标第二数据块的系统解码器的输入开始时间与第一侯选时间和第二侯选时间中靠后的一个相同。第一侯选时间是对一个被变换的源单元的系统解码器的输入开始时间,第二侯选时间是向紧接着源单元变换成的目标第二数据块之前的第二数据块的系统解码器的输入结束的时间。

    通过逐单元将组成该单元的第一数据块变换成第二数据块,而不改变第一数据块的多路复用的次序地将第一流变换到第二流,并且选择第一和第二侯选时间中靠后的一个作为变换的第二数据块的时间标记信息,以设置第二数据块的解码器输入开始时间。

    提供了根据本发明的一种流变换方法,用于将记录到记录介质的多路复用的视频数据和音频数据的第一流变换成第二流。第一流具有一种将数据分段存储在第一数据块的结构,第二流具有一种将数据分段存储在第二数据块的结构。第一和第二数据块的最大数据量不同。

    第一流格式是一种用于变换到第二流的约束格式。

    通过这种约束格式,把第一流中的规定数量的连续数据块作为一个单元(多路复用单元)管理,设置规定数量以便使存储在多路复用的单元中的数据总量不超过存储到一个第二数据块中的数据量,并且存储在同一单元中的所有数据都是相同视频流或相同音频流。向流变换成的目标第二数据块的系统解码器的输入开始时间与第一侯选时间和第二侯选时间中靠后的一个相同。第一侯选时间是向被变换的源单元的系统解码器的输入开始时间。第二侯选时间是向紧接着源单元变换成的目标第二数据块之前的第二数据块的系统解码器的输入结束的时间。

    记录介质还记录用于指示记录的第一流是否是用约束格式记录的标志。

    流变换方法包括参考该标志来确定第一流的格式,以便当第一流的格式是约束格式时,通过逐单元地把构成该单元第一数据块变换到第二数据块而不改变第一数据块的多路复用次序地将第一流变换成第二流,并且选择第一和第二侯选时间中靠后的一个作为变换的第二数据块的时间标记信息,以设定第二数据块的解码器输入开始时间。

    提供了根据本发明的一种记录方法,用于多路复用的视频信息和音频信息,以便用一种能够从第一流变换到第二流的格式将这些信息记录到记录介质上。第一流具有一种将数据分段存储在第一数据块的结构。第二流具有一种将数据分段存储在第二数据块的结构。第一和第二数据块的最大数据量不同。

    通过这种格式,把第一流中的规定数量的连续第一数据块作为一个单元(多路复用单元)管理,设定规定数量,以便使存储在该单元中的总数据量不超过存储到一个第二数据块的数据量,并且存储在同一单元中的所有数据都是相同视频流或相同音频流。解码单元将第一流中的包括视频数据的多个连续单元作为一个其中插入了一个控制块的包封管理,控制块存储用于指示第一流的记录格式是否是约束格式的标志。

    向流变换成的目标第二数据块的系统解码器的输入开始时间与第一侯选时间和第二侯选时间中的靠后的一个相同。第一侯选时间是向被变换的源单元的系统解码器的输入开始时间,第二侯选时间是向紧接着源单元变换成的目标第二数据块之前的第二数据块的系统解码器的输入结束的时间。

    通过逐单元地将组成单元的第一数据块变换成一个第二数据块而不改变第一数据块的多路复用次序地将第一流变换成第二流,并且选择第一和第二侯选时间中靠后的一个作为变换的第二数据块的时间标记信息,以设置第二数据块的解码器输入开始时间。

    该记录方法包括,当编码第一流时,预料从编码的第一流变换的第二流,并且对第一流编码以便既不在编码的第一流中也不在预期的第二流中发生缓存器下溢或缓存器溢出中的至少一个。

    一种根据本发明的程序,使得计算机能够执行本发明的流变换方法或记录方法。

    <本发明的效果>

    根据本发明,在存储MPEG流的记录介质中,提供了指示流是用一种能够容易地将第一流(例如,MPEG传送流)变换成第二流(例如,MPEG程序流)的格式记录的标志信息。这一标志信息包括在一个预定的控制数据分组中。因此,可以容易地确定数据是否是用这种格式记录的,而不用分析存储在记录介质中的数据,实现了有效的格式确定处理。

    【附图说明】

    图1是DVD记录装置和与之结合使用的其它组件之间的示例接口的示意图;

    图2是DVD记录器的驱动器的方框图;

    图3A是说明一个轨迹缓存器中数据累积之间的相关性的曲线图,图3B是盘上的一个邻接区域;

    图4是具有一个半导体存储卡和硬盘驱动器的DVD记录器的方框图;

    图5A示出了一个典型盘的物理结构,图5B示出了一个典型盘的格式;

    图6A和6B示出了盘的逻辑数据空间;

    图7A示出了盘目录,图7B示出了文件结构;

    图8示出了一个视频对象的结构;

    图9示出了MPEG系统流;

    图10A至10C示出了MPEG传送流(MPEG-TS);

    图11A至11C示出了MPEG程序流(MPEG-PS);

    图12A至12D示出了一个TS数据分组;

    图13A,13B,13C1和13C2示出了PAT表和PMAP表的例子;

    图14A至14C示出了视频对象在盘上的布置;

    图15A和15B示出了视频管理信息的数据结构;

    图16A和16B示出了视频管理信息的数据结构;

    图17示出了视频管理信息中对象、对象信息、和PGC信息之间的关系;

    图18是显示一个播放(再现(reproducing))装置的功能配置的方框图;

    图19是显示一个记录装置的功能配置的方框图;

    图20说明了为了易于变换到MPEG-PS而编码的MPEG-TS和变换后的MPEG-PS之间的相关性;

    图21是根据本发明的数据记录装置的编码器的方框图;

    图22示出了由于系统编码中的差异而在从自编码的MPEG-TS变换到DVD格式的过程中存在的差异;

    图23示出了Tip数据分组的数据结构;

    图24示出了Data_ID的数据结构;

    图25示出了display_and_copy_info的数据结构;

    图26示出了encode_info的数据结构;

    图27示出了PES_info的数据结构;

    图28示出了MakersPrivateData的数据结构;

    图29A说明了Tip数据分组的PID,图29B说明了Tip数据分组的stream_type;

    图30示出了一个约束SESF流中的PES数据分组首部的字段值;

    图31示出了一个约束SESF流中的PES_extension_flag和PES_header_data_length;

    图32示出了一个自编码的从而不符合T_STD模型的MPEG-TS的例子;

    图33A和33B示出了从MPEG-TS变换的从而使MPEG_PS不符合P_STD模型的MPEG_PS的例子;

    图34示出了SCR计算;

    图35示出了当encode_condition=“11b”时,一个约束SESF的基本流属性;

    图36示出了当encode_condition=“01b”时,一个约束SESF的基本流属性;

    图37示出了DVD Video中的标准流结构;

    图38示出了MPEG-2程序流中一个数据包的数据包首部的数据结构的一部分;

    图39示出了MPEG-2程序流中数据分组首部的数据结构的一部分;

    图40A和40B示出了从约束SESF到视频数据包的MPEG_PS的变换;

    图41A和41B示出了从约束SESF到音频数据包的MPEG_PS的变换;

    图42是约束SESF允许的音频比特率,和在对应的比特率存储到AC-3和MPEG-1 Audio的一个音频PES数据分组的最大有效负载长度的表;

    图43是整个TS2PS变换处理的流程图;

    图44是TS2PS变换处理中初始化处理的流程图;

    图45是TS2PS变换处理中包封单元处理的流程图;

    图46是数据包单元处理的流程图;

    图47是SCR计算处理的流程图;

    图48是数据包首部处理的流程图;

    图49是数据分组首部处理的流程图;

    图50是流ID处理的流程图;

    图51是start-of-PES数据分组处理的流程图;

    图52是non-start-of-PES数据分组处理的流程图;

    图53是有效负载处理的流程图;

    图54是填充数据分组处理的流程图;

    图55示出了约束SESF流格式;

    图56示出了有关MPEG标准的PES数据分组的数据结构;

    图57A说明了从非约束MPEG-TS到MPEG-PS的变换,和图57B说明了从约束MPEG-TS到MPEG-PS的变换;

    图58A说明了当被变换的MPEG-TS和得到的MPEG-PS中的比特率相同时(当发生缓存器下溢时),MPEG-TS和预料的MPEG-PS的缓存器管理;

    图58B说明了当被变换的MPEG-TS和得到的MPEG-PS中的比特率相同时(当未发生缓存器下溢时),MPEG-TS和预料的MPEG-PS的缓存器管理;

    图59A说明了当被变换的MPEG-TS的比特率高于得到的MPEG-PS的比特率时(当仅在MPEG-PS发生缓存器下溢时),MPEG-TS和预料的MPEG-PS的缓存器管理;

    图59B说明当被变换的MPEG-TS的比特率高于得到的MPEG-PS的比特率时(当未发生缓存器下溢时),MPEG-TS和预料的MPEG-PS的缓存器管理;

    图60A说明了确定在变换的MPEG-PS的数据包中设定的时间标志信息(SCR)(当MPEG-TS和MPEG-PS具有相同的比特率时);

    图60B说明了确定在变换的MPEG-PS的数据包中设定的时间标志信息(SCR)(当MPEG-TS的传输率高于MPEG-PS的传输率时);和

    图61示出了加到每个TS数据分组的相对传送时间ATS,和多路复用单元中的第一TS数据分组的传送时间calculated_PCR[n]之间的相关性。

    【具体实施方式】

    以下参考作为根据本发明的数据记录介质、记录系统、和播放系统的特定实施例的附图,顺序说明DVD盘、DVD记录器、和DVD播放器。

    在第8节,发明概述,和第9节,实施例的详细说明中描述本发明的要点。但是,应当注意,以下全都是本发明的实施例,尽管它们与本发明的关系不同。

    1.DVD记录系统的概述

    2.DVD记录器的功能概述

    3.DVD盘的概述

    4.再现的AV数据的概述

    5.AV数据管理信息和播放控制的概述

    6.播放功能的基本操作

    7.记录功能的基本操作

    8.发明综述

    9.实施例的详细说明

    应指出,为了简明起见,下面使用的“TS2PS”表示MPEG传送流(MPEG-TS)变换到MPEG程序流(MPEG-PS),并且“DVD格式”是指DVD-Video标准的格式和DVD-Video记录标准的格式二者,它们都是MPEG-PS格式。

    1.DVD记录系统的概述

    图1是用于说明DVD记录器以及DVD记录器与其它设备之间的接口的示意图。

    如图1中所示,DVD光盘装载到用于记录和再现视频数据的DVD记录器中。DVD记录器一般是用遥控器操作的。

    可以利用例如来自模拟广播的模拟信号,或例如来自数字广播的数字信号将视频数据输入到DVD记录器中。模拟广播一般是由电视机中内置的接收机接收,例如,解调,并且作为NTSC或其它类型的模拟视频信号输入到DVD记录器。数字广播通常是由机顶盒(STB)接收机接收和解调成数字信号,并且输入到DVD记录器以便记录。

    记录到DVD的视频数据同样地通过DVD记录器再现和向外输出。如输入一样,可以把视频数据作为模拟信号或数字信号输出。模拟信号输出可以直接输出到电视机,而数字信号输出则通过STB,在输入到电视机观看之前,变换成模拟信号。

    除了DVD记录器之外,也可以使用DVD摄录机和个人电脑向和从DVD记录和播放视频数据。也可以把包含不是DVD记录器的设备记录的视频数据的DVD装载到DVD记录器中播放。

    在模拟和数字广播中,音频数据通常也可以与视频数据一同记录,并且同样也可以通过DVD记录器记录和再现这种音频数据。

    此外,视频数据通常是运动图像数据(例如,电影),但是也可以是或包括静止图形。例如,可以利用DVD摄录机的静止成像功能记录这些静止图像。

    可以使用各种数字接口连接STB和DVD记录器,包括IEEE 1394,ATAPI,和SCSI。

    还要注意,上面提到将NTSC复合视频信号用作在DVD记录器和电视机之间通过的信号,但是,可以使用其中亮度信号和色差信号独立发送的分量信号。

    也可以用正在开发的诸如DVI之类的数字接口来替换用于在AV设备和电视机之间进行视频传送的模拟接口,并且预期不久就可以通过数字接口连接DVD记录器和电视机。

    2.DVD记录器的功能概述

    图2是表示DVD记录器的功能的方框图。典型的DVD驱动器具有一个用于从DVD-RAM盘100读出数据的光拾取器101,一个ECC(纠错码)处理器102,轨迹缓存器103,用于改变轨迹缓存器103的输入和输出的开关104,一个编码器105,和一个解码器106。

    如图中所示,数据被记录到DVD-RAM盘100的作为最小记录单元的扇区单元中。一个扇区包含2KB的数据。然后将扇区组成ECC块,每ECC块具有32个扇区。ECC处理器102对ECC块单元实行纠错。

    除了DVD盘之外,DVD记录器也可以使用半导体存储卡或硬盘驱动器作为数据存储介质。图4是一个除了DVD盘驱动器之外,还装备有一个半导体存卡和硬盘驱动器的DVD记录器。

    应当注意,一个扇区可以是512字节,8KB,或其它单位。每个ECC块可以包含仅1个扇区,或16扇区,64扇区,或其它数量的扇区。随着可以存储到盘的数据量的增加,预期每个ECC块中的扇区大小和扇区数都要增加。

    轨迹缓存器103以可变比特率(VBR)记录AV数据,以便能够更有效率地将AV数据记录到DVD-RAM盘100。DVD-RAM盘100的读/写速率(Va)是固定的速率,但是AV数据的比特率(Vb)根据内容的复杂性(视频记录情况下的图像)改变。因此,将轨迹缓存器103用作一个吸收读/写速率(Va)和AV数据比特率(Vb)之间的差别的缓存器。

    通过更有效地使用这个轨迹缓存器103,可以如下面参考图3A和3B说明的那样,将AV数据非邻接地记录到盘100。

    图3A示出了光盘的地址空间。如图3A中所示,当AV数据记录到邻接区[a1,a2]和与[a1,a2]不邻接的邻接区[a3,a4]中时,在从a2搜索到a3同时,可以通过向解码器106提供轨迹缓存器103积累的数据来暂停AV的连续播放。图3B中示出了这种情况。

    从时间t1把从地址a1开始读出的AV数据输入到轨迹缓存器103,同时也开始从轨迹缓存器103输出数据。因此,数据以速率(Va-Vb),即,轨迹缓存器输入速率Va和轨迹缓存器输出速率Vb之间的差,积累在轨迹缓存器103中。这继续到位置a2的邻接区[a1,a2]的终点,即,时间t2。如果在此期间轨迹缓存器103中积累的数据量是B(t2),那么在从时间t2到开始从位置a3读出的时间t3的周期中,可以通过消耗存储在轨迹缓存器103中的数据B(t2)向解码器106提供数据。

    也就是说,如果在搜索操作之前存储了至少某个最小量的数据,当搜索开始时,可以继续向解码器提供AV数据。

    从下面的等式可以确定当变换到ECC块的数量N_eec时,使得能够把AV数据连续提供到解码器的邻接区的大小:

    N_ecc=Vb*Tj/((N_sec*8*S_size)*(1-Vb/Va))

    其中N_eec是每个ECC块的扇区数,S_size是扇区大小,和Tj是搜索性能(最大搜索时间)。

    在邻接区中也可能存在坏扇区。考虑到这个因素,可以从下面的等式确定邻接区的大小:

    N_eec=dN_ecc+Vb*(Tj+Ts)/((N_sec*8*S_size)*(1-Vb/Va))其中dN_eec是容许的坏扇区大小,Ts是跳过邻接区中坏扇区所需的时间。得到的大小也表示为ECC块的数量。

    通过上述例子的方式使用从DVD-RAM读出,也就是说,再现的数据,并且应当知道,可把同样的原理应用到把数据写入DVD-RAM盘,也就是说,记录到DVD-RAM盘。

    因此,应当知道,在把某个最小数据量邻接地记录到盘的情况下,可以将非邻接记录的AV数据连续地从和向DVD-RAM盘再现和记录。对于DVD介质,这个区被称为一个邻接盘区(CDA)。

    3.DVD盘概述

    图5A和5B示出了作为一种类型的可记录光盘的DVD-RAM盘的平面视图和物理结构。应当注意,通常是把DVD-RAM盘在一个盘盒中装载到DVD记录器,以保护盘的记录表面。但是,如果用某种其它装置保护记录表面,或可以容许一定量的表面损坏,那么可以直接把盘装载到DVD记录器中,而不用盘盒。

    DVD-RAM介质是相变记录介质。以扇区单元管理记录到盘上的数据,并且通过允许存取的地址来进行记录。如上所述,将32个扇区组成一个加入了纠错码的纠错单元。将这个单元被称为ECC块。

    图5A是表示作为一个可记录光盘的例子的DVD-RAM盘的记录区的平面图。DVD-RAM盘在其内圆周的中心有一个导入区,围绕外圆周有一个导出区,在导入区和导出区之间有一个数据区。在光学头接近盘时,把用于伺服稳定的参考信号,和使得能够标识光盘类型的介质标识信号记录在导入区中。也把相同的参考信号和介质ID记录在导出区。数据区分割成作为最小存取单元的扇区(每个扇区存储2048字节)。

    DVD-RAM盘的数据区也被分割成多个区段(zone),以便可以把称为Z-CLV(区段恒定线速度)的旋转控制方法用于记录和播放。

    图5A示出了同心地形成在DVD-RAM盘上的多个区段。在这个例子中,将DVD-RAM分割成24个区段,标为区段0到区段23。不同地设置每个区段中的DVD-RAM的旋转角速度,使得越靠近内圆周角速度越块,并且当光拾取器在相同区段中存取数据时,角速度恒定。这增大了DVD-RAM的记录密度,并且使得能够在记录和播放期间更容易地进行旋转控制。

    图5B示出了当从一个穿过盘半径的线看时,图5A中同心布置的导入区、导出区、和区段0至23。

    每个导入区和导出区包括缺陷管理区(DMA)。缺陷管理区用于记录用于指示包含缺陷的扇区位置的位置信息,和指示替换有缺陷扇区的扇区位于哪个替换区的替换扇区位置信息。

    每个区段包括一个在区段中心的用户区,和一个替换区以及一个在区段边界上的不使用区。用户区是可以由文件系统作为记录区使用的区域。替换区是替换该区段中有缺陷扇区的区域。不使用区是一个没有被用于数据记录和大约两个轨迹宽的区域。扇区地址记录到每个区段内相邻轨迹的相同位置上,但是,对于Z-CLV,将扇区地址记录到邻近区段边界的轨迹的一个不同位置上。因此,提供不使用区以防止邻近区段边界的轨迹中扇区地址检测错误。

    因此,在区段边界上存在没有被用于数据记录的扇区。因此,将逻辑扇区号(LSN)分配给DVD-RAM盘的用户区中的每个物理扇区,以仅仅从内圆周开始顺序地连续标识那些用于数据记录的扇区。

    图6A和6B示出了包括逻辑扇区的DVD-RAM盘的逻辑数据空间。逻辑数据空间称为“卷空间(volume space)”,用于记录用户数据。

    利用文件系统管理记录在卷空间中的数据。更具体地讲,把用于将一组存储数据的扇区作为一个“文件(file)”管理并且将一组文件作为一个“目录(directory)”管理的卷结构信息记录到卷区的开头和结尾。本发明的这个实施例使用ISO 13346中定义的UDF文件系统。

    上述扇区组不必连续地定位在卷空间内,可以分割成分离的部分。在构成每个文件的扇区中,它们的文件系统将卷空间中每组邻接的扇区作为一个盘区(extent)管理,并且把每个文件作为一个有关盘区的集管理。

    图7A和7B示出了记录在DVD-RAM上的一个目录和文件的结构。在根目录下是VIDEW_RT目录,在VIDEO_RT下是包含播放数据的各种对象文件,和一个包含诸如播放顺序和各种属性之类的管理信息的VIDEO管理程序文件。

    对象是符合MPEG标准的数据结构,并且包括PS_VOB,TS1_VOB,TS2_VOB,AOB,POB,和MNF(制造商专用数据)。

    PS_VOB,AOB,和POB是MPEG程序流(PS),TS1_VOB和TS2_VOB是MPEG传送流(TS)。程序流具有一种为了把AV数据存储到包介质而设计的数据结构。传送流具有一种用于通信媒体的数据结构。

    PS_VOB,TS1_VOB和TS2_VOB是初始视频数据但是包含了视频数据和音频数据的对象。原则上,TS1_VOB对象是由DVD记录器用一种显式管理内部图像结构编码的。TS2_VOB对象是外部编码到DVD记录器的,并且部分内部图像结构和数据结构是未知的。

    通常,TS1_VOB是一种通过DVD记录器将外部输入的模拟视频信号编码成传送流而得到的对象,TS2_VOB是一种通过将外部输入的数字视频信号直接记录到盘上而不用DVD记录器进一步编码而得到的对象。

    AOB和POB是MPEG程序流。AOB对象包含初始视频数据,而POB对象包含初始静止图像。

    MNF用于存储专用于特定制造商的信息。

    上面的“初始视频数据”和“初始音频数据”指示分配了一个高比特率。VOB在运动图像和类似应用中使用,AOB在音乐应用中使用。

    4.再现AV数据的概述

    图8示出了作为AV对象记录到DVD的MPEG数据的结构。

    如图8中所示,视频流和音频流被分成段,并且被多路复用。MPEG标准将多路复用的流称为系统流。在DVD的情况下,把其中设置了DVD专用信息的系统流称为VOB(视频对象(Video OBject))。把分段单元称为“数据包”或“数据分组”(pack或packet),分段单元大约2KB大小。

    根据MPEG标准编码视频流,同时用可变比特率对其进行压缩,使得复杂的图像,例如,包含大量运动的图像,比特率增大。将MPEG流中的图像编码为I-图像,P-图像,或B-图像。I-图像是空间压缩和在每个帧内完成的。P-图像和B-图像是利用帧间相关临时压缩的。在MPEG中,把包括至少一个I-图像的一系列图像称为图像组(GOP)。GOP是用于快速播放或其它专门播放模式的存取点,由于存在至少一个帧内压缩的I-图像,这是可行的。

    除了利用MPEG音频之外,可以利用AC-3,LPCM,或其它编码技术编码DVD的音频流。

    同样如图8中所示,视频对象单元(Video Object Unit)(VOBU)是将GOP的视频数据与相关的音频数据一起多路复用的数据单元。VOBU可以包括把自身取得的一段运动图像作为首部信息进行管理的信息。

    参考图8说明的系统流中包括一个程序流(PS)和一个传送流(TS)。如上所述,程序流具有用于包介质的数据结构,传送流数据结构是用于通信媒介的。

    图9示出了程序流和传送流数据结构的概念。

    程序流包含固定长度的数据包(pack),数据包是用于数据传送和多路复用的最小单元。每个数据包包含一个或更多的数据分组(packet)。数据包和数据分组都具有一个首部部分和一个数据部分。在MPEG中,把数据部分称为有效负载(payload)。为了与扇区的大小兼容,DVD中数据包的固定长度是2KB。一个数据包可以包括多个数据分组,但是,由于存储DVD视频和音频的数据包仅包含一个数据分组,因此,除了特殊情况之外,一个数据包等于一个数据分组。

    传送流的数据传送和多路复用的单元包含固定长度TS数据分组。为了与一种通信标准TAM传输兼容,TS数据分组的大小是188字节。一个或更多的TS数据分组形成一个PES数据分组。

    PES数据分组的概念对程序流和传送流是共同的,并且数据结构相同。存储在程序流数据包中的数据分组直接形成PES数据分组,并且一组一个或多个传送流TS数据分组形成一个PES数据分组。

    PES数据分组是最小编码单元,并且存储具有共同编码的视频数据和音频数据。更具体地讲,同一PES数据分组中不存在用不同编码方法编码的视频数据和音频数据。但是,如果编码方法相同,那么不需要确保图像边界和音频帧边界。如图9中所示,可以把多个帧存储在一个PES数据分组中。

    图10A至10C以及图11A和图11C示出了传送流和程序流的数据结构。

    如图10A至10C和图12A至12D中所示,每个TS数据分组包含一个TS数据分组首部,适应字段(adaptation field),和有效负载。TS数据分组首部存储了一个数据分组标识符(PID),通过数据分组标识符可以识别TS数据分组所属的视频、音频、或其它流。

    程序时钟参考(PCR)存储到适应字段。PCR是对流解码的装置的系统时钟(STC)的参考值。该装置一般根据PCR定时多路分解系统流,然后重组视频流和其它流。

    解码时间标记(DTS)和显现时间标记(Presentation Time Stamp)(PTS)存储到PES首部。DTS代表存储到PES数据分组的图像或音频帧的解码定时,而PTS代表视频或音频输出的显现定时。

    应当注意,不需要把PTS和DTS写入到每个PES数据分组的首部。在PTS和DTS写入到存储了I-图像的第一数据的PES数据分组的首部的情况下,可以解码和输出。

    图12A至12D中详细示出了TS数据分组结构。

    如图12B至12D中所示,适应字段存储了PCR和一个随机存取表示标志。这个标志指示,在视频或音频帧的开始位置的并且可以用作存取点的数据是否存储在相应的有效负载中。除了上述PID之外,TS数据分组首部也存储一个指示PES数据分组的开始的单元开始标志,和指示是否跟随着一个适应字段的适应字段控制数据。

    图11A至11C示出了程序流中的数据包的结构。数据包包含数据包首部中的SCR,和存储在数据包中的数据分组的数据分组首部的stream_id。SCR在效用上等同于传送流PCR,而stream_id等同于PID。PES数据分组数据结构也与传送流中的相同,并且PTS和DTS存储在PES的首部。

    程序流和传送流之间的一个主要差别在于,传送流允许多个节目。也就是说,就程序单元而言,程序流仅可以携带一个程序,但是传送流可以同时发送多个程序。这意味着,播放装置必须能够识别构成传送流中携带的每个程序的视频流和音频流。

    图13A和13B示出了用于发送每个程序的音频流和视频流的结构信息的PAT表和PMAP表。如图13A和13B中所示,PMAP表存储了有关每个程序中使用的视频和音频流的组合的信息,而PAT表存储了有关程序和PMAP表的信息。因此,播放装置可以参考PAT表和PMAP表,以检测要输出的程序的视频和音频流。

    下面参考图14A至14C说明上述程序流数据包和传送流TS数据分组是如何布置在盘上的。

    如图14A中所示,在一个ECC块中有32个扇区。

    如图14B中所示,形成一个程序流类型的视频对象(PS_VOB)的数据包(PS Pack)位于扇区的边界。这是由于数据包的大小和扇区的大小都是2KB。

    但是,传送流格式中的视频对象(TS1_VOB,TS2_VOB)被记录成与一个4字节的到达时间标记(ATS)组成一对的188字节的数据分组,到达时间标记(ATS)代表解码器输入时间。当记录外部编码的流时,DVD记录器产生和加入ATS,ATS指示DVD记录器从外部源接收数据分组的定时。

    5.AV数据管理信号和播放控制的概述

    图15A和15B,以及图16A和16B示出了图7A和7B中所示的视频管理信息文件(视频管理程序)的数据结构。

    视频管理信息包括,说明诸如对象记录在盘上的哪个位置之类的管理信息的对象信息,和说明对象的播放顺序的播放控制信息。

    图15示出了记录到盘的对象包括PS_VOB#1-PS_VOB#n,TS1_VOB#1-TS1_VOB#n,和TS2_VOB#1-TS2_VOB#n的例子。

    如图15A和15B中所示,根据对象类型分开记录了一个PS_VOB信息表,一个TS1_VOB信息表,和一个TS2_VOB信息表。这些表中的每一个存储了每个对象的VOB信息。

    VOB信息包括有关相应对象的一般信息,对象属性数据,用于将对象播放时间变换成一个盘地址值的存取映射表,和用于存取映射表的管理信息。一般信息包括相应对象的标识信息和对象记录时间。属性包括视频流编码模式之类的视频流属性(V_ATR),音频流的数量(AST_Ns),和如音频流编码模式之类的音频流属性(A_ATR)。

    有两个为什么需要存取映射表的原因。第一个原因是,这样就使程序链信息(定义播放路径的播放路径信息)可以避免直接根据扇区地址值参考对象记录位置,而是,例如,可以根据对象播放时间间接参考对象位置。例如,作为编辑对象的结果,对象记录位置可以随RAM介质改变。如果程序链信息直接根据扇区地址参考对象记录位置,那么这增大的必须更新的程序链信息的量。但是,如果间接地根据播放时间参考对象,那么就不需要更新程序链信息,而是仅需要更新存取映射表。

    第二个原因是,音频流一般具有两个参考基准,时间基准和数据(比特流)基准,但是,二者之间的相关性是不完美的。

    例如,对于MPEG-2 Video,一种视频流编码国际标准,使用可变比特率(一种根据图像的复杂性改变比特率的方法)是正常的。在这种情况下,从流开始的数据量与播放时间之间没有比例关系,并且基于时间基准的随机存取是不可能的。使用存取映射表,通过时间基准与数据(比特流)基准之间的变换,解决了这一问题。

    如图15A中所示,播放控制信息包括用户定义的程序链信息表,原始程序链信息表,和标题搜索指针。

    如图16A中所示,存在两种类型的程序链信息:由DVD记录器自动产生以说明对象记录期间记录的所有对象的原始定义程序链信息,和使用户能够自由定义一个特定播放顺序的用户定义程序链信息。程序链信息被统称为有关DVD的PGC信息,用户定义程序链信息称为U_PGC信息,而原始程序链信息称为O_PGC信息。U_PGC信息和O_PGC信息是列出了说明对象播放周期中的单元的单元信息的表。把O_PGC信息指示的对象播放周期称为原始单元(O_CELL),而把U_PGC信息指示的对象播放周期称为用户单元(U_CELL)。

    一个单元利用对象播放开始时间和播放结束时间指示对象播放周期;通过上述存取映射表,将播放开始时间和结束时间变换成记录到盘上的对象的实际位置。

    如图16B中所示,PGC信息指示的单元组定义了根据表中项目的次序顺序再现的连续播放顺序。

    图17示出了对象、单元、PGC、和存取映射表之间的特殊关系。

    如图17中所示,原始PGC信息50包含至少一个单元信息60,61,62,63。

    每个单元信息60,61,...定义了要再现的对象,以及对象类型和对象播放周期。PGC信息50中的单元信息次序定义了在再现对象时由每个单元定义的对象的播放顺序。

    每个单元信息(例如,单元信息60)包括一个指示特定对象的类型的Type 60a,标识一个特定对象的Object ID 60b,和对象中基于时间基准的开始显现时间Start_PTM 60c和结束显现时间Eed_PTM 60d。

    在数据播放期间,从PGC信息50顺序读出单元信息60,并且把每个单元指定的对象再现由该单元定义的播放周期。

    存取映射表80c将包含在单元信息中的开始和结束时间变换成盘上的对象地址。

    这个存取映射表是上述映射表信息,并且是在记录对象时产生和记录的。为了产生映射表,必须分析对象数据的图像结构。更具体地讲,需要检测图9中所示的I-图像位置,和检测PTS和其它时间标记数据,即,图10和图11中所示的I-图像播放时间。

    下面说明在产生PS_VOB,TS1_VOB,和TS2_VOB映射表信息时发生的问题。

    如参考图1说明的,PS_VOB和TS1_VOB最初是通过DVD记录器把接收的模拟广播编码成MPEG流产生的。因此,I-图像和时间标记数据是由DVD记录器产生的,流的内部数据结构对于DVD记录器来说是已知的,并且可以毫无问题地产生映射表信息。

    同样如参考图1说明的那样,TS2_VOB是一个由DVD记录器没有经过中间编码直接记录到盘上的接收数字广播。由于记录器不像记录PS_VOB时那样产生时间标志信息和确定I-图像位置,DVD记录器不知道流的内部数据结构,因此,必须从记录的数字流检测这个信息。

    为此,DVD记录器如下面说明的那样,针对将外部编码的流记录到记录器的TS2_VOB的映射表信息来检测I-图像和时间标记信息。

    首先,通过检测图12中所示的TS数据分组适应字段的随机存取指示信息(random_access_indicator),或检测TS数据分组首部中的单元开始指示信息(payload_unit_start_indicator),而检测I-图像。通过检测首部中的来检测时间标记。应当注意,可以使用PCR从适应字段或TS数据分组到达DVD记录器的时间取代PTS作为时间标记。在任何情况下,DVD记录器根据一个高级系统层中的信息来检测I-图像位置,并且不需要分析MPEG流视频层的数据结构。这是由于为了产生映射表信息而分析视频层所需的系统额外开销很大。

    也存在着不可能检测系统层的情况。在这种情况下,不可能产生映射表信息,因此需要指出没有有效映射表信息。DVD记录器利用图15(b)中所示的映射表管理信息指出这种情况。

    图15(b)中所示的映射表管理信息包含映射表有效性信息,和自编码标志。自编码标志指示一个对象已经由DVD记录器编码,因此指出内部图像结构是已知的,以及映射表信息时间标记信息和I-图像位置信息是准确的。映射表有效性信息指示是否存在一个有效的存取映射表。

    系统层不能被检测时的例子包括:当没有设置适应字段时,和当数字流不是一个MPEG传送流时。世界各地使用各种不同的数字广播标准和格式,自然会有DVD记录器记录了不能为其产生映射表的对象的情况。例如,如果在美国使用为日本市场设计的并且在日本记录数字广播的DVD记录器在美国记录数字广播,则会产生DVD记录器不能为记录对象产生映射表的情况。

    但是,DVD记录器可以从不能为其产生映射表信息的开始对象顺序再现。在这种情况下,来自记录的数字流的视频可以通过把它经过一个数字接口输出到一个适合于流的STB来再现。

    6.播放功能的基本操作

    以下参考图18说明用于再现记录到上述光盘的内容的DVD记录器/播放器的播放操作。

    如图18中所示,DVD播放器具有一个用于从光盘100读出数据的光拾取器201,一个用于对读出数据进行纠错处理的ECC处理器202,一个用于在纠错之后临时存储读出数据的轨迹缓存器203,一个用于再现视频对象(PS_VOB)和其它程序流的PS解码器205,一个用于再现数字广播对象(TS2_VOB)和其它传送流的TS解码器206,一个用于再现音频对象(AOB)的音频解码器207,一个用于解码静止图像对象(POB)的静止图像解码器208,一个用于改变输入到解码器205至208的数据的开关装置210,和一个用于控制播放器的各个部分的控制器211。

    光拾取器201读出记录到光盘100的数据,传送到ECC处理器202,并且存储到轨迹缓存器203。然后,把存储到轨迹缓存器203的数据输入到PS解码器205、TS解码器206、音频解码器207、或静止图像解码器208,并且通过它们解码和输出。

    控制器211根据由图16A和16B中所示的程序链信息(PGC)定义的播放顺序来确定读出什么数据。利用图16A和16B中所示的例子,控制器211首先再现VOB#1的部分(CELL#1),然后是VOB#3的部分(CELL#2),最后是VOB#2(CELL#3)。

    利用图17中所示的程序链信息(PGC)的单元信息,控制器211也可以捕获再现单元的类型,相应的对象,和对象的播放开始和结束时间。控制器211把从单元信息识别的对象周期的数据输入到适当的解码器。

    控制器211还根据单元信息的Object ID识别要再现的对象。控制器211还通过参考相应VOB信息的存取映射表将单元信息的Start_PTM和Een_TPM变换成盘存取地址值,标识识别出的对象的播放周期的单元。

    根据本发明的这个实施例的一个播放器还具有用于向外部装置提供AV流的数字接口204。因此可以通过IEEE 1394,IEC 958,或其它通信装置向外部装置提供AV流。从而能够,例如,当播放器没有用于对没有被记录器/播放器编码的TS2_VOB解码的内部解码器时,可以把TS2_VOB通过数字接口204不加解码地直接输出到一个外部STB,以经过STB解码和显现。

    当把数字数据直接输出到一个外部装置时,控制器211根据图15(b)中所示的映射表信息确定是否可以随机存取播放。如果存取点数据标志(随机存取显现标志)是有效的,那么存取映射表包含I-图像位置信息。在这种情况下,控制器211可以响应来自外部装置的快放和其它请求,存取包含I-图像的数字数据,并且经过数字接口输出。此外,如果时间存取信息标志是有效的,也可以执行时基存取。这种情况下,控制器211可以响应来自外部装置的时基存取请求,存取包括在特定播放时间的图像数据的数字数据,并且通过数字接口输出到外部装置。

    7.记录功能的基本操作

    以下参考图19说明根据本发明的用于记录和再现上述光盘的DVD记录器的配置和操作。

    如图19中所示,DVD记录器具有一个用于接收用户请求和对用户显示信息和提示的用户界面222,一个用于操作DVD记录器的整体管理和控制的系统控制器212,一个用于接收VHF和UHF广播的模拟广播调谐器213,一个用于把模拟信号变换成数字信号并且将数字信号编码成MPEG程序流的编码器214,一个用于接收数字卫星广播的数字广播调谐器215,一个用于解释从数字卫星发送的MPEG传送流的分析器216,一个电视接收机和扬声器之类的显现单元217,和一个用于解码AV流的解码器218。例如,如图18中所示,解码器218具有第一和第二解码器。DVD记录器还具有一个数字接口219,用于临时存储写入数据的轨迹缓存器220,一个用于把数据写入到盘中的驱动器221,和一个变换器223。数字接口219是用于把数据输出到外部装置的IEEE 1394或其它通信接口。变换器223根据图37所示的并且在以后要进一步说明的流程,把传送流变换成程序流。

    利用如此构造的DVD记录器,用户接口222首先接收来自用户的请求。然后,用户接口222将请求传送到系统控制器212,系统控制器212解释用户请求,并且指令各种不同模块运行适当的处理。

    记录包括DVD记录器对输入的数字数据编码的自编码,和用于将已编码的数字数据记录到盘上而不进一步编码的外编码。

    7.1.通过自编码记录

    首先,下面以将模拟广播编码并记录到PS_VOB流为例,说明通过自编码记录。

    系统控制器212将接收命令发送到模拟广播调谐器213,和将编码命令发送到编码器214。

    然后,编码器214对来自模拟调谐器213的AV数据进行视频编码、音频编码、和系统编码,并且把编码的数据传送到轨迹缓存器220。

    紧接着编码开始之后,编码器214把在编码的MPEG程序流的开始的时间标记数据作为播放开始时间(PS_VOB_V_S_PTM)发送到系统控制器212,并且并行于编码处理,将建立存取映射表所需的数据发送到系统控制器212。把这个值设定为图17所示的单元信息的Start_PTM,并随后产生之。时间标记信息一般是PTS,但是,也可以用SCR取代。

    然后,系统控制器212将记录命令发送到驱动器221,因此,驱动器221提取累积在轨迹缓存器220中的数据,并记录到DVD-RAM盘100。还在盘的可记录区中搜索一个如上所述的邻接数据区(CDA),并且把数据记录到定位的邻接数据区。

    记录一般在用户输入停止记录命令时结束。来自用户的停止命令通过用户接口222输入到系统控制器212,然后,系统控制器212把停止命令发送到模拟广播调谐器213和编码器214。

    编码器214在它接收到来自系统控制器212的停止编码命令时停止,并且把最后编码的MPEG程序流中将最后数据的时间标记数据作为播放结束时间(PS_VOB_V_E_PTM)发送到系统控制器212。把这个值设置为图17中所示的单元信息的End_PTM。一般把PTS用作时间标记信息,但是也可以用SCR代替。

    在结束编码处理之后,系统控制器212产生播放控制信息和图15中所示的PS_VOB的VOB信息(PS_OVBI)。

    这里产生的VOB信息包括映射表管理信息和适合于对象类型的存取映射表。系统控制器212把映射表管理信息的映射表有效性信息设置为“有效”,并将自编码标志设置为ON。

    把其中要记录的对象是播放对象之一的原始播放信息(O_PGC信息,见图16A和16B)作为播放控制信息产生。把O_PGC信息添加到原始程序链信息表。原始程序链信息(O_PGC信息)包含单元信息。把单元信息类型(Type)设置为PS_VOB。

    然后,系统控制器212指令驱动器221停止记录累积在轨迹缓存器220中的数据,和停止记录PS_VOB的VOB信息(PS_VOB)并播放控制信息。因此,驱动器221把这个信息和轨迹缓存器220中剩余数据记录到光盘100,记录处理结束。

    很显然,可以把模拟广播编码成TS1_VOB。在这种情况下,编码器214必须是一个用于把模拟信息变换成数字信号和把数字信息编码成MPEG传送流,并且把单元信息中的类型信息设置到TS1_VOB的编码器。可以把PTS或PCR用作Start_PTM和End_PTM。

    7.2.通过外部编码记录

    以下参考记录数字广播来说明通过外部编码记录。在这种情况下,记录对象类型是TS2_VOB。

    将一个来自用户的数字广播记录请求从用户接口222发送到系统控制器212。然后,系统控制器212指令数字广播调谐器215接收,并指令分析器216分析接收的数据。

    将从数字广播调谐器215发送的MPEG传送流通过分析器216传送到轨迹缓存器220。

    为了产生作为数字广播接收的编码MPEG传送流(TS2_VOB)的VOB信息(TS2_VOB1),分析器216首先提取在传送流的开始的时间标记数据作为开始时间信息(TS2_VOB_V_S_PTM),并把它发送到系统控制器212。把这个开始时间值设置为图17中所示的单元信息的Start_PTM,并稍后产生之。时间标记信息是PCR或PTS。作为替代,可以使用把对象发送到DVD记录器的定时。

    然后,分析器216分析MPEG传送流的系统层,以检测存取映射表产生所需的信息。根据上述TS数据分组首部的适应字段中的随机存取指示器(random_access_indicator),或TS数据分组首部中的单元开始指示信息(payload_unit_start_indicator)来检测对象中的I-图像位置。

    接下来,系统控制器212将记录命令输出到驱动器221,驱动器221提取累积在轨迹缓存器220中的数据并将其记录到DVD-RAM盘100。系统控制器212也根据文件系统分配数据,指令驱动器221在盘上的何处进行记录。还在盘的可记录区中搜索如上所述的邻接数据区(CDA),并把数据记录到定位的邻接数据区。

    记录一般在用户输入停止记录命令时结束。来自用户的停止记录命令通过用户接口222输入到系统控制器212,然后,系统控制器212将停止命令发送到数字广播调谐器215和分析器216。

    响应从系统控制器212接收的停止命令,分析器216停止分析接收的数据,并且在最后分析的MPEG-TS的结尾将时间标记数据作为播放结束时间(TS_VOB_V_E_PTM)发送到系统控制器212。把这个值设置为图17中所示单元信息的End_PTM。将PER或PTS用作时间标记信息,但是,可以使用对象被发送到DVD记录器的定时作为替代。

    在结束数字广播接收处理之后,系统控制器212根据从分析器216接收的信息,产生播放控制信息和用于图15中所示的TS2_VOB的VOB信息。

    这里产生的VOB信息包括映射表管理信息和适合于对象类型的存取映射表。当在对象中检测到I-图像位置并且可以产生存取映射表时,系统控制器212把映射表管理信息的映射表有效性信息设置为“有效”。将自编码标志设置到OFF。当不能产生一个有效存取映射表时,将映射表有效性信息设置到“无效”状态。当不能产生有效存取映射表时的例子包括,当没有接收到一个相应的数字广播时,和当没有设置在适应字段中的随机存取信息时。当信号是直接通过数字接口输入的时候,信号也可能不是一个MPEG传送流,并且在这种情况下,也把映射表有效性标志设置到“无效”。

    产生作为播放对象之一的记录对象的,如图16A和16B所示的原始播放信息(O_PGC信息)作为播放控制信息。把这个O_PGC信息添加到原始程序链信息表。原始程序链信息(O_PGC信息)包含其类型信息被设置到“TS2_VOB”的单元信息。

    然后,系统控制器212指令驱动器221停止记录累积在轨迹缓存器220中的数据,和记录TS2_VOB的VOB信息(TS2_VOB1),并播放控制信息。因此,驱动器221把这个信息和轨迹缓存器220中剩余的数据记录到光盘100,并结束记录处理。

    尽管上述记录操作是参考用户输入的记录开始和结束命令说明的,但是显然,实质相同的操作适用于,例如,在VCR中使用的定时器记录。在这种情况下,不是用户而是系统控制器自动地发布记录开始和结束命令,并且DVD记录器操作中没有实质的变化。

    8.本发明的主概念

    根据本发明的数据记录介质是一种用于记录包括模拟广播或数字广播内容和通过模拟/数字接口输入的各种不同类型的数据的各种不同格式的数据的介质。根据本发明的数据记录装置是一种用于将AV数据记录到上述数据记录介质的装置。

    更具体地讲,将外部输入的AV数据作为MPEG-TS记录,并且将把每个MPEG-TS数据分组的解码器输入时间信息(时间标记信息)添加到每个MPEG-TS数据分组的流记录到本发明的数据记录介质。将添加到MPEG-TS数据分组的时间标记信息与添加到变换后的MPEG-PS数据包的时间标记信息根据特定的关系相关。

    图20示出了一个MPEG传送流(MPEG-TS),和MPEG-TS到MPEG程序流的变换。如图所示,MPEG-TS包含一个包含MPEG-TS控制信息的PSI(程序专用信息)数据分组,将记录器专用和内容专用信息放置在一个专用流(Tip数据分组)中,并且以一种适合于累加的格式记录每个数据分组的解码器输入时间(ATS)。

    为了比较容易地从多路复用的MPEG-TS变换到MPEG-PS,将特定数量(一个或多个)的MPEG-TS数据分组系统编码到一个用于多路复用的连续单元(多路复用单元),作为一个MPEG-TS记录。确定一个多路复用单元,使得一个多路复用单元的数据量对应于一个MPEG-PS数据包的数据量。引入这种多路复用单元概念使得能够通过简单地将多路复用单元中的MPEG-TS数据分组变换成MPEG-PS视频数据包或音频数据包,而简单地将MPEG-TS变换成MPEG-PS,因此,MPEG-TS可以很容易地变换到MPEG-PS。

    9.实施例的详细说明

    9.1.编码器配置

    下面以输入的自编码AV到MPEG-TS为例,说明根据本发明的数据记录装置的编码器。

    图21示出了根据本发明的数据记录装置中的编码器的配置。编码器接收视频、音频、和垂直消隐间隔(VBI)信号,以把它们编码成一个传送流。

    编码器操作模式包括,DVD-Video兼容模式,DVD视频记录兼容模式,和正常模式。当在DVD-Video兼容模式时,编码器产生一个可以容易地通过下面要进一步描述的方法变换到DVD-Video标准的MPEG-TS,当在DVD视频记录兼容模式时,产生一个可以容易地通过下面要进一步说明的方法变换到DVD视频记录(以下记为“DVD VR”)标准的MPEG-TS,当在正常模式时,产生一个具有特定属性的MPEG-TS。当以正常模式记录时,使用不是由DVD标准定义的那些音频编码方法是可以接受的,并且视频编码方法中的公差值(例如,GOP长度)可以超出DVD标准定义的值的范围。

    9.2.自编码的MPEG-TS

    以下说明由根据本发明的数据记录装置自编码的PMEG-TS格式的一个优选实施例,特别是要说明正常MPEG-TS(下面记为“SESF”)与可以容易地变换成MPEG-PS的MPEG-TS(以下称为“约束(Constrained)SESF”)之间的差别。

    在下面说明的实施例中,每个MPEG-TS流把说明流的编码条件的信息存储在一个存储属性信息的VOBI中。因此,通过把说明编码条件的信息存储在管理信息中,也就是说,流之外,可以快速地确定是否可以把流容易地变换到DVD-Video或DVD VR格式,而不用分析该流。这个有关流编码条件的信息可以存储到Tip数据分组(下面说明)。

    这些流编码条件存储在一个2-比特的“encode_condition”标志中。该标志的值如下定义。

    00b:正常MPEG-TS(SESF)

    01b:可以容易地变换成DVD VR格式的流的MPEG-TS(约束SESF)

    10b:保留的

    11b:可容易地变换成DVD-Video格式的流的MPEG-TS(约束SESF)

    因此,通过读出如上所述设置的VOBI的encode_condition字段,可以容易地确定一个流是否可以容易地变换到DVD-Video或DVD VR流格式。应当注意,这里使用的“容易地变换”是指可以通过下面描述的方法变换。

    9.3.约束SESF流格式

    图55A中示出了约束SESF传送流的流格式。约束SESF包含多个SESF包封。SESF包封以一个Tip数据分组(下面详细说明)开始,并且包含规定数量的多路复用单元。每个SESF包封的显现时间标记(PTS)和Tip数据分组地址信息通过一个地址映射表相关。如从下面可以清楚地了解的,在TS2PS变换中,对每个SESF包封执行变换处理。

    图20示出了一个SESF包封中的每个数据分组与MPEG-PS数据包之间的相关性。如图20中所示,一个存储有关流的特定信息的TS数据分组(以下称为Tip数据分组)插入到一个约束SESF中。下面参考图23至图29A和29B说明嵌入到约束SESF中的Tip数据分组。

    <Tip数据分组>

    图23示出了一个Tip数据分组的完整结构。如在此所示,每个Tip数据分组存储一个将这个数据分组标识为一个Tip数据分组的Data_ID,对应于DVD_VR的DCI_CCI字段并且包含显示控制和复制控制信息的display_and_copy_info,存储流编码信息的encode_info,和存储专用于制造商并且由制造商加入的数据的MakersPrivateData。

    如图23和图24中所示,将以下要进一步说明的SCR计算所需的PCR值写入到Tip数据分组的适应字段。该适应字段为固定字节长度,从而能够利用一个固定地址存取Tip数据分组中的各种信息。

    图25示出了Data_ID字段结构。Data_ID字段包含用于将数据分组标识为一个Tip数据分组的Data_Identifier。这个Data_Identifier是一个存储以ASCII码代表“TIP”的值“0x544950”的3字节字段。播放驱动器的解码器可以通过读出这个字段的值识别Tip数据分组。

    图26示出了display_and_copy_info字段的结构。通过把与RDI单元的DVD VR标准的DCI_CCI字段相同的结构和信息写入到这个display_and_copy_info字段,可以便于在把约束SESF变换到DVD VR格式时产生RDI数据包。(注意,有关DVD VR标准的DCI_CCI字段的详细说明,可以在“可重写/可重记录盘的DVD规格,第3部分,视频记录(DVD Specification for Rewritable/Rerecordable Disc,Part 3,VideoRecording)”和日本专利3162044中找到。尽管在这些文献中的一些字段名不同,但是字段的定义是相同的,从而能够直接变换到DVD VR格式。)

    图27示出了encode_info字段的结构。video_resolution字段存储Tip数据分组之后的视频流的清晰度。这个encode_info字段的值如下定义。

    0000b:720×480(NTSC),720×576(PAL)

    0001b:704×480(NTSC),704×576(PAL)

    0010b:352×480(NTSC),352×576(PAL)

    0011b:352×240(NTSC),352×288(PAL)

    0100b:544×480(NTSC),544×576(PAL)

    0101b:480×480(NTSC),480×576(PAL)

    其它:保留

    DVD VR格式允许在一个单一的连续记录中改变清晰度。在分离的VOB中管理不同清晰度的流,并且在记录器播放过程中保证了无缝流连接。当清晰度在约束SESF记录期间改变时,使用这个video_resolution字段识别在变换到DVD VR格式时VOB必须改变的点。

    在为便于向DVD_Video格式变换而记录的约束SESF(encode_condition=11b)中,不允许改变流内的清晰度。

    encode_condition字段存储VOBI中存储的相同信息。为什么不仅要把这个信息存储在流管理信息中而且也要嵌入到流中的原因在于,即使流是通过诸如IEEE 1394之类的数字接口复制该流,接收该流的记录器也能容易地确定是否可以通过简单地确认Tip数据分组中的这个encode_condition字段的值,容易地把流变换到一种DVD格式。记录器能够至少确定接收的流中的一个Tip数据分组与下一个Tip数据分组之间的基本流(即,SESF包封)的编码条件。

    来自DVD VR标准的VOBU_S_PTM记录到FVFPST字段。这是要消除在把约束SESF变换到DVD-Video或DVD VR格式时分析Tip数据分组之后的编码视频流以计算首先显现的视频字段的播放时间的需要。

    FVFPST字段包含一个代表具有90kHz精度的视频字段显现时间的32位字段,和一个不能用32位字段表达的代表具有27MHz精度的播放时间的16位字段。

    图28示出了MakersPrivateData。如图28中所示,MakerPrivateData包含一个标识产生约束SESF的制造商的maker_ID字段,和一个包含制造商添加的其它特定信息的maker_private_data字段。

    图29A和29B示出了代表Tip数据分组PID和流类型的示例stream_type值。由于PID和stream_type值都是被MPEG和其它标准保留的,因此要选择使用的值,以便不会干扰这些保留值,和代表MPEG标准以外的专用数据。

    因此,应当知道,各种流属性被提取并存储到存储在约束SESF的Tip数据分组中。下面要进一步详细说明如何在变换到DVD格式的过程中使用上述字段。

    9.4.系统编码条件

    以下详细说明约束SESF的系统编码条件。应当注意,以下的系统编码条件不能应用到encode_condition字段既不能设置到“01b”也不能设置到“11b”的SESF,也就是说,不是约束SESF的SESF。

    <多路复用单元>

    存储约束SESF的基本流的每个TS数据分组具有一个用于根据一种DVD格式存储在2-KB数据包中的数据的多路复用的单元(多路复用单元)。

    参考图57A和57B详细说明引入多路复用单元的概念的原因。图57A描述了将一个非约束格式中的MPEG-TS变换到MPEG-PS。为了将MPEG-TS变换到MPEG-PS,必须改变作为MPEG-TS的多路复用单元的TS数据分组(视频数据分组和音频数据分组)的多路复用次序,以便使MPEG-PS中的每个数据包仅包含一种类型的数据。这是由于作为多路复用单元的TS数据分组(188字节)小于作为MPEG-PS多路复用单元的数据分组(2KB)。更具体地讲,必须从MPEG-TS仅收集视频数据分组并填充到MPEG-PS视频数据包(V_PCK),和从MPEG-TS仅收集音频数据分组并填充到MPEG-PS音频数据包(A_PCK)。如图57(a)中所示,在变换的MPEG-PS中,MPEG-TS中的存储音频数据的音频数据分组(A数据分组)的多路复用顺序被改变,并且被存储在流尾部的音频数据包A_PCK#1中。

    图57(b)描述了约束格式MPEG-TS向MPEG-PS的变换。在这种约束格式中,把十一个连续的TS数据分组作为一个多路复用单元管理。要适当地确定存储一个多路复用单元中的总数据量,以便不超过一个数据包中存储的数据量。应当注意,这里所指的数据量(或数据大小)不包括数据包或数据分组首部信息,仅意味着视频或音频数据。此外,作为一个多路复用单元管理的十一个连续TS数据分组都存储相同类型的数据,视频或音频。

    因此,很显然,通过引入如上所述的多路复用单元,当把约束格式MPEG-TS变换到MPEG-PS时,不必改变作为MPEG-TS多路复用单元的TS数据分组的多路复用的顺序。

    如图20中所示,存储在一个多路复用单元中的所有TS数据分组仅存储一种类型的基本流,并且不把存储不同类型的基本流的TS数据分组存储在一个单一的多路复用单元中。还应当注意,可能需要将一个多路复用单元(例如,存储流的最后部分的多路复用单元)也存储一个空数据分组,因此,不禁止把一个空数据分组混在一个多路复用单元中。也需要包括一个空数据分组来阐明多路复用单元与数据包之间的关系。

    因此,一个多路复用单元包含11个连续的TS数据分组,并且每个多路复用单元中的基本流(有效负载数据)完全存储到一个相应的数据包中。这同样地约束了数据包关系。

    存储PES数据分组首部的TS数据分组是一个多路复用单元中的第一个TS数据分组。这使得数据包的数据分组首部(在MPEG-TS中称为PES数据分组首部)与约束SESF中的PES数据分组首部相关,并且使得能够容易地将连续的TS数据分组顺序地变换。

    当在多个多路复用单元之间分割存储视频流的PES数据分组时,不是包含PES数据分组的最后字节的多路复用单元的所有多路复用单元存储TS数据分组有效负载数据的2024字节(=184×11)。这使得能够最有效地传送流,和使得在TS2PS变换过程逐TS数据分组单元地顺序处理能够比较容易。如果允许不是最后的多路复用单元的多路复用单元包含2024以下的字节,那么将不可能在RS2PS变换过程中变换多路复用单元中的第一TS数据分组时,确定存储到每个在空中的(on-the-fly)MPEG-PS数据包的数据分组首部的PES_packet_ength字段的值。

    存储音频流的PES数据分组在一个多路复用单元中的第一TS数据分组开始,并且在这个多路复用的单元内结束。这很容易理解,如果要存储一个PES数据分组,那么就要考虑将一个音频流存储到多个多路复用单元。如果在多个多路复用单元之间分割一个音频PES数据分组,那么当把第二和后续多路复用单元变换到MPEG-PS数据包时,由于必须确定PTS或必须确定一个数据包中的音频帧的数量以便产生数据分组首部,所以需要分析音频流的内部结构。

    因此,如上所述定义多路复用单元。一个产生约束SESF的编码器带着上述多路复用单元的约束执行系统编码。

    9.5.有关约束SESF中的PES数据分组首部的约束

    以下说明有关约束SESF中的PES数据分组首部的字段值的一些约束。

    如图30中所示,一些PES数据分组首部字段仅允许有固定值。这是为了防止在变换到DVD格式过程需要不必要的处理。这里使用的“不必要的处理”是指处理由与DVD格式定义的值不同的值加入或删除的字段。也就是说,这些对PES数据分组首部的约束的目的是使TS2PS变换过程中加入到首部或从首部删除的字段最少。

    应当注意,在存储MPEG-TS视频的PES数据分组中,可以把PES_packet_length字段设置到0。因此,在TS2PS变换过程中,必须从存储到数据包的数据分组首部长度和有效负载数据的字节长度计算存储到PES_packet_length字段的值。

    PTS_DTS_flag字段代表是定义PTS还是定义DTS。约束SESF中的PTS_DTS_flag字段值是根据以下规则设置的。

    如果PES数据分组存储一个视频流,那么在以下条件下将PTS_DTS_flag到11b:

    1)一个帧编码的I-图像存储到PES数据分组;

    2)一个帧编码的P-图像存储到PES数据分组;

    3)一对字段编码的I-图像存储到PES数据分组;

    4)一对字段编码的P-图像存储到PES数据分组;或

    5)在PES数据分组中一个字段编码的I-图像后面跟随着一个字段编码的P-图像。

    如果PES数据分组存储了一个音频流,那么一个或更多的音频帧总是在PES数据分组中开始,并且把PTS_DTS_flag设置到10b(如果定义了DTS,那么设置到11b)。

    约束也应用到PES_extension_fllag和PES_header_data_length字段,以便在TS2PS变换过程中能够逐TS数据分组单元地顺序处理。图31中示出了这些约束。

    如图31中所示,字段值是根据基本流的类型、PES数据分组位置、和encode_condition值定义的。

    图31中的V1是PES数据分组中PTS字段和DTS字段的字节长度的和。即:

    如果PTS_DTS_flag=00b,那么V1=0;

    如果PTS_DTS_flag=10b,那么V1=4;

    如果PTS_DTS_flag=11b,那么V1=10;

    这种约束是必须的,以便当变换到DVD-Video或DVD VR时能够逐TS数据分组地顺序处理,而不用如同前面所述的那样,在确定了每个数据包的有效负载长度之后编译数据包。

    因此,如上所述地定义PES数据分组首部。产生约束SESF的编码器带有上述约束地执行系统编码。

    9.6.有关Tip数据分组插入间隔的约束

    以下说明有关插入到约束SESF的Tip数据分组的插入间隔的约束。

    由Tip数据分组ATS(ATS1)代表的解码器输入时间,和由存储Tip数据分组之后首先输入到解码器的视频或音频流的Tip数据分组的ATS(ATS2)指示的解码器输入时间必须有如下关系:

    ATS1+T<=ATS2

    其中T是一个PS数据包的最小传送时间。这个最小传送时间T是从输入到解码器的PS数据包的开始到结束的最短时间。也就是说,上面的等式显示了,每个TS数据分组的ATS间隔必须大于至少使变换的PS数据包能够输入到系统解码器的间隔。从下面的公式可以得到T。

    T=(PS_pack_size*8*system_clock_frequency)/PSratePS_pack_size是TS2PS变换产生的一个MPEG-PS数据包的字节长度,system_clock_frequency是MPEG-PS解码器参考时钟的频率,PSrate是由TS2PS变换产生的MPEG-PS的多路复用率。

    PS_pack_size,system_clock_frequency,和PSrate进一步由DVD格式定义如下:

    PS_pack_size=2048字节;

    System_clock_frequency=27,000,000Hz;

    PSrate=10,080,000比特/秒。

    因此,ATS1和ATS2之间的关系是:

    ATS1+43885.714…<=ATS2

    因此,ATS1+43886=ATS2是ATS2的最小值。

    更具体地讲,下述的TS2PS变换将一个Tip数据分组变换成一个2KBNV_PCK(当变换到DVD-Video时),或RDI_PCK(当变换到DVD VR时),并且,如果没有满足上述等式,那么下一个基本流的传送开始得更快,并且可能超过10.08Mbps的DVD系统传输率。

    应当注意,通过保证每个Tip数据分组之前和之后的AV数据传输之间的上述间隔,可以取得相同的效果,并且本发明并不限于插入一个只有在Tip数据分组传送之后,才传送AV数据的周期。

    在两个连续Tip数据分组之间(即,在一个SESF包封中)排列整数个GOP。这样使得从一个Tip数据分组到紧接着下一个Tip数据分组(即,SESF包封)之前的TS数据分组的数据对应于DVD格式的VOBU,从而也在一个约束SESF中取得了DVD格式的VOBU的概念。DVD格式的VOBU(例如,DVD VR)必须包含整数个GOP。

    从一个Tip数据分组到下一个Tip数据分组的基于播放时间的时间必须是等于或大于0.4秒,和等于或小于1.0秒。如果encode_condition=11b(DVD_Video或DVD VR模式),那么用于播放紧接着最后Tip数据分组之后的数据的播放时间必须是等于或大于0.4秒和等于或小于1.2秒,如果encode_condition=01b(DVD VR模式),那么等于或小于1.0秒。这是由于一个Tip数据分组意味着一个VOBU的开始并且符合每个DVD格式。

    时间-地址变换的存取映射表唯一地(1∶1)指向每个Tip数据分组。这使得变换能够在TS2PS变换期间以DVD格式立即逐VOBU单元地开始。

    应当注意,存取映射表并不需要指向每个Tip数据分组。例如,由于在一个约束SESF中,紧跟在最后一个Tip数据分组之后的AV数据与其它Tip数据分组不同,例如,不同的播放时间,后面没有下一个Tip数据分组,等等,因而要被与其它Tip数据分组不同地处理。因此,不将最后Tip数据分组寄存在存取映射表中不会对播放或变换造成任何问题,并且,因此可以考虑对记录器的硬件配置作为一种例外处理。由于有关存取映射表的大小限制之类的外部因素,使得存取映射表也可能不指向每个Tip数据分组。

    因此,如上所述定义有关Tip数据分组插入间隔的约束。产生约束SESF的编码器在上述约束内执行系统编码。

    9.7.有关解码器控制的约束

    以下说明有关约束SESF解码器控制的约束,特别是缓存器管理的约束。

    在MPEG-TS中,必须产生约束SESF,以满足由标准解码器模型T_STD定义的标准。这使得,例如,具有符合T_STD的解码器的STB在流类型兼容的情况下能够对约束SESF解码。

    MPEG-TS标准解码器模型T_STD和MPEG_PS标准解码器模型P_STD在操作和处理能力上基本上相同,但是,在对解码器输入音频流的速率上不同。更具体地讲,参考图18,除了AAC(高级音频编码)之外,在T_STD中,从音频解码器之前的传送缓存器到音频缓存器的传送速率是固定的2Mbp。但是,P_STD可以用系统速率向解码器输入每个流,DVD的系统速率是10.08Mbp。

    这意味着,不能把同样的缓存器管理用于约束SESF和DVD格式。

    尽管一般不能把同样的缓存器管理用于约束SESF和DVD格式,但是,如果可以利用赋予每个TS数据分组的ATS计算代表变换数据包的解码器输入开始时间的SCR(系统时钟参考),那么,当把一个约束SESF变换到DVD格式而不重复系统编码处理时,可以取得极快而简单的变换。下面进一步详细说明利用ATS计算SCR。

    根据本发明的约束SESF必须预编码,以便它能够符合T_STD,并且使得下述变换处理产生的MPEG-PS能够符合P_STD。

    也就是说,约束SESF是一个编码到MPEG-TS的流,以便使它在通过下述处理变换到MPEG-PS时,也能够符合P_STD。

    以上说明了有关一个约束SESF的缓存管理的约束。应当注意,只需简单地对SESF编码以符合T_STD,而不用注意上述约束。

    以下说明不符合T_STD和P_STD模型的MPEG-TS和MPEG-PS的例子。

    首先参考图32,说明一个自编码以便能够变换到MPEG-PS,但是不符合T_STD模型的MPEG-TS。

    流TS1是一个根据T_STD模型系统编码的MPEG传送流。流TS2是一个不符合T_STD模型的MPEG传送流。

    更具体地讲,将流TS2中ATS[47]到ATS[57]的值设置为超过MPEG-TS的容许音频数据传输率。这造成音频传送缓存器(见图18)溢出,从而不满足T_STD模型的要求。但是,将流TS1中的ATS[47]到ATS[57]的值设置为一个MPEG-TS中允许的音频数据传输率。因此,通过下述的SCR变换公式,可以把这个流正确地变换到一个符合P_STD模型的MPEG程序流PS1。流TS2也不符合T_STD,但是可以利用下述的SCR变换公式变换到PS1。为了把流TS2变换到符合T_STD的MPEG-TS,必须延长由ATS[47]到ATS[57]规定的音频数据分组的传送时间间隔,以便不发生传送缓存器溢出。

    以下参考图33A和33B说明MPEG-TS符合T_STD模型,但是从MPEG-TS变换的MPEG-PS不符合P_STD模型的例子。流TS3是一个MPEG传送流,流PS3是一个从MPEG传送流TS3变换的MPEG程序流。图33(b)示出了当解码每个流时,视频数据缓存器中的变化。PES#1图像解码时间是SCR[2],PES#2图像解码时间是在SCR[4]与SCR[5]之间。

    如图33B中所示,在传送流TS3中,PES#1和PES#2的数据传送是通过PES#1和PES#2中解码图像数据的开始完成的。但是,在程序流PS3中,V_PCK#1数据成功地传送到PES#1的解码器,但是在解码V_PCK#2时,V_PCK#4数据没有及时传送,并且由于解码在数据传送完成之前开始,发生了缓存器下溢。因此,程序流不符合P_STD模型。为了避免这种情况,并且保证PES#2的传送按时完成,可以,将变换到V_PCK#2至V_PCK#4的MPEG-TS中的每个TS数据分组的ATS(ATS[14],ATS[25],ATS[36])移动到对PES#2图像数据解码之前的一个时间。

    由于编码MPEG-TS和从其变换的MPEG-PS都需要防止下溢和溢出状态的缓存器管理,因此在编码MPEG-TS时,需要预料编码的MPEG-TS和从其变换的MPEG-PS。

    图58A和58B说明当变换之前的MPEG-TS和变换之后的MPEG-PS具有相同的比特率时,MPEG-TS和预料的MPEG-PS的缓存器管理。在本实施例中,可以假设预料的MPEG-PS的缓存器管理与编码MPEG-TS的缓存器管理相同。这是由于变换到MPEG-PS的MPEG-TS的多路复用单元中设置的时间标记信息(calculated_PCR)与变换后的MPEG-PS中设置的时间标记信息相同。

    图58A示出了其中发生了缓存器下溢的一个例子。到目标时间K1,即,DTS定时,编码MPEG-TS的数据传送没有完成。因此,预料到变换的MPEG-PS的数据传送也不会及时完成。

    为了避免缓存器下溢状态,必须如图58B中所示,将MPEG-TS时间标记信息设置到数据传送能够在时间K1,即DTS定时,完成。因此,可以预料到,对于变换的MPEG-PS不会发生缓存器下溢。

    图59A和59B说明了当被变换的MPEG-TS的比特率高于得到的MPEG-PS时,MPEG-TS和预料的MPEG-PS的缓存器管理。在这种情况下,可以假设预料的MPEG-PS的缓存器管理与编码MPEG-TS的缓存器管理相同。因此MPEG-PS需要分离的缓存器管理。

    在图59A所示情况中,仅随MPEG-PS发生缓存器下溢。对于编码MPEG-TS,数据传送在目标时间K1(DTS定时)完成,并且不发生缓存器下溢。但是,对于变换的MPEG-PS,数据传送在目标时间K1(DTS定时)没有完成,并且发生缓存器下溢。因此,对于MPEG-PS,为了避免缓存器下溢,数据传送也必须在时间K1,即DTS定时,结束。如果得到的MPEG-PS是由DVD标准使用的MPEG-PS,那么不能提高系统传输率。因此,为了保证能够及时把数据完全传送到解码器,需要如图59B中所示那样,降低图像速率或减小传送数据的总数据量。

    <ATS-SCR变换>

    以下说明一种用于在把约束SESF流变换到程序流时确定PS数据包的SCR的方法。应当注意,由于SCR是在产生新的数据包时计算的,因此必须仅在变换多路复用单元中第一个TS数据分组时计算SCR。

    首先说明确定SCR的基本概念。图60A和60B示出了在两种不同情况下设置到变换后的MPEG-PS的数据包的时间标记信息(SCR)。

    图60A示出了MPEG-TS和MPEG-PS比特率相同的情况。在这种情况下,将与MPEG-TS的相应多路复用单元中设置的时间标记信息(calculated_PCR)相同的值设置到MPEG-PS数据包的时间标记信息(SCR)。

    图60B示出了MPEG-TS传输率高于MPEG-PS传输率的情况。在这种情况下,将紧接数据包之前的缓存输入完成时间(SCR[i-1]+T)设置到变换后的程序流中的每个数据包(V_PCK)的SCR[i]。下面说明为何如此设置SCR。

    如果像图60A中所示情况那样设置对应于SCR[i]的多路复用单元的calculated_PCR[i],那么把一个早于紧接数据包之前的缓存器输入完成时间(SCR[i-1]+T)的时间设置到SCR。如果把SCR设置到这个定时,那么流将不能用当前DVD记录器播放,必须避免这种情况。应当注意,由于音频的最大传输率低于视频,所以将MPEG-TS比特率设置得比MPEG-PS中高。

    下面进一步详细说明确定SCR。

    在约束SESF流中,如图55中所示,一个SESF包封包括一个Tip数据分组和预定数量的组成多路复用单元的TS数据分组。由于与解码器参考时间STC(系统时间时钟)同步传送,所处流包括PCR数据分组以重置STC。

    如图14中所示,每个TS数据分组加入了一个指示对解码器的传送时间的第一时间标记信息(ATS)。该第一时间标记信息(ATS)的参考时间与解码器参考时间不同。

    因此,Tip数据分组包含基于解码器参考时间的第二时间标记信息(PCR_fip),以及基于与TS数据分组相同的参考时间的第一时间标记信息(ATS_tip)。通过参考Tip数据分组,解码器可以从每个TS数据分组的第一时间标记信息(ATS)计算第二时间标记信息(PCR)。

    如图61中所示,从位于多路复用单元首部的每个TS数据分组的第一时间标记信息(ATS[i])计算的第二时间标记信息成为每个多路复用单元的第二时间映射表信息(以下称为“计算的PCR[i]”)。

    例如,如果不考虑ATS值的进位(列溢出),那么可以利用一个SESF包封中的第一Tip数据分组的PCR(PCR_tip)和ATS值,和下一个TS数据分组的ATS值ATS[i],从下面的公式获得TS数据分组的PCR值(PCR[i])。

    PCR[i]=PCR_tip+(ATS[i]-ATS_tip)例如,在图61的情况下,为了确定指示第一多路复用的单元的解码器输入时间的calculated_PCR[1],可以使用下面的公式。

    Calculated_PCR[1]=PCR[2]

                     =PCR_tip+(ATS[2]-ATS_tip)。

    在考虑到ATS列溢出的同时,同样地计算每个多路复用单元的calculated_PCR。

    图34示出了当从一个约束SESF变换的MPEG-PS时,calculated_PCR与SCR之间的关系,并且示出了图55所示的包封的第一部分。在图34中,将ATS以从流开始到每个多路复用单元的开始的TS数据分组的升序表示为ATS[k]。对于calculated_PCR和SCR使用了同样的注释。以每个多路复用单元中第一TS数据分组出现的顺序计算的PCR值示为calculated_PCR[i](其中i=1,2,...)。变换的数据包的SCR同样地表示为SCR[i]。

    如上所述,T_STD模型允许的最大视频流传输率是15Mbp(对于MP@ML,从多路复用缓存器到视频缓存器的传输率不能超过15Mbp),并且将音频流输入速率限制到低于视频的速率。(除了AAC之外,从传输缓存器到音频缓存器的传输率不超过2Mbp)。因此,与存储视频数据的多路复用单元不同,存储音频数据的多路复用单元以低速传送。因此,如果使视频数据传输率提高到接近9.8Mbp的DVD格式的最大传输率,那么为了保证具有较低传输率并且因此耗时更长的音频数据的足够的传送时间,必须以高于DVD传输率(10.08Mbp)的速率传送视频数据TS数据分组。

    如从图34看到的,约束SESF和DVD格式的传送时间不同

    多路复用单元中的第一TS数据分组的解码器到达时间calculated_PCR与从其变换的数据包的SCR之间的下述关系必须是真实的。

    SCR[1]=calculated_PCR[1]

    SCR[i]=max(SCR[i-1]+T,calculated_PCR[i])(i=2,3...)

    Calculated_PCR[i]=PCR_fip+(ATS[i]-ATS_tip+WA*BS)

    T=PS_pack_size*8*system_clock_frequency/Psrate

    其中PCR_tip和ATS_tip是刚好在变换多路复用单元之前的Tip数据分组的PCR值和该Tip数据分组的ATS;WA指示在ATS_tip与赋予第i个多路复用单元中的第一TS数据分组的ATS(ATS[i])之间的ATS发生了多少次溢出。更具体地讲,将ATS值表示为一个有限位计数,对于可以表示的数,和可能发生的溢出的次数存在着一个限度。用WA表示这种溢出发生了多少次。BS是对应于一次ATS溢出的数据量。函数max(a,b)是一个用于选择a和b中较大的一个的函数。

    此外,如上所述,SCR[i](i=2,3,...)关系式中的PS_pack_size是由TS2PS变换处理输出的PEG-PS中的一个数据包的字节长度;system_clock_frequency是MPEG-PS解码器参考时间的频率;和PSrate是由TS2PS变换产生的MPEG-PS的多路复用率。更具体地讲,

    PS_pack_size=2048字节

    System_clock_freqency=27,000,000Hz

    PSrate=10,080,000比特/秒

    在第一数据包之后,存在着两种输出数据包的模式:从在前数据包的输出时间等待由传输率确定的最短传送时间之后输出数据包,和在一个数据包中的第一TS数据分组的解码器输入时间输出。当在视频数据变换到DVD格式之前输出数据包时,选择在数据包输出之前留下最短的传输时间的前一种方法。例如,如果在视频数据变换到DVD格式之前的一个时间输出数据包,那么选择在从前面的数据包的输出时间等待一个由传输率确定的最短传输时间之后传送的前一种方法。

    如上所述,通过TS2PS变换得到的程序流必须符合P_STD模型,因此将SCR限制于一定范围内的值。因此,必须参考上面的ATS-SCR关系设置赋予约束SESF的每个数据分组的ATS值。

    9.8.有关基本流的约束

    以下说明有关约束SESF的基本流的约束。

    由于对基本流再编码是一个非常苛求的处理过程,仅有MPEG-2Video可供视频数据使用,AC-3、MPEG-1 Audio、和LPCM可供音频数据使用。

    约束SESF省略了LPCM,从而能够不需要基本流的再编码,和缓存器管理可以更为容易。因此,供约束SESF使用的流,对于视频数据只限于MPEG-2 Video,对于音频数据只限于AC-3和MPEG-1 Audio。

    图35中示出了当encode_condition=“11b”时的基本流属性。

    由于设置了图中所示的属性以便在基本流层保持对DVD-Video或DVD VR的兼容性,所以设置到这些属性的约束SESF(encode_condition=11b)不需要为了变换到DVD-Video或DVD VR格式而对基本流再编码,因此可以高速变换。

    图36示出了当encode_condition=“01b”时的基本流属性。

    由于设置了图中所示属性以便在基本流层保持对DVD VR的兼容性,所以设置到这些属性的约束SESF(encode_condition=01b)不需要为变换到DVD VR而对基本流再编码,并且可以高速变换。

    以下说明图35和图36中的注释1至4。

    注释1:在同一VOB内,这个属性不能改变。

    注释2:在存储Tip数据分组之后的第一基本流的TS数据分组中可以改变这个属性。也就是说,只有在SESF包封中的第一视频或音频TS数据分组中可以改变它。

    注释3:sequence_end_code不能插入到其中horizontal_size,vertical_size,和aspect_ratio_information是相同的sequence_header之间。

    注释4:在同一VOB内可以改变这个属性。

    以上定义了有关约束SESF的基本流的约束。

    应当注意,通过应用上面定义的编码条件,可以产生能够快速而简单变换到DVD格式的约束SESF。

    图37是从存储AV数据的TS数据分组(多路复用单元)产生程序流数据包的处理过程的流程图。

    如图所示,利用一个多路复用单元作为处理单元,将存储AV数据的约束SESF的一个TS数据分组变换到存储AV数据的2KB MPEG-PS数据包。以下一个步骤接一个步骤地说明这个处理过程。

    (步骤S4200)从约束SESF流变换开始点读出一个TS数据分组。

    (步骤S4201)确定读出的TS数据分组是否包含AV数据,和是否是一个多路复用单元中的第一TS数据分组。

    是否包含AV数据是通过参考PMT声明存储了AV数据的TS数据分组的PID值确定的。

    如果在前TS数据分组是一个Tip数据分组、PSI/SI数据分组、或PCR数据分组,那么知道其后的包含AV数据的TS数据分组是多路复用单元中的第一TS数据分组。由于假设变换开始点是一个Tip数据分组,那么可以通过顺序地读出TS数据分组检测多路复用单元的开始(也就是说,紧接着这个Tip数据分组之后的并且包含AV数据的第一TS数据分组总是一个多路复用单元的开始)。

    如果确定该TS数据分组不是一个多路复用单元的开始,或如果变换没有从一个Tip数据分组开始并且不能识别多路复用单元的开始,那么控制转到步骤S4200,读出下一个TS数据分组。

    如果发现一个多路复用单元的开始,那么控制进行到下一步骤。

    应当注意,尽管在流程图中没有示出,如果没有事先确定Tip数据分组的位置,那么即使对在多路复用单元的开始的TS数据分组,也不能应用使用上述SCR变换方法的变换,但是变换可以利用PCR数据分组而不是Tip数据分组进行。

    (步骤S4202)利用赋予多路复用单元中的第一TS数据分组的ATS计算从该TS数据分组变换的MPEG-PS数据包的解码器输入时间(SCR)。如上所述计算这个SCR。一旦确定了SCR,完成图38中所示的数据包首部。这是由于数据包首部仅允许除了SCR之外的固定值。

    (步骤S4203)然后,产生数据分组首部。

    根据约束SESF的PES数据分组首部产生数据分组首部。必须用图39中所示的字段值格式化得到的数据分组首部。这是由于如果首部长度或其它字段值不是恒定的,那么从一个约束单元的变换将不恒定,并且将影响缓存器管理。应当注意,这里没有示出的字段存储恒定值,从而在这里省略。

    在约束SESF中详细定义了PES数据分组首部的字段值,以使从PES数据分组首部(MPEG-TS)到MPEG-PS数据分组首部的变换所需的处理最少。

    如果一个PES数据分组的大小比一个数据包的大小大,那么将一个PES数据分组变换到多个数据包。在这种情况下,随后对第二和后续数据包的数据分组首部进行修改:把从PES数据分组产生的第一数据分组首部中的PTS_DTS_flag设置到00b;把PES_extension_flag设置到调节stuffing_byte长度;和改正PES_heater_data_length。

    从而,通过从PES数据分组首部部分地修改第一数据分组首部,和从第一数据分组首部部分地修改第二和后续数据分组首部,产生了数据分组首部。

    (步骤S4204)然后,简单地从PS数据包中的有效负载的开始顺序复制TS数据分组的有效负载部分。

    (步骤S4205至S4207)简单地重复这些步骤,直到完成了多路复用单元(即,11个TS数据分组)。由于可以插入一个空数据分组,所以要确认空数据分组的PID(0x1FFF),并且复制TS数据分组有效负载。

    优选定义仅存储PES数据分组的最后数据的TS数据分组具有一个适应字段。结果是,除了存储一个PES数据分组中最后数据的TS数据分组之外,所有TS数据分组存储了包含184个字节的固定长度的有效负载,从而可以比较容易地读出有效负载数据。

    (步骤S4208)然后,当对多路复用单元有效负载数据的结尾的复制完成时,计算得到的程序流数据包的字节长度。如果数据包的长度是2048字节,那么数据包完成。如果字节长度不是2048字节,那么控制步骤转到步骤S4209。

    (步骤4209)如果数据包小于2048字节,那么把填充数据分组加到有限负载的结尾,以便使数据包长度是2048字节。

    上面描述了从存储AV数据的多路复用单元的变换。当检测到一个多路复用单元时,仅简单地重复这个处理过程,直到处理约束SESF的变换的指定部分结束。

    以下对上述变换处理的处理不同类型的数据包的情况进行进一步详细说明。

    <变换到视频数据包(V_PCK)>

    图40A和40B示出了从约束SESF到MPEG-PS的变换。如图40A中所示,一个视频PES数据分组在正常情况下大于2KB,因此一般分割成多个多路复用单元,以多路复用到约束SESF。

    除了一个视频PES数据分组中的最后多路复用单元之外,定义约束SESF以便能够将尽可能多的PES数据分组数据填充到每个多路复用单元中。因此,除了最后多路复用单元之外,所有多路复用单元存储了2024字节(=184×11字节)的数据。

    通过如此定义约束SESF,可以在TS2PS变换过程中预定义PES_packet_length和stuffing_byte字段。

    存储一个视频PES数据分组的数据的最后多路复用单元给剩余区填充一个适应字段和空数据分组,以形成一个完整的多路复用单元。

    如图40A和40B中所示,一个视频PES数据分组中的多路复用单元包括以下三种类型。

    存储PES数据分组中第一数据的第一多路复用单元(在图中,MU#1),存储来自PES数据分组的中间的数据的多路复用单元(在图中,MU#n,其中n=2,3,...,N-1),和存储来自PES数据分组的最后数据的多路复用单元(MU#N)。

    根据这些多路复用单元的类型,TS2PS变换的MPEG-PS的生成数据分组如图40B中所示。

    总是产生从MU#1变换的带有至少10个字节空空间的数据包,因此,具有添加到结尾的填充数据分组。

    如果DVD格式的数据包中剩余7字节或更小的空间,那么加入填充字节(数据分组首部中的最后字段),直到总共2048字节。如果有8或更多字节是空的,那么加入填充数据分组。

    从MU#n变换的数据包具有加入的一个填充字节,以完成数据包。由于至少8字节通常是空的,所以当编译数据包时从MU#N变换的数据包加入一个填充数据分组。

    <变换到音频数据包A_PCK>

    图41A和41B示出了约束SESF到MPEG-PS的变换。如图所示,一个音频PES数据分组(存储一个或多个音频帧)小于一个多路复用单元。

    由于一个音频PES数据分组适合于一个多路复用单元,所以不需要诸如用于视频PES数据分组变换之类的复杂变换。即,如图41B中所示,总是把一个填充数据分组插入到产生的数据包中。

    此外,由于在TS2PS变换过程中PES_packet_length不变,所以变换所需的仅有计算是在PMEG-1Audio变换过程中适当地设置stream_id。

    图42示出了当存储AC-3和MPEG-1 Audio时,约束SESF中允许的音频比特率和存储到一个音频PES数据分组的最大有效负载。由于超过这里所示的最大字节长度的音频数据不会存储到一个音频PES数据分组中,所以总是插入一个填充数据分组。

    <TS2PS变换处理过程>

    以下参考图43至图54中的流程图详细说明RS2PS变换处理过程。

    图43是主TS2PS变换处理过程的流程图。这个处理过程响应来自用户的TS2PS变换请求开始。第一步骤是搜索变换开始的第一SESF包封(S11)。然后,确定是否找到要处理的SESF包封(S12)。如果不是,处理过程结束。如果找到,那么运行一个初始化处理过程(S13)和包封单元处理过程(S14)。

    图44是初始化处理过程(S13)的流程图。这个处理过程设置和初始化后续处理过程中使用的变量,并且通过确定是否读出了一个Tip数据分组来开始(S21)。如果还没有读出Tip数据分组,那么读出Tip数据分组(S22)。然后,将Tip数据分组的ATS值写入变量ATSTip(S23),把Tip数据分组的PCR值写入变量PCRTip(S24),把定义被处理的多路复用单元的数量的变量MU_num初始化到0(S25),和把代表ATS溢出的数量的变量WA初始化到0(S26)。

    图45是包封单元处理过程(S14)的流程图。同样地,这个处理过程通过读出一个TS数据分组来开始(S31)。然后检测读出的TS数据分组是否是一个Tip数据分组(S32)。如果读出数据分组是一个Tip数据分组,那么处理过程结束。如果不是一个Tip数据分组,那么检测读出TS数据分组是否包含一个音频数据分组或视频数据分组(S33)。如果TS数据分组既不包含音频数据分组也不包含视频数据分组,那么控制环回到步骤S31,并且顺序地读出TS数据分组,直到检测到一个包含音频或视频数据分组的TS数据分组(S31至S33)。如果TS数据分组包含音频或视频数据分组,那么也读出接下来的10个TS数据分组(S34)。然后递增MU_num(S35)。然后把来自多路复用单元中的第一TS数据分组的ATS值写入变量ATS[MU_num](S36)。把多路复用的单元的PES数据分组中的有效负载数据的字节长度设置到payload_len(S37)。然后,运行一个数据包单元处理过程(S38)。

    图46是数据包单元处理过程(S38)的流程图。这个数据包单元处理过程是由四个子历程构成的:SCR计算(S41),数据包首部处理(S42),数据分组首部处理(S43),有效负载处理(S44),和填充数据分组处理(S45)。以下说明每个子历程。

    图47中示出了SCR计算处理过程。这个处理过程确定数据包的SCR值。

    首先参考变量MU_num,以检测包封中第一多路复用的单元。如果它是第一多路复用单元,那么把ATSTip的值写入变量ATS[0],并且把PCRTip写入变量SCR[0](步骤S51至S53)。

    然后,比较ATS[MU_num]和ATS[MU_num-1](855)。把来自多路复用单元中第一数据分组的ATS值存储到ATS[i]。ATS值代表提供给一个给定数据分组的相对传送定时。因此,在一个随后的数据分组中的ATS值一般高于在前数据分组的ATS值。但是,由于ATS是一个可以在30比特中定义的有限值,因此,可能发生进位(列溢出)。在这种情况下,一个随后的数据分组的ATS值可能小于在前数据分组的ATS。步骤S54监视ATS值的这种倒转,并由此确定是否发生进位(列溢出)。如果ATS[MU_num]小于或等于ATS[MU_num-1],即,如果检测到溢出,那么递增变量WA(855)。

    然后,用SCR[MU_num-1]+T和(PCRTip+ATS[MU_num]-ATSTip+WA×BS)中较大的一个代替SCR[MU_num](856)。

    接下来参考图48说明数据包首部处理。

    这个处理过程编辑具有图38中所示数据结构的数据包首部数据。把SCR除以300的余数写入到SCR_extension(S61),并且把商写入SCR_base(S62),把“0x6270”写入program_mux_rate,和把“000b”写入pack_stuffing_length(S64)。然后,适当地编辑其它字段值字段值,以完成数据包首部数据(865)。

    参考图49说明数据分组首部处理。

    这个处理过程以一个流ID历程开始,以设置流ID(871)。然后检测多路复用单元中的第一TS数据分组是否包含一个PES数据分组首部(872)。如果多路复用单元中的第一TS数据分组包含一个PES数据分组首部,那么start-of-PES数据分组过程运行(873),否则运行non-start-of-PES数据分组过程(S74)。可以通过参考TS数据分组首部中的payload_unit_start_indicator,或通过直接检测是否存储了PES数据分组首部开始代码,确定多路复用单元中第一TS数据分组是否包含一个PES数据分组首部。

    以下参考图50说明流ID处理。

    这个处理过程设置stream_ID字段值。如果被处理的流类型是“MPEG-2 Video”,那么把stream_id设置到“0×E0”(881,S82)。如果流类型是“AC3-Audio”,那么把stream_id到“0xBD”(S83,884)。如果流类型是“MPEG-1 Audio”和“Primary audio”,那么把stream_id设置到“0xC0”(S85,S86,S87)。如果流类型是“MPEG-1 Audio”和“Secondaryaudio”,那么把stream_id设置到“0xC1”(S85,S88,S89)。

    参考图51说明PES数据分组处理开始。

    图56详细示出了MPEG标准的PES数据分组结构。这个start-of-PES数据分组处理过程根据图56中所示结构编辑字段值。

    首先检测流类型是否是“MPEG-2 Video”(S91)。如果是,那么把从下面等式计算的值写入PES_packet_length(S92)。

    PES_packet_length=(3+PES_header_data_length)+payload_len

    变换前的TS数据分组的每个字段中的从“10”到PES_header_data_length(见图56)的3个字节直接复制到变换后的MPEG-PS数据包的数据分组首部的相应字段(S93)。参考变换前的TS数据分组中的PTS_DTS_flag,以检测是否存在一个PTS(S94)。如果存在一个PTS,那么把它直接复制到变换后的MPEG-PS数据包中的数据分组首部的相应字段(S95)。同样地参考PTS_DTS_flag,以检测是否存在一个DTS(S96)。如果存在一个DTS,那么把它直接复制到变换后的MPEG-PS数据包中的数据分组首部的相应字段(S97)。如果PES_extension_flag设置到“1”(S98),那么运行步骤S99。

    在步骤S99,再检测流类型,并且根据检测的流类型,重写从PES_private_data_flag到P_STD_buffer_flag的三个字节。即,如果流类型是“MPEG-2 Video”(S99),那么用“0x1E60E8”重写从PES_private_data_flag到P_STD_buffer_flag的三个字节(S100)。如果流类型_是“AC3-Audio”(S101),那么用“0x1E603A”重写(S102)。如果流类型是“MPEG-1 Audio”(S103),那么用“0x1E4020”重写(S104)。

    下面参考图52说明non-start-of-PES数据分组处理过程。

    把PES数据分组中从“10”到PES_extension_flag的2个字节设置到“0x8000”(S111),并且检测playload_len是否小于2018(S112)。payload_len是一个多路复用单元中PES数据分组的数据长度,并且最大是184x11=2024字节。如果payload_len小于2018,那么把PES_header_data_length设置到0(S113)。如果payload_len大于或等于2018,那么把PES_headerdata_length设置到(2015-payload_len)(S114),并且将PES数据分组填充PES_header_data_length的字节长度(S115)。把从下面等式计算的值设置到PES_packet_length(S116)。

    PES_packet_length=(3+PES_header_data_length)+ayload_len

    下面参考图53说明有效负载处理。

    首先,把变量i初始化到1(S121)。然后,读出存储到第i个TS数据分组的PES数据分组的有效负载数据(S122),并且添加到数据包的有效负载数据(S123)。然后,递增变量i(S124)。重复步骤S122到S125,直到i=12(S125),即,直到处理了一个多路复用单元中的所有TS数据分组。

    以下参考图54说明填充数据分组处理。

    首先,检测PES_packet_length是否等于2028(S131)。如果PES_packet_length不等于2028,那么把填充数据分组的PES_packet_length设置到{(2028-PES_packe_ength)-6}(S132),并且把填充数据分组加到有效负载(S133)。

    尽管参考附图,结合其优选实施例说明了本发明,但是应当注意,熟悉本领域的技术人员知道各种改变和变化。应该理解,这些改变和变化包括在所附权利要求定义的本发明的范围内,除非它们脱离了本发明的范围。

流变换方法和装置,数据记录方法和装置,和数据记录介质.pdf_第1页
第1页 / 共119页
流变换方法和装置,数据记录方法和装置,和数据记录介质.pdf_第2页
第2页 / 共119页
流变换方法和装置,数据记录方法和装置,和数据记录介质.pdf_第3页
第3页 / 共119页
点击查看更多>>
资源描述

《流变换方法和装置,数据记录方法和装置,和数据记录介质.pdf》由会员分享,可在线阅读,更多相关《流变换方法和装置,数据记录方法和装置,和数据记录介质.pdf(119页珍藏版)》请在专利查询网上搜索。

在存储MPEG流的记录介质中,提供了指示能以一种容易地将第一流(MPEG传送流)变换到第二流(PMEG程序流)的格式记录该流的标志信息(encode_condition)。在该介质中,这样一个标志信息包括在作为一个控制数据分组的Tip数据分组中。因此,可以容易地确定数据是否是用这种格式记录的,而不用分析存储在记录介质中的数据。 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1