WO1991005431A1 - Voice data discriminator - Google Patents

Voice data discriminator Download PDF

Info

Publication number
WO1991005431A1
WO1991005431A1 PCT/CA1990/000323 CA9000323W WO9105431A1 WO 1991005431 A1 WO1991005431 A1 WO 1991005431A1 CA 9000323 W CA9000323 W CA 9000323W WO 9105431 A1 WO9105431 A1 WO 9105431A1
Authority
WO
WIPO (PCT)
Prior art keywords
voice
data
signal
nature
samples
Prior art date
Application number
PCT/CA1990/000323
Other languages
French (fr)
Inventor
Maurizio Ceccarelli
Robert S. K. Chiu
Robert W. Colbourn
Original Assignee
Unitel Communications Inc.
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 Unitel Communications Inc. filed Critical Unitel Communications Inc.
Publication of WO1991005431A1 publication Critical patent/WO1991005431A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/17Time-division multiplex systems in which the transmission channel allotted to a first user may be taken away and re-allotted to a second user if the first user becomes inactive, e.g. TASI
    • H04J3/175Speech activity or inactivity detectors

Definitions

  • This invention relates to a device and method for discriminating voice from data and for providing an indication of the duration of voice signals in a voice and data telecommunications link.
  • telecommunications links are used for both voice and data transmissions, however, heretofore it has not been possible to tariff differently for the two types of transmissions. Further, some telecommunications links are intended for data communications, but accommodate voice signals in order to facilitate the set-up, and confirmation of receipt, of the data signals. Heretofore, it has not been possible to monitor the use of such intended data links to ensure they are not used for voice transmissions.
  • TASI time assignment speech interpolation systems
  • TASI time assignment speech interpolation systems
  • Such systems detect voice in order to be able to connect talkers over satellite links only during active speaking. During pauses, other active speakers are connected over the link.
  • U.S. Patent No. 4,314,100 issued February 2, 1982 to Ruether et. al. describes such a system which is further adapted to handle data communications. More particularly, since the switch over during speech pauses results in a loss of a small percentage of the voice content, it is necessary to handle data signals differently since such a loss is unacceptable with data communications. This requires that data signals be detected and this patent ensures intact transmission of data signals by dedicating the link during the currency of the data transmission.
  • Reuther considers a signal to be a data signal if the following criteria are met for a specified minimum time period:
  • the power in the input signal at frequencies above 1000 Hz is at least three times greater than the power in the signal at frequencies below 1000 Hz (the voice frequencies) ;
  • the input signal has no slope. While Reuther discloses voice and data discrimination means, his system is not adapted to determine the duration of voice transmissions nor is it able to terminate transmissions that are predominantly voice.
  • a device for providing an indication of the duration of voice signals in a voice and data telecommunications link comprising:
  • filter means for receiving a signal on a voice and data telecommunications link and for separating said signal into a voice frequency signal containing frequencies normally associated with voice signals and a data frequency signal containing frequencies normally associated with data signals;
  • voice timer means responsive to said signal .
  • nature determination means for providing an indication of the duration of voice signals during the currency of said voice and data telecommunications link.
  • figure 1 is a schematic view of a voice data discriminator made in accordance with the invention
  • figure 2 is a flow diagram of the process followed by the voice data discriminator of figure 1
  • figures 3 through 6 are flow diagrams for subroutines utilized in the process of figure 2
  • figure 7 is a schematic.view of a system employing the voice data discriminators of this invention.
  • the voice data discriminator 10 is shown interposed between a pair of two wire telecommunication lines 12a and 12b which form part of a switched telephone system.
  • the discriminator 10 comprises a voice filter 16 and a data filter 18 tapped off two wire bus 34 which terminates in two wire line 36.
  • this filter passes to its output only frequencies in the input signal normally associated with voice, i.e., it passes to its output a voice frequency signal.
  • the data filter only passes frequencies in an input signal normally associated with data, i.e., it passes a data frequency signal to its output.
  • Two wire line 36 connects between lines 12a and 12b.
  • Loop current detector 28 and loop relay 30 are interposed in two wire line 36.
  • a programmed processor 14 is interconnected to voice filter 16 through analog to digital converter 21 and low pass filter (LPF) 17, data filter 18 through analog to digital , . converter 23 and LPF 19, a voice timer 20, state LED's 22, a pause timer 24, a data timer 26, loop current detector 28, a loop relay 30 and a memory 32.
  • the memory 32 comprises an idle state flag 38, a voice and tone state flag 39, a voice and data state flag 40, a force disconnect state flag 41, a voice history counter 42, a voice mode flag 43, a voice index 44, and a silence flag 45.
  • the device is a state machine with four states: an idle state, a tone and voice state ("tone" being a reference to the answer back tone received at the beginning of a data transmission), a data and voice state, and a force disconnect state.
  • the device is initially set to the idle state before the telecommunication link is established (i.e., when the phone line is on hook).
  • the link is set up the device enters the voice and tone state and a period is allowed for speech, exclusive of pauses in the speech. This period is intended to allow for the preparation for data communications.
  • the device After data signals (which include the answer back tone which precedes the sending of information) are sent for a period of time, the device enters the data an-d voice state which gives callers another period of time for speech. If the voice time of the voice and tone or voice and data states is exceeded, the device enters the force disconnect state and the communication link is taken down by the device. Whenever the link is free the device returns to the idle state.
  • program control for the processor initiates in block 50 (figure 2) whereat the idle state flag 38 is set and the other state flags are reset which prompts the processor to illuminate an appropriate LED of the state LED's. Relay 30 is closed in this state.
  • Program control then passes to decision block 52 which results in the processor repetitively interrogating the output of the loop current detector 28 for an indication that a loop current has been detected.
  • program control passes to block 54 whereat the voice and tone flag is set (and the idle state flag is reset) which prompts the processor to initialize for voice and tone state.
  • the processor sets the voice mode flag 43 which indicates voice mode.
  • the voice timer 20 and the pause timer 24 are reset and an appropriate LED is illuminated.
  • voice index 44 is set to an initial value within a voice indicative range and the voice history counter is set to an initial intermediate value.
  • Program control then passes to decision block 56 whereat the output of loop current detector 28 is again sampled to ensure the presence of a loop current. If a current is not detected, program control returns to block 50; otherwise, control passes to block 58.
  • Block 58 calls up a signal nature determination and timing subroutine detailed in figure 3 which returns updated values for the voice timer 20 and the data timer 26.
  • program control passes to block 100 which results in the processor 14 sensing the output of the voice filter 16 and data filter 18 through LPFs 17 and 19 (which act as noise filters) and through analog to digital converters 21 and 23.
  • the outputs sensed from the two filters comprise a signal sample.
  • the nature of the signal sample is determined by the signal nature determination means which comprises the microprocessor 14 under the program control of decision blocks 102, 104, 106, and 110. More particularly, the sum of the magnitude of the voice sample (i.e., the filtered digitised sample from the voice filter) and the data sample (i.e., the filtered digitised sample from the data filter) is compared with a predefined threshold (decision block 102). If the sum is less than a predefined threshold then the signal sample is considered to represent silence on the line. The silence flag is then set (block
  • control is passed to decision block 104 whereat the voice and data sample are compared. If the voice sample exceeds the data sample by a predefined threshold, control passes to decision block 110 whereat the digitised voice sample is compared with the value in the voice history counter 42 (of figure
  • the voice sample is greater than the voice history counter by another predefined threshold (block 110) this suggests the signal sample is in the nature of a voice sample.
  • the silence flag is cleared (block 112) and the silence and voice detected subroutine is then called (block 116). If the voice sample does not exceed the voice history counter by this threshold then this is an indication that the sample is noise; the silence flag is set and the silence and voice subroutine called.
  • the voice timer is updated based in part upon the determination of the nature of the signal sample by the signal nature determination means as will become apparent hereinafter.
  • control is passed to block 150. If the silence flag is cleared, the processor encounters block 152 at which the voice index is incremented. It should be noted that the voice index may be incremented and decremented between two preset extreme values. Next the mode is updated, as follows. A predefined upper range of values of the voice index which incorporates the upper preset- extreme value is considered to represent voice mode (and it will be recalled that the voice index is set to a value in this upper range during initialization to voice and tone state). A predefined lower range of values, incorporating the lower preset extreme value, is considered to represent the data mode; values between these ranges are not considered indicative of either mode.
  • a set signal is sent to the voice mode flag. If the voice index is in the data mode range, a clear signal is sent to the voice mode flag. If the voice index is between the voice mode range and the data mode range no signal is sent to the voice mode flag.
  • the voice mode flag thus indicates whether the signal samples, over a period of time, are suggestive of a voice signal or a data signal.
  • program control passes to block 170.
  • the voice index is at a value which is above its mid value, the voice index is decremented by one; if this index is at a value which is below the mid value then the index is incremented by one. Control then passes to block 160.
  • the voice history counter is updated. As before- noted, during initialisation this counter is set to a value which is between a preset upper and a preset lower limit. The counter is allowed to drift between these limits as follows. When the value of the (more significant digits) in the voice history counter is lower than the value of the (more significant digits of the) voice sample, the voice history counter is incremented by one and when this value is greater than the value of the (more significant digits of the) voice sample the voice history counter is decremented by one. The voice history counter is only updated in the silence or voice detected subroutine, consequently, this counter is only updated when the signal sample is considered to be a voice signal or representative of silence on the line. The counter provides an indication of the background noise so that, as will become apparent hereinbelow, the noise is not considered as a voice s'ignal when the noise level is high.
  • the update timers block 172 calls an update timers subroutine detailed in figure 6 which updates the various timers as follows: pause timer: if this timer has not timed out and is enabled, it is decremented (decision block 250 and block 252); voice timer: this timer is decremented unless the pause timer has timed out or is disabled (decision blocks 250 and 254 and block 256; note that the voice timer is never disabled); data timer: this timer is decremented (at block 262) if it is enabled (decision block 258) and if the voice data discriminator is in voice and tone state (decision block 260).
  • decision blocks 102, 104, 106 and 110 affect the updating of the voice timer by causing program control to branch so as to enable or disable the pause timer.
  • the voice timer will only decrement for a short time if the voice sample is not greater than the value in the voice history counter by the threshold of decision block 110. That is, given a "no" decision at block 110, the silence flag is set which means the pause timer is not reset in execution of the silence or voice detected subroutine, thus, the pause timer will time out and thereafter block the voice timer from decremeting. It is in this way that the voice history counter blocks the voice timer from decrementing and hence ensures high noise levels are not considered voice.
  • control passes to block 202 and the voice index is decremented.
  • the mode is updated (block 204); this is accomplished in the same manner as before, i.e., if the voice index is in the voice mode range a set signal is sent to the voice mode flag and if this index is in the data mode range a clear signal is sent to the voice mode flag.
  • Control then passes to decision block 206 with the result that if the pause timer is enabled, it is disabled (block 208).
  • the voice mode flag is examined (block 212), if it is cleared (indicating data mode) then it is asked whether the data timer is disabled (block 214).
  • the timers are updated in exactly the same manner as described in connection with block 172 of figure 4.
  • the voice timer will always be blocked from decremeting when the ' timers are updated in the data detected subroutine because the pause timer will have been disabled at block 208 unless it was already disabled. Consequently, the voice timer will not time out during data transmissions.
  • the data detected subroutine will be called up each time the signal nature determination and timing subroutine is called. The data timer will be reset and enabled the first time the data detected subroutine is called so that in the subsequent consecutive calls of this subroutine, the data timer will be allowed to run down.
  • control passes back to the main program through return blocks 218 and 120. Once control returns to the main program, it passes to decision block 60 whereat the value in the voice timer is interrogated. If the voice timer has timed out, control moves to block 74 and the processor sends a signal to relay 30 causing it to open circuit lines 36 and thereby take down the communication link, sets the force disconnect state flag, and resets the voice and data state flag; control then returns to block 50.
  • control passes to decision block 62 and it is determined whether the data timer 26 has timed out. If no, control passes back to decision block 56. If yes, the voice and data state flag is set (and the voice and tone state flag cleared) which illuminates the voice and data state LED (block 64). The voice timer is next reset by the microprocessor sending a signal to the reset input of the voice timer (block 66) and control passes to decision block 68 whereat the output of loop current detector 28 is interrogated to ensure the link is still current (if not, control passes back to block 50).
  • Control then again passes to the subroutine to distinguish data and voice detailed in figure 3 in order to update the voice timer (the data timer is not updated in the data and voice state since it has timed out before this state is entered). If, upon return to the main program, the voice timer is timed out (block 72), control passes to block 74 which forces a disconnect, otherwise, control passes back to decision block 68.
  • Voice data discriminators 10 may be interposed at every access point to a data only network. This arrangement is illustrated in figure 7 where a voice data discriminator 10 is interposed at both access points 47 from the public switched telephone network (PSTN) 46 to a data only network 48. Voice data discriminators 10 may also be connected in the PSTN where it is desirable to differentially tariff voice and data. This would require some modification to the device as relay 30 and blocks 60, 72, and 74 of the program control are not used and as the data timer should track the duration of data transmission both when the device is in the voice and data state and when it is in the voice and tone state.
  • PSTN public switched telephone network
  • voice data discriminators 10 may also be connected in the PSTN where it is desirable to differentially tariff voice and data. This would require some modification to the device as relay 30 and blocks 60, 72, and 74 of the program control are not used and as the data timer should track the duration of data transmission both when the device is in the voice and data state and when it is in the voice and tone state.
  • the foregoing description assume
  • voice data discriminator has been described as operating with a phone link by virtue of being interposed in a two wire telephone line, it will be apparent to one skilled in the art that the device, with minor modifications, may operate with any. other telecommunications link, such as a radio link.

Abstract

The device filters a signal in a telecommunications link into a voice frequency signal and a data frequency signal and compares samples of the magnitude of each to provide an indication of whether the sample is a voice sample, a data sample, or neither a voice nor a data sample. The device tracks the relative number of voice and data samples and, based on this, enters a voice or a data mode. When in voice mode, the device times the duration of voice on the telecommunications link and, optionally, may take down the communication link if the voice exceeds a predetermined maximum duration.

Description

VOICE DATA DISCRIMINATOR
This invention relates to a device and method for discriminating voice from data and for providing an indication of the duration of voice signals in a voice and data telecommunications link.
Many telecommunications links are used for both voice and data transmissions, however, heretofore it has not been possible to tariff differently for the two types of transmissions. Further, some telecommunications links are intended for data communications, but accommodate voice signals in order to facilitate the set-up, and confirmation of receipt, of the data signals. Heretofore, it has not been possible to monitor the use of such intended data links to ensure they are not used for voice transmissions.
Means to discriminate voice signals are known in time assignment speech interpolation systems (TASI). Such systems detect voice in order to be able to connect talkers over satellite links only during active speaking. During pauses, other active speakers are connected over the link. U.S. Patent No. 4,314,100 issued February 2, 1982 to Ruether et. al. describes such a system which is further adapted to handle data communications. More particularly, since the switch over during speech pauses results in a loss of a small percentage of the voice content, it is necessary to handle data signals differently since such a loss is unacceptable with data communications. This requires that data signals be detected and this patent ensures intact transmission of data signals by dedicating the link during the currency of the data transmission.
Reuther considers a signal to be a data signal if the following criteria are met for a specified minimum time period:
(1) the power in the input signal at frequencies above 1000 Hz (the data frequencies) is at least three times greater than the power in the signal at frequencies below 1000 Hz (the voice frequencies) ;
(2) the power in the data frequencies is above -30 dBm;
(3) the power in the voice frequencies is below -24 dBm; and
(4) the input signal has no slope. While Reuther discloses voice and data discrimination means, his system is not adapted to determine the duration of voice transmissions nor is it able to terminate transmissions that are predominantly voice.
According to the present invention there is provided a device for providing an indication of the duration of voice signals in a voice and data telecommunications link, comprising:
(a) filter means for receiving a signal on a voice and data telecommunications link and for separating said signal into a voice frequency signal containing frequencies normally associated with voice signals and a data frequency signal containing frequencies normally associated with data signals;
(b) signal nature determination means responsive to the output of said filter means for providing indications of the nature of samples of the signal; and
(c) voice timer means responsive to said signal . nature determination means for providing an indication of the duration of voice signals during the currency of said voice and data telecommunications link.
In the figures which represent example embodiments of the invention: figure 1 is a schematic view of a voice data discriminator made in accordance with the invention, figure 2 is a flow diagram of the process followed by the voice data discriminator of figure 1, figures 3 through 6 are flow diagrams for subroutines utilized in the process of figure 2 , and figure 7 is a schematic.view of a system employing the voice data discriminators of this invention.
With reference to figure 1, the voice data discriminator 10 is shown interposed between a pair of two wire telecommunication lines 12a and 12b which form part of a switched telephone system. The discriminator 10 comprises a voice filter 16 and a data filter 18 tapped off two wire bus 34 which terminates in two wire line 36. When a signal is input to the voice filter, this filter passes to its output only frequencies in the input signal normally associated with voice, i.e., it passes to its output a voice frequency signal. Similarly, the data filter only passes frequencies in an input signal normally associated with data, i.e., it passes a data frequency signal to its output. Two wire line 36 connects between lines 12a and 12b. Loop current detector 28 and loop relay 30 are interposed in two wire line 36. A programmed processor 14 is interconnected to voice filter 16 through analog to digital converter 21 and low pass filter (LPF) 17, data filter 18 through analog to digital , . converter 23 and LPF 19, a voice timer 20, state LED's 22, a pause timer 24, a data timer 26, loop current detector 28, a loop relay 30 and a memory 32. The memory 32 comprises an idle state flag 38, a voice and tone state flag 39, a voice and data state flag 40, a force disconnect state flag 41, a voice history counter 42, a voice mode flag 43, a voice index 44, and a silence flag 45.
By way of overview of the operation of the voice data discriminator shown in figure 1, the device is a state machine with four states: an idle state, a tone and voice state ("tone" being a reference to the answer back tone received at the beginning of a data transmission), a data and voice state, and a force disconnect state. The device is initially set to the idle state before the telecommunication link is established (i.e., when the phone line is on hook). When the link is set up the device enters the voice and tone state and a period is allowed for speech, exclusive of pauses in the speech. This period is intended to allow for the preparation for data communications. After data signals (which include the answer back tone which precedes the sending of information) are sent for a period of time, the device enters the data an-d voice state which gives callers another period of time for speech. If the voice time of the voice and tone or voice and data states is exceeded, the device enters the force disconnect state and the communication link is taken down by the device. Whenever the link is free the device returns to the idle state.
The operation of the voice data discriminator will be more fully understood by reference to the program control for the processor illustrated in figures 2 through 5. On power-up, program control for the processor initiates in block 50 (figure 2) whereat the idle state flag 38 is set and the other state flags are reset which prompts the processor to illuminate an appropriate LED of the state LED's. Relay 30 is closed in this state. Program control then passes to decision block 52 which results in the processor repetitively interrogating the output of the loop current detector 28 for an indication that a loop current has been detected. Upon detection of a loop current (which indicates that a telecommunication link has been established), program control passes to block 54 whereat the voice and tone flag is set (and the idle state flag is reset) which prompts the processor to initialize for voice and tone state. More particularly, the processor sets the voice mode flag 43 which indicates voice mode. In addition, the voice timer 20 and the pause timer 24 are reset and an appropriate LED is illuminated. Further, as is more particularly described hereinafter, voice index 44 is set to an initial value within a voice indicative range and the voice history counter is set to an initial intermediate value. Program control then passes to decision block 56 whereat the output of loop current detector 28 is again sampled to ensure the presence of a loop current. If a current is not detected, program control returns to block 50; otherwise, control passes to block 58. Block 58 calls up a signal nature determination and timing subroutine detailed in figure 3 which returns updated values for the voice timer 20 and the data timer 26.
With reference to ' figure 3, when the signal nature determination and timing subroutine is called, program control passes to block 100 which results in the processor 14 sensing the output of the voice filter 16 and data filter 18 through LPFs 17 and 19 (which act as noise filters) and through analog to digital converters 21 and 23. The outputs sensed from the two filters comprise a signal sample. The nature of the signal sample is determined by the signal nature determination means which comprises the microprocessor 14 under the program control of decision blocks 102, 104, 106, and 110. More particularly, the sum of the magnitude of the voice sample (i.e., the filtered digitised sample from the voice filter) and the data sample (i.e., the filtered digitised sample from the data filter) is compared with a predefined threshold (decision block 102). If the sum is less than a predefined threshold then the signal sample is considered to represent silence on the line. The silence flag is then set (block
114) and the silence or voice detected subroutine is called (block
116). On the other hand, if the sum is at least as great as the predefined threshold then control is passed to decision block 104 whereat the voice and data sample are compared. If the voice sample exceeds the data sample by a predefined threshold, control passes to decision block 110 whereat the digitised voice sample is compared with the value in the voice history counter 42 (of figure
1). If the voice sample is greater than the voice history counter by another predefined threshold (block 110) this suggests the signal sample is in the nature of a voice sample. The silence flag is cleared (block 112) and the silence and voice detected subroutine is then called (block 116). If the voice sample does not exceed the voice history counter by this threshold then this is an indication that the sample is noise; the silence flag is set and the silence and voice subroutine called.
If the voice sample does not exceed the data sample by the threshold of block 104 then control passes to block 106 whereat it is asked whether the data sample exceeds the voice sample by yet another predefined threshold. If yes, this suggests the signal sample is a data signal; control passes to block 108 which calls the data detected subroutine. If no, this suggests the signal sample represents silence on the line, the silence flag is set and the silence and voice detected subroutine is called.
The voice timer is updated based in part upon the determination of the nature of the signal sample by the signal nature determination means as will become apparent hereinafter.
With reference to figure 4, in the event the silence or voice detected subroutine is called, control is passed to block 150. If the silence flag is cleared, the processor encounters block 152 at which the voice index is incremented. It should be noted that the voice index may be incremented and decremented between two preset extreme values. Next the mode is updated, as follows. A predefined upper range of values of the voice index which incorporates the upper preset- extreme value is considered to represent voice mode (and it will be recalled that the voice index is set to a value in this upper range during initialization to voice and tone state). A predefined lower range of values, incorporating the lower preset extreme value, is considered to represent the data mode; values between these ranges are not considered indicative of either mode. If, after the voice index is incremented, the voice index is in the voice mode range, a set signal is sent to the voice mode flag. If the voice index is in the data mode range, a clear signal is sent to the voice mode flag. If the voice index is between the voice mode range and the data mode range no signal is sent to the voice mode flag. The voice mode flag thus indicates whether the signal samples, over a period of time, are suggestive of a voice signal or a data signal.
If the voice mode flag is set (block 156) then the pause timer is reset and enabled (block 158) and then control passes to block 160; otherwise, control passes directly to block 160 from block 156.
If, on entering the silence or voice detected subroutine, the silence flag is set (block 150), program control passes to block 170. At block 170, if the voice index is at a value which is above its mid value, the voice index is decremented by one; if this index is at a value which is below the mid value then the index is incremented by one. Control then passes to block 160.
At block 160 the voice history counter is updated. As before- noted, during initialisation this counter is set to a value which is between a preset upper and a preset lower limit. The counter is allowed to drift between these limits as follows. When the value of the (more significant digits) in the voice history counter is lower than the value of the (more significant digits of the) voice sample, the voice history counter is incremented by one and when this value is greater than the value of the (more significant digits of the) voice sample the voice history counter is decremented by one. The voice history counter is only updated in the silence or voice detected subroutine, consequently, this counter is only updated when the signal sample is considered to be a voice signal or representative of silence on the line. The counter provides an indication of the background noise so that, as will become apparent hereinbelow, the noise is not considered as a voice s'ignal when the noise level is high.
After the voice history counter is updated, control passes to block 162. If the voice data discriminator is in the voice and tone state, then if the data timer is enabled (block 164) it is disabled (block 166) and control passes to block 172. If the device is not in the voice and tone state or the data timer is not enabled then control passes directly from block 162 or 164, respectively, to block 172.
The update timers block 172 calls an update timers subroutine detailed in figure 6 which updates the various timers as follows: pause timer: if this timer has not timed out and is enabled, it is decremented (decision block 250 and block 252); voice timer: this timer is decremented unless the pause timer has timed out or is disabled (decision blocks 250 and 254 and block 256; note that the voice timer is never disabled); data timer: this timer is decremented (at block 262) if it is enabled (decision block 258) and if the voice data discriminator is in voice and tone state (decision block 260).
After updating the timers, control passes back to the calling program through return block 264.
It will now be apparent that decision blocks 102, 104, 106 and 110 affect the updating of the voice timer by causing program control to branch so as to enable or disable the pause timer. It should also be noted that the voice timer will only decrement for a short time if the voice sample is not greater than the value in the voice history counter by the threshold of decision block 110. That is, given a "no" decision at block 110, the silence flag is set which means the pause timer is not reset in execution of the silence or voice detected subroutine, thus, the pause timer will time out and thereafter block the voice timer from decremeting. It is in this way that the voice history counter blocks the voice timer from decrementing and hence ensures high noise levels are not considered voice.
It is noted that the reset value of the pause timer is chosen so that this timer times out given pauses in speech longer than those normally associated with active conversation. After the timers are updated, control passes back to the main program through return blocks 174 and 118.
With reference to figure 5, in the event the data detected subroutine is called, control passes to block 202 and the voice index is decremented. Next the mode is updated (block 204); this is accomplished in the same manner as before, i.e., if the voice index is in the voice mode range a set signal is sent to the voice mode flag and if this index is in the data mode range a clear signal is sent to the voice mode flag. Control then passes to decision block 206 with the result that if the pause timer is enabled, it is disabled (block 208). Next, if the voice data discriminator is in the voice and tone state (block 210), the voice mode flag is examined (block 212), if it is cleared (indicating data mode) then it is asked whether the data timer is disabled (block 214). If yes, the data timer is both reset and enabled (by the microprocessor sending signals on appropriate control lines to the data timer) ; if no, control passes from decision block 214 to update timers block 216. In the event the voice data discriminator is not in the voice and tone state or, if it is and the voice mode flag is set, then control passes directly to block 216 from block 210 or 212.
At the update timers block the timers are updated in exactly the same manner as described in connection with block 172 of figure 4. Note that the voice timer will always be blocked from decremeting when the' timers are updated in the data detected subroutine because the pause timer will have been disabled at block 208 unless it was already disabled. Consequently, the voice timer will not time out during data transmissions. Note further that if consecutive signal samples are considered in the nature of data then the data detected subroutine will be called up each time the signal nature determination and timing subroutine is called. The data timer will be reset and enabled the first time the data detected subroutine is called so that in the subsequent consecutive calls of this subroutine, the data timer will be allowed to run down. After execution of block 216, control passes back to the main program through return blocks 218 and 120. Once control returns to the main program, it passes to decision block 60 whereat the value in the voice timer is interrogated. If the voice timer has timed out, control moves to block 74 and the processor sends a signal to relay 30 causing it to open circuit lines 36 and thereby take down the communication link, sets the force disconnect state flag, and resets the voice and data state flag; control then returns to block 50.
If the voice timer has not timed out, control then passes to decision block 62 and it is determined whether the data timer 26 has timed out. If no, control passes back to decision block 56. If yes, the voice and data state flag is set (and the voice and tone state flag cleared) which illuminates the voice and data state LED (block 64). The voice timer is next reset by the microprocessor sending a signal to the reset input of the voice timer (block 66) and control passes to decision block 68 whereat the output of loop current detector 28 is interrogated to ensure the link is still current (if not, control passes back to block 50).
Control then again passes to the subroutine to distinguish data and voice detailed in figure 3 in order to update the voice timer (the data timer is not updated in the data and voice state since it has timed out before this state is entered). If, upon return to the main program, the voice timer is timed out (block 72), control passes to block 74 which forces a disconnect, otherwise, control passes back to decision block 68.
Voice data discriminators 10 may be interposed at every access point to a data only network. This arrangement is illustrated in figure 7 where a voice data discriminator 10 is interposed at both access points 47 from the public switched telephone network (PSTN) 46 to a data only network 48. Voice data discriminators 10 may also be connected in the PSTN where it is desirable to differentially tariff voice and data. This would require some modification to the device as relay 30 and blocks 60, 72, and 74 of the program control are not used and as the data timer should track the duration of data transmission both when the device is in the voice and data state and when it is in the voice and tone state. The foregoing description assumes an analog telecommunications link. It will be readily apparent to one skilled in the art that the voice data discriminator could be modified to function with a digital link.
While the voice data discriminator has been described as operating with a phone link by virtue of being interposed in a two wire telephone line, it will be apparent to one skilled in the art that the device, with minor modifications, may operate with any. other telecommunications link, such as a radio link.

Claims

re e ve y e n erna ona ureau on 13 March 1991(13.03.91); new claims 20-37 added; other claims unchanged (6 pages)] device of claim 15 pending the establishment of a voice and data telecommunications link.
17. The device of claim 15 wherein said signal nature determination means determines whether said signal is a data signal, a voice signal, or neither a data nor voice signal.
18. A method for providing an indication of the duration of. voice signals in a voice and data telecommunications link, comprising the steps of:
(a) receiving a signal on a voice and data telecommunications link and separating frequencies normally associated with voice signals and frequencies normally associated with data signals to provide a voice frequency signal and a data frequency signal;
(b) indicating whether the signal is a voice signal, a data signal or neither a voice nor data signal based on the strength of the voice frequency signal and the data frequency signal;
(c) timing in response to the indications derived under step (b) for indicating the duration of voice frequency signals during the currency of said voice and data telecommunications link.
19. The method of claim 18 including the step of taking down said voice and data telecommunications link when the timing of step (c) exceeds a predetermined maximum time.
20. A device for providing an indication of the duration of voice signals in a voice and data telecommunications link, comprising:
(a) filter means for receiving a signal on a voice and data telecommunications link and for separating said signal into a voice frequency signal containing frequencies normally associated with voice signals and a data frequency signal containing frequencies normally associated with data signals;
(b) signal nature determination means responsive to the output of said filter means for providing indications of whether samples of said signal are in the nature of voice or data;
(c) indicator means responsive to said signal nature determination means for providing an indication of the relative number of samples which are in the nature of data and samples which are in the nature of voice and for indicating voice when the number of samples in the nature of voice exceeds the number of samples in the nature of data by a pre-defined amount and until the number of samples in the nature of data exceeds the number of samples in the nature of voice by another pre-defined amount; and
(d) voice timer means responsive to said indicator means for providing an indication of the duration of voice signals during the currency of said voice and data telecommunications link.
21. The device of claim 20 including means responsive to said voice timer means for taking down said voice and data telecommunications link when said voice timer exceeds a predetermined time.
22. The device of claim 20 wherein said signal nature determination means is also for providing indications of whether samples of said signal are neither in the nature of voice nor in the nature of data and including a pause timer responsive to said signal nature determination means for providing an indication of the duration of time the nature of the signal is neither voice nor data and including means responsive to said pause timer for inhibiting said voice timer from timing when said pause timer exceeds a predetermined time.
23. The device of claim 21 wherein said signal nature determination means is also for providing indications of whether samples of said signal are neither in the nature of voice nor in the nature of data and including a pause timer responsive to said signal nature determination means for providing an indication of the duration of time the nature of the signal is neither voice nor data and including means responsive to said pause timer for inhibiting said voice timer from timing when said pause timer exceeds a predetermined time. 24. The device of claim 23 including a voice history means responsive to an indication from said signal nature determination means that a given sample is in the nature of voice or neither in the nature of voice nor data to update an indication of the historical energy of voice frequency signals on the link with an indication of the energy of the voice frequency signal component of said given sample for providing an indication of background noise in a telecommunications link and including means to inhibit said voice timer if an indication of the amplitude of said voice frequency signal component does not exceed said historical energy of voice frequency signals indicated by said voice history means by a pre-defined amount.
25. The device of claim 20 wherein said indicator means is for indicating data when the number of data samples exceeds the number of voice samples by a pre-defined amount and until the number of voice samples exceeds the number of data samples by another pre-defined amount and including a data timer responsive to said indicator means for providing an indication of the duration of data signals during the currency of said voice and data telecommunications link.
26. The device of claim 23 wherein said indicator means is for indicating data when the number of data samples exceeds the number of voice samples by a pre-defined amount and until the number of voice samples exceeds the number of data samples by another pre-defined amount and including a data timer responsive to said indicator means for providing an indication of the duration of data signals during the currency of said voice and data telecommunications link.
27. The device of claim 26 wherein the reset of said voice timer is responsive to said data timer so that said voice timer resets when said data timer times a preset time.
28. The device of claim 27 including means to monitor the establishment and the taking down of a voice and data telecommunications link and for inhibiting the operation of said device of claim 27 pending the establishment of a voice and data telecommunications link.
29. A device for providing an indication of the duration of voice signals in a voice and data telecommunications link, comprising:
(a) a first filter means for receiving a signal on a voice and data telecommunications link and for passing frequencies normally associated with voice signals;
(b) a second filter means for receiving said signal on said voice and data telecommunications link and for passing frequencies normally associated with data signals;
(c) signal nature determination means for repeatedly sensing the output of said first and second filter means in order to obtain signal samples and for providing indications of whether said signal samples are in the nature of voice samples or data samples;
(d) indicator means responsive to said signal nature determination means for providing an indication of the relative number of data and voice samples and for indicating voice when the number of voice samples exceeds the number of data samples by a pre-defined amount and until the number of data samples exceeds the number of voice samples by another pre-defined amount; and
(e) voice timer means responsive to said indicator means for providing an indication of the duration of voice signals during the currency of said voice and data telecommunications link.
30. The device of claim 29 including means responsive to said voice timer means for taking down said voice and data telecommunications link when said voice timer exceeds a predetermined time.
31. The device of claim 30 wherein said signal nature determination means is also for providing indications of whether samples of said signal are neither in the nature of voice nor in the nature of data samples and including a pause timer responsive to said signal nature determination means for providing an indication of the duration of time the nature of the signal is neither voice nor data and including means responsive to said pause timer for inhibiting said voice timer from timing when said pause timer exceeds a predetermined time.
32. The device of claim 31 including a voice history means responsive to an indication from said signal nature determination means that a given sample is in the nature of voice or neither in the nature of voice nor data to update an indication of the historical energy in frequencies normally associated with voice on the link with an indication of the energy of said given sample in frequencies passed by said first filter means for providing an indication of background ηoise in a telecommunications link and including means to inhibit said voice timer if an indication of the energy of said given sample in frequencies passed by said first filter means does not exceed said historical amplitude of voice frequency signals indicated by said voice history means by a pre-defined amount.
33. The device of claim 32 wherein said indicator means is for indicating data when the number of data samples exceeds the number of voice samples by a pre-defined amount and until the number of voice samples exceeds the number of data samples by another pre-defined amount and including a data timer responsive to said indicator means for providing an indication of the duration of data signals during the currency of said voice and data telecommunications link.
34. The device of claim 33 wherein the reset of said voice timer is responsive to said data timer so that said voice timer resets when said data timer times a preset time.
35. The device of claim 34 including means to monitor the establishment and the taking down of a voice and data telecommunications link and for inhibiting the operation of said device of claim 34 pending the establishment of a voice and data telecommunications link.
36. A method for providing an indication of the duration of voice signals in a voice and data telecommunications link, comprising the steps of:
(a) receiving a signal on a voice and data telecommunications link and separating frequencies normally associated with voice signals and frequencies normally associated with data signals to provide a voice frequency signal and a data frequency signal;
(b) sampling the voice and data frequency signals and indicating whether a sample of the signal is in the nature of a voice sample, a data sample or neither a voice nor data sample based on the strength of the voice frequency signal and the data frequency signal;
(c) indicating, responsive to the indications of' step (b), the relative number of signal samples which are in the nature of data and signal samples which are in the nature of voice;
(d) indicating, in response to the indications of step (c), voice when the number of samples in the nature of voice exceeds the number of samples in the nature of data by a pre-defined amount and until the number of samples in the nature of data exceeds the number of samples in the nature of voice by another pre-defined amount; and
(e) timing, in response to the indications derived under step (d), the duration of voice frequency signals during the currency of said voice and data telecommunications link.
37. The method of claim 3-6 including the step of taking down said voice and data telecommunications link when the timing of step (e) exceeds a predetermined maximum time.
PCT/CA1990/000323 1989-09-28 1990-09-27 Voice data discriminator WO1991005431A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CA613,952 1989-09-28
CA 613952 CA1290868C (en) 1989-09-28 1989-09-28 Voice data discriminator

