The present invention relates to mute processing apparatuses and methods, and particularly to a mute processing apparatus and method for automatically sending mute frames during a multi-person communication over via a network.
With the development of communication networks and associated services, a multi-person communication has been introduced and regarded as a typical service in the communication networks, such as the Public Switched Telephone Network (PSTN) and the Voice over Internet Protocol (VoIP) Network. Furthermore, the multi-person communication has been also adopted in a network telephone conversation or a network TV conversation. Such multi-person communication can support multiple persons simultaneously to communicate, and deliver speech data from broadcaster(s) to the listeners.
In order to provide a friendly communication environment, it is critical for the multi-person communication to utilize system resources to reduce delay, namely to deliver the speech data to each person as soon as possibly. With respect to the delay problem, controlling a transferring amount of the speech data is an effective method to solve the delay problem. However, current multi-person communication systems indiscriminately transfer all data regardless of sound data or soundless data over the communication network. In other words, the soundless data is send over the communication network as well as the sound data. As a result, the soundless data increases a loading of the communication network and the transferring amount of the speech data. Consequently, a delay phenomenon may appear due to the negligible soundless data, therefore, a service quality of the multi-person communication system may be weakened due to the delay phenomenon.
What is needed, therefore, is a mute processing apparatus and method used in the multi-person communication system, which can automatically send mute frames when there are no sound inputs from terminals of the multi-person communication system without sending unnecessary soundless data, thereby reducing the transferring amount of the speech data due to rather less sizes of the mute frames as compared to the soundless data.
A mute processing apparatus is provided. The apparatus is capable of automatically sending mute frames when persons don't talk or keep mute during a multi-person communication over a network. The apparatus mainly includes a sampling unit, an amplitude analyzer, a coding unit, a processing unit, and an output unit. The sampling unit is for collecting input signals from a microphone. The amplitude analyzer is for obtaining a maximum amplitude of input signals within a present time span. The coding unit is for coding the input signals within the present time span. The processing unit is for sending a mute frame within the present time span if each maximum amplitude of the input signals within each of previous continuous time spans is less than a predetermined amplitude and the maximum amplitude of the input signals within the present time span is still less than the predetermined amplitude, otherwise, controlling the coding unit to code the input signals within the present time span. The output unit is for outputting the mute frame from the processing unit or coded signals from the coding unit.
A mute processing method is also provided. The method includes the steps of: (a) collecting input signals from a microphone; (b) obtaining a maximum amplitude of input signals within a present time span; (c) sending a mute frame if each maximum amplitude of the input signals within each of previous continuous time spans is less than a predetermined amplitude and the maximum amplitude of the input signals within the present time span is still less than the predetermined amplitude, otherwise, coding the input signals within the time span; and (d) outputting the mute frame or coded signals.
Other advantages and novel features will be drawn from the following detailed description with reference to the attached drawing, in which:
The sampling unit 10 is for collecting input signals from a microphone (not shown) connected to the apparatus of the terminal.
The amplitude analyzer 11 is for obtaining a maximum amplitude of the input signals from the microphone within a present time span. That is, the amplitude analyzer 11 regards the input signals within one time span as an input period, and obtains the maximum amplitude of each input period.
If the maximum amplitude of the input period is equal to or greater than a predetermined amplitude, that means the terminal of the multi-person communication is inputting sound within the present time span, therefore, a speech coding operation is required on the input signals of the input period to obtain coded signals to be sent out over the network.
If maximum amplitudes of multiple continuous input periods are a combination consisting of maximum amplitudes greater than (equal to) and less than the predetermined amplitude, that means the terminal of the multi-person communication may have one or more input pauses over multiple continuous time spans, therefore, the speech coding operation is required on input signals of each input period over the multiple continuous time spans to obtain coded signals to be sent out through the network.
If each maximum amplitude of each of multiple previous continuous input periods is less than the predetermined amplitude, and the maximum amplitude of a next input period is also less than the predetermined amplitude, that means there is no sound input from the terminal of the multi-person communication within the multiple previous continuous time span and the time span of the next input period, therefore, a mute frame is sent within the time span of the next input period instead of performing a speech coding operation on the input signals of the next input period.
The coding unit 12 is for performing the speech coding operation on the input signals within the time span, that is, for coding the input signals of the input period. The counter 13 provides a value for indicating a count of continuous input periods whose maximum amplitude is less than the predetermined amplitude. Furthermore, an initial value of the counter 13 is zero. The output unit 14 is for outputting coded signals from the coding unit 13 or the mute frame.
The processing unit 15 is for controlling the components of the apparatus, i.e., the sampling unit 10, the amplitude analyzer 11, the coding unit 12, the counter 13, the output unit 14, the volatile storage unit 16, and the non-volatile storage unit 17.
The processing unit 15 resets the value of the counter 13 with the initial value and simultaneously signals the coding unit 12 to perform the speech coding operation on the input signals of the input period within the present time span, if the maximum amplitude of the input period is equal to or greater than the predetermined amplitude.
The processing unit 15 also signals the coding unit 12 to perform the sound coding operation on each input signals of the input period within the multiple continuous time spans, if the maximum amplitudes of multiple continuous input periods are the combination of maximum amplitudes greater than (equal to) and less than the predetermined amplitude, or each maximum amplitude of each of multiple continuous input periods is less than the predetermined amplitude. The processing unit 15 further increases the value of the counter 13 by one while simultaneously performing the speech code operation on the input signals of each input period.
Moreover, the processing unit 15 sends the mute frame instead of performing the sound coding operation on the input signals of the input period and increasing the value of the counter 13, if each maximum amplitude of each of multiple previous continuous input periods is less than the predetermined amplitude and the maximum amplitude of the next input period is still less than the predetermined amplitude. That is, if the value of the counter 13 is equal to a predetermined value and the maximum amplitude of the next input period is less than the predetermined amplitude, the processing unit 15 signals the output unit 14 to output the mute frame.
Therefore, in the case when the value of the counter 13 equals to the predetermined value and each maximum amplitude of each of multiple continuous input periods is still less than the predetermined amplitude, the apparatus simply sends the mute frame within each corresponding time span of the input periods. Otherwise, the apparatus sends coded signals within each corresponding time span. Because a size of the mute frame is relatively smaller than a size of the input period coded signals, a transferring amount of the mute frame is consequentially less than a transferring amount of the coded signals of the input period. As a result, a loading of the network is available to be reduced due to less transferring amount of mute frames, thereby eliminating delay phenomena.
Additionally, the volatile storage unit 16 is configured for storing the input signals of each input period and the maximum amplitude of the input signals of each input period. The non-volatile storage unit 17 is configured for storing the predetermined amplitude and the predetermined value.
If the maximum amplitude obtained is not less than the predetermined amplitude, in step S203, the processing unit 15 resets the value of the counter 13. In step S204, the coding unit 12 performs the speech coding operation on the present input signals of the input period, and the output unit 14 sends out the coded signals from the coding unit 12 over the network. In step S205, the amplitude analyzer 11 obtains the maximum amplitude of the input signals within a next time span, and the procedure goes to step S202 described above.
If the maximum amplitude obtained is less than the predetermined amplitude, in step S206, the processing unit 15 determines whether the value of the counter 13 is less than the predetermined value.
If the value of the counter 13 is less than the predetermined value, in step S207, the coding unit 12 performs the speech coding operation on the present input signals of the input period, and the output unit 14 sends out the coded signals from the coding unit 12 over the network. In step S208, the processing unit increases the value of the counter 13 by one. In step S209, the amplitude analyzer 11 obtains the maximum amplitude of the input signals within the next time span, and the procedure goes to step S202 described above.
If the value of the counter 13 is not less than the predetermined value, that means there is no sound input from the terminal of the multi-person communication within the present time span, in step S210, the processing unit 15 signals the output unit 14 to output the mute frame over the network, thereby reducing the loading of the network.
In step S211, the amplitude analyzer 11 obtains the maximum amplitude of the input signals within a next time span. In step S212, the processing unit 15 determines whether the maximum amplitude of the next time span obtained is less than the predetermined amplitude. If so, that means there is still no sound input from the terminal of the multi-person communication, and the procedure goes to step S211 described previously to output the mute frame again through the network. If not, that means the terminal of the multi-person communication is inputting sound, and the procedure goes to step S203 described above.
Although the present invention has been specifically described on the basis of a preferred embodiment and preferred method thereof, the invention is not to be construed as being limited thereto. Various changes or modifications may be made to the embodiment and method without departing from the scope and spirit of the invention.
Number | Date | Country | Kind |
---|---|---|---|
200510102095.9 | Dec 2005 | CN | national |