CN102932841B - 信号处理 - Google Patents

信号处理 Download PDF

Info

Publication number
CN102932841B
CN102932841B CN201210326352.7A CN201210326352A CN102932841B CN 102932841 B CN102932841 B CN 102932841B CN 201210326352 A CN201210326352 A CN 201210326352A CN 102932841 B CN102932841 B CN 102932841B
Authority
CN
China
Prior art keywords
processing module
channel
power level
logic analysis
monitoring
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
CN201210326352.7A
Other languages
English (en)
Other versions
CN102932841A (zh
Inventor
K.乌尔姆
A.杰弗里莫夫
D.赵
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.)
Microsoft Technology Licensing LLC
Original Assignee
Skype Ltd Ireland
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
Priority claimed from GB1115386.3A external-priority patent/GB2494411B/en
Application filed by Skype Ltd Ireland filed Critical Skype Ltd Ireland
Publication of CN102932841A publication Critical patent/CN102932841A/zh
Application granted granted Critical
Publication of CN102932841B publication Critical patent/CN102932841B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/06Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information

Abstract

一种用于经由通过无线通信网络建立的信道与远程设备进行基于分组的呼叫的移动设备、方法和计算机程序产品。该移动设备包括:配置成访问无线通信网络的无线访问电路;用于执行通信客户端应用以经由通过无线通信网络建立的信道与远程设备进行基于分组的呼叫的装置,该通信客户端应用被配置成监控至少一个网络参数;硬件处理模块,其可选择性地操作来实现处理功能;软件处理模块,其可选择性地执行以实现所述处理功能;以及选择机构,其用于基于所述至少一个监控的网络参数将所述呼叫提供给硬件处理模块和软件处理模块之一。

Description