Publications (1)

Publication Number Publication Date
WO1991005431A1 true WO1991005431A1 (en) 1991-04-18

Family

ID=4140749

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CA1990/000323 WO1991005431A1 (en) 1989-09-28 1990-09-27 Voice data discriminator

Country Status (3)

Country Link
AU (1) AU6412090A (en)
CA (1) CA1290868C (en)
WO (1) WO1991005431A1 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3851112A (en) * 1973-04-26 1974-11-26 Gte Automatic Electric Lab Inc Data detector with voice signal discrimination
US4314100A (en) * 1980-01-24 1982-02-02 Storage Technology Corporation Data detection circuit for a TASI system
US4403322A (en) * 1980-07-02 1983-09-06 Hitachi, Ltd. Voice signal converting device
US4457013A (en) * 1981-02-24 1984-06-26 Cselt Centro Studi E Laboratori Telecomunicazioni S.P.A. Digital speech/data discriminator for transcoding unit
US4672669A (en) * 1983-06-07 1987-06-09 International Business Machines Corp. Voice activity detection process and means for implementing said process
US4715065A (en) * 1983-04-20 1987-12-22 U.S. Philips Corporation Apparatus for distinguishing between speech and certain other signals

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3851112A (en) * 1973-04-26 1974-11-26 Gte Automatic Electric Lab Inc Data detector with voice signal discrimination
US4314100A (en) * 1980-01-24 1982-02-02 Storage Technology Corporation Data detection circuit for a TASI system
US4403322A (en) * 1980-07-02 1983-09-06 Hitachi, Ltd. Voice signal converting device
US4457013A (en) * 1981-02-24 1984-06-26 Cselt Centro Studi E Laboratori Telecomunicazioni S.P.A. Digital speech/data discriminator for transcoding unit
US4715065A (en) * 1983-04-20 1987-12-22 U.S. Philips Corporation Apparatus for distinguishing between speech and certain other signals
US4672669A (en) * 1983-06-07 1987-06-09 International Business Machines Corp. Voice activity detection process and means for implementing said process

