CN101115021B - 一种即时通信视频质量调节方法及装置 - Google Patents

一种即时通信视频质量调节方法及装置 Download PDF

Info

Publication number
CN101115021B
CN101115021B CN 200610099535 CN200610099535A CN101115021B CN 101115021 B CN101115021 B CN 101115021B CN 200610099535 CN200610099535 CN 200610099535 CN 200610099535 A CN200610099535 A CN 200610099535A CN 101115021 B CN101115021 B CN 101115021B
Authority
CN
China
Prior art keywords
video
rank
cpu
local terminal
information
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
Application number
CN 200610099535
Other languages
English (en)
Other versions
CN101115021A (zh
Inventor
吕静
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN 200610099535 priority Critical patent/CN101115021B/zh
Priority to PCT/CN2007/070353 priority patent/WO2008019606A1/zh
Publication of CN101115021A publication Critical patent/CN101115021A/zh
Application granted granted Critical
Publication of CN101115021B publication Critical patent/CN101115021B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明公开了一种即时通信视频质量调节方法,该方法为:当终端向对端发送视频命令或是终端接受来自对端视频命令后,本地终端进行自检,获取CPU的主频信息,根据获取的主频信息对本机的视频级别进行划分,初步得到视频级别,再通过检测缓存信息和视频级别辅助信息对视频级别进行调节。通过最终的视频级别得到帧率的最高限制,保证资源占用在本机的处理能力范围之内,使视频质量达到最佳,最后进入视频传输过程。通过本发明可以较好的利用资源,避免造成资源浪费,并且还能提高连接建立的成功率,改善用户视频体验。本发明还同时公开了一种视频质量调节装置。

Description

一种即时通信视频质量调节方法及装置
技术领域
本发明涉及计算机及通信领域的数据传输技术,尤其涉及一种即时通信(IM)视频质量调节方法及装置。
背景技术
随着互联网的发展与普及,IM逐渐成为互联网最主要的应用之一,越来越多的互联网用户将即时通信作为一种重要的通信工具。
现有的IM视频通信基本上都是不考虑终端能力统一处理的。对于低配置的终端而言,由于其CPU数据处理能力较差,当对IM视频通信数据进行处理时,使得CPU使用率高,影响用户其他工作,并且也使得连接成功率下降;对于高配置的终端而言,在对IM视频通信数据进行处理时,没有充分体现CPU的数据处理能力,使得用户得不到较好的视频体验,造成了资源浪费。
发明内容
本发明的目的是提供一种即时通信视频质量调节方法及装置,用以解决现有技术中连接成功率较低、资源浪费或视频体验较差等问题。
本发明提供的一种即时通信视频质量调节方法包括:
获取本地终端的CPU性能指标信息;
根据所述CPU性能指标信息获得本地终端的视频级别;
根据所述视频级别确定本地终端编码的最高帧率,根据该最高帧率对即时通信的视频数据进行编码。
所述本地终端的CPU性能指标信息包括主频信息和/或缓存容量信息。
当所述本地终端的CPU性能指标信息包括主频信息和缓存容量信息时,所述根据CPU性能指标信息获得本地终端的视频级别,具体包括:
获取本地终端的CPU主频信息,根据获取的主频信息与视频级别的对应关系,确定本地终端的初始视频级别;
检测本地终端的缓存容量信息,根据检测得到的缓存容量信息对得到的所述初始视频级别进行修正。
所述将主频信息与视频级别的对应关系设置为主频越高,视频级别越高;
所述根据检测得到的缓存容量信息对初始视频级别进行修正的原则是:缓存容量越大,视频级别越高。
所述主频信息是从所述本地终端的注册表中读取获得,或使用内置CPU指令检测获得;
所述缓存容量信息是通过所述本地终端内置的CPU指令检测获取。
所述CPU性能指标信息还包括视频级别辅助信息,所述视频级别辅助信息为是否是双核CPU、是否支持多媒体指令集和是否支持超线程技术中的一种或几种;所述根据检测得到的缓存容量信息对得到的所述初始视频级别进行修正之后,还包括:
通过内置的CPU指令检测获取所述视频级别辅助信息,根据所述视频级别辅助信息对修正后的视频级别进行调节,当CPU支持辅助信息时,视频级别就越高。
本发明提供的一种即时通信视频质量调节装置包括:
性能指标获取单元,用于获取本地终端的CPU性能指标信息,并将获取的所述CPU性能指标信息发送给视频级别调节单元;
视频级别调节单元,用于根据所述CPU性能指标信息获得本地终端的视频级别,并将所述视频级别输出给视频质量调节单元;
视频质量调节单元,用于根据所述视频级别确定本地终端编码的最高帧率,并根据该最高帧率对即时通信的视频数据进行编码。
本发明通过获取终端CPU性能指标信息,并根据此信息对即时通信视频质量进行调节的方法,可以较好的利用资源,避免造成资源浪费,并且还能提高连接建立的成功率,改善用户视频体验。
附图说明
图1为通过终端能力判定来确定视频级别流程示意图;
图2为视频质量调节装置示意图。
具体实施方式
本发明是通过对终端CPU性能指标的信息获取,来对视频级别进行调节,进而调节视频质量。影响终端CPU性能指标的主要有:CPU主频信息、缓存(Cache)信息和其他视频级别辅助信息。这些信息会对视频级别进行调节,根据最后得到的视频级别确定本机编码的最高帧率,通过该最高帧率对即时通信的数据进行编码,来获取终端视频编码的最高限制,使CPU能够更好地进行视频数据处理,使视频质量得到提高。
下面结合说明书附图,对本发明的方法作进一步详细描述。
如图1所示,当终端向对端发送视频命令或终端接受来自对端视频命令时,或在即时通信的过程中由终端周期发起视频命令时,就立刻进行终端能力信息获取,此过程是终端对本地CPU的性能指标进行自检。通过终端能力来确定视频级别的,该方法包括以下步骤:
步骤101:获得CPU主频信息,初步得到视频级别。
在获取主频信息前首先判定能否进行静态检测。能否进行静态检测是由本机的操作系统决定的,操作系统在注册表中写入了主频信息,但是Windows98及以前的操作系统并没有写入。在本发明中,是从注册表中读取CPU的主频信息。CPU的主频信息在注册表中有固定的位置,通过Windows提供的应用程序接口可以直接打开注册表,然后判定此位置是否有相关的信息存在。如果有信息存在,即为支持静态检测,如果没有信息存在即为不支持静态检测。在能够进行静态检测时,就从注册表中读取CPU的主频信息;在不能够进行静态检测时,即进行动态检测,使用内置的CPU指令获取主频信息。
主频直接反映了CPU的数据处理能力,因此获取了主频信息后,可以根据主频信息对本机的视频级别进行划分,划分方法如下:
首先将视频级别划分为n级,分别为S1级,S2级...Sn级,再将主频值的范围按照从大到小的顺序划分为n段,每一段包含若干个可能的主频值。把视频级别的n级与主频划分的n段一一对应起来,视频级别的最高级对应主频值对高的主频段,以此类推,然后用检测到的CPU主频去匹配对应的主频段,根据主频段得到对应的视频级别就是本机初步得到的视频级别。
步骤102:检测Cache信息,对视频级别进行调节。
例如:分别检测L1 Cache和L2 Cache。L1 Cache是封装于CPU内部的高速缓存,存取速度与CPU主频相同,它的容量对CPU的性能有较大的影响,容量越大,CPU的性能也会相对提高。L2 Cache是集成于CPU外部的高速缓存,存取速度与CPU主频相同,主要功能是作为后备数据和指令的存储,它的容量大小对CPU的性能有较大的影响,因为视频需要处理的数据量较大,如果L2 Cache容量较大的话就可以减少数据存取交换的次数,优化视频处理速度。
在本发明中,通过内置的CPU指令检测L1 Cache和L2 Cache的容量大小,根据它们的容量大小对本机的视频级别进行调节。以L2 Cache为例说明调节方法如下:
首先将L2 Cache按照容量划分为n级,每一级别对应一个视频级别修正值(这个修正值的范围从-X到+Y,X,Y为正数),然后用检测到的L2 Cache容量去匹配相应的级别,读取修正值调整视频级别。
L1 Cache的容量大小对视频级别调节方法与L2 Cache一致。所以L1 Cache和L2 Cache的容量越大,本机的视频级别就越高。
但是对于有些CPU的检测结果可能不准确的情况下(典型的是笔记本用CPU),Cache只作为后期修正。如果通过内置的CPU检测指令检测Cache失败,则以原来主频所定级别为准。
步骤103:检测其他视频级别辅助信息,对视频级别进行调节。
其他视频级别辅助信息主要有:
(1)是否双核:因为处理器实际性能是处理器在每个时钟周期内所能处理指令数的总量,从理论上讲,增加一个内核,处理器每个时钟周期内可执行的单元数将增加一倍,所以双核CPU性能比单核有较大提高。通过内置的CPU指令检测此终端是否为双核,对于双核的主机,视频级别将会提高。调节方法如下:
设定级别修正值为Z,若检测到终端为双核则读取修正值Z调整视频级别,若检测到终端为单核则不调整视频级别。
(2)是否支持多媒体指令集:MMX、SSE、SSE2和3DNow!都是CPU的扩展指令集,对指令集的支持是反应终端多媒体处理能力的重要依据。通过内置的CPU指令检测此终端是否支持多媒体指令集,若是能够支持,则视频级别就越高,此调节方法同上述是否双核的调节方法一致。
(3)是否支持超线程技术(HTT):超线程技术能够减少CPU的闲置时间,提高的CPU的运行效率。通过内置的CPU指令检测此终端是否支持超线程技术,对于支持超线程技术的主机,视频级别将会提高,此调节方法同上述是否双核的调节方法一致。
步骤104:得到本机视频级别后确定本机编码的最高帧率,通过该最高帧率对即时通信的视频数据进行编码,方法如下:
首先将终端帧率划分为n级,每一级别帧率都对应一个视频级别,都是由大到小一一对应,然后用通过调节最后得到的视频级别对应相应的帧率级别,得到最高帧率,进而获取终端视频编码的最高限制。
在开始视频通话前得到终端视频编码的最高限制,保证资源占用在本机的处理能力范围之内,视频质量达到最佳,然后进入视频传输过程。
通过本发明的视频质量调节方法,对于低配置的终端来说,可大大减少资源占用率,不影响用户的其他工作,同时也能够提高连接建立的成功率;而对于高配置的终端,视频级别相应提高,能够使用户得到较好的视频体验,避免造成资源的浪费。
如图2所示,本发明还提供一种具有上述功能的即时通信视频质量调节装置,该装置应用于进行即时通信的终端中。该视频质量调节装置主要包括性能指标获取单元21和视频质量调节单元22两部分。其中,性能指标获取单元21,用于获取终端的CPU性能指标信息,并将获取的CPU性能指标信息发送给视频质量调节单元;视频质量调节单元22,用于根据收到的CPU性能指标信息调节终端的视频质量。
视频质量调节单元22还可以包括视频级别调节单元31、视频质量调节单元32。其中,视频级别调节单元31,用于根据所述CPU性能指标信息调节终端的视频级别,并将视频级别输出给视频质量调节单元;视频质量调节单元32,用于根据视频级别确定编码的最到帧率,并输出该最高帧率给终端。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (7)

1.一种即时通信视频质量调节方法,其特征在于,该方法为:
获取本地终端的CPU性能指标信息;
根据所述CPU性能指标信息获得本地终端的视频级别;
根据所述视频级别确定本地终端编码的最高帧率,根据该最高帧率对即时通信的视频数据进行编码。
2.根据权利要求1所述的即时通信视频质量调节方法,其特征在于,所述本地终端的CPU性能指标信息包括主频信息和/或缓存容量信息。
3.根据权利要求2所述的即时通信视频质量调节方法,其特征在于,当所述本地终端的CPU性能指标信息包括主频信息和缓存容量信息时,所述根据CPU性能指标信息获得本地终端的视频级别,具体包括:
获取本地终端的CPU主频信息,根据获取的主频信息与视频级别的对应关系,确定本地终端的初始视频级别;
检测本地终端的缓存容量信息,根据检测得到的缓存容量信息对得到的所述初始视频级别进行修正。
4.根据权利要求3所述的即时通信视频质量调节方法,其特征在于,所述将主频信息与视频级别的对应关系设置为主频越高,视频级别越高;
所述根据检测得到的缓存容量信息对初始视频级别进行修正的原则是:缓存容量越大,视频级别越高。
5.根据权利要求2所述的即时通信视频质量调节方法,其特征在于,所述主频信息是从所述本地终端的注册表中读取获得,或使用内置CPU指令检测获得;
所述缓存容量信息是通过所述本地终端内置的CPU指令检测获取。
6.根据权利要求3所述的即时通信视频质量调节方法,其特征在于,所述CPU性能指标信息还包括视频级别辅助信息,所述视频级别辅助信息为是否是双核CPU、是否支持多媒体指令集和是否支持超线程技术中的一种或几种;
所述根据检测得到的缓存容量信息对得到的所述初始视频级别进行修正之后,还包括:
通过内置的CPU指令检测获取所述视频级别辅助信息,根据所述视频级别辅助信息对修正后的视频级别进行调节,当CPU支持辅助信息时,视频级别越高。
7.一种即时通信视频质量调节装置,应用于进行即时通信的终端中,其特征在于,该装置包括:
性能指标获取单元,用于获取本地终端的CPU性能指标信息,并将获取的所述CPU性能指标信息发送给视频级别调节单元;
视频级别调节单元,用于根据所述CPU性能指标信息获得本地终端的视频级别,并将所述视频级别输出给视频质量调节单元;
视频质量调节单元,用于根据所述视频级别确定本地终端编码的最高帧率,并根据该最高帧率对即时通信的视频数据进行编码。
CN 200610099535 2006-07-28 2006-07-28 一种即时通信视频质量调节方法及装置 Active CN101115021B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN 200610099535 CN101115021B (zh) 2006-07-28 2006-07-28 一种即时通信视频质量调节方法及装置
PCT/CN2007/070353 WO2008019606A1 (en) 2006-07-28 2007-07-25 A method and apparatus for adjusting the quality of video communication of instant messaging

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200610099535 CN101115021B (zh) 2006-07-28 2006-07-28 一种即时通信视频质量调节方法及装置

Publications (2)

Publication Number Publication Date
CN101115021A CN101115021A (zh) 2008-01-30
CN101115021B true CN101115021B (zh) 2010-05-12

Family

ID=39023142

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200610099535 Active CN101115021B (zh) 2006-07-28 2006-07-28 一种即时通信视频质量调节方法及装置

Country Status (2)

Country Link
CN (1) CN101115021B (zh)
WO (1) WO2008019606A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104185285A (zh) * 2013-05-28 2014-12-03 华为技术有限公司 一种媒体数据的传输方法、装置和系统
CN104540034B (zh) * 2014-12-19 2018-10-26 天脉聚源(北京)科技有限公司 一种基于社交网络的讨论时推送视频信息的方法及装置
CN105959304A (zh) * 2016-06-30 2016-09-21 宇龙计算机通信科技(深圳)有限公司 一种帧率调整的方法及装置
CN106375789B (zh) * 2016-09-05 2019-02-26 腾讯科技(深圳)有限公司 媒体直播方法和装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1529461A (zh) * 2003-10-17 2004-09-15 中国科学院计算技术研究所 多播环境中的自适应服务质量保证方法
CN1633177A (zh) * 2004-12-31 2005-06-29 大唐微电子技术有限公司 视频通信系统的帧率调节方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2428325C (en) * 2000-11-29 2011-08-30 Matthew David Walker Transmitting and receiving real-time data
US20020126759A1 (en) * 2001-01-10 2002-09-12 Wen-Hsiao Peng Method and apparatus for providing prediction mode fine granularity scalability
JP3775346B2 (ja) * 2002-05-29 2006-05-17 株式会社日立製作所 テレビ電話システムおよびその端末装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1529461A (zh) * 2003-10-17 2004-09-15 中国科学院计算技术研究所 多播环境中的自适应服务质量保证方法
CN1633177A (zh) * 2004-12-31 2005-06-29 大唐微电子技术有限公司 视频通信系统的帧率调节方法

Also Published As

Publication number Publication date
WO2008019606A1 (en) 2008-02-21
CN101115021A (zh) 2008-01-30

Similar Documents

Publication Publication Date Title
CN101115021B (zh) 一种即时通信视频质量调节方法及装置
US10095615B2 (en) Garbage collection based on total resource usage and managed object metrics
US7395385B2 (en) Memory management for a mobile multimedia processor
US20140052946A1 (en) Techniques for opportunistic data storage
CN110493091A (zh) 一种智能家居设备的控制方法及装置
CN101702743A (zh) 移动终端浏览器的自适应调整方法与装置
US9146873B2 (en) Adaptive queuing of a cache for a processing element
US20070094522A1 (en) System and method for overclocking a central processing unit
CN109451317A (zh) 一种基于fpga的图像压缩系统及方法
CN101271387B (zh) 数据缓存器溢出的自动解除方法和装置
CN103425444A (zh) 显示控制方法、系统及显示设备
CN103368860A (zh) 一种智能限速方法、装置以及系统
CN102033818A (zh) 媒体缓冲和流水线式处理组件
CN103543982B (zh) 一种时钟频率管理方法及移动设备
WO2023035427A1 (zh) 基于fifo存储器的信息生成方法、装置、设备及介质
CN202178776U (zh) 一种基于can总线的高速通讯系统
CN113242434A (zh) 一种视频压缩方法及相关装置
CN101546310B (zh) 可提升网页兼容性的方法及装置
CN103347023B (zh) 一种工业现场环境下hdlc通信控制器
CN106357711A (zh) 一种依赖于uicc扩展存储区域的手机数据缓存与同步方法
CN108874546B (zh) 一种linux优化资源使用的系统及方法
CN102708010B (zh) 压缩工具资源调用方法及装置
CN102495763A (zh) 计算机程序内存动态配置方法
CN110045951A (zh) 一种神经网络硬件低功耗定制化的开发工具
CN102902598B (zh) 一种与作业调度系统相结合的资源检测预处理方法

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