CN106537923B - 自适应视频流的技术 - Google Patents
自适应视频流的技术 Download PDFInfo
- Publication number
- CN106537923B CN106537923B CN201580039213.8A CN201580039213A CN106537923B CN 106537923 B CN106537923 B CN 106537923B CN 201580039213 A CN201580039213 A CN 201580039213A CN 106537923 B CN106537923 B CN 106537923B
- Authority
- CN
- China
- Prior art keywords
- layer
- coding
- bit rate
- encoded
- encoded video
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
-
- 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/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234363—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering the spatial resolution, e.g. for clients with a lower screen resolution
-
- 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/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/23439—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
-
- 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/23805—Controlling the feeding rate to the network, e.g. by controlling the video pump
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8543—Content authoring using a description language, e.g. Multimedia and Hypermedia information coding Expert Group [MHEG], eXtensible Markup Language [XML]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
在视频编码系统(200)中,多次编码公共视频序列以产生编码视频数据的相应实例。可根据从相应服务层的目标比特率导出的一组编码参数对每个实例进行编码。可根据将最大层编码率限制到小于另一预先确定的服务层的目标比特率的约束条件对每个层进行编码。根据约束条件进行编码有助于通过请求客户端设备处理资源在层间动态切换或者通信带宽变化。在不同编码流之间切换的改进编码系统可提高流式传输的视频质量同时减小此类内容的传输和存储大小。
Description
相关申请的交叉引用
本申请要求于2015年5月4日提交的美国专利申请14/703,366以及2014年9月8日提交的美国临时申请62/047,415的优先权,其内容全文并入本文。
背景技术
在自适应流式传输的场景中,公共视频序列通常被编码成不同比特率的多个流。每个流通常被分割成传输单元序列(称为“块”)用于递送。通常创建标识用于视频序列的比特率的清单文件。例如,在流式传输服务中,视频流和伴随的播放列表文件托管在服务器中。客户端设备中的播放器通过访问播放列表文件获得流信息,允许播放器根据对可用带宽的估计在不同流之间切换。然而,当前编码系统不能足以适应在代表公共视频内容项的不同编码流之间的切换。
发明人察觉到在编码视频序列的瞬时数据率超过编码视频序列被编码的目标比特率的时刻切换问题有可能变得常见。例如,考虑针对目标比特率为1Mbps编码的视频序列。视频编码器将导出一组用于编码的编码参数,基于对视频序列的复杂度和内容的估计,所述编码参数预计产生目标比特率例如0.9Mbps或附近的编码视频数据。然而,视频序列的内容,大概在短期情况下可能与视频编码器的估计存在偏差,将导致编码数据率明显超过目标比特率。例如,如果编码数据率可以跳到1.5Mbps,则会超过客户端设备的会话的资源限制。客户端设备可能将尝试切换到针对较低目标比特率开发的编码视频数据的另一副本,但其他副本也可能超过客户端设备的资源限制,至少针对在引起瞬时数据率增大的短期事件。客户端设备可能必须迭代地识别和请求编码视频的不同副本,直到定在数据率满足其资源限制的副本上为止。在客户端设备如此操作时,其可能经历呈现的视频的中断,会减小感知到的解码会话的质量。
因此,本发明人认识到对用于提供公共视频序列的不同编码流之间有效切换的视频流式传输技术领域中的需要。
附图说明
图1为适合与本公开一起使用的视频分发系统的简化框图。
图2是根据本公开的实施方案的具有集成编码服务器和分发服务器的系统的简化框图。
图3示出了根据本公开的实施方案的方法300。
图4示出根据本公开的实施方案的层编码的比特率曲线图。
图5示出了根据本公开的另一实施方案的编码方法。
图6示出了根据本公开的实施方案的示例性编码视频流。
图7示出了根据本公开的实施方案的层在编码视频流中的应用。
具体实施方式
本公开的实施方案提供用于编码视频数据的技术,其中对公共视频序列进行多次编码以产生编码视频数据的相应实例。可根据从相应服务层的目标比特率导出的一组编码参数对每个实例进行编码。可根据将最大层编码率限制到小于另一预先确定的服务层的目标比特率的约束条件对每个层进行编码。根据约束条件进行编码有助于通过请求客户端设备处理资源在层间动态切换或者通信带宽变化。在不同编码流之间切换的改进编码系统可提高流式传输的视频质量同时减小此类内容的传输和存储大小。
图1为适合与本公开一起使用的视频分发系统100的简化框图。系统100可包括经由通信网络130连接的分发服务器系统110和客户端设备120。分发系统100可响应于客户请求向客户端120提供编码视频数据。客户端120可解码编码的视频数据并且将其呈现在显示器上。
分发服务器110可包括存储系统140,多个视频内容项150(例如,电影、电视节目和其他运动画面内容)存储在存储系统140上用于由客户端设备120下载。在图1的实施例中示出了单个视频内容项150。分发服务器110可存储视频内容项150的若干编码表示152-156,示为“层”,该编码表示已由不同编码参数编码。层152-156可根据平均比特率变化,可由编码中的差异导出,例如,编码复杂度、帧速率、帧大小等。每个视频流层152,154,156可被解析成的多个“块”CH1.1-CH1.N、CH2.1-CH2.N和CH3.1-CH3.N,代表不同时间的视频内容的视频内容项150的编码区段。不同块可从存储装置获得并且通过在网络130中定义的信道输送到客户端120。传输块的聚合表示图1中的信道流160。
图1的实施例示出三个编码视频层,第一层、第二层和第三层,每个都以不同平均比特率编码成N个块(1到N)。在图1的实施例中,层152,154,156分别以4Mb/s、2Mb/s和500Kb/s编码。在该实施例中,每个层的块在时间上对准从而块边界定义视频内容的对应持续时间(t1,t2,t3,…,tN)。然而,其他实施方案可能未在时间上对准块边界,并且可提供比图1所示更多或更少的层数。
分发服务器110还可存储索引文件158,在本文中称为“清单文件”,描述可用于每个层的视频内容项150和不同层152-156。清单文件158可将编码视频流与视频内容项150相关联并且将每个编码视频流的块与其他视频流的对应块相关联。例如,清单文件158可提供描述每个服务层的元数据,客户端120可参考该清单文件确定请求哪个服务层。清单文件158还可标识每个块在存储系统140中的存储位置用于由客户端设备120获取。
当分发服务器110接收对视频内容项150的请求时,服务器110可将来自清单文件158的数据提供给客户端设备120。装备有表示编码视频流的不同数据率的信息,客户端设备120可标识视频流中的一个(例如,层152)或者用于递送视频的平均比特率中的一个。递送带宽的设备标识可基于对网络130中可用的带宽的估计和/或客户端设备120处解码接收数据的可用的处理资源的估计。作为应答,分发服务器110可从存储装置140以指定数据率获得数据块,可从获得的块构建信道流160并且可将信道流160传输到客户端设备120。
在分发服务器110随时间将其块递送到客户端设备120时,客户端设备120可请求以不同数据率递送视频内容项150。例如,客户端设备120可修改其对网络带宽和/或本地处理资源的估计。作为应答,分发服务器110可获得对应于不同数据率(例如,层154)的块并且将其构建成信道流160。客户端设备120可在递送会话期间重复地请求不同数据率,并且因此,递送到客户端设备120的信道流160可包括从多个视频编码流得到的块。
对于实况流式传输情况,客户端设备120可从分发服务器110请求“实况内容”,例如,作为源产生并且尽可能快编码和分发的内容。在此情况下,编码器可在实况流式传输会话期间改变视频流设置,并且清单文件158中的初始信息可在实况流式传输期间由分发服务器110更新。
清单文件158可包括代表客户端120可在解码会话期间参考的编码媒体项的各种参数的句法元素。例如,它可针对每个层包括其是否包含具有不同分辨率的块的指示。客户端设备120可决定它是否将在块开始时更新视频分辨率信息。
在另一实施方案中,清单文件158可针对每个层包括所有块的第一帧是否为同步帧的指示。客户端设备120可决定在层之间切换时将切换到哪个帧或块。
在另一实施方案中,清单文件158可针对每个层包括其视觉质量的指示。客户端设备可在层之间切换来实现最佳视觉体验,例如,最大化平均视觉质量和/或最小化视觉质量跳跃。
在另一实施方案中,清单文件158可针对每个块包括其平均比特率的指示。客户端设备可根据块平均比特率确定其缓冲和切换行为。
在另一实施方案中,清单文件158可针对每个块包括其分辨率的指示。客户端设备可决定它是否将更新视频分辨率。
在另一实施方案中,清单文件158可针对每个层包括播放起始于特定块或特定块之后的流的剩余部分的所需带宽的指示。客户端设备可决定切换到哪一层。
图2是具有集成编码服务器210和分发服务器250的系统200的简化框图。内容服务器210可包括缓冲存储设备215、预处理器220、编码引擎225、参数选择器230、质量估计器235和目标比特率估计器240。缓冲存储装置215可存储典型地来自相机或存储设备的输入视频。预处理器220可对视频应用处理操作,典型地调节用于编码的视频或者改变视频中的感知元素。编码引擎225可向预处理器220输入的视频序列应用可减小其数据率的数据压缩操作。参数选择器230可生成到预处理器220和/或编码引擎225的参数数据来管理其操作。质量估计器235可估计编码引擎225输出的编码视频数据的质量。目标比特率估计器240可基于将要由分发服务器250支持的数据率和块大小生成视频块的平均比特率估计,该平均比特率估计可由分发服务器250标记到比特率估计器240。
预处理器220可对视频应用处理操作,典型地调节用于编码的视频或者改变视频中的感知元素。例如,预处理器220可改变视频序列的大小和/或帧速率。预处理器220可估计输入视频内容的空间和/或时间复杂度。预处理器220可包括适当存储装置使得在编码服务器210生成其序列的各个编码版本时可对公共视频序列重复执行大小和/或帧速率修改。
编码引擎225可向预处理器220输入的视频序列应用数据压缩操作。编码引擎225可根据包括编码标准的MPEG、H.263、H.264和HEVC系列的公共视频编码协议中任一个操作。编码引擎225可向视频序列的不同元素应用编码参数,例如包括:
·编码模式选择:是否将输入帧编码为I帧、P帧或B帧,块水平模式是否编码给定图像块。
·量化参数:哪个量化参数对准来在帧内应用作为编码视频数据。
参数选择器230可生成到预处理器220和/或编码引擎225的参数数据来管理其操作。参数选择器230例如可使得预处理器220改变输出到编码引擎225的数据的大小和/或帧速率。参数选择器230可将编码模式和/或量化参数强加于编码引擎225。参数选择器230可基于从目标比特率估计器240接收的平均比特率估计以及基于源视频的复杂度估计选择编码参数。
质量估计器235可估计编码引擎输出的编码视频数据的质量。质量估计器235可输出代表编码视频数据的质量的量化估计的数字数据。
目标比特率估计器240可基于将由分发服务器250支持的数据率生成视频块的平均比特率估计。
在操作期间,目标比特率估计器240可将平均比特率分派给视频序列并且基于分发服务器250提供的数据率和块大小估计确定刷新率。响应于目标比特率估计器240选择的平均比特率以及基于对视频序列自身的分析,参数估计器230可为预处理器220和/或编码引擎225选择可操作参数。例如,参数选择器230可使得预处理器220调整视频序列的帧大小(或分辨率)。参数选择器230也可选择对视频序列内的帧的编码模式和量化参数。编码引擎225可通过运动补偿预测技术处理输入视频并且输出代表输入视频序列的编码视频数据。
质量估计器235可评估编码视频数据并且估计根据所选参数编码的视频序列的质量。质量估计器235可确定编码质量是否满足与由分发服务器250设定的平均比特率相关联的预先确定的量化阈值。如果质量估计器235确定编码满足阈值,则质量估计器235可验证该编码。通过对照,如果质量估计器235确定编码不满足与目标平均比特率相关联的足够质量阈值,则质量估计器235可修改参数选择器230所应用的编码参数并且可使得预处理器220和编码引擎225重复对源视频的操作。
一旦参数选择器230选择满足质量估计器235建立的质量量度的一组处理和编码参数,则编码服务器210可前进到将由分发服务器250支持的下一个平均比特率。再者,参数选择器230和质量估计器235可递归式操作,选择参数,将其应用到预处理操作和编码,估计由此获得的编码视频数据的质量并且在满足质量需求之前修改参数。
图3示出了根据本公开的实施方案的方法300。方法300可使用每层分发平均比特率作为管理参数迭代地处理源视频序列。在每次迭代期间,方法300可选择视频序列的分辨率和/或帧速率(框310)。分辨率和帧速率可从分发服务器250可用的层的平均比特率导出(图2)。方法300也可选择初始一组编码参数用于处理视频(框315)。初始参数也可由分发服务器250支持的分发平均比特率导出。方法300可使得视频符合所选的峰值比特率、分辨率和帧速率并且可具有根据所选参数(框320)编码的视频序列。其后,方法300可估计将从由此获得的编码视频序列复原的视频数据的质量(框325)并且可确定编码质量是否超过针对具有特定分发平均比特率的每一层的最小需求(框330)。如果没有的话,则方法300可修改峰值比特率、分辨率、帧速率和/或编码参数的选择(框335)并且可使得操作返回到框320。在实施方案中,方法300可将编码流传递到分发系统(框340)。
在其他实施方案中,方法300可在编码期间迭代地递增每个块的峰值比特率使得每个块的质量满足层的最小质量需求(框335),但是使得每个块的峰值比特率最小。
在其他实施方案中,方法300可基于每一层的指定分发平均比特率设定对每一层的峰值比特率的限制,并且在编码参数修改期间强化该限制(框335)。这例如可通过针对每一层设置峰值比特率与平均比特率比值(PtA)来完成。较高平均比特率层可设置有比较低平均比特率层低的PtA,这是因为编码质量可能在较高平均比特率层足够好而无需显著较高峰值比特率,并且较低峰值比特率将意味着用于流式传输视频的较小带宽消耗。
在其他实施方案中,当获得满足所有流的最小质量需求的编码视频时,方法300可基于某些约束条件将获得的层的峰值比特率和平均比特率相对于彼此进行比较(框345)。方法300可确定获得的层的峰值比特率和平均比特率是否满足约束条件(框350)。如果是的话,方法300可将编码流传递到分发系统(框340)。然而,如果否的话,则方法300可修改表现出与其他流不足的量化差异的编码视频序列中的一个或多个的峰值比特率、分辨率、帧速率和/或编码参数选择(框350)并且可对这些流重复框320-335的操作(框355)。方法300的此实施方案的操作可重复直到视频序列在所有分发平均比特率下被编码并且针对每个编码率为序列建立足够量化差异为止。
在其他实施方案中,约束条件可被定义为较高平均比特率层的平均比特率与较低平均比特率层的峰值比特率之间的最大差异。例如,约束条件可被定义为“层(X+2)的峰值比特率不再大于层X的平均比特率”。约束条件可基于接收流的客户端设备中的信道切换方案来定义,从而防止不必要较大或者不必要频繁的层间切换。假定如果较高比特率层的平均比特率可适应传输带宽并且切换到具有可适应传输带宽的峰值比特率的较低比特率层,则客户端设备切换到较高比特率层。
方法300适应若干变化。在一个实施方案中,编码器可基于视觉质量和流式传输性能的特征联合确定视频分辨率、视频帧速率和平均比特率。可选地,编码器可通过考虑具有类似比特率值的流之间的视觉质量变化来控制目标平均比特率。另选地,编码器可基于编码视频的质量测量值诸如峰值信噪比(PSNR)或感知质量量度来控制特定平均比特率的视频分辨率和帧速率。
在其他实施方案中,编码器可改变编码块的持续时间。例如,编码器可根据编码视频数据的局部和全局比特率特征适应块的持续时间。另选地,编码器可根据编码视频数据的局部和全局视觉质量特征适应块的持续时间。可选地,编码器可响应于源视频内容中对场景变化的检测适应块的持续时间。或者,编码器可基于针对添加编码流的同步帧的视频编码器需求适应块的持续时间。
在另外实施方案中,编码器可调节视频的帧速率。例如,编码器可调节块水平的帧速率,即,对应于源视频的相同时段的单个流的块以及多个流的块。另选地,编码器可在编码引擎的多通道中在块水平迭代地调节视频的帧速率。在多通道编码器实施方案中,编码器可基于来自先前编码通道的采集到的平均比特率和视觉质量的信息决定在未来通道中如何布置块边界以及将重编码哪些块。
编码器可通过减小峰值块比特率优化帧速率和块分区。可应用动态编程方法通过最小化峰值块比特率确定优化分区。另选地,编码器可通过减小块比特率的整体变化优化帧速率和块分区。可应用动态编程方法通过最小化块比特率的变化确定优化分区。此外,编码器可优化帧速率和块分区以保证量度测量的视觉质量的特定约束条件,诸如编码视频的PSNR。
图4示出根据本公开的实施方案的层编码的比特率曲线。根据实施方案,在编码期间,编码器可约束层使得层T3的峰值比特率小于层T1的平均比特率。在回放期间,如果客户端设备遇到具有无法适应传输带宽的比特率的峰值部分,则客户端设备可从层T1切换到较低比特率层。
在实施方案中,图3中的方法300可设置层的参数(框335)配置编码器来调节用于将层存储纵横比缩放到适当显示分辨率。这例如可通过为每一层设置像素纵横比(PAR)来完成。
由于层可能在编码时具有不同帧存储分辨率,所以显示纵横比在解码时放大后可能不匹配。
可选择具有相同纵横比的一些层存储分辨率作为源视频(诸如对于全1080p内容)。考虑以下示例性层。
表1
无需修剪,以上所有层都具有16:9的相同纵横比。
然而,如果修剪参数应用于宽屏幕内容,则该方法可能不工作。例如,如果源被修剪为1920x936像素分辨率,则使用相同带宽分辨率的一些较低分辨率层会导致具有相同纵横比的非整型高度像素分辨率。
表2
在编码期间,高度可舍入为最接近偶数(由于4:2:0格式)并且较低层不再具有与源相同的纵横比。
表3
当在客户端设备中放大到全尺寸用于显示时,放大的显示高度变成T3的938像素以及T4的934像素,而不是源的936像素。这种与源在分辨率上的很大差异可能是可见的并且可能不利地影响观看体验。这可通过应用如下的适当PAR加以解决。
像素纵横比(PAR)=显示纵横比(DAR)/存储纵横比(SAR)
针对上述实施例的PAR将为:
表4
方法300可适应若干其他变化。例如,编码器可在层中将SAR/PAR编码作为变量,例如,每个视频块定义的一组SAR/PAR/DAR。另选地,编码器可基于顶层DAR为所有层计算PAR并且在视频流中定义PAR,客户端设备可使用在视频流中接收的PAR来放大用于显示。
在另一实施方案中,PAR和/或DAR信息可在清单文件158中被发送到客户端设备。客户端设备可使用该信息确定与清单文件158相关联的所有块的单一统一显示分辨率,并且随后将所有层缩放到该显示分辨率。
在另外实施方案中,客户端设备可确定传输中的适当PAR或显示分辨率,例如基于清单文件或回放历史中最高层的DAR信息计算显示分辨率。客户端设备随后可将所有层缩放到该分辨率而无需视频流中的额外信息。
该技术也可应用于其他原因决定的层存储分辨率的情况,例如,由于用于更好编码效率的宏块大小造成层存储分辨率为16的倍数(或对于HEVC编码中的宏块为64的倍数)。
在其他实施方案中,PAR可为内容自适应的。例如,当源视频(块/场景)在高速运动中,则可通过应用PAR减小编码中的层存储分辨率。在别处,当源视频(块/场景)在特定尺寸(例如,水平尺寸)具有较小变化或高运动时,则可在特定尺寸应用PAR减小编码中的层存储分辨率尺寸。另选地,当源视频(块/场景)具有感兴趣的对象(例如,文本)时,则可应用不太积极的PAR以保持层存储分辨率较高。
图5示出了根据本公开的另一实施方案的编码方法500。方法500可使得输入视频序列将根据分发平均比特率被编码。方法500可开始于采集将要编码的视频序列的信息(框510),例如,通过基于运动补偿残值和/或客观的质量测量值对源执行预编码通道来估计帧内容的空间复杂度、帧内容的运动等。方法500可根据统计值估计视频序列的各个部分的成本(例如,编码处理时间、编码缓冲大小、分发服务器处的存储装置大小、传输带宽、解码处理时间、解码缓冲大小等)并且将预处理和编码参数分配给那些部分(框520)。方法500也可根据在分发服务器处管理的递送参数将视频序列中的某些帧分配为编码视频序列中的同步帧从而与块边界重合(框530)。其后,方法500可根据从编码成本估计的编码约束条件以及根据分发服务器提供的块边界编码源视频(框540)。一旦编码源视频,方法500可标识坏编码块(框550),即,编码质量未满足所需规范的块或者数据率超过预先确定的限制的块。方法500可修改坏块的编码参数(框560),重编码坏块(框570)并且再次检测坏块(框550)。一旦所有块按照满足编码质量需求和管理数据率的方式编码,方法500可将编码流传递到分发系统(框580)。
在实施方案中,在方法500重编码坏块以产生编码块之后,方法500可对视频数据的数据块重编码以平滑视频序列的编码质量。
方法500适应若干变化。例如,编码器可通过考虑层比特率、每秒的帧数、相邻层之间的质量变化以及视频特征来确定层存储分辨率。编码器可通过限制相邻层之间的质量差异选择层存储分辨率。编码器可针对每秒较高帧的源选择较低存储分辨率,例如,保持每秒相似数量的编码像素。另选地,编码器可基于视频源的复杂度,例如基于对视频源执行的预编码通道估计的运动补偿残值和/或客观的质量测量值,为视频源的易于编码部分选择较高存储分辨率。
例如,高级编码技术,诸如更多参考帧和高级运动估计,可应用于较低层和/或较难编码部分。高级编码标准,诸如HEVC,可应用于较低层和/或较难编码部分。如果在客户端设备中未限制解码硬件/缓冲,则对于较低层和/或较难编码部分可选择更高级编码标准。这可减小传输中视频块的带宽大小,可提高视频流式传输。如果在客户端设备中限制解码硬件/缓冲,则对于较低层和/或较难编码部分可选择低级编码标准。这可减小客户端设备中的计算和缓冲需求。
在实施方案中,编码器可适应预处理,例如对于较难编码部分具有较强去噪/平滑滤波器。
编码器也可执行速率控制以期望在客户端设备中对数据的有效缓冲。例如,编码器可定义某些缓冲约束条件以有助于流式传输。在此实施例中,可限制连续高比特率部分的持续时间和/或高比特率部分的数量以减小/避免切换到较低层。另选地,编码器可对难以编码部分之前的较低比特率部分编码以避免切换到较低层或通过释放一些带宽有助于切换到较高层。
在其他实施方案中,编码器可通过考虑回放或预览时的启动时间设计视频流,对于视频流开始中的块以及其他感兴趣的块诸如章节具有特定优化。编码器可针对开始部分使用更多限制的峰值比特率,从而开始部分可以更容易和更快地解码用于回放或预览。编码器可应用高级编码工具/预处理技术来减小比特率。编码器也可应用质量驱动比特率优化来使得比特率最小化同时保证质量阈值。
在另外实施方案中,编码器可通过在层之间共享编码信息诸如帧类型联合产生视频流,例如保证层之间同步帧对准从而有助于客户端设备减小切换开销。编码器可通过共享QP和比特分发联合产生视频流。与传统N+2通道编码相比,多个层可共享信息来加速编码过程,例如,使用N+1编码通道来产生N层。编码器也可通过共享宏块(MB)的编码信息诸如模式决定、运动矢量、参考帧索引等来联合产生视频流。对于多个分辨率层来说,可空间上映射该信息以考虑缩放因素。例如,当放大到较高分辨率,一个低分辨率层处的MB可覆盖/重叠高分辨率层的多个MB并且因此重叠MB的解码可利用所有重叠MB的编码信息。
预处理器的输出、预处理/去噪源视频可共享作为输入用于编码多个层。类似地,预处理器对源视频特征的分析,例如对带状易发区的检测、运动强度计算、和/或纹理强度计算,可共享用于多个层。
编码器可产生指示编码质量的视频质量元数据。编码器可测量视频质量以考虑源/显示分辨率/物理显示尺寸。例如,低层编码数据可被放大并且以相对于在视频流的相同部分的较高层的源分辨率进行比较。编码器可使用质量元数据来测量回放质量,例如切换点处的质量变化、回放块的平均质量。
质量元数据可在运行时由客户端设备访问以有助于缓冲切换。例如,如果当前解码层的质量足够,则客户端设备可保守地切换到较高层以避免在未来某时刻切换到较低层的可能性。客户端设备可标识未来低质量块并且在要求用于解码之前预缓冲其对应的高层块,此实施方案可在视频解码会话上保留编码质量。
编码层的质量元数据也可用于:
·层决定/选择。例如,可选择层来满足相邻层之间的最大质量差别的约束条件。
·初始层选择。例如,在回放开始,客户端设备可选择具有可接受质量值的层。
·用于顶层的编码参数的选择。例如,为了节省蜂窝连接的数据/带宽,可将顶层限制为具有足够高质量值的层。
·下载和流式传输之间的交互。例如,如果流式传输层具有类似于下载编码的质量但是较低比特率,则可用于下载以节省带宽。
方法500还可适应其他变化。例如,单个流可包含具有不同分辨率和帧速率的块。一个单个块可包含具有不同分辨率和帧速率的帧。可基于块的平均比特率控制分辨率和帧速率。可基于以不同分辨率编码的块的视觉质量控制分辨率和帧速率。
可由源视频的场景变化控制分辨率和帧速率。
在其他实施方案中,可采用多通道编码产生混合分辨率流。例如,视频编码器可检测具有量化因子、PSNR值、统计运动和纹理信息建议的低视觉质量的视频部分。检测到的低质量部分随后可以另选的分辨率和帧速率重编码,产生更好视觉质量。
在另外实施方案中,可用后合成方法产生混合分辨率流。例如,以类似的平均比特率,源视频可以多个分辨率和帧速率被编码。产生的流可被划分为块。块随后可选择来形成混合分辨率流。
可控制上文所述的块选择以保持在编码序列上由量化因子、PSNR值和统计运动和纹理信息测量的视觉质量。而且,可控制上文所述的块选择以减小编码序列上的视觉质量、分辨率和帧速率的变化。当产生混合分辨率流时,编码器可控制分辨率切换和帧速率切换的时间位置以对准场景变化。
图6(a)-6(c)示出了根据本公开的实施方案的同步帧(SF)在编码视频流中的应用。根据本公开,编码器(图2中)可编码每个块的可编码为同步帧SF的第一帧,该同步帧可在不参考视频序列的任何先前编码的帧被解码。同步帧可被编码为帧内编码帧(口语称为“I帧”)。例如,如果根据H.264编码协议编码视频序列,则同步帧可编码为瞬时解码器刷新帧(“IDR帧”)。其他编码协议可提供I帧的其他定义。编码器对IDR位置的编码决定可对分段结果产生影响,并且可用于改善流式传输质量。
如图6(a)所示,信道流611可基于5秒的最大块尺寸约束条件编码为持续时间分别为5秒、1秒和5秒的块A、B和C。然而,块A和C的尾端可涉及可注意的质量下降。另外,因为SF倾向于采用更多的比特来编码,所以围绕块B的比特率可能高于其他部分。根据本公开的实施方案,编码器(图2中)可基于3秒的最小块尺寸约束条件编码为持续时间分别为3秒、3秒和5秒的块D、E和F(信道流612)。因为块D、E和F在信道流612中更均匀,所以比特率可被平滑并且质量可得以改善。
如图6(b)所示,信道流613可基于每个部分的编码的相对复杂度和难度编码为持续时间分别为4秒和2秒的块G和H。块G可包含相对容易编码的内容部分,而块H可包含相对难以编码的内容部分。具有较长的比块H更容易编码部分的块G可允许块G和块H具有类似的存储大小。然而,较难编码的块H可具有较高峰值和平均比特率,可潜在地造成向客户端设备传输的困难。根据本公开的实施方案,编码器(图2中)可基于每个部分的编码相对复杂度和难度编码为持续时间分别为2秒和4秒的块I和J(信道流614)。在此,信道流614可编码较难编码块J中的部分的较长块。这允许块J将其SF向前移位到块I的较容易编码部分。较长的块J也允许块J在长持续时间上平滑其比特率,从而避免高峰值和高平均比特率,而不会牺牲视频质量。
如图6(c)所示,信道流615可基于2秒的最小块尺寸编码为持续时间分别为2秒、2秒、2秒和5秒的块K、L、R和S。然而,如果块R包括相对较难编码部分,则较难编码块R可具有较高峰值和平均比特率,可潜在地造成向客户端设备传输的困难。根据本公开的实施方案,编码器(图2中)可基于每个部分的编码相对复杂度和难度编码为持续时间分别为2秒、4秒和5秒的块T、U和V(信道流616)。在此,信道流616有效地将来自信道流615的块L和R的部分编码为一个单一块U,从而编码较难编码块R中的部分的较长块。这允许块U将其SF向前移位到块T的较容易编码部分。较长的块U也允许块U在长持续时间上平滑其比特率,从而避免高峰值和高平均比特率,而不会牺牲视频质量。
编码器和分段器的应用还可通过优化以下目标中的一个或多个确定最优块边界:
·使得视频流中的最小块长度最大。
·使得视频流中的块长度的变化最小。
·使得视频流中的峰值块比特率最小。
·使得视频流中的块比特率的变化最小。
图7示出了根据本公开的实施方案的另外层在编码视频流中的应用。根据本公开,编码器(图2中)可利用具有相应块(CH1.1-CH1.10和CH2.1-CH2.10)的2层(第一层和第二层)初始编码视频内容。编码器可测量至少一层中的块的比特率。例如,比特率曲线710可代表针对第一层测量的比特率。编码器可将视频内容的特定部分指定为难以编码,例如,如果编码器确定部分的比特率大于特定层的阈值水平。
随后,编码器可编码难以编码部分的另外层(例如,具有CH1.5.1-CH1.8.1,CH1.5.2-CH1.8.2,CH1.5.3-CH1.8.3的第一层子层1.1-1.3以及具有CH2.5.1-CH2.8.1,CH2.5.2-CH2.8.2,CH2.5.3-CH2.8.3的第二层子层2.1-2.3)。另外层中的每一个都可以不同比特率编码,例如,通过调节编码中的量化参数(QP)。在该实施例中,编码器可用曲线710.1到710.3代表的比特率编码子层1.1到子层1.3。编码器可例如用低于第二层的比特率类似地编码子层2.1到子层2.3。由此,编码器可提供另外层作为密集和/或渐变梯度水平的层(例如,具有第一层和第二层之间的比特率的3个另外层以及第二层下的3个另外层)。通过编码器提供另外层,客户端设备由此可在层切换期间查看到回放视频质量的小变化。
前述讨论已在编码服务器和分发服务器的情境下描述了本公开的实施方案的操作。通常,这些服务器提供作为集成电路填充的电子设备,诸如专用集成电路、现场可编程门阵列和/或数字信号处理器。另选地,它们可嵌入到在个人计算机、笔记本或平板电脑、智能电话或计算机服务器上执行的计算机程序中。此类计算机程序典型地存储在物理存储介质诸如电子、磁性和/或基于光学的存储设备中,在那里它们在操作系统控制下被读取到处理器并且被执行。并且,当然,这些部件可提供作为混合系统,根据需要混合系统在专用硬件部件和编程通用处理器上分发功能性。存储设备还包括存储介质诸如电子、磁性和/或基于光学的存储设备。
本文具体示出和/或描述了本公开的若干实施方案。然而,应当理解的是,在不脱离本公开的实质和预期范围的情况下,本公开的修改和变型由上述教导内容涵盖并且在所附权利要求的范围内。
Claims (38)
1.一种方法,包括:
多次编码公共视频序列以产生编码视频数据的相应实例,每个实例具有根据从相应服务层的平均比特率导出的一组编码参数被编码的视频数据,并且其中给定层的瞬时编码率关于其平均比特率而波动,
其中对于所述给定层,编码被约束为将该层的最大编码率限制为小于另一预先确定的服务层的平均比特率。
2.根据权利要求1所述的方法,其中编码视频的实例各自包括多个块的编码视频数据。
3.根据权利要求1所述的方法,其中编码视频的实例各自包括多个块的编码视频数据,所述多个块的编码视频数据具有与来自其他实例的块的边界在时间上对准的块边界。
4.根据权利要求3所述的方法,其中至少一个块的第一帧为无需参考编码次序中任何先前帧而可解码的帧,并且在编码次序中所述第一帧之后的相应块的所有其他编码帧具有不早于所述第一帧的预测参考。
5.根据权利要求1所述的方法,还包括将编码视频的实例与包含描述层的数据的清单文件相关联地存储在分发服务器处。
6.根据权利要求1所述的方法,还包括:针对至少一个编码实例,
标识相应实例的编码率超过该实例的平均比特率的部分,
将视频序列的对应于所标识部分的部分编码为多个子层,每个子层具有针对所标识部分得出相应编码率的编码参数,以及
将所编码实例和所编码子层存储在分发服务器处的存储装置中。
7.根据权利要求1所述的方法,其中每个编码的层具有不同分辨率但具有彼此大致相似的纵横比。
8.根据权利要求1所述的方法,其中至少一个编码的层具有从显示纵横比和存储纵横比导出的像素纵横比。
9.根据权利要求1所述的方法,其中所述编码包括:
针对第一层,估计视频序列的特征,基于所估计的特征和所述第一层的平均比特率来选择编码参数以及根据所选择的第一层的编码参数来编码视频序列,以及
针对至少一个其他层,基于所估计的特征以及所述其他层的平均比特率来选择编码参数,以及根据所选择的所述其他层的编码参数来编码视频序列。
10.根据权利要求1所述的方法,其中所述编码包括:针对至少一层
估计视频序列的特征,
基于所估计的特征和相应层的平均比特率来选择编码参数,
根据所选择的编码参数来编码视频序列,
估计从所述编码获得的编码质量,以及
如果所估计的编码质量低于预先确定的阈值,则修改所述编码参数,以及使用所修改的编码参数重复所述编码。
11.一种分发服务器,包括:
计算机可读存储设备,所述计算机可读存储设备在其上存储有表示媒体项的文件,所述文件包括:
所述媒体项的多个编码实例,每个实例具有编码视频数据,所述编码视频数据表示根据从相应服务层的平均比特率导出的一组编码参数已被编码的媒体项,并且其中给定层的瞬时编码率关于其平均比特率而波动,其中对于给定层,编码被约束为将该层的最大编码率限制为小于另一预先确定的服务层的平均比特率,以及,
包含描述该层的数据的清单文件。
12.根据权利要求11所述的服务器,还包括用于在请求时提供相应层的数据的通信系统。
13.根据权利要求11所述的服务器,其中每一编码实例包括多个块的编码视频数据。
14.根据权利要求11所述的服务器,其中每一编码实例包括多个块的编码视频数据,所述多个块的编码视频数据具有与来自其他实例的块的边界在时间上对准的块边界。
15.根据权利要求11所述的服务器,其中至少一个块的第一帧为无需参考编码次序中的任何先前帧而可解码的帧。
16.根据权利要求11所述的服务器,其中所述文件针对至少一个实例还包括:
该实例的多个编码子层,对应于相应实例的编码率超过该实例的平均比特率的部分,每个子层根据针对所标识的部分得出相应编码率的编码参数被编码。
17.根据权利要求11所述的服务器,其中每个编码的层具有不同分辨率但具有彼此大致相似的纵横比。
18.一种编码服务器,包括:
视频编码器,所述视频编码器用于多次编码公共视频序列以产生编码视频数据的相应实例,每个实例具有根据从相应服务层的平均比特率导出的一组编码参数被编码的视频数据,并且其中给定层的瞬时编码率关于其平均比特率而波动,其中对于给定层,编码被约束为将该层的最大编码率限制为小于另一预先确定的服务层的平均比特率,以及
存储设备,所述存储设备用于存储编码视频数据的实例。
19.根据权利要求18所述的服务器,其中所述编码视频数据的实例各自包括多个块的编码视频数据。
20.根据权利要求18所述的服务器,其中所述编码视频数据的实例各自包括多个块的编码视频数据,所述多个块的编码视频数据具有与来自其他实例的块的边界在时间上对准的块边界。
21.根据权利要求18所述的服务器,其中至少一个块的第一帧为无需参考编码次序中的任何先前帧而可解码的帧。
22.根据权利要求18所述的服务器,其中所述视频编码器还:
标识相应实例的编码率超过该实例的平均比特率的部分,并且
将视频序列的对应于所标识部分的部分编码为多个子层,每个子层具有针对所标识部分得出相应编码率的编码参数。
23.根据权利要求18所述的服务器,其中每个编码的层具有不同分辨率但具有彼此大致相似的纵横比。
24.根据权利要求18所述的服务器,其中所述视频编码器进一步:
针对第一层,估计视频序列的特征,基于所估计的特征和所述第一层的平均比特率来选择编码参数,以及根据所选择的第一层的编码参数来编码视频序列,以及
针对至少一个其他层,基于所估计的特征以及所述其他层的平均比特率来选择编码参数,以及根据所选择的所述其他层的编码参数来编码视频序列。
25.根据权利要求18所述的服务器,其中所述视频编码器进一步:针对至少一层
估计视频序列的特征,
基于所估计的特征和相应层的平均比特率来选择编码参数,
根据所选择的编码参数来编码视频序列,
估计从所述编码获得的编码质量,以及
如果所估计的编码质量低于预先确定的阈值,则修改所述编码参数,以及使用所修改的编码参数重复所述编码。
26.一种在其上存储有程序指令的计算机可读存储设备,所述程序指令在被执行时使执行设备实行根据权利要求1-10中任一项所述的方法。
27.一种方法,包括:
估计要被编码的视频序列的特征,
多次编码公共视频序列以产生编码视频数据的相应实例,每个编码视频数据的实例与相应服务层相关联,包括:针对每个实例,
基于所估计特征和相应层的平均比特率选择相应实例的编码参数,并且其中给定层的瞬时编码率关于其平均比特率而波动,其中至少一层的最大编码率小于另一预先确定的服务层的平均比特率,并且所编码实例的开始部分的最大编码率小于所编码实例的中间部分的最大编码率;
根据所选择的编码参数编码视频序列,以及
将编码视频数据的实例存储在媒体递送服务器处。
28.根据权利要求27所述的方法,其中基于要对所编码实例解码的播放器的估计的缓冲条件来确定所编码实例的平均比特率。
29.根据权利要求27所述的方法,其中在所有所编码实例中视频序列的选择帧被编码为同步帧。
30.根据权利要求27所述的方法,其中所编码实例存储在单独可访问的区段中,每个单独可访问的区段始于编码的同步帧。
31.一种媒体递送服务器,在所述媒体递送服务器上存储有通过根据权利要求27-30中任一项所述的方法生成的编码视频数据的实例。
32.一种编码服务器,包括:
视频编码器,所述视频编码器估计要被编码的视频序列的特征,并且多次编码公共视频序列以产生编码视频数据的相应实例,每个编码视频数据的实例与相应服务层相关联,包括:针对每个实例,
基于所估计特征和相应层的平均比特率选择相应实例的编码参数,并且其中给定层的瞬时编码率关于其平均比特率而波动,其中至少一层的最大编码率小于另一预先确定的服务层的平均比特率,并且所编码实例的开始部分的最大编码率小于所编码实例的中间部分的最大编码率;以及
根据所选择的编码参数编码视频序列,
其中,编码视频数据的实例要被存储在媒体递送服务器处。
33.根据权利要求32所述的编码服务器,其中所编码实例的平均比特率基于要对所编码实例解码的播放器的估计的缓冲条件被确定。
34.根据权利要求32所述的编码服务器,其中在所有所编码实例中视频序列的选择帧被编码为同步帧。
35.根据权利要求32所述的编码服务器,其中所编码实例存储在单独可访问的区段中,每个单独可访问的区段始于编码的同步帧。
36.一种在其上存储有程序指令的计算机可读存储设备,所述程序指令在被执行时使执行设备实行根据权利要求27-30中任一项所述的方法。
37.一种设备,所述设备包括:
处理器;和
在其上存储有程序指令的计算机可读存储装置,所述程序指令在被执行时使得所述处理器执行根据权利要求1-10和27-30中任一项所述的方法。
38.一种包括用于执行根据权利要求1-10和27-30中任一项所述的方法的部件的装置。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201462047415P | 2014-09-08 | 2014-09-08 | |
US62/047,415 | 2014-09-08 | ||
US14/703,366 US20160073106A1 (en) | 2014-09-08 | 2015-05-04 | Techniques for adaptive video streaming |
US14/703,366 | 2015-05-04 | ||
PCT/US2015/045862 WO2016039956A1 (en) | 2014-09-08 | 2015-08-19 | Techniques for adaptive video streaming |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106537923A CN106537923A (zh) | 2017-03-22 |
CN106537923B true CN106537923B (zh) | 2019-11-12 |
Family
ID=55438746
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580039213.8A Active CN106537923B (zh) | 2014-09-08 | 2015-08-19 | 自适应视频流的技术 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20160073106A1 (zh) |
CN (1) | CN106537923B (zh) |
WO (1) | WO2016039956A1 (zh) |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3025483B1 (en) | 2013-07-25 | 2022-09-21 | Convida Wireless, LLC | End-to-end m2m service layer sessions |
US10148713B2 (en) * | 2014-10-21 | 2018-12-04 | Adobe Systems Incorporated | Live manifest update |
US10271112B2 (en) * | 2015-03-26 | 2019-04-23 | Carnegie Mellon University | System and method for dynamic adaptive video streaming using model predictive control |
CA2981903A1 (en) | 2015-04-09 | 2016-10-13 | Dejero Labs Inc. | Systems, devices and methods for distributing data with multi-tiered encoding |
WO2017196670A1 (en) | 2016-05-13 | 2017-11-16 | Vid Scale, Inc. | Bit depth remapping based on viewing parameters |
US11503314B2 (en) | 2016-07-08 | 2022-11-15 | Interdigital Madison Patent Holdings, Sas | Systems and methods for region-of-interest tone remapping |
GB2552943A (en) | 2016-08-09 | 2018-02-21 | V-Nova Ltd | Adaptive video consumption |
US10454987B2 (en) | 2016-10-28 | 2019-10-22 | Google Llc | Bitrate optimization for multi-representation encoding using playback statistics |
US10932276B2 (en) | 2016-11-03 | 2021-02-23 | Convida Wireless, Llc | Frame structure in NR |
KR102650650B1 (ko) * | 2017-01-20 | 2024-03-25 | 한화비전 주식회사 | 영상 관리 시스템 및 영상 관리 방법 |
EP3583780B1 (en) | 2017-02-17 | 2023-04-05 | InterDigital Madison Patent Holdings, SAS | Systems and methods for selective object-of-interest zooming in streaming video |
US11166034B2 (en) | 2017-02-23 | 2021-11-02 | Netflix, Inc. | Comparing video encoders/decoders using shot-based encoding and a perceptual visual quality metric |
US11153585B2 (en) | 2017-02-23 | 2021-10-19 | Netflix, Inc. | Optimizing encoding operations when generating encoded versions of a media title |
US10742708B2 (en) | 2017-02-23 | 2020-08-11 | Netflix, Inc. | Iterative techniques for generating multiple encoded versions of a media title |
US10897618B2 (en) | 2017-02-23 | 2021-01-19 | Netflix, Inc. | Techniques for positioning key frames within encoded video sequences |
US11272237B2 (en) | 2017-03-07 | 2022-03-08 | Interdigital Madison Patent Holdings, Sas | Tailored video streaming for multi-device presentations |
JP6797755B2 (ja) | 2017-06-20 | 2020-12-09 | キヤノン株式会社 | 撮像装置、撮像装置の処理方法およびプログラム |
US10666992B2 (en) | 2017-07-18 | 2020-05-26 | Netflix, Inc. | Encoding techniques for optimizing distortion and bitrate |
US10887609B2 (en) * | 2017-12-13 | 2021-01-05 | Netflix, Inc. | Techniques for optimizing encoding tasks |
CN108650481B (zh) * | 2018-04-19 | 2021-08-10 | 北京软通智慧城市科技有限公司 | 一种视频流数据的存储方法及装置 |
US10432970B1 (en) * | 2018-06-14 | 2019-10-01 | Telefonaktiebolaget Lm Ericsson (Publ) | System and method for encoding 360° immersive video |
US10623736B2 (en) * | 2018-06-14 | 2020-04-14 | Telefonaktiebolaget Lm Ericsson (Publ) | Tile selection and bandwidth optimization for providing 360° immersive video |
EP3824629A4 (en) * | 2018-07-18 | 2022-04-06 | Pixellot Ltd. | SYSTEM AND METHOD FOR CONTENT LAYER-BASED VIDEO COMPRESSION |
KR20210066856A (ko) | 2018-09-27 | 2021-06-07 | 콘비다 와이어리스, 엘엘씨 | 새로운 라디오의 비허가 스펙트럼들에서의 부대역 동작들 |
US11128869B1 (en) * | 2018-10-22 | 2021-09-21 | Bitmovin, Inc. | Video encoding based on customized bitrate table |
JP7105675B2 (ja) * | 2018-11-02 | 2022-07-25 | 株式会社東芝 | 送信装置、サーバ装置、送信方法およびプログラム |
US10965945B2 (en) * | 2019-03-29 | 2021-03-30 | Bitmovin, Inc. | Optimized multipass encoding |
US20200344510A1 (en) * | 2019-04-25 | 2020-10-29 | Comcast Cable Communications, Llc | Dynamic Content Delivery |
CN110139113B (zh) * | 2019-04-30 | 2021-05-14 | 腾讯科技(深圳)有限公司 | 视频资源的传输参数分发方法及装置 |
CN111541916B (zh) * | 2020-04-17 | 2022-08-26 | 海信视像科技股份有限公司 | 码流传输方法及设备 |
CN112383777B (zh) * | 2020-09-28 | 2023-09-05 | 北京达佳互联信息技术有限公司 | 视频编码方法、装置、电子设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6637031B1 (en) * | 1998-12-04 | 2003-10-21 | Microsoft Corporation | Multimedia presentation latency minimization |
CN102301710A (zh) * | 2009-01-29 | 2011-12-28 | 微软公司 | 使用用于自适应视频流传输的可变比特率和动态分辨率的多比特率视频编码 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100547139B1 (ko) * | 2003-09-03 | 2006-01-26 | 학교법인 고황재단 | IETF QoS 프로토콜을 이용한 MPEG 미디어데이터 전송 방법 및 장치 |
US8422553B2 (en) * | 2007-05-17 | 2013-04-16 | Sony Corporation | Information processing device and method |
US8561116B2 (en) * | 2007-09-26 | 2013-10-15 | Charles A. Hasek | Methods and apparatus for content caching in a video network |
US9167007B2 (en) * | 2008-06-06 | 2015-10-20 | Amazon Technologies, Inc. | Stream complexity mapping |
US7860002B2 (en) * | 2008-07-15 | 2010-12-28 | Motorola, Inc. | Priority-based admission control in a network with variable channel data rates |
US20110191446A1 (en) * | 2010-01-29 | 2011-08-04 | Clarendon Foundation, Inc. | Storing and streaming media content |
US9832540B2 (en) * | 2010-12-15 | 2017-11-28 | Hulu, LLC | Method and apparatus for hybrid transcoding of a media program |
US20120195362A1 (en) * | 2011-02-02 | 2012-08-02 | Alcatel-Lucent Usa Inc. | System and Method for Managing Cache Storage in Adaptive Video Streaming System |
US20150026749A1 (en) * | 2012-02-16 | 2015-01-22 | Anevia | Method and system for multimedia content distribution |
US9392304B2 (en) * | 2012-02-29 | 2016-07-12 | Hulu, LLC | Encoding optimization using quality level of encoded segments |
US8806529B2 (en) * | 2012-04-06 | 2014-08-12 | Time Warner Cable Enterprises Llc | Variability in available levels of quality of encoded content |
US9924164B2 (en) * | 2013-01-03 | 2018-03-20 | Disney Enterprises, Inc. | Efficient re-transcoding of key-frame-aligned unencrypted assets |
CN105336844B (zh) * | 2014-07-23 | 2018-10-02 | 清华大学 | 电热致动器的制备方法 |
-
2015
- 2015-05-04 US US14/703,366 patent/US20160073106A1/en not_active Abandoned
- 2015-08-19 CN CN201580039213.8A patent/CN106537923B/zh active Active
- 2015-08-19 WO PCT/US2015/045862 patent/WO2016039956A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6637031B1 (en) * | 1998-12-04 | 2003-10-21 | Microsoft Corporation | Multimedia presentation latency minimization |
CN102301710A (zh) * | 2009-01-29 | 2011-12-28 | 微软公司 | 使用用于自适应视频流传输的可变比特率和动态分辨率的多比特率视频编码 |
Also Published As
Publication number | Publication date |
---|---|
US20160073106A1 (en) | 2016-03-10 |
CN106537923A (zh) | 2017-03-22 |
WO2016039956A1 (en) | 2016-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106537923B (zh) | 自适应视频流的技术 | |
TWI511544B (zh) | 用於可調適視訊串流之技術 | |
US20220030244A1 (en) | Content adaptation for streaming | |
US9071841B2 (en) | Video transcoding with dynamically modifiable spatial resolution | |
CN102172020B (zh) | 用于发送视频的方法和设备 | |
AU2017203764B2 (en) | Systems and Methods for the Reuse of Encoding Information in Encoding Alternative Streams of Video Data | |
TWI596933B (zh) | 用於快速切換的編碼解碼器技術 | |
JP5490146B2 (ja) | 適応ビデオ・ストリーミングのための可変ビット・レートおよび動的解像度を用いた多ビット・レート・ビデオ・エンコーディング | |
US9313529B2 (en) | Video streaming | |
US20130304934A1 (en) | Methods and systems for controlling quality of a media session | |
US20070280349A1 (en) | Scalable rate control system for a video encoder | |
EP2577489A1 (en) | Method and apparatus for adapting media | |
CN106961603A (zh) | 帧内编码帧码率分配方法和装置 | |
Nguyen et al. | A client-based adaptation framework for 360-degree video streaming | |
CN113852824A (zh) | 视频转码方法、装置、电子设备和存储介质 | |
WO2014066975A1 (en) | Methods and systems for controlling quality of a media session | |
CN106134202B (zh) | Mmt资产和具有包含多个qoe操作点的改进的mmt qos描述符的isobmff的增强的失真信令 | |
Kobayashi et al. | A real-time 4K HEVC multi-channel encoding system with content-aware bitrate control | |
Yang et al. | Power-aware adaptive video streaming from the set-top-box to mobile devices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |