专利名称:时戳附加装置、时戳附加方法以及时戳附加程序的制作方法
技术领域:
一般地,本发明涉及时戳附加装置、时戳附加方法以及时戳附 力口程序。具体地,本发明涉及能够向包含在MPEG2-TS中的每个 TS (传输流)包(packet)附加使MPEG-2 TS (运动图4象专家组传 输流)正常再生的时戳的时戳附加装置,并涉及该时戳附加装置所 采用的时戳附加方法以及实现该时戳附加方法的时戳附加程序。
背景技术:
近年来,TV节目凄t字装置变得非常流4t并成为广泛4吏用的装 置。TV节目数字装置被用于在诸如硬盘的记录介质上记录TV节 目,并随后再生已经i己录在"i己录介质上的TV节目。典型的TV节 目数字装置包括硬盘记录器、个人计算机以及具有记录功能的TV 广播接收装置。
在曰本,TV广播的标准设置包括作为国际标准规格的MPEG (运动图像专家组)标准。在MPEG标准中,采用了虑及在通信和 广#番系统中应用的MPEG-2系统。此外,在MPEG-2系统中,采用了称为MPEG2-TS的格式。MPEG2-TS才各式是在传输期间产生错误 的环境中被用于数据传输和积累的格式。
根据MPEG2-TS格式,在发射侧的装置中,已通过采用MPEG-2 编码方法而编码的 一见频和声音被分割成多个包,随后将这些包依次 传输至接收侧的装置。这些包被称作TS (传输流)包。
另外,根据MPEG2-TS格式,某些TS包包4舌采用27 MHz的 系统时钟频率作为基准的嵌入PCR (节目时钟基准),使得接收侧 的装置能够再生发射侧的装置所期望的节目。同样,TS包还包括 t者^口 PTS (节目时戮)和DTS (解石马日于戮)的嵌入式凄t才居。PTS是 在再生处理中所参考的时间管理信息,而DTS是在解码处理中所参 考的时间管理信息。
诸如上述数字装置的接收侧装置从发射侧装置接收TS包,并 从预定的一个TS包中得到PAT (节目关联表)和PMT (节目映射 表)。基于PAT和PMT,接收侧装置识别预先确定的每个PID (包 标识符),并将由预先确定的PID所识别的每个TS包分成4见频包、 音频、PCR和其它^t据。
另夕卜,接收侧装置使用从TS包获取的PCR,以设定STC (系 统时钟)的初始值。此外,接收侧装置将周期性接收的PCR值与 STC进4亍比丰交,以调节用作解石马处J里的时基(time base )的27 MHz 系统时钟频率的误差。
通常,i殳计冲妄收侧装置,以4吏在作为从TS包生成S见频和声音 的处理、由接收侧装置执行的将由诸如广播站的发射侧装置所传输 的TS包进4亍解码的处理中,在"^妄收侧装置中所采用的、作为临时 存储诸如TS包的数据的緩沖器的接收緩沖器没有上溢或下溢,并 且能够正常l丸行使^L频和声音彼此同步的处理。顺便提及,在某些情况下,具有MPEG2-TS格式的视频内容可 以通过IPTV (互联网协议电视)网络等的方式进行分配,或者在 由DLNA (数字生活网络联盟)环境表示的家庭网络环境中进行分配。
在通过这种网络分配具有MPEG2-TS 4各式的3见频内容的处理 中,即使发射侧装置以高精度控制TS包的输出定时,TS包通过网 络中的不同路径,使得TS包的到达时间在某些情况下与传输间隔 不一致的情况是才及其可能的。除此之外,如果网络中的中继装置同 时执行与MPEG2-TS处理完全无关的另一传输处理,贝'J TS包的到 达时间在某些情况下也会与传输间隔不 一 致。
另夕卜,MPEG标准规定在100 ms的周期内至少包括l个PCR。 即,没有头见定在MPEG2-TS的每个TS包中都包4舌PCR。因此,如 果接收侧装置仅参照通过网络传输的TS包的PCR,则接收侧装置 《艮难将在发射侧装置所期望的定时下接收的TS包提供给解码器, 该解码器应用在4妄收侧装置中以用作对MPEG2-TS进4亍解码的解 码器。
因此,需要为这种难题提供有效的解决方式。根据本实施例提 供的时戳附加方法,在通过这种网络分配视频内容的处理中,发射 侧的装置向MPEG2-TS的每个TS包附加时戳,以用作表示TS包 寻皮提供给解码器的定时的信息,而接收侧的装置使用附加至TS包 的时戳,以控制定时。在下面的描述中,TS包被提供给解码器的 定时也#:称作l餘入定时。
例如,作为TV广纟番传输的内容净皮记录在诸如记录装置的装置 中作为MPEG2-TS,并且用户编辑MPEG2-TS,切割场景并改变场 景顺序,乂人而失去了 PCR值的连续性。下面4夸i兌明在2个特定的连续TS包之间的iir入定时间隔以及 这些特定TS包的PCR值的变化。特定TS包是位于每个均进行了 编辑处理以切割场景的先于或迟于中间TS包的TS包。由于中间 TS包的场景^皮切割而〗吏中间TS包的数量减少,所以通过与中间 TS包数量减少相对应的减少来缩短2个特定的TS包之间的时间间 隔。然而,如果与由于场景切割而引起的特定TS包之间的缩短3巨 离相比,特定TS包之间的RCR值的差会显著增加(或跃升)。
因此,例如,在通过网络将MPEG2-TS分配给接收侧的装置的 情况下,如果在切除场景的编辑处理中消除了 MPEG2-TS的场景, 然后在爿夸时戳附加至4妄收侧的编辑后的MPEG2-TS的处理中^U吏 用编l專后的MPEG2-TS的PCR^f直,则上述净争定TS包之间的PCR 值的差值根本不反映特定TS包之间的校正输入定时的差值。结果, 将一个特定的TS包j是供给用于对MPEG2-TS进4亍解码的解码器的 输入定时也变得完全不正确。另外,如果通过网络将MPEG2-TS传 输至4妄收侧的装置然后进4于编辑处理来改变MPEG2-TS的场景顺 序,则IIT入定时也会不期望地变得提前或滞后,乂人而不能够正常再 生MPEG2-TS。结果,由MPEG2-TS所表示的一见频发生了不希望;也 失真。
为了解决上述问题,如在日本专利公开第2001-285233号中所 披露的,提供了 一种用于在维持由时间信息表示的连续性和周期特 性的同时生成以各种传输速度传输的传输流的技术。
另夕卜,日本专利^〉开第Hei. 11-41193号4皮露了一种用于消除多 路复用多个异步传输流时所生成的延迟变化的技术。
发明内容
如上所述,如果用户编辑MPEG2-TS,则会失去在作为编辑才喿 作结果而获取的MPEG2-TS的TS包中所包括的PCR值的正确连续 性。因此,如果通过使用PCR值来执行时戳附加处理以将时戳附加 至MPEG2-TS的每个TS包,乂人而用作表示将TS包才是供给用于对 MPEG2-TS进行解码的解码器的输入定时的时戳,则作为时戳附加 处理结果而获得的每个时戳在某些情况下可能不正确。即,被附加 至TS包的每个时戳在某些情况下不再表示正确的输入定时。因此, 在再生通过网络传输并由用户编辑的MPEG2-TS的揭:作中,因为由 作为在编辑操作后执行的时戳附加处理结果而获得的时戳所表示
的每个i叙入定时可能与正确的llr入定时不同,所以在某些情况下不
能正常再生MPEG2-TS。
为了解决上述问题,发明了本发明的实施例,作为能够将正确 的时戳附加至MPEG2-TS的每个TS包以用作使MPEG2-TS正常再
生的时戳的实施例。
根据本发明的实施例,提供了一种时戳附加装置,被配置为将 时戳附加至包括在MPEG2-TS中的多个TS包的每一个,以用作表 示将各个TS包提供给用于对MPEG2-TS进行解码的解码器的输入 定时的时戳。该时戳附加装置采用不连续检测部,其被配置为在TS 包的适配域中所包括的不连续标识符表示采用预先确定的系统时 钟频率作为基准的PCR (节目时钟基准)不完全连续的情况下,获 取包括不连续标识符的TS包的位置信息。该时戳附加装置还采用 PCR检测部,其^皮配置为在TS包包括适配域并且TS包的适配域 包括PCR的情况下,提取嵌入在TS包的适配域中的PCR的值, 并获取包括所嵌入PCR的TS包的位置信息。该时戳附加装置还采 用时间间隔计算部,其^皮配置为通过^f吏用由不连续4企测部获取的作 为包括被描述为表示PCR不完全连续的不连续标识符的不连续标识符的特定TS包的位置信息的信息、使用由PCR检测部提取的作 为PCR值的值以及使用由PCR检测部获取的作为包括所嵌入PCR 的特殊TS包的位置信息的信息,来计算每两个相邻TS包的输入定 时之间的平均l命入定时间隔。该时戳附加装置还采用时戳计算部, 其被配置为基于每两个相邻TS包的输入定时之间的平均输入定时 间隔计算TS包的每一个的输入定时,并将时戳附加至TS包的每一 个,以用4乍表示TS包的l命入定时的时戳。
根据本发明的另一个实施例,提供了 一种用于附加时戳的时戳 附加方法以及一种由计算机执行的时戳附加程序,用于执行将时戳 附力口至包4舌在MPEG2-TS中的多个TS包中的每一个的处-里,以用 作表示将每个TS包提供给用于解码MPEG2-TS的解码器的输入定 时的时戳。该时戳附加方法和程序包括以下步骤在TS包表示采 用预先确定的系统时钟频率作为基准的多个PCR (节目时钟基准) 不完全连续的情况下,获取包括在TS包的适配域中描述的不连续 标识符的TS包的位置信息。该时戳附加方法和程序还包括以下步 骤在TS包包括适配域并且TS包的适配域包括嵌入PCR的情况 下,提取TS包的PCR的值,并获取包括嵌入PCR的TS包的位置 信息。该时戳附加方法和禾呈序还包括以下步骤通过〗吏用包括表示 PCR不完全连续的不连续标识符的特定TS包的位置信息、使用 PCR的值以及使用包括嵌入PCR的特殊TS包的位置信息,来计算 每两个相邻TS包的1釙入定时之间的平均车俞入定时间隔。该时戳附 加方法和程序还包括以下步骤基于以每两个相邻TS包的时间间 隔计算出的平均车釙入定时间隔来计算TS包的每一个的l俞入定时, 并将时戳附加至TS包的每一个,以用作表示TS包的输入定时的时 戳。
根据本发明的实施例,如果在TS包的适配域中描述的不连续 标识符表示采用预先确定的系统时钟频率作为基准的PCR(节目时钟基准)不完全连续,则获取包括在其适配域中描述的不连续标识
符的TS包的位置信息。随后,如果TS包的适配域包括嵌入PCR, 则提取嵌入在TS包的适配域中的PCR的值,并获取具有包括嵌入 PCR的适配域的TS包的位置信息。随后,通过4吏用包4舌在TS包 的适配域中描述的、作为表示PCR不完全连续的不连续标识符的不 连续标识符的特定TS包的位置信息、使用所提取的PCR值以及使 用特殊TS包的位置信息来计算每两个相邻TS包的输入定时之间的 平均ilr入定时间隔。最后,基于作为每两个相邻TS包的豸釙入定时 之间的平均输入定时间隔所计算的每个平均输入定时间隔计算每 个TS包的输入定时,并将时戳附加至每个TS包,以用作表示TS 包的输入定时的时戳。
才艮据本发明的实施例,能够将时戳附加至MPEG2-TS的每个 TS包,以用作使MPEG2-TS正常再生的时戳。
图1是示出实现应用本发明实施例的时戳附加装置的一个实施 例的典型结构的一匡图2是每个均示出MPEG2-TS的典型结构的多个示图3示出了在时戳附加装置将时戳附加至MPEG2-TS的处理描 述中参照的示例性流禾呈图4示出了在PCR4企测处理描述中参照的示例性流禾呈图5是示出计算输入定时间隔和时戳的处理结构的示图;以及
图6是示出本发明实施例所实现的计算才几的典型石更件结构的框图。
具体实施例方式
通过参照附图,下面的描述说明实现应用本发明实施例的时戳 附加装置的优选具体实施例的细节。
图1是示出实现应用本发明实施例的时戳附加装置11的一个 实施例的典型结构的框图。
如图1的框图所示,实现时戳附加装置11的实施例的典型结
构包括存^f诸器12、 CPU(中央处理器)13、包分析单元14、时间 间隔计算部15、时戳计算单元16和系统总线17。
CPU 13连4妄至存储器12。通过系统总线17将CPU 13、包分 冲斤单元14和时戳计算单元16 4皮》匕连4妄。另外,通过CPU 13来实 现时间间隔计算部15的功能,从而实施软件程序。
存储器12用于预先存储用作将时戳附加至构成MPEG2-TS的 每个TS包的处理对象的MPEG2-TS。在下面的描述中,用作将时 瞿l附加至构成MPEG2-TS的每个TS包的处理对象的MPEG2-TS被 称作不包括时戳的MPEG2-TS的无时戳MPEG2-TS。存储器12还 用于存储作为将时戳附加至构成不包括时戳的MPEG2-TS的每个 TS包的处理结果而获4f的MPEG2-TS。
CPU 13从存储器12中读出不包括时戳的MPEG2-TS,并通过 系统总线17将不包括时戳的MPEG2-TS提供给包分析单元14。
包分析单元14是采用了不连续4佥测部18和PCR检测部19的 硬件功能一莫块。包分析单元14通过对位于不包括时戳的MPEG2-TS
...卜顺,
戳MPEG2-TS的TS包,
16例如,包分析单元14分析在不包括时戳的MPEG2-TS所包括 的预定TS包中所示的PAT (节目关联表)。预定TS包是具有PID (包标识符)为0的TS包。随后,包分析单元14 4企测通过在查找 处理中发王见的PID所识别的其它TS包,并分冲斤包4舌在其4也TS包 中的PMT,以查找用于#1称作PCR—PID的每个特歹朱PID的PMT, 其中,PCR一PID用于识别包括嵌入PCR的又一 TS包以用作属性 TS包。因此,数据分析单元14能够4企测作为包括嵌入PCR的TS 包的属性TS包。
可选地,存储器12用于预先存储包括PMT的其它TS包的PID。 因此,包分析单元14能够4企测均包括嵌入PCR的每个属性TS包。 作为另 一选择,存储器12用于预先存储均用于识别包括嵌入PCR 的属性TS包的每个PCR—PID。因此,在这种情况下,包分析单元 14也能够检测均包括嵌入PCR的每个属性TS包。作为进一步的选 择,允许用户指定包括PMT的其它TS包的PID或识别包括嵌入 PCR的属性TS包的PCR—PID。作为更进一步的选择,由CPU 13 执行的应用程序任意地设定包括PMT的其它TS包的PID或识别包 括嵌入PCR的属性TS包的PCR_PID。
随后,为了生成关于属性TS包是否包括用于描述MPEG2-TS 的附加信息的适配域的确定结果,包分析单元14分析作为由 PCR一PID识别的包括嵌入PCR以用作属性TS包的TS包或具有 PCR—PID作为其PID的TS包的又一 TS包。具体而言,包分析单 元14生成关于适酉己iiU空制(adaptation—field—control) ^f直是否为10 (或11 )以及适配i或长度(adaptation_field—length ) ^直是否为0的 确定结果。
另外,当包分冲斤单元14完成了对包含在从CPU 13接收的 MPEG2-TS中的所有TS包执行的分析时,包分析单元14通过系统 总线17将通知CPU 13以及完成分析的消息传$餘至CPU 13。如果由包分析单元14生成的确定结果表示属性TS包包括上述 适配域,则在包分析单元14中<吏用的不连续才企测部18通过才企查包 含在适配域中的不连续标识符的值来处理属性TS包。如果发现不 连续标识符的值为1,则不连续;险测部18获耳又关于属性TS包的位 置的信息。作为具有设定为1的不连续标识符的属性TS包的典型 位置信息,可以使用之前刚4企测为由PCR—PID识别的TS包的属性 TS包与具有包括设定为1的不连续标识符的适配域的属性TS包之 间的TS包的婆丈目。
随后,不连续^r测部18通过系统总线17将具有"i殳定为1的不 连续标识符的属性TS包的位置信息提供给CPU13。例如,每当不 连续4企测部18 4企测具有i殳定为1的不连续4示识才寻的属性TS包,不 连续检测部18都将属性TS包的位置信息提供给CPU 13。可选地, 当不连续4企测部18完成对包含在从CPU 13 4妄收的MPEG2-TS中 的所有属性TS包执行的分析时,包分析单元14通过系统总线17 将通知CPU 13已经完成分析的消息传输给CPU 13,并将具有i殳定 为1的不连续标识符的每个属性TS包的位置信息提供给CPU13。
如果包含在随后属性TS包中的PCR值已经;陂重置,则如在 ISO/IEC 1318-1:2000 (E)所规定的,包含在随后属性TS包的适配域 中的不连续标识符净皮i殳定为1。
顺便提及,例如,如果包含在MPEG2-TS所包括的作为包括嵌 入PCR的TS包的特定属性TS包中的适配i^中的不连续标识符^直 为1,则解码器通过^f吏用针对在特定属性TS包与在特定属性TS包 之前最近的作为包括紧前PCR的TS包的属性TS包之间的TS包获 得的平均输入定时间隔来4丸;f亍解码处理,直至出现包4舌紧冲妄PCR 用作新时基或新平均1#入定时间隔的属性TS包。另外,不连续性 标识符保持为原有的1,直至出现包括PCR作为新时基的属性TS 包。为了生成关于表示在属4生TS包的适配i或中的可选i或(optional field)中描述PCR值的PCR—flag值是否为1的确定结果,在包分 析单元14中应用的PCR冲企测部19处理被包分析单元14确定的作 为包括适配域的TS包的属性TS包。PCR—flag是用于表示在可选 域中是否描述了 PCR值的标记(flag )。如果确定结果表示PCR—flag 值为1,贝'J PCR冲全测部19从属性TS包中才是耳又出PCR值,并获取 属性TS包的位置信息。作为属性TS包的典型位置信息,如果属性 TS包是/人MPEG2-TS得到PCR的第一个属性TS包,则可以4吏用 ^立于MPEG2-TS开头的首个包与属性TS包之间的TS包fc如果 属性TS包是从MPEG2-TS得到PCR的最后一个属性TS包,则可 以-使用位于属性TS包与位于MPEG2-TS末端的尾部TS包之间的 TS包数,或者如果属性TS包在MPEG2-TS中既不是第一个属性 TS包也不是最后一个属性TS包,则可以使用位于该属性TS包之 前最近的属性TS包与该属性TS包之间的TS包数。
随后,PCR检测部19通过系统总线17将从具有设定为1的 PCR_flag的属性TS包中提取的PCR值和属性TS包的位置信息提 供给CPU 13。例如,每当PCR检测部19才企测具有i殳定为1的 PCR—flag的属性TS包,PCR检测部19都将从属性TS包中提取的 PCR值和属性TS包的位置信息提供给CPU13。可选地,当不连续 4全测部18完成对包含在乂人CPU 13 4妄收的MPEG2-TS中的所有属 性TS包执行的分析时,包分析单元14通过系统总线17将通知CPU 13已经完成分析的消息传输给CPU 13,并提供具有如上所述设定 为1的不连续标识符的每个属性TS包的位置信息。此时,PCR检 测部19将从具有设定为1的PCR—flag的每个TS包中提取的PCR 值和这样的每个TS包的位置信息提供给CPU 13。
CPU 13的时间间隔计算部15基于由CPU 13从不连续4企测部 18接收的作为具有设定为1的不连续标识符的每个属性TS包的位置信息的信息、由CPU 13从PCR检测部19接收的作为具有设定 为1的PCR—flag的每个属性TS包的位置信息的信息以及由CPU 13 从PCR检测部19接收的作为具有设定为1的PCR—flag的属性TS 包的PCR值的每个值,来计算诸如每两个相邻TS包之间的平均输 入定时间隔的量。例如,平均丰lT入定时间隔是每两个相邻TS包的 输入定时之间的平均间隔。TS包的输入定时是TS包被提供给被配 置为对包括TS包的MPEG2-TS进行解码的解码器的时间。随后, 时间间隔计算部15生成包4舌所计算的平均l命入定时间隔的时间间 隔数据。随后,CPU 13通过系统总线17将由时间间隔计算部15 生成的时间间隔数据和从存储器12读出的无时戳MPEG2-TS提供 纟合时戳计算单元16。
根据预先确定的公式,时戳计算单元16通过使用从CPU 13接 收的时间间隔数据来导出每个TS包的具有典型4字节长度的时戳。 随后,为了生成包4舌时戳的MPEG2-TS,时戳计算单元16将为TS 包计算的每个时戳附加至包括在从CPU 13接收的无时戳 MPEG2-TS中的TS包。随后,时戳计算单元16通过系统总线17 将包括时戳的MPEG2-TS提供给CPU 13。最后,CPU 13将包括时 戳的MPEG2-TS存回存卡者器12。
图2是每个均示出MPEG2-TS的典型结构的多个示图。
图2上侧的示图示出了在存储器12中预先存储的作为将^皮时 戳附加装置11处理的TS的无时戳MPEG2-TS,而图2下侧的示图 示出了作为由时戳附加装置11执行的将时戳附加至不包括时戳的 MPEG2-TS所包纟舌的每个TS包的处理结果而获得的MPEG2-TS。
如图2的上侧示图所示,没有时戳的MPEG2-TS包4舌多个连续 的TS包,每一个均具有188字节长度。另一方面,如图2的下侧 示图所示,在包括时戳的MPEG2-TS所包括的每个TS包均具有192
20个字节的长度,其包括形成附加至TS包的开头的时戳的4个字节。 类似于不包括时戳的MPEG2-TS,包括时戳的MPEG2-TS具有每个 均具有192个字节长度的多个连续的TS包。
图3示出了在通过时戳附加装置11执行的将时戳附加至初始 不包括时戳的MPEG2-TS的每个TS包的处理的描述中所参照的示 例性流程图。
在初始状态下,不包括时戳的MPEG2-TS已存储在存储器12 中。在步骤Sll中,CPU 13从存储器12中读出不包括时戳的 MPEG2-TS。随后,时戳附加装置11继续步骤S11至步骤S12的处理。
在步骤S12中,CPU 13将在步骤Sll中从存储器12读出的无 时戳MPEG2-TS提供给包分析单元14。然后,CPU 13将该处理置 于等待将由包分析单元14 ^是供的分析完成通知的状态。当乂人包分 析单元14中接收到分析完成通知时,时戳附加装置11继续步骤S12 至步艰《S13的处J里。
在步骤S13中,CPU 13 /人包分析单元14接收分析完成通知。 另夕卜,如上所述,CPU 13不4又乂人包分冲斤单元14 4妄收分才斤完成通知, 而且从不连续检测部18接收具有设定为1的不连续标识符的每个 属性TS包的位置信息。另外,CPU 13还从PCR检测部19接收具 有设定为1的PCR一flag的每个属性Ts包的位置信息和这样的每个 属性TS包的PCR^f直。
随后,时戳附加装置11继续步骤S13至步骤S14的处理。在 步艰《S14中,CPU 13的时间间隔计算部15基于由CPU 13从不连 续冲企测部18 4妾收的作为具有设定为1的不连续标识符的每个属性 TS包的位置信息的信息、由CPU13从PCR检测部19接收的作为具有i殳定为1的PCR—flag的每个属性TS包的位置〗言息的信息以及 由CPU 13,人PCR4企测部lSM妄^:的作为具有"i殳定为1的PCR_flag 的属性TS包的PCR值的每个值,来计算诸如每两个相邻TS包之 间的平均输入定时间隔的量。随后,时间间隔计算部15生成包括、
所计算的平均丰lr入定时间隔的时间间隔教:据。
随后,时戳附加装置11继续步骤S14至步骤S15的处理。在 步骤S15中,CPU 13通过系统总线17将由时间间隔计算部15生 成的时间间隔数据和从存储器12读出的无时戳MPEG2-TS提供给 时戳计算单元16。随后,CPU 13将该处理置于等待将由时戳计算 单元16提供的包括时戳的MPEG2-TS的状态。当通过时戳计算单 元16提供包括时戳的MPEG2-TS时,时戳附加装置11继续从步骤 S15至步-骤S16的处理。
在步骤S16中,CPU 13从时戳计算单元16接收包括时戳的 MPEG2-TS。随后,时戳附加装置11继续步骤S16至步骤S17的处理。
在步骤S17中,CPU 13在存储器12中存储在步骤S16中/人时 戳计算单元16接收的TS作为包括时戳的MPEG2-TS。最终,时戳 附加装置11结束由CPU 13执4亍的处理。
当CPU 13在步骤S12中4是供无时戳MPEG2-TS时,包分析单 元14在步骤S21中接收由CPU 13提供的无时戳MPEG2-TS。
随后,时戳附加装置11继续步骤S21至步骤S22的处理。在 步骤S22中,包分析单元14根据作为稍后描述的流程图的图4所 示的流程图来执行包分析处理,以分析不包括时戳的MPEG2-TS。 在包分析处理中,不连续检测部18获取具有设定为1的不连续标 识符的每个属性TS包的位置信息,而PCR检测部19获取具有设定为1的PCR一flag的每个属性TS包的位置信息和每个都具有i殳定 为1的PCR—flag的每个属'性包的PCR^f直。
随后,时戳附加装置11继续步骤S22至步骤S23的处理。在 步骤S23中,包分析单元14向CPU 13 ^是供分析完成通知、具有设 定为1的不连续标识符的每个属性TS包的位置信息、具有设定为 1的PCR一flag的每个属性TS包的位置信息以及每个都具有设定为 1的PCR—flag的每个属性TS包的PCR值。最终,时戳附加装置 11结束由包分析单元14 4丸行的处理。
另夕卜,在CPU 13执行上述处理的同时,在步骤S31中,时戳 计算单元16接收在步骤S15中由CPU 13^是供的无时戳MPEG2-TS
和时间间隔翁:才居。
随后,时戳附加装置11继续步骤S31至步骤S32的处理。在 步骤S32中,根据预先确定的7>式,时戳计算单元16通过使用在 步骤S31中从CPU 13接收的时间间隔数据来为每个TS包得到具 有典型4个字节长度的时戳。随后,为了生成如图2所示的包^"时 戳的MPEG2-TS,时戳计算单元16将为TS包计算的每个时戳附加 至在步骤S31中从CPU 13接收的无时戳MPEG2-TS所包括的TS 包。随后,时戳附加装置11继续步骤S32至步骤S33的处理。
在步骤S33中,时戳计算单元16通过系统总线17将在步骤S32 中生成的TS作为包括时戳的MPEG2-TS提供给CPU 13。最终,时 戳附加装置11结束由时戳计算单元16执行的处理。
图4示出了在图3所示流程图的步骤S22中由包分析单元14 执行的包分析处理的描述中所参考的示例性流程图。由包分析单元14对从CPU 13接收的用作处理对象的无时戳 MPEG2-TS的TS包按顺序执行包分析处理,如下从位于MPEG2-TS 开头的头部TS包开始。首先,在步骤S41中,包分析单元14生成 关于用作处理对象的TS包的PID是否是作为表示TS包包括PCR 以用作属性TS包的PID的PCR一PID的确定结果。
如果在步骤S41中由包分析单元14 4丸4亍的处理中生成的确定 结果表示用作处理对象的TS包的PID为PCR一PID,则包分坤斤单元 14继续步骤S41至步骤S42的处理。
在步骤S42中,包分析单元14生成关于在步骤S41 4丸行的处 理中确定为属性TS包的TS包(具有PCR—PID的TS包)是否包 括适配域的确定结果。如果在步骤S42中由包分析单元14执行的 处理中生成的确定结果表示具有PCR_PID的TS包包括适配域,则 包分析单元14继续步骤S42至步骤S43的处理。
在步骤S43中,不连续检测部18生成关于在步骤S42中由包 分析单元14执行的处理中确定为包括适配域的属性TS包的属性 TS包的适配域是否包括设定为1的不连续标识符的确定结果。
^口果在步-骤S43中由不连续4企测部18才丸4亍的处理中生成的确 定结果表示在步骤S42中执行的处理中确定为包括适配域的属性 TS包的属性TS包的适配域包括设定为1的不连续标识符,则包分 析单元14继续步骤S43至步骤S44的处理。
在步骤S44中,不连续检测部18获取具有包括设定为1的不 连续标识符的适配域的属性TS包的位置信息。例如,不连续4企测 部18通过对之前刚刚4全测为由PCR—PID识别的TS包的属性TS 包与具有包括设定为1的不连续标识符的适配域的属性TS包之间 的TS包数进行计数,来获取属性TS包的位置信息。随后,作为具有包括设定为1的不连续标识符的适配域的属性TS包的位置信息, 不连续才企测部18 4吏用之前刚刚才企测为由PCR一PID识别的TS包的 属性TS包与具有包括设定为1的不连续性识符的适配域的属性TS 包之间的TS包凄史。
随后,包分析单元14继续步骤S44至步骤S45的处理。如果 在步骤S43中由不连续才企测部18扭J亍的处理中所生成的确定结果 表示在步骤S42中执行的处理中确定的作为包括适配域的属性TS 包的属性TS包的适配域包括设定为除1之外的其它值,则包分析 单元14从步骤S43直接跳至步骤S45来继续处理。
在步骤S45中,PCR才企测部19生成关于在步骤S42中由包分 析单元14执行的处理中确定作为包括适配域的TS包的属性TS包 的PCR—flag是否为1的确定结果,这表示在属性TS包的适配域的 可选域中描述了 PCR值。如前所述,PCR_flag是用于表示在可选 域中是否描述了 PCR值的标记。
如果在步骤S45中由PCR才企测部19执行的处理中所生成的确 定结果表示包含在属性TS包中的PCR—flag (作为用于表示在属性 TS包的适配域的可选域中是否描述了 PCR值的标记)的值为l(这 表示在可选域中描述了 PCR值),则包分析单元14继续步骤S45 至步骤S46的处理。在步骤S46中,PCR检测部19从包含在属性 TS包中的适配域的可选域中提取PCR值。随后,包分析单元14 继续步骤S46至步骤S47的处理。
在步骤S47中,PCR才企测部19获取在步骤S45中由PCR检测 部19执行的处理中所确定的作为具有设定为1的PCR—flag值的属 性TS包的属性TS包的位置信息。例如,PCR^r测部19通过对预 先确定的作为具有设定为1的PCR—flag值的属性TS包的紧前属性 TS包与在步骤S45中由PCIU企测部19 4丸行的处理中所确定的作为
25具有设定为1的PCR—flag值的属性TS包的该属性TS包之间的TS 包数,来获取属性TS包的位置信息。随后,PCR检测部19使用 TS包数来作为在步骤S45中由PCR检测部19执行的处理中所确定 为具有设定为1的PCR一flag值的属性TS包的该TS包的典型位置信息。
随后,包分析单元14继续步骤S47至步骤S48的处理。如果 在步骤S41中由包分析单元14扭一f亍的处理中所生成的确定结果表 示用作处理对象的TS包的PID不是PCR_PID,则包分析单元14 从步骤S41直接跳至步骤S48继续处理。同理,如果在步骤S42中 由包分析单元14 4丸4亍的处理中所生成的确定结果表示具有 PCR一PID的TS包不包括适配域,则包分析单元14从步骤S42直 接跳至步骤S48继续处理。同样,如果在步骤S45中由包分析单元 14所采用的PCR检测部执行的处理中所生成的确定结果表示包含 在属性TS包中的PCR一flag (作为用于表示在属性TS包的适配i或 的可选域中是否描述了 PCR值的标记)的值不为1 (这表示在可选 域中没有描述PCR值),则包分析单元14从步骤S45直接跳至步 -骤S48继续处J里。
在步骤S48中,包分析单元14生成关于均包含在从CPU 13 接收的MPEG2-TS中的用作处理对象的所有TS包是否已被处理的 确定结果。例如,如果由包分析单元14从位于MPEG2-TS开头的 头部TS包开始顺序对TS包执行包分析处理,则包分析单元14生 成关于位于MPEG2-TS末端的尾部TS包是否已作为处理对象的确 定结果。
^口果在步艰爻S48中由包分才斤单元14才丸4亍的处J里中所生成的确 定结果表示不是所有TS包均包含在MPEG2-TS中,则包分析单元 14继续步骤S48至步骤S49的处理。在步骤S49中,包分析单元14将紧接用作当前处理目标的TS 包的TS包作为下一个处理对象。随后,包分析单元14从步骤S49 直接返回步骤S41继续处理,并对新对象重复相同处理。
另一方面,如果在步骤S48中由包分析单元14才丸行的处理中 所生成的确定结果表示均包含在从CPU 13接收的MPEG2-TS中的 用作处理目标的所有TS包均已经作为处理对象,则包分析单元14 结束处理。
参照图5的示图,下面的描述说明用于计算平均输入定时间隔 和时戳值所执行的处理。
图5是示出包括多个连续TS包的典型MPEG2-TS结构的示图。
在图5的示图中,通过斜线画出的每个TS包为由包分析单元 14确定为属性TS包的包,其PID为PCR—PID。如前所述,具有 PCR—PID的TS包是包括嵌入PCR以用作属性TS包的包。在图5 的示图所示的MPEG2-TS的情况下,8个属性TS包(即,属性TS 包PCR! ~ PCR8)的每一个都是包括嵌入PCR的属性TS包。例如, 我们假设用户编辑MPEG2-TS,以切除TS包a(在图5的示图中 示为由点绘出并被属性TS包PCR4和PCRs夹置的块)与在TS包a 之前最近的TS包之间的场景。因此,通过TS包a来表示场景切换。
由于如上所述在TS包a中发生了场景切换,所以在TS包a 之前最近的作为包括PCR的属性TS包的属性TS包PCR4的不连续 才示iK才寻^皮i殳定为1。
在图5的示图所示的典型MPEG2-TS中,在TS包a之后最近 的属性TS包PCR5的PCR—flag具有0值,意。木着在属性TS包PCR5 中不包括PCR值。因此,在TS包a之后最近的作为具有设定为1(表示在属性TS包中包括PCR值)的PCR_flag的属性TS包的第 一个属性TS包是属性TS包PCR6。由于如上所述在TS包a中发 生了场景切换,所以包含在属性TS包PCR6中的PCR值相对于包 含在属性TS包PCR4之前的每一个TS包中的PCR值以及相对于属 性TS包PCR4自身所包才舌的PCR ^f直不完全连续。注意,即4吏属'I"生 TS包PCR5是具有PCR—PID作为其PID的TS包,属性TS包PCR5 的PCI^flag也具有0值。因此,不连续标识符被设定为1。
如图5的示图所示,时间间隔计算部15将MPEG2-TS分割成 预先确定的多个处理块。对于每个处理块,时间间隔计算部15计 算每两个相邻TS包之间的平均输入定时间隔。在图5的示图所示 的典型MPEG2-TS中,时间间隔计算部15将MPEG2-TS分割成多 个处理块l^ Us。因此,对于各个处理块~U5,时间间隔计算 部15 i"l 隔。
例如,时间间隔计算部15基本上通过4吏用属性TS包来对两个 相邻的处理块划界。第一处理块U!包括在第一属性TS包PCR,之 前的TS包,而最后的处理块U5包括在最后的属性TS包PCRs后 面的TS包。
另外,具有设定为1的不连续标识符的属性TS包没有被用作 两个相邻处理块之间的定界符。如图5的示图所示,处理块U3包 4舌具有"&定为0的不连续标识符的属性TS包PCR3与^f立于属性TS 包PCR3之后位置的作为具有设定为0的不连续标识符的第一属性 TS包的属性TS包PCR6之间的多个TS包。
如上所述,乂于于处理块Ui-U5中的每一个,时间间隔计算部 15计算各个处理块中的每两个相邻TS包之间的平均ilr入定时间隔。
28例如,在包^"具有不连续标识符为0的属性TS包PCR!的第一 处理块Q的情况下,时间间隔计算部15基于属性TS包PCR!的 PCR值、在第 一处理块Q之后最近的属性TS包PCR2的PCR值以 及属性TS包PCR2的位置信息来计算第一处理块中每两个相邻 TS包之间的平均llr入定时间隔。以这种方式生成的时间间隔翁:才居 包4舌表示在^皮位于MPEG2-TS开头的头部TS包和属性TS包PCR^ 夹置的每两个相邻TS包之间的平均输入定时间隔,以及在纟皮属性 TS包PCRi和PCR2夹置的每两个相邻TS包之间的平均输入定时间 隔的均 一 的$lr入定时间隔。
另外,对于没有包括具有设定为1的不连续标识符的属性TS 包的中间处理块,时间间隔计算部15基于用作处理块的前定界符 的属性TS包的PCR值和在该处理块之后最近的属性TS包的位置 信息来找到处理块中每两个相邻TS包之间的平均输入定时间隔。 随后,时间间隔计算部15生成时间间隔凄t据。在第二处理块U2的 情况下,时间间隔计算部15基于前定界符属性TS包PCR2和属性 TS包PCR3的PCR值以及属性TS包PCR3的位置信息来得出第二 处理块U2中每两个相邻TS包之间的平均输入定时间隔。属性TS 包PCR3的位置信息是表示前定界符属性TS包PCR2与属性TS包 PCR3之间的TS包数的TS包计ltN2,其具有在属性TS包PCR2 和PCRo之间的多个TS包且包括属性TS包PCR2。同理,在第四 处理块U4的情况下,时间间隔计算部15基于前定界符属性TS包 PCR6和属性TS包PCR7的PCfU直以及属性TS包PCR7的位置信息 来得出第四处理块U4中TS包的时间间隔凄t据。
另外,时间间隔计算部15基于4立于处理块开头的前定界符属 性TS包的PCR值、位于前定界符属性TS包后的位置作为在从前 定界符属性TS包提取PCR值之后从中提取出PCR值的第一个属 性TS包的特定属性TS包的PCR值以及特定属性TS包的位置信息,来得到处理块中TS包的时间间隔数据。在第三处理块U3的情况下,
时间间隔计算部15基于前定界符属性TS包PCR3和特定TS包PCR4 的PCR值以及属性TS包PCR4的位置信息来得到在第三处理块U3 中TS包的时间分隔数据。特定属性TS包PCR4的位置信息是前定 界符属性TS包PCR3与特定属性TS包PCR4之间的TS包数,其具 有在属性TS包PCR3和PCR4之间的多个TS包且包4舌属性TS包 PCR3。以这种方式得到的时间分隔数据包括表示在被特定属性TS 包PCR4和在第三处理块U3之后最近的属性TS包PCR6夹置的每 两个相邻TS包之间的平均输入定时间隔以及在被前定界符属性TS 包PCR3和特定TS包PCR4夹置的每两个相邻TS包之间的平均输 入定时间隔的均 一的專命入定时间隔。
在第五处理^: U5的情况下,时间间隔计算部15基于处理块 U5的前定界符属性TS包PCR7的PCR值、最后属性TS包PCR8 的PCR值以及最后属性TS包PCR8的位置信息,来得到处理块U5 中TS包的时间分隔数据。最终属性TS包PCRs的位置信息是表示 前定界符属性TS包PCR7与最终属性TS包PCR8之间的TS包数的 TS包计数N5,其具有在属性TS包PCR7与PCR8之间的多个TS包 且包4舌属性TS包PCR7。以这种方式得到的时间间隔数据包括表示 在净皮最终属性TS包PCR8和位于MPEG2-TS末端的尾部TS包夹置 的每两个相邻TS包之间的平均输入定时间隔以及在被前定界符属 性TS包PCR7和最终属性TS包PCRs夹置的每两个相邻TS包之间 的平均4#入定时间隔的均 一 的l釙入定时间隔。
如上所述,PCR检测部19从属性TS包中才是取PCR值,并得 到每个属性TS包的位置信息。随后,时间间隔计算部15生成包括 基于PCR值和TS包计数所计算的平均输入定时间隔的时间间隔数据。由参考符号PCRn表示在第n个处理块Un中的属性TS包PCRn, 而参考符号Qn是对于图5的示图所示的典型MPEG2-TS表示在处 理块Un (n = 1 ~5)中在每两个相邻TS包之间的平均l俞入定时间 隔的整数。在这种情况下,通过如下等式(1)来表示平均输入定 时间隔Qn:
Qn =(PC/ +1—PCi )/iV (1)
在上面的等式中,参考符号Nn表示包含在时间间隔数据中的
作为第n个处理块Un中每两个相邻TS包之间的平均l餘入定时间隔
Qn的平均输入定时间隔Qn的计算中^t用作属性TS包PCRn+1的位
置信息的TS包计数。用参考符号Rn来表示通过用于得到第n个处
理块Un中的每两个相邻TS包之间的平均输入定时间隔Qn的等式
(1)的右手侧的表达式所表达的除法操作的余数。在这种情况下,
通过如下等式(2)来表示余数Rn。
i = (PC/ +1 _ PCi ) mod iV ( 2 )
等式(2)中的符号mod是得到作为将算子mod左手边的运算 数除以算子mod右手边的运算数的结果而获得的余数的运算的算 子。在等式(2)的情况下,算子mod左手边的运算数为差(PCRn+1 -PCRn),而算子mod右手边的运算凄丈为TS包计凄tNn。
用参考符号V咖]来表示在第n个处理块Un中的第m个TS包 的时戳值。
首先,在第一处理块U,中的第一TS包的时戳值V,被设定为 任意值。注意,第一处理块U!中的平均IIT入定时间隔Qi为(PCR2 - PCR4 ) /Ni,而第 一处理块的余数为(PCR2 - PCRi) modNi 。
31随后,根据如下等式(3)来计算第二处理块U2中的第一 TS 包的时戳值V2[1]。
<formula>formula see original document page 32</formula> (3)
等式(3)中所使用的参考符号C叫表示第一处理块Ui中的第 一TS包的时戳值V!w的进位(carry-over )。通过下面的等式(4) 表示进位Ci["。
<formula>formula see original document page 32</formula> (4)
注意,在n三2的情况下在每个处理块Un中的第一TS包的时 戳值Vnw的进位Q^ (即,在处理块U2和处理块U2后的处理块中 的每一个第一 TS包的时戳值V,的进位Cn[1])为0。另外,第二 处理块U2中的平均输入定时间隔Q2为(PCR3 - PCR2)/N2,而第二 处理块U2的余数R2为(PCR3-PCR2)modN2。
在n 2 3的情况下每个处理块Un中的第一 TS包的时戳值Vn[1] 通过如下等式(5)来表示
<formula>formula see original document page 32</formula> (5)
对于每个处理块,为了计算处理块Un中的平均l俞入定时间隔 Qn、处理块Un的余数Rn以及处理块Un中的第一 TS包的时戳值 Vn[1],时间间隔计算部15执行基于等式(1 ) ~ (5)的处理。随后, 时间间隔计算部15生成时间间隔数据,包括平均输入定时间隔Qn、 余数Rn以及时戳值Vn[1],并将时间间隔数据提供给时戳计算单元 16。基于由时间间隔计算部15生成的时间间隔数据,时戳计算单
元16能够将恰当的时戳附加至在位于MPEG2-TS开头的头部TS 包与从中提取了第一PCR值的第一属性TS包之间的每个TS包, 以及在/人中纟是耳又了最后的PCR值的最后的属性TS包与位于 MPEG2-TS末端的尾部TS包之间的每个TS包。在图5的示图所示 的典型MPEG2-TS的情况下,/人中提取了第一 PCR^f直的第一属性 TS包为属性TS包PCR,,而从中提取了最后的PCR值的最后属性 TS包为属性TS包PCR8。
此外,在时基改变的处理块(即,在图5的示图所示的 MPEG2-TS中包括TS包a的第三处理块U3中)的情况下,以与得 到平均输入定时间隔类似的方式来求得平均输入定时间隔。即,在 第三处理块U3中,均一的平均^T入定时间隔4皮用作在^皮属性TS包 PCR4和PCR6夹置的每两个相邻TS包之间的平均输入定时间隔, 以及在被属性TS包PCR3和PCR4夹置的每两个相邻TS包之间的 平均^T入定时间隔。因此,能够将正确的时戳附加至包含在第三处 理块U3中的每个TS包。换句话说,即使属性TS包PCR6的PCR 值显著大于(或即使显著小于)属性TS包PCR4的PCR值,也不 通过〗吏用属性TS包PCR3和PCR6的PCR值来计算第三处理块U3 中的每两个相邻TS包之间的平均输入定时间隔,而是通过使用属 性TS包PCR3和PCR4的PCR值来计算。因此,#1适当的均一平均 输入定时间隔彼此分开的每个时戳能够附加至包含在第三处理块 U3中的一个TS包。另外,在第三处理块U3的情况下,在平均l俞入 定时间隔的计算中使用属性TS包PCR4的位置信息(即,包括设定 为1的不连续标识符的属性TS包的位置信息,表示不适当的PCR 值不连续性)。如上所述,属性TS包PCR4的位置信息是位于属性 TS包PCR3和PCR4之间的TS包凄t。
如上所述,时间间隔计算部15将作为包4舌预定时戳4直的^t据 而产生的时间间隔数据4是供给时戳计算单元16,而时戳计算单元
3316使用时间间隔数据来导出包含在每个处理块中的用于每个TS包 的时戳值,并将时戳值附加至已经导出时戳的TS包。
对于(Cn[m"] + Rn)2Nn,通过等式(6)来表示包含在处理块
Un中的第m个TS包的时戳值Vn[m]。另一方面,对于(Cn[m —]+ R。) < Nn,通过等式(7)来表示包含在处理块Un中的第m个TS包的 时戳值Vn[m]。
^H=V']+e"+1 (6)
KW= (7)
对于(Cn[m —u + Rn) ^Nn,通过等式(8)来表示包含在处理块 Un中的第m个TS包的时戳值Vn岡的进位Cn[m]。另一方面,对于
(Cn[m—i] + Rn)〈Nn,通过等式(9)来表示包含在处理模块Un中的
第m个TS包的时戳值V咖]的进位Cn[m]。 C w —7V (8)
C,=C [m—(9)
但是,等式(6) ~ (9)的每一个对于m>2均有效。
时戳计算单元16使用从时间间隔计算部15接收的时间间隔数 据作为包括平均输入定时间隔Qn、余数Rn和预定时戳值V,的数 据,从而通过基于等式(6) ~ (9)执行计算处理来计算时戳值 Vn[m]。随后,时戳计算单元16将每个计算的时戳值Vn间附加至每 个均包含在在处理块Un中的一个第m个TS包。
如果不考虑进位Cn间而仅通过将平均输入定时间隔Qn与先前 的时戳值V咖]简单地相加来计算时戳值,则余数被累积,使得在计 算的时戳值与PCR值之间存在很大的差值。另一方面,通过考虑到 进位Cn[ml,能够将计算的时戳值与PCR值之间的差值最小化。具体而言,当进位C咖]大于TS包计数Nn时,根据等式(6),
对于进位Cn[m]大于TS包计数Nn的情况,通过将时戳值V咖]加1
来获取时戳值Vn[m]。另外,在进位C咖]大于TS包计数Nn的情况 下,根据等式(8),通过从进位Cn网中减去TS包计数Nn,就能够 防止时戳值与PCR值之间的差值大于1, 4吏得具有对TS包适当的 值的时戳可被分配至TS包。
另外,如等式(6) ~ (9)所示,时戳计算单元16的处理是 仅将进位与用于计算平均输入定时间隔的TS包计数进行比较、将 平均输入定时间隔与紧前的时戳值相加以及计算新的进位所执行 的处理。因此,如果石更件纟皮用于实现时戳计算单元16,则例如与用 于要求执行诸如除法的操作的处理的电路相比,硬件电路承担了很 小一部分计算。因此,通过特别少量的硬件就能实现时戳计算单元 16,并且可将时戳高速附加至它们各自的TS包。
即,如果通过硬件实现时戳计算单元16并且CPU 13执行软件 程序来计算包括诸如平均输入定时间隔、其余数和预定时戳值的量 的时间间隔凄t据作为时间间隔计算部15的功能,则时戳计算单元 16可用于4又将进位与用于计算平均输入定时间隔的TS包计婆t进4亍 比较、将平均输入定时间隔与紧前的时戳值相加以及计算新的进 位。以这种方式,通过在时戳计算单元16的硬件以及由CPU13执 行用于执行时间分隔计算部15的功能的软件中分配功能,能够高 效才丸行时间间隔计算部15和时戳计算单元16的功能。
另外,通过4吏用石更件实现时戳计算单元16,可以防止显著增加 CPU 13所承担的负荷。因此,即使在诸如石更盘记录器的装置中嵌 入CPU作为具有低处理性能的CPU的情况下,仍能够防止CPU完 全4皮装置的处理所占用。因此,与采用具有高处理性能的CPU来 解决由于将适当的时戳附加至每个TS包的处理而增加的负荷所引 起的问题的结构相比,能够降低诸如硬盘记录器的装置的成本。因此,通过执行将时戳附加至例如TV广播内容的各个TS包 的处理,能够在记录装置等中记录内容作为MPEG2-TS。随后,当 稍后将内容输出至家庭网络时,利用基于附加至TS包的时戳的输 入定时,将内容的TS包提供给解码器。因此,表示内容的MPEG2-TS 能够被正常再生,而不会干扰(破坏)内容的视频。即,即使用户 编辑由MPEG2-TS表示的内容,导致包含在MPEG2-TS中的PCR 值的不适当的不连续性,在编辑处理之后,也能够将正确的时戳附 加至MPEG2-TS的各个TS包,用作^f吏表示内容的MPEG2-TS #皮正 常再生的时戳。
在如上所述实现时戳附加装置11的实施例中,CPU 13从存储 器12中读出不包括时戳的MPEG2-TS,并将MPEG2-TS传递至时 戳计算单元16。然而,需要注意,CPU 13还可以为时戳计算单元 16提供在存储器12中存储MPEG2-TS的地址,随后,时戳计算单 元16从存储器12中读出MPEG2-TS。另夕卜,在这种情况下,时戳 计算单元16通过执行已知DMA (直接存储器存取)处理的操作而 将包括时戳的MPEG2-TS传输至存储器12。通过执行DMA处理, 可以缩短4丸行从存储器12中读出不包括时戳的MPEG2-TS并将包 括时戳的MPEG2-TS存回存4渚器12的整个处理所需的时间。
注意,包分析单元14不必非要向CPU 13提供在从中提取PCR 值的最后的属性TS包与位于MPEG2-TS末端的尾部TS包之间的 TS包数。在图5的示图所示的典型MPEG2-TS的情况下,最后的 属性TS包和位于MPEG2-TS末端的尾部TS包之间的TS包数为 TS包计^tN6。因此,包分析单元14不必非要向CPU 13提供TS 包计数N"这是因为CPU 13具有MPEG2-TS的长度信息,因此能 够从流长度中找到TS包计数N6。
另外,包分析单元14可以采用不连续检测部18作为硬件功能 块,并可以采用PCR检测部19作为与实现不连续4企测部18的硬件
36功能块物理分开的石更件功能块。作为选择,包分析单元14采用不 连续一全测部18和PCR4全测部19作为单个集成石更4牛功能块。在这种 情况下,PCR 4企测部19也能够生成关于TS包的PID是否为 PCR—PID的确定结果以及TS包是否包括适配域的确定结果。即, 构成单个集成^更件功能块,以4吏不连续4全测部18和PCR4企测部19 共享生成关于TS包的PID是否为PCR一PID的确定结果以及TS包 是否包4舌适配域的确定结果的功能。
通过如上所述^f吏不连续4企测部18和PCR 4企测部19共享生成 关于TS包的PID是否为PCR—PID的确定结果以及TS包是否包括 适配域的确定结果的功能,与分开的功能块分别实现生成TS包的 PID是否为PCR—PID的确定结果的功能以及生成TS包是否包4舌适 配域的确定结果的功能的结构相比,可将处理负荷减小至很小的数 量纟及。当然,也可以提供一种结构,其中,为不连续冲全测部18和 PCR检测部19分别提供生成TS包的PID是否为PCR—PID的确定 结果的功能以及生成TS包是否包括适配域的确定结果的功能。
如上所述,从中得到PCR值的特定属性TS包的位置信息是在 特定属性TS包之前最近的另一个属性TS包与特定属性TS包之间 的TS包数。然而,从中得到PCR值的属性TS包的位置信息也可 以是通过从MPEG2-TS的开头进行计数到属性TS包而得到的字节 数。作为选择,从中得到PCR值的属性TS包的位置信息通过从 MPEG2-TS的开头计数到属性TS包而得到的TS包数来表示。同理, 包括设定为1的不连续标识符的属性TS包的位置信息也可以是通 过从MPEG2-TS的开头计数到属性TS包而得到的字节数。作为选 择,包括设定为1的不连续标识符的属性TS包的位置信息通过从 MPEG2-TS的开头计数到属性TS包而得到的TS包数来表示。总之, 从中得到PCR值的属性TS包的位置信息必须通过对不连续检测部 18和PCR检测部19来i兌相同的量来表示。需要注意,在上述实施例中,CPU 13执行软件程序来执行时 间间隔计算部15的功能,而分开的硬件部则分别执行包分析单元 14和时戳计算单元16的功能。但是,也可通过在CPU 13中执行 软件程序来执行包分析单元14和时戳计算单元16的功能。
可通过执行硬件和/或软件程序来执行先前描述的处理的每个 序列。如果通过执行软件程序来执行上述处理序列,则构成软件的 程序可以通过图中未示出的网绍J人外部禾呈序供应商或者/人可移动 记录介质安装在嵌入专用硬件的计算机、通用个人计算机等中。通 用个人计算机是能够通过将各种程序安装在个人计算机中来执行 各种功能的个人计算机。
图6是示出用于为了执行先前描述的每个处理序列而执行程序 的计算机的典型硬件结构的框图。
如图6的冲匡图所示,在计算才几中,CPU (中央处理器)101、 ROM (只读存4诸器)102和RAM (随冲几访问存+者器)103通过总线 104 4皮此连4妄。
总线104还连接至输入/输出接口 105。输入/输出接口 105连接 至输入单元106、输出单元107、存储单元108和通信单元109。输 入单元106包括4定盘、鼠标和麦克风,而$俞出单元107包4舌显示单 元和扬声器。存储单元108包括硬盘或非易失性存〗渚器。通信单元 109为网络接口。输入/输出接口 105还连接至驱动器110,其上安 装有可移动记录介质111。可移动记录介质111可以为磁盘、光盘、 f兹光盘或半导体存储器。
在具有图6的框图所示的典型硬件结构的计算机中,CPU 101 通过执行通过输入/输出接口 105和总线104从存储单元108加载至 RAM 103中的程序来执行先前描述的每个处理序列。上述作为将由计算机执行的程序的、安装在计算机中用于记录
程序的可移动记录介质111是与具有图6的框图所示的典型硬件结
构的计算机的主单元分离而提供给用户的封装介质。可移动记录介
质111的实例包括诸如软盘的磁盘、诸如CD-ROM (压缩光盘-只 读存储器)或DVD (数字通用盘)的光盘、诸如MD (迷你盘)的 》兹光盘以及半导体存储器。替代/人可移动记录介质lll将程序安装 在存^f诸单元108中,禾呈序也可以祐:预先存4诸在计算才几主单元所包括「 的嵌入记录介质中。有线通信装置包括诸如LAN (局域网)和/或 互耳关网的网络,而无线通信装置4吏用凄t字卫星广才番。
当在驱动器110上安装可移动"i己录介质111时,可通过4lT入/ 输出接口 105将记录在可移动记录介质111上的程序安装在存储单 元108中。如上所述,代替将程序乂人可移动记录介质111安装在存 储单元108中,程序也可由外部程序供应商安装在存储单元108中。 在这种情况下,程序通过有线或无线通信装置及通信单元109从外 部程序供应商下载到存4诸单元108中。此外,如上所述,^替将考呈 序从可移动记录介质lll或外部程序供应商安装到存储单元108中, 禾呈序也可以预先存4诸在计算才几主单元所包4舌的嵌入记录介质中。嵌 入记录介质的实例为包含在存储单元108和ROM 102中的硬盘。
注意,在本i兌明书中,不4又可以以流程图预先失见定的顺序作为 沿时间轴的顺序来执行上述流程图的每个步骤,而且能够并行处理 或在面向对象的处理中分别执行。另外,不仅可通过一个CPU执 行每个程序,而且能够通过所谓分散处理中的多个CPU来执4亍。
注意,本发明实施例的实现不限于上述实施例。即,只要改变 在不偏离本实施例宗旨的范围内,就能够以多种方式来l奮改实施例。
权利要求
1. 一种时戳附加装置,被配置为将时戳附加至包括在MPEG2-TS(运动图像专家组2传输流)中的多个TS(传输流)包的每一个,以用作表示将各个TS包提供给用于对所述MPEG2-TS进行解码的解码器的输入定时的时戳,所述时戳附加装置包括不连续检测部,被配置为在TS包的适配域中所包括的不连续标识符表示采用预先确定的系统时钟频率作为基准的PCR(节目时钟基准)不完全连续的情况下,获取包括所述不连续标识符的所述TS包的位置信息;PCR检测部,被配置为在TS包包括适配域并且所述TS包的所述适配域包括PCR的情况下,提取嵌入在所述TS包的所述适配域中的所述PCR的值,并获取包括所嵌入PCR的所述TS包的位置信息;时间间隔计算部,被配置为通过使用由所述不连续检测部获取的作为包括被描述为表示所述PCR不完全连续的不连续标识符的不连续标识符的特定TS包的位置信息的信息、使用由所述PCR检测部提取的作为PCR值的值以及使用由所述PCR检测部获取的作为包括所嵌入PCR的特殊TS包的所述位置信息的信息,来计算每两个相邻TS包的所述输入定时之间的平均输入定时间隔;以及时戳计算部,被配置为基于每两个相邻TS包的所述输入定时之间的平均输入定时间隔计算所述TS包的每一个的所述输入定时,并将所述时戳附加至所述TS包的每一个,以用作表示所述TS包的所述输入定时的时戳。
2. 根据权利要求1所述的时戳附加装置,其中,通过时间间隔计算部,每两个相邻的均被特殊TS包和在所述特殊TS包之后最近的特定TS包夹置的TS包之间的平均^r入定时间隔基于所述特定TS包的位置信息来计算,并^皮所述时间间隔计算部用 作每两个相邻的^皮所述特殊TS包和在所述特定TS包之后最 近的另一特f朱TS包夹置的TS包之间的平均l命入定时间隔, 所述特定TS包被插入其中,所述特定TS包是包括表示所述PCR不完全连续的不连 续标识符的TS包,所述特殊TS包和所述另 一特殊TS包的每一个均为包括 所述PCR的TS包。
3. 根据权利要求1所述的时戳附加装置,其中,通过所述时间间 隔计算部,基于乂人两个特殊TS包中4是取的PCR值来计算每两个相 邻的包括所嵌入PCR的TS包之间的平均输入定时间隔;基于/人第一个特殊TS包拔:耳又的PCR值和,人在所述第一 个特殊TS包之后最近的另一特殊TS包提取的PCR值,来计 算^皮夹置在位于所述MPEG2-TS开头的头部TS包和所述 MPEG2-TS的所述第一个特歹朱TS包之间的每两个相邻TS包 之间的平均$俞入定时间隔;以及基于,人最后一个特殊TS包纟是取的PCR值和从在所述最 后一个特殊TS包之前最近的又一特殊TS包提取的PCR值, 来计算^皮夹置在所述MPEG2-TS的最后一个特殊TS包和位于 所述MPEG2-TS末端的尾部TS包之间的每两个相邻TS包之 间的平均l叙入定时间隔;所述第一个特殊TS包、所述另一特殊TS包、所述最后 一个4争^朱TS包以及所述又一4争 朱TS包的每一个均为包4舌所 述PCR的TS包。
4. 根据权利要求1所述的时戳附加装置,其中,所述TS包的每 一个均具有用于识别所述TS包的PID (包标识符),并且所述 PCR 4全测部才丸4亍以下步骤分析PAT (节目关联表),以对所述PAT进行查找来得到 其他TS包的PID,其中,所述PAT是包4舌其j也TS包的PID 的PAT,而该其他TS包包括作为所述TS包的PID列表的PMT (节目映射表);分析包4舌在由所述其4也TS包的所述PID识别出的所述其 他TS包中的所述PMT,以对所述PMT进行查找来得到包括 所嵌入PCR的属性TS包的PID;生成关于由包括所嵌入PCR的所述属性TS包的所述PID 识别出的TS包是否包括适配域的确定结果;以及分析;波确定为由所述确定结果表示的包括所述适配域的 属性TS包的TS包,以从所述适配域中提取所嵌入PCR的值, 并获耳又包括所嵌入PCR的所述属性TS包的位置信息。
5. 根据权利要求4所述的时戳附加装置,其中,所述不连续检测 部分析^皮确定为包4舌由所述PCR 4企测部生成的所述确定结果 所表示的适配域的属性TS包的TS包,以获取包括示出所述 PCR不完全连续的所述不连续标识符的所述属性TS包的位置 ,自、
6. 根据权利要求1所述的时戳附加装置,其中所述PCR 一企测部获耳又第一个特殊TS包的位置信息、最 后一个特殊TS包的位置信息或在所述第一个特殊TS包和所 述最后一个特殊TS包之间的任意中间特殊TS包的位置信息;所述第 一个特殊TS包的所述位置信息是位于开头的头部 TS包与所述第一个特殊TS包之间的TS包数;所述中间特殊TS包的所述位置信息是在所述中间特殊 TS包之前最近的4争歹朱TS包与所述中间4争歹木TS包之间的TS 包数;所述最后一个特殊TS包的所述位置信息是所述最后一个 特殊TS包与位于末端的尾部TS包之间的TS包数;所述第一个特殊TS包、所述中间特殊TS包以及所述最 后一个特殊TS包的每一个均为包括所述PCR的TS包;并且由所述不连续检测部获取的作为特定TS包的位置信息的 信息是在所述特定TS包之前最近的特殊TS包与所述特定TS 包之间的TS包凄t;所述特定TS包是包括表示所述PCR不完全连续的不连 续标识符的TS包,另 一方面,所述特殊TS包是包括所述PCR 的TS包。
7. 根据权利要求1所述的时戳附加装置,其中由所述PCR检测部获取的作为包括所述PCR的特殊TS 包的所述位置信息的信息是所述MPEG2-TS的开头与包纟舌所 嵌入PCR的所述特殊TS包之间的字节凄t,或者是所述 MPEG2-TS的开头与所述特殊TS包之间的TS包数;以及由所述不连续;险测部获取的作为包4舌表示所述PCR不完 全连续的不连续标识符的特定TS包的所述位置信息的信息是所迷MPEG2-TS的开头与所述特定TS包之间的字节ft或所述 MPEG2-TS的开头与所述特定TS包之间的TS包数。
8. —种时雀乂附加方法,用于将时戳附加至多个TS包的每一个,解码器的输入定时的时戳,所述时戳附加方法包括以下步骤在包括在TS包的适配i或中描述的不连续标识符的所述 TS包表示采用预先确定的系统时钟频率作为基准的多个PCR (节目时钟基准)不完全连续的情况下,获取所述TS包的位 置信息;在TS包包括所述适配域并且所述TS包的所述适配域包 括嵌入PCR的情况下,提取所述TS包的PCR的值,并获取 包括所述嵌入PCR的所述TS包的位置信息;通过4吏用包括表示所述PCR不完全连续的不连续标识符 的特定TS包的位置信息、使用PCR的值以及使用包括所述 嵌入PCR的特 朱TS包的所述位置信息,来计算每两个相邻TS包的所述iir入定时之间的平均ilr入定时间隔;以及基于以每两个相邻TS包的所述时间间隔计算出的所述平 均输入定时间隔来计算所述TS包的每一个的所述输入定时, 并将所述时戳附加至所述TS包的每一个,以用作表示所述 TS包的所述输入定时的时戳。
9. 一种时戳附加程序,由计算机执行,用于执行将时戳附加至多 个TS包的每一个的处理,以用作表示将各个TS包^是供《会用 于对MPEG2-TS进行解码的解码器的输入定时的时戳,其中, 所述处理包4舌以下步骤在包括在TS包的适配域中描述的不连续标识符的所述 TS包表示采用预先确定的系统时钟频率作为基准的多个PCR(节目时钟基准)不完全连续的情况下,获取所述TS包的位 置信息;在TS包包括所述适配域并且所述TS包的所述适配域包 括嵌入PCR的情况下,提取所述TS包的PCR的值,并获取 包4舌所述嵌入PCR的所述TS包的位置信息;通过4吏用包括表示所述PCR不完全连续的不连续标识符 的特定TS包的位置信息、使用PCR的值以及<吏用包4舌所述 嵌入PCR的特殊TS包的所述位置信息,来计算每两个相邻 TS包的所述输入定时之间的平均输入定时间隔;以及基于以每两个相邻TS包的所述时间间隔计算出的所述平 均输入定时间隔来计算所述TS包的每一个的所述输入定时, 并一寻所述时戳附加至所述TS包的每一个,以用作表示所述 TS包的所述输入定时的时戳。
10.—种时戳附加装置,^皮配置为将时戳附加至包4舌在MPEG2-TS (运动图像专家组2传输流)中的多个TS (传输流)包的每 一个,以用作表示将各个TS包提供给用于对所述MPEG2-TS 进行解码的解码器的输入定时的时戳,所述时戳附加装置包括不连续4企测装置,用于在TS包的适配域所包括的不连续 标识符表示采用预先确定的系统时钟频率作为基准的PCR (节目时钟基准)不完全连续的情况下,获取包括所述不连续 标识符的所述TS包的位置信息;PCR 4企测装置,用于在TS包包括适配域并且所述TS包 的所述适配域包括PCR的情况下,纟是耳又嵌入在所述TS包的 所述适配域中的所述PCR的值,并获取包括所嵌入PCR的所 述TS包的位置信息;时间间隔计算装置,用于通过使用由所述不连续检测装置获耳又的作为包括一皮描述为表示所述PCR不完全连续的不连 续标识符的不连续标识符的特定TS包的位置信息的信息,使 用由所述PCR检测装置提取的作为PCR值的值以及使用由所 述PCR检测装置获耳又的作为包括所嵌入PCR的特殊TS包的 所述位置信息的信息,来计算每两个相邻TS包的所述输入定 时之间的平均llT入定时间隔;以及时戳计算装置,用于基于每两个相邻TS包的所述输入定 时之间的平均输入定时间隔计算所述TS包的每一个的所述输 入定时,并将所述时戳附加至所述TS包的每一个,以用作表 示所述TS包的所述输入定时的时戳。
全文摘要
本发明公开了时戳附加装置、时戳附加方法及程序,用于将时戳附加至包括在MPEG2-TS(运动图像专家组2传输流)中的多个TS(传输流)包的每一个,以用作表示将各个TS包提供给用于解码MPEG2-TS的解码器的输入定时的时戳,该时戳附加装置包括不连续检测部、PCR检测部、时间间隔计算部和时戳计算部。通过本发明,能够将时戳附加至MPEG2-TS的每个TS包,以用作使MPEG2-TS正常再生的时戳。
文档编号H04N7/08GK101505417SQ200910006240
公开日2009年8月12日 申请日期2009年2月6日 优先权日2008年2月8日
发明者小森谷阳多 申请人:索尼株式会社