CN101283566B - 用于vc-1的rtp净荷格式 - Google Patents
用于vc-1的rtp净荷格式 Download PDFInfo
- Publication number
- CN101283566B CN101283566B CN2006800378057A CN200680037805A CN101283566B CN 101283566 B CN101283566 B CN 101283566B CN 2006800378057 A CN2006800378057 A CN 2006800378057A CN 200680037805 A CN200680037805 A CN 200680037805A CN 101283566 B CN101283566 B CN 101283566B
- Authority
- CN
- China
- Prior art keywords
- stem
- rtp
- information
- frame
- parameter
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 claims description 48
- 230000005540 biological transmission Effects 0.000 claims description 22
- 239000012634 fragment Substances 0.000 claims description 20
- 230000011218 segmentation Effects 0.000 claims description 10
- 238000005538 encapsulation Methods 0.000 claims description 8
- 230000003252 repetitive effect Effects 0.000 claims description 5
- 230000008707 rearrangement Effects 0.000 claims description 2
- 238000000429 assembly Methods 0.000 claims 1
- 238000012545 processing Methods 0.000 abstract description 12
- 230000008569 process Effects 0.000 description 23
- 230000007246 mechanism Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 13
- 230000000977 initiatory effect Effects 0.000 description 13
- 230000006870 function Effects 0.000 description 12
- 230000014509 gene expression Effects 0.000 description 12
- 230000008859 change Effects 0.000 description 10
- 230000015654 memory Effects 0.000 description 9
- 230000006835 compression Effects 0.000 description 7
- 238000007906 compression Methods 0.000 description 7
- 238000011282 treatment Methods 0.000 description 7
- 230000003139 buffering effect Effects 0.000 description 6
- 230000009471 action Effects 0.000 description 4
- 230000000295 complement effect Effects 0.000 description 4
- 241000446313 Lamella Species 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012805 post-processing Methods 0.000 description 3
- 229910002056 binary alloy Inorganic materials 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000003550 marker Substances 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 101100391181 Dictyostelium discoideum forH gene Proteins 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000011221 initial treatment Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000013011 mating Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/20—Control channels or signalling for resource management
-
- 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/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/643—Communication protocols
- H04N21/6437—Real-time Transport Protocol [RTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/16—Time-division multiplex systems in which the time allocation to individual channels within a transmission cycle is variable, e.g. to accommodate varying complexity of signals, to vary number of channels transmitted
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/2381—Adapting the multiplex stream to a specific network, e.g. an Internet Protocol [IP] network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/20—Control channels or signalling for resource management
- H04W72/23—Control channels or signalling for resource management in the downlink direction of a wireless link, i.e. towards a terminal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W74/00—Wireless channel access
- H04W74/04—Scheduled access
- H04W74/06—Scheduled access using polling
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
描述了用于VC-1的RTP净荷格式。RTP净荷格式提供了可包括一个或多个访问单元(AU)(608)的RTP净荷(606)。访问单元(608)可提供完整的VC-1信息帧。或者,VC-1信息帧可在多个访问单元(608)之间分段。每一访问单元(608)包括访问单元首部(610)和访问单元净荷(612)。该RTP净荷格式结合了用于改善VC-1信息处理中的效率和稳健性的各种规定,这部分地通过由访问单元(608)的相应访问单元首部(610)传达的控制信息来实现。
Description
背景
实时传输协议(RTP)是一种公知的用于通过IP网络传送媒体信息(音频和视频)的协议。RTP协议在Schulzrinne等人的“RTP:A Transport Protocolfor Real-Time Applicatons”(RTP:用于实时应用的传输协议),STD 64,RFC3550,2003年7月中有完整描述。如图1中概括地表明的,RTP分组100包括RTP分组首部102和RTP净荷104。RTP首部102包括图1中枚举的各种公知的元数据字段。接收RTP分组的设备使用RTP首部102中的信息来支配对净荷104内的信息的处理。
RTP对每一编解码器需要一单独的所谓的净荷格式。用于处理媒体信息的公知的编解码器包括MPEG-2、H.264/MPEG-4AVC、MP3等等。净荷格式指定了使用RTP来封装编解码器数据的精确方式。换言之,净荷本质上是一映射规范,它详细描述了如何在RTP分组内排列视频或音频数据。每一编解码器具有唯一的复杂度。由此,为编解码器开发RTP净荷格式的任务引发了多种独特的挑战。
此处所描述的主题描述了一种用于视频编解码器1(VC-1)视频编解码器的RTP净荷格式。VC-1具有广泛的适用性,它适用于低比特率因特网流传送应用到具有几乎无损编码的HDTV广播和数码影院应用。更具体而言,例如,VC-1被广泛用于在因特网上以Windows Media Video 9(WMV-9)的形式下载和流传送电影。VC-1还作为用于各种高清DVD格式的强制压缩格式而被采用。
VC-1编解码器在“Proposed SMPTE Standard for Television:VC-1Compressed Video Bitstream Format and Decoding Process”(对电视建议的SMPTE标准:VC-1压缩视频比特流格式和解码过程),(美国)电影电视工程师学会(The Society of Motion Picture and Television Engineers),白原市,纽约,2005年8月23日(以下简称为SMPTE 421M)中有描述。SMPTE 421M规范通过整体引用结合于此。
概述
描述了一种用于VC-1的RTP净荷格式。该RTP净荷格式提供了能包括一个或多个访问单元(AU)的RTP净荷。访问单元可提供VC-1信息的完整帧。或者,VC-1信息的帧可在多个访问单元之中分段。每一访问单元包括一访问单元首部和一访问单元净荷。该RTP净荷格式结合了用于提高VC-1信息处理中的效率和稳健性的各种规定,这一提高部分地是通过由访问单元的相应访问单元首部所传达的控制信息来实现的。
本概述一节中所陈述的主题涉及本发明的示例性表示,因此并不限制权利要求书部分中所述的本发明的范围。
附图简述
图1示出了一示例性RTP分组。
图2示出了如SMPTE 421M中所描述的对VC-1中三种不同类的使用。
图3示出了由VC-1使用的分层模型。
图4示出了可在处理VC-1时重排帧的方式。
图5示出了根据本发明的用于处理媒体信息的示例性系统。
图6示出了用于VC-1的RTP净荷格式的示例性结构。
图7-9示出了解释图5的系统的操作的示例性过程。
图10示出了用于实现图5的系统的各方面的示例性计算机环境。
在全部公开内容和附图中使用相同的标号来指代相同的组件和特征。100系列的标号指代最初在图1中找到的特征,200系列的标号指代最初在图2中找到的特征,300系列的标号指代最初在图3中找到的特征,依此类推。
详细描述
此处描述了用于VC-1的RTP净荷格式。
本公开内容包括以下各小节。小节A提出了VC-1标准的介绍性综述。小节B提出了使用用于VC-1的RTP净荷格式来处理媒体信息的示例性系统。小节C描述了RTP净荷格式的示例性结构。小节D描述了小节A的系统的示例性操作方式。而小节E描述了用于实现小节B的系统的各方面的示例性计算机环境。
A.VC-1综述
A.1.类和级
为便于解释用于VC-1的独特RTP净荷格式,在本介绍性小节中将提供SMPTE 421M标准的某些突出特征的引导性讨论。在本介绍性小节中,某些定义和解释是从SMPTE 421M规范中摘录的。
SMPTE 421M指定了符合VC-1的比特流的特性以及解码这些流所需的过程。(然而,这一标准没有指定VC-1压缩算法,因此允许用不同的方式来实现VC-1编码器)。如在图2中所表明的,VC-1比特流句法具有三个类(202、204、206)。类指的是该标准的句法的一个定义的子集,其具有与其相关联的特定的一组编码工具、算法和句法规则。取决于使用VC-1的应用,某些类可能比其它类更适用。
简单和主类(202、204)是为相对较低比特率的应用设计的。例如,简单类当前支持的最大比特率是384Kbps。高级类206是为诸如数字TV、HD DVD或HDTV等较高比特率广播应用设计的。高级类当前支持的最大比特率是135Mbps,使得它适用于对HDTV信号的几乎无损的编码。高级类206还支持隔行视频帧。高级类206还提供用户数据(例如,元数据)与压缩比特流的带内组合。用户数据可用于例如关闭字幕支持。此外,高级类206允许诸如图像宽高比等编解码器配置参数通过压缩比特流中的带内信令来改变。再者,诸如非正方形像素和对隔行图像的支持等可用于实现高压缩效率的某些特征仅被包括在高级类中。
对于每一类,定义了某一数量的“级”。与意味着特定的一组特征或句法元素的“类”不同,“级”是关于类中的参数值的一组约束,诸如比特率或缓冲区大小。VC-1简单类202具有两级,主类204具有三级,而高级类206具有五级。SMPTE 421M的附录D提供了类和级的更详细列表。
A.2.层
现在参考图3,VC-1比特流被定义为层的分层结构。这在概念上类似于联网协议的协议栈的表示法。最外面的层被称为序列层302。其它层是入口点层304、图像层306、片层308、宏块层310以及块层312。
在简单和主类(202、204)中,序列层302中的序列由一系列一个或多个已编码图像(以下讨论)构成。在高级类206中,序列由一个或多个入口点段(以下讨论)构成,其中每一入口点段由一系列一个或多个图像构成,并且其中每一入口点段中的第一个图像提供了随机访问(以下讨论)。在高级类206中,序列首部(以下更详细描述)可对序列的开始划界。
入口点层304定义了比特流中提供随机访问的点。更具体而言,比特流中的随机访问点(也称为入口点)是通过以下保证来定义的:如果解码在该点开始,则在该点之后所有需要显示的帧对该点之前的任何数据没有解码依赖性,并且也存在于该点之后的解码序列中。入口点段指的是存在于一个入口点和一个随后的入口点之间的段。在高级类306中,入口点可由入口点首部(如以下更详细描述的)来划界。另一方面,简单和主类(202、204)不采用由入口点首部划界的段;相反,在这些类(202、204)中,每一I图像包括一随机访问点。
关于图像层306,图像指的是源、已编码或重构的图像数据。每一图像可被编码为I图像、P图像、跳过图像、BI图像或B图像。这些术语在本领域中是公知的,并且例如在SMPTE 421M的4.12节中定义。P图像是使用从过去的参考场或帧的经运动补偿的预测来编码的图像。B图像是使用从过去和/或未来的参考场或帧的经运动补偿的预测来编码的图像。B图像不能用于预测任何其它图像。I图像指的是帧内编码图像,即使用仅来自其自身的信息来编码的图像。
对于逐行视频,图像等同于帧,而对于隔行视频,取决于上下文,图像可以指帧,或是帧的上场或下场。逐行指的是其中帧的所有样本都表示同一时刻的帧特性。隔行是其中帧的交替行表示不同时刻的帧特性。更正式地,帧包含视频信号的空间信息行。对于逐行视频,这些行包含从一个时刻开始并通过连续的行到帧的最后的样本。对于隔行视频,帧由两个场,即上场和下场构成。这些场中的一个比另一个晚开始一个场周期。
关于片层308、宏块层310和块层312,每一图像由片集合组成,每一片由宏块集合组成,而每一宏块由块集合组成。最后,块指的是8行乘8列的样本矩阵,即64个变换系数。片层302仅存在于高级类206中。
A.3.BDU和EBDU
对于高级类206,SMPTE 421M将图3所示的信息组织成称为比特流数据单元(BDU)的单元。BDU是可独立于同一分层级上的其它信息来语法分析(例如,句法解码)的压缩数据的单元。BDU可以是例如序列层首部、入口点首部、帧或片。
BDU的开始由称为起始码(SC)的标识符来表示。例如,序列层首部和入口点首部是BDU,因此可容易地用其起始码来标识。参见SMPTE 421M的附录E以获得起始码的完整列表。注意,块和宏块不是BDU,并且因此没有起始码且不必是字节对齐的。为防止已编码比特流中的起始码的意外竞争,SMPTE 421M定义了使用字节填充的封装机制。通过该机制封装的BDU被称为封装BDU,或称EBDU。
A.4.序列层首部和入口点首部
更详细地考虑高级类206的序列层首部BDU。序列层首部包含初始化VC-1解码器所必需的参数。这些参数适用于已编码比特流中序列层首部的下一次出现之前的所有入口点段。序列层首部中的参数包括高级类级、已编码图像的划界、宽高比、隔行信息、帧速率、以及用于假想参考解码器(HRD)(以下更详细讨论)的多达31个漏桶参数。SMPTE 421M的6.1节提供了序列层首部的正式规范。
接着更详细讨论高级类206的入口点首部BDU。如上所述,入口点首部对比特流内的随机访问点划界。入口点首部还指定了用于HRD中的漏桶的当前缓冲区满度值。该首部还指定了在比特流中的下一入口点首部出现之前有效设置的编码控制参数。参见SMPTE 421M的6.2节以获得关于入口点首部的正式规范。
为了清晰和重申,简单和主类(202、204)没有利用序列层首部或入口点首部。对于这些类(202、204),解码器初始化参数可从已编码比特流带外传递。
A.5.假想参考解码器(HRD)
上述“HRD”指的是一种所谓的假想参考解码器。如在SMPTE 421M规范中完整描述的,假想参考解码器(也称为视频缓冲区验证器)指的是概念上连接到编码器的输出的假想解码器。其目的是提供关于编码器或编辑过程可产生的数据率的变化性的约束。对HRD技术的一般描述可在Ribas-Corbera,J.、Chou,P.A.和S.L.Regunathan的“A generalized hypothetical reference decoder forH.264/AVC”(用于H.264/AVC的广义假想参考解码器),IEEE Transactions onCircuits and Systems for Video Technology(关于视频技术的电路和系统的IEEE学报),2003年8月中找到。
支配HRD的操作的缓冲模型被称为“漏桶”。漏桶是由三个参数(R、B、F)来表征的,其中:R是比特进入解码器缓冲区的峰值传输比特率(以比特每秒为单位);B是解码器缓冲区的容量(以比特为单位);F是初始解码器缓冲区满度(以比特为单位),它应当小于或等于B。用于HRD的漏桶“参数集”指定了峰值传输比特率和解码器缓冲区容量。SMPTE 421M的附录C提供了关于HRD对VC-1比特流的应用的附加信息。
A.6.定时和帧排序问题
前进到图4,该图示出了在处理过程中可重排帧的方式。更具体而言,帧是以捕捉它们的相同次序来传输的,除了如果在已编码比特流中存在B图像之外。在这一情况下,传输各帧使得B图像所依赖的帧被首先传输。这被称为帧的已编码次序。
关于解码器如何将帧从已编码次序转换成显示次序的规则在SMPTE421M的5.4节中有规定。简言之,如果B帧可能存在于已编码比特流中,则假想解码器实现需要缓冲一个附加的已解码帧。当接收到I帧或P帧时,该帧可被立即解码,但是在接收到下一I帧或P帧之前不被显示。然而,B帧被立即显示。
图4具体示出了当B帧存在于已编码比特流中时,帧的捕捉、其已编码次序以及已解码帧的显示次序之间的定时关系。在图4所示的具体示例中,帧P4的显示被延迟到接收到帧P7之后,而帧B2和B3被立即显示。另一方面,如果不存在B图像,则已编码次序和显示次序是相同的,并且帧因此可没有附加延迟地显示。
B.示例性系统
一般而言,参考附图所描述的任何功能都可使用软件、硬件(例如,固定逻辑电路)、手动处理或这些实现的组合来实现。如此处所使用的术语“逻辑”、“模块”或“功能”一般表示软件、硬件或软件和硬件的组合。例如,在软件实现的情况下,术语“逻辑”、“模块”或“功能”表示当在一个或多个处理设备(例如,一个或多个CPU)上执行时执行指定任务的程序代码(或声明性内容)。程序代码可被储存在一个或多个计算机可读介质中。
更一般地,所示的将逻辑、模块和功能分割成不同单元可以反映这些软件和/或硬件的实际物理分组和分配,或可对应于由单个软件程序和/或硬件单元执行的不同任务的概念上的分配。所示的逻辑、模块和功能可位于单个地点(例如,如由处理设备实现的),或可在多个位置上分布。
术语“机器可读介质”等指的是用于以任何形式保留信息的任何种类的介质,包括各种存储设备(磁、光、固态等)。术语机器可读介质还包含表示信息的暂时形式,包括用于将信息从一点传输到另一点的各种硬连线和/或无线链路。
图5示出了可利用此处所描述的RTP净荷格式的一个示例性系统500的综述。
该系统包括源模块502,它经由通信机制(或多个机制)504向目标模块506发送媒体信息。源模块502和目标模块506可表示各种各样的设备或其它功能,包括任何种类的计算机。例如,源模块502可表示服务器,而目标模块506可表示客户机计算机。然而,许多其它情形也是可能的。在另一情形中,源模块502和目标模块506可表示例如经由中间服务器交换机、经由P2P等彼此通信的两个个人计算机设备。在另一情形中,源模块502和目标模块506可表示两个服务器型计算机。在另一情形中,源模块502和/或目标模块506可表示其它种类的计算设备,诸如可佩带处理设备、移动电话设备、机顶盒、游戏控制台、音频回放设备、任何种类的视频盘播放器、数字录像机(DVR)等等。再一次,许多其它置换也是可能的。一般而言,在一种情况下,源模块502在目标模块506的远程。在另一种情形中,源模块502相对于目标506是本地的。
通信机制504可表示用于在设备之间交换信息的任何种类的信道或信道组合。它可表示局域网(LAN)、广域网(WAN,例如,因特网)或其组合。它可使用任何种类和组合的链路,诸如硬连线导电链路、无线链路、电力线等来物理地实现。通信机制504还可包括诸如各种路由器、网关、名称服务器等网络相关设备的任意组合。
如图5中概括地示出的,源模块可包括用于将媒体信息(或其它种类的数据)流转换成所需标准(在此情况中为VC-1)的编码模块508。发送模块510可使用将在本说明书的小节C中描述的净荷格式来封装VC-1媒体信息。换言之,该过程包括根据以下描述的规则将VC-1流中的信息组织成RTP分组。图5还示出了直接通往发送模块510的箭头,这示出了发送模块可接收VC-1媒体信息而无需执行由编码模块508执行的编码。在又一情形中,发送模块510可接收已经被转换成所需VC-1 RTP净荷格式的VC-1信息,并且因此,该信息可直接就绪用于发送。在任何情况下,发送模块510都通过通信机制504向目标模块506发送RTP分组。
目标模块506包括用于从通信机制504接收RTP分组的接收模块512。与此相关,接收模块512可执行多个功能,诸如缓冲RTP分组流、如有必要重排分组流中的信息、解决分组流中的信息丢失等等(将在下一节中更详细讨论)。接收模块512将所接收到的媒体信息传递给解码模块514,后者解码该媒体信息。解码模块514可将它所产生的已解码信息传递给由后处理模块516表示的任何种类的后处理功能。后处理模块516对该已解码信息执行归于其的处理任务以得到最终输出。在媒体信息的上下文中,输出可表示音频和/或视频演示的生成。输出设备(未示出)可包括扬声器和/或电视机屏幕、和/或计算机监视器等等。
在另一情形中,源模块502可在一个或多个计算机可读介质上以所需的净荷格式储存媒体信息。目标模块506可从一个或多个计算机可读介质中读取该媒体信息并对该媒体信息执行规定的操作。在这一情形中,通信机制504可被广泛地解释为表示上述一个或多个计算机可读介质。示例性类型的计算机可读介质包括各种类型的磁存储设备、光学设备、固态存储设备等等。
C.示例性净荷格式
C.1.RTP中的VC-1格式比特流的封装
C.1.1.净荷格式和访问单元概念综述
图6示出了实现被修改成适合VC-1标准的示例性净荷格式的示例性RTP分组602。它包括RTP首部部分602和整数个字节对齐的访问单元(AU)606。每一访问单元能以AU首部(将在以下定义)开始,并且后跟一可变长度净荷。在一个示例性实现中,AU有效载荷包含仅属于一个VC-1帧的数据,使得来自不同VC-1帧的数据总是在不同的AU中。例如,图6所示的每一AU净荷可包含相应的VC-1帧。(注意,如果对于这些VC-1帧的AU的组合大小小于RTP分组的最大传输单元(MTU)大小,则将AU组合成单个RTP分组将是有益的;这一规定允许将RTP封装的开销分摊到多个AU上。)然而,如以下在C.1.2一节中讨论的,帧也可在多个AU之中分段。
图6还示出了示例性访问单元(AU)608的合成。该AU 608包括AU首部部分610和可变长度AU净荷612。AU首部部分610包括支配AU 608内的媒体信息的处理的各种控制信息。AU首部610在各种控制字段中传达控制信息,这些字段包括AU控制字段614、RA计数字段、AUP长度字段、PTS增量字段以及DTS增量字段。图6枚举了“AU控制字段”614的示例性内容。稍后的小节描述了AU首部610中的每一控制信息字段所担的任务。
以下示例性一般特性可应用于AU净荷的内容:
·对于高级类,AU净荷可包含EBDU格式的VC-1比特流数据(例如,该比特流可使用SMPTE 421M的附录E中所定义的字节填充封装模式。)
·对于高级类,AU净荷可包含多个EBDU,例如,序列层首部、入口点首部、图像首部和多个片及相关联的用户数据。AU中的所有片及其相应的宏块应属于同一视频帧。
·如果AU中的数据(在高级类的情况下是EBDU,而在简单和主类的情况下是帧)不在八位组边界处结束,则可添加最多7个零值填充比特来实现八位组对齐。
·当使用VC-1简单或主类时,AU净荷应以图像首部开始,除了当AU净荷包含分段帧(如下所述)时之外。
C.1.2.VC-1帧的分段
如上所述,每一AU净荷可包含一完整的VC-1帧。然而,如果向AU净荷添加完整的帧导致RTP分组超出MTU大小,则该帧可被分段成多个AU以避免IP级分段。可设置AU首部中的FRAG字段(在以下更详细讨论)以指示该AU包含分段的帧。
以下示例性特性可应用于AU净荷内的帧的分段:
·对于高级类,不包含分段帧或包含帧的第一片段的AU净荷可在EBDU边界处开始。
·如上所述,对于简单和主类,AU净荷能以图像首部的起始而开始,除了当AU净荷包含分段帧时之外。在简单和主类的情况下,由于块和宏块不是字节对齐的,因此分段边界可被任意选择。
·如果使用高级类,则包含除第一片段之外的帧片段的AU净荷可在EBDU边界处开始,诸如在片的起始处开始。然而,注意,片仅是对高级类定义的,并且并不是始终使用的。因此,在某些情况下,可能无法在EBDU边界处继续分段帧。如果AU不能在EBDU边界处开始,则它可在块或宏块处开始。但是注意,块和宏块不是BDU(因此没有起始码),并且不是字节对齐的。可通过检查AU净荷的前三个字节来确定AU净荷是否在EBDU边界处开始。如果前三个字节等于起始码前缀(例如,0x00、0x00、0x01),则AU净荷在EBDU边界处开始。
·如果RTP分组包含具有帧的最后一个片段的AU,则在一个示例性实现中,RTP分组中不包括另外的AU。
·如果AU首部中的PTS增量字段存在(将在以下描述),则帧的每一片段应具有相同的演示时间。
·如果AU首部中的DTS增量字段存在(将在以下描述),则帧的每一片段应具有相同的解码时间。
C.1.3.时戳问题
有多个问题可影响RTP分组中媒体信息的时间相关处理。示例性的这样的问题如下:
·在一个示例性实现中,源模块502可按已编码次序来发送视频帧。如上在图4的上下文中讨论的,已编码次序意味着没有帧依赖于后续帧。
·RTP时戳字段(例如,图1的RTP首部102中的“时戳”字段)可被设为包含在RTP分组中的第一个AU中的视频帧定义的演示时间。该演示时间可被用作RTP首部中的时戳字段,因为它与该帧的采样时刻仅有任意常数偏移量的不同。
·如果AU中的视频帧具有不同于RTP时戳字段的演示时间,则可使用AU首部中的PTS增量字段来指定演示时间。由于RTP时戳字段应与第一视频帧的演示时间相同,因此该情形仅在RTP分组包含多个AU时才发生。PTS增量字段的句法在以下更详细定义。
·VC-1帧的解码时间在以已编码次序发送视频帧时单调递增。如果B图像不存在于已编码比特流中,则帧的解码时间等于帧的演示时间。
·如果B图像存在于已编码比特流中,则帧的解码时间可如下确定:
(1)非B帧:解码时间等于按已编码次序的前一非B帧的演示时间。
(2)B帧:解码时间等于该B帧的演示时间。
作为一个示例,再一次考虑图4。假定非B帧P4的解码时间是4个时间单位,这等于按已编码次序的前一非B帧(P1)的演示时间。另一方面,B帧B2的解码时间是5个时间单位,这等于其演示时间。
·如果视频帧的解码时间不同于其演示时间,则解码时间使用AU首部中的DTS增量字段来指定。DTS增量字段的句法在以下定义。
·一般而言,知道流是否包含B图像可帮助目标模块506更有效地分配资源并可减少延迟,因为流中没有B图像意味着在解码过程和已解码帧的显示之间不需要帧的重排。这一时间节省对于交互式应用尤其有用。
·接收器在以下情况下可假定已编码比特流可包含B图像:
(1)高级类:如果“bpic”媒体类型参数的值是1,或者如果未指定“bpic”参数。“bpic”参数是一个MIME(多用途因特网邮件扩展)参数,并且在以下描述。
(2)主类:如果STRUCT_C解码器初始化参数中的MAXBFRAMES字段具有非零值。STRUCT_C是在“config”媒体类型参数中传达的,如将在以下更详细描述的。STRUCT_C在SMPTE 421M的附录J中定义。
·注意,简单类不使用B图像。
C.1.4.随机访问点
如在小节A中所描述的,入口点(也称为随机访问点)定义了流中解码器模块514可获得对该流的“入口”以开始处理它或在中断之后继续处理它的点。两个连续的入口点定义了任何入口点段。这意味着在丢失RTP分组的情况下,解码器模块514在其到达流中的下一入口点之前可能无法解码帧。
入口点首部对入口点段划界。入口点首部包含解码模块514解码由入口点首部标识的入口点段中的帧所需的信息。入口点首部之后的第一个帧是到该已编码比特流的随机访问点(即,入口点)。简单和主类没有入口点首部。对于这些类,每一I图像用作随机访问点。
RTP净荷格式定义了称为“RA计数”的字段,如在图6的AU首部610中所指出的。RA计数字段允许接收器模块512检测所丢失的RTP分组包含随机访问点。更具体而言,源模块502可的每一随机访问点递增(例如,模256)RA计数字段的值,并将该值插入到每一相应AU的RA计数字段中。目标模块506可使用该计数信息例如通过检测它所接收到的媒体信息中的RA计数值的不连续性来检测媒体信息的丢失。对于涉及该主题的其它细节,参见C.2.2节中对“RA计数”的定义。
RTP净荷格式还在AU控制字段中定义了一个称为“RA”标志的位,如在由AU首部610的AU控制字段614中所指示的。该位仅对于包含随机访问点的这些AU才设置为1。RA标志因而使得确定AU是否包含随机访问点更为容易。RA位在小节C2.3中更详细地描述。
C.1.5.HRD参数的移除
高级类中的序列层首部可包括用于假想参考解码器(HRD)的多达31个漏桶参数集。该漏桶参数集描述了可能应用于向目标模块506的媒体信息传输的不同传输情形。更具体而言,每一漏桶参数集指定了一可能的峰值传输比特率(HRD_RATE)和解码器缓冲区容量(HRD_BUFFER)。对于序列层首部中的每一漏桶参数集,在入口点首部中还存在指定漏桶的初始满度的参数(HRD_FULL)。
在某些情形中,源模块502(或其它发送器实体)可能已经知道了向目标模块506发送媒体信息的实际峰值速率。在这一情况下,源模块502可从序列层首部中移除除了对应于实际峰值传输速率之外的参数集之外的所有漏桶参数集。然而,当完成这一动作时,源模块502还应当移除入口点首部中的相应HRD_FULL参数。如上所述移除漏桶参数集可显著减小序列层首部和入口点首部的大小。
C.1.6.重复序列层首部
源模块502可通过在比特流中频繁地重复序列层首部来改善针对RTP分组丢失的稳健性。即,通过这一策略,序列层首部的丢失可能使用已被成功接收到(并包含与丢失的序列层首部相同的信息)的另一序列层首部来补救。在这一策略中,序列层首部和入口点首部中的漏桶参数的个数可使用在上一节(C.1.5节)中所描述的技术来减少到1。这一规定将帮助减少因重复序列层首部而引起的开销。
注意,当计算用于HRD的漏桶参数时应当考虑VC-1比特流中的任何数据,包括序列首部本身的重复副本。
还要注意,如果序列层首部中的TFCNTRFLAG标志的值为1,则每一图像首部包含一帧计数器字段(TFCNTR)。每次当将序列层首部插入到比特流中时,应重置该计数器的值。
最后,AU控制字段614定义了称为“SL”标志的位,如图6中所指出的。该SL位允许目标模块506检测丢失的RTP分组包含新的序列层首部。即,源模块502(或其它实体)可在发送序列层首部时来回切换该位,但是仅在该首部与最近发送的序列层首部不同时才切换。通过记下该位的值的改变,目标模块506可确定是否已发送了新的序列层首部,以及这一序列层首部是否可能已丢失。SL位在C.2.3节中进一步讨论。
C.1.7.MIME格式参数的表示
当对SDP(会话描述协议)使用上述RTP净荷格式时,可在SDP中使用C.3.1节中指定的MIME参数来表示解码器初始化参数。C.3.2节指定了如何将MIME参数映射到SDP。C.3.3节定义了对SDP提议/答复模型专用的规则,而C.3.4节定义了当以声明性方式使用SDP时的规则。作为背景,会话描述协议(或称SDP)规范陈述了用于描述用于流传送媒体信息的会话的细节的协议。参见Handley,M.和V.Jacobson的“SDP:Session Description Protocol”(SDP:会话描述协议),RFC 2327,1998年4月。多用途因特网扩展(或称MIME)规范陈述了用于格式化用于通过因特网传输的消息的规则。SDP提议/答复模型在Rosenberg,J.和H.Schulzrinne的“An Offer/Answer Model with SessionDescription Protocol(SDP)”(具有会话描述协议(SDP)的提议/答复模型),RFC 3264,2002年6月中有描述。
当使用高级类时,解码器初始化参数可通过在已编码比特流中插入新的序列层首部或入口点首部来改变。相反,当使用简单或主类时,解码器初始化参数在已编码比特流中不改变。对解码器初始化参数的任何改变可通过带外手段,例如通过更新SDP来作出。
对于高级类,注意序列层首部指定VC-1级、已编码图像的最大尺寸以及可任选的还有最大帧速率。媒体类型参数“level(级)”、“width(宽度)”、“height(高度)”和“framerate(帧速率)”指定了这些参数的上限。由此,序列层首部可指定低于媒体类型参数“level”、“width”、“height”或“framerate”的值的值,但是序列层首部不应超过这些媒体类型参数中任一个的值。
C.1.8.“mode=1”媒体类型参数
序列层首部在使用高级类的某些应用中从不改变。这可用媒体类型参数“mode=1”(模式=1)来表示。(“mode”参数在C.3.1节中定义)。“mode=1”参数用作对目标模块506的提示,表示比特流中的所有序列层首部都将相同。如果表示了“mode=1”并且已编码比特流中存在序列层首部,则该序列层首部应与由“config”媒体类型参数所指定的序列层首部相同。
由于序列层参数在“mode=1”中从不改变,因此源模块502或其它RTP发送器可将其从比特流中移除。然而,注意,如果序列层首部中的FRCNTRFLAG标志的值是1,则每一图像首部包含帧计数器字段(TFCNTR)。该字段在每次序列层首部在比特流中出现时被重置。如果RTP发送器选择移除序列层首部,则它应确保所得的比特流仍符合VC-1规范(例如,通过在必要时调整TFCNTR字段)。
C.1.9.“mode=3”媒体类型参数
在其它情况下,序列层首部和入口点首部两者在高级类中从不改变。这可用MIME参数“mode=3”来表示。C.1.8节中描述的对“mode=1”相同的规则适用于“mode=3”。另外,如果表示了“mode=3”,则源模块502或其它RTP发送器可通过不在RTP分组中包括序列层首部和入口点首部两者来“压缩”已编码比特流。
接收模块512(或其它功能)可通过在将已编码比特流传送到解码模块514之前重新插入被移除的入口点首部来“解压”已编码比特流。序列层首部无需由接收模块512解压,因为它从不改变。
如果表示了“mode=3”并且接收模块512接收到完整的AU或AU的第一个片段,并且RA位被设为1但是AU不是以入口点首部开始的,则这表明入口点首部被“压缩”。在这一情况下,接收模块512可在AU的开头插入入口点首部。当插入入口点首部时,接收模块512可使用由MIME“config”参数指定的首部。
C.2.RTP净荷格式句法
C.2.1.RTP首部使用
RTP首部的格式在RFC 3550中指定,并且概括地由图1表示。固定RTP首部的字段具有其通常的含义,这在RTC 3550中并由使用中的RTP类来定义,附加注解如下:
·标记位(M):1位
如果RTP分组包含含有完整的VC-1帧或VC-1帧的最后一个片段的访问单元,则该位被设为1。
·净荷类型(PT):7位
该描述没有为此处所述的RTP净荷格式分配RTP净荷类型。净荷类型的分配可以通过使用的RTP类或以动态方式来执行。
·序列号:16位
目标模块506可使用序列号字段来恢复VC-1帧的已编码次序。(典型的VC-1解码器要求按已编码次序来传送VC-1帧。)当VC-1帧已跨RTP分组分段时,目标模块506可使用序列号字段来确保没有片段遗漏。
·时戳:32位
RTP时戳被设为第一个访问单元中的VC-1帧的演示时间。在一个示例性实现中,可使用90kHz的时钟速率。
C.2.2.AU首部句法
如上所述,图6示出了示例性访问单元608的合成。访问单元608包括AU首部610和AU净荷612。访问单元首部610包括一字节的AU控制字段、RA计数字段和三个其它字段(AUP长度、PTS增量和DTS增量)。这些字段中的任一个可被定义为强制的或可任选的。例如,在一个示例性实现中,AU控制和RA计数字段是强制的,而其余三个字段是可任选的。所有字段都可按照网络字节序来写。
AU首部的结构在以下更详细定义:
·AU控制:8位
对AU控制字段的使用在C.2.3节中定义。
·RA计数:8位
随机访问点计数器。该字段定义了二进制模256计数器。源模块502或其它发送实体可在每次其发送AU时将该字段的值递增1,只要AU控制字段中的RA位被设为1。该字段的初始值未定义,并且可被随机选择。
·AUP长度:16位
访问单元净荷长度。该字段指定了访问单元的净荷612的长度,以字节为单位。该字段不包括AU首部本身的大小。该字段应被包括在RTP分组的每一AU首部中,除了该分组中的最后一个AU首部之外。如果未包括该字段,则应假定访问单元的净荷延伸到RTP净荷的末尾。
·PTS增量:32位
演示时间增量。该字段指定了帧的演示时间为与该RTP分组的RTP首部中的时戳字段的2的补码偏移量(增量)。PTS增量字段可使用与RTP首部中的时戳字段相同的时钟速率。
该字段不应被包括在RTP分组的第一个AU首部中,因为RTP时戳字段指定了第一个AU中的帧的演示时间。如果未包括该字段,则可假定帧的演示时间由RTP分组首部中的时戳字段来指定。
·DTS增量:32位
解码时间增量。该字段指定了帧的解码时间为演示时间和解码时间之间的2的补码偏移量(增量)。注意,如果演示时间大于解码时间,则这导致DTS增量字段的值大于0。DTS增量字段应使用与RTP首部中的时戳字段相同的时钟速率。如果未包括该字段,则可假定帧的解码时间与帧的演示时间相同。
C.2.3.AU控制字段句法
8位AU控制字段的结构在图6中示出,并描述如下:
·FRAG:2位
分段信息。该字段指示AU净荷612是包含完整的帧还是帧的一个片段。它可如下设置:
0:AU净荷包含帧中除第一个或最后一个片段之外的片段。
1:AU净荷包含帧的第一个片段。
2:AU净荷包含帧的最后一个片段。
3:AU净荷包含完整的帧(未分段)。
·RA:1位
随机访问点指示符。如果AU包含作为随机访问点的帧,则该位被设为1。在简单和主类的情况下,任何I图像是随机访问点。在高级类的情况下,入口点首部之后的第一个帧是随机访问点。可使用媒体类型参数“mode=3”来指示没有在每一随机访问点处发送入口点首部。
·SL:1位
序列层计数器。如果AU包含序列层首部并且如果该序列层首部不同于最近发送的序列层首部,则该位可被来回切换,即从0变为1或从1变为0。否则,该位的值与前一AU中的SL位的值相同。该位的初始值未定义,并且可被随机选择。
对于简单和主类比特流,或者如果高级类中的序列层首部从不改变,则该位可被设为0。
·LP:1位
长度存在。如果AU首部包括AUP长度字段,则该位可被设为1。
·PT:1位
PTS增量存在。如果AU首部包括PTS增量字段,则该位可被设为1。
·DT:1位
DTS增量存在。如果AU首部包括DTS增量字段,则该位可被设为1。
·R:1位
保留。该位可被设为0,并且可被接收器忽略。
上述在AU首部和AU控制字段中表达的信息项是示例性的。在其它实现中,可添加另外的信息项和/或可省略上述信息项。可使用一个或多个标志来表示特定的可任选信息项是存在还是被省略。上述句法的另外的其它变型也是可能的。
C.3.RTP净荷格式参数
C.3.1.媒体类型注册
用于VC-1的媒体子类型是从标准树分配的。其下注册该净荷格式的顶层媒体类型是“视频”。
接收器可忽略任何未识别的参数。
·媒体类型:视频
·媒体子类型:vc1
标准参数:
·profile(类):
该参数是指示VC-1类的整数。定义了以下值:
0:简单类;
1:主类;以及
3:高级类。
如果profile参数用于指示已编码比特流的特性,则它指示当解码比特流时解码器必须支持的VC-1类。如果profile参数用于能力交换或在会话设置过程中使用,则它指示编解码器支持的VC-1类。
·level(级):
该参数是指定VC-1类的级的整数。对于高级类,有效值是0到4,这分别对应于级L0到L4。对于简单和主类,定义以下值:
1:低级;
2:中级;以及
3:高级(仅对主类有效)。
如果使用level参数来指示已编码比特流的特性,则它指示当解码比特流时解码器必须支持的VC-1类的最高级。注意,对一级的支持意味着对给定类的全部数值上更低的级的支持。如果level参数用于能力交换或在会话设置过程中使用,则它指示编解码器支持的VC-1类的最高级。
可任选参数:
·config(配置):
该参数是表达解码器初始化参数的八位组串的基16(十六进制)表示。(关于基16表示的一般主题,参阅Josefsson,S.,Ed.的“The Base16,Base32,andBase64 Data Encodings”(基16、基32和基64数据编码),RFC 3548,2003年7月)。解码器初始化参数可在最高位优先(MSB-first)的基础上被映射到基16八位组串。解码器初始化参数的第一位位于第一个八位组的MSB上。如果解码器初始化参数不是8位的倍数,则可添加最多7个零值填充位来实现最后一个八位组中的八位组对齐。
对于简单和主类,解码器初始化参数是如在SMPTE 421M的附录J中定义的STRUCT_C。对于高级类,解码器初始化参数是后面紧跟一入口点首部的序列层首部。两个首部是EBDU格式的,这意味着它们包括起始码并使用SMPTE 421M的附录E中定义的封装方法。
·width(宽度):
该参数是大于零的整数,指定了已编码图像的最大水平大小,以像素为单位。如果未指定该参数,则它默认为指定的类和级所允许的最大水平大小。
·height(高度):
该参数是大于零的整数,指定了已编码图像的最大垂直大小,以像素为单位。如果未指定该参数,则它默认为指定的类和级所允许的最大垂直大小。
·bitrate(比特率):
该参数是大于零的整数,指定了已编码比特流的峰值传输速率,以比特每秒为单位。该数字不包括因RTP封装引起的开销。即,例如,它不包括AU首部,或RTP、UDP或IP首部中的任一个。如果未指定该参数,则它默认为指定的类和级所允许的最大比特率。参见SMPTE 421M的附录D中“RMax”的值。
·buffer(缓冲区):
该参数是指定包含以bitrate参数指定的传输速率传输的流所需的漏桶大小B的整数,以毫秒为单位。该参数在SMPTE 421M的附录C中用于VC-1的假想参考解码器模型中定义。注意,该参数仅涉及编解码器比特流,并且没有考虑可能补偿网络抖动所需的任何缓冲时间。如果未指定该参数,则它默认为指定的类和级所允许的最大缓冲区大小。参见SMPTE 421M的附录D中“BMax”和“RMax”的值。
·framerate(帧速率):
该参数是大于零的整数,指定了已编码比特流中每秒的最大帧数,并乘以1000且舍入到最近的整数值。例如,每秒30000/1001(大约29.97)帧被表示为29970。如果未指定该参数,则它默认为指定的类和级所允许的最大帧速率。
·bpic(B图像):
该参数表示当使用高级类时是否存在B图像。如果存在该参数,并且在已编码比特流中存在B图像,则该参数等于1。0值表明已编码比特流中不应存在B图像,即使序列层首部改变。在一个实现中,如果在已编码比特流中不包括B图像,则可包括该值,且值为0。
该参数不用于简单和主类。(对于主类,B图像的存在可由STRUCT_C解码器初始化参数中的MAXBFRAMES字段来指示)。对于高级类,如果未指定该参数,则可假定值1。
·mode(模式):
该参数是指定对序列层首部和入口点首部的使用的整数。该参数仅对高级类定义。定义了以下值:
0:序列层首部和入口点首部都可改变,并且改变的首部将被包括在RTP分组中;
1:在config参数中指定的序列层首部从不改变;以及
3:在config参数中指定的序列层首部和入口点首部从不改变。
如果未指定模式参数,则可假定值0。如果模式1或3适用于VC-1比特流,则不应指定mode参数。
·max-width(最大宽度)、max-height(最大高度)、max-bitrate(最大比特流)、max-buffer(最大缓冲区)、max-framerate(最大帧速率):
这些参数是被定义用于能力交换过程的。这些参数不表示已编码比特流的特性,而是“width”、“height”、“bitrate”、“buffer”和“framerate”参数的上限或优选值。
表示对给定类和级的支持的接收器应支持对该类和级的这些参数的最大值。例如,在一个实现中,表明对主类、低级的支持的接收器应支持352像素的宽度和288像素的高度,即使这需要缩放图像以适合较小显示设备的分辨率。
接收器可使用max-width、max-height、max-bitrate、max-buffer和max-framerate参数中的任一个来指示优选能力。例如,接收器可选择指定匹配其显示设备的分辨率的max-width和max-height的值,因为使用这些参数编码的比特流不需要被重新缩放。
如果max-width、max-height、max-bitrate、max-buffer和max-framerate参数中的任一个表示小于所表示的类和级的所需能力的能力,则这些参数可被解释为对该能力的优选值。
这些参数中的任一个还可用于表示超出所表示的类和级的所需能力的能力。在这一情况下,参数可被解释为可对该能力支持的最大值。
在一个示例性实现中,当存在来自该集合(max-width、max-height、max-bitrate、max-buffer和max-framerate)的多于一个参数时,所有表示的能力都应同时得到支持。
在一个示例性实现中,如果发送器或接收器能支持更高级的所有特性,则发送器或接收器不应使用这些参数来表示满足比在“level”参数中指定的级更高的VC-1类的级的要求的能力,除了如果指定更高级因为其它限制而不被允许之外。(作为这一限制的一个示例,在SDP提议/答复模型中,可在答复中使用的level参数的值受到在提议中所指定的值的限制。)
·max-width:
该参数是大于零的整数,指定了对于已编码图像的水平大小,以像素为单位。如果该值小于类和级所允许的最大水平大小,则该值指定了优选水平大小。否则,它指定了所支持的最大水平大小。如果未指定该参数,则它默认为指定的类和级所允许的最大水平大小。
·max-height:
该参数是大于零的整数,指定了对于已编码图像的垂直大小,以像素为单位。如果该值小于类和级所允许的最大垂直大小,则该值指定了优选垂直大小。否则,它指定了所支持的最大垂直大小。如果未指定该参数,则它默认为指定的类和级所允许的最大垂直大小。
·max-bitrate:
该参数是大于零的整数,指定了对于已编码比特流的峰值传输速率,以比特每秒为单位。该数字不包括因RTP封装引起的开销,例如,它不包括AU首部,或RTP、UDP或IP首部中的任一个。
如果该值小于类和级所允许的最大比特率,则该值指定了优选比特率。否则,它指定了所支持的最大比特率。如果未指定该参数,则它可默认为指定的类和级所允许的最大比特率。参见SMPTE 421M的附录D中“RMax”的值。
·max-buffer:
该参数是指定包含以max-bitrate参数所指定的传输速率传输的流所需的漏桶大小B的整数,以毫秒为单位。该参数在SMPTE 421M的附录C中用于VC-1的假想参考解码器模型中定义。注意,该参数仅涉及已编码比特流,并且没有考虑可能补偿网络抖动所需的任何缓冲时间。
如果该值小于max-bitrate参数以及类和级所允许的最大漏桶大小,则该值指定了优选漏桶大小。否则,它指定了对max-bitrate参数所指定的比特率所支持的最大漏桶大小。如果未指定该参数,则它默认为指定的类和级所允许的最大缓冲区大小。参见SMPTE 421M的附录D中“BMax”和“RMax”的值。
·max-framerate:
该值是大于零的整数,指定了对于已编码比特流的每秒帧数。该值是帧速率乘以1000并舍入到最近的整数值。例如,每秒30000/1001(大约29.97)帧被表示为29970。
如果该值小于类和级所允许的最大帧速率,则该值指定了优选帧速率。否则,它指定了支持的最大帧速率。如果未指定该参数,则它默认为指定的类和级所允许的最大帧速率。
C.3.2.媒体类型参数到SDP的映射
媒体类型规范中所携带的信息具有到会话描述协议(SDP)中的字段的特定映射。如果使用SDP来指定使用该净荷格式的会话,则一个示例性映射如下执行:
·SDP的“m=”行中的媒体名称是video(视频)(类型名称)。
·SDP的“a=rtpmap”行中的编码名称是vcl(子类型名称)。
·“a=rtpmap”行中的时钟速率是90000。
·所需的参数“profile”和“level”应被包括在SDP的“a=fmtp”行中。这些参数以参数=值对的逗号分隔列表的形式来表达。
·可任选参数“config”、“width”、“height”、“bitrate”、“buffer”、“framerate”、“bpic”、“mode”、“max-width”、“max-height”、“max-bitrate”、“max-buffer”和“max-framerate”在存在时可被包括在SDP的“a=fmtp”行中。
这些参数以参数=值对的逗号分隔列表的形式来表达:
a=fmpt:<动态净荷类型><参数名>=<值>[,<值>][;<参数名>=<值>]
·对使用SDP的设备未知的任何参数可被忽略。例如,在稍后的规范中定义的参数可被复制到SDP中并可被不理解它们的接收器忽略。
C.3.3.对SDP提议/答复模型的使用
当在用于协商单播使用的提议/答复模型中通过使用SDP的RTP来提议VC-1时,以下规则适用。关于提议/答复模型的一般主题,参阅例如Rosenberg,J.和H.Schulzrinne的“An Offer/Answer Model with Session DescriptionProtocol(SDP)”(具有会话描述协议(SDP)的提议/答复模型),RFC 3264,2002年6月。
·“profile”参数可被对称地使用,即答复者或者可维持该参数,或者如果不支持所提议的VC-1类时可完全移除媒体格式(净荷类型)。
·“level”参数指定了编解码器所支持的VC-1类的最高级。在一个示例性实现中,答复者不应在答复中指定比在提议中指定的级数值上更高的级。答复者可指定比在提议中指定的级低的级,即,level参数可被“降级”。
如果提议指定了sendrecv(发送接收)或sendonly(仅发送)方向属性,并且答复使level参数降级,则这可能要求新提议指定一更新的“config”参数。如果该“config”参数不能用于答复中指定的级,则提议者可发起另一提议/答复轮,或者不使用媒体格式(净荷类型)。
·参数“config”、“bipc”、“width”、“height”、“framerate”、“bitrate”、“buffer”和“mode”描述了提议者或答复者对该媒体格式配置正在发送的VC-1比特流的特性。在单播使用并且提议或答复中的方向属性是recvonly(仅接收)的情况下,这些参数的解释未被定义,并且不应使用它们。
·参数“config”、“width”、“height”、“bitrate”和“buffer”应在方向属性是sencrecv或sendonly时被指定。
·参数“max-width”、“max-height”、“max-framerate”、“max-bitrate”和“max-buffer”可在提议或答复中指定,并且其解释如下:
当方向属性是sendonly时,这些参数描述了发送者对给定类和级以及对同一类的任何较低级能够产生的VC-1比特流的限制。
当方向属性是recvonly或sendrecv时,这些参数描述了接收器实现的特性。如果一特性的值小于VC-1类的级所允许的值,则它可被解释为优选值,并且发送器的VC-1比特流不应超过它。如果一特性的值大于VC-1类的级所允许的值时,则它可被解释为接收器对给定的类和级以及对同一类的任何较低级接受的值的上限。
例如,如果recvonly或sendrecv提议指定了“profile=0;level=1;max-bitrate=48000”,则48kbps仅是建议的比特率,因为简单类、低级的所有接收器实现都被要求支持高达96kbps的比特率。假定该提议被接受,则答复者应在答复中指定“bitrate=48000”,但是允许最高达96000的任何值。但是如果提议指定了“max-bitrate=200000”,则这意味着接收器实现对给定类和级(或较低级)支持200kbps的最大值。在这一情况下,允许答复者用最高达200000的bitrate参数来答复。
·如果提议者希望在发送和接收之间具有非对称能力,例如在每一方向中使用不同的级,则提议者必须提议不同的RTP会话。这可通过指定分别被声明为“recvonly”和“sendonly”的不同媒体行来完成。
对于通过多播传送的流,以下附加规则适用:
·“level”参数指定了由多播会话中的参与者使用的VC-1类的最高级。在一个实现中,该参数的值不应被答复者改变。由此,净荷类型或者可被无更改地接受,或者可被移除。
·参数“config”、“bpic”、“width”、“height”、“framerate”、“bitrate”、“buffer”和“mode”指定了在多播会话上将被发送和/或接收的VC-1比特流的特性。即使方向属性是recvonly也可指定这些参数。在一个示例性实现中,这些参数的值不应被答复者改变。由此,净荷类型或者可被无更改地接受,或者可被移除。
·参数“max-width”、“max-height”、“max-framerate”、“max-bitrate”和“max-buffer”的值应被答复者对被声明为sencrecv或recvonly的所有流支持。否则,可执行以下动作之一:移除媒体格式,或拒绝会话。
C.3.4.声明性会话描述中的使用
当以声明性方式通过使用SDP的RTP来提议VC-1时,如在RTSP或SAP中那样,以下规则适用。关于RTSP,一般参阅Schulzrinne,H.、Rao,A.和R.Lanphier的“Real Time Streaming Protocol(RTSP)”(实时流传送协议(RTSP)),RFC 2326,1998年4月。关于SAP,一般参阅Handley,M.、Perkins,C.和E.Whelan的“Session Announcement Protocol”(会话通告协议),RFC 2974,2000年10月。
·参数“profile”和“level”仅指示已编码比特流的特性。它们不暗示对发送器所支持的能力的限制。
·应指定参数“config”、“width”、“height”、“bitrate”和“buffer”。
·在一个示例性实现中,不应使用参数“max-width”、“max-height”、“max-framerate”、“max-bitrate”和“max-buffer”。
采用SDP的媒体表示的一个示例如下(简单类,中级):
m=video 49170 RTP/AVP 98
a=rtpmap:98 vc1/90000
a=fmtp:98
profile=0;level=2;width=352;height=288;framerate=15000;
bitrate=384000;buffer=2000;config=4e291800
D.示例性过程
图7-9示出了解释图5所示的系统500的示例性操作方式的过程。为便于讨论,某些操作被描述为构成按特定次序执行的不同步骤。这一实现是示例性而非限制性的。此处所描述的某些步骤可被组合在一起并在单个操作中执行,而某些步骤可以按不同于本发明中所述的示例中所采用的次序的次序来执行。
D.1.综述
一开始,图7示出了提供图5所示的端到端处理的综述的过程700,它涉及媒体信息的编码、媒体信息的传输、以及所接收的媒体信息的解码。
在步骤702处,源模块502接收媒体信息。在一种情况下,该过程可包括接收采用原始格式或某一其它非VC-1格式的媒体信息,并随后将该信息转换成VC-1格式。在另一情况下,该过程可包括接收已被转换成VC-1格式的媒体信息。
在步骤704处,源模块502以符合上述RTP净荷格式的方式格式化媒体信息。即,步骤704产生包含以所需RTP净荷格式表达的VC-1信息的一系列RTP分组。以下讨论的图8提供了关于步骤704中执行的格式化的附加信息。或者,源模块502可接收已经被转换成所需的RTP净荷格式的VC-1媒体信息。
在步骤706处,源模块508通过通信机制504发送RTP分组。通信机制504可以包括任何种类的网络或网络组合。或者,通信机制504可以松散地表示任何种类的物理计算机可读介质的运输,等等。
在步骤708处,目标模块506接收RTP分组。
在步骤710处,目标模块506处理RTP分组。这可涉及使用图5中的接收模块512来执行RTP分组的初始处理,接着使用解码模块514来解码RTP分组中表达的媒体信息。步骤710的结果是已处理的媒体信息的任何种类的输出。以下讨论的图9提供了关于步骤710中执行的处理的附加信息。
D.2.编码
图8提供了关于用于将媒体信息结构化成用于VC-1的所需RTP净荷格式的过程800的附加细节。该过程800包括图7的步骤704和706作为其组成部分。
作为预备,在步骤802处,系统500(图5)可为通信会话初始化目标模块506。该操作可使用诸如SDP(会话描述协议)等任何种类的协议来执行。
初始化本身可涉及作出各种控制设置。如在前一节(C)中所讨论的,mode=1控制设置可用于指示在“config”参数中指定的序列层首部不改变。由于序列层首部在“mode=1”时从不改变,因此源模块502可将其从比特流中移除。
mode=3控制设置可用于指示“config”参数中指定的序列层首部和入口点首部从不改变。对于该模式,源模块502还可从访问单元中省略入口点首部。
步骤802还可包括例如用bpic参数来表示流是否包含B图像。该信息是有用的,因为它允许目标模块506以更有效的方式处理RTP分组。
还有其它初始化信息可在步骤802中传达。此外,源模块502可通过在通信会话中的各个接合点处经由序列层首部发送控制信息来覆盖各种初始化设置。
在步骤804处,源模块502将媒体信息的VC-1帧表达为RTP分组的RTP净荷中的一个或多个访问单元(AU)。图8示出该步骤804可导致至少两个不同的情形,被标为情形A和情形B。在情形A中,VC-1帧用单个AU来封装,其中该AU包括访问单元首部(HAU)和净荷(PLAU)。AU作为整体形成了RTP分组的净荷。RTP分组还包括RTP首部(HRTP)。在情形B中,向单个AU添加VC-1帧将导致RTP分组超过最大传输单元(MTU)大小。由此,在这一情形中,源模块502将VC-1帧分段成两个或多个相应的RTP分组中的两个或多个AU。还有其它情形也是可能的;情形A和B仅是代表性的。
在某些情况中,如在前一步骤802的上下文中所讨论的,源模块502可从AU中省略某些类型的信息,诸如序列层首部、入口点首部等等。在其它情况中,源模块502可能已经知道了将媒体信息发送给目标模块506的实际峰值传输速率。在这一情况下,源模块502可从序列层首部中移除除对应于实际峰值传输速率的参数集之外的所有漏桶参数集。
除了从RTP分组中移除不必要的信息之外,源模块502还可(或可替换地)将冗余信息引入到RTP分组中。例如,源模块502可通过在比特流中频繁地重复序列层首部来改善针对RTP分组丢失的稳健性。
在步骤806处,源模块502可定义将支配目标模块506对RTP分组的解释的各种控制设置。(在实际的实践中,步骤804和806可表示用于产生RTP分组的集成过程,而非两个不同的操作)。如由图8中的虚线箭头所指示的,源模块502可通过定义RTP分组的首部以及RTP净荷内的AU的各个首部中的各种值来进行设置。
实际控制设置可包括前一节中所述的控制信息中的任一个。这些设置的一个示例性(且不完整的)列表在以下以概要方式阐明:
·如果RTP分组包含含有完整VC-1帧或VC-1帧的最后一个片段的访问单元,则可设置标记位。
·可设置AU首部中的FRAG字段以指示该AU包含分段帧。
·AU首部中的RA计数字段可基于二进制模256计数器的值来设置。源模块502或其它发送实体可对每一随机访问点递增RA计数字段的值,并对每一相应的AU将该值插入到RA计数字段中。目标模块506可使用该计数信息例如通过检测它所接收的媒体信息中RA计数值的不连续性来检测媒体信息的丢失。
·AU首部中的“RA”字段可仅对包含随机访问点的那些AU设置。
·如果AU包含序列层首部并且如果该序列层首部不同于最近发送的序列层首部,则AU首部中的SL字段可被来回切换。
·AU首部中的PTS增量字段指定了帧的演示时间为与该RTP分组的RTP首部中的时戳的2的补码偏移量(增量)。
·AU首部中的DTS增量字段指定了帧的解码时间为演示时间和解码时间之间的2的补码偏移量(增量)。
首部可包括另外的控制信息,如在前一节中更完整陈述的。
步骤706涉及发送在步骤704中创建的RTP分组,此处重复上述过程。过程800的净效应是传输了根据所需的VC-1 RTP净荷格式配置的RTP分组流。
图9提供了关于用于处理所接收到的RTP信息的过程900的附加细节。该过程900包括图7的步骤704和706作为其组成部分。
在步骤708处,目标模块506经由通信机制504或某一其它信息管道接收一个或多个RTP分组。
在步骤710处,目标模块506处理该RTP分组以输出到一个或多个输出设备。
在作为步骤710的一部分的步骤902处,目标模块506缓冲该RTP分组,并对所接收的RTP分组执行各种预处理操作。根据一个示例性操作,目标模块506可确定所接收到的信息(由RTP分组提供)是否包括任何遗漏,例如由于分组丢失而引起。例如,目标模块506可使用RA计数字段来确定提供随机访问点的信息是否丢失。目标模块506可使用SL字段来确定提供新(即,不同)序列层首部的信息是否丢失。
根据另一实行操作,目标模块506可重新插入被源模块502故意移除的信息,诸如入口点首部。更具体而言,如果表示了“mode=3”并且接收模块512接收到完整的AU或AU的第一个片段,并且RA位被设为1但是AU不以入口点首部开始,则这表明入口点首部被源模块502“压缩”。在这一情况下,接收模块512可在AU的开头插入一入口点首部。当插入该入口点首部时,接收模块512可使用由MIME“config”参数指定的首部。
在步骤902处可对接收到的媒体信息执行其它类型的预备操作。
最后,步骤904需要解码在步骤902中处理的媒体信息。
过程900中的上述过程在一循环中重复,使得新的媒体信息被连续添加到缓冲区,并且所接收到的媒体信息被连续从缓冲区中拉出以供处理。
E.示例性计算机环境
图10提供了关于可用于实现前述各节中所描述的处理功能中的任一个,诸如图5所示的模块中的任一个(如源模块502和/或目标模块506,或这些模块(502、506)的组合)的计算机环境1000的信息。然而,如上所述,存在源模块502和目标模块506的许多其它实现。
计算环境1000包括通用或服务器类型的计算机1002和显示设备1004。然而,计算环境1000可包括其它种类的计算设备。例如,尽管未示出,但计算机环境1000可包括手持式或膝上型设备、机顶盒、游戏控制台、大型计算机等等。此外,图10示出了计算机环境1000的元件被组合在一起以便于讨论。然而,计算环境1000可采用分布式处理配置。在分布式计算环境中,计算资源可物理地分散在整个环境中。
示例性计算机1002包括一个或多个处理器或处理单元1006、系统存储器1008和总线1010。总线1010将各种系统组件连接在一起。例如,总线1010将处理器1006连接到系统存储器1008。总线1010可使用任何种类的总线结构或总线结构的组合来实现,包括存储器总线或存储器控制器、外围总线、加速图形端口、以及使用各种总线体系结构中的任一种的处理器或局部总线。
计算机1002还可包括各种计算机可读介质,包括各种类型的易失性和非易失性介质,其每一个都可以是可移动或不可移动的。例如,系统总线1008包括诸如随机存取存储器(RAM)1012等易失性存储器、以及诸如只读存储器(ROM)1014等非易失性存储器形式的计算机可读介质。ROM 1014包括输入/输出系统(BIOS)1016,它包含诸如在启动期间有助于在计算机1002内的元件之间传输信息的基本例程。RAM 1012通常包含可被处理单元1006快速访问的形式的数据和/或程序模块。
其它种类的计算机存储介质包括用于从不可移动、非易失性磁介质中读取并向其写入的硬盘驱动器1018,用于从可移动、非易失性磁盘1022(例如,“软盘”)中读取并向其写入的磁盘驱动器1020,以及用于从诸如CD-ROM、DVD-ROM或其它光学介质等可移动、非易失性光盘1026中读取并向其写入的光盘驱动器1024。硬盘驱动器1018、磁盘驱动器1020和光盘驱动器1024各自通过一个或多个数据介质接口1028连接到系统总线1010。或者,硬盘驱动器1018、磁盘驱动器1020和光盘驱动器1024可以通过SCSI接口(未示出)或其它耦合机制连接到系统总线1010。尽管未示出,但是计算机1002可包括其它类型的计算机可读介质,诸如磁带盒或其它磁存储设备、闪存卡、CD-ROM、数字多功能盘(DVD)或其它光学存储、电可擦除可编程只读存储器(EEPROM)等。
一般而言,上述计算机可读介质提供了计算机1002所使用的计算机可读指令、数据结构、程序模块和其它数据的非易失性存储。例如,可读介质可储存操作系统1030、应用专用功能1032、其它程序模块1034和程序数据1036。
计算机环境1000可包括各种输入设备。例如,计算机环境1000包括用于将命令和信息输入到计算机1002中的键盘1038和定点设备1040(例如,“鼠标”)。计算机环境1000可包括其它输入设备(未示出),诸如话筒、操纵杆、游戏手柄、圆盘式卫星天线、串行端口、扫描仪、读卡设备、数字或视频摄像机等等。输入/输出接口1042将输入设备耦合到处理单元1006。更一般地,输入设备可通过任何种类的接口和总线结构,诸如并行端口、串行端口、游戏端口、通用串行总线(USB)端口等耦合到计算机1002。
计算机环境1000还包括显示设备1004。视频适配器1044将显示设备1004耦合到总线1010。除了显示设备1004之外,计算机环境1000可包括其它输出外围设备,诸如扬声器(未示出)、打印机(未示出)等。
计算机1002使用到一个或多个远程计算机,诸如远程计算设备1046的逻辑连接在联网环境中操作。例如,计算机1002可表示图5的源模块502,而远程计算设备1046可表示图5的目标模块506,或相反。远程计算设备1046可包括任何种类的计算机设备,包括通用个人计算机、便携式计算机、服务器等。远程计算设备1046可包括以上相对于计算机1002所讨论的全部特征或其某一子集。
任何类型的网络1048可用于将计算机1002与远程计算设备1046耦合,诸如图4的WAN 402、LAN等等。计算机1002经由网络接口1050(例如,图4所示的接口416)耦合到网络1048,该接口可利用宽带连接、调制解调器连接、DSL连接或其它连接策略。尽管未示出,但计算环境1000可提供用于将计算机1002与远程计算设备1046连接(例如,经由已调制无线电信号、已调制红外信号等)的无线通信功能。
尽管以对结构特征和/或方法动作专用的语言描述了本发明,但是可以理解,所附权利要求书中定义的本发明不必限于所描述的具体特征或动作。相反,这些具体特征和动作是作为实现所要求保护的本发明的示例性形式而公开的。
Claims (17)
1.一种用于在RTP分组(602)中封装视频编解码器1VC-1信息的方法,包括:
将所述VC-1信息排列成至少一个访问单元(608),所述访问单元共同形成RTP净荷(606);以及
将一RTP首部(604)追加到所述RTP净荷(606)以形成所述RTP分组(602),所述VC-1信息根据与最大传输单元(MTU)大小相比较的RTP分组大小排列以至少避免IP级分段,
其中,VC-1信息的帧响应于RTP分组的大小大于MTU大小而在多个访问单元上被分段,
如果RTP分组包含具有帧的最后一个片段的访问单元,则RTP分组中不包括另外的访问单元。
2.如权利要求1所述的方法,其特征在于,响应于RTP分组的大小不大于MTU大小,访问单元包含完整的VC-1信息帧。
3.如权利要求1所述的方法,其特征在于,还包括在访问单元的首部中设置指示所述访问单元包括帧的片段的控制信息。
4.如权利要求1所述的方法,其特征在于,还包括在接收所述多个访问单元之后,在解码所述VC-1信息之前从所述多个访问单元重新组装所述VC-1信息帧。
5.如权利要求1所述的方法,其特征在于,还包括在接收所述多个访问单元之后,将所述VC-1信息帧的片段重新组装成至少一个封装的比特流数据单元(EBDU)。
6.如权利要求1所述的方法,其特征在于,还包括提供指示所述VC-1信息不包含需要重排的图像的控制信息。
7.如权利要求1所述的方法,其特征在于,还包括递增访问单元的首部中的计数器以检测随机访问点的出现。
8.如权利要求1所述的方法,其特征在于,还包括在访问单元的首部中设置指示所述访问单元包含随机访问点的控制信息。
9.如权利要求1所述的方法,其特征在于,还包括:
确定实际峰值传输速率;以及
减少在访问单元中表达的参数的个数以移除不涉及所述实际峰值传输速率的多余参数信息。
10.如权利要求1所述的方法,其特征在于,还包括在由RTP分组序列定义的比特流内冗余地重复序列层首部以形成对信息丢失有更强复原力的比特流。
11.如权利要求1所述的方法,其特征在于,还包括在访问单元的首部中包括指示已发送了不同于直接前一序列层首部的序列层首部的控制信息。
12.如权利要求1所述的方法,其特征在于,还包括提供指示序列层首部在由RTP分组序列定义的比特流内不变化的控制信息。
13.如权利要求12所述的方法,其特征在于,还包括从所述比特流省略所述不变化的序列层首部。
14.如权利要求1所述的方法,其特征在于,还包括提供指示入口点首部在由RTP分组序列定义的比特流内不变化的控制信息。
15.如权利要求14所述的方法,其特征在于,还包括:
从所述比特流中省略所述不变化的入口点首部;以及
在解码所述比特流之前将所述入口点首部重新插入到所述比特流中。
16.如权利要求1所述的方法,其特征在于,RTP分组由解码器模块解释。
17.一种被配置成在RTP分组(602)中封装视频编解码器1VC-1信息的源模块(502),包括:
用于将所述VC-1信息排列成至少一个访问单元(608)的装置,所述访问单元共同形成RTP净荷(606);以及
用于将一RTP首部(604)追加到所述RTP净荷(606)上以形成所述RTP分组(602)的装置,所述VC-1信息根据与最大传输单元(MTU)大小相比较的RTP分组大小排列以至少避免IP级分段,
其中,VC-1信息的帧响应于RTP分组的大小大于MTU大小而在多个访问单元上被分段,
如果RTP分组包含具有帧的最后一个片段的访问单元,则RTP分组中不包括另外的访问单元。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US72640705P | 2005-10-13 | 2005-10-13 | |
US60/726,407 | 2005-10-13 | ||
US11/275,426 | 2005-12-30 | ||
US11/275,426 US7720096B2 (en) | 2005-10-13 | 2005-12-30 | RTP payload format for VC-1 |
PCT/US2006/039129 WO2007047158A1 (en) | 2005-10-13 | 2006-10-03 | Rtp payload format for vc-1 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101283566A CN101283566A (zh) | 2008-10-08 |
CN101283566B true CN101283566B (zh) | 2013-01-02 |
Family
ID=37948109
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006800378057A Active CN101283566B (zh) | 2005-10-13 | 2006-10-03 | 用于vc-1的rtp净荷格式 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7720096B2 (zh) |
KR (1) | KR101292490B1 (zh) |
CN (1) | CN101283566B (zh) |
WO (1) | WO2007047158A1 (zh) |
Families Citing this family (119)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7068729B2 (en) | 2001-12-21 | 2006-06-27 | Digital Fountain, Inc. | Multi-stage code generator and decoder for communication systems |
US6307487B1 (en) | 1998-09-23 | 2001-10-23 | Digital Fountain, Inc. | Information additive code generator and decoder for communication systems |
US9240810B2 (en) | 2002-06-11 | 2016-01-19 | Digital Fountain, Inc. | Systems and processes for decoding chain reaction codes through inactivation |
KR101143282B1 (ko) * | 2002-10-05 | 2012-05-08 | 디지털 파운튼, 인크. | 연쇄 반응 코드의 체계적 인코딩 및 디코딩 |
JP2006518948A (ja) * | 2003-02-13 | 2006-08-17 | ノキア コーポレイション | マルチメディア・ストリーミングにおけるストリーミング品質適合と制御機構のシグナリング方法 |
US8234395B2 (en) | 2003-07-28 | 2012-07-31 | Sonos, Inc. | System and method for synchronizing operations among a plurality of independently clocked digital data processing devices |
US11106424B2 (en) | 2003-07-28 | 2021-08-31 | Sonos, Inc. | Synchronizing operations among a plurality of independently clocked digital data processing devices |
US9207905B2 (en) | 2003-07-28 | 2015-12-08 | Sonos, Inc. | Method and apparatus for providing synchrony group status information |
US8086752B2 (en) * | 2006-11-22 | 2011-12-27 | Sonos, Inc. | Systems and methods for synchronizing operations among a plurality of independently clocked digital data processing devices that independently source digital data |
US11650784B2 (en) | 2003-07-28 | 2023-05-16 | Sonos, Inc. | Adjusting volume levels |
US8290603B1 (en) | 2004-06-05 | 2012-10-16 | Sonos, Inc. | User interfaces for controlling and manipulating groupings in a multi-zone media system |
US11106425B2 (en) | 2003-07-28 | 2021-08-31 | Sonos, Inc. | Synchronizing operations among a plurality of independently clocked digital data processing devices |
US11294618B2 (en) | 2003-07-28 | 2022-04-05 | Sonos, Inc. | Media player system |
WO2005036753A2 (en) * | 2003-10-06 | 2005-04-21 | Digital Fountain, Inc. | Error-correcting multi-stage code generator and decoder for communication systems having single transmitters or multiple transmitters |
US9374607B2 (en) | 2012-06-26 | 2016-06-21 | Sonos, Inc. | Media playback system with guest access |
US9977561B2 (en) | 2004-04-01 | 2018-05-22 | Sonos, Inc. | Systems, methods, apparatus, and articles of manufacture to provide guest access |
EP2202888A1 (en) | 2004-05-07 | 2010-06-30 | Digital Fountain, Inc. | File download and streaming system |
US8868698B2 (en) | 2004-06-05 | 2014-10-21 | Sonos, Inc. | Establishing a secure wireless network with minimum human intervention |
US8326951B1 (en) | 2004-06-05 | 2012-12-04 | Sonos, Inc. | Establishing a secure wireless network with minimum human intervention |
US7721184B2 (en) * | 2004-08-11 | 2010-05-18 | Digital Fountain, Inc. | Method and apparatus for fast encoding of data symbols according to half-weight codes |
KR100605609B1 (ko) * | 2004-12-09 | 2006-07-31 | 한국전자통신연구원 | 기가비트 이더넷 스위칭 장치 |
US7684566B2 (en) | 2005-05-27 | 2010-03-23 | Microsoft Corporation | Encryption scheme for streamed multimedia content protected by rights management system |
US8321690B2 (en) | 2005-08-11 | 2012-11-27 | Microsoft Corporation | Protecting digital media of various content types |
EP1985021A4 (en) * | 2006-02-13 | 2013-05-29 | Digital Fountain Inc | CONTINUOUS TRANSMISSION AND BUFFER DELIVERY USING CONTINUOUS MONITORING OVERVIEW AND PERIODS OF PROTECTION |
US9270414B2 (en) | 2006-02-21 | 2016-02-23 | Digital Fountain, Inc. | Multiple-field based code generator and decoder for communications systems |
US20090232469A1 (en) * | 2006-05-03 | 2009-09-17 | Clinton Priddle | Method and apparatus for re-constructing media from a media representation |
WO2007134196A2 (en) | 2006-05-10 | 2007-11-22 | Digital Fountain, Inc. | Code generator and decoder using hybrid codes |
US20080045149A1 (en) * | 2006-05-26 | 2008-02-21 | Dinesh Dharmaraju | Wireless architecture for a traditional wire-based protocol |
US9198084B2 (en) | 2006-05-26 | 2015-11-24 | Qualcomm Incorporated | Wireless architecture for a traditional wire-based protocol |
US9386064B2 (en) | 2006-06-09 | 2016-07-05 | Qualcomm Incorporated | Enhanced block-request streaming using URL templates and construction rules |
US9419749B2 (en) | 2009-08-19 | 2016-08-16 | Qualcomm Incorporated | Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes |
US9380096B2 (en) | 2006-06-09 | 2016-06-28 | Qualcomm Incorporated | Enhanced block-request streaming system for handling low-latency streaming |
US9432433B2 (en) | 2006-06-09 | 2016-08-30 | Qualcomm Incorporated | Enhanced block-request streaming system using signaling or block creation |
US9178535B2 (en) | 2006-06-09 | 2015-11-03 | Digital Fountain, Inc. | Dynamic stream interleaving and sub-stream based delivery |
US9209934B2 (en) | 2006-06-09 | 2015-12-08 | Qualcomm Incorporated | Enhanced block-request streaming using cooperative parallel HTTP and forward error correction |
US8060651B2 (en) * | 2006-08-17 | 2011-11-15 | Sharp Laboratories Of America, Inc. | Systems and methods for adaptively packetizing data partitions for transport over a network |
US9202509B2 (en) | 2006-09-12 | 2015-12-01 | Sonos, Inc. | Controlling and grouping in a multi-zone media system |
US8788080B1 (en) | 2006-09-12 | 2014-07-22 | Sonos, Inc. | Multi-channel pairing in a media system |
US8483853B1 (en) | 2006-09-12 | 2013-07-09 | Sonos, Inc. | Controlling and manipulating groupings in a multi-zone media system |
FR2909241B1 (fr) * | 2006-11-27 | 2009-06-05 | Canon Kk | Procedes et dispositifs de gestion dynamique des erreurs de transmission par des points d'interconnexion de reseaux. |
US9826243B2 (en) | 2007-04-12 | 2017-11-21 | Thomson Licensing | Methods and apparatus for video usability information (VUI) for scalable video coding (SVC) |
US9503777B2 (en) * | 2007-06-05 | 2016-11-22 | Broadcom Corporation | Method and system for unified start code emulation prevention bits processing for AVS |
US8667144B2 (en) * | 2007-07-25 | 2014-03-04 | Qualcomm Incorporated | Wireless architecture for traditional wire based protocol |
MX2010002829A (es) | 2007-09-12 | 2010-04-01 | Digital Fountain Inc | Generacion y comunicacion de informacion para identificacion de fuentes para permitir comunicaciones seguras. |
US8811294B2 (en) * | 2008-04-04 | 2014-08-19 | Qualcomm Incorporated | Apparatus and methods for establishing client-host associations within a wireless network |
US9398089B2 (en) * | 2008-12-11 | 2016-07-19 | Qualcomm Incorporated | Dynamic resource sharing among multiple wireless devices |
BRPI0924138A2 (pt) * | 2009-01-26 | 2016-02-10 | Thomson Licensing | método, aparelho e sistema para melhorar a sintonia em receptores |
US9281847B2 (en) | 2009-02-27 | 2016-03-08 | Qualcomm Incorporated | Mobile reception of digital video broadcasting—terrestrial services |
US9264248B2 (en) * | 2009-07-02 | 2016-02-16 | Qualcomm Incorporated | System and method for avoiding and resolving conflicts in a wireless mobile display digital interface multicast environment |
US9288010B2 (en) | 2009-08-19 | 2016-03-15 | Qualcomm Incorporated | Universal file delivery methods for providing unequal error protection and bundled file delivery services |
US9917874B2 (en) | 2009-09-22 | 2018-03-13 | Qualcomm Incorporated | Enhanced block-request streaming using block partitioning or request controls for improved client-side handling |
US9582238B2 (en) | 2009-12-14 | 2017-02-28 | Qualcomm Incorporated | Decomposed multi-stream (DMS) techniques for video display systems |
KR20110090596A (ko) * | 2010-02-04 | 2011-08-10 | 삼성전자주식회사 | 지터 보정 방법 및 장치 |
US8638818B2 (en) * | 2010-04-20 | 2014-01-28 | Samsung Electronics Co., Ltd | Interface apparatus and method for transmitting and receiving media data |
US9049497B2 (en) | 2010-06-29 | 2015-06-02 | Qualcomm Incorporated | Signaling random access points for streaming video data |
US8918533B2 (en) | 2010-07-13 | 2014-12-23 | Qualcomm Incorporated | Video switching for streaming video data |
US9185439B2 (en) * | 2010-07-15 | 2015-11-10 | Qualcomm Incorporated | Signaling data for multiplexing video components |
US9596447B2 (en) | 2010-07-21 | 2017-03-14 | Qualcomm Incorporated | Providing frame packing type information for video coding |
US8806050B2 (en) | 2010-08-10 | 2014-08-12 | Qualcomm Incorporated | Manifest file updates for network streaming of coded multimedia data |
CN101945266B (zh) * | 2010-08-20 | 2012-06-27 | 山东神戎电子股份有限公司 | 一种无线网络视频流传输自适应方法 |
CN103181117B (zh) * | 2010-09-02 | 2017-02-15 | 瑞典爱立信有限公司 | 在通信网络中传送业务的方法和通信网络设备 |
US20120124561A1 (en) * | 2010-11-17 | 2012-05-17 | Sap Ag | Obtaining Notes for Software Objects |
KR20120084237A (ko) * | 2011-01-19 | 2012-07-27 | 삼성전자주식회사 | 엠엠티(mmt)에서 엠엠티 인캡슐레이터를 전송하는 방법 |
PL3522541T3 (pl) * | 2011-01-19 | 2021-08-30 | Samsung Electronics Co., Ltd. | Urządzenie i sposób odbierania komunikatu sterowania w systemie rozgłoszeniowym |
US20130013318A1 (en) | 2011-01-21 | 2013-01-10 | Qualcomm Incorporated | User input back channel for wireless displays |
US8964783B2 (en) | 2011-01-21 | 2015-02-24 | Qualcomm Incorporated | User input back channel for wireless displays |
US10135900B2 (en) | 2011-01-21 | 2018-11-20 | Qualcomm Incorporated | User input back channel for wireless displays |
US9787725B2 (en) | 2011-01-21 | 2017-10-10 | Qualcomm Incorporated | User input back channel for wireless displays |
US9065876B2 (en) | 2011-01-21 | 2015-06-23 | Qualcomm Incorporated | User input back channel from a wireless sink device to a wireless source device for multi-touch gesture wireless displays |
US9413803B2 (en) | 2011-01-21 | 2016-08-09 | Qualcomm Incorporated | User input back channel for wireless displays |
US11429343B2 (en) | 2011-01-25 | 2022-08-30 | Sonos, Inc. | Stereo playback configuration and control |
US11265652B2 (en) | 2011-01-25 | 2022-03-01 | Sonos, Inc. | Playback device pairing |
US8674957B2 (en) | 2011-02-04 | 2014-03-18 | Qualcomm Incorporated | User input device for wireless back channel |
US10108386B2 (en) | 2011-02-04 | 2018-10-23 | Qualcomm Incorporated | Content provisioning for wireless back channel |
US9503771B2 (en) | 2011-02-04 | 2016-11-22 | Qualcomm Incorporated | Low latency wireless display for graphics |
US9270299B2 (en) | 2011-02-11 | 2016-02-23 | Qualcomm Incorporated | Encoding and decoding using elastic codes with flexible source block mapping |
US8958375B2 (en) | 2011-02-11 | 2015-02-17 | Qualcomm Incorporated | Framing for an improved radio link protocol including FEC |
KR20120138319A (ko) * | 2011-06-14 | 2012-12-26 | 삼성전자주식회사 | 멀티미디어 데이터 특징 정보를 이용하여 멀티미디어 서비스 데이터 패킷을 송신하는 방법 및 장치 |
KR20120138604A (ko) | 2011-06-14 | 2012-12-26 | 삼성전자주식회사 | 멀티미디어 시스템에서 복합 미디어 컨텐츠를 송수신하는 방법 및 장치 |
US10412417B2 (en) * | 2011-07-07 | 2019-09-10 | Sony Corporation | Image processing device and method capable of performing an encoding process or a decoding process on an image at high speed |
US9253233B2 (en) | 2011-08-31 | 2016-02-02 | Qualcomm Incorporated | Switch signaling methods providing improved switching between representations for adaptive HTTP streaming |
US9843844B2 (en) | 2011-10-05 | 2017-12-12 | Qualcomm Incorporated | Network streaming of media data |
KR20130040090A (ko) * | 2011-10-13 | 2013-04-23 | 삼성전자주식회사 | 복합 네트워크에서 멀티미디어 데이터를 전송하기 위한 장치 및 그 방법 |
CN107659418B (zh) | 2011-10-13 | 2020-09-11 | 三星电子株式会社 | 从内容提供装置接收与内容包消费有关的信令信息的方法 |
US9525998B2 (en) | 2012-01-06 | 2016-12-20 | Qualcomm Incorporated | Wireless display with multiscreen service |
US9294226B2 (en) | 2012-03-26 | 2016-03-22 | Qualcomm Incorporated | Universal object delivery and template-based file delivery |
US9729115B2 (en) | 2012-04-27 | 2017-08-08 | Sonos, Inc. | Intelligently increasing the sound level of player |
US8831001B2 (en) * | 2012-06-24 | 2014-09-09 | Audiocodes Ltd. | Device, system, and method of voice-over-IP communication |
US9008330B2 (en) | 2012-09-28 | 2015-04-14 | Sonos, Inc. | Crossover frequency adjustments for audio speakers |
US9510055B2 (en) | 2013-01-23 | 2016-11-29 | Sonos, Inc. | System and method for a media experience social interface |
US9521438B2 (en) * | 2013-03-29 | 2016-12-13 | Microsoft Technology Licensing, Llc | Custom data indicating nominal range of samples of media content |
US9288596B2 (en) | 2013-09-30 | 2016-03-15 | Sonos, Inc. | Coordinator device for paired or consolidated players |
US9654545B2 (en) | 2013-09-30 | 2017-05-16 | Sonos, Inc. | Group coordinator device selection |
US9720576B2 (en) | 2013-09-30 | 2017-08-01 | Sonos, Inc. | Controlling and displaying zones in a multi-zone system |
US20150095679A1 (en) | 2013-09-30 | 2015-04-02 | Sonos, Inc. | Transitioning A Networked Playback Device Between Operating Modes |
WO2015093011A1 (ja) | 2013-12-16 | 2015-06-25 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 送信方法、受信方法、送信装置及び受信装置 |
JP6652320B2 (ja) * | 2013-12-16 | 2020-02-19 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 送信方法、受信方法、送信装置及び受信装置 |
US9300647B2 (en) | 2014-01-15 | 2016-03-29 | Sonos, Inc. | Software application and zones |
US9549196B2 (en) * | 2014-02-04 | 2017-01-17 | Microsoft Technology Licensing, Llc | Data unit identification for compressed video streams |
US20150220498A1 (en) | 2014-02-05 | 2015-08-06 | Sonos, Inc. | Remote Creation of a Playback Queue for a Future Event |
US9226073B2 (en) | 2014-02-06 | 2015-12-29 | Sonos, Inc. | Audio output balancing during synchronized playback |
US9226087B2 (en) | 2014-02-06 | 2015-12-29 | Sonos, Inc. | Audio output balancing during synchronized playback |
US9679054B2 (en) | 2014-03-05 | 2017-06-13 | Sonos, Inc. | Webpage media playback |
US10587693B2 (en) | 2014-04-01 | 2020-03-10 | Sonos, Inc. | Mirrored queues |
US20150324552A1 (en) | 2014-05-12 | 2015-11-12 | Sonos, Inc. | Share Restriction for Media Items |
US20150356084A1 (en) | 2014-06-05 | 2015-12-10 | Sonos, Inc. | Social Queue |
US9874997B2 (en) | 2014-08-08 | 2018-01-23 | Sonos, Inc. | Social playback queues |
US9860286B2 (en) | 2014-09-24 | 2018-01-02 | Sonos, Inc. | Associating a captured image with a media item |
US9723038B2 (en) | 2014-09-24 | 2017-08-01 | Sonos, Inc. | Social media connection recommendations based on playback information |
US9959087B2 (en) | 2014-09-24 | 2018-05-01 | Sonos, Inc. | Media item context from social media |
US9690540B2 (en) | 2014-09-24 | 2017-06-27 | Sonos, Inc. | Social media queue |
US9667679B2 (en) | 2014-09-24 | 2017-05-30 | Sonos, Inc. | Indicating an association between a social-media account and a media playback system |
US10645130B2 (en) | 2014-09-24 | 2020-05-05 | Sonos, Inc. | Playback updates |
EP3114625A1 (en) | 2014-09-24 | 2017-01-11 | Sonos, Inc. | Social media connection recommendations based on playback information |
US10248376B2 (en) | 2015-06-11 | 2019-04-02 | Sonos, Inc. | Multiple groupings in a playback system |
US10303422B1 (en) | 2016-01-05 | 2019-05-28 | Sonos, Inc. | Multiple-device setup |
US9886234B2 (en) | 2016-01-28 | 2018-02-06 | Sonos, Inc. | Systems and methods of distributing audio to one or more playback devices |
US10712997B2 (en) | 2016-10-17 | 2020-07-14 | Sonos, Inc. | Room association based on name |
KR101983045B1 (ko) * | 2019-02-25 | 2019-09-03 | 삼성전자주식회사 | 복합 네트워크에서 멀티미디어 데이터를 전송하기 위한 장치 및 그 방법 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6278478B1 (en) * | 1999-03-18 | 2001-08-21 | Microsoft Corporation | End-to-end network encoding architecture |
CN1578311A (zh) * | 2003-07-03 | 2005-02-09 | 微软公司 | Rtp有效负荷格式 |
US6856997B2 (en) * | 2000-10-27 | 2005-02-15 | Lg Electronics Inc. | Apparatus and method for providing file structure for multimedia streaming service |
CN1642221A (zh) * | 2004-01-15 | 2005-07-20 | 松下电器产业株式会社 | 复用方式转换装置 |
Family Cites Families (74)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5224166A (en) | 1992-08-11 | 1993-06-29 | International Business Machines Corporation | System for seamless processing of encrypted and non-encrypted data and instructions |
BR9506289A (pt) | 1994-07-28 | 1997-08-12 | Philips Electronics Nv | Processo e sistema de transmissão e recepção de mensagem de dados processo e sistema de comunicação e estação primária e secundária para uso no sistema de comunicação |
US6473903B2 (en) | 1996-12-30 | 2002-10-29 | Koninklijke Philips Electronics N.V. | Method and system for implementing interactive broadcast programs and commercials |
US6205140B1 (en) | 1997-12-01 | 2001-03-20 | Intel Corporation | Communication of dynamic dependencies along media streams |
US6134243A (en) | 1998-01-15 | 2000-10-17 | Apple Computer, Inc. | Method and apparatus for media data transmission |
EP1106008A1 (en) | 1998-08-20 | 2001-06-13 | Nokia Corporation | Method and apparatus for providing user multiplexing in a real-time protocol |
EP1035735A3 (en) | 1999-03-12 | 2007-09-05 | Kabushiki Kaisha Toshiba | Moving image coding and decoding apparatus optimised for the application of the Real Time Protocol (RTP) |
US7174452B2 (en) | 2001-01-24 | 2007-02-06 | Broadcom Corporation | Method for processing multiple security policies applied to a data packet structure |
US6944296B1 (en) | 1999-03-24 | 2005-09-13 | Intel Corporation | Video bit scrambling |
JP3816689B2 (ja) | 1999-03-31 | 2006-08-30 | 株式会社東芝 | 情報配信装置、情報受信装置及び通信方法 |
US6918034B1 (en) | 1999-09-29 | 2005-07-12 | Nokia, Corporation | Method and apparatus to provide encryption and authentication of a mini-packet in a multiplexed RTP payload |
RU2159507C1 (ru) | 1999-10-29 | 2000-11-20 | Аликов Сергей Владимирович | Узел кодирования и/или декодирования информации, система передачи информации с уплотнением каналов, система передачи информации в телекоммуникационной сети |
US6654389B1 (en) | 1999-11-23 | 2003-11-25 | International Business Machines Corporation | System and method for searching patterns in real-time over a shared media |
CN1182479C (zh) | 2000-01-07 | 2004-12-29 | 国际商业机器公司 | 有效地收集、整理和访问证书吊销表的系统和方法 |
US7159235B2 (en) * | 2000-01-28 | 2007-01-02 | Sedna Patent Services, Llc | Method and apparatus for content distribution via non-homogeneous access networks |
US7257641B1 (en) * | 2000-03-30 | 2007-08-14 | Microsoft Corporation | Multipoint processing unit |
AU6985601A (en) | 2000-06-16 | 2002-01-02 | Mindport Usa | Methods and systems to distribute content via a network utilizing distributed conditional access agents and secure agents, and to perform digital rights management (drm) |
US20060130104A1 (en) * | 2000-06-28 | 2006-06-15 | Madhukar Budagavi | Network video method |
US6965646B1 (en) * | 2000-06-28 | 2005-11-15 | Cisco Technology, Inc. | MPEG file format optimization for streaming |
WO2002003604A2 (en) | 2000-06-29 | 2002-01-10 | Cachestream Corporation | Digital rights management |
JP2002044135A (ja) | 2000-07-25 | 2002-02-08 | Mitsubishi Electric Corp | 暗号装置及び暗号通信システム |
US6523162B1 (en) * | 2000-08-02 | 2003-02-18 | Numerical Technologies, Inc. | General purpose shape-based layout processing scheme for IC layout modifications |
US7689510B2 (en) | 2000-09-07 | 2010-03-30 | Sonic Solutions | Methods and system for use in network management of content |
DE10054940B4 (de) * | 2000-11-06 | 2005-06-02 | Siemens Ag | Verfahren zum Übertragen von Faxdaten über ein Paketübertragungsnetz, zugehörige Einheiten und zugehöriges Programm |
JP2004516748A (ja) | 2000-12-18 | 2004-06-03 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | Rtpヘッダにおける暗号化されたデータに対するポインタ |
US20060167985A1 (en) | 2001-04-26 | 2006-07-27 | Albanese Michael J | Network-distributed data routing |
US20030041257A1 (en) | 2001-05-04 | 2003-02-27 | Wee Susie J. | Systems, methods and storage devices for scalable data streaming |
US6983049B2 (en) | 2001-05-04 | 2006-01-03 | Hewlett-Packard Development Company, Lp. | Storage devices for secure scalable data streaming |
US7145919B2 (en) | 2001-06-01 | 2006-12-05 | Telefonaktienbolaget Lm Ericsson (Publ) | Method and apparatus for transporting different classes of data bits in a payload over a radio interface |
US6745364B2 (en) | 2001-06-28 | 2004-06-01 | Microsoft Corporation | Negotiated/dynamic error correction for streamed media |
US7362707B2 (en) * | 2001-07-23 | 2008-04-22 | Acme Packet, Inc. | System and method for determining flow quality statistics for real-time transport protocol data flows |
US7260215B2 (en) | 2001-09-04 | 2007-08-21 | Portauthority Technologies Inc. | Method for encryption in an un-trusted environment |
FI20011871A (fi) | 2001-09-24 | 2003-03-25 | Nokia Corp | Multimediadatan prosessointi |
JP3719180B2 (ja) | 2001-09-27 | 2005-11-24 | ソニー株式会社 | 通信方法、通信システム及び出力機器 |
US7243366B2 (en) | 2001-11-15 | 2007-07-10 | General Instrument Corporation | Key management protocol and authentication system for secure internet protocol rights management architecture |
JP2003169090A (ja) * | 2001-11-30 | 2003-06-13 | Fujitsu Ltd | 伝送システム |
JP4472989B2 (ja) | 2001-12-11 | 2010-06-02 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | ストリーミング・メディア用の使用権管理方法 |
US7242773B2 (en) | 2002-09-09 | 2007-07-10 | Sony Corporation | Multiple partial encryption using retuning |
US7233587B2 (en) * | 2002-02-01 | 2007-06-19 | Harris Corporation | Method and system for encapsulating time division multiplex data into individual packets of a packet based network |
US7080043B2 (en) | 2002-03-26 | 2006-07-18 | Microsoft Corporation | Content revocation and license modification in a digital rights management (DRM) system on a computing device |
JP2005521934A (ja) | 2002-03-28 | 2005-07-21 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | コンテンツ素材の失効 |
US7379732B2 (en) | 2002-09-24 | 2008-05-27 | Research In Motion Limited | System and method of wireless instant messaging |
KR20050061395A (ko) | 2002-09-30 | 2005-06-22 | 마쯔시다덴기산교 가부시키가이샤 | 컨텐츠 이용 장치 |
JP3821086B2 (ja) * | 2002-11-01 | 2006-09-13 | ソニー株式会社 | ストリーミングシステム及びストリーミング方法、クライアント端末及びデータ復号方法、並びにプログラム |
GB0230301D0 (en) | 2002-12-30 | 2003-02-05 | Nokia Corp | Streaming media |
US7536418B2 (en) | 2003-01-10 | 2009-05-19 | At&T Intellectual Property Ii, Lp | Preload library for transparent file transformation |
US7383586B2 (en) | 2003-01-17 | 2008-06-03 | Microsoft Corporation | File system operation and digital rights management (DRM) |
US7136945B2 (en) | 2003-03-31 | 2006-11-14 | Sony Corporation | Method and apparatus for extending protected content access with peer to peer applications |
US7346160B2 (en) | 2003-04-23 | 2008-03-18 | Michaelsen David L | Randomization-based encryption apparatus and method |
KR20060015547A (ko) | 2003-04-28 | 2006-02-17 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 취소 리스트를 저장하는 방법 |
US20050008240A1 (en) * | 2003-05-02 | 2005-01-13 | Ashish Banerji | Stitching of video for continuous presence multipoint video conferencing |
US20050002402A1 (en) * | 2003-05-19 | 2005-01-06 | Sony Corporation And Sony Electronics Inc. | Real-time transport protocol |
US7852919B2 (en) * | 2003-09-07 | 2010-12-14 | Microsoft Corporation | Field start code for entry point frames with predicted first field |
US8582659B2 (en) * | 2003-09-07 | 2013-11-12 | Microsoft Corporation | Determining a decoding time stamp from buffer fullness |
JP2005204001A (ja) * | 2004-01-15 | 2005-07-28 | Hitachi Ltd | データ配信サーバ、ソフトウェア、及びシステム |
US7447158B2 (en) | 2004-01-28 | 2008-11-04 | Empirix Inc. | System and method for testing signals within digital-network packets |
US7522712B2 (en) * | 2004-01-29 | 2009-04-21 | Comverse Ltd. | Method for initiating a session in a store and forward messaging system |
WO2005084381A2 (en) | 2004-03-03 | 2005-09-15 | Packetvideo Network Solutions, Inc. | System and method for retrieving digital multimedia content from a network node |
US20060184790A1 (en) * | 2004-03-26 | 2006-08-17 | Microsoft Corporation | Protecting elementary stream content |
JP4561146B2 (ja) | 2004-03-29 | 2010-10-13 | ソニー株式会社 | コンテンツ流通システム、暗号化装置、暗号化方法、情報処理プログラム、及び記憶媒体 |
US7477749B2 (en) | 2004-05-12 | 2009-01-13 | Nokia Corporation | Integrity protection of streamed content |
US20050254526A1 (en) | 2004-05-12 | 2005-11-17 | Nokia Corporation | Parameter sets update in streaming applications |
EP2346243B1 (en) * | 2004-08-31 | 2013-11-06 | Panasonic Corporation | Moving image encoding method and apparatus |
US8150232B2 (en) * | 2004-09-03 | 2012-04-03 | Panasonic Corporation | Recording medium, recording device, program, and recording method |
EP1790160A4 (en) * | 2004-09-15 | 2009-08-26 | Nokia Corp | PROVIDING ZAPPING STREAMS TO RADIO RECEIVERS |
ES2400955T3 (es) * | 2004-10-07 | 2013-04-15 | Panasonic Corporation | Aparato de codificación de imágenes y aparato de decodificación de imágenes |
US20060104356A1 (en) * | 2004-11-15 | 2006-05-18 | Microsoft Corporation | Timing for decoder buffer examination |
CN101151840B (zh) * | 2005-01-10 | 2011-09-21 | 四次方有限公司 | 用于依据指令处理媒体的单芯片媒体处理器 |
WO2006085844A1 (en) * | 2005-01-31 | 2006-08-17 | Thomson Licensing | Personal monitoring and information apparatus |
US7656835B2 (en) * | 2005-05-18 | 2010-02-02 | Nokia Corporation | Method for informing changed communications capabilities |
US7584497B2 (en) * | 2005-05-24 | 2009-09-01 | Microsoft Corporation | Strategies for scheduling bandwidth-consuming media events |
US20060291475A1 (en) * | 2005-06-28 | 2006-12-28 | Noam Cohen | Selective forward error correction |
US7577258B2 (en) | 2005-06-30 | 2009-08-18 | Intel Corporation | Apparatus and method for group session key and establishment using a certified migration key |
US7725593B2 (en) * | 2005-07-15 | 2010-05-25 | Sony Corporation | Scalable video coding (SVC) file format |
-
2005
- 2005-12-30 US US11/275,426 patent/US7720096B2/en active Active
-
2006
- 2006-10-03 KR KR1020087008664A patent/KR101292490B1/ko active IP Right Grant
- 2006-10-03 WO PCT/US2006/039129 patent/WO2007047158A1/en active Application Filing
- 2006-10-03 CN CN2006800378057A patent/CN101283566B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6278478B1 (en) * | 1999-03-18 | 2001-08-21 | Microsoft Corporation | End-to-end network encoding architecture |
US6856997B2 (en) * | 2000-10-27 | 2005-02-15 | Lg Electronics Inc. | Apparatus and method for providing file structure for multimedia streaming service |
CN1578311A (zh) * | 2003-07-03 | 2005-02-09 | 微软公司 | Rtp有效负荷格式 |
CN1642221A (zh) * | 2004-01-15 | 2005-07-20 | 松下电器产业株式会社 | 复用方式转换装置 |
Also Published As
Publication number | Publication date |
---|---|
US7720096B2 (en) | 2010-05-18 |
KR101292490B1 (ko) | 2013-08-01 |
KR20080045276A (ko) | 2008-05-22 |
CN101283566A (zh) | 2008-10-08 |
WO2007047158A1 (en) | 2007-04-26 |
US20070086481A1 (en) | 2007-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101283566B (zh) | 用于vc-1的rtp净荷格式 | |
CN1973545B (zh) | 用于可缩放媒体编码和传输的多个互操作性点 | |
CN101390399B (zh) | 可伸缩视频编码中的图片的后向兼容聚合 | |
CN101505316B (zh) | 重排和复用属于互相关会话的多媒体流的包的方法和设备 | |
CN101960726B (zh) | 用于解码增强型视频流的方法和装置 | |
RU2510908C2 (ru) | Описание характеристик агрегированных блоков медиаданных с обратной совместимостью | |
CN102037731B (zh) | 压缩视频中属于互相关性层的图片的通知和抽取 | |
CN103210642B (zh) | 在http流送期间发生表达切换时传送用于自然再现的可缩放http流的方法 | |
TWI401918B (zh) | 傳送指示接收器緩衝架構之緩衝參數信號的通訊方法 | |
CN107147916B (zh) | 一种在传输层上传输h.265编码视频数据的方法 | |
WO2007045140A1 (fr) | Methode en temps reel pour transferer des donnees multimedia | |
CN100544445C (zh) | 一种基于Brew平台的无线视频传输系统 | |
CN108632679B (zh) | 一种多媒体数据传输的方法和一种视联网终端 | |
CN100464586C (zh) | 基于ip机顶盒的mpeg1文件实时播放的方法 | |
KR20020019554A (ko) | Mpeg-4 원격 액세스 단말기를 갖는 통신 시스템 | |
US8218541B2 (en) | Method and device for forming, transferring and receiving transport packets encapsulating data representative of an image sequence | |
CN105657448A (zh) | 一种编码视频流的转发方法、装置及系统 | |
CN1689332A (zh) | 用于经ip网络发送可伸缩编码视频的系统和方法 | |
US20240244229A1 (en) | Systems and methods for predictive coding | |
KR100802180B1 (ko) | 엠펙-4 비디오 신호의 비트율을 동적인 통신 용량 변화에따라 제어하는 방법 | |
CN101873549B (zh) | 一种采用实时流传输协议的移动视频信息点对点传输方法 | |
Zhen-ping et al. | Analysis and implementation of streaming media system based on RTP and MPEG-4 | |
Zhuo et al. | Wireless media streaming system over CDMA networks | |
KR101148072B1 (ko) | 멀티미디어 지원 시스템 및 그 지원방법 | |
KR100713363B1 (ko) | 이동통신 시스템에서 엠펙 전송 장치 및 방법 |
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 | ||
ASS | Succession or assignment of patent right |
Owner name: MICROSOFT TECHNOLOGY LICENSING LLC Free format text: FORMER OWNER: MICROSOFT CORP. Effective date: 20150423 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20150423 Address after: Washington State Patentee after: Micro soft technique license Co., Ltd Address before: Washington State Patentee before: Microsoft Corp. |