Abstract:
To increase channel capacity, mobile phone carriers have deployed speech coders, such as Advanced MultiBand Excitation coding (AMBE), in networks to reduce the bit rate of each call. One undesired consequence of employing such speech coders is that the voice quality can be much worse as compared to higher bit-rate speech coders. A method or corresponding apparatus in an example embodiment of the present invention performs voice quality enhancement transparently within a network by detecting use of a coder applying rate reduction to a speech signal and known to have an adverse effect on a coded speech signal. Upon detection of the use of such coder, the coded speech signal is corrected based on components introduced into the coded speech signal due to the rate reduction. As a result of applying the voice quality enhancement, adverse effects of speech coders can be reduced, while maintaining high quality voice signals.

Description:
BACKGROUND OF THE INVENTION 
       [0001]    In an effort to increase channel capacity, mobile phone carriers have deployed speech coders, such as Advanced MultiBand Excitation (AMBE) coding, in the network to reduce the bit rate of each call. One undesired consequence of employing such speech coders is that the voice quality can be much worse as compared to higher bit-rate speech coders. In particular, AMBE speech coding has shown to produce a spectral imbalance overemphasizing high frequency spectral content. This imbalance produces a “thinness” of the lower frequency speech content and excessive high-frequency sibilance sounds. The network contains Voice Quality Enhancement equipment which can improve these effects, but unfortunately, the telephone networks do not employ any type of signaling to indicate the form of speech coding employed. 
       SUMMARY OF THE INVENTION 
       [0002]    A method or corresponding apparatus in an example embodiment of the present invention performs voice quality enhancement by detecting use of a coder, that applies rate reduction to a speech signal, and is known to have an adverse effect on a coded speech signal. Upon detection of the use of such coder, the coded speech signal is corrected as a function of components introduced into the coded speech signal due to the rate reduction. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0003]    The foregoing will be apparent from the following more particular description of example embodiments of the invention, as illustrated in the accompanying drawings in which like reference characters refer to the same parts throughout the different views. The drawings are not necessarily to scale, emphasis instead being placed upon illustrating embodiments of the present invention. 
           [0004]      FIG. 1  is a network diagram of a telephone network that employs a Voice Quality Enhancement (VQE) module according to an example embodiment of the present invention; 
           [0005]      FIG. 2  is a flow chart illustration of an example system for improving low bit-rate speech coding; 
           [0006]      FIG. 3  is a flow chart illustrating operation of an example detection module responsible for detecting adverse effects of speech coders; 
           [0007]      FIG. 4  is a flow chart illustrating operation of an example correction module responsible for correcting adverse effects of speech coders; and 
           [0008]      FIG. 5  is a high level flow diagram of an example embodiment of the present invention. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0009]    A description of example embodiments of the invention follows. 
         [0010]    An example embodiment of the present invention relates to Media Quality Enhancement (MQE) applications, such as Voice Quality Enhancement (VQE), in telephony networks. 
         [0011]    An example embodiment of the invention describes a method and corresponding apparatus for detecting a presence of low bit-rate coding, such as Advanced MultiBand Excitation (AMBE) coding and other MultiBand Excitation (MBE) coding, using the speech signal itself. Once the presence of low bit-rate coding is detected, corrective measures are employed to improve the voice quality of the source speech. 
         [0012]    One embodiment of this invention employs AMBE as the specific low-bit rate speech coding to be detected and corrected. Under other possible embodiments of the invention, use of other low-bit rate coders in a media transport or other network may be detected and corrected. 
         [0013]      FIG. 1  is a network diagram  100  of a telephone network that employs a Voice Quality Enhancement (VQE) module  130  according to an example embodiment of the present invention. The input speech signal  110  enters a network  160  that deploys speech coders  120 , such as Advanced MultiBand Excitation (AMBE) coding, to reduce the bit rate of each call. The resulting voice signal with reduced quality  125  subsequently enters the voice quality enhancement module  130 . 
         [0014]    An example system for improving low bit-rate speech coding includes detection  140  and correction  150  modules. The detection module  140  is responsible for detecting the presence of low bit rate coding, such as AMBE or other MBE coding, using the speech signal itself. Once the presence of low bit-rate coding is detected, corrective measures are employed to improve the voice quality of the source speech. 
         [0015]    The output of the detection module is a control signal  145  that is sent to the correction module  150 . The correction module  150  then employs the detection input  145  and applies corrective measures to improve the quality of the speech signal  125 . The voice quality enhancement module  130  subsequently outputs the corrected speech  170 . 
         [0016]    The voice quality enhancement module  130  of this example embodiment performs very well on a pilot set of AMBE coded and non-AMBE coded speech samples. The detection time for detecting the presence of low bit rate coding may vary as a direct relation with a relative amount of degradation present in the input speech signal  110 . A tradeoff may exist between a speed of detection time and a number of false detections. Thus, false detections may be tolerated as the variable gain mapping may produce relatively small mixing of the correction signal if the input speech signal is deemed to be only mildly degraded. 
         [0017]    The voice quality enhancement module  130  of this example embodiment may also estimate the relative amount of speech coding that has been applied to a speech sample. 
         [0018]    In accordance with the foregoing, a method or corresponding apparatus in an example embodiment of the present invention performs voice quality enhancement by detecting the use of a coder applying rate reduction to a speech signal, known to have an adverse effect on a coded speech signal. Upon detection of the use of such coder, the coded speech signal is corrected as a function of components introduced into the coded speech signal due to the rate reduction. 
         [0019]    Another example embodiment of the present invention includes a computer program product including a computer readable medium having computer readable code stored thereon, which, when executed by a processor, causes the processor to detect use of a coder applying rate reduction to a speech signal, the coder known to have an adverse effect on a coded speech signal. Upon detection of the use of such coder, the coded speech signal is corrected as a function of components introduced into the coded speech signal due to the rate reduction. 
         [0020]    In the view of the foregoing, the following description illustrates example embodiments and features that may be incorporated into a system for voice quality enhancement, where the term “system” may be interpreted as a system, subsystem, apparatus, device, method or any combination thereof. 
         [0021]    The system may detect the use of a coder such as an Advanced Multiband Excitation Coder. In order to detect the use of the coder the system may detect noisy components in portions of spectrum in which periodic waveforms are present. Alternatively, the system may detect the use of the coder by detecting noise in low frequency bands. In order to detect noise in low frequency bands the system may detect portions of spectrum that are dominated by periodic frequencies. Alternatively, the system may detect zero-crossings in a low-pass filtered version of the speech signal to detect noise in low frequency bands. The system may generate a signal in response to detecting the zero-crossings. The system may smooth the signal generated in response to detecting the zero-crossings to reduce variability. The system may employ dual-slope smoothing of the signal generated in response to detecting the zero-crossings to emphasize periodic frequencies. The system may smooth the signal generated in response to detecting the zero-crossings to generate a periodic activity detection signal. The system may measure periodicity in the speech signal over time and generate the periodic activity detection signal based on the periodicity. The system may compare the periodic activity detection signal to a threshold, measure number of threshold crossings of the periodic activity detection signal, and generate a periodic activity detection rate signal as a function of the number of threshold crossings. The system may compare the periodic activity detection rate signal to a criterion threshold. The system may correct the coded speech signal in an event the periodic activity detection rate signal exceeds the criterion threshold. 
         [0022]    The system may correct the coded speech signal by applying a bass boost filter and a sibilance filter to the speech signal. The sibilance filter may include a low-pass filter and a sibilance detector. In order to correct the coded speech signal, the system may dynamically mix output of the bass boost filter and output of the sibilance filter as a function of amount of sibilance in the speech signal. The system may dynamically mix the speech signal with output from the sibilance filter as a function of the degree of degradation resulting from the coder applying a rate reduction. The system may dynamically mix the speech signal with output from the sibilance filter as a function of a smoothed version of the periodic activity detection signal. The system may map the smoothed version of the periodic activity detection signal to one at periodic activity detection signal threshold values. The system may map the smoothed periodic activity detection signal to a minimum value at lower than periodic activity detection signal threshold values. 
         [0023]    The system may ensure zero net gain using an automatic gain control. 
         [0024]      FIG. 2  is a flow chart illustration of an example system  200  for improving low bit-rate speech coding, such as AMBE or other MBE coding. In this example embodiment, the input speech signal  210  is applied to both the detection module  240  and the correction module  250 . The output of the detection module  240  is a control signal  245  that is sent to the correction module  250 . The correction module employs the detection input  245  to correct the speech input  210  as needed. The correction module then outputs the corrected speech  270 . 
         [0025]      FIG. 3  is a flow chart  300  illustrating example operation of the detection module responsible for detecting the adverse effects of speech coders. The detection module operates based on the observation that a coder introduces noise into the low frequency bands. In this example embodiment, an AMBE coder is used as an example coder introducing adverse effects to the speech signal. The detection module operates similarly in the presence of coders employing other coding procedures. 
         [0026]    The amount of noise in the low-frequency bands of AMBE coders increases with the amount of noise mixed in with the speech input prior to coding. This may be caused by the AMBE coder leaking high frequency noise and sibilance energy into the low frequency bands. The leakage of noisy energy into low frequency bands may cause the AMBE coder to misidentify voiced band(s) as unvoiced and thus incorrectly synthesize the voiced band(s). 
         [0027]    The detector module of this example embodiment may detect the amount of noise in the low-frequency bands. The example embodiment applies a low pass filter  315  to the input speech signal  310  and subsequently detects the amount of noise in the low-frequency bands by detecting the zero-crossings  320  in the low pass-filtered version  317  of the speech input  310 . Cutoff frequencies of the low pass filter  315  in the range of 1500 Hz have been shown to produce good detection performance for speech processing. The low frequencies of speech waveforms are dominated by the periodic fundamental (f 0 ) and formant frequencies produced by speech utterances. Speech coders can exploit this fact to reduce the overall bit-rate by coding periodic content in low frequency bands in a simpler form. 
         [0028]    The zero-crossing detector  320  is responsible for measuring the relative periodicity of the input waveform. The amount of zero-crossings  320  is relatively low in periodic signals as compared to noisy signals. Thus, since the low frequency content of clean speech is very periodic, it produces a relatively low number of zero-crossings. In contrast, low bit rate encoded-speech has a relatively high number of zero-crossings. 
         [0029]    The output  322  of the zero-crossing detector  320  can vary widely depending on the speech signal input  310 . In this example embodiment, following the zero-crossing detector  320 , a smoothing function  325  is applied to reduce the variability in the signal output  322  of the zero-crossing detector  320 . 
         [0030]    Subsequently, a dual-slope smoothing function  330  is employed to emphasize periodic detection (i.e., low zero-crossing rates) by having a faster falling signal time constant than rising signal time constant (e.g., 50 ms vs. 500 ms). 
         [0031]    The output of the dual-slope smoothing function  330  is a periodic activity detection (pad) signal  335 . This signal  335  is a measure of the periodicity in the low-frequency speech input  310  as a function of time. 
         [0032]    Pad signals resulting from high bit rate speech coder input have a relatively low mean and variability. In contrast, coders using low bit-rate speech coding, such as AMBE or other MBE coding procedures, produce a pad signal with a relatively higher mean and variability. 
         [0033]    This difference is exploited in a pad threshold detection module  340  by comparing the pad signal  335  with a threshold value. A pad rate counter  345  keeps a running count of the number of times the pad signal  335  crosses this threshold. The amount of pad signal threshold crossings versus time is defined as the pad rate signal  347 . This signal  347  is compared  350  with a criterion threshold to determine the presence of input signals effected by low bit-rate speech coders. If the pad rate is smaller than the threshold value  355 , the value of a detection flag is set to zero  365 . Alternatively, if the pad rate is larger than the threshold value  360 , the value of the detection flag is set to one  370 . 
         [0034]    The control output  380  of the detector module of this example embodiment includes two outputs: the detection flag  375 , which is used to enable correction, and the pad signal  335 , which is used to throttle the correction when correction is applied. 
         [0035]      FIG. 4  is a flow chart  400  illustrating example operation of the correction module responsible for correcting adverse effects of certain speech coders. 
         [0036]    The example embodiment may vary the amount of correction applied to the input speech signal  410  based on the knowledge that the amount of noise in the low-frequency bands in AMBE or other low rate coding increases relative to the amount of noise mixed in with the speech input prior to coding. 
         [0037]    The input speech signal  410  initially enters a bass boost filter  415 . The bass boost filter  415  at bass frequencies (i.e., low frequencies) acts to accentuate the low frequencies relative to high frequencies. A sibilance filter  420  is then applied to the output of the bass boost filter  417 . The sibilance filter  420  is a dynamic filter that includes a low pass filter with a cutoff frequency of approximately 2.5 kHz. The sibilance detector  425  dynamically combines the sibilance filter output  427  with the bass boost filter output  417  depending on the amount of sibilance in the input speech signal  410 . In a similar manner, the sibilance filter output  422  (i.e., the correction signal) is dynamically combined with the speech input  410 . The amount of mixing depends on an estimate of the degree of AMBE (or other low bit rate) coder degradation present in the speech input  410 . If the detection flag  375  is set to zero, the example embodiment assumes that no low bit rate coder degradation is present and the input speech  410  is passed directly to the speech output  470  without combining any correction signal  422 . If the detection flag  375  is set (i.e., the value of the flag is set to one), the amount of correction signal  422  combined is based on a further smoothed version of the pad signal  335  that is mapped between a value of one for pad signals  335  at the pad threshold (i.e., no correction signal mixed in) to a minimum value (e.g., 0.5, maximum correction signal mixed in) for pad signals  335  at a lower threshold. The sibilance detector  425  uses zero crossings in the high frequency band above 2 kHz to create its gain output. 
         [0038]    The example embodiment may also employ an Automatic Gain Control (AGC) module  460 . The automatic gain control module  460  is a simple, first-order, feedback loop that adjusts the gain to drive the full-band output power to equal the full-band input power. The automatic gain control module  460  compensates for the differential gain of the bass boost filter and the dynamic sibilance filter. 
         [0039]      FIG. 5  is a high level flow diagram of an example embodiment of the present invention. In this example embodiment, the input speech  510  is degraded by a coder  520  that is known to have an adverse effect on a coded speech signal  510 . The resulting degraded signal  525  enters a detection unit  540  that detects the use of the coder  520  applying rate reduction to the input speech  510 . If the detection unit  540  determines that the signal has in fact been degraded by the use of the coder  520 , the correction unit  550  of this example embodiment corrects the coded speech signal  510  as a function of components introduced into the coded speech signal  510  due to the rate reduction. The example embodiment subsequently outputs the resulting corrected coded speech signal  570  with enhanced voice quality. 
         [0040]    It should be understood that procedures, such as those illustrated by flow diagram or block diagram herein or otherwise described herein, may be implemented in the form of hardware, firmware, or software. If implemented in software, the software may be implemented in any software language consistent with the teachings herein and may be stored on any computer readable medium known or later developed in the art. The software, typically, in form of instructions, can be coded and executed by a processor in a manner understood in the art. 
         [0041]    While this invention has been particularly shown and described with references to example embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the scope of the invention encompassed by the appended claims.