信号处理
技术领域
本发明涉及在移动设备上进行呼叫期间处理信号。
背景技术
一些通信系统允许诸如个人计算机之类的设备的用户通过诸如因特网之类的基于分组的计算机网络进行语音或视频呼叫。这样的通信系统包括互联网协议上的语音或视频(VoIP)系统。这些系统对用户是有益的,因为它们的成本通常明显低于常规的固定线路或移动蜂窝网络。对于远距离通信,情况尤其如此。为了使用VoIP系统,用户在他们的设备上安装和执行客户端软件。该客户端软件建立VoIP连接以及提供其他功能,比如注册和认证。除了语音通信之外,客户端还可以建立用于其他通信媒介的连接,比如即时消息传递(“IM”)、SMS消息传递、文件传输和语音邮件。
随着移动带宽的增加,越来越令人感兴趣的是经由运行在诸如因特网使能的移动电话之类的移动设备上的客户端应用提供基于分组的视频呼叫。这些移动设备包括收发器,比如在一个或多个未授权频带上操作以用于经由无线接入点(例如WLAN网络的Wi-Fi接入点)访问因特网的短距离RF收发器,和/或在一个或多个授权频带上操作以用于经由诸如GPRS(通用分组无线业务)或HSPA(高速分组接入)之类的基于分组的蜂窝网络业务访问因特网的蜂窝收发器。
图1是包括诸如因特网之类的基于分组的网络101和移动蜂窝网络103的通信系统100的示意性图示。移动蜂窝网络103包括多个基站104(在3GPP术语中有时被称为节点Bs)。每个基站104被布置成服务于蜂窝网络103的对应小区。而且,分组交换网络101包括多个用于访问因特网的诸如Wi-Fi接入点之类的无线接入点106。这些无线接入点可以是一或多个无线局域网(WLAN)的接入点。
多个用户终端102被布置成通过网络101和/或103进行通信。用户终端102中至少一个包括诸如因特网使能的移动电话之类的移动设备,并且用户终端102中的其他用户终端可以包括例如台式或膝上型PC。
在图2a和2b中示意性示出示例移动设备102a。该移动设备102a包括一个或多个耦合到存储通信客户端应用的存储器213的处理器单元(CPU)211形式的处理装置。该处理器211还耦合到:麦克风202、扬声器203、相机205、电源206、一个或多个RF收发器207、键区209和显示器212。
所述一个或多个收发器207使得移动设备102a能够访问所述一个或多个网络101和/或103。例如,移动设备102a可以包括用于经由基站104访问移动蜂窝网络103的蜂窝无线收发器,和/或用于访问因特网101的有线或无线调制解调器。在无线调制解调器的情况下,这典型地包括用于经由无线接入点106访问因特网101的短距离无线收发器(例如Wi-Fi)。
对因特网101的访问也可以通过诸如GPRS(通用分组无线业务)或HSPA(高速分组接入)之类的其他手段来实现。在蜂窝层次结构的较高等级处,蜂窝网络103包括多个蜂窝控制器站105,每一个蜂窝控制器站耦合到多个基站104。控制器站105被耦合到移动蜂窝网络103的传统的电路交换部分,而且耦合到因特网101。控制器站105因此被布置成允许经由基站104访问基于分组的通信,包括对因特网101的访问。控制器站105可以在GSM/EDGE术语中被称为例如基站控制器(BSC),或者在USTM或HSPA术语中被称为无线网络控制器(RNC)。
存储器213可以包括耦合到处理器211的非易失性存储器,比如电子可擦除且可编程存储器(EEPROM,或“闪速”存储器)。该存储器存储被设置成在处理器上执行且被配置成使得当其被执行时通过因特网101和/或蜂窝网络103进行通信的通信代码。该通信代码优选地包括通信客户端应用,其用于如上文所讨论地通过因特网101、经由短距离无线收发器207和无线接入点106和/或经由蜂窝无线收发器207、基站以及蜂窝网络103的控制器站105来执行与其他用户终端102的诸如语音或视频呼叫之类的通信。然而,所涉及的用户终端102中的一个或多个可替代地可以经由有线调制解调器来通信,例如在移动终端与台式PC之间的呼叫的情况下。
以此方式,移动设备102a被布置成经由因特网101(或其他基于分组的网络)建立与另一个远程终端102b的呼叫。在所示的示例中,远程终端102b是台式计算机,但是在其他实施例中可以是另一个移动设备。
特别地,如果视频呼叫特征由用户实现,则该呼叫包括移动设备102a与102b之间的现场视频呼叫。该视频呼叫包括由设备102a和102b实时捕获的、以IP分组的形式经由因特网101传输的信号的交换。
交换的信号可以包括输入和输出视频信号二者,尽管可替代地该视频呼叫不需要是双向的并且可能包括从用户设备102中的仅一个用户设备在仅一个方向上传输的视频。
交换的信号可以包括由移动设备102a的相机205捕获的“原始的”(未编码的)输出视频信号,其被模数转换器(ADC)215转换为数字信号并且在块217处被客户端编码。
编码器217在被执行时编码视频信号以便将其压缩成较低比特率的流,并且输出编码的信号,以用于经由收发器207和网络101、103而传输到远程设备102b。
交换的信号可以包括来自远程终端102b的输入的编码的视频信号,其在解码器219处由移动设备102a上的客户端应用来解码。然后可以使用数模转换器(DAC)221将解码的视频信号转换为模拟信号,并且将其输出到显示器212。
交换的信号还可以包括来自远程设备102b的输入的编码的音频信号以用于经由移动设备102a上的扬声器203输出,和/或由移动设备102a上的麦克风202捕获的输出的“原始的”(未编码的)音频信号以用于传输到远程设备102b。可以用于指代编码器和/或解码器的通用术语是编解码器。
在当前的“智能电话”中,实现了根据H.264标准的基于软件的编码,这提供了良好质量的编码,但减少了电池寿命。
发明内容
根据本发明的第一方面,提供一种移动设备,包括:无线访问电路,其被配置成访问无线通信网络;用于执行通信客户端应用以经由通过无线通信网络建立的信道与远程设备进行基于分组的呼叫的装置,该通信客户端应用被配置成监控至少一个网络参数;硬件处理模块,其可选择性地操作来实现处理功能;软件处理模块,其可选择性地执行以实现所述处理功能;以及选择机构,其用于基于所述至少一个监控的网络参数将所述呼叫提供给硬件处理模块和软件处理模块之一。
优选地,所述处理功能是视频或音频呼叫之一上的编解码器功能。
优选地,所述至少一个监控的网络参数是下述至少之一:信道比特率;信道端到端传输延迟;信道分组丢失率;以及信道分组丢失突发性(burstiness)。
所述选择机构可以进一步响应于远程设备的性能来在硬件处理模块与软件处理模块之间进行选择。优选地,该选择机构包括:切换装置,其被配置成接收输入信号;以及控制装置,其被配置成接收所述至少一个监控的网络参数并且将控制信号提供给所述切换装置,该控制信号基于所述至少一个监控的网络参数,其中该控制信号控制切换装置以将输入信号输出到硬件处理模块或软件处理模块以被处理。
软件处理模块可以由在用于执行通信客户端应用的装置上执行的代码实现。
优选地,监控所述至少一个网络参数是由用于执行通信客户端应用的装置执行的传输层功能和应用层功能中至少一个。
硬件处理模块和软件处理模块二者都可以包括视频编码器和视频解码器。移动设备可以进一步包括用于捕获实时视频数据的装置,所述装置以未编码视频信号的形式提供输入信号。可替代地,输入信号可以是由远程设备经由所述信道传输到移动设备的编码的视频信号。
硬件处理模块和软件处理模块二者都可以包括音频编码器和音频解码器。移动设备可以进一步包括用于捕获音频数据的装置,所述装置以未编码音频信号的形式提供输入信号。可替代地,输入信号可以是由远程设备经由所述信道传输到移动设备的编码的音频信号。
在一些实施例中,所述处理功能是安全功能。
优选地,所述无线通信网络是因特网。
优选地,所述移动设备是下述之一:因特网使能的移动电话;手持式游戏控制台;个人数字助理(PDA);平板计算机;以及膝上型计算机。
根据本发明的第二方面,提供一种经由通过无线通信网络建立的信道进行与远程设备基于分组的呼叫的方法,该方法包括:执行通信客户端应用以进行呼叫并监控至少一个网络参数;以及基于所述至少一个监控的网络参数,选择性地将所述呼叫提供给可操作来实现处理功能的硬件处理模块和可执行以实现所述处理功能的软件处理模块之一。
优选地,该方法进一步包括将所述至少一个监控的网络参数提供给选择机构,其被配置成将呼叫提供给硬件处理模块或软件处理模块。
优选地,该方法进一步包括在选择机构的切换装置处接收输入信号;在选择机构的控制装置处接收所述至少一个监控的网络参数;以及将来自所述控制装置的控制信号提供给所述切换装置,该控制信号基于所述至少一个监控的网络参数,其中该控制信号控制切换装置以将输入信号输出到硬件处理模块或软件处理模块以被处理。
优选地,该方法进一步包括执行对多个网络参数的逻辑分析。
当信道比特率大于或等于预定的比特率阈值、并且信道端到端传输延迟小于预定的延迟阈值、并且信道分组丢失率小于预定的分组丢失率阈值时,该控制装置可以控制所述切换装置以将输入信号输出到硬件处理模块以被处理。
当信道比特率小于预定的比特率阈值时,该控制装置可以控制所述切换装置以将输入信号输出到软件处理模块以被处理。
当信道端到端传输延迟大于或等于预定的延迟阈值时,该控制装置可以控制所述切换装置以将输入信号输出到软件处理模块以被处理。
当信道分组丢失率大于或等于预定的分组丢失率阈值时,该控制装置可以控制所述切换装置以将输入信号输出到软件处理模块以被处理。
该方法可以进一步包括接收用户输入以选择配置模式,所述配置模式对应于一组恒定阈值,其中该控制装置使用所述恒定阈值组控制所述切换装置。
优选地,该方法进一步包括:监控电源的电源水平;以及基于电源水平调整选择机构的操作。可以根据电源的电源水平改变阈值。
优选地,当电源的电源水平指示移动设备连接到外部电源时,该控制装置使用第一组恒定阈值控制所述切换装置。
优选地,当电源的电源水平大于或等于预定的电源阈值时,该控制装置使用第二组恒定阈值控制所述切换装置,并且当电源的电源水平小于预定的电源阈值时,该控制装置使用第三组恒定阈值控制所述切换装置。
根据本发明的第三方面,提供一种计算机程序产品,其体现在计算机可读介质上并且包括被配置成使得当其在移动设备上执行时执行上文所述的方法步骤中任意一个的代码。
附图说明
为了更好地理解本发明并且示出它可以如何实施,现在通过实例参照附图,在附图中:
图1是通信系统的示意性表示,
图2a是已知的移动终端的示意性表示,
图2b是已知的移动终端的示意性框图,
图3是根据本发明的移动终端的示意性框图,
图4是信号处理模块的示意性表示,
图5是协议栈的示意性表示,
图6图示了确定是实现软件编解码器还是实现硬件编解码器的方法,
图7图示了确定用于图6的方法中的参数的方法。
具体实施方式
在图3中示意性示出了根据本发明的移动设备102a。图3中所示的移动设备102a包括信号处理模块320,其包括CPU311(用于实现软件编解码器并执行其他信号处理功能)和硬件编解码器。该硬件编解码器可以在专用芯片上实现或者可以物理地定位在与CPU311相同的管芯上。
信号处理模块320被耦合到存在于上文参照图2a和2b描述的已知移动设备中的相同设备。即,信号处理模块320被耦合到存储通信客户端应用的存储器313。信号处理模块320还耦合到:麦克风302、扬声器303、相机305、电源306、一个或多个RF收发器307、键区309和显示器312。
信号处理模块320进一步耦合到监控电源306的电源水平监控块308。该电源水平监控块308可以采取模数转换器的形式,其读取电源306的电压水平并且将该电压水平转换成可以被信号处理模块320读取的数字数据。
现在将参照图4更详细地讨论信号处理模块320。信号处理模块320可以用于编码输入信号以用于在语音或视频呼叫期间通过网络101、103传输到远程设备102b。
输入信号在线402上被提供给编码器开关404。在操作中,输入信号可以是从麦克风302输出的音频信号,并且/或者输入信号可以是由相机305捕获的实时视频信号。
编码器开关404还从控制块430接收控制信号412。编码器开关404操作以依据控制信号412在线406上将接收的输入信号输出到硬件编解码器405,或者在线408上输出到软件编解码器410。硬件编解码器405和软件编解码器410中所选的一个在线414上提供编码的输出信号。编码的输出信号414可以被提供给网络接口207以通过网络101、103传输到远程设备102b。
尽管为了解释的目的被示出为单独的块,如由虚线所指示,但是软件编解码器410通过在CPU311(在图4中未示出)上执行程序代码来实现。硬件编解码器405使用专用电路来实现。
硬件编解码器使用比软件编解码器更少的电力,并且因此可以延长电池寿命。然而,软件编解码器可以在一些情形下提供更好的质量结果并且可以更容易地被更新。所描述的实施例允许通过控制块430的动作依据情况选择最优编解码器。控制块430通过在CPU311上执行代码来实现,该代码可以存储在存储器313中或存储在图3中未示出的单独的存储器中。控制块430接收包括比特率442、传输延迟444、分组丢失率446以及远程设备102b的性能448的监控的网络参数,并且基于这些监控的网络参数输出控制信号412以控制编码器开关404。远程设备102b的性能448可以包括例如远程设备102b的屏幕分辨率或远程设备102b的CPU性能。如由虚线所转达,参数442-448通过在CPU311上执行通信客户端应用而被监控。下文参照图6提供关于控制块430如何生成控制信号412的描述。
信号处理模块320还可以用于解码输入信号以用于在语音或视频呼叫期间输出到移动设备102a的用户108a。
输入信号在线422上被提供给解码器开关424。在操作中,该输入信号可以是通过网络101、103从远程设备102b接收的编码的音频信号和/或编码的视频信号。解码器开关424还从控制块430接收控制信号432。下面参照图6提供关于控制模块430如何生成控制信号432的描述。解码器开关424操作以依据控制信号432在线426上将接收的输入信号输出到硬件编解码器405,或者在线428上将其输出到软件编解码器410。硬件编解码器405和软件编解码器410中所选的一个在线434上提供解码的输出信号。解码的输出信号434可以被转换为可以被扬声器203或显示器212输出的模拟信号。
应当领会,硬件编解码器405和软件编解码器410可以是包括视频编码器和/或视频解码器的视频编解码器,或者可以是包括音频编码器和/或音频解码器的音频编解码器。可以使用编码器开关404和解码器开关424彼此独立地开关编码器和解码器。
为了描述如何监控参数442-448,现在参照图5。如本领域技术人员将会熟悉的,用户设备可以通过诸如因特网之类的网络通信的基本机制可以被认为是协议栈(在运行在每一个用户设备上的软件中体现)。依据通信类型,存在多个不同的协议栈,但是在图5中作为代表示出了一个协议栈。
在该栈中,最低层是负责在设备102a与102b之间通过RF链路传送比特的链路层516。该链路层516负责以(典型地编码的)比特的形式传送RF业务,其被调制到载波频率上。
互联网层514是负责即时分组路由的分组协议。本领域技术人员将会理解,数据分组包括报头部分和有效载荷。报头包括目的地用户设备的互联网地址(例如,IP地址),并且有效载荷包括通信客户端应用所期望的要被传输的实际用户数据。当路由节点接收分组时,其IP层软件检查IP地址并确定将该分组路由到的下一个相邻路由节点(或者如果目的地设备是邻近的,则为最终用户终端设备)。
传输层512添加封装在IP报头的顶部的附加的报头信息以提供诸如端口编号、拥塞控制和分组接收的确认之类的服务。
最后,应用层510涉及包括在分组有效载荷中的用户信息,例如语音或视频呼叫的音频或视频内容或IM消息的用户文本。客户端应用在有效载荷中自由地包括它所希望的如适合于所讨论的应用的任何内容。
在处理器311上执行的通信客户端应用可以在传输层512上操作以监控端到端传输延迟444和分组丢失率446。通信客户端应用可以使用时间戳来监控传输延迟。分组丢失可以使用分组的序号中的间隙来确定。应当领会用于监控该信息的其他方法可被使用,例如在较低层上使用网络设备。这些参数可以在应用层510上被通信客户端应用用来估计可以用于音频/视频流的可用网络带宽。而且,通信客户端应用可以接收关于远程设备102b的性能448的信息,这可以响应于移动设备102a的请求而被接收或作为稍后通过链路进行的呼叫的建立的一部分而被接收。
通信客户端应用将监控的参数442-448提供给控制块430,该控制块然后可以评估监控的参数442-448以确定是实现硬件编解码器405还是实现软件编解码器410以处理输入信号402、422。
发明人已经开发了在确定是实现硬件编解码器405还是实现软件编解码器410时控制块430实现的逻辑。在输入信号必须被编码用于传输时使用的逻辑在图6中被图示。在构造逻辑的过程中,发明人已经假设以下内容:
首先,当处理实时视频信号时,硬件编解码器405与软件编解码器410相比能够以更高的分辨率处理输入,这是由于实现软件编解码器410所在的CPU311的限制引起的。
其次,与硬件编解码器405相比,软件编解码器410更容易被更新并且因此可能具有更多技术上先进的特征,因此它可能在低比特率、长延迟和高分组丢失条件下执行得比硬件编解码器405更好。
最后,与软件编解码器410相比,硬件编解码器405消耗更少的来自电源306的电力。
在步骤602处,控制块430接收监控的参数442-448。
在步骤604处,控制块430确定比特率442是否大于或等于预定的阈值A。如果比特率442小于A,在步骤614处控制块430输出控制信号412,其控制编码器开关404以在线402上将输入提供给软件编解码器410。预定的阈值A应当依据实际的硬件编解码器的实现方式来调谐。一个示例是500kbps。
如果在步骤604处确定了比特率442大于或等于A,则控制块430继续进行到步骤606,在步骤606中它确定端到端传输延迟444是否大于或等于预定的阈值B。如果延迟444大于或等于B,则控制块430继续进行到步骤614并且如上所述地操作。预定的阈值B再次应当根据实际的硬件编解码器的实现方式来调谐。在一个示例情境中,500ms端到端延迟可能是所需的,并且如果硬件编解码器405需要400ms以便编码在线402上的输入,则网络延迟应当小于100ms,因此在该示例中阈值B将被选择为100ms。
如果在步骤606处确定延迟444小于B,则控制块430继续进行到步骤608,在步骤608中它确定分组丢失率446是否大于预定的阈值C。如果分组丢失率446大于C,则控制块430继续进行到步骤614并且如上所述地操作。在一个示例情境中,预定阈值C可以是0%,以使得硬件编解码器405仅在没有分组丢失时使用。
如果分组丢失率446小于或等于C,则控制块430继续进行到步骤610,在步骤610中它确定远程设备性能448是否大于或等于预定的阈值D。如果远程设备性能448小于D,则控制块430继续进行到步骤614并且如上所述地操作。在一个示例情境中,如果硬件编解码器405针对VGA分辨率和更高的分辨率而被调谐,则在步骤610处该过程检验远程设备102b的CPU是否可以在硬件编解码器405被应用之前处理VGA分辨率。
尽管分组丢失被提及,但是应当领会可以使用分组丢失的其他度量,比如突发性。
如果在步骤610处确定远程设备性能448大于或等于D,则在步骤614处,控制块430输出控制信号412,其控制编码器开关404以在线402上将输入提供给硬件编解码器405。
因此,硬件编解码器405仅在比特率442大于或等于A、延迟444小于B、分组丢失446小于或等于C且远程设备性能448大于或等于D时被使用,并且如果这些条件不满足,则使用软件编解码器410。因此硬件编解码器405在网络的所述条件良好并且远程设备102b可以处理高分辨率时被使用。
为了简化起见,在图4中示出了硬件编解码器405与软件编解码器410之间的清楚的分离。然而,在一些实现方式中,可能不存在这种清楚的分离,例如当使用其中所述处理的一部分运行在图形处理单元(GPU)上的混合结构时。然而,在这些实现方式中,上文参照图6讨论的切换算法仍然适用。
应当领会,由控制块430在编码的输入信号必须被解码时实现的逻辑不考虑远程设备性能448。因此,在解码过程中,硬件编解码器405在网络条件良好时使用。即,硬件编解码器405仅在比特率442大于或等于A、延迟444小于B且分组丢失446小于或等于C时被使用,并且如果这些条件不满足,则使用软件编解码器410。
由于网络参数不断变化,因此图6中使用的逻辑可以导致硬件编解码器405与软件编解码器410之间的频繁切换。这是不合需要的,因为频繁的编解码器切换导致延迟(由该切换造成的)和比特率开销。为了防止频繁的编解码器切换,可以使用各种不同的方法。例如,控制块430可以仅输出控制信号412、432以在自从上次编解码器切换过去超过X秒的情况下应用编解码器切换,X的一个示例值是10秒。在另一个示例中,监控的参数442-448可以在时间段Y上取平均,Y的一个示例是5秒。在又一个示例中,统计指标可以被应用到在时间段Y上监控的网络参数,例如在时间段Y上监控的网络参数的最差值可以被发送到控制块430。
可以根据电源306的状况(即电源水平)使图6所示的逻辑中使用的预定的阈值A、B、C、D自适应。如图4所示,电源水平监控块308可以将电源306的电源水平提供给控制块430。现在将参照图7描述控制块如何使用该信息自适应地改变图6中使用的阈值A、B、C、D。
在步骤702处,控制块430从电源水平监控块308接收电源306的电源水平。
在步骤704处,控制块430确定电力电缆是否被连接到移动设备102a以使得电力被提供给电源206(即确定移动设备的电源是否正充电)。如果电力电缆被连接到移动设备102以使得电力被提供给电源306,则编解码器的电力利用不是重要的,然后如图所示,在步骤708处在图6的过程中使用第一配置。即,在图6的过程中使用值A1、B1、C1、D1。该第一配置用于使控制块430偏向尽可能多地使用软件编解码器410。在视频呼叫期间,到硬件编解码器405的切换将仅在远程设备102b能够接收高分辨率视频时是可能的。作为起码的示例,第一配置中的参数可以采用值A1=1500kbps、B1=100ms、C1=0%、D1=HD能力(capable)。
如果在步骤704处确定电力未被提供给电源306,则在步骤706处控制块430确定电源306的电源水平是否大于或等于60%容量。如果电源306的电源水平大于或等于60%容量,则如在步骤710处所示,在图6的过程中使用第二配置。即,在图6的过程中使用值A2、B2、C2、D2。当电源306的电源水平大于或等于60%容量时,在大多数情境中软件编解码器410仍然是优选的。因此在视频呼叫期间,第二配置中的参数可以采用值A2=500kbps、B2=200ms、C2=1%、D2=QVGA能力。应当领会,这些值仅仅是示例,并且不以任何方式限制。
如果在在步骤706处确定电源306的电源水平小于60%容量,则如在步骤712处所示,在图6的过程中使用第三配置。该第三配置用于使控制块430偏向尽可能多地使用硬件编解码器405。即,在图6的过程中使用值A3、B3、C3、D3。因此,在视频呼叫期间,第二配置中的参数可以采用值A2=500kbps、B2=200ms、C2=1%、D2=QVGA能力。应当领会,这些值仅仅是示例,并且不以任何方式限制。
应当领会,60%的阈值电源仅仅是示例,且不以任何方式限制。而且,应当领会,其他电源阈值可以与附加的阈值配置相关联地使用。
重要的是,注意到A、B、C、D是恒定值,用于决定应当何时使用硬件编解码器405或软件编解码器410,并且A1、A2、A3是不同的恒定值(同样,B1、B2、B3和C1、C2、C3和D1、D2、D3是不同的恒定值)。所有值可以针对不同的设备、不同的相机、不同的麦克风并且适合不同的用户(摇晃的视频或头部特写视频)等而被不同地调谐。
实现图6和7所图示的方法使得能够做出关于是否动态地(onthefly)使用硬件编解码器405或软件编解码器410来对网络和电池条件方面的变化作出反应的决定。
通过选择A1、B1、C1,D1;A2、B2、C2,D2和A3、B3、C3,D3的预定的阈值基于电源306的电源水平,可以给予硬件实现的编解码器405或软件编解码器410优先级。
当电源306的电源水平低时,应当将优先级给予使用更少电池的硬件编解码器405,类似地当移动设备连接到外部电源时(即移动设备正在充电)时,应当将优先级给予软件编解码器410。为了实现该优先化(prioritisation),所述恒定阈值可以被设置如下:
因此,以比特率阈值A1、A2、A3为例,当移动设备连接到外部电源并且优先级应当被给予软件编解码器410时,在步骤604中使用最高阈值A1,因为软件编解码器410可以在低比特率信道条件下执行得更好。相反,当电源306的电源水平低并且优先级应当被给予硬件编解码器405时,在步骤604中使用最低阈值A3。
如上文所述,在图6和7中图示的方法使得本发明能够自动选择操作的最佳模式。在本发明的另一个实施例中,在移动设备102a处接收的用户输入可以推翻(override)控制块430的自动决策。该用户输入可以在移动设备102a的例如麦克风302或键区309之类的输入装置处被接收。
在该实施例中,用户可以选择配置模式,每个配置模式对应于一组预定的阈值。例如,“最佳性能”配置模式可以对应于预定的阈值A1、B1、C1、D1,“更好的电池”配置模式可以对应于预定的阈值A2、B2、C2、D2,并且“最佳电池”配置模式可以对应于预定的阈值A3、B3、C3、D3。应当领会,这些配置模式可以对应于除了上文描述的那些预定的阈值之外的其他预定的阈值。
在一个示例情境中,移动设备102a的用户108a可能希望进行重要的呼叫并且因此想要高水平的呼叫质量。用户108a能够了解电源306的电源水平是低的(即小于60%)并且电源306将能够在剩余的时间长度(即30分钟)向移动设备提供电力。在此情境中,图7中所图示的方法将自动使用预定的阈值A3、B3、C3、D3(参见步骤706、712)。然而,用户108a可以意识到重要的呼叫将仅持续20分钟。即,电源306具有足够的电力用于呼叫的持续时间。因此,用户108a可以选择“最佳性能”配置模式来推翻控制块430的自动功能并且选择预定的阈值A1、B1、C1、D1,从而实现最佳呼叫质量。
在另一个示例情境中,移动设备102a的用户108a可能希望进行持续时间将会很长的呼叫。用户108a能够了解电源306的电源水平是高的(即大于60%)。在此情境中,图7中所图示的方法将自动使用预定的阈值A2、B2、C2、D2(参见步骤706、712)。用户108a可以选择“最佳电池”配置模式来推翻控制块430的自动功能并且选择预定的阈值A3、B3、C3、D3,从而实现最佳电池性能以针对呼叫的长度提供足够的电力。
本发明的实施例避免了对在设计和制造过程期间在硬件和软件之间做出权衡的需要。在过去,在移动设备102a的设计过程期间,为了实现最佳呼叫质量、安全或电池性能,需要做出许多权衡。移动设备将设有硬件辅助芯片以便改进移动设备的电池性能;然而,硬件实现方式可能变得过时并且不会实现由可以容易更新的基于软件的实现方式实现的呼叫质量的水平。
通过允许在软件与硬件实现方式之间的现场选择,该权衡不再必须在设计阶段做出。除了上文所讨论的视频编解码器之外,本发明可以应用于音频编解码器、安全相关功能或其他电池密集型功能。
尽管已经特别参照视频和/或语音呼叫讨论了本发明的实施例,但是应当领会,本发明的应用可以扩展到其他移动视频用途,比如现场流播放和视频邮件。
尽管已经参照优选实施例特别地示出和描述了本发明,但是本领域技术人员应当理解可以在不脱离由所附权利要求定义的本发明的范围的情况下做出形式和细节的各种改变。

