← Back to Patent Explorer
US5546395A Expired / Lapsed US ⏱️ 0.0 years remaining

Dynamic selection of compression rate for a voice compression algorithm in a voice over data modem

Assignee: Multi Tech Systems Inc
•
Filing: 1994-11-29
•
Granted: 1996-08-13
•
Expires: 2014-11-29
📄 Original PDF 🌐 Google Patents

Abstract

Abstract The present invention includes software and hardware components to enable digital data communication over standard telephone lines. The present invention converts analog voice signals to digital data, compresses that data and places the compressed speech data into packets for transfer over the telephone lines to a remote site. A voice control digital signal processor (DSP) operates to use one of a plurality of speech compression algorithms which produce a scaleable amount of compression. The rate of compression is inversely proportional to the quality of the speech the compression algorithm is able to reproduce. The higher the compression, the lower the reproduction quality. The selection of the rate of compression is dependant on such factors as the speed or data bandwidth on the communications connection between the two sites, the data demand between the sites and amount of silence detected in the speech signal. The voice compression rate is dynamically changed as the aforementioned factors change. A negotiation handshake protocol is described which enables the two sites to negotiate the compression rate based on such factors.

Inventors

  • 👤 Raghu N. Sharma
  • 👤 Jeffrey P. Davis
  • 👤 Timothy D. Gunn
  • 👤 Ping Li
  • 👤 Sidhartha Maitra
  • 👤 Ashish A. Thanawala

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-04 19:15
CPC Classifications
H; H04; H04L; H04L12/00; H04L12/64; H04L12/6418; G; G10; G10L; G10L19/00; G10L19/04; G10L19/06; H04L27/00; H04L27/32; H04L27/34; H04L27/3405; H04L27/3416; H04L65/00; H04L65/60; H04L65/75; H04L65/762; H04L65/80; H04L9/00; H04L9/40; H04M; H04M1/00; H04M1/247; H04M1/2473; H04M1/2477; H04M1/253; H04M1/60; H04M1/6033; H04M11/00; H04M11/06; H04M11/068; H04M3/00; H04M3/42; H04M3/50; H04M3/53; H04M3/5307; H04M3/533; H04M3/56; H04M3/567; H04M7/00; H04M7/12; H04M7/1205; H04M7/128; H04M7/1295; H04N; H04N1/00; H04N1/00127; H04N1/00204; H04N1/00206; H04L2012/6424; H04L2012/6427; H04L2012/6445; H04L2012/6459; H04L2012/6475; H04L2012/6481; H04L2012/6491; H04L2012/6494; H04L65/1066; H04L65/1101; H04M2203/00; H04M2203/45; H04M2203/4509; H04M3/002; H04M7/006

Claims Analysis

Total Claims: 6
Claim 1
Independent Claim 315 words
A communication module for use with a personal computer, comprising: communications interface means connected for communicating to the personal computer for transferring data between the personal computer and the communications module; telephone line interface means for connection to a telephone line; voice interface means for receiving local voice signals from a local user and for conveying remote voice signals from a remote user to the local user; full-duplex conversion means connected to the voice interface means for converting the local voice signals into outgoing digital voice data and for converting incoming digital voice data into the remote voice signals; digital signal processor means connected to the full-duplex conversion means for compressing the outgoing digital voice data into compressed outgoing digital voice data having one of a plurality of selectable compression rates and for decompressing compressed incoming digital voice data into the incoming digital voice data at one of said plurality of said selectable compression rates; main control means connected for receiving the compressed outgoing digital voice data from the digital signal processor means, connected for receiving outgoing conventional digital data from the personal computer through the communications interface means, and operable for multiplexing the compressed outgoing digital voice data and the conventional digital data to produce multiplexed outgoing data; and the main control means further operable for receiving multiplexed incoming data which contains incoming conventional digital data multiplexed with the compressed incoming digital voice data, for demultiplexing the incoming conventional digital data and the compressed incoming digital voice data, and for sending the incoming conventional digital data to the personal computer through the communications interface means and for sending the compressed incoming digital voice data to the digital signal processor means; and the main control means further operable for negotiating the compression rate at various times during the transmission of conventional digital data multiplexed with the compressed digital voice data to change the compression rate.
Claim 2
Dependent Claim 315 words
A communication module for use with a personal computer, comprising: communications interface means connected for communicating to the personal computer for transferring data between the personal computer and the communications module; telephone line interface means for connection to a telephone line; voice interface means for receiving local voice signals from a local user and for conveying remote voice signals from a remote user to the local user; full-duplex conversion means connected to the voice interface means for converting the local voice signals into outgoing digital voice data and for converting incoming digital voice data into the remote voice signals; digital signal processor means connected to the full-duplex conversion means for compressing the outgoing digital voice data into compressed outgoing digital voice data having one of a plurality of selectable compression rates and for decompressing compressed incoming digital voice data into the incoming digital voice data at one of said plurality of said selectable compression rates; main control means connected for receiving the compressed outgoing digital voice data from the digital signal processor means, connected for receiving outgoing conventional digital data from the personal computer through the communications interface means, and operable for multiplexing the compressed outgoing digital voice data and the conventional digital data to produce multiplexed outgoing data; and the main control means further operable for receiving multiplexed incoming data which contains incoming conventional digital data multiplexed with the compressed incoming digital voice data, for demultiplexing the incoming conventional digital data and the compressed incoming digital voice data, and for sending the incoming conventional digital data to the personal computer through the communications interface means and for sending the compressed incoming digital voice data to the digital signal processor means; and the main control means further operable for negotiating the compression rate at various times during the transmission of conventional digital data multiplexed with the compressed digital voice data to change the compression rate.
Claim 3
Dependent Claim 256 words
The module according to claim 1 wherein the digital signal processor means is further operable for compressing the outgoing digital voice data into compressed outgoing digital voice data by performing the steps of: a.) removing any DC bias in the outgoing digital voice data to produce a normalized outgoing digital voice signal; b.) pre-emphasizing the normalized outgoing digital voice signal to produce a pre-emphasized outgoing digital voice signal; c.) dividing the pre-emphasized outgoing digital voice signal into segments to produce a current segment and a past segment; d.) predicting the pitch of the current speech segment to form a pitch prediction; e.) calculating the gain of the pitch of the current speech segment to form a prediction gain; e.) reconstructing the past speech segment from a compressed past segment to produce a reconstructed past segment; f.) finding the innovation in the current speech segment by comparing the pitch prediction to the reconstructed past segment to produce an error signal; g.) determining the maximum amplitude in the current speech segment; h.) quantizing the error signal using one of a plurality of code books, each code book corresponding to a different compression rate, the code books being generated from a representative set of speakers and environments to produce a minimum mean squared error matching the form of an index into said one of said plurality of code book; and i.) recording the pitch prediction, the prediction gain, the maximum amplitude and the index into the selected code book in a packet as the compressed outgoing digital voice data.
Claim 4
Dependent Claim 103 words
The module according to claim 1 wherein the digital signal processor means is further operable for detecting silent periods in the outgoing digital voice data and for producing in response thereto a silence flag and wherein the main control means is further operable for transmitting outgoing conventional digital data on the telephone line when the silence flag indicates the absence of voice information and wherein the main control means is further operable for multiplexing and transmitting both the compressed outgoing digital voice data and the outgoing conventional digital data on the telephone line when the silence flag indicates the presence of voice information.
Claim 5
Independent Claim 235 words
A system for performing voice compression, comprising: voice interface means including a voice input device for receiving voice signals from a user; conversion means for converting the voice signals into digital voice data; means for dividing the digital voice signal into segments and for serially producing therefrom a current voice segment and a past voice segment; means for determining the predicted gain of the current voice segment; means for determining the pitch values of the current voice segment; coding means for predictive coding on the current voice segment by predicting the current voice segment as best as possible based on past recreated voice segments and for producing a difference signal value in response thereto; means for selecting a compression rate for the speech compression; means including a plurality of code books stored in a memory for comparing the difference signal value to stored difference values stored one of the plurality of code books stored in the memory and for locating the memory address of the closest match between the difference signal value and the stored difference values; output means for providing a compression packet for each of the segments, the packet including the memory address of the closest match between the difference signal value and the stored difference values, the predicted gain and the pitch values for each voice segment; and output means further for providing a negotiation packet sent to determine the compression rate.
Claim 6
Independent Claim 235 words
A system for performing voice compression, comprising: voice interface means including a voice input device for receiving voice signals from a user; conversion means for converting the voice signals into digital voice data; means for dividing the digital voice signal into segments and for serially producing therefrom a current voice segment and a past voice segment; means for determining the predicted gain of the current voice segment; means for determining the pitch values of the current voice segment; coding means for predictive coding on the current voice segment by predicting the current voice segment as best as possible based on past recreated voice segments and for producing a difference signal value in response thereto; means for selecting a compression rate for the speech compression; means including a plurality of code books stored in a memory for comparing the difference signal value to stored difference values stored one of the plurality of code books stored in the memory and for locating the memory address of the closest match between the difference signal value and the stored difference values; output means for providing a compression packet for each of the segments, the packet including the memory address of the closest match between the difference signal value and the stored difference values, the predicted gain and the pitch values for each voice segment; and output means further for providing a negotiation packet sent to determine the compression rate.

