CN104956683B - 用于流式传输视频的自适应降噪引擎 - Google Patents
用于流式传输视频的自适应降噪引擎 Download PDFInfo
- Publication number
- CN104956683B CN104956683B CN201480006049.6A CN201480006049A CN104956683B CN 104956683 B CN104956683 B CN 104956683B CN 201480006049 A CN201480006049 A CN 201480006049A CN 104956683 B CN104956683 B CN 104956683B
- Authority
- CN
- China
- Prior art keywords
- video
- stream transmission
- stream
- application
- transmission 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
- 230000009467 reduction Effects 0.000 title abstract description 79
- 230000003044 adaptive effect Effects 0.000 title abstract description 16
- 230000005540 biological transmission Effects 0.000 claims abstract description 118
- 241000255925 Diptera Species 0.000 claims abstract description 14
- 230000004044 response Effects 0.000 claims abstract description 14
- 230000015654 memory Effects 0.000 claims description 51
- 239000012634 fragment Substances 0.000 claims description 6
- 230000006872 improvement Effects 0.000 abstract description 3
- 238000000034 method Methods 0.000 description 16
- 238000004891 communication Methods 0.000 description 13
- 239000004065 semiconductor Substances 0.000 description 11
- 230000002708 enhancing effect Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000003780 insertion Methods 0.000 description 9
- 230000037431 insertion Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 238000005538 encapsulation Methods 0.000 description 7
- 238000007906 compression Methods 0.000 description 5
- 230000006835 compression Effects 0.000 description 5
- 230000006837 decompression Effects 0.000 description 5
- 230000033001 locomotion Effects 0.000 description 5
- 241000283973 Oryctolagus cuniculus Species 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000015556 catabolic process Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 230000005611 electricity Effects 0.000 description 2
- 230000001965 increasing effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000000523 sample Substances 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 244000283207 Indigofera tinctoria Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 210000003127 knee Anatomy 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 239000002159 nanocrystal Substances 0.000 description 1
- 239000002071 nanotube Substances 0.000 description 1
- 229920000642 polymer Polymers 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 230000008929 regeneration Effects 0.000 description 1
- 238000011069 regeneration method Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/86—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
-
- 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 or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream 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 or manipulating encoded video stream 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
- 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
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/117—Filters, e.g. for pre-processing or post-processing
-
- 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
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
-
- 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
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
-
- 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
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/154—Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
-
- 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
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/172—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
-
- 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/84—Generation or processing of descriptive data, e.g. content descriptors
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Picture Signal Circuits (AREA)
Abstract
一种自适应视频降噪(AVNR)引擎降低流式传输视频中的噪声。该引擎读取流式传输视频中描述视频的属性的嵌入信息,诸如流式传输视频的比特率、帧速率、分辨率、内容类型和质量。可将该信息包括在流式传输视频的清单中。基于视频属性,引擎向降低流式传输视频的噪声的应用输出一个或多个输入值。所述一个或多个应用可响应于来自引擎的输入值而降低视频的蚊式、块状、瞬时、随机和条带噪声。
Description
背景技术
流式传输视频常常包括各种类型的噪声,诸如蚊式、块状、瞬时、条带和/或随机噪声。存在用以降低流式传输视频中的各种类型的噪声的许多方法。可通过用户在显示器或计算设备的视频菜单中开启或关闭特定应用来启用或禁用用以降低噪声的方法。一旦启用了该应用,则降噪应用典型地在判定如何降低噪声时依赖于图像分析。
虽然用以降低噪声的应用能够改善流式传输视频的质量,但该方法还能够通过使图像中的细节平滑化来使视频的质量降级。这可能在应用将细节与噪声混淆时发生,其在用以降低噪声的某些应用中是典型的。例如,在具有高比特率的流式传输视频上使用的降噪应用典型地通过使细节平滑化来使图像降级。
发明内容
一种自适应视频降噪(AVNR)引擎降低流式传输视频中的噪声。该引擎读取流式传输视频中的描述流式传输视频的属性的嵌入信息,诸如比特率、帧速率、分辨率、内容类型和质量。可将该信息包括在流式传输视频的清单中。基于流式传输视频的属性,引擎向降低流式传输视频的噪声的应用输出一个或多个输入值。一个或多个应用可响应于来自引擎的输入值而降低流式传输视频的蚊式、块状、瞬时、随机和条带噪声。
方法实施例包括接收表示视频的多个比特并根据所述多个比特中指示属性的值来确定视频的至少一个属性。选择至少第一值并作为输入而输出到至少第一应用以降低视频中的噪声。
装置实施例包括一个或多个处理器可读存储器。应用被存储在一个或多个处理器可读存储器中并具有处理器可读指令以响应于第一输入而降低流失传输视频中的第一类型的噪声。第二应用也被存储在一个或多个处理器可读存储器中并具有处理器可读指令以响应于第二输入而降低流式传输视频中的第二类型的噪声。自适应引擎也被存储在一个或多个处理器可读存储器中并包括处理器可读指令,其在被一个或多个处理器执行时读取表示流式传输视频的属性的流式传输视频中的至少第一代码。该自适应引擎输出第一和第二输入,因此由一个或多个处理器执行的第一和第二应用降低流式传输视频中的第一和第二类型的噪声。
在另一实施例中,一个或多个处理器可读存储器包括在被执行时使一个或多个处理器执行用以降低流式传输视频中的噪声的方法的指令。该方法接收包括至少第一代码的流式传输视频并读取第一代码。对用于具有处理器可读指令的第一应用的至少第一输入值做出确定,以降低流式传输视频中的第一类型的噪声。对用于具有处理器可读指令的第二应用的至少第二输入值做出确定,以降低流式传输视频中的第二类型的噪声。第一和第二输入值被输出到第一和第二应用。
本发明内容被提供来以简化形式介绍下面在详细描述中进一步描述的概念的选择。本发明内容并不意图识别要求保护的主题的关键特征或必要特征,也不意图用来帮助确定要求保护的主题的范围。
附图说明
图1是向具有自适应视频降噪引擎的计算设备提供流式传输视频的装置的高级框图。
图2图示出具有不同的比特率的多个比特流。
图3图示出在具有自适应视频降噪引擎的计算设备中的流式传输视频和控制流程。
图4是自适应视频降噪引擎的高级硬件框图。
图5A-B是操作自适应视频降噪引擎的流程图。
图6是具有自适应视频降噪引擎的计算设备的高级硬件框图。
图7是示例性游戏和媒体系统的等角视图。
图8是游戏和媒体系统的部件的示例性功能框图。
图9图示出网络可访问的计算设备的一个实施例的框图。
具体实施方式
通过基于嵌入流式传输视频中的信息来改变应用于流式传输视频的降噪量而改善流式传输视频的质量。用以降低流式传输视频中的噪声量的降噪应用的类型包括蚊式、块状、瞬时、随机和条带。嵌入流式传输视频中的信息可包括流式传输视频的比特率、分辨率、内容类型以及质量。
可通过使用嵌入信息来自适应地控制特定降噪应用的强度(或量)和/或使用而改善每个降噪应用的功能性。在视频流的预定片段或块处进行对特定降噪应用的强度和/或使用的调整。计算设备可在每个预定片段之后以不同的比特率接收不同的比特流。
在流式传输视频重放期间,计算设备知道当前正在从提供多个比特流的视频流式传输服务器播放哪些比特流。嵌入比特流中的质量指示符也是可用的,其是在编码时创建的。并且,嵌入的元数据描述了正在播放的内容的类型,诸如体育、戏剧或动画。通过使用此嵌入信息,自适应地调整选择的降噪应用的强度和/或使用。对于具有较低比特率流的流式传输视频而言,可增加选择的降噪应用的强度。在实施例中,随着较低比特率被切换至较高比特率流,在流式传输视频的预定片段上,可减小降噪应用的强度。在另一实施例中,降噪应用在接收到具有最高比特率的视频比特流时将被禁用,使得将不会使图像质量降级。
图1是向具有自适应视频降噪(AVNR)引擎109的计算设备107提供流式传输视频的装置100的高级框图,所述自适应视频降噪(AVNR)引擎降低接收到的流式传输视频中的噪声。在实施例中,视频服务器101向可以是视频服务器101的客户端的计算设备107提供流式传输媒体,包括流式传输视频103和对应的流式传输音频。
类似地,计算设备110向计算设备107提供流式传输媒体,包括流式传输视频111和对应的音频。在实施例中,计算设备110和107是对等点,并且在实施例中同样地传输流式传输视频。在计算设备107和110的对等(P2P)实施例中,每个计算设备可充当另一个的客户端或服务器。
并且,在实施例中,还可从不使用网络105的计算设备107的本地源提供流式传输视频。
在替换实施例中,装置100包括更多或更少的计算设备和/或服务器以产生和接收流式传输视频。在实施例中,视频服务器101、计算设备110和/或计算设备107对应于具有在图9中示出的且如本文所描述的特定硬件部件的计算设备1800。
在实施例中,将计算设备107包括在视频游戏控制台和/或媒体控制台中。在替换实施例中,可将计算设备107包括在至少蜂窝电话、移动设备、嵌入式系统、媒体控制台、膝上型计算机、台式计算机、服务器和/或数据中心中。
诸如流式传输视频和/或音频之类的流式传输媒体是多个比特,其在实施例中表示通过计算网络发射以用于由计算设备重放而不是下载以供稍后(离线)重放的视频和音频信息。在实施例中,流式传输媒体可被捕获、编码并压缩以用于传输,并且然后被解压缩和解码以用于观看。流式传输媒体可包括描述流式传输视频的属性的嵌入信息或代码和元数据。流式传输视频属性可包括流派(或内容的类型)、质量、帧速率、比特率和/或分辨率。在实施例中,包括在流式传输视频中的内容的类型可包括戏剧、体育(实况动作)或动画。
流式传输视频103和111经由网络105分别从视频服务器101和计算设备110中的流式传输视频生成器102和111提供给计算设备107。在实施例中,网络105可以单个地或以组合方式是因特网、广域网(WAN)或局域网(LAN)。在实施例中,将计算设备107包括在另一网络中。可在网络105中有线地和/或无线地传输流式传输视频103和111。在实施例中,使用超文本传输(或传送)协议(HTTP)来传输流式传输视频103和111。
在实施例中,流式传输视频生成器102和111捕获视频、将其编码并压缩成经由网络105传输并被计算设备107解码的多个比特。在实施例中,可使用实施例中的不同方法将视频压缩(并最后在传输之后解压缩)。例如,在实施例中可使用游程编码(RLE)、Indeo、Cinepak和运动图片专家组(MPEG)压缩/解压缩方法。在实施例中,流式传输视频生成器102和/或111将视频压缩成运动图片专家组(MPEG)格式以用于传输。在MPEG-n格式中,将视频数据压缩以形成可以容易地发射且然后解压缩的小比特。MPEG通过存储从一个帧到另一个帧的变化而不是每个完整的帧来实现高压缩速率。然后使用离散余弦变换(DCT)对视频信息进行编码。MPEG使用一种有损压缩,因为某些数据被移除,但是可如本文所描述的在流式传输视频中引起噪声。
在替换实施例中,流式传输视频生成器102和111可使用电影与电视工程师学会(SMPTE)421M(也称为VC-1)解压缩/解压缩方法来输出视频。
可使用不同的比特流来传输流式传输媒体且特别是流式传输视频和音频,所述比特流具有可在流式传输视频的片段处切换的(同一视频的)不同比特率。替换地,可使用具有多比特率的单个比特流来传输流式传输视频。在实施例中,比特流是比特的时间系列或序列。在实施例中,比特率是每单位时间传送或处理的比特数。
图2图示出在实施例中可由视频服务器101传输的具有不同比特率的多个比特流201-207。在实施例中,视频服务器101以各种比特率提供多个比特流201-207。例如,视频服务器101能够提供处于每秒20兆比特(20 Mbps)的比特流201(或多个比特)以及其它比特流202-207,每个处于较小的比特率。使用比特流208来传输音频信息。
在实施例中,每个比特流201-207分别地包括嵌入信息或已编码代码201a-207a,其识别流式传输视频的属性。在实施例中,每个比特流201-207还包括嵌入元数据信息。
视频服务器101动态地监视计算设备107的本地带宽和视频再现性能,并且通过实时地切换视频质量或比特流来优化内容重放。视频服务器101将如图2中所示的比特流中的预定量的比特或小内容片段传送至计算设备107,并且验证每个片段已在适当时间内到达并以预期质量水平重放。当一个片段不满足这些要求时,传送的下一片段将处于略微较低质量水平或较低比特率。替换地,后续片段的质量在条件改变时将处于较高水平或较高比特率。在实施例中,每个片段是价值固定或变化时间间隔的视频。在实施例中,图2中的间隔220a-220d图示出价值定义片段1-4的时间间隔的视频。在实施例中,时间间隔是价值2秒的视频。
在实施例中,使用压缩方法在多个质量水平上对同一源内容或视频进行编码。可将用于处于相应质量水平的每个已压缩视频的视频文件存储在视频服务器101中并用来提供所述多个比特流201-207。在实施例中,在视频服务器101从计算设备107接收到针对流式传输媒体的请求之后,视频服务器101将从视频文件动态地创建可高速缓存的虚拟片段,并将最佳可能的流式传输视频传送到客户端计算设备107。
具有高带宽连接和现代计算设备的观看者典型地可以体验到全HD 1080p质量流式传输媒体,而具有较低带宽和/或较旧计算设备的其它观看者接收适合于其能力的比特流。
在实施例中,计算设备107将流式传输视频103和/或111解压缩,并使用AVR引擎109以及其它软件部件和硬件将视频再现给显示器。如本文所描述,AVRN引擎109移除可能已由特定压缩方法或其它噪声源引起的所显示的流式传输视频中的各种类型的噪声。
图3图示出实施例中的如图1中所示的具有AVNR引擎109的计算设备107中的流式传输视频和控制流程。诸如流式传输视频103或111之类的流式传输视频被从网络105输入到视频管线301中。在替换实施例中,流式传输视频被本地存储在计算设备107上并输入到视频管线310。在实施例中,流式传输视频被输入到视频管线301,其可包括嵌入信息,诸如可包括或者可不包括质量指示符值以及流式传输视频的其它属性的图2中所示的嵌入代码201n。在实施例中,视频管线301是一个或多个软件部件,其包括解码器以将表示流式传输视频中的视频和音频的已压缩的多个比特解压缩。
在实施例中,软件部件可包括处理器/机器可读指令,其在被一个或多个处理器执行时执行一个或多个功能。在实施例中,软件部件可单个地或以组合方式包括软件程序、软件对象、软件函数、软件子例程、软件方法、软件实例、脚本或代码片段。在实施例中,应用或应用软件程序可包括一个或多个软件部件。在实施例中,应用使用计算设备的操作系统和/或其它支持应用的服务。
视频管线301还包括软件部件以处理已解码的流式传输视频或将其变换成具有特定分辨率的视频帧给视频再现器302。可将视频帧存储在被传递至视频再现器302的视频文件中。在实施例中,视频管线310还将流式传输视频中的嵌入代码解码并输出关于流式传输视频的属性的信息,其可包括质量值,诸如图5中所示的质量指示符值512。在实施例中,视频管线310还将来自流式传输视频的元数据解码并输出元数据信息。在实施例中,视频再现器302是处理视频文件并顺序地将文件发送到视频显示硬件的软件部件。例如,视频再现器302经由视频驱动器303向诸如GPU 305之类的视频硬件提供视频帧,使得视频显示硬件可在计算设备中的显示器上显示视频。视频再现器的示例包括SVR、VMR-7、增强型视频再现器、VMR9 Renderless和Haali的再现器。
在实施例中,视频驱动器303是允许诸如视频再现器302之类的图形模式应用使用GPU 305来显示具有选择的分辨率和色彩数目的视频帧的软件部件。在实施例中,操作系统还可使用视频驱动器来提供视频帧。
在实施例中,AVNR引擎109是包括在视频再现器302中的软件部件,其向可配置降噪304、另一软件部件提供一个或多个输入。可配置降噪304包括一个或多个视频降噪应用,其降低正在由视频再现器302处理的视频帧中的各种类型的视频噪声。在实施例中,可配置降噪304包括如图4中所示的蚊式410、块状411、瞬时412、随机413和条带414软件部件,其每个响应于来自AVNR引擎109的输入而降低视频帧中的视频噪声。在实施例中,AVNR向降噪软件部件中的一个或多个提供自适应输入以基于流式传输视频的嵌入属性信息而降低流式传输视频中的视频噪声。
在替换实施例中,可在硬件设备、集成电路和/或逻辑中实现AVNR引擎109和/或可配置降噪304。例如,在替换实施例中,GPU 305中的可配置降噪305a执行可配置降噪304的功能。视频驱动器303向AVNR引擎109提供接口以使用可配置降噪305a。基于由AVNR引擎109提供的输入,视频驱动器303在GPU 305且特别是降噪305a中加载不同的降噪着色器代码并设定参数,诸如针对特定类型的降噪的强度。在实施例中,然后由GPU 305来执行降噪滤波代码。
图4图示出接收关于流式传输视频的属性信息(诸如在代码201a中的)的AVNR引擎109的高级框图。AVNR引擎109还向可配置降噪304中的降噪软件应用输出一个或多个自适应输入。在实施例中,从流式传输媒体中的嵌入代码检索流式传输视频的属性,诸如内容值511、质量指示符值512、帧速率值513、比特率值514和分辨率值515。在实施例中,可从嵌入信息或代码检索更多或更少的属性值。在实施例中,可从流式传输视频的元数据获得一个或多个属性值并输入到AVNR引擎109中。在实施例中,一个或多个属性值包括多比特值或代码。
质量指示符值512是在生成期间分配给流式传输视频的指示流式传输视频的质量且可被AVNR引擎109使用的值。
内容值511、质量指示符值512、帧速率值513、比特率值514和分辨率值515分别被输入到AVNR引擎109的基于内容的选择器501、基于质量的强度选择器502、基于帧速率的强度检测器50、基于比特率的强度选择器504和基于分辨率的强度选择器505。在替换实施例中,流式传输视频的属性值可能对于AVNR引擎109是不可用的。当特定属性值不可用时,相应的选择器使用选择器中的默认值。在另外的实施例中,可在AVNR引擎109中使用其它属性值和相应的选择器。
特别地,内容值511被输入到基于内容的选择器501,其向也接收质量指示符值512的基于质量的强度选择器502输出选择的内容值。基于质量指示符值512和来自基于内容的选择器501的选择的内容值,基于质量的强度选择器502向基于帧速率的强度选择器503输出选择的质量值。基于帧速率值513和来自基于质量的强度选择器501的选择的质量值,基于帧的强度选择器503向基于比特率的强度选择器504输出选择的帧速率值。基于比特率值514和来自基于帧速率的强度选择器503的选择的帧速率值,基于比特率的强度选择器504向基于分辨率的强度选择器505输出选择的比特率值。基于分辨率值515和来自基于比特率的强度选择器504的选择的比特率值,基于分辨率的强度选择器505向可配置降噪304中的特定降噪应用输出输入值。
在实施例中,AVNR引擎109的每个选择器向下一选择器输出值,直至最终选择器输出针对可配置降噪304中的一个或多个降噪应用的输入值为止。在实施例中,在可配置降噪304中的每个降噪应用的AVNR引擎109中使用选择器501-505的集合。例如,可使用选择器501-505来输出针对蚊式410的输入值;同时,另一类似组的选择器接收相同的属性值并输出针对块状411的不同输入值,其降低与由蚊式410降低的视频噪声不同类型的视频噪声。
在实施例中,每个选择器501-505包括基于特定输入而提供输出的查找表。在替换实施例中,每个选择器与复用器类似地操作。
在实施例中,AVNR 109的输出指示是否启用(或开启)可配置降噪304中的特定降噪应用以降低特定类型的视频噪声和/或将由特定降噪应用施加于流式传输视频中的视频帧的量(或强度)。在实施例中,AVNR 109的输出可以是多比特值,其中,零指示特定降噪应用被禁用,并且范围内的正值指示要在其处应用特定降噪应用的强度。
例如,体育内容常常包含比例如戏剧内容更快的运动。因此,在其中计算设备107正在以相对低的比特率接收体育流式传输视频的实施例中,相比于在计算设备107正在以该比特率接收戏剧或电影作为流式传输视频时,AVNR 109可向特定降噪应用输出更强或更大的输入值。
类似地,具有24p的帧速率的流式传输视频典型地比具有30p或60p的流式传输视频将具有更少的运动。因此,在实施例中,AVNR 109将在接收到具有较高帧速率的流式传输视频时相比于以较低帧速率接收其它流式传输视频而向特定降噪应用输出更强或更大的输入值。
替换地,当以足够大的比特率接收流式传输视频时,AVNR 109可通过向相应降噪应用输出适当的输入值来禁用所有或选择的降噪应用。
可配置降噪304可包括一个或多个应用以降低流式传输视频中的不同类型的视频噪声。在实施例中,可将例如增强流式传输视频中的视频帧的其它类型的应用(诸如细节增强应用)包括在可配置降噪304中并从AVNR 109接收输入。
在实施例中,蚊式降噪(蚊式)410是降低在流式传输视频的视频帧中的对象的清晰边缘附近出现的失真或噪声的应用或滤波器。蚊式噪声可作为对象的清晰边缘附近的随机混叠而出现。在实施例中,视频可能已用离散余弦变换(DCT)进行压缩。蚊式噪声可在解压缩期间在解码必须通过对DCT模型进行反转(invert)来近似已丢弃数据时发生。随着显示器变得更大,蚊式噪声及其它视频噪声可变得更显著。
在实施例中,块状降噪(块状)411是降低流式传输视频的视频帧中的马赛克状块的应用或滤波器。块状噪声也可称为绗缝或棋盘。在快速运动场景中可看到块状噪声。
在实施例中,瞬时降噪(瞬时)412是通过分析来自流式传输视频的不同视频帧的像素来降低视频噪声的应用或滤波器。在实施例中,运动补偿方法可以被使用来通过将来自数个帧的像素混合在一起而移除幻影伪像。
在实施例中,随机降噪(随机)413是降低流式传输视频的视频帧中的随机噪声的应用或滤波器。
在实施例中,条带降噪(条带)414(也称为色带降噪)是修正流式传输视频中的视频帧(诸如动画中的计算机图形)中的不准确色彩呈现的应用或滤波器。例如,在24比特色彩模式下,每个通道8比特典型地足以在全可见光谱中再现图像。然而,在某些情况下,可产生相同色彩的阴影之间的变化。例如,显示自然梯度(例如日落、黎明或清澈的蓝天)可以显示出微小的色带。色带典型地更多地以16-256个色彩下的相对低的每像素比特(BPP)(4-8BPP)出现,其中并不是每个阴影都能显示,因为用以表示它们的比特不足。在实施例中,条带414引入抖动和/或增加每个色彩通道的比特数以降低条带噪声。
在实施例中,如图6中所示的细节增强420在应用可配置降噪304中的一个或多个应用来降低噪声之后向正在由视频再现器302处理的视频帧提供细节。可配置降噪304中的一个或多个应用可降低视频帧中的噪声以及某些细节。细节增强420包括一个或多个应用,其尝试向视频帧添加可能已被可配置降噪304降低或消除的细节。
在实施例中,细节增强420是从AVNR引擎109接收输入(诸如应用于视频帧的细节增强的量)的软件部件。在实施例中,对视频帧的细节增强的量是基于从AVNR引擎109提供给可配置降噪304的输入的。例如,当AVNR引擎109向可配置降噪304提供指示将降低相对大量的噪声的输入时,AVNR引擎109将向细节增强420提供输入以向视频帧提供相对大量的细节增强以补偿降噪。在实施例中,AVNR引擎109并不向细节增强304提供输入。
在替换实施例中,由集成电路和/或硬件部件(诸如GPU 404)来执行细节增强304。
图5A-B是操作自适应视频降噪引擎、诸如图4中所示的AVRN 109的流程图。在实施例中,图5A-B中所示的步骤表示硬件(例如,处理器、存储器、电路)、软件(例如,操作系统、应用、引擎、驱动器、机器/处理器可执行指令)或用户的单个地或以组合方式的操作 。如本领域的技术人员将理解的,实施例可包括更少或更多所示的步骤。在各种实施例中,可顺序地、并行地或按照与所示的不同顺序来完成所示步骤。
步骤600图示出接收包括表示视频的多个比特的流式传输视频。在实施例中,流式传输视频包括指示流式传输视频的一个或多个属性的嵌入信息或代码。在实施例中,视频管线301接收流式传输视频。在替换实施例中,包括AVNR引擎209的视频再现器302接收流式传输视频。
步骤601表示获得指示流式传输视频中的内容的类型的内容值。在实施例中,将内容值作为代码嵌入流式传输视频中。在替换实施例中,可从嵌入流式传输视频中的元数据获得内容值。在实施例中,可如图4中所示的由内容值511来指示流式传输媒体的内容。流式传输媒体的内容可包括体育、戏剧、动画或其它类型的内容。在实施例中,内容值在被传输到AVNR引擎之前被存储在临时存储器中。
步骤602表示获得指示流式传输视频中的质量的类型的质量值。在实施例中,将质量值作为代码嵌入流式传输视频中并在视频的编码期间被插入。在实施例中,可如图4中所示的由质量指示符值512来指示流式传输视频的质量。在实施例中,质量指示符值在被传输到AVNR引擎之前被存储在临时存储器中。
步骤603表示获得指示流式传输视频的帧速率的帧速率值。在实施例中,可如图4中所示的由帧速率值513来指示流式传输视频的帧速率。在实施例中,帧速率值在被传输到AVNR引擎之前被存储在临时存储器中。
步骤604表示获得指示流式传输视频的比特率的比特率值。在实施例中,可如图4中所示的由比特率值514来指示流式传输视频的比特率。在实施例中,比特率值在被传输到AVNR引擎之前被存储在临时存储器中。在实施例中,比特率值对应于流式传输视频的片段,并且不同的片段可具有不同的比特率。
步骤605表示获得指示流式传输视频的分辨率的分辨率值。在实施例中,可如图4中所示的由分辨率值515来指示流式传输视频的分辨率。在实施例中,分辨率值在被传输到AVNR引擎之前被存储在临时存储器中。
步骤606图示出选择将在流式传输视频上使用的降噪应用。在实施例中,响应于流式传输视频的属性值,可选择如图4中所示的可配置降噪304中的一个或多个降噪应用以从AVNR引擎接收输入值。
图607图示出响应于内容值而选择针对选择的降噪应用的输入值。在实施例中,基于内容的选择器501在AVNR引擎109中执行此功能。当内容值不可用时,由基于内容的选择器501选择默认值。
步骤608图示出响应于质量值和基于内容的输入值而选择针对选择的降噪应用的输入值。在实施例中,基于质量的强度选择器502在AVNR引擎109中执行此功能。当质量指示符值不可用时,由基于质量的强度选择器502来选择默认值。
步骤609图示出响应于帧速率值和基于内容和质量的输入值来选择针对选择的降噪应用的输入值。在实施例中,基于帧速率的强度选择器503在AVNR引擎109中执行此功能。当帧速率不可用时,由基于帧速率的强度选择器503选择默认值。
步骤610图示出响应于比特率值和基于内容、质量和帧速率的输入值而选择针对选择的降噪应用的输入值。在实施例中,基于比特率的强度选择器504在AVNR引擎109中执行此功能。当比特率值不可用时,由基于比特率的强度选择器504选择默认值。
步骤611图示出响应于分辨率值和基于内容、质量、帧速率和比特率的输入值而选择针对选择的降噪应用的输入值。在实施例中,基于分辨率的强度选择器505在AVNR引擎109中执行此功能。当分辨率不可用时,由基于分辨率的强度选择器505选择默认值。
步骤612图示出响应于流式传输视频的属性值而从诸如AVNR引擎109之类的AVNR引擎输出输入值。在实施例中,基于分辨率的强度选择器505向选择的降噪应用输出输入值。该输入值可指示要应用的降噪的强度或量或者禁用选择的降噪应用。
图613图示出确定任何其它降噪应用是否可用于在流式传输视频上使用。当其它降噪应用可用时,控制转移回到步骤606,其中可重复步骤607至612。否则,在实施例中,引擎的操作被暂停或等待进一步处理。
在实施例中,计算设备107包括如图6中所示的SoC(也称为SOC)401。SoC是集成电路IC,其将计算设备或其它电子系统的部件集成到单个芯片或半导体基底中。在实施例中,SoC 401包括存储器402、以及处理器403、GPU 404和信号路径406。在替换实施例中,可用单个处理器核来替换处理器403和GPU 404。替换地,可在SoC 401中包括其它处理器核。在替换实施例中,不使用SoC。
在实施例中,存储器402存储AVNR 109和可配置降噪304,可配置降噪304包括蚊式410、块状411、瞬时412、随机413和条带414软件部件。在实施例中,存储在存储器402中的软件部件中的一个或多个可被GPU 404和/或处理器403执行或读取以降低流式传输视频中的视频噪声。(一个或多个)处理器核还可包括控制器、中央处理单元(CPU)、GPU、数字信号处理器(DSP)和/或现场可编程门阵列(FPGA)。
GPU典型地是能够帮助诸如CPU之类的处理器执行复杂再现计算的集成电路。在实施例中,一个或多个视频再现软件部件也被存储在存储器402中并由GPU 404和/或处理器403执行。
如本领域的技术人员将认识到的,还可在SoC 401中包括其它电子部件。SoC 401可在单个半导体基底上包括一个或多个数字、模拟、混合信号和/或射频电路。SoC 401可包括振荡器、锁相环、计数器-定时器、实时定时器、加电复位生成器、外部接口(例如,通用串行总线(USB)、IEEE 1394接口(火线)、以太网、通用异步接收机/发射机(USART)和串行外围总线(SPI))、模拟接口、调压器和/或功率管理电路。
在替换实施例中,可用系统级封装(SiP)或封装叠加(PoP)来替换SoC 401。在SiP中,将多个芯片或半导体基底容纳在单个封装中。在SiP实施例中,(一个或多个)处理器核将在一个半导体基底上,并且存储器402将在第二半导体基底上,两者都被容纳在单个封装中。在实施例中,第一半导体基底将通过引线结合而被耦合到第二半导体基底。
在PoP实施例中,(一个或多个)处理器核将是在容纳在第一封装中的一个半导体晶片(die)上,并且存储器402将是在容纳在第二不同封装中的第二半导体晶片上。然后可以将第一和第二封装以标准接口堆叠以在封装、特别是晶片之间路由信号。然后可将堆叠的封装耦合到印刷电路板。在实施例中,存储器402位于(一个或多个)处理器核的上面。
在实施例中,存储器402可表示一个或多个处理器可读存储器。在实施例中,存储器402可以是宽I/O DRAM。替换地,存储器402可以是低功率双倍数据速率3动态随机存取存储器(LPDDR3 DRAM)存储器(也称为低功率DDR、移动DDR(MDDR)或mDDR)。在实施例中,存储器402可以是不同类型的存储器的组合。
在实施例中,存储器402包括设置在半导体基底上的IC中的存储器单元的一个或多个阵列。在实施例中,将存储器402包括在容纳于与(一个或多个)处理器核分开封装的设备中的集成单片电路中。在实施例中,存储器402可包括易失性和/或非易失性存储器。
易失性存储器的类型至少包括动态随机存取存储器(DRAM)、基于分子化电荷(ZettaCore)的DRAM、浮体DRAM和静态随机存取存储器(“SRAM”)。特定类型的DRAM包括双倍数据速率SDRAM(“DDR”)或后生代SDRAM(例如,“DDRn”)。
非易失性存储器的类型至少包括电可擦编程只读存储器(“EEPROM”)、FLASH(包括NAND和NOR FLASH)、ONO FLASH、磁抗或磁RAM(“MRAM”)、铁电RAM(“FRAM”)、全息媒体、双向/相变、纳米晶体、纳米管RAM(NRAM-Nantero)、MEMS扫描探测系统、MEMS悬臂开关、聚合物、分子、纳米浮栅和单电子的类型。
在实施例中,信号路径406(以及本文所描述的其它信号路径)是传输信号的媒体,诸如单个地或以组合方式的互连、传导元件、接点、引脚、半导体基底中的区域、导线、金属迹线/信号线或光电导体。在实施例中,多个信号路径可替换图中所示的单个信号路径,并且单个信号路径可替换图中所示的多个信号路径。在实施例中,信号路径可包括总线和/或点到点连接。在实施例中,信号路径包括控制和数据信号线以载送控制和数据信息以及定时信息。在替换实施例中,信号路径包括数据信号线或控制信号线。在其它的实施例中,信号路径是单向的(在一个方向上行进的信号)或双向的(在两个方向上行进的信号)或两个单向信号线的组合。
在实施例中,计算设备107可以是但不限于视频游戏控制台和/或媒体控制台。现在将使用图7来描述示例性视频游戏和媒体控制台,或者更一般地将使用来描述包括游戏和媒体控制台的示例性游戏和媒体系统1000。图7的以下讨论意图提供本文提出的概念可用其来实现的适当计算设备的简要、一般性的描述。应理解的是,图7的系统仅仅是作为示例。在另外的示例中,可使用多种客户端计算设备、经由常驻在客户端计算设备上并由其执行的浏览器应用或软件应用来实现本文所描述的实施例。如图7中所示,游戏和媒体系统1000包括游戏和媒体控制台(在下文中为“控制台”)1002。一般地,控制台1002是客户端计算设备的一个类型。控制台1002被配置成容纳一个或多个无线控制器,如控制器10041和10042所表示的。控制台1002装配有内部硬盘驱动器和便携式媒体驱动器1006,其支持各种形式的便携式存储媒体,如光学存储盘1008所表示的。适当便携式存储媒体的示例包括蓝光盘(BD)、DVD、CD-ROM、游戏盘等。控制台1002还包括两个存储器单元卡插座10251和10252,用于接收可移除闪存式存储器单元1040。控制台1002上的命令按钮1035启用和禁用无线外围支持。
如图7中描绘的,控制台1002还包括用于与一个或多个设备无线地通信的光学端口1030和两个USB端口10101和10102以支持用于附加控制器或其它外围设备的有线连接。在某些实施方式中,可修改附加端口的数目和布置。电源按钮1012和弹出按钮1014也位于控制台1002的正面上。选择电源按钮1012以向游戏控制台施加功率,并且还可以提供对其它特征和控件的访问,并且弹出按钮1014替换地打开和闭合便携式媒体驱动器1006的托盘以使得能够插入和抽出光存储盘1008。
控制台1002经由A/V对接电缆1020而连接到电视或其它显示器(诸如显示器1050)。在一个实施方式中,控制台1002装配有专用A/V端口,其被配置用于使用A/V电缆1020(例如,适合于耦合到高清晰度显示器1050或其它显示设备上的高清晰度多媒体接口“HDMI”的A/V电缆)的内容安全数字通信。电源电缆1022向游戏控制台提供功率。控制台1002还可配置有如电缆或调制解调器连接器1024所表示的宽带能力以促进对网络(诸如因特网)的访问。该宽带能力也可以通过诸如无线保真(Wi-Fi)网络之类的宽带网被无线地提供。
每个控制器1004经由有线或无线接口被耦合到控制台1002。在所示实施方式中,控制器1004是USB兼容的,并且经由无线或USB端口1010而耦合到控制台1002。控制台1002可装配有多种用户交互机制中的任何一种。在图7中所示的示例中,每个控制器1004装配有两个拇指杆10321和10322、D垫1034、按钮1036以及两个触发器1038。这些控制器仅仅是代表性的,并且其它已知游戏控制器可以替代或被添加到图7中所示的那些。
在实施例中,用户可以经由手势、触摸或语音而向控制台1002键入输入。在实施例中,光学I/O接口1135接收并转换用户的手势。在另一实施例中,控制台1002包括自然用户接口(NUI)以从用户接收并转换语音和手势输入。在替换实施例中,前面板I/O子组件1142包括用于接收并转换用户的触摸或语音(诸如语音命令)的触摸表面和麦克风。
在一个实施方式中,还可将存储器单元(MU)1040插入控制器1004中以提供附加和便携式存储。便携式MU使得用户能够存储游戏参数以便当在其它控制台上玩游戏时使用。在此实施方式中,每个控制器被配置成容纳两个MU 1040,但也可采用多于或少于两个MU。
游戏和媒体系统1000一般地被配置用于播放存储在存储器介质上的游戏(诸如视频游戏)以及用于从电子和硬媒体源下载和播放游戏以及再生预先记录的音乐和视频。用不同的存储提供项,可以从硬盘驱动器、从光存储盘(例如,1008)、从在线源或者从MU 1040播放字幕。游戏和媒体系统1000能够播放的媒体的类型的样本包括:
从蓝光、CD和DVD盘、从硬盘驱动器或者从在线流式传输媒体源播放的游戏字幕。
从便携式媒体驱动器1006中的CD、从硬盘驱动器上的文件(例如,媒体格式的音乐)或者从在线流式传输媒体源播放的数字音乐。
从便携式媒体驱动器1006中的蓝光或DVD盘、从硬盘驱动器上的文件(例如,主动流式传输格式)或从在线流式传输源播放的数字音频/视频。
在操作期间,控制台1002被配置成从控制器1004接收输入并在显示器1050上显示信息。例如,控制台1002可以在显示器1050上显示用户接口以允许用户使用控制器1004来选择游戏并显示如下面讨论的状态可解性信息。
图8是游戏和媒体系统1000的功能框图,并且更详细地示出了游戏和媒体系统1000的功能部件。控制台1002具有CPU 1100以及存储器控制器1102,其促进处理器访问各种类型的存储器,包括闪速ROM 1104、RAM 1106、硬盘驱动器1108以及便携式媒体驱动器1006。在一个实施方式中,CPU 1100包括1级高速缓存1110和2级高速缓存1112,以临时地存储数据并因此降低对硬盘驱动器1108做出的存储器访问循环的数目,从而改善处理速度和吞吐量。在实施例中,CPU 1100和存储器控制器1102对应于处理器403和引擎109,同时在实施例中,RAM 1106对应于存储器102。
CPU 1100、存储器控制器1102以及各种存储器设备经由一个或多个总线而互连。在本实施方式中使用的总线的细节并未特别地与理解在本文中讨论的感兴趣的主题有关。然而,将理解的是,这样的总线可能包括使用多种总线架构中的任何一种的串行和并行总线、存储器总线、外围总线以及处理器或本地总线中的一个或多个。举例来说,这样的架构可以包括工业标准架构(ISA)总线、微通道架构(MCA)总线、增强ISA(EISA)总线、视频电子标准协会(VESA)本地总线以及外围部件互连(PCI)总线,也称为夹层总线。
在一个实施方式中,CPU 1100、存储器控制器1102、ROM 1104以及RAM 1106被集成到公共模块1114上。在本实施方式中,将ROM 1104配置为经由PCI总线和ROM总线(两者都未示出)连接到存储器控制器1102的闪速ROM。RAM 1106被配置为多个双倍数据速率同步动态RAM(DDR SDRAM)模块,其被存储器控制器1102经由单独的总线独立地控制。硬盘驱动器1108和便携式媒体驱动器1006被示为经由PCI总线和AT附加装置(ATA)总线1116连接到存储器控制器1102。然而,在其它实施方式中,还可以在替换方案中应用不同类型的专用数据总线结构。
三维图形处理单元1120和视频编码器1122、视频解码器1123形成用于高速和高分辨率(例如,高清晰度)图形处理的视频处理管线。数据被经由数字视频总线从图形处理单元1120载送到视频编码器1122和视频解码器1123。音频处理单元1124和音频编解码器(编码器/解码器)1126形成用于各种数字音频格式的多通道音频处理的对应音频处理管线。经由通信链路在音频处理单元1124与音频编解码器1126之间载送音频数据。视频和音频处理管线向A/V(音频/视频)端口1128输出数据以便传输到电视或其它显示器。在所示实施方式中,视频和音频处理部件1120-1128被安装在模块1114上。
在实施例中,CPU 1100、存储器控制器1102、ROM 1104、RAM 1106和图形处理单元1120被包括在SoC中,诸如图6中所示的SoC 401。
图8示出了包括USB主机控制器1130和网络接口1132的模块1114。USB主机控制器1130被示为经由总线(例如,PCI总线)与CPU 1100和存储器控制器1102通信,并充当针对外围控制器10041-10044的主机。网络接口1132提供对网络(例如,因特网、家庭网络等)的访问,并且可以是多种不同有线或无线接口部件中的任何一个,包括以太网卡、调制解调器、无线访问卡、蓝牙模块、电缆调制解调器等等。
在图8中所描绘的实施方式中,控制台1002包括用于支持四个控制器10041-10044的控制器支持子组件1140。控制器支持子组件1140包括任何硬件和软件部件以支持与外部控制设备(诸如例如媒体和游戏控制器)的有线和无线操作。前面板I/O子组件1142支持电源按钮1012、弹出按钮1014以及任何LED(发光二极管)或在控制台1002的外表面上暴露的其它指示器的多个功能性。子组件1140和1142经由一个或多个电缆组件1144与模块1114通信。在其它实施方式中,控制台1002可以包括附加的控制器子组件。所示实施方式还示出了被配置成发送和接收可以被传送至模块1114的信号的光学I/O接口1135。
MU 10401和10402分别地被示为可连接到MU端口“A”10301和“B”10302。附加MU(例如,MU 10403-10406)被示为可连接到控制器10041和10043,即对于每个控制器的两个MU。还可以将控制器10042和10044配置成接收MU。每个MU 1040提供可在其上面存储游戏、游戏参数以及其它数据的附加存储装置。在某些实施方式中,其它数据可以包括数字游戏部件、可执行游戏应用、用于扩展游戏应用的指令集以及媒体文件中的任何一个。在被插入控制台1002或控制器中时,存储器控制器1102可以访问MU 1040。
系统电源模块1150向游戏系统1000的部件提供功率。风扇1152冷却控制台1002内的电路。
包括处理器可读指令的应用1160被存储在硬盘驱动器1108上。当控制台1002被上电时,应用1160的各种部分被加载到RAM 1106和/或高速缓存1110和1112中以便在CPU1100上执行,其中,应用1160是一个这样的示例。可以将各种应用存储在硬盘驱动器1108上以便在CPU 1100上执行。
控制台1002还被示为包括通信子系统1170,其被配置成将控制台1002与一个或多个其它计算设备(例如,其它控制台)通信地耦合。通信子系统1170可包括与一个或多个不同通信协议兼容的有线和/或无线通信设备。作为非限制性示例,可将通信子系统1170配置用于经由无线电话网络或有线或无线局域或广域网进行通信。在某些实施例中,通信子系统1170可允许控制台1002经由诸如因特网之类的网络向和/或从其它设备发送和/或接收消息。在特定实施例中,通信子系统1170可以用来与协调器和/或其它计算设备通信,以用于发送下载请求以及以用于实现数字内容的下载和上传。更一般地,通信子系统1170可以使得控制台1002能够参与对等通信。
游戏和媒体系统1000可通过简单地将系统连接到显示器1050(图7)、电视、视频投影仪或其它显示设备而作为独立系统进行操作。在此独立模式下,游戏和媒体系统1000使得一个或多个播放器能够播放游戏,或者欣赏数字媒体,例如通过观看电影或收听音乐实现。然而,采用通过网络接口1132或者更一般地通信子系统1170使得可用的宽带连接性的集成,游戏和媒体系统1000可进一步作为较大网络游戏团体(诸如对等网络)中的参与者而进行操作。
上面描述的控制台1002仅仅是上面参考图1和各种其它图所讨论的计算设备107的一个示例。如上面所解释的,存在可以与本文所描述的实施例一起使用的各种其它类型的计算设备。
图9是计算设备107的一个实施例的框图,其可托管图1和3-5A-B中所示的软件部件中的至少某些。在其最基本配置中,计算设备1800典型地包括一个或多个处理单元1802,其包括一个或多个CPU和一个或多个GPU。计算设备1800还包括系统存储器1804。根据计算设备的精确配置和类型,系统存储器1804可包括易失性存储器1805(诸如RAM)、非易失性存储器1807(诸如ROM、闪存等)或两者的某种组合。在图9中用虚线1806图示出此最基本配置。另外,设备1800还可具有附加特征/功能性。例如,设备1800还可包括附加存储装置(例如,可移除和/或不可移除的),包括但不限于磁或光盘或带等。在图9中用可移除存储装置1808和不可移除存储装置1810图示出这样的附加存储装置。
设备1800还可包含(一个或多个)通信连接1812,诸如允许设备与其它设备通信的一个或多个网络接口和收发机。设备1800还可具有(一个或多个)输入设备1814,诸如键盘、鼠标、笔、语音输入设备、触摸输入设备、手势输入设备等。还可包括诸如显示器、扬声器、打印机等这样的(一个或多个)输出设备1816。这些设备在本领域中众所周知的,所以在这里将不对它们进行详细讨论。
本发明系统的前述详细描述已出于说明和描述的目的而被提出。其并不意图是穷举的或使本发明系统局限于公开的精确形式。根据以上教导,许多修改和变例是可能的。选择所描述的实施例是为了最好地解释本发明系统的原理及其实际应用,以从而使得本领域的技术人员能够在各种实施例中以及在适合于设想的特定用途时以各种修改最好地利用本发明系统。意图在于由所附权利要求来定义本发明系统的范围。
Claims (11)
1.一种用于处理流式传输视频的装置,包括;
一个或多个处理器可读存储器;
第一应用,存储在所述一个或多个处理器可读存储器中,其具有用以响应于第一输入而降低流式传输视频中的第一类型的噪声的处理器可读指令;
第二应用,存储在所述一个或多个处理器可读存储器中,其具有用以响应于第二输入而降低流式传输视频中的第二类型的噪声的处理器可读指令;
引擎,存储在所述一个或多个处理器可读存储器中,其具有处理器可读指令;以及
一个或多个处理器,其执行引擎的处理器可读指令以:
获得流式传输视频中的表示流式传输视频的属性的至少第一代码;
在视频数据的比特率高于预定义水平的情况下,禁用第一应用和第二应用用于降低噪声;
在视频数据的比特率低于所述预定义水平的情况下,基于至少第一代码向所述第一应用输出第一输入,使得由所述一个或多个处理器执行的所述第一应用基于从流式传输视频中获取的代码降低所述流式传输视频中的第一类型的噪声;和在视频数据的比特率低于所述预定义水平的情况下,基于至少第一代码向所述第二应用输出第二输入,使得由所述一个或多个处理器执行的所述第二应用基于从流式传输视频中获取的代码降低所述流式传输视频中的第二类型的噪声。
2.根据权利要求1所述的装置,其中,所述装置包括视频游戏控制台;其中,所述一个或多个处理器至少包括图形处理器;以及其中,所述流式传输视频包括由视频游戏控制台接收到的视频游戏。
3.根据权利要求2所述的装置,其中,所述代码被包括在流式传输视频的清单中。
4.根据权利要求3所述的装置,其中,所述代码指示流式传输视频的比特率、帧速率、分辨率、内容类型和质量中的一个。
5.根据权利要求4所述的装置,其中,所述第一和第二类型的噪声选自蚊式、块状、瞬时、随机和条带中的一个。
6.根据权利要求5所述的装置,其中,所述内容类型包括体育、戏剧和动画中的一个。
7.根据权利要求1所述的装置,其中,所述流式传输视频包括来自计算网络的多个比特,并且输出第一和第二输入在所述多个比特中的预定量的比特之后发生。
8.根据权利要求1所述的装置,其中,视频的所述属性选自比特率、帧速率、分辨率、内容类型和质量中的一个。
9.根据权利要求8所述的装置,其中,所述内容类型选自体育、戏剧和动画中的一个。
10.根据权利要求1所述的装置,其中,所述视频选自具有多比特率的流式传输视频和在视频的不同片段期间具有不同比特率的流式传输视频。
11.根据权利要求1所述的装置,其中所述第一应用被包括在多个应用中,并且所述一个或多个处理器进一步执行所述引擎的处理器可读指令以:
调整至少所述第一输入的第一值,包括调整要被输入到第一应用之外的所述第二应用中以降低视频中的不同类型的噪声的所述第二输入的第二值。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/749,027 US9924200B2 (en) | 2013-01-24 | 2013-01-24 | Adaptive noise reduction engine for streaming video |
US13/749027 | 2013-01-24 | ||
PCT/US2014/012227 WO2014116546A1 (en) | 2013-01-24 | 2014-01-21 | Adaptive noise reduction engine for streaming video |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104956683A CN104956683A (zh) | 2015-09-30 |
CN104956683B true CN104956683B (zh) | 2019-01-04 |
Family
ID=50102203
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480006049.6A Active CN104956683B (zh) | 2013-01-24 | 2014-01-21 | 用于流式传输视频的自适应降噪引擎 |
Country Status (4)
Country | Link |
---|---|
US (2) | US9924200B2 (zh) |
EP (1) | EP2949124A1 (zh) |
CN (1) | CN104956683B (zh) |
WO (1) | WO2014116546A1 (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9924200B2 (en) * | 2013-01-24 | 2018-03-20 | Microsoft Technology Licensing, Llc | Adaptive noise reduction engine for streaming video |
US20160227228A1 (en) * | 2015-01-29 | 2016-08-04 | Vixs Systems, Inc. | Video camera with layered encoding, video system and methods for use therewith |
EP3259911B1 (en) | 2015-02-19 | 2021-04-07 | Magic Pony Technology Limited | Enhancing visual data using updated neural networks |
EP3278559B1 (en) | 2015-03-31 | 2021-05-05 | Magic Pony Technology Limited | Training end-to-end video processes |
GB201603144D0 (en) | 2016-02-23 | 2016-04-06 | Magic Pony Technology Ltd | Training end-to-end video processes |
GB201604672D0 (en) | 2016-03-18 | 2016-05-04 | Magic Pony Technology Ltd | Generative methods of super resolution |
EP3298579B1 (en) | 2016-04-12 | 2021-07-21 | Magic Pony Technology Limited | Visual data processing using energy networks |
GB201607994D0 (en) | 2016-05-06 | 2016-06-22 | Magic Pony Technology Ltd | Encoder pre-analyser |
TWI755616B (zh) | 2017-04-21 | 2022-02-21 | 美商時美媒體公司 | 用於編碼器導引自適應性品質演現的系統及方法 |
CN113542746B (zh) * | 2021-07-13 | 2024-04-12 | Oppo广东移动通信有限公司 | 视频编码方法及装置、计算机可读介质和电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008085874A2 (en) * | 2007-01-05 | 2008-07-17 | Marvell World Trade Ltd. | Methods and systems for improving low-resolution video |
CN101325718A (zh) * | 2007-06-14 | 2008-12-17 | 索尼株式会社 | 图像处理装置和方法 |
CN101924890A (zh) * | 2009-06-11 | 2010-12-22 | 索尼公司 | 图像处理设备和图像处理方法 |
Family Cites Families (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3313430C2 (de) * | 1982-04-15 | 1986-09-25 | Victor Company Of Japan, Ltd., Yokohama, Kanagawa | Rauschunterdrückungsschaltung |
US5852475A (en) * | 1995-06-06 | 1998-12-22 | Compression Labs, Inc. | Transform artifact reduction process |
US5787203A (en) * | 1996-01-19 | 1998-07-28 | Microsoft Corporation | Method and system for filtering compressed video images |
US7016413B2 (en) * | 1998-03-20 | 2006-03-21 | International Business Machines Corporation | Adaptively encoding a picture of contrasted complexity having normal video and noisy video portions |
WO1999065239A2 (en) * | 1998-06-11 | 1999-12-16 | Koninklijke Philips Electronics N.V. | Trick play signal generation for a digital video recorder |
JP2001245303A (ja) * | 2000-02-29 | 2001-09-07 | Toshiba Corp | 動画像符号化装置および動画像符号化方法 |
JP2002077917A (ja) * | 2000-06-13 | 2002-03-15 | Sony Corp | 画像データ処理装置及び画像データ処理方法 |
US6965645B2 (en) * | 2001-09-25 | 2005-11-15 | Microsoft Corporation | Content-based characterization of video frame sequences |
US7375760B2 (en) | 2001-12-31 | 2008-05-20 | Texas Instruments Incorporated | Content-dependent scan rate converter with adaptive noise reduction |
US7343289B2 (en) * | 2003-06-25 | 2008-03-11 | Microsoft Corp. | System and method for audio/video speaker detection |
FR2860940A1 (fr) * | 2003-10-14 | 2005-04-15 | Nextream France | Dispositif et procede de reduction de bruit d'un signal video |
FR2860941A1 (fr) * | 2003-10-14 | 2005-04-15 | Nextream France | Dispositif et procede d'estimation de bruit d'un signal video |
US7346226B2 (en) * | 2003-12-16 | 2008-03-18 | Genesis Microchip Inc. | Method and apparatus for MPEG artifacts reduction |
US20050157796A1 (en) * | 2004-01-20 | 2005-07-21 | Victor Company Of Japan, Ltd. | Block noise reducing apparatus |
US7949051B2 (en) * | 2004-05-26 | 2011-05-24 | Broadcom Corporation | Mosquito noise detection and reduction |
US7512182B2 (en) | 2004-08-30 | 2009-03-31 | General Instrument Corporation | Method and apparatus for performing motion compensated temporal filtering in video encoding |
CA2588785C (en) * | 2004-11-19 | 2015-11-17 | Northrop Grumman Corporation | Real-time packet processing system and method |
US20060136981A1 (en) * | 2004-12-21 | 2006-06-22 | Dmitrii Loukianov | Transport stream demultiplexor with content indexing capability |
US8194757B2 (en) | 2005-01-28 | 2012-06-05 | Broadcom Corporation | Method and system for combining results of mosquito noise reduction and block noise reduction |
KR100763178B1 (ko) * | 2005-03-04 | 2007-10-04 | 삼성전자주식회사 | 색 공간 스케일러블 비디오 코딩 및 디코딩 방법, 이를위한 장치 |
WO2006099743A1 (en) * | 2005-03-25 | 2006-09-28 | Algolith Inc. | Apparatus and method for objective assessment of dct-coded video quality with or without an original video sequence |
TWI298590B (en) * | 2005-03-30 | 2008-07-01 | A method for transporting real-time audio and video data | |
JP4693546B2 (ja) * | 2005-08-19 | 2011-06-01 | 株式会社東芝 | デジタルノイズ低減装置及び方法及び映像信号処理装置 |
KR100720339B1 (ko) * | 2005-09-15 | 2007-05-22 | 삼성전자주식회사 | 영상처리장치 |
US8355720B2 (en) * | 2006-05-12 | 2013-01-15 | Motorola Mobility Llc | Application and transport adaptation for a wireless communication prior to a reselection |
JP4859632B2 (ja) * | 2006-11-15 | 2012-01-25 | 富士通セミコンダクター株式会社 | 画像処理装置及び画像処理方法 |
US8238424B2 (en) | 2007-02-09 | 2012-08-07 | Microsoft Corporation | Complexity-based adaptive preprocessing for multiple-pass video compression |
US8233548B2 (en) * | 2007-05-09 | 2012-07-31 | Panasonic Corporation | Noise reduction device and noise reduction method of compression coded image |
US8031967B2 (en) * | 2007-06-19 | 2011-10-04 | Microsoft Corporation | Video noise reduction |
US20080316364A1 (en) * | 2007-06-25 | 2008-12-25 | The Hong Kong University Of Science And Technology | Rate distortion optimization for video denoising |
US8305497B2 (en) * | 2007-07-27 | 2012-11-06 | Lsi Corporation | Joint mosquito and aliasing noise reduction in video signals |
EP2073532A1 (en) * | 2007-12-17 | 2009-06-24 | Koninklijke Philips Electronics N.V. | Video signal processing |
US8447130B2 (en) * | 2007-12-31 | 2013-05-21 | Intel Corporation | History-based spatio-temporal noise reduction |
US8750390B2 (en) * | 2008-01-10 | 2014-06-10 | Microsoft Corporation | Filtering and dithering as pre-processing before encoding |
US8731062B2 (en) * | 2008-02-05 | 2014-05-20 | Ntt Docomo, Inc. | Noise and/or flicker reduction in video sequences using spatial and temporal processing |
JP5375830B2 (ja) * | 2008-09-29 | 2013-12-25 | パナソニック株式会社 | 映像信号処理装置 |
US8553783B2 (en) * | 2008-12-29 | 2013-10-08 | Stmicroelectronics Asia Pacific Pte Ltd. | Apparatus and method of motion detection for temporal mosquito noise reduction in video sequences |
JPWO2010098134A1 (ja) * | 2009-02-27 | 2012-08-30 | パナソニック株式会社 | 記録媒体、再生装置、及び集積回路 |
US20100245672A1 (en) * | 2009-03-03 | 2010-09-30 | Sony Corporation | Method and apparatus for image and video processing |
KR20110005093A (ko) * | 2009-07-09 | 2011-01-17 | 삼성전자주식회사 | 압축 노이즈를 감소시키기 위한 영상처리방법 및 장치 |
US8702627B2 (en) * | 2009-10-15 | 2014-04-22 | Masimo Corporation | Acoustic respiratory monitoring sensor having multiple sensing elements |
JP4762352B1 (ja) | 2010-03-17 | 2011-08-31 | 株式会社東芝 | 画像処理装置及び画像処理方法 |
RU2012146943A (ru) * | 2010-04-06 | 2014-05-20 | Конинклейке Филипс Электроникс Н.В. | Уменьшение видимости 3d шума |
EP2375747B1 (en) * | 2010-04-12 | 2019-03-13 | Sun Patent Trust | Filter positioning and selection |
US20110299601A1 (en) * | 2010-06-08 | 2011-12-08 | Cisco Technology, Inc. | Scalable video multicast framework for heterogeneous endpoints |
US20120019727A1 (en) | 2010-07-21 | 2012-01-26 | Fan Zhai | Efficient Motion-Adaptive Noise Reduction Scheme for Video Signals |
US8639050B2 (en) | 2010-10-19 | 2014-01-28 | Texas Instruments Incorporated | Dynamic adjustment of noise filter strengths for use with dynamic range enhancement of images |
US8885706B2 (en) * | 2011-09-16 | 2014-11-11 | Google Inc. | Apparatus and methodology for a video codec system with noise reduction capability |
US20130114687A1 (en) * | 2011-11-07 | 2013-05-09 | Sharp Laboratories Of America, Inc. | Fixed intra run-level mode for cavlc in hevc |
WO2013086734A1 (en) * | 2011-12-16 | 2013-06-20 | Intel Corporation | Reduced image quality for video data background regions |
US9924200B2 (en) * | 2013-01-24 | 2018-03-20 | Microsoft Technology Licensing, Llc | Adaptive noise reduction engine for streaming video |
-
2013
- 2013-01-24 US US13/749,027 patent/US9924200B2/en active Active
-
2014
- 2014-01-21 EP EP14704434.1A patent/EP2949124A1/en not_active Withdrawn
- 2014-01-21 CN CN201480006049.6A patent/CN104956683B/zh active Active
- 2014-01-21 WO PCT/US2014/012227 patent/WO2014116546A1/en active Application Filing
-
2018
- 2018-02-23 US US15/904,049 patent/US10542291B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008085874A2 (en) * | 2007-01-05 | 2008-07-17 | Marvell World Trade Ltd. | Methods and systems for improving low-resolution video |
CN101325718A (zh) * | 2007-06-14 | 2008-12-17 | 索尼株式会社 | 图像处理装置和方法 |
CN101924890A (zh) * | 2009-06-11 | 2010-12-22 | 索尼公司 | 图像处理设备和图像处理方法 |
Non-Patent Citations (1)
Title |
---|
System layer integration of high efficiency video coding;THOMAS SCHIERL 等;《IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY》;20121230;第22卷(第12期);第1872,1881-1882页 |
Also Published As
Publication number | Publication date |
---|---|
US20180184129A1 (en) | 2018-06-28 |
US20140204996A1 (en) | 2014-07-24 |
WO2014116546A1 (en) | 2014-07-31 |
EP2949124A1 (en) | 2015-12-02 |
CN104956683A (zh) | 2015-09-30 |
US10542291B2 (en) | 2020-01-21 |
US9924200B2 (en) | 2018-03-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104956683B (zh) | 用于流式传输视频的自适应降噪引擎 | |
CN106165403B (zh) | 数据输出装置、数据输出方法以及数据生成方法 | |
US11588998B2 (en) | Conversion method and conversion apparatus | |
JP6436320B2 (ja) | ライブ選択的適応帯域幅 | |
CN105409208B (zh) | 再现方法及再现装置 | |
RU2671946C2 (ru) | Устройство и способ обработки информации | |
CN106134172B (zh) | 显示系统、显示方法及显示装置 | |
CN106464970B (zh) | 影像再现装置、显示装置和发送装置 | |
CN104813666A (zh) | 解码装置和解码方法、以及编码装置和编码方法 | |
CN106621326A (zh) | 利用云转变的本地应用快速启动 | |
WO2012093714A1 (ja) | 再生装置、再生装置の制御方法、生成装置、生成装置の制御方法、記録媒体、データ構造、制御プログラム、及び該プログラムを記録した記録媒体 | |
CN109891901A (zh) | 影像显示系统及影像显示方法 | |
JP2014525190A (ja) | 層状の信号品質階層の再構成データの送信 | |
CN109691117A (zh) | 影像处理系统及影像处理方法 | |
CN105122828B (zh) | 信息处理装置、内容请求方法以及计算机程序 | |
WO2007063912A1 (ja) | 再生装置 | |
CN109819234A (zh) | 一种基于h.265的虚拟现实视频传输与播放方法、系统 | |
CN109691115A (zh) | 影像显示装置及影像显示方法 | |
JP6928885B2 (ja) | 表示装置、表示方法及びコンピュータプログラム | |
CN109379630A (zh) | 视频处理方法、装置、电子设备及存储介质 | |
Fautier et al. | 360 8K Viewport-Independent VR | |
CN110798715A (zh) | 基于图像串的视频播放方法及系统 | |
CN204168398U (zh) | 一种超高清信号的处理装置及全高清电视 | |
CN1331343C (zh) | 数字电视机ci接口到ieee-1394接口的转换设备及其转换方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |