CN101267263B - 一种移动多媒体系统中的数据接收方法和终端 - Google Patents
一种移动多媒体系统中的数据接收方法和终端 Download PDFInfo
- Publication number
- CN101267263B CN101267263B CN2008100579517A CN200810057951A CN101267263B CN 101267263 B CN101267263 B CN 101267263B CN 2008100579517 A CN2008100579517 A CN 2008100579517A CN 200810057951 A CN200810057951 A CN 200810057951A CN 101267263 B CN101267263 B CN 101267263B
- Authority
- CN
- China
- Prior art keywords
- streaming media
- media bag
- multiplexed frame
- time
- bag
- 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
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种移动多媒体系统中的数据接收方法和终端;方法包括接收复用帧并解出流媒体包;根据该流媒体包的相对时间标记及之前输出给解码模块的该类流媒体包的时间信息确定流媒体包的时间信息;将流媒体包及其时间信息一起发给相应的解码模块,解码模块按照流媒体包的时间信息对流媒体包进行解码;其中,所述流媒体包的相对时间标记为该流媒体包与本频道或本复用帧中其它流媒体包的相对时间位置。本发明可以保证当切换频道或者是长时间信号中断重新接收到信号时,输出给解码模块的时间信息均为连续递增的数字。保证了解码模块工作的可靠性,能改善收视效果。
Description
技术领域
本发明涉及移动多媒体系统,尤其涉及一种移动多媒体系统中的数据接收方法和终端。
背景技术
在移动多媒体技术领域中存在大量音视频数据的传输需求,例如实时赛事直播、在线电影视播放、滚动新闻播报等。现有移动多媒体广播系统中,通常采用复用方式传输音视频数据,以现有的CMMB(中国移动多媒体广播)系统为例,发送端每秒发送一个广播信道帧,该广播信道帧由多个复用帧构成,每一复用帧又由复用帧头、一个或多个复用子帧和填充组成。每一复用子帧又由子帧头、及视频段、音频段和数据段或三个中的任一个或任意两个组成,其中,在子帧头中又包含一些控制信息及保留位。通常,1个复用帧是1个频道的1秒数据码流,接收终端只能选择一个频道,也就是说每秒接收一次,每次接收一个复用帧。
CMMB系统的接收终端包括四个模块:接收模块、解复用模块、解码模块和播放模块。其中的接收模块接收复用帧,解复用模块将接收到的复用帧解复用得到其中携带的流媒体包,将得到的流媒体包——包括音频包和/或视频包——分别发送给相应的解码模块——包括音频和视频解码模块,发送时携带该流媒体包对应的时间信息。音频和视频解码模块分别按照时间信息进行解码后得到流媒体数据——包括音/视频流传送给相应的播放模块,播放模块收到后进行播放。所述时间标记和时间信息均为数值。
目前CMMB系统中的接收方法有以下特点:
1、接收终端所播放的各个频道中的时间信息为相对时间而非绝对时间,现有技术中输出给解码模块的流媒体包的时间信息为复用帧头信息中携带的该复用帧的时间标记与该流媒体包的时间偏移量之和,所述时间偏移量为 该流媒体包相对于本复用帧中第一个该类流媒体包的时间位置;但由于各频道的复用帧的时间标记各自独立,很可能互不相同,这也就意味着同一时刻播出的几个频道中的时间信息很可能并不相同。
2、解码模块流畅播放的条件是终端开机后到本次关机前输入的流媒体包的时间信息为正序且连贯的时间顺序,出现非正序或不连贯的时间信息都被认为是异常情况。所述不连贯是指两次时间信息的差值大于正常接收时可能出现的最大差值。
当连续接收一个频道时,由于在解复用时是按照各流媒体包在复用帧中的顺序将它们输出给相应解码模块的,因此解码模块收到的流媒体包的时间信息是正序连贯的。
当切换频道的时候,由于1中所提到的情况很有可能出现解复用模块所解出的流媒体包的时间信息出现2所描述的时间信息非正序的异常情况,造成解码模块出错。
当长时间没有信号然后信号恢复的时候,也会解复用模块所解出的流媒体包的时间信息出现2所描述的时间信息不连贯的异常情况,造成解码模块出错。
一旦解码模块出错的话就无法正常解码,从而造成播放器所播放的音/视频节目不能正常播出,影响收视效果。
发明内容
本发明要解决的技术问题是提供一种移动多媒体系统中的数据接收方法和终端,保证在切换频道的过程中,解码模块工作正常,从而使得音/视频流畅播放。
为了解决上述技术问题,本发明提供了一种移动多媒体系统中的数据接收方法,包括:
接收复用帧并解出流媒体包;分别用各流媒体包的相对时间标记加上之前输出给解码模块的该类流媒体包的时间信息,得到该流媒体包的时间信息;将流媒体包及其时间信息一起发给相应的解码模块,解码模块按照流媒 体包的时间信息对流媒体包进行解码;
其中,所述流媒体包的相对时间标记为该流媒体包与本频道或本复用帧中其它流媒体包的相对时间位置;所述之前输出给解码模块的该类流媒体包的时间信息是一个累计的时间信息,或是用前次输出的时间信息变化得到。
进一步的,所述的数据接收方法还包括:
当输出任一类流媒体包时,立即开始该类流媒体包的解码工作;当输出的任一类流媒体包中断的时候,立即暂停该类流媒体包的解码工作。
进一步的,所述的数据接收方法具体包括:
(31)从移动多媒体广播网络中接收复用帧;
(32)每接收到一个复用帧时,分别将各类流媒体包的前一输出时间标记与一不大于时间偏移量的正整数之和记录为该类流媒体包的累计时间标记;所述流媒体包的前一输出时间标记为前一次输出的该类流媒体包的时间信息;所述时间偏移量为该流媒体包与本复用帧中第一个该类流媒体包的相对时间位置;
(33)对接收到的复用帧解复用得到其中的流媒体包;依次将解出的流媒体包连同其时间信息一起输出给解码模块,解码模块按照流媒体包的时间信息对流媒体包进行解码后交由相应播放器播放;其中,任一流媒体包的时间信息为其时间偏移量加上该类流媒体包的累计时间标记。
进一步的,步骤(33)中还包括:
将一个复用帧中的各类流媒体包里最后一个的时间信息分别记录为该类流媒体包的前一输出时间标记。
进一步的,所述的数据接收方法具体包括:
(51)从移动多媒体广播网络中接收复用帧;每接收到一个复用帧时,用所接收复用帧的时间标记减去前一次接收的复用帧的时间标记,得到复用帧时间标记差值;
(52)判断所述复用帧时间标记差值是否为正数且小于或等于正常播放状态1秒钟所能达到的最大复用帧时间标记差值,如果是则进行步骤(54),否则进行步骤(53);
(53)将各类流媒体包的前一输出时间标记与一不大于时间偏移量的正整数的和,分别记录为该类流媒体包的累计时间标记,并将本次接收的复用 帧的时间标记记录为各类流媒体包的起始时间标记;进行步骤(54);所述流媒体包的前一输出时间标记为前一次输出的该类流媒体包的时间信息;所述时间偏移量为该流媒体包与本复用帧中第一个该类流媒体包的相对时间位置;
(54)对复用帧解复用得到流媒体包,依次将解出的流媒体包连同各自的时间信息一起输出给解码模块;解码模块按照流媒体包的时间信息对流媒体包进行解码后交由相应播放器播放;
其中,任一流媒体包的时间信息为该流媒体包的当前时间标记减去该类流媒体包的起始时间标记,然后加上该类流媒体包的累计时间标记;
所述流媒体包的当前时间标记为该流媒体包所在复用帧的时间标记与该流媒体包的时间偏移量之和。
进一步的,步骤(54)中还包括:
分别记录各类流媒体包中最后一个的输出时间标记作为该类流媒体包的前一输出时间标记。
进一步的,所述的数据接收方法具体包括:
(71)从移动多媒体广播网络中接收复用帧;每接收到一个复用帧时,用所接收复用帧的时间标记减去前一次接收的复用帧的时间标记,得到复用帧时间标记差值;
(72)判断所述复用帧时间标记差值是否为正数且小于或等于正常播放状态1秒钟所能达到的最大复用帧时间标记差值,如果是则进行步骤(732),否则进行步骤(731);
(731)将各类流媒体包的前一输出时间标记与一不大于时间偏移量的正整数的和,分别记录为该类流媒体包的累计时间标记;进行步骤(74);所述流媒体包的前一输出时间标记为前一次输出的该类流媒体包的时间信息;所述时间偏移量为该流媒体包与本复用帧中第一个该类流媒体包的相对时间位置;
(732)将各类流媒体包原先的累计时间标记与所述复用帧时间标记差值的和分别记录为该类流媒体包的累计时间标记;进行步骤(74);
(74)对复用帧解复用得到流媒体包,依次将解出的流媒体包连同各自 的时间信息一起输出给解码模块;解码模块按照流媒体包的时间信息对流媒体包进行解码后交由相应播放器播放;
其中,任一流媒体包时间信息为该流媒体包的时间偏移量加上该类流媒体包的累计时间标记。
进一步的,步骤(74)中还包括:
分别记录各类流媒体包中最后一个的输出时间标记作为该类流媒体包的前一输出时间标记。
本发明还提供了一种移动多媒体系统中的终端,包括:
接收模块,用于接收复用帧并发送给解复用模块;
解复用模块,用于对接收的复用帧解复用得到流媒体包;还用于依次将解出的流媒体包及其时间信息一起输出给相应的解码模块;
解码模块,用于按照流媒体包的时间信息对流媒体包进行解码后交由相应播放器播放;
其特征在于:
所述解复用模块还用于分别用所解出的每个流媒体包的相对时间标记加上之前输出给解码模块的该类流媒体包的时间信息,得到该流媒体包的时间信息;所述流媒体包的相对时间标记为该流媒体包与本频道或本复用帧中其它流媒体包的相对时间位置;所述之前输出给解码模块的该类流媒体包的时间信息是一个累计的时间信息,或是用前次输出的时间信息变化得到。
进一步的,所述的终端还包括:
控制模块,用于当解复用模块输出任一类流媒体包时,指示对应于该类流媒体包的解码模块开始工作;还用于当解复用模块输出的任一类流媒体包中断时,立即指示对应于该类流媒体包的解码模块暂停工作。
进一步的,所述解复用模块包括:
复用帧解封子模块、各类流媒体包的累计时间标记寄存器、各类流媒体包的前一输出时间标记寄存器;
所述各类流媒体包的累计时间标记寄存器均用于保存本类流媒体包的 累计时间标记;
所述各类流媒体包的前一输出时间标记寄存器均用于保存本类流媒体包的前一输出时间标记;
所述复用帧解封子模块用于接收发送到解复用模块的复用帧,每接收到一个复用帧时,分别用各类流媒体包的前一输出时间标记寄存器的数值加上一不大于时间偏移量的正整数,将得到的结果分别保存在该类流媒体包的累计时间标记寄存器中;然后对复用帧解复用,每解出一个流媒体包,将其时间偏移量加上该类流媒体包的累计时间标记寄存器的数值得到该媒体包的时间信息;还用于依次将解出的流媒体包及其时间信息发送给相应的解码模块;
其中,所述流媒体包的前一输出时间标记为前一次输出的该类流媒体包的时间信息;所述时间偏移量为该流媒体包与本复用帧中第一个该类流媒体包的相对时间位置。
进一步的,所述复用帧解封子模块还用于将一个复用帧中各类流媒体包里最后一个的时间信息分别保存在该类流媒体包的前一输出时间标记寄存器中。
进一步的,所述解复用模块包括:
复用帧解封子模块、修正子模块、各类流媒体包的累计时间标记寄存器、各类流媒体包的前一输出时间标记寄存器、各类流媒体包的起始时间标记寄存器、复用帧时间标记寄存器;
所述各类流媒体包的累计时间标记寄存器均用于保存本类流媒体包的累计时间标记;
所述各类流媒体包的前一输出时间标记寄存器均用于保存本类流媒体包的前一输出时间标记;
所述各类流媒体包的起始时间标记寄存器均用于保存本类流媒体包的起始时间标记;
复用帧时间标记寄存器用于保存复用帧的时间标记;
所述复用帧解封子模块用于接收发送到解复用模块的复用帧;还用于每接收到一个复用帧时,将其时间标记发给所述修正子模块;还用于收到修正子模块的工作指示后,对所接收的复用帧解复用,每解出一个流媒体包,用其时间偏移量、该类流媒体包的累计时间标记寄存器的数值、及复用帧时间 标记寄存器的数值这三者之和,减去该类流媒体包的起始时间标记寄存器的数值,得到该流媒体包的时间信息;还用于依次将解出的流媒体包及其时间信息发送给相应的解码模块;
所述修正子模块用于在收到所述时间标记时,用其减去复用帧时间标记寄存器的数值,判断得到的差值是否为正数且小于或等于正常播放状态1秒钟所能达到的最大复用帧时间标记差值,如果是则发送工作指示给复用帧解封子模块;否则分别用各类流媒体包的前一输出时间标记寄存器的数值加上一不大于时间偏移量的正整数,将所得结果分别保存到该类流媒体包的累计时间标记寄存器中,并将所收到的时间标记保存到各类流媒体包的起始时间标记寄存器中,然后发送工作指示给复用帧解封子模块;还用于在得到所述差值后将所收到的时间标记保存到复用帧时间标记寄存器中;
其中,所述流媒体包的前一输出时间标记为前一次输出的该类流媒体包的时间信息;所述时间偏移量为该流媒体包与本复用帧中第一个该类流媒体包的相对时间位置。。
进一步的,所述复用帧解封子模块还用于将一个复用帧中各类流媒体包里最后一个的时间信息分别保存在该类流媒体包的前一输出时间标记寄存器中。
进一步的,所述解复用模块包括:
复用帧解封子模块、修正子模块、各类流媒体包的累计时间标记寄存器、各类流媒体包的前一输出时间标记寄存器、及复用帧时间标记寄存器;
所述各类流媒体包的累计时间标记寄存器均用于保存本类流媒体包的累计时间标记;
所述各类流媒体包的前一输出时间标记寄存器均用于保存本类流媒体包的前一输出时间标记;
复用帧时间标记寄存器用于保存复用帧的时间标记;
所述复用帧解封子模块用于接收发送到解复用模块的复用帧;还用于每接收到一个复用帧时,将其时间标记发给所述修正子模块;还用于收到修正子模块的工作指示后,对所接收的复用帧解复用,每解出一个流媒体包,用其时间偏移量加上该类流媒体包的累计时间标记寄存器的数值,得到该媒体包的时间信息;还用于依次将解出的流媒体包及其时间信息发送给相应的解码模块;
所述修正子模块用于在收到所述时间标记时,用其减去复用帧时间标记 寄存器的数值,判断得到的差值是否为正数且小于或等于正常播放状态1秒钟所能达到的最大复用帧时间标记差值,如果是则分别用各类流媒体包的累计时间标记寄存器的数值加上得到的差值,将所得结果分别保存到该类流媒体包的累计时间标记寄存器中,然后发送工作指示给复用帧解封子模块;否则分别用各类流媒体包的前一输出时间标记寄存器的数值加上一不大于时间偏移量的正整数,将所得结果分别保存到该类流媒体包的累计时间标记寄存器中,然后发送工作指示给复用帧解封子模块;还用于在得到所述差值后将所收到的时间标记保存到复用帧时间标记寄存器中;
其中,所述流媒体包的前一输出时间标记为前一次输出的该类流媒体包的时间信息;所述时间偏移量为该流媒体包与本复用帧中第一个该类流媒体包的相对时间位置。
进一步的,所述复用帧解封子模块还用于将一个复用帧中各类流媒体包里最后一个的时间信息分别保存在该类流媒体包的前一输出时间标记寄存器中。
本发明可以保证当切换频道或者是长时间信号中断重新接收到信号时,输出给解码模块的时间信息均为连续递增的数字。保证了解码模块工作的可靠性,能改善收视效果。本发明的优化方案之一在每次接收复用帧后都在累计的时间标记基础上输出时间信息,能够简单方便的实现输出给解码模块连续递增的时间信息。本发明的又一优化方案在每次接收复用帧后先进行判断,如果是正常接收则不进行特别处理,否则对时间信息进行修正,该方案能够根据情况不同灵活处理;本发明的再一优化方案也在每次接收复用帧后先进行判断,正常则在累计的时间标记基础上输出时间信息,不正常则修正时间信息,该方案可以结合前两种优化方案的优点。
附图说明
图1是本发明提供的移动多媒体系统中的数据接收方法的第一种优化方案的具体实施流程图;
图2是本发明提供的移动多媒体系统中的数据接收方法的第二种优化方案的具体实施流程图;
图3是本发明提供的移动多媒体系统中的数据接收方法的第三种优化方案的具体实施流程图;
图4是本发明终端的第一种实现方案的具体实施框图;
图5是本发明终端的第二种实现方案的具体实施框图;
图6是本发明终端的第三种实现方案的具体实施框图。
具体实施方式
下面将结合附图及实施例对本发明的技术方案进行更详细的说明。
本发明提供了一种移动多媒体系统中的数据接收方法,包括:
接收复用帧并解出流媒体包;将流媒体包及其时间信息一起输出给相应的解码模块;解码模块按照流媒体包的时间信息对流媒体包进行解码后交由相应播放器播放。其中,根据该流媒体包的相对时间标记及之前输出给解码模块的该类流媒体包的时间信息确定流媒体包的时间信息;所述流媒体包的相对时间标记为该流媒体包与本频道或本复用帧中其它流媒体包的相对时间位置;所述之前输出给解码模块的该类流媒体包的时间信息可以是一个累计的时间信息,也可以是用前次输出的时间信息变化得到的;
该方法为任一复用帧的接收过程,终端按此方法不断接收复用帧并进行播放。
本方法还可以包括:当输出任一类流媒体包时,立即开始该类流媒体包的解码工作;当输出的任一类流媒体包中断的时候,立即暂停该类流媒体包的解码工作。
在上述核心思想的指导下,有多种具体的实现形式,下面将介绍三种比较优化的方案。
在本发明提供的数据接收方法的第一种优化方案里,所述流媒体包的相对时间标记为该流媒体包的时间偏移量,相当于该流媒体包与本复用帧中第 一个该类流媒体包的相对时间位置;而所述之前输出给解码模块的该类流媒体包的时间信息则为前一次输出的该类流媒体包的时间信息加上一不大于时间偏移量的正整数。加上一正整数的目的是保证输出给解码模块的时间信息不会出现两次相同的情况,对于不同类别的流媒体包,所加正整数可以相同或不同。
本优化方案中,根据该流媒体包的相对时间标记及之前输出给解码模块的该类流媒体包的时间信息确定流媒体包的时间信息是指:
每接收到一个复用帧时,分别将各类流媒体包的累计时间标记设置为前一次输出的该类流媒体包的时间信息加上任意正整数之和。任一流媒体包的时间信息为该流媒体包的时间偏移量加上该类流媒体包的累计时间标记。
全面来说,数据接收方法的第一种优化方案如图1所示,具体包括:
(1)从移动多媒体广播网络中接收复用帧;
(2)每接收到一个复用帧时,分别将各类流媒体包的前一输出时间标记与一不大于时间偏移量的正整数之和记录为该类流媒体包的累计时间标记。所述流媒体包的前一输出时间标记为前一次输出的该类流媒体包的时间信息。
(3)对接收到的复用帧解复用得到其中的流媒体包;依次将解出的流媒体包连同其时间信息一起输出给解码模块,解码模块按照流媒体包的时间信息对流媒体包进行解码后交由相应播放器播放。其中,任一流媒体包的时间信息为其时间偏移量加上该类流媒体包的累计时间标记。
本步骤还可以包括:将一个复用帧中的各类流媒体包里最后一个的时间信息分别记录为该类流媒体包的前一输出时间标记。
本方法还可以包括:终端开机后接收第一个复用帧前,设置各类流媒体包的前一输出时间标记中的全部或部分为任意值,比如为0;也可以全都不设置,此时所述各类流媒体包的前一输出时间标记分别为终端前一次关机前最后一个该类流媒体包的输出时间标记。当然,对终端开机后接收到的第一个复用帧也可以不按上述方法计算各类流媒体包的累计时间标记,而是直接指定一个数值或用别的方法计算,但这样需要判断所接收的是否为开机后的 第一个复用帧,然后第一个复用帧和其它复用帧用不同方式处理,逻辑比较复杂。
所述流媒体包可以至少包括两类:音频单元和视频单元;相应的,解码模块包括音频解码模块和视频解码模块;播放器包括音频播放器和视频播放器;累计时间标记包括音频单元累计时间标记和视频单元累计时间标记;前一输出时间标记包括音频单元前一输出时间标记和视频单元前一输出时间标记。
该优化方案主要的特点是实现简单,但不能针对不同情况灵活处理。
在本发明提供的数据接收方法的第二种优化方案里,所述流媒体包的相对时间标记为该流媒体包与本频道中未中断接收情况下的第一个该类流媒体包的相对时间位置。所述之前输出给解码模块的该类流媒体包的时间信息为该类流媒体包的累计时间标记:当信号的接收出现变动时,所述流媒体包的累计时间标记则为前一次输出的该类流媒体包的时间信息加上一不大于时间偏移量的正整数;加上一正整数的目的是保证输出给解码模块的时间信息不会出现两次相同的情况,对于不同类别的流媒体包,所加正整数可以相同或不同。如果信号的接收没出现变动,所述流媒体包的累计时间标记则不变。信号的接收出现变动是指换频道或信号中断又恢复。
全面来说,数据接收方法的第二种优化方案如图2所示,具体包括:
A、从移动多媒体广播网络中接收复用帧;每接收到一个复用帧时,用所接收复用帧的时间标记减去前一次接收的复用帧的时间标记,得到复用帧时间标记差值。
本步骤还可以包括:记录本次所接收的复用帧的时间标记,替代原先记录的前一次接收的复用帧的时间标记。
B、判断所述复用帧时间标记差值是否为正数且小于或等于正常播放状态1秒钟所能达到的最大复用帧时间标记差值,如果是则进行步骤D,否则进行步骤C。
C、将各类流媒体包的前一输出时间标记与一不大于时间偏移量的正整 数的和,分别记录为该类流媒体包的累计时间标记,并将本次接收的复用帧的时间标记记录为各类流媒体包的起始时间标记;进行步骤D。所述流媒体包的前一输出时间标记为前一次输出的该类流媒体包的时间信息。
D、对复用帧解复用得到流媒体包,依次将解出的流媒体包连同各自的时间信息一起输出给解码模块;解码模块按照流媒体包的时间信息对流媒体包进行解码后交由相应播放器播放。其中,任一流媒体包的时间信息为该流媒体包的当前时间标记减去该类流媒体包的起始时间标记,然后加上该类流媒体包的累计时间标记。所述流媒体包的当前时间标记为该流媒体包所在复用帧的时间标记与该流媒体包的时间偏移量之和。
可以看出,当进行过C再进行D时,对于复用帧中各类流媒体包里的第一个来说,由于时间偏移量为0,其当前时间标记与起始时间标记是相同的,其时间信息实际上就是累计时间标记。
本步骤还可以包括:分别记录各类流媒体包中最后一个的输出时间标记作为该类流媒体包的前一输出时间标记。
终端每秒接收一个复用帧,对于接收到的每个复用帧,按上述步骤A到D进行解复用、解码及播放,就能够避免当换频道或广播信号中断又恢复时,解码模块出现异常的问题。
所述流媒体包可以至少包括两类:音频单元和视频单元;相应的,解码模块包括音频解码模块和视频解码模块;播放器包括音频播放器和视频播放器;累计时间标记包括音频单元累计时间标记和视频单元累计时间标记;其它时间标记的情况类似,这里不再赘述。
本方法还可以包括:终端开机后接收第一个复用帧前可以设置前一复用帧时间标记、各类流媒体包的前一输出时间标记、累计时间标记、起始时间标记中的全部或部分为任意值,比如为0;也可以全都不设置,直接保留终端中原来的记录。
该优化方案主要的特点是能针对不同情况灵活处理,当信号未改变时,不存在输出的时间信息异常的风险,因此不用加以修正;仅当信号改变时才进行修正处理。
在本发明提供的数据接收方法的第三种优化方案里,所述流媒体包的相对时间标记为该流媒体包的时间偏移量。所述之前输出给解码模块的该类流媒体包的时间信息为该类流媒体包的累计时间标记:当信号的接收出现变动时,所述流媒体包的累计时间标记则为前一次输出的该类流媒体包的时间信息加上一不大于时间偏移量的正整数;加上一正整数的目的是保证输出给解码模块的时间信息不会出现两次相同的情况,对于不同类别的流媒体包,所加正整数可以相同或不同。如果信号的接收没出现变动,所述流媒体包的累计时间标记则为原先的累计时间标记与所述复用帧的时间标记差值之和。信号的接收出现变动是指换频道或信号中断又恢复。
全面来说,数据接收方法的第三种优化方案如图3所示,具体包括:
a、同上述步骤A。
b、判断所述复用帧时间标记差值是否为正数且小于或等于正常播放状态1秒钟所能达到的最大复用帧时间标记差值,如果是则进行步骤c2,否则进行步骤c1。
c1、将各类流媒体包的前一输出时间标记与一不大于时间偏移量的正整数的和,分别记录为该类流媒体包的累计时间标记;进行步骤d;所述流媒体包的前一输出时间标记为前一次输出的该类流媒体包的时间信息。
c2、将各类流媒体包原先的累计时间标记与所述复用帧时间标记差值的和分别记录为该类流媒体包的累计时间标记;进行步骤d。
d、对复用帧解复用得到流媒体包,依次将解出的流媒体包连同各自的时间信息一起输出给解码模块;解码模块按照流媒体包的时间信息对流媒体包进行解码后交由相应播放器播放。其中,任一流媒体包时间信息为该流媒体包的时间偏移量加上该类流媒体包的累计时间标记。
本步骤还可以包括:分别记录各类流媒体包中最后一个的输出时间标记作为该类流媒体包的前一输出时间标记。
可以看出,当进行过c1再进行d时,对于复用帧中各类流媒体包里的第一个来说,由于其时间偏移量为0,因此其输出时间标记实际上就是累计 时间标记。
对于接收到的每个复用帧,按上述步骤a到d进行解复用、解码及播放,就能够避免当换频道或广播信号中断又恢复时,解码模块出现异常。
所述流媒体包可以至少包括两类:音频单元和视频单元;相应的,解码模块包括音频解码模块和视频解码模块;播放器包括音频播放器和视频播放器;累计时间标记包括音频单元累计时间标记和视频单元累计时间标记;其它时间标记的情况类似,这里不再赘述。
本方法还可以包括:终端开机后接收第一个复用帧前可以设置前一复用帧时间标记、各类流媒体包的前一输出时间标记和累计时间标记中的全部或部分为任意值,比如为0;也可以全都不设置,直接保留终端中原来的记录。
该优化方案也能针对不同情况灵活处理,与前一优化方案不同的是,无论信号是否改变都先进行一定处理,但处理方法不同,其优点是得到各流媒体包的时间信息时较为简便。
本发明还提供了一种移动多媒体系统中的终端,包括:接收模块、解复用模块、解码模块和播放器。其中:
接收模块用于接收复用帧并发送给解复用模块;
解复用模块用于对接收的复用帧解复用得到流媒体包;还用于根据所解出的每个流媒体包的相对时间标记及之前输出给解码模块的该类流媒体包的时间信息确定该流媒体包的时间信息;还用于依次将解出的流媒体包及其时间信息一起输出给相应的解码模块。其中,所述流媒体包的相对时间标记为该流媒体包与本频道或本复用帧中其它流媒体包的相对时间位置;所述之前输出给解码模块的该类流媒体包的时间信息可以是一个累计的时间信息,也可以是用前次输出的时间信息变化得到的;
解码模块用于按照流媒体包的时间信息对流媒体包进行解码后交由相应播放器播放。
所述流媒体包可以至少包括两类:音频单元和视频单元;相应的,解码模块包括音频解码模块和视频解码模块;播放器包括音频播放器和视频播放 器。
还可以包括控制模块,用于当解复用模块输出任一类流媒体包时,指示对应于该类流媒体包的解码模块开始工作;还用于当解复用模块输出的任一类流媒体包中断时,立即指示对应于该类流媒体包的解码模块暂停工作。
本发明提供的终端有多种具体的实现形式,下面将介绍与方法中的优化方案一一对应的三种具体的终端实现方案。
在本发明提供的终端的第一种实现方案如图4所示,所述解复用模块包括:复用帧解封子模块、各类流媒体包的累计时间标记寄存器、各类流媒体包的前一输出时间标记寄存器。
所述各类流媒体包的累计时间标记寄存器均用于保存本类流媒体包的累计时间标记。累计时间标记寄存器可以包括音频单元累计时间标记寄存器和视频单元累计时间标记寄存器。
所述各类流媒体包的前一输出时间标记寄存器均用于保存本类流媒体包的前一输出时间标记。前一输出时间标记寄存器可以包括音频单元前一输出时间标记寄存器和视频单元前一输出时间标记寄存器。
所述复用帧解封子模块用于接收发送到解复用模块的复用帧,每接收到一个复用帧时,分别用各类流媒体包的前一输出时间标记寄存器的数值加上一不大于时间偏移量的正整数,将得到的结果分别保存在该类流媒体包的累计时间标记寄存器中;然后对复用帧解复用,每解出一个流媒体包,将其时间偏移量加上该类流媒体包的累计时间标记寄存器的数值得到该媒体包的时间信息;还用于依次将解出的流媒体包及其时间信息发送给相应的解码模块。
所述复用帧解封子模块还可以用于将一个复用帧中各类流媒体包里最后一个的时间信息分别保存在该类流媒体包的前一输出时间标记寄存器中。
所述终端还可以包括设置模块,用于在终端开机后接收第一个复用帧前,设置全部或部分前一输出时间标记寄存器的数值;可以设置为任意值,比如为0。
在本发明提供的终端的第二种实现方案如图5所示,所述解复用模块包括:复用帧解封子模块、修正子模块、各类流媒体包的累计时间标记寄存器、各类流媒体包的前一输出时间标记寄存器、各类流媒体包的起始时间标记寄存器、复用帧时间标记寄存器。
所述各类流媒体包的累计时间标记寄存器均用于保存本类流媒体包的累计时间标记。累计时间标记寄存器可以包括音频单元累计时间标记寄存器和视频单元累计时间标记寄存器。
所述各类流媒体包的前一输出时间标记寄存器均用于保存本类流媒体包的前一输出时间标记。前一输出时间标记寄存器可以包括音频单元前一输出时间标记寄存器和视频单元前一输出时间标记寄存器。
所述各类流媒体包的起始时间标记寄存器均用于保存本类流媒体包的起始时间标记。起始时间标记寄存器可以包括音频单元起始时间标记寄存器和视频单元起始时间标记寄存器。
复用帧时间标记寄存器用于保存复用帧的时间标记。
所述复用帧解封子模块用于接收发送到解复用模块的复用帧;还用于每接收到一个复用帧时,将其时间标记发给所述修正子模块;还用于收到修正子模块的工作指示后,对所接收的复用帧解复用,每解出一个流媒体包,用其时间偏移量、该类流媒体包的累计时间标记寄存器的数值、及复用帧时间标记寄存器的数值这三者之和,减去该类流媒体包的起始时间标记寄存器的数值,得到该流媒体包的时间信息;还用于依次将解出的流媒体包及其时间信息发送给相应的解码模块。
所述复用帧解封子模块还可以用于将一个复用帧中各类流媒体包里最后一个的时间信息分别保存在该类流媒体包的前一输出时间标记寄存器中。
所述修正子模块用于在收到所述时间标记时,用其减去复用帧时间标记寄存器的数值,判断得到的差值是否为正数且小于或等于正常播放状态1秒钟所能达到的最大复用帧时间标记差值,如果是则发送工作指示给复用帧解封子模块;否则分别用各类流媒体包的前一输出时间标记寄存器的数值加上 一不大于时间偏移量的正整数,将所得结果分别保存到该类流媒体包的累计时间标记寄存器中,并将所收到的时间标记保存到各类流媒体包的起始时间标记寄存器中,然后发送工作指示给复用帧解封子模块;还用于在得到所述差值后将所收到的时间标记保存到复用帧时间标记寄存器中。
所述终端还可以包括设置模块,用于在终端开机后接收第一个复用帧前设置前一复用帧时间标记寄存器、各类流媒体包的前一输出时间标记寄存器、累计时间标记寄存器、起始时间标记寄存器中的全部或部分为任意值,比如为0。
在本发明提供的终端的第三种实现方案如图6所示,所述解复用模块包括:复用帧解封子模块、修正子模块、各类流媒体包的累计时间标记寄存器、各类流媒体包的前一输出时间标记寄存器、及复用帧时间标记寄存器。
所述各类流媒体包的累计时间标记寄存器均用于保存本类流媒体包的累计时间标记。累计时间标记寄存器可以包括音频单元累计时间标记寄存器和视频单元累计时间标记寄存器。
所述各类流媒体包的前一输出时间标记寄存器均用于保存本类流媒体包的前一输出时间标记。前一输出时间标记寄存器可以包括音频单元前一输出时间标记寄存器和视频单元前一输出时间标记寄存器。
复用帧时间标记寄存器用于保存复用帧的时间标记。
所述复用帧解封子模块用于接收发送到解复用模块的复用帧;还用于每接收到一个复用帧时,将其时间标记发给所述修正子模块;还用于收到修正子模块的工作指示后,对所接收的复用帧解复用,每解出一个流媒体包,用其时间偏移量加上该类流媒体包的累计时间标记寄存器的数值,得到该媒体包的时间信息;还用于依次将解出的流媒体包及其时间信息发送给相应的解码模块。
所述复用帧解封子模块还可以用于将一个复用帧中各类流媒体包里最后一个的时间信息分别保存在该类流媒体包的前一输出时间标记寄存器中。
所述修正子模块用于在收到所述时间标记时,用其减去复用帧时间标记 寄存器的数值,判断得到的差值是否为正数且小于或等于正常播放状态1秒钟所能达到的最大复用帧时间标记差值,如果是则分别用各类流媒体包的累计时间标记寄存器的数值加上得到的差值,将所得结果分别保存到该类流媒体包的累计时间标记寄存器中,然后发送工作指示给复用帧解封子模块;否则分别用各类流媒体包的前一输出时间标记寄存器的数值加上一不大于时间偏移量的正整数,将所得结果分别保存到该类流媒体包的累计时间标记寄存器中,然后发送工作指示给复用帧解封子模块;还用于在得到所述差值后将所收到的时间标记保存到复用帧时间标记寄存器中。
所述终端还可以包括设置模块,用于在终端开机后接收第一个复用帧前设置前一复用帧时间标记寄存器、各类流媒体包的前一输出时间标记寄存器、累计时间标记寄存器中的全部或部分为任意值,比如为0。
下面用本发明的一应用实例进一步加以说明。
在本应用实例中,以视频单元为例进行说明,音频单元的情况类似。本应用实例采用本发明提供的第二种优化方案。
本应用实例中假设正常播放状态1秒钟所能达到的最大复用帧时间标记差值为1200,时间偏移量为40。
终端开机的时候,将前一复用帧的时间标记置为0;将视频单元的前一输出时间标记置为-40,这样是为了使开机后收看第一个频道时,视频单元的累计时间标记为0,运算起来比较简单。
终端接收第一个复用帧,其帧头中的时间标记为50000000,因此与前一复用帧时间标记的差值为50000000,大于正常播放状态1秒钟所能达到的最大复用帧时间标记差值,因此将视频单元的前一输出时间标记与一个时间偏移量的和记录为视频单元的累计时间标记,即0+(-40)=0,视频单元的累计时间标记为0。
将复用帧的时间标记50000000作为视频单元的起始时间标记。
从该复用帧中解出视频单元,任一视频单元的输出时间标记为该视频单 元的当前时间标记减去50000000,然后加上0。所述流媒体包的当前时间标记为该流媒体包所在复用帧的时间标记与该流媒体包的时间偏移量之和。
当下一秒接收到下一个复用帧时,其帧头中的时间标记为50001200,与前一复用帧时间标记的差值为1200,大于正常播放状态1秒钟所能达到的最大复用帧时间标记差值,因此不用调整累加值。
从该复用帧中解出视频单元,任一视频单元的输出时间标记为该视频单元的当前时间标记减去50000000,然后加上0。
以此类推,终端开机后所接收的第一个频道的视频单元的输出时间标记如下:
表一、终端开机后接收第一个频道时各视频单元对应的时间标记
时间 | 输出时间标记 | 累计时间标记 | 当前时间标记 | 起始时间标记 |
0ms | 0 | 0 | 50000000 | 50000000 |
40 | 0 | 50000040 | 50000000 | |
80 | 0 | 50000080 | 50000000 | |
...... | ...... | ...... | ...... | ...... |
1000ms | 1200 | 0 | 50001200 | 50000000 |
2000ms | 2400 | 0 | 50002400 | 50000000 |
...... | ...... | ...... | ...... | ...... |
...... | 3560 | 0 | 50003560 | 50000000 |
2秒后,更换频道,接收到的复用帧的时间标记为40000000,其与前一复用帧的时间标记50002400的差值为负数,因此累计时间标记为视频单元前一输出时间标记3560+40=3600,将40000000作为新的起始时间标记,可见输出时间标记相当于是累计时间标记3600;换频道后接收的各视频单元的输出时间标记如下:
表二、换频道后各视频单元对应的时间标记
时间 | 输出时间标记 | 累计时间标记 | 当前时间标记 | 起始时间标记 |
3000ms | 3600 | 3600 | 40000000 | 40000000 |
3640 | 3600 | 40000040 | 40000000 | |
...... | ...... | ...... | ...... | ...... |
4000ms | 4800 | 3600 | 40001200 | 40000000 |
...... | ...... | ...... | ...... | ...... |
...... | 5960 | 3600 | 40002360 | 40000000 |
此后出现了信号中断,当5000ms、6000ms时均无信号。当7000ms时信号恢复,接收到的复用帧的时间标记为40008400,其与前一复用帧的时间标记40001200的差值为7200,大于正常播放状态1秒钟所能达到的最大当前时间标记差值,因此累计时间标记为视频单元前一输出时间标记5960+40=6000,将40008400作为新的起始时间标记,可见输出时间标记相当于是累计时间标记6000;信号中断又恢复时接收的各视频单元的输出时间标记如下:
表三、信号中断又恢复后各视频单元对应的时间标记
时间 | 输出时间标记 | 累计时间标记 | 当前时间标记 | 起始时间标记 |
7000ms | 6000 | 6000 | 40008400 | 40008400 |
...... | 6040 | 6000 | 40008440 | 40008400 |
...... | ...... | ...... | ...... | ...... |
可以看出,这样解码模块得到一个从0开始的连续的时间标记。
当解复用模块输出的音/视频流中断的时候,立即相应暂停音频流和视频流的解码模块工作。待音/视频流重新有输出的时候,立即相应开始音/视频解码模块的工作。
暂停解码器的工作使得解码模块内部的时间标记不再发生变化。保证在信号中断和重新恢复这段时间,解码模块中的时间标记不发生变化,这样就和输入的数据流中的时间标记对应上了。
比如在上述例子中,5000ms-6000ms的时候无信号,解复用模块输出的音/视频流中断,这时候暂停相应解码模块的工作,待7000ms时,解复用模块再次向外输出音/视频流的时候,相应解码模块重新开始工作,这样的机制确保了输入解码模块的时间标记,与解码模块内部的时间轴同步。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (16)
1.一种移动多媒体系统中的数据接收方法,包括:
接收复用帧并解出流媒体包;分别用各流媒体包的相对时间标记加上之前输出给解码模块的该类流媒体包的时间信息,得到该流媒体包的时间信息;将流媒体包及其时间信息一起发给相应的解码模块,解码模块按照流媒体包的时间信息对流媒体包进行解码;
其中,所述流媒体包的相对时间标记为该流媒体包与本频道或本复用帧中其它流媒体包的相对时间位置;所述之前输出给解码模块的该类流媒体包的时间信息是一个累计的时间信息,或是用前次输出的时间信息变化得到。
2.如权利要求1所述的数据接收方法,其特征在于,还包括:
当输出任一类流媒体包时,立即开始该类流媒体包的解码工作;当输出的任一类流媒体包中断的时候,立即暂停该类流媒体包的解码工作。
3.如权利要求1或2所述的数据接收方法,其特征在于,具体包括:
(31)从移动多媒体广播网络中接收复用帧;
(32)每接收到一个复用帧时,分别将各类流媒体包的前一输出时间标记与一不大于时间偏移量的正整数之和记录为该类流媒体包的累计时间标记;所述流媒体包的前一输出时间标记为前一次输出的该类流媒体包的时间信息;所述时间偏移量为该流媒体包与本复用帧中第一个该类流媒体包的相对时间位置;
(33)对接收到的复用帧解复用得到其中的流媒体包;依次将解出的流媒体包连同其时间信息一起输出给解码模块,解码模块按照流媒体包的时间信息对流媒体包进行解码后交由相应播放器播放;其中,任一流媒体包的时间信息为其时间偏移量加上该类流媒体包的累计时间标记。
4.如权利要求3所述的数据接收方法,其特征在于,步骤(33)中还包括:
将一个复用帧中的各类流媒体包里最后一个的时间信息分别记录为该类流媒体包的前一输出时间标记。
5.如权利要求1或2所述的数据接收方法,其特征在于,具体包括:
(51)从移动多媒体广播网络中接收复用帧;每接收到一个复用帧时,用所接收复用帧的时间标记减去前一次接收的复用帧的时间标记,得到复用帧时间标记差值;
(52)判断所述复用帧时间标记差值是否为正数且小于或等于正常播放状态1秒钟所能达到的最大复用帧时间标记差值,如果是则进行步骤(54),否则进行步骤(53);
(53)将各类流媒体包的前一输出时间标记与一不大于时间偏移量的正整数的和,分别记录为该类流媒体包的累计时间标记,并将本次接收的复用帧的时间标记记录为各类流媒体包的起始时间标记;进行步骤(54);所述流媒体包的前一输出时间标记为前一次输出的该类流媒体包的时间信息;所述时间偏移量为该流媒体包与本复用帧中第一个该类流媒体包的相对时间位置;
(54)对复用帧解复用得到流媒体包,依次将解出的流媒体包连同各自的时间信息一起输出给解码模块;解码模块按照流媒体包的时间信息对流媒体包进行解码后交由相应播放器播放;
其中,任一流媒体包的时间信息为该流媒体包的当前时间标记减去该类流媒体包的起始时间标记,然后加上该类流媒体包的累计时间标记;
所述流媒体包的当前时间标记为该流媒体包所在复用帧的时间标记与该流媒体包的时间偏移量之和。
6.如权利要求5所述的数据接收方法,其特征在于,步骤(54)中还包括:
分别记录各类流媒体包中最后一个的输出时间标记作为该类流媒体包的前一输出时间标记。
7.如权利要求1或2所述的数据接收方法,其特征在于,具体包括:
(71)从移动多媒体广播网络中接收复用帧;每接收到一个复用帧时,用所接收复用帧的时间标记减去前一次接收的复用帧的时间标记,得到复用帧时间标记差值;
(72)判断所述复用帧时间标记差值是否为正数且小于或等于正常播放状态1秒钟所能达到的最大复用帧时间标记差值,如果是则进行步骤(732),否则进行步骤(731);
(731)将各类流媒体包的前一输出时间标记与一不大于时间偏移量的正整数的和,分别记录为该类流媒体包的累计时间标记;进行步骤(74);所述流媒体包的前一输出时间标记为前一次输出的该类流媒体包的时间信息;所述时间偏移量为该流媒体包与本复用帧中第一个该类流媒体包的相对时间位置;
(732)将各类流媒体包原先的累计时间标记与所述复用帧时间标记差值的和分别记录为该类流媒体包的累计时间标记;进行步骤(74);
(74)对复用帧解复用得到流媒体包,依次将解出的流媒体包连同各自的时间信息一起输出给解码模块;解码模块按照流媒体包的时间信息对流媒体包进行解码后交由相应播放器播放;
其中,任一流媒体包时间信息为该流媒体包的时间偏移量加上该类流媒体包的累计时间标记。
8.如权利要求7所述的数据接收方法,其特征在于,步骤(74)中还包括:
分别记录各类流媒体包中最后一个的输出时间标记作为该类流媒体包的前一输出时间标记。
9.一种移动多媒体系统中的终端,包括:
接收模块,用于接收复用帧并发送给解复用模块;
解复用模块,用于对接收的复用帧解复用得到流媒体包;还用于依次将解出的流媒体包及其时间信息一起输出给相应的解码模块;
解码模块,用于按照流媒体包的时间信息对流媒体包进行解码后交由相应播放器播放;
其特征在于:
所述解复用模块还用于分别用所解出的每个流媒体包的相对时间标记加上之前输出给解码模块的该类流媒体包的时间信息,得到该流媒体包的时间信息;所述流媒体包的相对时间标记为该流媒体包与本频道或本复用帧中其它流媒体包的相对时间位置;所述之前输出给解码模块的该类流媒体包的时间信息是一个累计的时间信息,或是用前次输出的时间信息变化得到。
10.如权利要求9所述的终端,其特征在于,还包括:
控制模块,用于当解复用模块输出任一类流媒体包时,指示对应于该类流媒体包的解码模块开始工作;还用于当解复用模块输出的任一类流媒体包中断时,立即指示对应于该类流媒体包的解码模块暂停工作。
11.如权利要求9或10所述的终端,其特征在于,所述解复用模块包括:
复用帧解封子模块、各类流媒体包的累计时间标记寄存器、各类流媒体包的前一输出时间标记寄存器;
所述各类流媒体包的累计时间标记寄存器均用于保存本类流媒体包的累计时间标记;
所述各类流媒体包的前一输出时间标记寄存器均用于保存本类流媒体包的前一输出时间标记;
所述复用帧解封子模块用于接收发送到解复用模块的复用帧,每接收到一个复用帧时,分别用各类流媒体包的前一输出时间标记寄存器的数值加上一不大于时间偏移量的正整数,将得到的结果分别保存在该类流媒体包的累计时间标记寄存器中;然后对复用帧解复用,每解出一个流媒体包,将其时间偏移量加上该类流媒体包的累计时间标记寄存器的数值得到该媒体包的时间信息;还用于依次将解出的流媒体包及其时间信息发送给相应的解码模块;
其中,所述流媒体包的前一输出时间标记为前一次输出的该类流媒体包的时间信息;所述时间偏移量为该流媒体包与本复用帧中第一个该类流媒体包的相对时间位置。
12.如权利要求11所述的终端,其特征在于:
所述复用帧解封子模块还用于将一个复用帧中各类流媒体包里最后一个的时间信息分别保存在该类流媒体包的前一输出时间标记寄存器中。
13.如权利要求9或10所述的终端,其特征在于,所述解复用模块包括:
复用帧解封子模块、修正子模块、各类流媒体包的累计时间标记寄存器、各类流媒体包的前一输出时间标记寄存器、各类流媒体包的起始时间标记寄存器、复用帧时间标记寄存器;
所述各类流媒体包的累计时间标记寄存器均用于保存本类流媒体包的累计时间标记;
所述各类流媒体包的前一输出时间标记寄存器均用于保存本类流媒体包的前一输出时间标记;
所述各类流媒体包的起始时间标记寄存器均用于保存本类流媒体包的起始时间标记;
复用帧时间标记寄存器用于保存复用帧的时间标记;
所述复用帧解封子模块用于接收发送到解复用模块的复用帧;还用于每接收到一个复用帧时,将其时间标记发给所述修正子模块;还用于收到修正子模块的工作指示后,对所接收的复用帧解复用,每解出一个流媒体包,用其时间偏移量、该类流媒体包的累计时间标记寄存器的数值、及复用帧时间标记寄存器的数值这三者之和,减去该类流媒体包的起始时间标记寄存器的数值,得到该流媒体包的时间信息;还用于依次将解出的流媒体包及其时间信息发送给相应的解码模块;
所述修正子模块用于在收到所述时间标记时,用其减去复用帧时间标记寄存器的数值,判断得到的差值是否为正数且小于或等于正常播放状态1秒钟所能达到的最大复用帧时间标记差值,如果是则发送工作指示给复用帧解封子模块;否则分别用各类流媒体包的前一输出时间标记寄存器的数值加上一不大于时间偏移量的正整数,将所得结果分别保存到该类流媒体包的累计时间标记寄存器中,并将所收到的时间标记保存到各类流媒体包的起始时间标记寄存器中,然后发送工作指示给复用帧解封子模块;还用于在得到所述差值后将所收到的时间标记保存到复用帧时间标记寄存器中;
其中,所述流媒体包的前一输出时间标记为前一次输出的该类流媒体包的时间信息;所述时间偏移量为该流媒体包与本复用帧中第一个该类流媒体包的相对时间位置。
14.如权利要求13所述的终端,其特征在于:
所述复用帧解封子模块还用于将一个复用帧中各类流媒体包里最后一个的时间信息分别保存在该类流媒体包的前一输出时间标记寄存器中。
15.如权利要求9或10所述的终端,其特征在于,所述解复用模块包括:
复用帧解封子模块、修正子模块、各类流媒体包的累计时间标记寄存器、 各类流媒体包的前一输出时间标记寄存器、及复用帧时间标记寄存器;
所述各类流媒体包的累计时间标记寄存器均用于保存本类流媒体包的累计时间标记;
所述各类流媒体包的前一输出时间标记寄存器均用于保存本类流媒体包的前一输出时间标记;
复用帧时间标记寄存器用于保存复用帧的时间标记;
所述复用帧解封子模块用于接收发送到解复用模块的复用帧;还用于每接收到一个复用帧时,将其时间标记发给所述修正子模块;还用于收到修正子模块的工作指示后,对所接收的复用帧解复用,每解出一个流媒体包,用其时间偏移量加上该类流媒体包的累计时间标记寄存器的数值,得到该媒体包的时间信息;还用于依次将解出的流媒体包及其时间信息发送给相应的解码模块;
所述修正子模块用于在收到所述时间标记时,用其减去复用帧时间标记寄存器的数值,判断得到的差值是否为正数且小于或等于正常播放状态1秒钟所能达到的最大复用帧时间标记差值,如果是则分别用各类流媒体包的累计时间标记寄存器的数值加上得到的差值,将所得结果分别保存到该类流媒体包的累计时间标记寄存器中,然后发送工作指示给复用帧解封子模块;否则分别用各类流媒体包的前一输出时间标记寄存器的数值加上一不大于时间偏移量的正整数,将所得结果分别保存到该类流媒体包的累计时间标记寄存器中,然后发送工作指示给复用帧解封子模块;还用于在得到所述差值后将所收到的时间标记保存到复用帧时间标记寄存器中;
其中,所述流媒体包的前一输出时间标记为前一次输出的该类流媒体包的时间信息;所述时间偏移量为该流媒体包与本复用帧中第一个该类流媒体包的相对时间位置。
16.如权利要求15所述的终端,其特征在于:
所述复用帧解封子模块还用于将一个复用帧中各类流媒体包里最后一个的时间信息分别保存在该类流媒体包的前一输出时间标记寄存器中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008100579517A CN101267263B (zh) | 2008-02-21 | 2008-02-21 | 一种移动多媒体系统中的数据接收方法和终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008100579517A CN101267263B (zh) | 2008-02-21 | 2008-02-21 | 一种移动多媒体系统中的数据接收方法和终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101267263A CN101267263A (zh) | 2008-09-17 |
CN101267263B true CN101267263B (zh) | 2011-03-23 |
Family
ID=39989432
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008100579517A Expired - Fee Related CN101267263B (zh) | 2008-02-21 | 2008-02-21 | 一种移动多媒体系统中的数据接收方法和终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101267263B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101938641B (zh) * | 2010-06-30 | 2012-09-26 | 无锡中星微电子有限公司 | 一种移动多媒体广播电视播放的系统和实现方法 |
CN102184739B (zh) * | 2011-03-08 | 2012-11-07 | 深圳英飞拓科技股份有限公司 | 一种录像播放装置及方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1492684A (zh) * | 1993-05-13 | 2004-04-28 | ��ķɭ���ѵ�������˾ | 视频信号压缩装置及其压缩方法 |
-
2008
- 2008-02-21 CN CN2008100579517A patent/CN101267263B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1492684A (zh) * | 1993-05-13 | 2004-04-28 | ��ķɭ���ѵ�������˾ | 视频信号压缩装置及其压缩方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101267263A (zh) | 2008-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9918113B2 (en) | Digital broadcasting system and method of processing data | |
CN1953440B (zh) | 能适应动态环境变动的单载波传输系统及其方法 | |
JP4157340B2 (ja) | 送信装置、受信装置を含む放送システム、受信装置、及びプログラム。 | |
JP4864499B2 (ja) | 局間伝送システム、送信装置、受信装置、及び局間伝送方法 | |
CA2792106C (en) | Method and system for inhibiting audio-video synchronization delay | |
CN103888815A (zh) | 一种音视频流实时分离处理及同步的方法及其系统 | |
EP2071749B1 (en) | Multimedia information receiving apparatus | |
US10686617B2 (en) | Digital broadcasting system and method of processing data | |
CN101267263B (zh) | 一种移动多媒体系统中的数据接收方法和终端 | |
US7668261B2 (en) | Method and apparatus for selective data reception | |
CN104320676A (zh) | 一种视频传输流中节目时钟参考异常跳动校正的方法 | |
CN102084662B (zh) | Mpeg2音频视频数据流传输的加扰和解扰方法 | |
KR101723416B1 (ko) | 디지털 방송 신호 송수신 장치 및 방법 | |
US8982745B2 (en) | Method for improving the data rate of mobile/handheld data and the quality of channel estimation in an ATSC-M/H transport data stream | |
CN101981926A (zh) | 数字广播发送器、数字广播接收器及其方法 | |
CN105763848A (zh) | 鱼眼摄像机后端接入方法及系统 | |
CN102868930A (zh) | 传输流数据包解码方法及装置 | |
CN115103203B (zh) | 一种实现直播节目自适应垫播的控制方法 | |
CN108200460A (zh) | 机顶盒广告图片更新方法及系统 | |
CN107302523A (zh) | 一种传输流丢包引起马赛克的解决方法 | |
EP2076042A1 (en) | Apparatus and method for transmitting a digital stream | |
CN102630045B (zh) | 一种对数字电视节目传输流进行签名的方法和装置 | |
KR100705978B1 (ko) | 타임라인 재조정 방법 및 장치 | |
KR101314614B1 (ko) | 디지털 방송 시스템 및 데이터 처리 방법 | |
JP2008228313A (ja) | 受信装置 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110323 Termination date: 20180221 |