重排和复用属于互相关会话的多媒体流的包的方法和设备的利记博彩app

文档序号:7944568阅读:199来源:国知局
专利名称:重排和复用属于互相关会话的多媒体流的包的方法和设备的利记博彩app
技术领域
本发明涉及用于重排序和复用来自属于互相关会活的多媒体数据流的
多媒体包的方法和i史备。
这种方法例如对使用实时传输协议传输的可扩缩视频编解码器编码的 数据流是重要的。
背景技术
视频编码和传输中的可扩缩性近年来已变得越来越重要。在从ITU-T 建议H.264/ISO/IEC IS 14496-10 AVC, 2005修订3中可以发现的 H.264/AVC标准的附录G中详细说明了可扩缩视频编码,以下缩写为 SVC。在SVC的最基本形式中,通过一个基层和一个或多个增强层来表示 视频信号。与仅解码增强层所基于的层相比,增强层可以提高时间分辨率 (即,帧速率)、空间分辨率、或视频内容的质量。增强层可以被"堆栈" 在彼此之上。在SVC中,使增强层直接依赖多于一个的"低层"甚至是 可行的,并且可以实现非常复杂的层相关性图,虽然易受约束,即,在一 般对应视频帧的一个存取单元中,层图像可以直接仅依赖一个低层。每个 层,与所有它的依赖低层一起,形成该视频信号在特定空间分辨率、时间 分辨率和质量水平处的一个表示.在该文献中,可扩缩层^^称为一个给定 层,所述给定层具有它直接或间楱农赖的所有低层。 一个可扩缩比特流含 有多层,所述多层形成至少两个但是有时更多的可扩缩层表示。
SVC保留H.264/AVC的网络提取层(以下缩写为NAL )概念和关键 特性。NAL单元形成SVC比特流的基本结构,并且可以被视为存取单元 的一部分,存取单元本身对应视频帧。
为了传输编码视频信号,广泛使用实时传输协议,以下缩写为RTP。在IETF标准的RFC3550中被详细说明的基本RTP协议,在互联网上被 用于流应用和DVB-H/SH视频广播。由于RTC3550中仅定义了 RTP的核 心功能,需要补充RFC将特定编码视频数据的传输定义到RTP中。在这 方面,定义了 RFC3984来详细说明H.264 AVC NAL单元的传输。
新的提出的用于纳入SVC编码视频的RTP有效载荷规范的扩展,诸 如这些提出的RFC3984,支持在一个RTP包中封装单NAL单元、多于一 个NAL单元、或NAL单元的分片。在H.264/AVC中详细说明的单NAL 单元可以被"按照原样"包括在RTP包中,并且NAL单元头还用作有效 栽荷头。详细说明了四类型的聚合NAL单元。两个单时间聚合包类型, STAP-A和STAP-B,允许在一个RTP包中封装来源于相同图《象(由相同 RTP时间戳标识)的多于一个的NAL单元。两个多时间聚合包类型
(MTAP)可以被用于在一个RTP包中聚合来自不同图像的NAL单元。 RFC3984还支持两类型的分片单元,FU-A和FU-B,所述分片单元使得能 够将一个NAL单元分片到多个RTP包中。
SVC,与之前所有视频压缩标准一样,要求应当以特定顺序即解码顺 序将诸如NAL单元的比特流语法实体呈现给解码器。在H.264/AVC和 SVC的情况中,解码顺序和编码顺序相同,并且以对NAL单元的排序的 约束来表示。 一些H.264/AVC和SVC简档允许一定量的NAL单元重排序, 而不破坏一致性,但是其它简档则不允许。任何情况下,有必要在传输层 中包括实现有效的NAL单元重排序的机制。
如在IETF RFC3550中定义的,RTP借助RTP序号支持包重排序,
然而,NAL单元解码顺序没必要与传输顺序或RTP包顺序相同。例 如,当4吏用RFC3984的交错打包才莫式(interleaved packetization mode) 时,从上述信息推断正确的NAL单元排序有时是不可能的。当在不同RTP 会话中传输H.264 SVC层时,被称为RTP会话复用,情形甚至变得更复 杂。SVC有效载荷草案的早期版本试图指定用于该NAL重排序过程的算 法,但是过高地考虑了规范和实现复杂性。该方法的替代方法是,在包流中显示发信号通知NAL单元的顺序。 这要求使用RFC3984交错模式,并且STAP-B、 FU-B和MTAP包的字段 DON (解码序号)被显示用于指示跨所有层和RTP会话的NAL单元解码 顺序。
在含有DON字段的包不被允许的非交错模式中,另一方法是,通过 使用聚合包(STAP-A)中的PACSI NAL单元中的字段DONC,显示指 示跨所有层的NAL单元解码顺序(跨层DON或CL-DON)。这非常复杂, 并且要求附加的带宽。
在非交错或单NAL单元模式中,依赖于在会话描述协议(SDP)中定 义的一维RTP会话相关性路径的知识,另一方法涉及同步点概念。这基本 上包括分析包的时间戳相关性和跨RTP会活的分发,以标识和检索处于解 码顺序的存取单元的顺序。通过搜索从最高依赖会话至最低依赖会话的会 话同步点来检索存取单元的顺序,M Sx的同步点(被定义为TS_Sx)被 定义为时间对准的(即,都有相同的时间戳的)、具有每个会话Sy中的至 少一个RTP包的RTP包集,才艮据会活相关性的顺序Sy优于或等于Sx。 基本上,该方法涉及分析包的时间戳相关性和跨会话的分发,来标识并且 检索处于解码顺序的存取单元的顺序,以及涉及在SDP中定义的会话相关 性路径的知识,来检索每个存取单元内NAL单元的顺序。
因此,任何同步点是指特定存取单元。 一旦NAL单元被关联到存取 单元,每个存取单元的NAL单元被按照会话相关性路径的顺序和每个会 话内部的序号的顺序输出,以检索每个存取单元内部的NAL单元解码顺 序。
后一种方法的问^H/限制包括对在不同RTP ^"之间帧速率分发的约 束,因为本方法仅为RTP会话的相同时间例子的NAL单元工作,所述NAL 单元也在依赖该RTP会话的RTP会话中出现。这意味着帧速率的递增顺 序必须遵循会话相关性的递增顺序
发明内容
本发明的目的是提供一种以上已知类型的、但是可以解决上述的计算 复杂性、增加的带宽或缺乏应对不同帧速率的问题的方法,用于在非交错
模式和/或单NAL单元模式中检索例如RTP/SVC会话的包。类似地,本 发明的目的是提供一种适于在向解码器提供不同包之前以正确的顺序排列 所述不同包的设备。
根据本发明,该目的通过包括权利要求l中描述的步骤的所述方法来 实现。类似地,如在权利要求6中描述的设备将适于实现该目的。
通过这种方式,依赖每个会话内部包含的帧速率的知识,而不是使用 现有技术的同步点概念。所提出的方法比现有技术的方法更有效并且更简 单,而且即使所述帧速率不遵循会话相关性顺序,重排序包也是可能的。
本发明的附加典型特征在权利要求2中被陈述。
这将另外解决现有技术的另一内在问题,如在丢包的情况下,基于所 述同步点的现有技术方法可能不能输出所有完好接收的包。所以该现有技 术方法在检测到第一个丢包的M处停止所述重排序过程;并且不输出当 前和下一个存取单元中的更高会话的包,直至对应TS_S0同步点的下一个 存取单元被发现为止。结果就是更高会话的完好接收的包/NAL单元在可 能很多存取单元期间被丢失,尽管视频播放器本来可以使用这些完好接收 的NAL单元来实现良好的SVC隐藏技术。通过当搜索具有最高帧速率的 M时不考虑检测到丟包的RTPM,以及通过当检测到M中的错误时 不中断跨层重排序过程,用于重排序包的本发明方法对丟包更加强壮,因 为即使在低层会话中检测到丢失之后包也会被重排序。因此实现SVC隐藏 的^L频播放器在输入上具有最大的可用信息。
可以在简单的迭代过程中组合两种原理。
本发明的另一典型特征在权利要求5中被陈述。使用每会话包含的帧 速率的知识,通过4吏用信号通知信息,产生非常简单的实现,所述信号通 知信息在SVC/RTP流的情况中可以是会话描述协议,缩写为SDP,用于 检测具有最高帧速率的流。
在所附权利要求中可以发现附加特征。^曰/
〖袖
视频接收器。
要注意的是,在权利要求中使用的术语"耦合"不应当被解释为仅限
于直接连接。因而,表达式"耦合到设备B的设备A"的范围不应当限于 设备A的输出被直接连接到设备B的输入的设备或系统。它意味着在A 的输出和B的输入之间存在路径,所述路径可以是包括其它设备或装置的 路径。
要注意的是,在权利要求中使用的术语"包括,,不应当被解释为仅限 于其后列出的装置。因而,表达式"包括装置A和B的设备"的范围不应 当限于仅由部件A和B组成的设备。它意味着关于本发明,该设备的仅相 关的部件是A和B。