References Cited (Backward Citations)

US34034A Cited
US3304372A Cited
US3789165A Cited
US3904830A Cited
US3997732A Cited
US3973081A Cited
US4107471A Cited
US4100377A Cited
US4284850A Cited
US4205202A Cited
US4354273A Cited
US4445213A Cited
US4403322A Cited
US4377860A Cited
US4479213A Cited
US4425661A Cited
US4476559A Cited
US4500987A Cited
US4495620A Cited
US4479195A Cited
US4534024A Cited
US4652703A Cited
US4609788A Cited
US4587651A Cited
US4578537A Cited
US4524244A Cited
US4670874A Cited
US4546212A Cited
US4660218A Cited
US4593389A Cited
US4757527A Cited
US4707831A Cited
US4629829A Cited
US4751736A Cited
US4866732A Cited
US5005183A Cited
US4750169A Cited
US4751510A Cited
US4718082A Cited
US4807250A Cited
USRE34034E Cited
US4764955A Cited
US4700341A Cited
US4835765A Cited
US4740963A Cited
US4697281A Cited
US4901333A Cited
US4932048A Cited
US4926448A Cited
US5008926A Cited
US4813040A Cited
US4809271A Cited
US4862449A Cited
US4839802A Cited
US5235595A Cited
US4845746A Cited
GB2210237B Cited
US4972483A Cited
US4972462A Cited
US4827085A Cited
US4995059A Cited
US4942569A Cited
US5046188A Cited
US4890282A Cited
US4965789A Cited
US4887265A Cited
US4847900A Cited
US5177734A Cited
US5195130A Cited
US5014232A Cited
US4991169A Cited
US5121385A Cited
US5153897A Cited
US4953210A Cited
US4905282A Cited
US4912758A Cited
US5001745A Cited
US5107519A Cited
US5406560A Cited
US4998241A Cited
US4914650A Cited
US5065425A Cited
US4935954A Cited
US5081647A Cited
US4972457A Cited
US5020058A Cited
US5228026A Cited
US5208812A Cited
US5208850A Cited
US5132966A Cited
US5138662A Cited
US5036513A Cited
US5261027A Cited
US5086471A Cited
US5062133A Cited
US5151937A Cited
US5343521A Cited
US5146470A Cited
US5162812A Cited
US5001710A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-08-13 2000-02-12 2000-08-13 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-08-13 2004-02-12 2004-08-13 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-08-13 2008-02-12 2008-08-13 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag