可靠的解码器和解码方法

文档序号:7594468阅读:231来源:国知局
专利名称:可靠的解码器和解码方法
技术领域
本发明涉及数字多媒体广播接收,更具体地讲,涉及运动图像专家组4(MPEG-4)系统。
背景技术
在传统的MPEG-4系统中,查询法用于预解码。但是,由于在查询法中多个元素应连续地校验其它元素,所以提高MPEG-4系统的性能存在限制。另外,如果因为接收到的传输流的比特率不是固定的,而使入站通信量阻塞,那么会发生数据包的丢失,并且最终不能实现可靠的解码。

发明内容
本发明提供这样一种装置和方法,通过其使用中断方法来处理解码的预备,从而与查询法不同,多个元素不需要被连续地校验。
根据本发明的一方面,提供第一可靠的解码方法,其包括下述步骤如果接收到中断呼叫信号,那么执行中断服务程序以存储流索引;读取存储的流索引,并且通过将具有读取的流索引的数据包拆包来提取解码信息;和通过参照提取出的解码信息来读取包括在数据包中的净荷,并且解码读取的净荷。
根据本发明的另一方面,提供第一可靠的解码装置,其包括中断服务程序执行单元,用于如果接收到中断呼叫信号,那么执行中断服务程序以存储流索引;数据包分析单元,用于读取存储的流索引,并且通过将具有读取的流索引的数据包拆包来提取解码信息;和解码单元,用于通过参照提取出的解码信息来读取包括在数据包中的净荷,并且解码读取的净荷。
根据本发明的另一方面,提供第二可靠的解码方法,其包括下述步骤如果接收到来自中央处理单元(CPU)的中断呼叫信号,那么执行中断服务程序,以将以每个流存储在数据包缓冲器中的数据包的流索引存储在流索引队列中;从流索引队列中读取存储的流索引,从数据包缓冲器读取具有读取的流索引的数据包,通过将读取的数据包拆包来提取解码信息,并且将提取出的解码信息以流存储在解码信息缓冲器中;和通过参照以每个流存储在解码信息缓冲器中的解码信息,来读取包括在以每个流存储在数据包缓冲器中的数据包中的净荷,并且解码读取的净荷。
根据本发明的另一方面,提供第二可靠的解码装置,其包括中断服务程序执行单元,用于如果接收到来自CPU的中断呼叫信号,那么执行中断服务程序,以将以每个流存储在数据包缓冲器中的数据包的流索引存储在流索引队列中;数据包分析单元,用于从流索引队列中读取存储的流索引,从数据包缓冲器读取具有读取的流索引的数据包,通过将读取的数据包拆包来提取解码信息,并且将提取出的解码信息以流存储在解码信息缓冲器中;和解码单元,用于通过参照以流存储在解码信息缓冲器中的解码信息,来读取包括在以流存储在数据包缓冲器中的数据包中的净荷,并且解码读取的净荷。
根据本发明的另一方面,提供一种其上包含用于第一可靠的解码方法的计算机程序的计算机可读记录介质。
根据本发明的另一方面,提供一种其上包含用于第二可靠的解码方法的计算机程序的计算机可读记录介质。


通过结合附图对示例性的实施例进行详细描述,本发明的上述和其他特点及优点将会变得更加清楚,其中图1是本发明可适用于的数字多媒体广播接收机的结构的图解;图2是根据本发明优选实施例的可靠的解码装置的结构的图解;图3是显示符合MPEG-4标准的传输流数据包、打包基本流(PES)数据包和14496区段之间的关系的图解;图4是显示图2中所示的数据包缓冲器的存储格式的图解;图5是图2中所示的传输流多路分解器的结构的详细图解;图6是图2中所示的中断服务程序执行单元的结构的详细图解;图7是图2中所示的数据包分析单元的结构的详细图解;和图8是由根据本发明优选实施例的可靠的解码方法所执行的步骤的流程图。
具体实施例方式
下面将参照附图来详细描述本发明,本发明示例性的实施例在附图中示出。
参照图1,数字多媒体广播接收机包括调谐器11、正交频分复用(OFDM)解调器12、信道解码器13、控制器14、和运动图像专家组4(MPEG-4)系统15。
数字多媒体广播系统是这样一种广播系统,其用于将多媒体服务如各种视频、音频和数据提供给用户,例如车中用户或步行用户。本发明涉及作为数字多媒体广播接收机的一个部件的MPEG-4系统15的有效的设计。
图2是根据本发明优选实施例的可靠的解码装置的结构的图解。该可靠的解码装置包括传输流(TS)多路分解器21、数据包缓冲器22、中央处理单元(CPU)23、中断服务程序(ISR)执行单元24、流索引队列25、数据包分析单元26、解码信息缓冲器27、和解码单元28。
TS多路分解器21通过将包括在由图1中所示的数字多媒体广播接收机的信道解码器13传输的传输流中的传输流数据包拆包,来提取预定的数据包,将提取出的以每个流存储的数据包存储在数据包缓冲器22中,并且为以流为单位存储的数据包向CPU 23请求中断。
如果接收到来自接收由TS多路分解器21请求的中断的CPU 23的中断服务程序呼叫信号,那么ISR执行单元24执行中断服务程序,以将记录在数据包缓冲器22中的数据包的流索引存储在流索引队列25中。
数据包分析单元26从流索引队列25读取流索引,从数据包缓冲器22读取具有读取的流索引的数据包,通过将读取的数据包拆包来提取解码信息,并且将提取出的解码信息以流存储在解码信息缓冲器27中。通过参照以流存储在解码信息缓冲器27中的解码信息,解码单元28读取包括在以流为单位存储在数据包缓冲器22中的数据包中的净荷,并且解码读取的净荷。
图3是显示符合MPEG-4标准的传输流数据包、打包基本流(PES)数据包和14496区段之间的关系的图解。
图1中所示的接收机从传输数字多媒体广播信号的广播站接收数字多媒体广播信号。接收到的数字多媒体广播信号经过调谐器11、OFDM解调器12和信道解码器13被恢复为传输流。该传输流被传输到MPEG-4系统,即,可靠的解码装置15。传输流由每个具有预定长度(188字节)的传输流数据包构成。这些传输流数据包被分类为程序关联表(PAT)数据包、程序映射表(PMT)数据包、和存储对象标识符(OD)流、场景二进制输入格式(BIFS)流、音频流及视频流的数据包。TS多路分解器21通过分析PAT数据包,其作为流索引的程序ID(PID)为0,来获得PMT数据包的PID,并且获得存储OD流、BIFS流、音频流和视频流的数据包的PID。
参照图3,每个TS流数据包由首标和净荷构成。预定数目的TS流数据包被拆包,然后通过组合拆包后的数据包来产生打包基本流(PES)数据包或14496区段。在PES数据包的净荷中存储了包括视频净荷或音频净荷的同步层(SL)数据包,并且在14496区段的净荷中存储了包括OD净荷或净荷的同步层(SL)数据包。访问单元(AU)流,例如一帧视频流或一帧音频流被存储在同步层数据包的每个净荷中。但是,由于AU流的长度不是固定的,所以关于同步层数据包长度的信息也被存储在PES数据包或14496区段的首标中。通常,当AU流是视频流时,AU流很长,而当AU流是OD流或BIFS流时,AU流很短。
现在将参照示例来解释数据包是同步层数据包的情形。TS多路分解器21将包括在传输流中的传输流数据包拆包,然后,通过组合拆包后的传输流数据包来提取PES数据包或14496区段,并且从提取出的PES数据包或14496区段中再次提取同步层数据包,而且将提取出的同步层数据包以流存储在数据包缓冲器22中。当同步层数据包被以每个流存储在数据包缓冲器22中时,向CPU 23请求用于以流存储的同步层数据包的中断。
图4是显示图2中所示的数据包缓冲器22的存储格式的图解。
参照图4,同步层数据包的长度和相应于该长度的同步层数据包存储在数据包缓冲器22的每个地址中。在数据包缓冲器22中,数据包被以具有相同的PID,如OD区域、BIFS区域、视频1区域和音频1区域的流为单位存储。由于这些PID中的每个是表示流的索引,所以在下文中PID指流索引。
N个同步层数据包可以被存储在一个流区域中。如上所述的以每个流存储数据包的原因是如果流在数据包缓冲器22之前被分类,那么流不需要在工作负载很重的解码单元28中被再次分类。另外,当在解码单元28中执行解码时,同时执行流的分类,以使得MPEG-4系统的处理速度在总体上被提高。
图5是图2中所示的TS多路分解器21的结构的详细图解。
参照图5,TS多路分解器21将具有存储在数据包选择寄存器51中的流索引的传输流数据包拆包,以在包括在传输流中的传输流数据包中提取数据包。存储在数据包选择寄存器51中的流索引根据由数据包分析单元26提取出的解码信息中的OD解码信息来确定。OD解码信息是随后应该被解码以再现由用户设定的数字多媒体广播的流的PID。如上所述,TS多路分解器21将提取出的数据包以每个流存储在数据包缓冲器22中,并且相对于以每个流存储的数据包,将以各个流存储的数据包的个数存储在各个流计数寄存器52中。例如,如果2个存储OD流的同步层数据包和1个存储视频流的同步层数据包在中断之间被以流存储到数据包缓冲器22中,那么2被加到OD计数寄存器,并且1被加到视频1计数寄存器。此时,只有当存储在中断请求寄存器53中的值表示允许中断请求时,TS多路分解器21请求中断,并且以流存储在请求的中断和当前请求的中断之前立即请求的中断之间提取出的数据包。这里,存储在中断请求寄存器53中的表示允许中断请求的值是当在ISR执行单元24中完成中断服务程序时存储的值。
图6是图2中所示的ISR执行单元24的结构的详细图解。
参照图6,如果接收到来自CPU 23的中断呼叫信号,那么ISR执行单元24执行中断服务程序。这里,中断服务程序是如果请求了中断而由MPEG-4系统停止了其它工作后以优先级执行的一类函数。由于通过使用上述的寄存器来交换请求执行中断服务程序的信息,所以能够在非常短的时间内处理中断。因此,当考虑到MPEG-4系统的整体性能时,中断几乎不影响解码工作。如果中断服务程序开始,那么首先从各个流计数寄存器52中读取包括在各个流中的数据包的个数。相应于包括在各个流中的数据包的个数的流索引被存储在流索引队列25中。例如,如果2被存储在OD计数寄存器中,并且1被存储在视频1计数寄存器中,那么OD流的PID被连续存储2次,并且视频流的PID被存储1次。
图7是图2中所示的数据包分析单元26的结构的详细图解。
参照图7,数据包分析单元26读取存储在流索引队列25中的流索引。由于同步层数据包被以流存储在数据包缓冲器22中,所以用于每个流的存储区域总是相同的。因此,只用流索引就能够识别流索引的数据包的存储位置。但是,各个流区域的开始地址应该被固定地存储,以使得通过从该开始地址顺序读取存储在流索引队列25中的流索引,数据包分析单元26能够读取正确的数据包。数据包分析单元26将读取的数据包拆包以提取解码信息,并且将提取出的解码信息以流存储在解码信息缓冲器27中。通过参照由数据包分析单元26以每个流存储在解码信息缓冲器27中的解码信息,解码单元28读取包括在以流存储在数据包缓冲器22中的数据包中的净荷,并且同时以流为单位解码读取的净荷。
图8是由根据本发明优选实施例的可靠的解码方法所执行的步骤的流程图。
参照图8,现在将解释可靠的解码方法的步骤。
在步骤81中,通过将包括在传输流中的传输流数据包拆包来提取数据包,并且将其以流存储在数据包缓冲器中,而且向CPU请求用于以流存储的数据包的中断。此时,提取出的数据包被以每个流存储在数据包缓冲器中,并且相对于以每个流存储的数据包,以各个流存储的数据包的个数被存储在各个流计数寄存器中。在步骤82中,如果从接收请求中断的CPU接收到的中断服务程序呼叫信号,那么在步骤83中执行将记录在数据包缓冲器中的数据包的流索引存储在流索引队列中的中断服务程序。此时,与以各个流存储在各个流计数寄存器中的数据包的数目相同的流索引的数目被存储在流索引队列中,并且将表示允许中断请求的值存储在中断请求寄存器中的中断服务程序被执行。此时,只有当存储在中断请求寄存器中的值表示允许中断请求时,才执行步骤81,并且在请求的中断和当前请求的中断之前立即请求的中断之间提取出的数据包被以流存储。
接着,在步骤84中,从流索引队列中读取流索引,从数据包缓冲器读取具有读取的流索引的数据包,通过将读取的数据包拆包来提取解码信息,并且将提取出的解码信息以每个流存储在解码信息缓冲器中。然后,在步骤85中,通过参照以每个流存储在解码信息缓冲器中的解码信息,来读取并解码包括在以每个流存储在数据包缓冲器中的数据包中的净荷。此时,在步骤85中,根据提取出的解码信息中的OD解码信息所确定的流索引被存储在数据包选择寄存器中,并且在步骤81中,通过将具有存储在数据包选择寄存器中的流索引的传输流数据包拆包,来在包括在传输流中的传输流数据包中提取数据包。
上述数据包通常可以是同步层数据包。
本发明的实施例能够被写为计算机程序,并且能够使用计算机可读记录介质在执行该程序的通用计算机中将其实现。计算机可读记录介质的例子包括磁存储介质(例如,ROM、软盘、硬盘等)、光记录介质(如,CD-ROM、或DVD)、和如载波的存储介质(例如,通过互连网的传输)。
虽然参照其示例性的实施例详细地显示和描述了本发明,但是本领域的技术人员应该理解,在不脱离由所附权利要求限定的本发明精神和范围的情况下,可以对其作出各种形式和细节的改变。优选实施例应该被理解为仅仅是描述的意义,而不是为了限制的目的。因此,本发明的范围不是由本发明的具体描述所限定,而是由所附权利要求所限定,并且该范围中的所有差别应该被理解为包括在本发明中。
根据本发明,由于通过使用中断方法来处理解码的预备,所以与查询法不同,多个元素不需要被连续地校验,从而提高了MPEG-4系统的性能。
另外,根据本发明,通过引入流索引队列,用于执行中断服务程序的进程和用于分析数据包的进程被并行独立地执行,从而提高了MPEG-4系统的性能。
此外,根据本发明,通过引入流索引队列,所有接收到的数据包被无损解码,并且最终能够实现可靠的解码。
权利要求
1.一种可靠的解码方法,包括下述步骤(a)如果接收到中断呼叫信号,那么执行中断服务程序以存储流索引;(b)读取存储的流索引,并且通过将具有读取的流索引的数据包拆包来提取解码信息;和(c)通过参照提取出的解码信息来读取包括在数据包中的净荷,并且解码读取的净荷。
2.根据权利要求1所述的方法,其中,数据包是同步层数据包。
3.根据权利要求1所述的方法,其中,在执行中断服务程序以存储流索引的步骤(a)中,存储以每个流存储的数据包的流索引的中断服务程序被执行,并且在通过参照提取出的解码信息来读取包括在数据包中的净荷的步骤(c)中,通过参照以每个流存储的解码信息来读取包括在以每个流存储的数据包中的净荷。
4.根据权利要求1所述的方法,还包括下述步骤(d)通过将包括在传输流中的传输流数据包拆包,来提取数据包,以流存储提取出的数据包,并且为以每个流存储的数据包请求中断。
5.根据权利要求4所述的方法,其中,在提取数据包,以流存储提取出的数据包,并且为以每个流存储的数据包请求中断的步骤(d)中,以各个流存储的数据包的数目被存储,并且在执行中断服务程序以存储流索引的步骤(a)中,与以各个流存储的数据包的数目相同的流索引的数目被存储,并且存储表示允许中断请求的值的中断服务程序被执行。
6.根据权利要求5所述的方法,其中,在提取数据包,以流存储提取出的数据包,并且为以每个流存储的数据包请求中断的步骤(d)中,只有当表示允许中断请求的值被存储时,才请求中断,并且在请求的中断和当前请求的中断之前立即请求的中断之间提取出的数据包被以流存储。
7.根据权利要求4所述的方法,其中,在读取存储的流索引,并且通过将具有读取的流索引的数据包拆包来提取解码信息的步骤(b)中,根据提取出的解码信息中的对象标识符解码信息所确定的流索引被存储,并且在提取数据包,以流存储提取出的数据包,并为以每个流存储的数据包请求中断的步骤(d)中,通过将具有根据对象标识符解码信息所确定的流索引的传输流数据包拆包,来提取数据包。
8.一种可靠的解码装置,包括中断服务程序执行单元,用于如果接收到中断呼叫信号,那么执行中断服务程序以存储流索引;数据包分析单元,用于读取存储的流索引,并且通过将具有读取的流索引的数据包拆包来提取解码信息;和解码单元,用于通过参照提取出的解码信息来读取包括在数据包中的净荷,并且解码读取的净荷。
9.根据权利要求8所述的装置,其中,中断服务程序执行单元执行中断服务程序以存储以每个流存储的数据包的流索引,并且解码单元通过参照以每个流存储的解码信息来读取包括在以每个流存储的数据包中的净荷。
10.根据权利要求8所述的装置,还包括传输流多路分解器,用于通过将包括在传输流中的传输流数据包拆包来提取数据包,以流存储提取出的数据包,并且为以每个流存储的数据包请求中断。
11.一种可靠的解码方法,包括下述步骤(a)如果接收到来自中央处理单元(CPU)的中断呼叫信号,那么执行中断服务程序,以将以每个流存储在数据包缓冲器中的数据包的流索引存储在流索引队列中;(b)从流索引队列中读取存储的流索引,从数据包缓冲器读取具有读取的流索引的数据包,通过将读取的数据包拆包来提取解码信息,并且将提取出的解码信息以流存储在解码信息缓冲器中;和(c)通过参照以每个流存储在解码信息缓冲器中的解码信息,来读取包括在以每个流存储在数据包缓冲器中的数据包中的净荷,并且解码读取的净荷。
12.根据权利要求11所述的方法,其中,数据包是同步层数据包。
13.根据权利要求11所述的方法,还包括下述步骤(d)通过将包括在传输流中的传输流数据包拆包,来提取数据包,将提取出的数据包以流存储在数据包缓冲器中,并且为以每个流存储的数据包向CPU请求中断,其中,在执行中断服务程序以存储数据包的流索引的步骤(a)中,如果接收到来自接收在步骤(d)中请求的中断的CPU的中断服务程序呼叫信号,那么将记录在数据包缓冲器中的数据包的流索引存储在流索引队列中的中断服务程序被执行。
14.根据权利要求13所述的方法,其中,在提取数据包,将提取出的数据包以流存储在数据包缓冲器中,并且为以每个流存储的数据包向CPU请求中断的步骤(d)中,提取出的数据包被以每个流存储在数据包缓冲器中,并且以各个流存储的数据包的数目被存储在各个流计数寄存器中,并且在执行中断服务程序以存储数据包的流索引的步骤(a)中,和以各个流存储在各个流计数寄存器中的数据包的数目相同的流索引的数目被存储在流索引队列中,并且将表示允许中断请求的值存储在中断请求寄存器中的中断服务程序被执行。
15.根据权利要求14所述的方法,其中,在提取数据包,将提取出的数据包以流存储在数据包缓冲器中,并且为以每个流存储的数据包向CPU请求中断的步骤(d)中,只有当存储在中断请求寄存器中的值表示允许中断请求时,才请求中断,并且在请求的中断和当前请求的中断之前立即请求的中断之间提取出的数据包被以流存储。
16.根据权利要求13所述的方法,其中,在读取包括在以每个流存储在数据包缓冲器中的数据包中的净荷,并且解码读取的净荷的步骤(c)中,根据提取出的解码信息中的对象标识符解码信息所确定的流索引被存储在数据包选择寄存器中,并且在提取数据包,将提取出的数据包以流存储在数据包缓冲器中,并且为以每个流存储的数据包向CPU请求中断的步骤(d)中,通过将具有存储在数据包选择寄存器中的流索引的传输流数据包拆包,来在包括在传输流中的传输流数据包中提取数据包。
17.一种可靠的解码装置,包括中断服务程序执行单元,用于如果接收到来自CPU的中断呼叫信号,那么执行中断服务程序,以将以每个流存储在数据包缓冲器中的数据包的流索引存储在流索引队列中;数据包分析单元,用于从流索引队列中读取存储的流索引,从数据包缓冲器读取具有读取的流索引的数据包,通过将读取的数据包拆包来提取解码信息,并且将提取出的解码信息以流存储在解码信息缓冲器中;和解码单元,用于通过参照以每个流存储在解码信息缓冲器中的解码信息,来读取包括在以每个流存储在数据包缓冲器中的数据包中的净荷,并且解码读取的净荷。
18.一种其上包含用于可靠的解码方法的计算机程序的计算机可读记录介质,其中,该方法包括下述步骤;如果接收到中断呼叫信号,那么执行中断服务程序以存储流索引;读取存储的流索引,并且通过将具有读取的流索引的数据包拆包来提取解码信息;和通过参照提取出的解码信息来读取包括在数据包中的净荷,并且解码读取的净荷。
19.一种其上包含用于可靠的解码方法的计算机程序的计算机可读记录介质,其中,该方法包括下述步骤;如果接收到来自CPU的中断呼叫信号,那么执行中断服务程序,以将以每个流存储在数据包缓冲器中的数据包的流索引存储在流索引队列中;从流索引队列中读取存储的流索引,从数据包缓冲器读取具有读取的流索引的数据包,通过将读取的数据包拆包来提取解码信息,并且将提取出的解码信息以流存储在解码信息缓冲器中;和通过参照以每个流存储在解码信息缓冲器中的解码信息,来读取包括在以每个流存储在数据包缓冲器中的数据包中的净荷,并且解码读取的净荷。
全文摘要
一种数字多媒体广播接收系统中的可靠的解码器和解码方法。该可靠的解码方法包括下述步骤如果接收到中断呼叫信号,那么执行中断服务程序以存储流索引;读取存储的流索引,并且通过将具有读取的流索引的数据包拆包来提取解码信息;和通过参照提取出的解码信息来读取包括在数据包中的净荷,并且解码读取的净荷。因此,由于通过使用中断方法来处理解码的预备,所以与查询法不同,多个元素不需要被连续地校验,从而提高了MPEG-4系统的性能。
文档编号H04N7/24GK1585481SQ20041005692
公开日2005年2月23日 申请日期2004年8月20日 优先权日2003年8月20日
发明者全钟求, 朴主熙 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1