具体实施方式
通常将视频帧分成若干个RTP包,可采用平均分包的方法或者固定分包的方法。其中,所述平均分包方法,是将同一视频帧划分成大小平均的RTP包,映射到无线网络中,使属于同一视频帧中的所有SDU大小完全相等,即SDUi=SDUi+1,或者同一视频帧中大小不等的任意相邻两个SDU的大小只相差一个字节,而且前面的SDU小于后面的SDU,即SDUi=SDUi+1-1。
所述固定分包的方法,是将同一个视频帧分成大小完全相等的RTP包,如果不能均分,则将均分后的余数作为最后一个RTP包,这样映射在无线网络中,则同一视频帧中除了最后一个SDU外,其余的SDU大小都相等,即SDU1=SDUa=SDUn-1=SDUmax,而该视频帧中的最后一个SDU应小于等于所述其余SDU的值,即SDUn≤SDUmax。
需要说明的是,为了保证视频帧的传输质量,因此一个视频帧要尽可能地划分较少的SDU,即要求每个SDU应该尽可能的大,因此,可以为视频帧预先设置一个最大SDU(即SDUmax),当视频帧很大需要平均分包时,划分得到的所有SDU的大小与所述最大SDU之间的差值都不会太大。通常,可以将每个实际SDU的大小与规定的SDU最大值之间的差值称为该SDU的余量,将处于同一视频帧中的所有SDU的余量累加后得到的值称为所述视频帧的累积余量。对于采用平均分包的方法,一般情况下,一个视频帧的累计余量不会超过该视频帧中最小SDU的大小。
由于RTP与无线网络中的SDU具有明确的映射关系,因此,同一视频帧划分得到的RTP包之间的大小关系和其映射到无线网络中的SDU的大小关系一致,因此,对于无线网络侧,同样可根据不同分包方式所具有的不同特点,利用同一帧中的SDU的大小规则,识别出视频帧的边界点。
下面结合附图以采用平均分包和固定分包两种不同的分包方式为例,来说明本发明实施例是如何根据不同的分包方法来识别视频帧的边界点的。
参考图2所示,图2为本发明的一种方法实施例的流程示意框图,该方法适用于采用平均分包的方法,通过比较划分后获得的各SDU的大小,识别视频帧的边界点。所述方法包括:
S201:无线网络接收由高层发来的SDU;
S202:判断所接收的SDU是否是视频SDU,若是,则执行S203;否则,执行S209。
S203:无线网络侧统计所述SDU的大小,为方便描述,本实施例将所接收的当前SDU称作SDUi,将所述SDUi的前一个SDU称为SDUi-1,将当前视频帧中收到数值最小的SDU称为SDUmin。由于本实施例是采用平均分包划分的SDU,而平均分包的特点是,同一视频帧中后面的SDU比前面的SDU大1个字节,或者同一视频帧中的所有SDU大小相等,且一般情况下,一个视频帧的累计余量不会超过该视频帧中最小SDUmin的大小。因此,进一步的,本实施例中比较SDU大小的方法可以按照下述步骤进行。
S204:所述无线网络侧判断所述SDUi是否小于SDUi-1,即相邻的两个SDU,其中后面的一个SDU是否小于前面的一个SDU,若小于,则执行S205;否则,执行S206。
S205:认定所述SDUi为当前视频帧的起点,而所述SDUi-1为前一个视频帧的结束点。
S206:所述无线网络侧判断所述SDUi与所述SDUmin的差值是否大于1个字节,即是否SDUi>SDUmin+1,若是,则返回至所述S205;否则,可知所述SDUi要么等于SDUmin,要么比所述SDUmin大一个字节,进一步的,此时可以执行S207。
S207:网络侧判断当前视频帧中包括所述SDUi在内的所有已收到的SDU与预设的最大SDU的差值总和是否大于所述SDUmin,若是,则执行S205;否则,执行S208。
S208:认定所述SDUi不是当前视频帧的边界点,此时,返回至所述S201。
此外,上述实施例中所述SDUmin除了可以为当前视频帧中收到的数值最小的SDU,还可以为预先设置一个数值最小的SDU。
上述实施例中,以采用平均分包方法为例进行说明,同一视频帧中大小不等的任意两个SDU之间的差值都不会超过一个字节,而且同一视频帧中后面的SDU要不小于前面的SDU,或者同一视频帧中所有SDU大小相等,因此,无线网络侧通过比较接收的SDU与前面收到的SDU的大小,并结合上述同一视频帧中采用平均分包的各SDU的大小规则,来识别当前SDU是否为视频帧的边界点。从而使得无线网络能够以帧为单位来统计流媒体业务中的视频数据,并在识别出视频帧的边界点的基础上,可以在无线侧进行视频传输质量评估,了解用户的体验质量(Quality of Experience,QoE)。同时,当发现视频质量出现下降趋势的时候,还可以在无线网络中采取相应的业务质量(Quality of Service,QoS)保障措施。
参考图3所示,图3为本发明的另一种方法实施例的流程示意框图,该方法可适用于采用固定分包的方法分得的SDU,通过比较各SDU的大小,识别视频帧的边界点。所述方法包括:
S301:无线网络接收由高层发来的SDU;
S302:判断所接收的SDU是否是视频SDU,若是,则执行S303;否则,执行S306。
S303:无线网络侧统计所述SDU的大小,为方便描述,本实施例将所接收的当前SDU称作SDUi,将固定分包时预置的最大SDU称为SDUmax。由于本实施例以固定分包划分的SDU为例进行说明,而固定分包的特点是,同一视频帧中划分的SDU大小要么相等;要么除了最后一个SDU外,其余SDU的大小都等于预置SDUmax,而最后一个SDU的大小要小于SDUmax。因此,本实施例中比较SDU大小的方法按照下述步骤进行比较。
S304:所述无线网络侧判断所述SDUi是否小于SDUmax,若小于所述SDUmax,则执行S305;否则,返回至所述S306。
S305:认定所述SDUi为当前视频帧的结束点,而所述SDUi+1为下一个视频帧的起点。
S306:认定所述SDUi不是当前视频帧的边界点,此时,返回至所述S301。
上述实施例中,由于采用固定分包方法,使同一视频帧中除了最后一个SDU外,其余的SDU大小都等于最大SDU,而且所述最后一个SDU小于等于其余SDU。因此,无线网络侧通过比较接收的SDU与所述最大SDU的大小,结合上述同一视频帧中采用固定分包的各SDU的大小规则,来识别当前SDU是否为视频帧的边界点。从而使得无线网络能够以帧为单位来统计流媒体业务中的视频数据,并在识别出视频帧的边界的基础上,可以在无线网络侧进行视频传输质量评估,了解用户的QoE。同时,当发现视频质量出现下降趋势的时候,还可以在无线网络采取相应的QoS保障措施。
上述两个实施例中所述的无线网络可以为UMTS(Universal MobileTelecommunication System,通用移动通信系统)、TD-SCDMA(TimeDivision-Synchronous Code Division Multiple Access,时分同步码分多址接入)、CDMA(Code division multiple access,码分多址)、GPRS(General packet radioservice,通用分组无线服务)、或者EDGE(Enhanced data rates for GSMevolution,GSM演进的增强型数据速率)等,在此不作限定。
与上述方法实施例相关的,本发明实施例还公开了一种用于识别流媒体视频帧边界的装置,所述装置通常可以位于无线网络侧,能够通过对当前收到的SDU与当前视频帧中在所述当前SDU之前收到的SDU进行大小比较,判断所述SDU是否为视频帧的边界点,从而识别出不同的视频帧。
参考图4所示,图4为本发明一种装置实施例的结构示意框图,所述装置包括:接收单元401、比较单元402、确定单元403,其中,
所述接收单元401,用于接收流媒体视频帧的SDU;
所述确定单元403,用于按照发送前对所述流媒体视频帧分包时采用的分包方法确定比较SDU大小的方法;
进一步的,所述分包方法可以包括平均分包方法和固定分包方法;
所述比较单元402,用于按照所述确定单元403所确定的比较方法将选定的被比较的SDU与所述接收单元401中当前收到的SDU比较大小,根据所述比较结果得到所述当前SDU是否为视频帧的边界点;
其中,可按照所述确定单元403所确定的比较方法选定被比较的SDU,例如,对于采用平均分包方法得到的SDU,可选择在所述当前SDU的前一个SDU作为被比较的SDU;对于采用固定分包方法得到的SDU,可选择分包时预置的最大SDU作为被比较的SDU。
上述实施例中,由于所述确定单元403能够根据对视频帧分包时所采用的不同分包方法,确定特定的比较SDU的大小的方法,并由所述比较单元402按照所确定的方法对SDU进行大小比较,从而识别收到的当前SDU是否为视频帧的边界点,该装置能够通过对所有收到的SDU进行判断,从而识别出每个视频帧的边界,使得无线网络能够以帧为单位来统计流媒体业务中的视频数据,并在识别出视频帧的边界的基础上,可以在无线网络侧进行视频传输质量评估,了解用户的体验感受QoE。
进一步的,本发明实施例还公开了一种用于识别流媒体视频帧边界的装置,参考图5所示,图5为本发明的另一种装置实施例的结构示意框图,所述装置在上述实施例的基础上,能够将采用平均分包方法对媒体流视频帧进行分包得到SDU,在接收端通过比较所述SDU之间的大小,来确定视频帧边界。所述装置包括接收单元501、比较单元502、和确定单元503,所述比较单元502包括第一判断单元5021,其中,
所述接收单元501,用于接收流媒体视频帧的SDU;
所述确定单元503,用于按照发送前对所述流媒体视频帧分包时采用的分包方法确定比较SDU大小的方法;
在本实施例中所述分包方法为采用平均分包的方法,因此,所述确定单元503根据采用平均分包分得到的SDU的大小特点,即同一视频帧中大小不等的任意两个SDU之间只相差一个字节,而且后面的SDU大于前面的SDU,或者同一视频帧中的所有SDU大小相等,来确定比较SDU的大小的方法,在本实施例中,选择所述比较单元502中的第一判断单元5021对采用平均分包方法得到的SDU进行比较判断。
所述第一判断单元5021,用于判断所述接收单元501中收到的当前SDU是否小于前一个收到的SDU,若是,则判断得到所述当前SDU为当前视频帧的起点,所述当前SDU的前一个SDU为前一个视频帧的结束点。
此外,在上述图5所示实施例的基础上,本发明实施例还公开了一种用于识别流媒体视频帧边界的装置,该装置可在当所述第一判断单元5021判断得到所述当前SDU大于或等于前一个收到的SDU时,对所述当前SDU做进一步判断,如图6所示,所述装置中的比较单元502还可包括:
第二判断单元5022,用于当所述第一判断单元5021的判断结果为当前收到的SDU为不小于前一个收到的SDU时,判断所述当前SDU与当前视频帧中收到的最小SDU的差值是否大于一个字节,若是,则判断得到所述当前SDU为当前视频帧的起点,所述前一个SDU为前一个视频帧的结束点。
进一步的,在上述图6所示实施例的基础上,本发明实施例还公开了一种用于识别流媒体视频帧边界的装置,所述装置在当所述第二判断单元5022判断得到否结果时,即所述当前SDU等于所述最小SDU、或者比所述最小SDU大一个字节时,对所述当前SDU做进一步判断,如图7所示,所述装置中的比较单元502还包括:
第三判断单元5023,用于当所述第二判断单元5022的判断结果为所述当前SDU与当前视频帧中收到的最小SDU的差值不大于一个字节时,判断当前视频帧中包括所述当前SDU在内的所有收到的SDU与规定的最大SDU的差值总和是否大于所述当前视频帧中收到的最小SDU,若是,则判断得到所述当前SDU为当前视频帧的起点,而前一个SDU为前一个视频帧的结束点;否则,指令所述接收单元501执行所述接收流媒体视频帧的SDU功能。
上述实施例按照平均分包方法得到的SDU的特点,通过选择所述比较单元502中的第一判断单元5021、第二判断单元5022以及第三判断单元5023将收到的SDU与之前收到的SDU进行比较,从而确定所述SDU是否为视频帧的边界点,该装置能够通过对所有收到的SDU进行判断,从而识别出每个视频帧的边界,使得无线网络能够以帧为单位来统计流媒体业务中的视频数据,并在识别出视频帧的边界的基础上,能够在无线网络侧进行视频传输质量评估。
与此同时,本发明实施例还公开了一种用于识别流媒体视频帧边界的装置,参考图8所示,为本发明的另一种装置实施例的结构框图,所述装置在上述图4所示实施例的基础上,能够将采用固定分包方法对媒体流视频帧进行分包得到SDU,在接收端通过比较所述SDU之间的大小,来确定视频帧边界。所述装置包括接收单元801、比较单元802、和确定单元803,所述比较单元802包括第四判断单元8021,其中,
所述接收单元801,用于接收流媒体视频帧的SDU;
所述确定单元803,用于按照发送前对所述流媒体视频帧分包时采用的分包方法确定比较SDU大小的方法;
在本实施例中所述分包方法为固定分包,采用固定分包分得到的SDU的大小特点是,在同一视频帧中,所有的SDU大小都相等,或者除了最后一个SDU外,其余所有SDU的大小都相同,而且最后一个SDU小于所述其余的SDU。本实施例中所述确定单元803根据上述特点,来确定比较SDU的大小的方法。在本实施例中,选择所述比较单元802中的第四判断单元8021对采用固定分包方法得到的SDU进行比较判断。
所述第四判断单元8021,用于判断所述接收单元801中收到的当前SDU是否小于预置的最大SDU,若是,则判断得到所述当前SDU为当前视频帧的结束点,而下一个SDU为下一个视频帧的起点;否则,指令所述接收单元801执行所述接收流媒体视频帧的SDU功能。
上述实施例按照固定分包方法得到的SDU的特点,通过选择所述比较单元802中的第四判断单元8021将收到的SDU与预置的最大SDU进行比较,从而确定所述SDU是否为视频帧的边界点,该装置能够通过对所有收到的SDU进行判断,从而识别出每个视频帧的边界,使得无线网络能够以帧为单位来统计流媒体业务中的视频数据,并在识别出视频帧的边界的基础上,能够在无线网络侧进行视频传输质量评估。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明的保护范围之内。