Abstract:
In one embodiment, the quality of experience for a multi-part conference call is determined. Values for network characteristics for a conference call between at least three parties is captured using a multi-party conference call system. The network characteristics encompasses at least parameters expressed in an E-Model R-Factor equation. A quality of experience (QoE) is determined that accounts for degradation effects. The determined QoE is represented as a corrected mean opinion score (MOS) perceived by the receiving party. A controllable parameter of the conference call is dynamically and automatically modified to positively affect the determined QoE of the receiving party when the QoS is below a designated minimal QoE threshold.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application is a continuation of U.S. patent application Ser. No. 14/096,153, filed Dec. 4, 2013 (pending), which is incorporated herein in its entirety. 
    
    
     BACKGROUND 
     The present invention relates to the field of conference calls and, more particularly, to the quality of experience (QoE) determination for multi-party VoIP conference calls that account for focus degradation effects. 
     In recent years, the use of Voice over Internet Protocol (VoIP) for voice communications has proliferated in both the private and corporate sectors. The success achieved by basic two-party VoIP communication, in terms of reliability and cost-savings, has encouraged multi-party (i.e., three or more party) VoIP conferencing products like SKYPE. Maintaining a good quality of experience (QoE) for the participants of the conference call is a priority and a challenge for multi-party VoIP conference call systems, as the QoE is typically directly related to use and revenue. 
     Conventional approaches to monitoring the QoE of a multi-party conference call utilize the same processes as two-party or peer-to-peer conference calls. Thus, conventional approaches fail to address differences in degradation factors between the multiple connections. That is, the network connection between User A and User B is subject to a first set degradation factors; the connection between User A and User C a second set of degradation factors; and so on. 
     Further, in multi-party conference call systems that utilize a centralized connection topology, these conventional approaches fail to take into account negative effects of the focus (e.g., the central point of control that all communications pass through) upon the QoE of the conference call. This centralized focus component transcodes a received signal before re-encoding and distributing the signal to the other parties. The transcoding process, therefore, affects the signal provided to a user, and, by extension, the QoE perceived by that user. 
     BRIEF SUMMARY 
     One aspect of the present invention can include a method for determining the quality of experience for a multi-party conference call. Such a method can begin with capturing the values for network characteristics for a conference call between three or more parties made using a multi-party conference call system in real-time or near real-time. The network characteristics can encompass the parameters expressed in the E-Model R-Factor equation. The multi-party conference call system can utilize a centralized focus component through which signals comprising the conference call are received from and sent to the parties participating in the conference call, and Voice over Internet Protocol (VoIP). A quality of experience (QoE) that accounts for degradation effects of the centralized focus component can be determined for each party that is currently receiving a signal from the centralized focus component. The determined QoE can be represented as a corrected mean opinion score (MOS) perceived by the receiving party. When the determined QoE for the receiving party is below a predetermined threshold value, a controllable parameter of the conference call can be automatically and dynamically modified to positively affect the determined QoE of the receiving party. 
     Another aspect of the present invention can include a system for improved QoE multi-party conference calls. Such a system can include a multi-party VoIP conference call system having a centralized focus component and an improved QoE manager. The multi-party conference call system can be configured to facilitate an exchange of signals between three or more parties over at least one network. The centralized focus component can be configured to receive and distribute the data signals among the parties using a transcoding process. The improved quality of experience (QoE) manager can be configured to assess a QoE for each party when receiving a data signal. The QoE can be expressed as a corrected mean opinion score (MOS) that accounts for degradation effects introduced by the transcoding process of the centralized focus component. The determination of the corrected MOS can be based upon the E-Model R-Factor equation. 
     Yet another aspect of the present invention can include a computer program product that includes a computer readable storage medium having embedded computer usable program code. The computer usable program code can be configured to capture values for the network characteristics for a conference call between three or more parties made using a multi-party conference call system in real-time or near real-time. The network characteristics can encompass parameters expressed in the E-Model R-Factor equation. The multi-party conference call system can utilize a centralized focus component through which signals comprising the conference call are received from and sent to the parties participating in the conference call, and Voice over Internet Protocol (VoIP). The computer usable program code can be configured to determine a quality of experience (QoE) that accounts for degradation effects of the centralized focus component for each party that is currently receiving a signal from the centralized focus component as part of the conference call. The determined QoE can be represented as a corrected mean opinion score (MOS) perceived by the receiving party. Further, the computer usable program code can be configured to, when the determined QoE of the conference call for the receiving party is below a predetermined threshold value, automatically and dynamically modify a controllable parameter of the conference call to positively affect the determined QoE of the receiving party. 
    
    
     
       BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS 
         FIG. 1  is a schematic diagram illustrating a system that provides a quality of experience (QoE) for parties of a conference call that is corrected for degradation effects introduced by the focus component of a centralized multi-party Voice over Internet (VoIP) conference call system in accordance with embodiments of the inventive arrangements disclosed herein. 
         FIG. 2  is a flowchart of a method expressing the general operation of a multi-party VoIP conference calling system that utilizes an improved QoE manager in accordance with an embodiment of the inventive arrangements disclosed herein. 
         FIG. 3  is an annotated flowchart of a method describing the calculation of the corrected QoE by the improved QoE manager in accordance with an embodiment of the inventive arrangements disclosed herein. 
     
    
    
     DETAILED DESCRIPTION 
     The present invention discloses a solution for providing a mean opinion score (MOS) for a multi-party conference call that accounts for the degradation effects introduced by the focus component of a multi-party VoIP conference calling system. For each party of the conference call receiving an audio signal, an improved quality of experience (QoE) manager can use the MOS corresponding to an R-value calculated using the E-Model R-Factor equation and a set of predetermined focus-effect coefficients as input to a correction function that produces a corrected MOS that represents the QoE perceived by the receiving party. 
     As will be appreciated by one skilled in the art, aspects of the present invention may be embodied as a system, method or computer program product. Accordingly, aspects of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.” Furthermore, aspects of the present invention may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon. 
     Any combination of one or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. 
     A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. 
     Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing. Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the “C” programming language or similar programming languages. The program code may execute entirely on the user&#39;s computer, partly on the user&#39;s computer, as a stand-alone software package, partly on the user&#39;s computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user&#39;s computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider). 
     Aspects of the present invention are described below with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. 
     These computer program instructions may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks. 
     The computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. 
       FIG. 1  is a schematic diagram illustrating a system  100  that provides a quality of experience (QoE)  132  for parties  105  and  125  of a conference call that is corrected for degradation effects introduced by the focus component  145  of a centralized multi-party Voice over Internet (VoIP) conference call system  140  in accordance with embodiments of the inventive arrangements disclosed herein. In system  100 , the parties  105  and  125  can participate in a conference call supported by the multi-party VoIP conference call system  140 . 
     The parties  105  and  125  can represent a single individual or a group of co-located individuals. In system  100 , the parties  105  and  125  can be distinguished as a sending party  105  or a receiving party  125 . The sending party  105  can be the party that is currently generating an audio signal for the conference call. The receiving party  125  can be those parties that are receiving an audio signal from the multi-party VoIP conference call system  140 . This distinction can be required for the sake of discussion of the present disclosure as the multi-party VoIP conference call system  140  can be concerned with monitoring the corrected QoE  132  of only the receiving party  125 . It should be noted, however, that the distinction between sending  105  and receiving parties  125  can be fluid during the conference call as the parties  105  and  125  shift between talking and listening. 
     Each party  105  and  125  can participate in the conference call via a conference call client application  115 , herein referred to as the client application  115 . The client application  115  can operate upon a suitable client device  110  and  120 . The client device  110  and  120  can represent a variety of electronic or computing devices capable of supporting operation of the client application  115  and communicating with the multi-party VoIP conference call system  140  over a network  180 . Therefore, the client device  110  and  120  can include the hardware and/or software required to support the playback and/or capture of at least audio signals (e.g., speakers, microphone, device driver programs, etc.). 
     Examples of a client device  110  and  120  can include, but are not limited to, a desktop computer, a laptop computer, a tablet computer, a notebook computer, a Web-enabled smartphone, an E-reader device, a conference call system comprised of a computing device interconnected with various specialty devices (i.e., a VoIP conference call phone), and the like. 
     The multi-party VoIP conference call system  140  can represent the hardware and/or software components required to provide the functionality that supports a conference call between at least three participating parties  105  and  125  using a centralized call topology. Since multi-party VoIP conference call systems  140  and the concept of the centralized call topologies are well known in the art, only elements pertinent to the present disclosure can be illustrated and/or discussed herein. 
     The components of note of the multi-party VoIP conference call system  140  can include a focus component  145  and an improved QoE manager  150 . In a multi-party VoIP conference call system  140  that utilizes a centralized call topology, the focus component  145 , also referred to as a multipoint control unit (MCU) in literature, can be a dedicated media server or appropriately-enabled client device  110  and  120 . The purpose of the focus component  145  can be to act as a central point through which all audio signals are received and distributed. 
     Audio signals received by the focus component  145  can undergo a process called transcoding. In the transcoding process, the focus component  145  can decode received audio signals, mix multiple audio signals, when necessary (i.e., multiple sending parties  105 ), and then re-encode the [mixed] audio signal for transmission to the receiving parties  125 . 
     The improved QoE manager  150  can be a component of the multi-party VoIP conference call system  140  that estimates a corrected QoE  132  for each receiving party  125 . Most conventional multi-party VoIP conference call systems  140  have a component that monitors the QoE throughout the conference call, taking steps to mitigate decreases QoE, when necessary. The improved QoE manager  150  can perform these same functions, but in a manner that accounts for degradation effects introduced by the transcoding process of the focus component  145 ; hence, the QoE  132  can be corrected for transcoding degradation. 
     The QoE and, by extension, the corrected QoE  132 , can be the subjective perception of call quality by the receiving party  125 . Conventional approaches to conference call QoE assessment can utilize offline analysis of recordings like the Perceptual Evaluation of Speech Quality (PESQ) and feedback from the receiving party  125 . Real-time (or near real-time) assessment can utilize the R-Factor equation  160  of the E-Model authored by the International Telecommunication Union (ITU). The R-Factor equation  160  can be an expression for speech quality evaluation of a VoIP peer-to-peer call and is valid for only ITU codecs, limiting its usability with other popular VoIP codecs and multi-party conference calls. 
     The improved QoE manager  150  can address these short-comings of the R-Factor equation to broaden its scope to non-ITU codecs and a multi-party conference call environment. Since the R-Factor equation was created for a peer-to-peer call topology, it can lack variables to account for signal degradation effects introduced by the transcoding process of the focus component  145  in a multi-party VoIP conference call system  140 . Thus, the improved QoE manager  150  can include both a QoE calculator  155  in conjunction with a QoE corrector  165  to produce the corrected QoE  132 . 
     The QoE calculator  155  can calculate the QoE for each receiving party  125  using the R-Factor equation  160 . It is important to emphasize that the R-Factor equation  160  can be applied to each receiving party  125  independently to account for differences in network characteristics between the multi-party VoIP conference call system  140  and each receiving party  125 . 
     The QoE corrector  165  can use the QoE produced by the QoE calculator  155  as input to a correction function  170 . The correction function  170  can be a mathematical model developed to adjust the QoE determined by the R-Factor equation  160  for the effects of the focus component  145  upon the audio signal delivered to a receiving party  125 . The correction function  170  can also utilize information obtained from a focus-effect table  177  in its calculation. 
     The focus-effect table  177  can be stored in a data store  175  accessible to the QoE corrector  165 . The focus-effect table  177  can contain codec-specific coefficient data for use with the correction function  170  to calculate the corrected QoE  132 . The derivation used to determine the coefficients contained in the focus-effect table  177  can be explained in the paper, “Improved E-Model for Monitoring Quality of Multi-Party VoIP Communications”. 
     The improved QoE manager  150  can then use the corrected QoE  132 , instead of the QoE determined with the R-Factor equation  160  by the QoE calculator  155 , to perform other QoE-related functions. For example, as in many conventional conference call systems, the improved QoE manager  150  can compare the corrected QoE  132  to a preset QoE threshold  178 . The QoE threshold  178  can be a value that expresses the minimum allowed corrected QoE  132 . Should the corrected QoE  132  fall below the QoE threshold  178 , the improved QoE manager  150  can perform additional actions to raise the corrected QoE  132  for that receiving party  125 . 
     In another embodiment, the improved QoE manager  150  can be implemented as a plug-in component to an existing QoE component of the multi-party VoIP conference calling system  140 . In such an embodiment, the improved QoE manager  150  can need only contain the QoE calculator  155  and focus-effect table  177  and would use the QoE determined by the existing component to calculate the corrected QoE  132 . 
     In yet another embodiment, the improved QoE manager  150  can be implemented as a plug-in component to the multi-party VoIP conference calling system  140  that replaces an existing QoE component or provides real-time QoE monitoring the the multi-party VoIP conference calling system  140 . 
     In another contemplated embodiment, the multi-party VoIP conference call system  140  can utilize a hybrid call topology. In such an embodiment, the functionality of the improved QoE manager  150  can be distributed to those nodes of the multi-party VoIP conference call system  140  that have the capability of acting as a focus component  145 . 
     It should be noted that, while the present disclosure is focused on the corrected QoE  132  of only the audio portion of a conference call, the techniques taught in the present disclosure can be extended to be used with conference calls that utilize both audio and video. That is, the present disclosure can be used to provide a corrected QoE  132  for the audio portion of the video conference call. Alternately, the methodology employed to achieve the correction function  170  and/or the coefficients of the focus-effect table  177  can be utilized to produce similar elements for video codecs. 
     As used herein, presented data store  175  can be a physical or virtual storage space configured to store digital information. Data store  175  can be physically implemented within any type of hardware including, but not limited to, a magnetic disk, an optical disk, a semiconductor memory, a digitally encoded plastic memory, a holographic memory, or any other recording medium. Data store  175  can be a stand-alone storage unit as well as a storage unit formed from a plurality of physical devices. Additionally, information can be stored within data store  175  in a variety of manners. For example, information can be stored within a database structure or can be stored within one or more files of a file storage system, where each file may or may not be indexed for information searching purposes. Further, data store  175  can utilize one or more encryption mechanisms to protect stored information from unauthorized access. 
     Network  180  can include any hardware/software/and firmware necessary to convey data encoded within carrier waves. Data can be contained within analog or digital signals and conveyed though data or voice channels. Network  180  can include local components and data pathways necessary for communications to be exchanged among computing device components and between integrated device components and peripheral devices. Network  180  can also include network equipment, such as routers, data lines, hubs, and intermediary servers which together form a data network, such as the Internet. Network  180  can also include circuit-based communication components and mobile communication components, such as telephony switches, modems, cellular communication towers, and the like. Network  180  can include line based and/or wireless communication pathways. 
       FIG. 2  is a flowchart of a method  200  expressing the general operation of a multi-party VoIP conference calling system that utilizes an improved QoE manager in accordance with embodiments of the inventive arrangements disclosed herein. Method  200  can be performed within the context of system  100 . 
     Method  200  can begin in step  205  where the multi-party VoIP conference calling system can establish a conference call session between three or more parties. An audio signal can be received from a sending party in step  210 . In step  215 , the received audio signal can be transcoded by the focus component. 
     The transcoded audio signal can be delivered to the receiving parties in step  220 . In step  225 , the mean opinion score (MOS) can be calculated and corrected for the degradation effects of the transcoding process for each receiving party. MOS can be well-known in the art as a subjective measurement of audio quality recommended by the ITU and can be used interchangeably with QoE (i.e., QoE is expressed in terms of MOS). The result of the R-Factor equation can be mapped to a value on the MOS scale. 
     It can be determined if the calculated MOS satisfies the preset QoE threshold in step  235 . When the calculated MOS satisfies the QoE threshold, the multi-party VoIP conference calling system can continue its normal operation with the flow of method  200  returning to step  210  to handle the next audio signal. 
     When the calculated MOS value does not satisfy the QoE threshold, the multi-party VoIP conference calling system can task actions to improve the MOS like step  240  where the MOS of the receiving party can be calculated for a different codec supported by the multi-party VoIP conference calling system. It can then be determined if the MOS of the different codec satisfies the QoE threshold in step  245 . 
     When the MOS calculated for the different codec satisfies the QoE threshold, step  250  can be performed where the receiving party can be switched to using the different codec. When the MOS calculated for the different codec does not satisfy the QoE threshold, a modification to one or more other operating parameters can be determined to improve the MOS of the receiving party in step  255 . For step  250  or  255 , flow of method  200  can return to step  210  to handle the next audio signal. 
       FIG. 3  is an annotated flowchart of a method  300  describing the calculation of the corrected QoE by the improved QoE manager in accordance with embodiments of the inventive arrangements disclosed herein. Method  300  can be performed within the context of system  100  and/or method  200 . 
     Method  300  can begin in step  305  where the improved QoE manager can calculate the MOS of the receiving party using the E-Model R-Factor equation  325  and network characteristics. The terms of the R-Factor equation  325  can represent the following parameters: R 0 —the basic signal-to-noise ratio; I s —all impairments that occur substantially simultaneous with the voice signal; I d —all impairments due to delay; I e,eff —effective equipment impairment factor; and, A—advantage of access factor. 
     The codec being used for the receiving party can be identified in step  310 . In step  315 , the focus-effect coefficients  333  for the identified codec  337  can be obtained from the focus-effect table  330 . The example focus-effect table  330  shown for method  300  can indicate the focus-effect coefficients  333  (x1, x2, x3, and x4) for the SILK codec  337  used by the SKYPE multi-party VoIP conference calling system. As previously mentioned, the derivation of the values for the focus-effect coefficients  333  can be detailed in the paper, “Improved E-Model for Monitoring Quality of Multi-Party VoIP Communications”. 
     The corrected MOS for the receiving party can then be calculated using the correction function  340  in step  320 . As shown, the correction function  340  can be a third degree function based upon the MOS calculated using the R-Factor equation  325  and the focus-effect coefficients  333  for the codec  337 . 
     As an example of use, a peer-to-peer conference call can have a calculated MOS of 4.2, which is subjectively of good quality. Using this same conference call, in terms of network impairment characteristics (i.e., calculates to the same R, maps to same MOS), in a multi-party setting (i.e., the peer-to-peer can represent a single focus-to-receiving party relationship), the conference call would have a corrected MOS of 3.8, which is only of fair quality. 
     The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.