Claims (24)

1.一种经由通过无线通信网络建立的信道与远程设备进行基于分组的呼叫的方法,所述方法包括:
执行通信客户端应用以进行呼叫并监控多个网络参数;
监控电源的电源水平;
执行所述多个网络参数的逻辑分析,所述逻辑分析包括将所述多个网络参数与多组阈值中的一组进行比较,基于所述监控的电源水平从所述多组阈值中选择所述一组阈值以用于所述逻辑分析;以及
基于所述多个网络参数的所述逻辑分析和所述监控的电源水平,选择性将所述呼叫提供给可操作来实现处理功能的硬件处理模块或可执行以实现所述处理功能的软件处理模块之一。
2.权利要求1的方法,其中所述多个网络参数至少包括下述之一:
信道比特率;
信道端到端传输延迟;
信道分组丢失率;或
信道分组丢失突发性。
3.权利要求1的方法,其中所述选择性将所述呼叫提供给所述硬件处理模块或所述软件处理模块之一包括将所述逻辑分析的结果提供给被配置来将所述呼叫提供给所述硬件处理模块或所述软件处理模块的选择机构。
4.权利要求3的方法,进一步包括:
在所述选择机构的切换装置处接收输入信号;
在所述选择机构的控制器处接收所述逻辑分析的结果;以及
将来自所述控制器的控制信号提供给所述切换装置,所述控制信号基于所述逻辑分析和所述监控的电源水平,所述控制信号控制所述切换装置以将所述输入信号输出到所述硬件处理模块或所述软件处理模块以被处理。
5.权利要求4的方法,进一步包括:
接收用户输入以选择配置模式,所述配置模式对应于一组恒定阈值;以及
响应于所述配置模式的选择,使用所述组恒定阈值提供所述控制信号。
6.权利要求4的方法,其中基于包括下述比较的所述逻辑分析,所述控制器控制所述切换装置以输出所述输入信号以被处理,所述比较是:
将信道比特率与预定的比特率阈值进行比较;
将信道端到端传输延迟与预定的延迟阈值进行比较;以及
将信道分组丢失率与预定的分组丢失率阈值进行比较,
其中当所述信道比特率小于预定的比特率阈值时,或当所述信道端到端传输延迟大于或等于预定的延迟阈值时,或当所述信道分组丢失率大于或等于预定的分组丢失率阈值时,所述控制器控制所述切换装置以将所述输入信号输出到所述软件处理模块以被处理。
7.权利要求4的方法,其中当所述监控的电源水平指示移动设备连接到外部电源时,所述控制器使用第一组恒定阈值控制所述切换装置。
8.权利要求4的方法,其中当所述监控的电源水平大于或等于预定的电源阈值时,所述控制器使用第二组恒定阈值控制所述切换装置;以及当所述监控的电源水平小于预定的电源阈值时,所述控制器使用第三组恒定阈值控制所述切换装置。
9.一种经由通过无线通信网络建立的信道与远程设备进行基于分组的呼叫的设备,该设备包括:
用于执行通信客户端应用以进行呼叫并监控多个网络参数的装置;
用于监控电源的电源水平的装置;
用于执行所述多个网络参数的逻辑分析的装置,所述逻辑分析包括将所述多个网络参数与多组阈值中的一组进行比较,基于所述监控的电源水平从所述多组阈值中选择所述一组阈值以用于所述逻辑分析;以及
用于基于所述多个网络参数的所述逻辑分析和所述监控的电源水平,选择性将所述呼叫提供给可操作来实现处理功能的硬件处理模块或可执行以实现所述处理功能的软件处理模块之一的装置。
10.权利要求9的设备,其中所述多个网络参数至少包括下述之一:
信道比特率;
信道端到端传输延迟;
信道分组丢失率;或
信道分组丢失突发性。
11.权利要求9的设备,其中用于选择性将所述呼叫提供给所述硬件处理模块或所述软件处理模块之一的所述装置包括用于将所述逻辑分析的结果提供给被配置来将所述呼叫提供给所述硬件处理模块或所述软件处理模块的选择机构的装置。
12.权利要求11的设备,进一步包括:
用于在所述选择机构的切换装置处接收输入信号的装置;
用于在所述选择机构的控制器处接收所述逻辑分析的结果的装置;以及
用于将来自所述控制器的控制信号提供给所述切换装置的装置,该控制信号基于所述逻辑分析和所述监控的电源水平,所述控制信号控制切换装置以将所述输入信号输出到所述硬件处理模块或所述软件处理模块以被处理。
13.权利要求12的设备,进一步包括:
用于接收用户输入以选择配置模式的装置,所述配置模式对应于一组恒定阈值;以及
用于响应于所述配置模式的选择,使用所述组恒定阈值提供所述控制信号的装置。
14.权利要求12的设备,其中基于包括下述比较的所述逻辑分析,所述控制器控制所述切换装置以输出所述输入信号以被处理,所述比较是:
将信道比特率与预定的比特率阈值进行比较;
将信道端到端传输延迟与预定的延迟阈值进行比较;以及
将信道分组丢失率与预定的分组丢失率阈值进行比较,
其中当所述信道比特率小于预定的比特率阈值时,或当所述信道端到端传输延迟大于或等于预定的延迟阈值时,或当所述信道分组丢失率大于或等于预定的分组丢失率阈值时,所述控制器控制所述切换装置以将所述输入信号输出到所述软件处理模块以被处理。
15.权利要求12的设备,其中当所述监控的电源水平指示移动设备连接到外部电源时,所述控制器使用第一组恒定阈值控制所述切换装置。
16.权利要求12的设备,其中当所述监控的电源水平大于或等于预定的电源阈值时,所述控制器使用第二组恒定阈值控制所述切换装置;以及当所述监控的电源水平小于预定的电源阈值时,所述控制器使用第三组恒定阈值控制所述切换装置。
17.一种移动设备,其包括:
无线访问电路,其被配置成访问无线通信网络;
硬件处理模块,其可选择性地操作来实现处理功能;
软件处理模块,其可选择性地执行以实现所述处理功能;
电源;
电源监控器,其监控所述电源的电源水平;
处理器,其执行通信客户端应用来经由通过所述无线通信网络建立的信道与远程设备进行基于分组的呼叫,所述通信客户端应用被配置来:
监控多个网络参数;
执行所述多个网络参数的逻辑分析,所述逻辑分析包括将所述多个网络参数与多组阈值中的一组进行比较,基于所述监控的电源水平从所述多组阈值中选择所述一组阈值以用于所述逻辑分析;以及
选择机构,其基于所述多个网络参数的所述逻辑分析和所述监控的电源水平,将所述基于分组的呼叫提供给所述硬件处理模块或所述软件处理模块之一。
18.权利要求17的移动设备,其中所述硬件处理模块和所述软件处理模块两者都包括视频或音频编解码器,并且相应地,所述处理功能是视频或音频呼叫之一上的编解码器功能。
19.权利要求17的移动设备,其中多个网络参数包括下述至少之一:
信道比特率;
信道端到端传输延迟;
信道分组丢失率;或
信道分组丢失突发性。
20.权利要求17的移动设备,其中监控多个网络参数是监控所述通信客户端应用的至少一个传输层功能和至少一个应用层功能。
21.权利要求17的移动设备,其中所述选择机构进一步响应于所述远程设备的能力在所述硬件处理模块和所述软件处理模块之间进行选择。
22.权利要求17的移动设备,其中所述选择机构包括:
被配置来接收输入信号的切换装置;以及
控制器,其被配置来:
接收所述逻辑分析和所述监控的电源水平;以及
将控制信号提供给所述切换装置,所述控制信号基于所述逻辑分析和所述监控的电源水平,所述控制信号控制所述切换装置来将所述输入信号输出到所述硬件处理模块或所述软件处理模块来被处理。
23.权利要求17的移动设备,其中所述处理功能是安全功能。
24.权利要求17的移动设备,其中所述无线通信网络是因特网,以及其中所述移动设备是下述之一:
因特网使能的移动电话;
手持式游戏控制台;
个人数字助理(PDA);
平板计算机;或
膝上型计算机。
CN201210326352.7A 2011-09-06 2012-09-06 信号处理 Active CN102932841B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
GB1115386.3 2011-09-06
GB1115386.3A GB2494411B (en) 2011-09-06 2011-09-06 Signal processing
US13/328,089 US8830853B2 (en) 2011-09-06 2011-12-16 Signal processing
US13/328089 2011-12-16

