CN1108698C - 一种用于处理传输数据流的方法及装置 - Google Patents
一种用于处理传输数据流的方法及装置 Download PDFInfo
- Publication number
- CN1108698C CN1108698C CN97103739A CN97103739A CN1108698C CN 1108698 C CN1108698 C CN 1108698C CN 97103739 A CN97103739 A CN 97103739A CN 97103739 A CN97103739 A CN 97103739A CN 1108698 C CN1108698 C CN 1108698C
- Authority
- CN
- China
- Prior art keywords
- data
- decoder
- processor
- transport
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4305—Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/423—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/24—Systems for the transmission of television signals using pulse code modulation
- H04N7/52—Systems for transmission of a pulse code modulated video signal with one or more other pulse code modulated signals, e.g. an audio signal or a synchronizing signal
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Television Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
接收和处理使用MPEG-2格式的传输数据流的传输解码器包括:与物理层通道接口的连接,缓冲存储器,主微处理器,音频和视频解码器,时钟信号电路。收到不连续性指示位时对传输包首部进行语法分析并将有效部分存于存储器。收到下一程序计数器参考(PCR)值时将其载入计数器。在存储器内搜索时间标记,若发现则将其恢复。在时间标记值前约一帧时刻设置定时器中断,该中断发生时,程序计数器参考值被送往解码器,为解码器提供足够数据处理时间。
Description
本发明涉及根据MPEG-2标准编码的数据进行数据接收、处理、及传输,具体来说,本发明涉及处理MPEG-2格式数据流的传输解码器的操作和接口。
高清晰度电视(HDTV)在试图替代传统的电视机方面继续取得进展。多家公司和协会正努力制定多种标准以供应HDTV的全球市场,从而为这种进展铺平道路。
其中有一个公司集团又被称为“数字高清晰度电视大联盟”,它包括AT&T、David Sarnoff研究中心、麻省工学院和其他一些机构。RobertHopkins在1994年夏季的《消费者电子IEEE交易》上发表了一篇以“北美数字陆地高清晰度电视:大联盟高清晰度电视系统”为名的文章,全面概述了该集团的长足进步。在此将引用该文章关于HDTV系统的背景和基础知识方面的教导以供参考,其中包括对程序和传输包流的使用。
大联盟采用由国际标准组织(ISO)下属的动态图像专家组(MPEG)开发的MPEG-2标准对视频和音频信息进行编码。被接受的标准定期发表在下列刊物上:动态图像和相关音频ISO/IEC 13818-2(1995年)的通用编码:信息工程的视频部分(下文简称为“视频部分”),动态图像和相关音频ISO/IEC 13818-1(1994年11月)的信息工程的系统部分(下文简称为“系统部分”)。在此将引用二者关于已建立的标准和格式方面的教学资料以供参考。
MPEG-2标准的语法定义了几种数据记录层,用来传送音频和视频数据。例如,为了传输信息,一个表示多视频序列的数字数据流被分为多个较小的单元。每个单元被分别封装成多个打包的基本流(PES)包中。为了传输需要,每一个打包的基本流包被依次分割成多个定长传输包。每个传输包包含的数据只与一个打包的基本流包有关。传输包还包括一个首部,其中带有控制信息,有时也包括适应字段子段,用于对传输包解码。然而,打包的基本流数据也可能包括多种基本流。
正如在系统部分所述,多种基本流之间的同步是通过定期在数据流中提供时间标记实现的。例如,N个基本流的解码是通过将流的解码校正到一个通用主时基的方式实现的,而不是调整一种流的解码以适应另一种流的解码。主时基可能是N个解码器中某一个的时钟信号,或者是数据源的时间信号,还可能是一个外部提供的时钟信号。
为了有助于该同步处理,MPEG-2标准的传输首部中还包括一个不连续性指示位。系统部分提供了一种语法表示以显示一个典型的“不连续性指示位”在传输首部中的位置。该语法在以下的表1中有具体描述。
表1
传输流适应字段语法 位数 助记码adaptation_field(){adaptation_field length 8 imsbf
if(adaptation_field_length>0){
discontinuity_indicator 1 bslbf
random_access_indicator 1 bslbf
elementary_stream_priority_indicator 1 bslbf
PCR_flag 1 bslbf
OPCR_flag 1 bslbf
splicing_point_flag 1 bslbf
transport_private_data_flag 1 bslbf
adaptation_field_extension_flag 1 bslbf
if(PCR_flag==‘1’){
program_clock_reference_base 33 uimsbf reserved 6 bslbfprogram_clock_reference_extension 9 uimsbf}if(OPCR_flag=‘1’){original_program_clock_reference_base 33 uimsbfreserved 6 bslbforiginal_program_clock_reference_extension 9 uimsbf}if(splicing_point_flag=‘1’){splice_countdown 8 tcimsbf}if(transport_private_data_flag=‘1’){transport_private_data_length 8 uimsbffor(i=0;i<transport_private_data_length;i++){
private_data_byte 8 bslbf}}if(adaptation_field_extension_flag=‘1’){adaptation_field_extension_length 8 uimsbfltw_flag 1 bslbfpiecewise_rate_flag 1 bslbfseamless_splice_flag 1 bslbfreserved 5 bslbfif(ltw_flag=‘1’){
ltw_valid_flag 1 bslbf
ltw_offset 15 uimsbf
}if(piecewise_rate_flag=‘1’){
reserved 2 bslbf
piecewise_rate 22 uimsbf}if(seamless_splice_flag=‘1’){
splice_type 4 bslbf
DTS_next_au[32..30] 3 bslbf
marker_bit 1 bslbf
DTS_next_au[29..15] 15 bslbf
marker_bit 1 bslbf
DTS_next_au[14..0] 15 bslbf
marker_bit 1 bslbf
}
for(i=0;i<N;i++){
reserved 8 bslbf
}
}
for(i=0);i<N;i++){
stuffing_byte 8 bslbf
}
}}
如系统部分中所述,不连续性指示位在传输首部内的适应字段中。不连续性指示位是一个1位的字段,设为逻辑值“1”时,表示当前的传输流包的不连续性状态为真。当不连续性指示位设为逻辑值“0”或不存在时,不连续性状态为假。不连续性指示位用于表示下列两种不连续性状态:系统时基不连续和连续性计数器不连续。
通过在被指定为程序时钟参考(Program Clock Reference-PCR)程序标识的传输流程序标识(PID)中使用不连续性指示位,可以指示系统时基的不连续性(参见系统部分第50页的2.4.4.9)。接下来,可以接收到一个程序时钟参考(PCR)值(即所谓主时钟信号)。
例如,当使用一个时基记录的节目材料被插入采用另一个时基记录的数据流中时,设定不连续性指示位。时基中的差别表现为一个不可知的程序时钟参考(PCR)值。
当一个被指定为PCR程序标识的程序标识的传输流包的不连续状态为真时,使用同一个程序标识的传输流包中下一个PCR表示相关节目的新系统时间时钟取样。当包括一个新系统时基的PCR的包的第一个字节到达系统目标解码器(STD)的输入端时,系统时基不连续点被定义为这个时刻。
值得注意的是:系统目标解码器在先有技术中广为人知,简而言之,它是表示一个在概念上与传输编码器的输出端相连的假定解码器。要求的条件是符合MPEG-2标准的数据流不会引起系统目标解码器的数据溢出问题(其中包括缓冲区溢出)。对系统目标解码器的其他讨论在系统部分给出。
紧接着,在传输流包中不连续指示位也可能被置为“1”。这些传输包都属于包含新的系统时基PCR的包的前一个程序时钟参考程序标识。在这种情况下,一旦不连续性指示位被置为“1”,在同一个程序PCR标识的所有传输流包中它都被置“1”,该程序PCR标识符合和包括包含新系统时基的第一个PCR的传输流包。当系统时基的不连续性发生时,新的系统时基的不少于两个PCR在另一个系统时基不连续性发生之前被接收。进一步来说,除非欺骗模式状态为真,否则来自不多于两个系统时基中的数据会在任意时间出现在一个程序的系统目标解码器缓冲区中。
当时基不连续性要求更新多系统时间常数(STC)值时(即在传输解码器的时钟管理器和在外部的视频和音频解码器中),特别是当等待时间可能存在于正被外部解码器解码的数据和正被接收并储存在传输解码器的缓冲区中的数据之间时。换句话说,典型的情况是一个传输解码器与外部的视频和音频解码器耦合,后者中每一个都保存一个STC或等价的值。因此,当系统时基发生改变时,同时校正所有的STC值就可能引发系统的同步问题。
考虑到这个因素,本发明所要解决的一个重要问题在于传输解码器怎样才能有效地处理缓冲器和解码器之间的系统时基不连续性问题。
本发明包括一个用于接收传输数据流的系统,该数据流包括具有不连续性指示位的首部和有效内容的传输包。该系统至少包括一个缓冲存储器和一个外部解码器,前者用于临时储存接收到的传输数据流,后者用于解码来自缓冲区的数据输出以供显示之用。本发明用于处理对不连续性指示位的接收,其手段是通过接收到不连续性指示位后对传输包的首部进行语法分析,以及将传输包的有效内容存入存储器。一旦接收到下一个程序计数器参考值,一个计数器中就会装入接收到的程序计数器参考值。然后在储存的数据中搜寻时间标记,一旦发现,就检索该时间标记。最后,基于已检索到的时间标记为某一个时间点设置一个定时器中断,并且当定时器中断发生时,将程序计数器参考值送往解码器,同时向解码器提供新时间标记值不充分时间,使之能处理含有新的时基的数据,而无需干扰对含有前一时基的数据的处理。
图1A示出了一个典型的数字传输解码器及其各种接口的高级功能框图。
图1B示出了一个高级流程图,描述了采用图1A所示的实施例时本发明的一个方面采取的步骤。
图2A示出了图1A所示的传输解码器的典型实现的高级功能框图。
图2B示出了图1A所示的传输解码器的典型实现的高级数据/控制流程框图。
图3示出了图2所示的传输解码器中使用的存储器控制器的功能框图。
图4示出了用以描述存储器控制器如何处理指针FIFO项的典型流程图。
图5A示出了在本发明的视频解码器接口部分执行的步骤的典型流程图。
图5B示出了在本发明的音频解码器接口部分执行的步骤的典型流程图。
概述
如上文所述,本发明的一个重要方面在于解决传输解码器如何高效地处理不连续性指示位的问题。本发明的另一个重要方面在于处理传输解码器和仅能处理基本流数据的视频解码器之间的接口问题。另外,本发明还有一个方面涉及传输解码器和位速率限制音频解码器之间的接口问题。为了全面介绍以上的各个方面,本发明包括一个特别设计的MPEG-2传输解码器。
如果一个节目使用MPEG-2格式通过卫星向全国的多个接收站播放,一个时基不连续的实例就出现了。这就是为介绍本发明的不连续性部分提供的具体环境。但是,在节目播出的过程中,每个接收站会加入自己的商业广告节目。在这种情况下,应设置一个不连续性位来指示节目时基中的空白或间断,以便于自己拥有本地时基的商业广告的插入。
然而,当各个接收站插入各自的节目时,来自卫星的节目传输并不会中断。由此可知,当遇到不连续性指示位时,接收来自本地接收站并带有插入广告内容的节目的传输解码器的内部定时会跟踪适当的时基。
再看看附图,图1A示出了一个典型的数字传输解码器110的高级功能框图以及各种接口。如图1A所示,传输解码器110包括与以下各部分的连接:物理层通道接口(又叫通道接口)112、缓冲存储器114、主微处理器116、外部视频和音频解码器118和120以及时钟信号电路(例如VCXO)122。在本发明的典型实施例中,传输解码器110支持一个视频接口和多达两个音频接口(例如,音频接口A和B)。
处于传输解码器110外部的主微处理器116也通过微总线24与视频和音频解码器118和120耦合。这种连接可以使用并行或串行数据路径,并根据被选择使用的单个外部解码器的要求而变化。在任何情况下,将主微处理器116和外部解码器连接起来的方法都是众所周知的,同时也为拥有普通技艺的人员所理解。
一般来说,传输解码器110和每个外部视频和音频解码器118和120都包括一个的系统时间常数(STC)值(图中未给出)。该值储存在寄存器或计数器中用于使接收到的数据流的解码和显示同步。
如上所述,当时基不连续在数据流中发生时可能出现问题,而且这种不连续要求STC值在传输解码器110和视频及音频解码器118和120中同时更新。特别容易发生问题的时间是当等待时间可能存在于正被外部解码器解码的数据和正被接收并储存在传输处理器110中的数据之间时。
在本发明中,微处理器116在控制数据流的同步和视频及音频解码器118和120的运作方面起着十分重要的作用。在本发明中,微处理器116对传输解码器110中的多个芯片寄存器能进行直接的存储器映射式存取。微处理器116还能通过读、写、和水印指针对外部存储器114内的缓冲区和芯片上32位可读写FIFO(如图3中所示)进行存取。微处理器116通过一个内部微总线223(如图2B所示)与多个内部功能块连接,从而允许各种事件和错误状态通过可屏蔽中断用信号发出。
一般来说,如图1B所示的流程图中,本发明的一个方面通过特别设计的传输解码器110在接收到不连续性指示位(步骤150)后执行以下步骤:
1)由于不连续性指示位不必和下一个程序时钟参考值(PCR)处于同一个数据包中,所以当下一个程序时钟参考值被接收后,位于传输解码器110中的时钟管理电路(如图2A中所示)内的计数器中将装载下一个程序时钟参考值(PCR)(步骤152);
3)在经过语法分析并存储在存储器中的后续包中搜索时间标记,一旦找到某一个,则将检索时间标记值(步骤154);
4)由微处理器116在某个时间点设置定时器中断,该时间点只比检索的时间标记值提前不到一帧的时间(步骤156);而且
5)当定时器中断发生时,当前STC值被送往外部视频和音频解码器118和120(步骤158),从而给外部解码器足够的时间以抢在数据流中的时间标记值与保存在视频或音频解码器118或120中的计数器值进行比较之前处理数据。
下文将详细介绍这些高级步骤的执行情况。
图2A和图2B示出了图1A所示的传输解码器110的典型执行过程的高级功能框图。下文参照图2A和2B,介绍传输解码器110中的总体数据流动情况。
如图所示,图1A的通道接口112与通道数据处理器(CDP)210相连。通道接口112还向NRSS接口212提供数据,以便用NRSS智能卡230加密。在此特结合NRSS委员会(4/95)的条件存取EIA标准2.6版关于NRSS智能卡的论述以为参考。
通道数据处理器210被提供用于预处理(如检测、同步、确认等)所接收数据流中的包。处理完毕后,通道数据处理器210将输出数据发送到传输处理器(TPROC)214中供进一步处理之用。传输处理器214根据下文详细描述的程序标识表进行多种处理,例如语法分析等。
传输处理器214与传输解码器110中的多个功能块进行交互。这些功能块包括:存储器控制器216、时钟管理器218,个人数据处理器220和高速数据端口222。如上所述,微处理器116能对多个芯片寄存器直接存取。这种存取是通过微接口217和内部微总线223(如图2B所示)获得的。存储器控制器216除了与传输处理器214连接外,还与外部存储器114和视频及音频解码器(224、226和228)相连。
现在介绍一下与单个功能块有关的数字数据流的处理细节。通道数据处理器(CDP)210
值得指出的是来自通道接口112中的数据流经过可能的缓冲后(图中未给出)被送往通道数据处理器210。
通道数据处理器210对接收到的数据流执行多种预处理步骤。具体来说,通道数据处理器210决定数据流中字节和帧的边界,并将接收到的数据流转换为8位的并行格式。在本发明的典型实施例中,在通道数据处理器210后在传输解码器110中进行的操作使用字节格式进行。
为了确定字节和帧的边界,通道数据处理器210与传输包首部包含的帧模式同步。具体来说,这种同步是通过搜索MPEG-2的传输流同步字节(sync_byte)(例如:47H)并确认它在可编程数目的连续传输包开始处发生而实现的。
在此过程中,通道数据处理器(210)核对同步字节,将数据流锁定并继续确认包。当同步位的搜索在进行中时,在CDP状态寄存器中设置搜索状态位(Search_State)(图中未给出)。一旦发现了同步字节并且对连续发生的确认在进行之中,同步状态位(Sync_State)就设定了。最后,当符合预先确定的搜索标准时,设定锁定状态位(Lock_State)。在本发明的典型实施例中,搜索标准是三个连续的确认过的包。同样,指示带有损坏同步位的包数目的同步滞后值被设定。对通道数据处理器210编程使这些同步位在宣布损失锁定状态之前就能通过。当这个滞后值被超过时,锁定的损失被宣布。通道数据处理器210然后发出一个锁定损失中断并且从锁定状态过渡回搜索状态。
另外,如果通道接口112(如图1A所示)提供一个CHPSTRT信号,传输解码器110可能被设置以使用此信号作为一种手段来与数据流同步,方法是将通道数据处理器帧和同步控制寄存器中的帧模式位(Framing_Mode)设为逻辑值“1”。在此情况下,当CHPSTRT被确定后,在一个传输包时间内可获得同步。
另一种情况是,如果通道数据处理器帧和同步控制寄存器中的忽略同步位被置为逻辑值“0”,则通道数据处理器210在相对于CHPSTRT信号过渡过程的预定字节(第一个字节)处校验同步位的完整性,并当校验失败时宣布锁定状态。如果忽略同步(Ignore-Sync)设置为“1”,则通道数据处理器210不校验同步的完整性。
取得了锁定状态后,通道数据处理器210的输出被传输到传输处理器214并由其进行处理,后者以字节的格式对数据进行处理(例如,过滤、语法分析、格式化等)。传输处理器(TPROC)214
由传输处理器214产生的信号控制数据流动去往:存储器控制器216、微接口217、时钟管理器218、个人数据处理器220、和高速数据端口220。
在本发明的典型实施例中,传输处理器214在程序标识表的控制下处理数据流。如系统部分所述,一个程序标识是传输流首部中一个13位的字段,表明存储在包有效数据中的数据类型。一些程序标识值被分配,另一些则被保留。程序标识表的另一些细节在上文提到的MPEG-2规范中的系统部分的3.3节给出。
根据程序标识表,传输处理器214能同时处理多达32个用户可选择的程序标识。传输解码器110所处理的程序标识在程序标识表中均有规定。程序标识表中的位字段指定了各种数据处理选项。
在操作过程中,程序标识由传输处理器214从刚刚到达的传输包的首部中抽取出来,并同时与程序标识表中的所有项目比较。一旦发生匹配,就根据匹配程序标识表项中设定的选项对包中的数据进行处理。如果程序标识表项没有匹配的,就放弃该包。
有效部分格式位没有设定为放弃(000)的程序标识表中每一个地址都与一个通道号相连。存储器控制器216与传输处理器214相连,负责向RAM中特定的缓冲区(通道)传输数据。关于存储器控制器216的操作问题在下文中与图2、3、4有关的部分具体讨论。
在本发明的典型实施例中,保存于传输处理器214中的程序标识表由微处理器116在初始化过程中通过微总线223利用软件设置。
关于程序标识表项的格式,除了其他信息外,一个程序标识表项还包括:1)一个13位的程序标识,和2)一个1位的PCR程序标识字段。后者一旦设定,就表明对于被解码的程序来说,此程序标识带有PCR。一个典型的程序标识表项还包括一个1位的打包的基本流HDR位,它一旦设定,就使得与打包的基本流首部中的“流标识”对应的RAM缓冲区地址储存于指针FIFO中。当存储器控制器216向指针FIFO中写入数据时,它发出一个中断。这个中断又被称为一个DMA_MARK信号,用于提醒微处理器116发送流标识(Stream_ID)字节。在本发明的典型实施例中,以基于表中位置的数字顺序向程序标识表项分配通道号。例如,向第一项分配DMA通道0,向下一项分配DMA通道1等等。
传输处理器214表明带有程序时钟参考程序标识的传输包应该由时钟管理器218通过在程序标识表项中放入PCR_PID信号进行处理。时钟管理器(218)监视带有PCR_flag(标志)的包的适应字段,并抽取PCR。
传输处理器214根据包的程序标识将它们分开,然后除去传输包的首部,并结合存储器控制器216将程序标识包的有效部分(例如,打包的基本流包的部分)分别存储在外部存储器114中指定通道的顺序排列存储区字段。存储器114中的数据表示打包的基本流包。
传输处理器214还处理从主微处理器116向外部存储器进行的写操作。存储器控制器216
存储器控制器216将传输包中经过语法分析的有效部分存储在外部存储器114中,并根据需要向视频处理器224、多达两个音频处理器226和228以及主微处理器116或微控制器提供视频、音频、PSI和其他数据(如个人数据)。
图3给出了适用于图2A和图2B中显示的传输解码器110的存储器控制器的典型功能框图。如图3中所示,存储器控制器216通过FIFO310从传输处理器214中获得数据。存储器控制器216通过由微输入FIFO314和微输出FIFO316组成的微接口217从微处理器116中取得和传输数据。值得指出的是,图2A和图2B的存储器控制器216外部的微接口217在图3中也给出了,以便清楚地表示它与FIFO314和316的相互关系。
存储器控制器216还包括一个流程控制单元318,它包括芯片存储器、一个DMA控制器320、数据路径(Datapath)逻辑322,以及用于向视频和音频解码器(224、226和228)分别发送数据的。
存储器控制器216将来自下列两个来源中的数据写入外部存储器:其一为传输处理器214(通过FIFO310中的传输端口),其二为微处理器116(通过FIFO314中的微端口)。
存储器控制器216从外部存储器中读取数据,并将其提供给以下四个部件:1)视频接口(通过视频FIFO324),2)音频接口A(通过音频接口A的FIFO326),3)音频接口B(通过音频接口B的FIFO328),4)微控制器116(通过微输出FIFO316)。
外部存储空间被划分为多个分离的、互不重叠的缓冲区。其中每一个供一个DMA通道使用。可使用的通道多达32个之多。通道号与写入数据两个FIFO源或从四个目标FIFO中读出的数据相关连。
由传输处理器214提供并写入传入端口FIFO310的数据带有一个通道号标记。其它FIFO中每一个的通道号由微处理器116在DMA接口寄存器中定义。微处理器116为每一个被使用的通道设置一个128位的DMA通道配置寄存器(通道寄存器)。此通道寄存器含有由起始和结束地址定义的缓冲区空间等信息,而不管该缓冲区被设为FIFO(读写指针互相缠绕,有时又叫环形队列)还是队列(Queue)(读写指针不会缠绕在一起),等等。
如果通道寄存器允许,DMA控制器320能在当前使用的缓冲区已满时获得一个新的缓冲区。这种特性通常只适用于那些存储为主微处理器116所用的数据的缓冲区,如PSI区字段。这些新缓冲区的起始和结束地址储存在新的缓冲FIFO中。只有微处理器116能向此FIFO中写入新的缓冲区。已使用过的缓冲区指针和其他类型的指针由DMA控制器320写入指针FIFO中。在本发明的典型实施例中,只有微处理器116能读取指针FIFO。这些指针被微处理器116用于管理对缓冲区数据的读取和向新的缓冲FIFO返回使用过的缓冲区。图4中的指针FIFO项流程图给出了在所有可能的信号条件、通道寄存器设置和缓冲区条件下指针FIFO的项。
在接下去的图3中,DMA控制器320和数据路径322为外部存储器提供所有的接口信号。流程控制单元318通过向DMA控制器320提供适当的控制信号,使其为六个特定的接口FIFO中的某一个服务。这些信号包括:
1.DMA控制器开始信号:
本信号命令DMA控制器320开始为使用诸如DMA控制器操作、DMA输入FIFO选择和DMA输出FIFO选择之类命令的特定FIFO服务。同时,流程控制单元318读出128位特定通道寄存器的内容,并使其在通道寄存器(内部存储器)的数据总线上可用。DMA控制器320将此128位的字读入它的内部寄存器,然后流程控制单元318被释放以根据内部存储器的需要执行其他的读/写操作。
2.DMA控制器操作信号(1位):
该位发出一个读或写的信号,由接口FIFO上的DMA控制器执行。
3.DMA输入FIFO选择信号(1位):
发出信号选择两个输入FIFO(310或314)中的某一个提供服务。
4.DMA输出FIFO选择信号(2位):
发出信号选择四个输出FIFO(316、324、326或328)中的某一个提供服务。
5.在请求/通道数据/通道号/DMA控制器中的通道数据停止:
一般来说,DMA控制器320持续为FIFO服务,直到因如接口FIFO满或外部存储器中无数据等原因不能继续服务为止。一旦这种情况发生,DMA控制器320分配请求的通道数据给流程控制单元318,并且将通道寄存器数据和通道号数据提供给流程控制单元318。除非特定的FIFO需要急救行动(例如,因为它正接近满或空的状态),流程控制单元318使用通道数据更新通道寄存器存储器(例如,被更新的信息包括读写指针等),并指示DMA控制器320为回路中的下一个FIFO服务。
有些时候,流程控制单元318可能需要向DMA控制器320发送一个DMA控制器停止命令,作为对向另一个FIFO提供服务的需要作出的响应。该FIFO可能是拥有更高优先级的输入FIFO。这个命令指导DMA控制器320停止为当前正被其服务的FIFO服务,并将通道数据写入流程控制单元318。
DMA控制器320使用以下信息更新通道寄存器:读指针、写指针和DMA控制器320停止为FIFO服务处的其他信息。由于流程控制单元318将这些信息写入了内部通道寄存器存储器,DMA控制器320可以从中断点开始恢复为被中断的FIFO提供服务。
考虑到DMA控制器参与本发明不连续状态部分的整体运作过程,当包括一个流标识的字节的下一个PES包被TPROC214写入存储器控制器216时,流程控制单元318引起DMA_MARK信号变高。DMA_MARK信号的过渡触发微处理器116处的中断,并且打包的基本流包首部的地址被存储在微处理器已存取的输入指针FIFO中。由于这个打包的基本流首部可能有一个时间标记,所以对由不连续性指示位产生的标志位作出响应的微处理器116在储存的打包的基本流首部中搜索时间标记。一旦发现,会检索此时间标记值。微处理器116基于检索到的时间标记值设置定时器中断。
再参看图3,在本发明的典型实施例中,流程控制器单元318的内部存储器包括四个64×32位的块,每个块都分配给通道寄存器、新缓冲FIFO和指针FIFO。
在本发明的典型实施例中,每一个通道寄存器有128位并且最多有32个通道。所以有多达128×32个位以多个128位的格式分配给通道寄存器。
32位的字被写入新缓冲区和指针FIFO或从它们中读出。至少128×32位的内存(即128个字)可用于新缓冲区和指针FIFO中。另外,如果使用的通道少于32个,通道寄存器中未使用的空间被分配给新的缓冲区和指针FIFO。
以下是32个DMA通道和16个DMA通道的存储器分配示例。
1)32个被使用的通道的存储器分配
新缓冲区FIFO=64×32位
指针FIFO=64×32位
通道寄存器=128×32位
2)16个被使用的通道的存储器分配
新缓冲区FIFO=64×32位
指针FIFO=128×32位
通道寄存器=128×16位时钟管理器218
图2A和2B中所示的传输解码器110中的时钟管理器218使用连续PCR值同步本地27MHz的信号(由时钟信号电路122产生)。时钟管理器218中的计数器值被称为系统时间常数(STC)值。在本发明的典型实施例中,微处理器116通过内部微总线223存取计数器中的STC值。
时钟管理器218中的计数器定期与传输数据流中的PCR进行同步。当遇到数据流中的第一个PCR时,该PCR被“挤载”入计数器并成为初始STC值。当后来的PCR值被接收时,将它们与STC值相比较,以校正时钟信号电路122(例如,VCXO)的频率。在本发明中,此过程是通过使用在下文中会详细介绍的数字模拟转换器(DAC)实现的。一旦进行了相位错误校正,通常是将新的PCR值作为STC值载入。
一般每帧产生一次PCR值。在MPEG-2的标准中,至少每三帧内(大概十分之一秒)会产生一次PCR值。
典型的情况是,外部视频和音频解码器(118和120)通过更新外部解码器中的STC值与传输解码器110保持同步,该过程的实现基于时钟管理器218中保存的STC值。视频和音频解码器(118和120)通过将数据和接收到的打包的基本流数据流中的时间标记相比较,使用储存值来确定何时解码或显示数据。值得指出的是,在本发明的典型实施例中,传输解码器110、视频解码器118和音频解码器120都接收时钟管理器(218)产生的同一个27MHz的时钟信号。
传输解码器218包含对产生本地时钟信号的硬件支持。该信号对于某一个选定的程序来说是锁定在系统时钟信号上的。如上文所述,在特定的PCR_PID上接收的PCR值在串行接口上可为其他设备所用。
时钟管理器(218)包括一个系统时间计数器(STC)(图中未给出)、一个系统时间时钟寄存器(图中未给出)、一个程序时钟参考(PCR-Program Clock Reference)寄存器(图中未给出)、一个当前STC寄存器(图中未给出)、一个报警时钟中断寄存器(图中未给出)以及一个锁存从与选定的程序标识(PID)有关的首部中抽取的PCR值的逻辑部件(图中未给出)。它还包括串行PCR接口和用于控制外部系统时钟信号控制回路的DAC寄存器。
在本发明的典型实施例中,STC是由9位基部和33位扩展部组成的42位计数器。
STC基部将名义上的27MHz系统时钟输入信号分为300份。结果得到的90KHz信号驱动STC扩展。在任何时候,STC都能被在微处理器116上运行的软件写或读。当遇到一个不连续性指示位后,可以将接收到的PCR值自动加载到STC中。
如上文所述,可以通过在程序标识表项中设定PCR_PID位,从刚到达的位流中自动抽取PCR。处理接收到的PCR取决于软件设定的选项和接收PCR时当前传输包的不连续状态是否存在。
当包含PCR_PID的传输包被接收时,和传输首部中的不连续指示位为逻辑值1,可以确认是不连续状态。该不连续状态将一直持续下去,直到包含PCR_PID的传输包被接收时不连续性指示位为逻辑值0,或者当在PCR_PID包中发现下一个PCR为止。
如果设置为有效,当PCR被接收且不连续状态存在时,时钟管理器218自动将接收到的PCR载入STC中。此时,一个中断被发送到主微处理器116。
时钟管理器218包括一个初始化位。该位被软件置为1时,则无论不连续状态存在与否,下一个被接收到的PCR都将被载入STC中。然后初始化位被时钟管理器218自动清除。只有当STC不包含有效的PCR时(即,当选择了新的程序标识时),才设置初始化位。
如果没有不连续状态存在或自动STC载入功能被置为无效,接收到的PCR被储存在PCR寄存器中,并且可选择向主微处理器116发出一个中断。在获得PCR的同时,STC的当前状态被保存在STC寄存器中。储存下来的PCR和STC值被用于计算错误信号,从而控制外部系统的时钟信号(XOCLK)。
当接收到的传输包包括一个与PCR_PID等同的PID(程序标识)和一个PCR时,此PCR被锁存在PCR寄存器中。此时STC计数器的当前内容也被锁存在STC寄存器中,并且向主微处理器116发出一个中断。将两个值都锁存起来就消除了由于中断服务例程中存在变化的等待时间而产生的不确定性。在本发明的典型实施例中,两个寄存器都包括一个9位的基部和一个33位的扩展部。基部在300模块中,扩展部是用二进制表示的。在寄存器的内容被用于任何计算之前,它们可以被转化成二进制数。转化方法是将扩展部乘以300,然后将与基部相加。
当前的STC寄存器是一个只读寄存器,它允许微处理器116在任何时间获得STC的当前内容。通过外部微总线124,微处理器116能用这个值初始化视频解码器或音频解码器的STC。
如上文所述,传输解码器110包括一个10位的数字模拟转换器(DAC)230,它在时钟管理器218的时钟校正控制回路中使用。DAC230是只读的,也就是说,软件在存储器中存有最后载入DAC的值的副本。在运作中,DAC230被用于为外部谐振晶体电压控制振荡器VCXO122产生控制电压。后者是系统时钟频率(名义上是27MHz)的来源。通过比较锁存的PCR和STC值,软件能确定本地时钟信号是否需要校正。例如,软件能获取PCR和STC之间的差别,并将这个错误条件加到DAC230的输入寄存器的当前内容中去。
总体来说,本发明的不连续部分包括以下内容:
1)通道数据处理器(CDP)210核查接收到的传输包中的同步字节,以使该包生效。传输处理器(TPROC)214对传输首部进行语法分析,并将包的有效内容传送到存储器中的适当位置。根据传输首部中的程序标识值,数据被发送到存储器中的不同FIFO缓冲区(通道)中。
2)因为接收到的不连续性指示位不必和下一个PCR值在同一个包中,所以接收到下一个PCR值时,TPROC(214)将“挤载”时钟管理器(218)中的计数器。
3)当包括一个流标识字节的下一个打包的基本流包被传输处理器214写入存储器控制器216中时,DMA_MARK信号变高。这就导致存储器控制器216向微处理器116发出中断并将打包的基本流包首部的地址储存在一个输入指针FIFO中。这个打包的基本流首部可能有一个时间标记(可能是解码时间标记或显示时间标记)。对来自存储器控制器216的中断作出响应的微处理器116在打包的基本流首部中搜索时间标记,一旦发现,就检索时间标记值。
4)然后,微处理器116在时间标记值前略短于一帧的时间处设置一个定时器中断。
5)当此定时器中断发生时,微处理器116通过外部微总线124向视频和音频解码器发送新的PCR值,从而给了解码器足够的时间处理数据。这种处理发生在时间标记与视频或音频解码器中的计数器值比较之前,并且不会干扰与前一个PCR值相参照的数据的处理。视频/音频解码器224、226、228
如上文所述,一旦传输包被接收、处理和存储起来,存储器控制器216从存储器114中读出打包的基本流包,并将它们发送到外部视频和音频解码器中。然而,在打包的基本流包到达外部解码器(118和120)前,它们被内部视频和音频处理器(224、226和228)处理。
这些内部处理器的一个重要功能在于确保离开传输解码器的数据流与外部解码器兼容。也就是说,不同的外部解码器有不同的数据需求。
例如,一些现在市场上可见的外部视频解码器能接受包括首部和有效部分的打包的基本流包流。这些流的形式主要与它被读出存储器时相同。另一方面,有些外部解码器只能接受对基本流(例如,打包的基本流包的有效部分而非首部部分)的处理要求。另外,后一种类型的解码器除了要求有数据流外,还要求相关的控制信息,如时间标记和字节计数等。由C-Cube制造的CL9100就是这样一种视频解码器。在此特参考其规格说明——CL9100多模式视频解码器用户手册(94年10月)——加以介绍。由此,视频处理器224可通过微处理器116进行设置,以格式化输出的数据流,使之与选定的外部解码器的要求兼容。
在处理C-Cube CL9100等外部视频解码器的接口方面,视频处理器224对打包的基本流包的流进行处理,从而去除打包的基本流的首部并将时间标记信息从打包的基本流首部中取出来。另外,视频处理器224通过使用计数器(图中未给出),对发送给外部解码器的打包的基本流包保持字节计数。那么,视频处理器224包含时间标记信息,保持字节计数并将打包的基本流包的有效部分传输给外部视频解码器。为了获得传送给外部解码器的时间标记和字节计数信息,视频处理器224向微处理器116发出一个中断。后者进行响应时,会通过内部微总线223从视频处理器224中读取时间标记和字节计数信息,并通过外部微总线124将这个控制信息发送到外部视频解码器中。
然而,有时在微处理器116能对来自视频处理器224的中断作出响应之前,另一个带有时间标记信息的打包的基本流首部就到达了。例如,当微处理器116在很长的时间里被更高优先级的任务占用时,这种情况就可能发生。在这种情况下,视频处理器224将时间标记信息和状态一起储存起来。具体来说,视频处理器224会保存一个状态寄存器,表明微处理器是否“丢失”了时间标记。在本发明的典型实施例中,微处理器116最后才开始读取时间标记信息,如果它象状态中表示的那样丢失了一个或多个时间标记,那么它将只能恢复最新的时间标记。
另外,既然时间标记信息和字节计数信息将被提供给外部解码器,那么当微处理器116丢失了一个时间标记时,视频处理器224保持一种累积式的字节计数,因为许多数据标记可能在微处理器116读取信息之前就到达了。然后,微处理器116读取最新的时间标记和累积式的字节计数,并将这些信息发送到外部视频解码器中。接下来,状态寄存器和字节计数器可以被重置。
如图5A中的流程图所示,接受到的数据的首部被分离并进行语法分析(步骤510)。时间标记信息被存储并且字节计数被保存(步骤510),由视频处理器224向微处理器116发出一个中断,提醒它时间标记信息可供读取(步骤514)。如果附加的时间标记信息在微处理器读取前一个时间标记信息之前就已收到,新时间标记信息被存储,字节计数器继续积累(步骤516),视频处理器224向微处理器116发出另一个中断,否则,微处理器读取状态寄存器、时间标记信息和字节计数信息并将它发送到外部视频解码器中(步骤518)。
调节某个外部解码器的另一个例子是使用位速率限制音频解码器,例如Zoran ZR38500 AC3音频解码器。在此特引用其技术说明书(1994年10月)以供参考。一般说来,大多数音频解码器提供一个数据请求,表明它们能接受音频数据,然后传输解码器110通过音频处理器(226/228)提供音频数据,直到外部音频处理器取消此请求。换句话说,这里存在着一种信号交换机制。
然而,位速率限制解码器,例如Zoran AC3音频解码器,要求音频AC3数据能作为音频数据帧发送,每一帧在首部中都包括一个帧时间和位速率。以高于预先确定的位速率发送数据可能会引起内部缓冲区溢出,从而导致数据丢失。进一步说,这些位速率限制解码器并不提供数据就绪的信号以表明它们已经准备好接收附加的音频数据。
所以,和视频解码器224一样,音频处理器226和228可被设置以调节选定的外部音频解码器。值得指出的是:在本发明的典型实施例中,除非是对于微处理器116可以存取的地址,音频处理器(226/228)在本质上是相同的。
因此,当音频处理器(226/228)被编程用于与该类音频解码器接口时,它们假定解码器一直在发送数据请求信号。然而,当打包的基本流包音频数据从存储器控制器216中提供给音频处理器(226/228)时,接收到数据的打包的基本流首部被音频处理器进行语法分析。音频数据的帧大小和位速率被包含在经分析过的首部中。根据帧的大小和位速率,音频处理器(226/228)能确定帧边界(即帧时间)。有了帧时间信息,音频处理器(226/228)设置帧定时器,使得音频数据可用时,定时器被设定,一帧数据被触发到外部音频解码器及音频处理器(226/228)中,然后暂停,直到帧定时器超过时效。当定时器超过时效时,循环继续下去,每次一个音频帧,而另外的帧可用于向外部音频解码器中输送附加帧。控制信息,例如时间标记,由微处理器恢复并通过外部微总线发送出去。
如图5B中的流程图所示,从存储器中恢复打包的基本流包(步骤542),去除接收到数据的首部并进行语法分析(步骤530),确定一个帧时间(步骤532),定时器开始工作(步骤534),音频处理器(226/228)触发出一帧数据(步骤536),音频处理器(226/228)暂停,直到定时器超过时效(步骤538),尽管如图中所示,步骤542、530和532能在暂停期间执行。然后,此过程延续下去。
尽管在上述特定的实施例中,对跟踪MPEG-2传输数据流不连续性的系统时间常数进行更新的方法和设备进行了描述。但本发明并不局限于所示的细节。另外,无需脱离权利要求的范畴和本发明的精神实质,可实现细节的多种变化。
Claims (6)
1.一种用于传输解码器系统的方法,所述系统用于对传输数据流解码,该数据流包括由首部和有效部分组成的传输包,首部包括不连续性指示位,所述系统包括至少一个缓冲区和至少一个处理器,前者用于临时存储接收到的传输数据流,后者用于对来自缓冲区的数据输出解码供显示之用,所述每个传输解码器和处理器都有各自的计数器,此方法用于在设定了不连续状态后处理程序计数器参考(PCR)的接收,其特征在于包括以下步骤:
对接收到的传输包进行语法分析,并将数据存入存储器;
一旦接收到下一个PCR值,将接收到的程序计数器参考值载入传输解码器计数器中;
对PCR值之后接收并储存在存储器中的数据进行时间标记搜索并检索该时间标记;
基于检索后的时间标记值设置定时器中断;以及
当定时器中断发生时,将PCR值传送给处理器的计数器,从而为处理器提供充足的时间处理数据。
2.根据权利要求1所述的方法,其中,在时间标记值之前不足一帧的时间处设置定时器中断。
3.根据权利要求1所述的方法,其中的搜索的步骤包括:
一旦接收到含有时间标记值的传输包,中断一台主微控制器以发出与存储的传输包相关的主微控制器地址信息;以及
接着,在存储的传输包的适当地址位置搜索时间标记值。
4.根据权利要求1所述的方法,还包括以下步骤:
在进行语法分析之前,通过确定接收到的传输包的边界是否与预确定的包边界符合使它们生效,并且只对生效的包进行语法分析。
5.根据权利要求4所述的方法,其中使接收到的传输包生效的步骤包括检查接收到传输包中的同步位。
6.在用于接收传输数据流的系统中的一种处理不连续性指示位的接收的装置,该数据流包括由首部和有效部分组成的传输包,首部包括不连续性指示位,所述系统包括至少一个缓冲区和至少一个处理器,前者用于临时存储接收到的传输数据流,后者用于解码来自缓冲区的数据输出供显示之用,所述每个传输解码器和处理器都有分离的计数器,所述装置的特征在于包括:
存储器;
传输处理器,接收和检测不连续性指示位,并对传输包进行语法分析并将数据存储在存储器中;
时钟管理器,一旦接收到下一个程序计数器参考值,将接收到的程序计数器参考值载入传输解码器计数器中;
微处理器,在存储器中存储的数据中搜索时间标记并在发现后检索时间标记值,并基于时间标记值设置定时器中断;并且当定时器中断发生时,将程序计数器参考值发送到至少一个处理器的计数器。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/626,184 US5818539A (en) | 1996-03-29 | 1996-03-29 | System and method for updating a system time constant (STC) counter following a discontinuity in an MPEG-2 transport data stream |
US08/626,184 | 1996-03-29 | ||
US626184 | 1996-03-29 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1173783A CN1173783A (zh) | 1998-02-18 |
CN1108698C true CN1108698C (zh) | 2003-05-14 |
Family
ID=24509318
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN97103739A Expired - Fee Related CN1108698C (zh) | 1996-03-29 | 1997-03-31 | 一种用于处理传输数据流的方法及装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US5818539A (zh) |
EP (1) | EP0798932B1 (zh) |
JP (1) | JP3883637B2 (zh) |
KR (1) | KR100248456B1 (zh) |
CN (1) | CN1108698C (zh) |
DE (1) | DE69736031T2 (zh) |
Families Citing this family (63)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3149328B2 (ja) * | 1995-01-09 | 2001-03-26 | 松下電器産業株式会社 | 送信装置と受信装置 |
CA2206614A1 (en) * | 1997-05-30 | 1998-11-30 | Richard A. Kupnicki | Method and apparatus for absolute time descriptor universal reference signals for the synchronization of video and audio equipment in analog and digital areas |
KR100234265B1 (ko) * | 1997-06-17 | 1999-12-15 | 윤종용 | 캡션 데이터 처리 회로 및 그 방법 |
JP3815854B2 (ja) * | 1997-06-20 | 2006-08-30 | 富士通株式会社 | ディジタルpll回路およびmpegデコーダ |
US6088357A (en) * | 1997-09-26 | 2000-07-11 | International Business Machines Corporation | Auxiliary transport assist processor especially for an MPEG-2 compliant decoder |
US6115422A (en) * | 1997-09-26 | 2000-09-05 | International Business Machines Corporation | Protocol and procedure for time base change in an MPEG-2 compliant datastream |
US6356567B2 (en) * | 1997-09-26 | 2002-03-12 | International Business Machines Corporation | Embedded clock recovery and difference filtering for an MPEG-2 compliant transport stream |
JP3418966B2 (ja) * | 1997-10-09 | 2003-06-23 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 同期化方法及びデコーダ |
JP3389843B2 (ja) | 1997-10-17 | 2003-03-24 | 日本電気株式会社 | 情報処理装置におけるデジタル放送受信システム |
WO1999023776A1 (en) * | 1997-10-31 | 1999-05-14 | Sgs-Thomson Microelectronics Asia Pacific (Pte) Ltd. | Apparatus and method for depacketizing and aligning packetized input data |
EP0917356A1 (en) * | 1997-11-17 | 1999-05-19 | CANAL+ Société Anonyme | Packet filtering |
US7830968B1 (en) * | 1998-01-07 | 2010-11-09 | Thomson Licensing | Apparatus for providing a video lip sync delay and method therefore |
US5973758A (en) * | 1998-01-14 | 1999-10-26 | C-Cube Microsystems, Inc. | Video synchronization |
US6310898B1 (en) * | 1998-01-27 | 2001-10-30 | Tektronix, Inc. | Compressed video and audio transport stream multiplexer |
US6330285B1 (en) * | 1998-02-11 | 2001-12-11 | Tektronix, Inc. | Video clock and framing signal extraction by transport stream “snooping” |
US6486922B1 (en) * | 1998-02-20 | 2002-11-26 | Matsushita Electric Industrial Co., Ltd. | Synchronization method of image decoder |
JPH11275524A (ja) * | 1998-03-20 | 1999-10-08 | Pioneer Electron Corp | データ記録方法、データ再生方法、データ記録装置およびデータ再生装置 |
US6097699A (en) * | 1998-06-05 | 2000-08-01 | Gte Laboratories Incorporated | Method and system for monitoring broadband quality of services |
US6308280B1 (en) * | 1998-06-25 | 2001-10-23 | Hughes Electronics Corporation | System for synchronizing discrete components to a common clock source |
US6326960B1 (en) * | 1998-09-04 | 2001-12-04 | National Semiconductor Corporation | Video output phase control in a decoder |
US6175884B1 (en) * | 1998-11-03 | 2001-01-16 | Intel Corporation | Efficient communication of transaction types using separate and orthogonal attribute fields in packet headers transferred between hubs in a computer system |
KR100335441B1 (ko) * | 1999-05-01 | 2002-05-04 | 윤종용 | 다중 비디오 디코딩 장치 및 그 방법 |
EP1496654B1 (en) * | 1999-05-25 | 2006-07-12 | Lucent Technologies Inc. | Method for telecommunications using internet protocol |
KR100747052B1 (ko) | 1999-07-13 | 2007-08-07 | 톰슨 라이센싱 | 패킷화된 프로그램 정보를 처리하고 디코딩하기 위한 방법 |
CA2313979C (en) * | 1999-07-21 | 2012-06-12 | Thomson Licensing Sa | Synchronizing apparatus for a compressed audio/video signal receiver |
JP3406255B2 (ja) * | 1999-09-29 | 2003-05-12 | 松下電器産業株式会社 | 画像復号装置および方法 |
US6690683B1 (en) | 1999-11-23 | 2004-02-10 | International Business Machines Corporation | Method and apparatus for demultiplexing a shared data channel into a multitude of separate data streams, restoring the original CBR |
US6429902B1 (en) * | 1999-12-07 | 2002-08-06 | Lsi Logic Corporation | Method and apparatus for audio and video end-to-end synchronization |
US6459738B1 (en) * | 2000-01-28 | 2002-10-01 | Njr Corporation | Method and apparatus for bitstream decoding |
FR2806574B1 (fr) * | 2000-03-15 | 2002-05-03 | Thomson Multimedia Sa | Dispositif de synchronisation d'applications interactives dans un recepteur de television |
US6801536B1 (en) * | 2000-03-23 | 2004-10-05 | International Business Machines Corporation | Remultiplexing audio/video PES streams from an MPEG transport system |
CA2349914C (en) * | 2000-06-09 | 2013-07-30 | Invidi Technologies Corp. | Advertising delivery method |
US6940873B2 (en) | 2000-12-27 | 2005-09-06 | Keen Personal Technologies, Inc. | Data stream control system for associating counter values with stored selected data packets from an incoming data transport stream to preserve interpacket time interval information |
US7280738B2 (en) | 2001-04-09 | 2007-10-09 | International Business Machines Corporation | Method and system for specifying a selection of content segments stored in different formats |
US20020145622A1 (en) * | 2001-04-09 | 2002-10-10 | International Business Machines Corporation | Proxy content editing system |
US6870887B2 (en) * | 2001-04-09 | 2005-03-22 | International Business Machines Corporation | Method and system for synchronization between different content encoding formats |
US7730509B2 (en) | 2001-06-08 | 2010-06-01 | Invidi Technologies Corporation | Asset delivery reporting in a broadcast network |
US8676025B2 (en) * | 2002-03-01 | 2014-03-18 | Broadcom Corporation | Method of timebase management for MPEG decoding with personal video recording functionality |
JP4084646B2 (ja) * | 2001-12-26 | 2008-04-30 | 松下電器産業株式会社 | デジタル放送受信再生機能付き通信端末 |
FI114527B (fi) | 2002-01-23 | 2004-10-29 | Nokia Corp | Kuvakehysten ryhmittely videokoodauksessa |
CN1288915C (zh) | 2002-01-23 | 2006-12-06 | 诺基亚有限公司 | 视频序列的编码和解码方法及相关的视频编码器和解码器 |
US7336667B2 (en) * | 2002-11-21 | 2008-02-26 | International Business Machines Corporation | Apparatus, method and program product to generate and use CRC in communications network |
JP4431537B2 (ja) * | 2003-06-16 | 2010-03-17 | パナソニック株式会社 | パケット処理装置及び方法 |
JP4459590B2 (ja) * | 2003-10-10 | 2010-04-28 | パナソニック株式会社 | Dtvデータ処理装置 |
CA2860960C (en) | 2005-01-12 | 2022-04-12 | Invidi Technologies Corporation | Targeted impression model for broadcast network asset delivery |
US20090094640A1 (en) * | 2007-09-26 | 2009-04-09 | Anderson Bruce J | Targeted advertising in unicast, multicast and hybrid distribution system contexts |
US20130254787A1 (en) | 2006-05-02 | 2013-09-26 | Invidi Technologies Corporation | Method and apparatus to perform real-time audience estimation and commercial selection suitable for targeted advertising |
CN107103489B (zh) * | 2006-05-02 | 2021-09-28 | 英维迪技术公司 | 一种用于在广播网络中为有用资源确定目标的方法和设备 |
AU2007257685B2 (en) * | 2006-06-12 | 2011-10-06 | Invidi Technologies Corporation | System and method for inserting media based on keyword search |
US20070288953A1 (en) * | 2006-06-12 | 2007-12-13 | Sheeman Patrick M | System and method for auctioning avails |
CN1901548B (zh) * | 2006-07-26 | 2012-10-03 | 白杰 | 缓冲区管理方法 |
WO2008094960A2 (en) * | 2007-01-30 | 2008-08-07 | Invidi Technologies Corporation | Asset targeting system for limited resource environments |
US8146126B2 (en) | 2007-02-01 | 2012-03-27 | Invidi Technologies Corporation | Request for information related to broadcast network content |
US8776115B2 (en) | 2008-08-05 | 2014-07-08 | Invidi Technologies Corporation | National insertion of targeted advertisement |
EP2332111B2 (en) | 2008-08-06 | 2023-10-11 | Invidi Technologies Corporation | Third party data matching for targeted advertising |
WO2010088605A2 (en) * | 2009-01-30 | 2010-08-05 | Invidi Technologies Corporation | System and method for auctioning avails |
JP2010232861A (ja) * | 2009-03-26 | 2010-10-14 | Sony Corp | 情報処理装置、音声信号処理方法、およびプログラム |
JP5496548B2 (ja) * | 2009-05-29 | 2014-05-21 | ルネサスエレクトロニクス株式会社 | 半導体集積回路 |
JP4999915B2 (ja) * | 2009-12-21 | 2012-08-15 | パナソニック株式会社 | Dtvデータ処理装置 |
JP2011188310A (ja) * | 2010-03-09 | 2011-09-22 | Toshiba Corp | 同期データ検出装置、同期データ検出方法及びプログラム |
US8677028B2 (en) | 2010-08-23 | 2014-03-18 | Qualcomm Incorporated | Interrupt-based command processing |
KR102521298B1 (ko) * | 2018-02-14 | 2023-04-14 | 에스케이하이닉스 주식회사 | 메모리 컨트롤러 및 그 동작 방법 |
US11762584B2 (en) | 2020-10-22 | 2023-09-19 | International Business Machines Corporation | Inferring the state of a write-only device by mapping control register values and feedback signal values |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0687114A2 (en) * | 1994-06-09 | 1995-12-13 | Thomson Consumer Electronics, Inc. | Apparatus for providing audible instructions or status information for use in a digital television system |
WO1996008115A1 (en) * | 1994-09-07 | 1996-03-14 | Philips Electronics N.V. | Mpeg information signal conversion system |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5486864A (en) * | 1993-05-13 | 1996-01-23 | Rca Thomson Licensing Corporation | Differential time code method and apparatus as for a compressed video signal |
US5473385A (en) * | 1994-06-07 | 1995-12-05 | Tv/Com Technologies, Inc. | Clock correction in a video data decoder using video synchronization signals |
JP3371174B2 (ja) * | 1994-09-22 | 2003-01-27 | ソニー株式会社 | パケット受信装置 |
US5588029A (en) * | 1995-01-20 | 1996-12-24 | Lsi Logic Corporation | MPEG audio synchronization system using subframe skip and repeat |
US5517250A (en) * | 1995-02-28 | 1996-05-14 | General Instrument Corporation Of Delaware | Acquisition of desired data from a packetized data stream and synchronization thereto |
US5650825A (en) * | 1995-03-31 | 1997-07-22 | Matsushita Electric Corporation Of America | Method and apparatus for sending private data instead of stuffing bits in an MPEG bit stream |
US5699392A (en) * | 1995-11-06 | 1997-12-16 | Stellar One Corporation | Method and system for the recovery of an encoder clock from an MPEG-2 transport stream |
US5703877A (en) * | 1995-11-22 | 1997-12-30 | General Instrument Corporation Of Delaware | Acquisition and error recovery of audio data carried in a packetized data stream |
US5675654A (en) * | 1996-03-29 | 1997-10-07 | Matsushita Electric Corporation Of America | System and method for interfacing a transport decoder to a national renewable security systems (NRSS) smart card |
-
1996
- 1996-03-29 US US08/626,184 patent/US5818539A/en not_active Expired - Lifetime
-
1997
- 1997-03-24 EP EP97104977A patent/EP0798932B1/en not_active Expired - Lifetime
- 1997-03-24 DE DE69736031T patent/DE69736031T2/de not_active Expired - Fee Related
- 1997-03-27 JP JP07616997A patent/JP3883637B2/ja not_active Expired - Fee Related
- 1997-03-29 KR KR1019970012136A patent/KR100248456B1/ko not_active IP Right Cessation
- 1997-03-31 CN CN97103739A patent/CN1108698C/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0687114A2 (en) * | 1994-06-09 | 1995-12-13 | Thomson Consumer Electronics, Inc. | Apparatus for providing audible instructions or status information for use in a digital television system |
WO1996008115A1 (en) * | 1994-09-07 | 1996-03-14 | Philips Electronics N.V. | Mpeg information signal conversion system |
Also Published As
Publication number | Publication date |
---|---|
JPH1093960A (ja) | 1998-04-10 |
EP0798932A2 (en) | 1997-10-01 |
DE69736031T2 (de) | 2006-10-19 |
EP0798932A3 (en) | 2003-06-04 |
KR100248456B1 (ko) | 2000-03-15 |
CN1173783A (zh) | 1998-02-18 |
JP3883637B2 (ja) | 2007-02-21 |
EP0798932B1 (en) | 2006-06-07 |
US5818539A (en) | 1998-10-06 |
DE69736031D1 (de) | 2006-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1108698C (zh) | 一种用于处理传输数据流的方法及装置 | |
US5828416A (en) | System and method for interfacing a transport decoder to a elementary stream video decorder | |
CN1085008C (zh) | 多路压缩图象声音数据的解码装置、应用程序实施装置和编码化图像声音数据接收装置 | |
US6996101B2 (en) | Re-mapping and interleaving transport packets of multiple transport streams for processing by a single transport demultiplexor | |
CN1976448A (zh) | 用于音频和视频传输的方法和系统 | |
CN1265380C (zh) | 记录设备 | |
US6999424B1 (en) | Method for displaying data | |
US5812976A (en) | System and method for interfacing a transport decoder to a bitrate-constrained audio recorder | |
US8260109B2 (en) | System for digital time shifting and method thereof | |
CN1092451C (zh) | 多路分解设备 | |
CN1509077A (zh) | 数字信号处理设备及其处理方法 | |
JPH11500289A (ja) | 圧縮されたテレビジョン信号を送信及び受信する方法 | |
CN1378747A (zh) | 为数字视频记录器产生技巧模式信号 | |
CN1360767A (zh) | 信息提供装置、信息接收装置以及存储媒体 | |
US7349395B2 (en) | System, method, and computer program product for parsing packetized, multi-program transport stream | |
US6577813B1 (en) | Transmitting system and transmitting apparatus | |
CN1421859A (zh) | 后期录音装置 | |
US5675654A (en) | System and method for interfacing a transport decoder to a national renewable security systems (NRSS) smart card | |
CN1710963A (zh) | 数字多媒体数据接收机的数据同步方法和设备 | |
CN1863322A (zh) | 再现设备和方法 | |
CN1441561A (zh) | 数据流选择输出装置、控制程序、数据流选择输出方法 | |
CN1234692A (zh) | 具有单一外存储器的数据多路复用装置 | |
US20100172420A1 (en) | System and method for demultiplexing an mpeg-2 transport stream | |
CN1288905C (zh) | 数据解码器和数据解码方法 | |
US7000244B1 (en) | Multi-threaded direct memory access engine for broadcast data demultiplex operations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: WD Ref document number: 1008289 Country of ref document: HK |
|
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20030514 Termination date: 20100331 |