通过参考以下结合附图对实施例进行的描述,本发明以上的和其它的 目标和特征将变得更加显而易见,并且本发明本身将得到更好的理解,在 所述附图中
图1示出视频传输系统的基本体系结构;
图2a-c示出在具有SVC/AVC代码帧的例子上的编码过程的细节; 图3a-c示出用于图2的例子的封装和传输过程的进一步的细节; 图4示出在图2和3的例子上的接收过程的一部分; 图5示出用于实施根据本发明的方法的详细流程图的例子;以及 图6示出在图2、 3和4中陈述的例子上才艮据本发明进行重排序和 复用操作之后的结果。
具体实施例方式
可以在诸如视频和/或音频编码应用的多媒体编码中使用本发明。更特 别地,可以结合缩写为SVC编码的可扩缩视频编解码器来使用本发明,所 述可扩缩^L频编解码器的编码基本单元,被称为NAL单元,裙/使用实时协议RTP、使用非交错或单NAL单元模式来封装和传输。不过,本发明 可以被用于所有这样的区域,在所述区域中属于互相关会话的多媒体数据 流的包需要被重排序以便与被解码器请求的预定顺序一致。通常该顺序对 应由编码器生成的顺序。
SVC编码方法由MPEG-4-AVC (ISO/IEC 14496的第10部分)标准 进行标准化。为了传输H.264 AVC,专用于H.264 AVC的RTP (实时传 输协议)有效载荷被IETF RTC3984标准化。SVC覆盖H.264/AVC的整 个应用范围,从低比特率互联网流应用到具有几乎无丢失编码并且要求几 十或几百MBit/s的HDTV广4番和数字电影。
器产生的网络提取层(NAL)单元的一部分或一个或多个进行打包。有效 载荷格式具有广泛的适用性,范围从低比特率会话的、经过互联网的视频 流到高比特率娱乐质量视频。
以已知的方式,嵌入不同表示点或可扩缩层表示的单个SVC流被使用 RTP协议经过若干传输通道传输。这意味着SVC流由若干可扩缩层组成, 由此,每层被经过一个单独的RTP通道传输。这些不同表示点涉及相同的 内容,但是提供不同的视频格式或质量来考虑特定接收者要求。这例如这 样的情况,相同的视频内容应当针对不同的屏幕大小,例如,QVGA用于 手持机,HDTV用于高端平面屏幕,VGA用于PDA屏幕。这使用SVC 分层概念来表示,其中, 一个可扩缩比特流包含多层,所述多层形成至少 两个但是有时更多的可扩缩层表示。在该情况下,每个SVC层可以被经过 具有可能不同网络路径的专用RTP会话传输,每个SVC层细化可以从较 低相关层检索的^L频格式或质量。在一个特定RTP流中传输的每个SVC 层要结合其它RTP流中的所有相关低层来被解码,以检索目标表示点或 SVC层表示。属于相同SVC视频内容的RTP流之间的关系,借助信号通 知协议来指示,所述信号通知协议在RTP流的情况中是SDP协议。在该 特定情况中,使用每个会话的草案标准化的 "a=depend"行将指示RTP 会话属于彼此。通过^f吏用用于传输这样的SVC编码视频流的RTP有效载荷,有可能所有这些流将以不同的顺序到达接收者,其中,所述这样的SVC 编码视频流的每个由NAL单元的序列组成。如之前提到的,重要的问题 包括在接收者处重新同步这些NAL单元。这是重要的,因为解码器需要 它们处于正确的顺序,以l更能够使用SVC/IL264解码。当这些不同的SVC 流因而可以经过不同的RTP会话、经由具有不同延时的不同通道被传输 时,问题甚至更难。
已知的解决这种跨层同步机制的过程在该文献的前面段落已被予以讨 论,并且依赖"同步时间戳"(同步点)之间的相关性,考虑或者RTCP 发送者报告中的挂钟时间/时间戳映射用于每个RTP会话,或者直接是公 用时间戳参考和刻度(scale)用于所有RTP会话。然而,其它使用跨层解 码序号(CL-DON)或DON (交错模式)的概念,所述跨层解码序号 (CL-DON )或DON (交错模式)在不同RTP M之间使用一个序号的 概念,这使得能够发现遍布在不同会话间的包的正确顺序。
在图1中,示出了这种全局视频传输系统的基本体系结构,并且将借 助图2和3解释用于使用AVC/SVC协议编码的基本步骤。
图1示出视频传输器VT,视频传输器VT用于经由诸如互联网网络的 分组网络PN向^L频接收者VR传输^皮打包的流,所述,皮打包的流包含编 码视频数据。
视频传输器VT通常包括视频捕获设备1、视频编码器2、封装设备3、 信号通知设备4、以及传输网络设备5。现在将对使用AVC/SVC编码的例 子讨论所有以上这些的实现或实施例,其中,所述AVC/SVC编码使用RTP 封装和流。
图1的视频传输器VT包括诸如摄#4^的视频捕获设备1,视频捕获 设备l能够生成具有它们的相关联的取样时间的视频帧。由该捕获设备生 成的流在图2a上示出,并且由关联到取样时间(tl、 t2、 t3......)的索引
(Fl、 F2、 F3......)标识的很多帧组成。取样时间一般来源于取样时钟,
所述取样时钟在捕获设备的本地并且触发照相机的光传感器。对于以恒定 帧速率运行的捕获设备,获得连续帧之间的固定时间周期。如图2a上所示,以取样时间的递增顺序递送在该捕获设备的输出处的帧,其中,该递增顺 序与帧索引顺序相同,所述帧索引顺序也是,皮要求的显示顺序。这样的捕 获设备不仅限于递送实时视频场景的照相机设备,而且很多由能够以取样 时间的递增顺序递送帧的任何设备组成,所述任何设备包括递送本地生成 的或来自外部视频内g供者的、存储的或实时的视频内容(直播频道、
VoD平台)的任何设备,其中,取样情况被关联到每个帧。关联到帧的取 样时间被转发到在该例子中是SVC编码器的视频编码器2,来触发帧的编 码过程,并且被转发到在该例子中是RTP流设备的封装设备3,封装设备 3在RTP流设备的情况中将使用该信息来设置RTP时间戳。
也被包括在视频传输器VT中的H.264 SVC视频编码器2适于将从捕 获设备1接收的帧的流编码为一组至少两个可扩缩层,所述至少两个可扩 缩层是互相关的,以形成一组提供不同空间/时间/质量视频格式的表示点。 在图2b中,示出了 SVC视频编码器的配置的例子。在该例子中,示出了 包括两个层L0和Ll的SVC流,以便L0的解码仅在QCIF产生呈现点, QCIF是176x144像素的屏幕尺寸格式,并且在该例子中选择每秒15帧的 帧速率; 一起解码L0和L1在CIF产生呈现点,其中,CIF对应352x288 像素,是具有每秒30帧的选定帧速率的另一显示格式的另一例子。通过这 样的配置,以及一般通过依赖于基于分层B帧的时间可扩缩性的配置,在 编码器的输入处的帧的顺序不同于视频编码器的输出处的帧/存取单元的
编码顺序,其中,所述编码器的输入处的帧的顺序与取4羊时间的顺序有关, 等同于图2a的帧索引并且在图2b上以行"帧/AUidx"来示出,所述视频 编码器的输出处的帧/存取单元的编码顺序在图2b上以行"AU编码顺序" 来示出。根据SVC/AVC编码方案,视频编码器在它的输出处生成以编码 NAL单元顺序排序的NAL单元流,在图2c上示出。该图为每个NAL单 元指示NAL所指的层和帧索引;例如,第一NAL 1与可扩缩层LO的内 容、帧索引Fl相关,第二NAL2与可扩缩层L1的内容、帧索引Fl相关, 第三NAL3与层L0、帧索引F3相关,等等。
视频编码器还生成被表示为PS的一组编码参数,该组编码参数将进一步被递送给信号通知设备4,在随后的段落中将描述信号通知设备4。
图1的视频传输器VT进一步包括RTP流设备3,用于根据在RTP SVC规范RFC3984中定义的打包模式的一个,将流入的NAL单元封装到 RTP包中。如之前提到的,这些这样的打包模式包括"单NAL单元"模 式、"非交错模式"或"交错,,模式。在图3a上示出的例子中,通过解释 所述方法的方式仅考虑了 "单NAL单元"模式。不过,本领域的技术人 员将知道如何扩展根据本发明的重排序方法,用于使用非交错模式封装的 包。
单NAL单元模式每RTP包仅使用 一个单NAL单元,如图3a上所示。 在封装步骤期间,如图3b上所示的和RFC3550所标准化的每个RTP头, 必须遵循以下规则祐:初始化
1、 对每个RTP包增加序号,每个RTP会话具有从随机值开始的独立 序号。不过,为了使图清晰,没有使用随机值,并且序号从值l开始。
2、 根据在包中包含的数据的取样时间,即,根据被封装的NAL所参 考的帧的取样时间(图2a的),设置时间戳(TS)。使用以下公式计算 TS值TS=sampling—time*TS—frequency + random value (TS:取样时间 *TS频率+随才几值),TS— frequency ( TS频率)对H.264 AVC/SVC编解 码器被定义在卯kHz。有两个可能同步时间戳刻度用于所有RTP会话(相 同的随机值),或独立的非同步时间戳刻度用于每个RTP^ (这意味着 选择不同的随机值)。这对将在该文献的l^段落中解释的重排序过程有 轻微的影响。
3、 SSRC (同步源)唯一标识每个RTP会话。实践中,SSRC值被i史 置为具有非重叠随^L值(S0, Sl)。
作为结果,RTP流设备3适于将图2c的不同封装NAL单元根据它们 的可扩缩层索引(LO, Ll)映射到具有SSRC S0和Sl的不同RTP会话,如 图3c中所示。例如,来自可扩缩层L0的NAL单元将,皮传输到SSRC-S0 的RTP会话,来自可扩缩层Ll的NAL单元将被传输到SSRC=S1的RTP 会活。 一般来i兌,由RTP流设备生成N+1个不同的RTP会话S0至SN,如图1中所示。
在我们的例子中,RTP流设备3的输出提供两个RTP会话S0和S1, 意p木着如图3c中所示的并且由SSRC SO和SSRC Sl标识的RTP包的两 个流将被输出。RTP包被根据等同于存取单元编码顺序的传输顺序排序。 所以分析处于传输顺序的RTP包的NAL单元,我们将显示图2b的帧或 存取单元顺序。
图1的视频传输器VT进一步包括信号通知设备4,信号通知设备4 能够在使用由会话描述协议(SDP)定义的文本描述的SVC/AVC例子中 生成多媒体服务的描述。该协议基于从视频编码器2检索的H.264参数组 信息,特别定义了 SVC层/RTP会话相关性关系、在每个SVC层/RTP会 话中包含的帧速率、相关的UDP/IP地址和端口。该信号通知设备还负责 实现信号通知传输协议来与接收器通过IP网络交换信号通知。这样的信号 通知传输协议可以例如是RTSP、 SAP或仅是HTTP。由信号通知设备生 成的输出在图1中用SDP表示。
图1的视频传输器VT进一步包括传输网络设备5,传输网络设备5 用于复用所有流入的RTP和信号通知流,用于将复用的包封装在经过分組 网M输的、诸如经过例如互联网的IP网^"输的IP包的、如果在多播 模式中使用视频递送的话可能具有不同目的址的包中。
这样的分组网络PN,诸如IP网络,负责将包路由和传输至目的址。 每个包可以沿不同的网络路径而行,因此会有可变延时、丢包以及不能确 保在接收器保持传输顺序。由RTP设备输出的每个RTP包的实际传输时 间因而将依赖于所使用的网 口 ,所述网 口将可能实现一些流控制 或流量平滑机制。因此,大体上,传输应当被视为在非确定时间使用每个 RTP务活的RTP包的异步过程。
在接收器侧,能够从诸如IP网络的分组网络检索诸如IP流的包流的 典型视频接收器VR, —般包括网络接口 6、緩沖器B0至BN、信号通知 设备7、解码器8和显示设备9。取决于所使用的特定编码/封装协议,重 排序设备R也可以是必要的,诸如在该文献的情况中。再次地,将简要描述具有用于进一步处理来自图2和3的例子的数据的实施例的所有块。将 更加详细地描述根据本发明的重排序设备R。
接收器网,口 6能够根据在每个流入的RTP包的RTP头中包括的 SSRC的值,将接收的包流解复用为不同的应用流,以馈给不同的RTP緩 沖器B0至BN,并且馈给具有信号通知包的接收者信号通知设备7,其中, 所述不同的应用流由RTP流和信号通知传输流组成。使用现有的过程进行 解复用,诸如,在接收IP包的情况下根据它们的IP多播目的址、或根据 它们的UDP目的端口 、或才艮据它们的RTP SSRC路由IP包。
RTP緩冲器能够存储相继接收的RTP包,所述RTP包与由RX网络 接口递送的每个RTP会话S1至SN相关。这些緩冲器被以异步方式、遵 循每个RTP包的实际接收时间馈给。緩沖器还负责根据RTP包的序号分 类RTP包,以便重排序这些RTP包,因为分组网络一般不保证正确的传 输顺序。RTP緩沖器还消除由网络引入的不同的可变时延,所以它们也被 称为去抖动RTP緩冲器。接着我们的两层/RTP会话的传输的例子,在接 收了图3c的最后传输的包之后,获得每个RTP緩冲器B0和B1的内容, 如图4上所示。这些緩沖器以传输顺序包含RTP包,所述RTP包由它们 的被存储在不同存储器/緩沖器槽中的序号、时间戳(TS )值和SSRC标识。 图4还为每个緩沖器示出哪些RTP包将被首先和最后输出,用作到重排序 设备R的输入,该顺序等同于每个RTP会话的RTP序号顺序。
视频接收器VR进一步包括信号通知设备7,信号通知设备7在用于
应的SDP描述,并且将会话相关性信息和每会话帧速率递送到重排序设 备,将H.264参数組递送到SVC解码设备8。在图1中,这些H.264 M 組祐束示为PS数据,而递送到重排序和复用设备R的其它SDP信息祐束 示为I。
该视频接收器进一步包括SVC解码器8,用于以正确次序解码所接收 的NAL单元,被称为NAL单元解码顺序,其对应更早期的编码顺序。因 为该要求的顺序与从RTP緩冲器直接出来的顺序不同,并且因为要实施一些复用,重排序和复用设备是必要的。这将在下一段落中予以更广泛的讨
论o
在任何情况下,该重排序和复用设备将以正确的顺序向解码器递送
NAL单元,解码器相应地将能够以显示顺序检索原始帧。在SVC解码器 8的输出的帧被取样时间触发,并且最终被递送到诸如CRT或其它显示器 的显示设备9,显示设备9能够以帧显示顺序显示流入的帧,所述帧显示 顺序由关联到每个帧的取样时间调整(cadenced)。
根据本发明的重排序和复用设备适于首先识别公用时间变量,诸如同 步时间戳TS,该同步时间戳TS是图2a的取样时间相关的RTP头时间戳, 与下一个存取单元或帧相关联,通过读M冲器Ssync的下一包的该TS 值,Ssync是具有最高帧速率的RTP会话,然后适于按照会话相关性跨 RTP会话解封所有的RTP包,来以图6上所示的NAL单元解码顺序输出 NAL单元。我们注意到,图6示出了和图2c类似的顺序,该顺序是我们 应当考虑馈给SVC解码器8的顺序。该设备R因而通过读取在关联到每 个AU的RTP包的RTP头中包括的TS如险索关联到帧的取样时间,并 且进一步将该信息提供到SVC解码器8和显示设备9两者来触发解码过程 和最终得到的帧的显示,以便两个设备在取样时间上同步,所述取样时间 在传输器处也祐 使用。视频递送的实时方面由此,皮保证。
要注意关于或者使用公用RTP时间戳刻度用于所有RTP会话(同步 时间戳)或者另一方面使用每RTP^"不同时间戳刻度(非同步时间戳) 的情形。在后一种情况中,在被所提出的算法读取之前,每个包的RTP头 中包括的TS必须首先4皮在公用时间变量中解释,所述公用时间变量诸如 使用已知的RFC3550 (RTCP/挂钟映射)机制的公用挂钟时间参考。
根据本方面的方法和设备基本涉及来自图1中所示出的体系结构的块 R。 一般来说,该包复用和重排序设备R适于接收这样的包,所述这样的 包属于视频接收器VR中的N+l个緩冲器S0至SN的不同的N+l个解复 用的RTP流,并且进一步适于从它们提取NAL单元并将它们排列成正确 的顺序用于进一步递送到解码器D作为一个单独的流。根据本发明的方法基本包括两个主要步骤第一步包括搜索诸如下一 RTP包的同步时间戳TS的公用时间变量或公用挂钟时间参考,所述公用 挂钟时间参考自动参考具有最高帧速率的流的并且处于解码顺序的下 一存 取单元AU或帧,第二步是遵循会话相关性的顺序,以解码顺序跨会话输 出包。因为解码顺序和编码顺序相关,本方法因而包括以与编码所述数据 的编码过程相关的预定顺序,在所述多媒体流之中具有最高帧速率的流的 包内,搜索与所述多媒体数据的下一帧相关联的包的公用时间变量的步骤, 以及以会话相关性的顺序提供处于跨所述会话的所述预定顺序的包的步 骤。
借助图6解释用于实现这样的方法的详细实施例。本方法以从RTP緩 冲器接收RTP包开始,并且基于SDP信号通知设备7的输出,并行确定 有效会话的列表。因而从7接收有效会话的列表,以及每会话的所有要求 的信息。取决于终端类型,有效会活的列表可以是在SDP中定义的所有会 话的子集,例如,PDA将仅订购两个有效会活,因为提供HDTV的第三 个会话对PDA没用。选择将使用哪些会话与视频接收器自身有关,并且一 般在设备中被硬编码,而且与嵌入式部件的性能有关,例如,CPU速度、 总可用存储、屏幕大小、视频解码器简档......
接下来,要搜索具有最高帧速率的RTP会话。简单的解决方案涉及确 定净錄示为Ssync的内变量,所述内变量是指在有效^t的列表中具有最 高帧速率的会话的会话号。可以通过读取由信号通知设备7接收的、关联 到SDP协议中的RTP会话的所有行"a=framerate (帧速率)",以^LiL 现与最大 "a-framerate (帧速率)"值相关联的会话标识符,来发现最 高帧速率的M。在设备R中的、计算每个M的帧速率的另一方法,是 发现在所考虑的^^内的两个包之间的时间戳的最小差,该差的倒数给出 帧速率。应当在每个RTP会话上进行该帧速率计算步骤。例如,对M L0,时间戳之间的最小差是2,对会话L1,最小差是l,因此,Ll是更高 帧速率的会话,因为1>1/2。具有最高帧速率的会活得到属性"Ssync"。 Ssync是存储最高帧速率的RTP会话的标识符的内变量,例如,在我们的例子中,Ssync=Sl。 一旦该特定Ssync被发现,具有最高帧速率的RTP流 因而也祐发现,并且与Ssync相关联的緩冲器的下一个包被读取,Ssync 在图4中的例子中是B1,该包被称为Psync。可选步骤可以包括在具有最 高帧速率的该RTP流中检测丢包。如果存在丢包,即,Psync显示出^^ Ssync内的序号中的间隙(gap),借助搜索Ssync变量的另一值来搜索最 高帧速率的下一个RTP流,在该步骤之后,再次使用下一个Ssync重复确 定下一个包Psync的过程。在没有发现丢包的Ssync的情况中,在关联到 Ssync的包Psync的RTP头中包括的同步时间戳TS被读取。在图4的例 子中,具有最高帧速率的RTP流是緩沖器Bl中存储的流Sl,然后不同 RTP包的时间戳被提取。以具有最高帧速率的该SI会活中的以序号排序 的包在所有存取单元中是固有存在的,因为它具有最高帧速率,因此没有 存取单元被遗漏。因此,它们的序号映射存取单元解码顺序的解码顺序。 这个第一时间戳因而对应TSl。
本方法的第二步骤然后包括按照会活相关性的顺序输出处于跨会活的 解码顺序的包。
该第二步骤的实施例是使用在信令会话描述协议中定义的会话相关性 的顺序,如在图5的较低部分中所示出的。^t相关性定义存取单元内的 NAL单元的解码顺序。属于最低相关会话的NAL单元应当被首先输出, 最高相关M的NAL单元应当被最后输出。在我们的例子中,这意味着 属于相同存取单元的、并因而具有相同时间戳的会话LO的NAL单元,应 当比会话LI的NAL单元更先被输出。在每个^4t内,通过以下序号检索 NAL单元的解码顺序。因此,在所提出方法的第二步骤中,会话以从最低 相关会话SO开始到最高相关会话Sn的循环被处理,其中,所述最低相关 会话SO在我们的例子中是会话L0,所述最高相关会活Sn在我们的例子中 是会话L1。然后,对该循环的每个会话Si,在会话Si的緩沖器中搜索具 有关联到当前存取单元的特定时间戳TS的第一个包。如果至少一个包存 在,它意味着MSi包含当前存取单元的至少一个包。序号在当前存取单 元的包之前的任何包被从緩冲器Si移除;在临时高峰网络延时的情况中,
17这些后期包可以在会话中出现,并且在该步骤被移除以避免存储器溢出。
然后遵循会话内的NAL单元解码顺序,具有等于当前存取单元的TS的时 间戳的緩冲器Si的所有包以序号的递增顺序被输出。如果在緩冲器Si中 不存在具有当前存取单元的TS的包,这意味着在用于当前存取单元的该 会话中没有可用的NAL单元,因为该会话的帧速率低于最高帧速率,并 且没有关联到用于该存取单元的Si的表示点,或者因为关联到当前存取单 元的包在网g输期间丟失。在两种情况中,在Si中没有要输出的NAL 单元,我们进入下一个会话。在从SO到Sn的循环中,所有会话被处理以 检索跨当前存取单元的所有会话的NAL单元解码顺序。在该循环的终点, 我们通过重复整个算法进入下 一个存取单元。
图6中示出了图2-4的例子的最终结果,其中,从不同RTP包中提取 NAL单元的顺序#_示出,因为这些NAL单元最终将由重排序设备输出到 解码器。如可以容易看到的,该顺序与图2c的编码顺序相同,这是本发明 的目标。
要注意的是,以下仅示出本发明的原理。因而将要理解的是,本领域 的技术人员将能够设计各种尽管在此处未明确描述或示出但是体现本发明 原理并且被包括在本发明的精神和范围内的配置。此外,此处陈述的所有 例子和条件语言主要仅用于帮助读者理解本发明的原理和发明者提出的以 促进本领域的概念的教学目的,并且将被理解为对这样具体陈述的例子和 条件没有限制。而且,此处陈述本发明的原理、方面和实施例的所有声明 以及其特定例子,旨在覆盖其结构上的和功能上的等同物。另外,这样的 等同物包括当前已知的等同物以及未来发展的等同物,即,M的、无论 结构如何实施相同功能的任何单元。
尽管以上已结合特定装置描述了本发明的原理,要清楚理解的是,该 描述仅是通过示例方式进行,不是对本发明范围的限制,本发明的范围在 所附权利要求中进行定义。
权利要求
1. 一种用于重拍序和复用来自属于互相关会话的多媒体数据流(S0、S1、......SN)的多媒体包的方法,所述方法包括在所述多媒体流之中具有最高帧速率的流的包内,以与编码所述数据的编码过程相关的预定顺序,搜索与所述多媒体数据的下一个帧(AU)相关联的包的公用时间变量(TS)的步骤;以及以会话互相关性的顺序提供处于跨所述会话的所述预定顺序的包的步骤。
2. 根据权利要求l所述的方法,其中,从接收的没有数据包丢失的流 中搜索所述具有最高帧速率的一个流。
3. 根据权利要求1或2所述的方法,其中,所述互相关会话是实时传 输协议会话。
4. 根据权利要求1至3的任一项所述的方法,其中,所述编码过程是 可扩缩视频编解码器编码过程,并且所述互相关会话传输普通多媒体内容 的可扩缩层表示。
5. 根据之前权利要求1至4的任一项所述的方法,其中,信号通知信 息被用于确定所述具有最高帧速率的流。
6. —种用于重排序和复用接收的来自属于互相关会话的多媒体数据流 的多媒体包的设备(R),所述设备包括用于从所述多媒体数据流接收 所述包的装置;用于在所述流之中选择具有最高帧速率的流的选择装置; 用于以与编码所述数据的编码过程相关的预定顺序,在所述具有最高帧速 率的流的包内,搜索与所述多媒体数据的下一个帧(AU)相关联的包的公 用时间变量(TS)的装置;以及用于以会话互相关性的顺序提供处于跨所 述会话的所述预定顺序的包的输出装置。
7. 根据权利要求6所述的设备,其中,所述选择装置进一步适于从这 些接收的没有数据包丟失的流中搜索所述具有最高帧速率的流。
8. 根据权利要求6或权利要求7所述的设备,其中,所述互相关M 是RTPM。
9. 根据权利要求6至8的任一项所述的设备,其中,所述编码过程是 可扩缩视频编码过程,并且所述互相关会话传输普通多媒体内容的可扩缩 层表示。
10. 根据之前权利要求6至9的任一项所述的设备,进一步包括用于 分析信号通知信息的装置,用于确定所述具有最高帧速率的流。
11. 一种包括根据之前权利要求6至10的任一项的设备的视频接收器 (VR)。
全文摘要
本发明提供了一种重排和复用属于互相关会话的多媒体流的包的方法和设备。所述方法包括以与编码所述数据的编码过程相关的预定顺序,在所述多媒体流之中具有最高帧速率的流的包内,搜索与所述多媒体数据的下一个帧相关联的包的公用时间变量(TS)的步骤;以及以会话互相关性的顺序提供处于跨所述会话的所述预定顺序的包的步骤。还公开了一种用于实施该方法的设备。
文档编号H04N7/24GK101505316SQ200910005708
公开日2009年8月12日 申请日期2009年2月3日 优先权日2008年2月4日
发明者O·波佩尔, Y·勒普罗沃 申请人:阿尔卡特朗讯公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1