Publications (2)

Publication Number Publication Date
CN102932841A CN102932841A (zh) 2013-02-13
CN102932841B true CN102932841B (zh) 2016-01-13

Family

ID=46889475

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210326352.7A Active CN102932841B (zh) 2011-09-06 2012-09-06 信号处理

Country Status (1)

Country Link
CN (1) CN102932841B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6404776B1 (en) * 1997-03-13 2002-06-11 8 × 8, Inc. Data processor having controlled scalable input data source and method thereof
CN1568466A (zh) * 2001-09-26 2005-01-19 交互设备有限公司 用于传递媒体信号的系统和方法
KR20090059798A (ko) * 2007-12-07 2009-06-11 한국전자통신연구원 통신시스템 및 그 코덱 할당방법
CN101946280A (zh) * 2008-02-20 2011-01-12 捷讯研究有限公司 用于选择话音编码器操作速率的装置及相关方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060121955A1 (en) * 2004-12-07 2006-06-08 Mindspeed Technologies, Inc. Wireless telephone having adaptable power consumption

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6404776B1 (en) * 1997-03-13 2002-06-11 8 × 8, Inc. Data processor having controlled scalable input data source and method thereof
CN1568466A (zh) * 2001-09-26 2005-01-19 交互设备有限公司 用于传递媒体信号的系统和方法
KR20090059798A (ko) * 2007-12-07 2009-06-11 한국전자통신연구원 통신시스템 및 그 코덱 할당방법
CN101946280A (zh) * 2008-02-20 2011-01-12 捷讯研究有限公司 用于选择话音编码器操作速率的装置及相关方法