Also Published As

Publication number Publication date
AU6412090A (en) 1991-04-28
CA1290868C (en) 1991-10-15

Similar Documents

Publication Publication Date Title
US5023906A (en) Method for monitoring telephone call progress
US5325425A (en) Method for monitoring telephone call progress
EP0746170B1 (en) Tone detector with improved performance in the presence of speech
US5619565A (en) Voice activity detection method and apparatus using the same
EP0222083B1 (en) Method and apparatus for voice detection having adaptive sensitivity
JP3027047B2 (en) DTMF signal detection apparatus and method
EP0423787B1 (en) A multi-frequency signal receiver and a method of detecting the multi-frequency signal
US4809272A (en) Telephone switching system with voice detection and answer supervision
JPH06504890A (en) DTMF signal detection device
JP2851974B2 (en) DTMF signal judgment circuit
CA2167731A1 (en) Apparatus and method for dual tone multifrequency signal detection
US5495526A (en) Tone-detection method for detecting at least one tone in a dual-tone multifrequency signal, call-progress method using the same
KR0152070B1 (en) Dtmf receiver
JPH10117159A (en) Echo canceller
CA1290868C (en) Voice data discriminator
US4460808A (en) Adaptive signal receiving method and apparatus
EP0213651A1 (en) Receiving equipment for the recognition of a number of different and predetermined frequency combinations of voice-frequency signalling components under the protection of a spurious-signal/voice-signal guard function
US4314100A (en) Data detection circuit for a TASI system
US5592544A (en) DTMF signal judging apparatus
US4395595A (en) Digital pushbutton signalling receiver
US4336422A (en) Toll restrictor
US6028927A (en) Method and device for detecting the presence of a periodic signal of known period
EP0595483A1 (en) Methods and apparatus for automatic switching between transmission of a spectrally redundant outgoing signal and reception of an incoming signal
EP0660536B1 (en) Microcomputer-based carrier detection system for a cordless telephone
AU673776B2 (en) Voice activity detector

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AU BB BG BR FI HU JP KP KR LK MC MG MW NO RO SD SU US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE BF BJ CF CG CH CM DE DK ES FR GA GB IT LU ML MR NL SE SN TD TG