Also Published As

Publication number Publication date
CN102932841A (zh) 2013-02-13

Similar Documents

Publication Publication Date Title
US9351194B2 (en) Congestion level indication with explicit congestion notification in communication systems
US8989661B2 (en) Method and system for optimized architecture for bluetooth streaming audio applications
US10448455B2 (en) Radio communications gateway and radio communications terminal
US20100262712A1 (en) Channel adaptive video transmission method, apparatus using the same, and system providing the same
CN108282671B (zh) 一种流媒体数据传输方法
US20070072614A1 (en) Handover control in radio communication system
KR20010034865A (ko) 통신 시스템 사이에 상호운용성을 제공하기 위한 장치
KR20080010841A (ko) 블루투스를 이용한 동영상 스트림 전송 장치 및 방법
KR20090094231A (ko) 듀얼 모드 양방향 오디오 통신을 위한 큐 컨트롤러의 방법들 및 장치들
US10652297B2 (en) Method, system and apparatus for the transmission and adaption of data
EP2740291B1 (en) Selection of signal processing module depending on network conditions
CN113747510A (zh) 通信方法及装置
CN102932841B (zh) 信号处理
CN112585921A (zh) 利用网络状况反馈改善协调媒体作品质量的方法和系统
CN116782307A (zh) 业务速率调整方法及通信装置
KR20180126133A (ko) 복수의 이종 통신망을 통해 데이터를 선택적으로 이중 전송하는 방법 및 장치
EP4057682A1 (en) Data transmission method and apparatus, and communication device
CN112087781B (zh) 一种lte系统中确定语音编码方式的方法和设备
WO2022168264A1 (ja) 通信システム、中継装置及び中継方法
US20070127433A1 (en) Method and apparatus for generating sndcp header in gprs communication system
WO2023185608A1 (zh) 一种数据传输的方法及通信装置
WO2022178778A1 (zh) 一种数据传输方法及通信装置
US8553567B1 (en) Packet dropping based on RF conditions
JP2012070198A (ja) 映像伝送システム
WO2007036605A1 (en) Handover control in radio communication system

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
TR01 Transfer of patent right

Effective date of registration: 20200511

Address after: Washington State

Patentee after: MICROSOFT TECHNOLOGY LICENSING, LLC

Address before: Ai Erlandubailin

Patentee before: Skype

TR01 Transfer of patent right