throbber
Ulllted States Patent
`
`[19]
`
`[11] Patent Number:
`
`5,835,495
`
`Ferriere
`
`[45] Date of Patent:
`
`Nov. 10, 1998
`
`US005835495A
`
`[54]
`
`SYSTEM AND METHOD FOR SCALEABLE
`STREAMED AUDIO
`OVER
`A NETWORK
`
`Primary Examiner—Min Jung
`Attorney) Agent: or Firm—Lee & Hayes, PLLC
`
`[75]
`
`Inventor: Philippe Ferriere, Redmond, Wash.
`
`[73] Assignee: Microsoft Corporation, Redmond,
`Wa5h-
`
`[21]
`[22]
`
`APP1~ N0-3 540318
`Filed:
`Oct_ 11, 1995
`Int. Cl.6 ...................................................... ..
`[52] U-S- CL ~~~~~~~~~~~~~~~~~~~~~~~~ ~. 370/455; 370/521; 375/222;
`379/58
`[58] Field Of Search ................................... .. 370/252, 465,
`370/486; 521; 477; 375/222; 241; 242;
`245$ 379/68; 88; 89
`
`[56]
`
`,
`,
`5 309 562
`5,541,955
`5,617,423
`
`_
`References Clted
`U5. PATENT DOCUMENTS
`,
`1
`..................................... ..
`,
`.
`5/1994 L.
`395/200 67
`
`7/1996 Jacobsmeyer .
`.....N 375/222
`................................ .. 370/426
`4/1997 Li et al.
`OTHER PUBLICATIONS
`
`GSM 06.10, “GSM Full Rate Speech Transcodmg”, Tech-
`nical Rep. Vers. 3.2, ETSI/GSM, Feb. 1992.
`P. Vary et al., “Speech Codec for European Mobile Radio
`System”, Proc, ICASSP—88, p. 227, Apr. 1988.
`
`[57]
`
`ABSTRACT
`.
`.
`.
`.
`.
`An audio data transmission system encodes audio files into
`individual audio data blocks which contain a variable num-
`ber bits of digital audio data that were sampled at a select-
`able sample rate. The number of bits of digital data and the
`input sampling rate are scaleable to produce an encoded bit
`streanli bitlrtatle that [is less t.l’la1'l1, or egual
`tlohan elfiecéive
`opera iona
`1 rae o a recipien s mo em.
`e au 1o
`a a
`transmjssign System uses Cgmputing units Vvhich are
`designed to select an appropriate combination of block size
`and input sampling rate to maximize the available band-
`width of the receiving modem. For example, if the modem
`connection speed for one modem is 14.4 kbps, a version of
`the audio data compressed at 13000 bits,/s might be sent to
`the recipient; if the modem connection speed for another
`modem is 28.8 kbps, a version of the audio data compressed
`at 24255 bits/s might be sent to the receiver. The audio data
`~
`~
`~
`;
`~
`blocks are then transmitted at the encoded bit stream bit rate
`so thilinltendeld recipient s modem. The audio datC211.blc1)ic1l<s arg
`999 9
`at t 9 r991P19“‘ 19 r99°“5‘‘“9‘ ‘ 9 9“ 19
`9 an
`immediately play the audio file as it is received. The audio
`data transmission system can be implemented in online
`service systems,
`ITV systems, computer data network
`systems, and communication systems.
`
`28 Claims, 6 Drawing Sheets
`
`25
`
`
`
`F/LE
`STORAGE
`
`20 AUDIO
`
`58
`
`28.8 Kbps
`
`T‘
`111
`,/2
`
`37\
`
`34
`
`‘:41’
`
`1111
`
`74.4 Kbps
`
`f
`28/
`
`I
`
`11111 E31
`
`29
`
`//
`
`1
`\
`
`30
`
`RPX Exhibit 1011
`RPX V. DAE
`RPX Exhibit 1011
`RPX v. DAE
`
`

`
`STORAGE
`
`U.S. Patent
`
`Nov. 10,1998
`
`Sheet 1 of6
`
`AUD/0
`F/LE
`
`
`
`5,835,495
`
`26
`
`
`
`
`
`

`
`U
`
`N
`
`m,
`
`m
`
`
`
`8@605E3©E3<cwmmum3m:m§
`
`sE:
`
`w\mm
`
`XDEEEXX
`
`.m.
`
`t.mmmogzm'QBgtmay§<<EE§<<mEmQE::Q:EEEommQ04
`.4/9533%S./.on
`mommmoomqmmqmEwesommmmm\<.\mt
`
`2ROEa3x
`
`/0M
`
`38,5
`
`5
`
`on
`
`
`
`EQQBQmum$5:0.:3EEEommmommmgomfimgq959‘SE8
`
`km:NEQBEEm
`
`.mmsxi
`
`my%s,W&
`
`\
`
`E
`
`
`
`
`

`
`U.S. Patent
`
`Nov. 10,1998
`
`Sheet 3 of 6
`
`5,835,495
`
`70
`
` RPE GR/D
`SEL EC TOR’
`
`
`
`I77 0
`
`FIRST /NVERSE
`OUANT/ZER
`
` X
`
`
`
`_
`
`_
`
`““““““““““ ‘
`
`‘
`
`

`
`U.S. Patent
`
`Nov. 10,1998
`
`Sheet 4 of 6
`
`5,835,495
`
`80
`
` RPE GR/D
`SELECTOR
`
`
`
`
`F/RS 7
`
`/NVERSE
`
`OUANT/ZER’
`
`————————————————— ——
`/NVERSE
`OUAN T/ZER
`
`N/NTH
`
`max8
`
`

`
`U.S. Patent
`
`Nov. 10, 1998
`
`Sheet 5 of 6
`
`5,835,495
`
`750
`
`
`
` DETERMINE
`EFFECTIVE BIT RATE
`
`OF RECEIVING MODEM
`
`LOOK up BLOCK
`SIZE/SAMPL/NC
`RA re
`
`SAMPLE AUDIO
`
`AT SAMPLING
`
`
`
`RA TE
`
`756
`
`SELECT OUANTIZER TO
`
`ENCODE AUDIO SAMPLES
`
`FOR BLOCK OF
`APPROPRIATE SIZE
`
`ENCODE AUDIO
`
`SAMPLES
`
`760
`
`TRANSMI T
`
`ENCODED BIT
`
`STREAM
`
`

`
`U.S. Patent
`
`Nov. 10,1998
`
`Sheet 6 of 6
`
`5,835,495
`
`774
`
`703
`
`

`
`3 5
`
`7495
`
`5,8
`
`1
`SYSTEM AND METHOD FOR SCALEABLE
`STREAMED AUDIO TRANSMISSION OVER
`A NETWORK
`
`TECHNICAL FIELD
`
`This invention relates to audio transmission over
`networks, such as cable-based and wireless networks used in
`telephony and computing systems.
`
`BACKGROUND OF THE INVENTION
`
`Digital audio data is transmitted over networks in many
`dilferent settings. Telephone systems digitize voice and
`transmit digital voice data over telephone lines or cellular
`networks. Online service providers on the Internet can
`download audio files to computer users via conventional
`telephone or cable lines. Audio files can also be exchanged
`over traditional data networks, such as LANs (local area
`networks) and WANs (wide area networks), in a manner
`akin to electronic mail.
`
`Current implementations of audio file transmission sys-
`tems involve a transmission scheme in which the audio
`frames carrying the digital data are a fixed size. Present day
`modems operate at 9.6 kbps (ldlobits per second), 14.4 kbps,
`and 28.8 kbps. The audio frames from an audio file are
`compressed at a bit rate for transmission over these various
`speed communication links. To ensure that transmission is
`possible over all three conventional speeds, the audio files
`are typically compressed at a bit rate of 8000 bits/second
`which can be sent to modems connected at 9.6 kbps, 14.4
`kbps, and 28.8 kbps. While this rate will use most of the
`bandwidth available at 9.6 kbps, it uses only a fraction of the
`available bandwidth at 14.4 kbps and 28.8 kbps. Since the
`file is compressed at a lower quality rate of 8000 bits/second,
`the eventual reconstructed file has an equally low and fixed
`quality. The customers who use higher performing modems
`are penalized because they are unable to retrieve audio files
`of a quality commensurate with the performance of their
`systems.
`It is therefore an aspect of this invention to provide an
`audio data transmission system which is scaleable to the
`communication link to use the maximum available band-
`
`width. In this way, a higher quality audio transmission can
`be provided to better performing modems.
`In the online services setting, conventional systems
`require transmission of the entire audio file (whether com-
`pressed or uncompressed) before the recipient is able to play
`back the audio file. The audio file is at one fixed quality, such
`as that provided by the minimal compression rate of 8000
`bits/second. For larger audio files carried over limited band-
`width channels (such as low-bandwidth telephone lines), the
`time required to download the whole audio file can take
`several minutes. This transmission delay is inconvenient to
`the recipient, particularly if the recipient is only browsing
`various audio files with little intent of listening to the entire
`audio file. The recipient is forced to request an audio file,
`await the slow transmission of the whole audio file at the
`
`minimal fixed bit rate, and then play it back.
`Accordingly,
`it
`is another aspect of this invention to
`provide an optimal quality audio streaming in which the
`recipient can play the audio file as it is received.
`SUMMARY OF THE INVENTION
`
`This invention provides an audio file distribution system
`which permits optimal quality audio file streaming to indi-
`
`10
`
`15
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`vidual customers with varying modem rates. The audio file
`distribution system has an audio server which configures the
`audio files into individual audio data blocks containing a
`variable number of bits of digital audio data that has been
`sampled at a selected input sampling rate. The number of
`bits of digital data and the input sampling rate are scaleable
`by the audio server to produce an cncodcd bit stream bit rate
`that is less than or equal to an effective operational bit rate
`of a recipient’s modem. For example, if the modem con-
`nection speed is 14.4 kbps, a version of the audio data
`compressed at 13000 bits/s might be sent to the recipient; if
`the modem connection speed is 28.8 kbps, a version of the
`audio data compressed at 24255 bits/s might be sent to the
`receiver.
`The audio data blocks are then transmitted at the encoded
`
`bit stream bit rate to the intended recipient’s modem. A
`computing unit decodes the audio data blocks to reconstruct
`the audio file and immediately plays the audio file as each
`audio data block is received. There is no restriction of
`waiting for the entire audio file to be downloaded before
`playback. As a result, a customer can request an audio file
`from the audio server and begin listening immediately. If the
`customer is just browsing, he/she is free to cancel the audio
`file before the entire file is transmitted, making the audio file
`distribution process more cfficicnt and user convcnicnt.
`To determine the appropriate block size of the audio data
`blocks, which enables scaleability to a recipient’s effective
`modem connection speed,
`the audio server and recipient
`computing unit are equipped with an audio coder/decoder
`(or “codec”). The audio codec comprises a coder to encode
`digital samples representative of an audio input frame into a
`compressed format for transmission. The coder includes
`multiple quantizers for encoding the digital samples into the
`audio data blocks of various sizes, and a quantizer selector
`to select the appropriate one of the quantizers.
`In the illustrated implementation, the coder is configured
`according to the European Group Speciale Mobile (GSM)
`standard. This coder has nine quantizers. Each quantizer
`encodes samples representative of an audio input frame
`consisting of 160 input audio samples into audio data blocks
`of a particular size associated with that quantizer. There are
`nine different block sizes, one for each corresponding quan-
`tizer. The block sizes differ according to a number of audio
`data bits contained in each audio data block. Moreover, each
`quantizer can be operated to encode the samples for three
`different input sampling rates. As a result, the coder can
`output 27 possible encoded bit stream bit rate from the
`available permutations of nine block sizes and three sam-
`pling rates.
`The 27 possible encoded bit stream bit rates can be stored
`in lookup tables at the audio server and recipient computing
`units. The audio server selects the appropriate combination
`of block size and input sampling rate from the lookup table
`which maximizes the bandwidth of the receiving modcm.
`The audio server then uses the selected sampling rate to
`generate audio samples and chooses the appropriate quan-
`tizer to encode those samples into the appropriate block size.
`The resulting encoded bit stream bit rate provides optimum
`quality for the receiving modem.
`According to another aspect of this invention, a commu-
`nication system involving multiple communication units and
`an interconnecting network is also adapted with an audio
`codec which facilitates scaleable and optimal audio quality
`real-time communication. An initiating communication unit
`supplies the effective bit rate of its associated modem to a
`responding communication unit. The responding communi-
`
`

`
`3 5
`
`7495
`
`5,8
`
`3
`cation ur1it then deterr11ir1es the smallest effective bit rate
`between the effective bit rates for the modems of the
`
`initiating and responding communication units, and sends
`the smallest effective bit rate back to the first communication
`unit. From that point on, the audio codecs select an appro-
`priate quantizer which produces the audio data blocks with
`the quantity of bits and input sampling rate that yicld an
`encoded bit stream bit rate of less than or equal to the
`smallest effective bit rate of the modems. The audio data
`
`blocks are then exchanged over the network at the encoded
`bit stream rate.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is a diagrammatic illustration of an audio file
`distribution system according to one aspect of this invention.
`FIG. 2 is a block diagram of an audio coder/decoder
`(codcc) according to anothcr aspect of this invention. The
`audio codec is illustrated in an example implementation as
`an RPE-LTP codec according to the European GSM stan-
`dard.
`
`FIG. 3 is a block diagram of an RPE encoder employed
`in the FIG. 2 codec.
`
`FIG. 4 is a block diagram of an RPE decoder employed
`in the FIG. 2 codec.
`
`FIG. 5 is a flow diagram of a method for supplying audio
`files according to another aspect of this invention.
`FIG. 6 is a diagrammatic illustration of a communication
`system according to another aspect of this invention.
`DETAILED DESCRIPTION OF THE
`PREFERRED EMBODIMENT
`
`FIG. 1 shows an audio file distribution system 20 for
`supplying digital audio files to multiple different partici-
`pants. Audio file distribution system 20 has a headend 22
`with an audio server 24 and an audio file storage 26. System
`20 further includes multiple participants 28, 29, and 30
`which use services provided by headend 22. Participants
`28-30 are each equipped with a corresponding computing
`unit 32, 33, and 34 and corresponding modem 36, 37, and
`38, respectively. The participant computing units are illus-
`trated as desktop computers, but can alternatively be in
`implemented as other types of personal computers,
`tele-
`phone units, set-top boxes, or other digital processing
`mechanisms that are capable of handling digital audio data.
`The participant computing units 32-34 are interconnected to
`the audio server 24 via a network, represented by network
`cloud 40. The network 40 might be in the form of a wireless
`network, such as satellite and cellular phone networks, or a
`wire-based network, such as low-bandwidth telephone lines
`or higher—bandwidth cable networks.
`As an example, the audio file distribution system 20 might
`be an online network system in which participants 28-30
`dial up and request audio files from the headend 22. The
`audio server 24 retrieves the audio files from the storage 26
`and downloads the audio files to the requesting computing
`units 32-34. As anothcr cxamplc, thc audio filc distribution
`system 20 might be implemented as part of an interactive
`television (ITV) system in which subscribers 28-30 send
`requests over the TV cable to a cable headend for certain
`audio files for use in conjunction with, or separate from,
`video programs.
`For discussion purposes, the modems 36-38 each operate
`at a dilferent modem rate. The three most conventional
`
`modem rates are 9.6 kbps (kilobits per second), 14.4 kbps,
`and 28.8 kbps. Despite these different modem rates,
`
`4
`however, the audio file distribution system 20 is capable of
`supplying the audio files at different bit rates which are
`appropriate for the receiving modem. More particularly,
`when requesting an audio file, the requesting computing unit
`transmits its present modem connection speed in terms of
`effective bit rate, which may be equal to or less than the
`modem ratc. Supposc, for cxamplc, that computing unit 33
`requests an audio file and its modem 37 is presently oper-
`ating at an effective bit rate of 13.0 kbps. The computing unit
`33 determines this effective bit rate by querying its operating
`system for the current connection speed of modem 37. The
`effective bit rate of 13.0 kbps is slightly less than the
`maximum modem rate of 14.4 kbps. This is not unusual.
`Often times two modems will negotiate to a s slightly lower
`bit rate, and in cases of modem sharing, modem resources
`might be partly consumed by other activities thereby
`explaining a lower effective bit rate.
`The computing unit 33 sends a request for an audio file
`and the effective bit rate of the modem 37 to the audio server
`24. In return,
`the audio server 24 supplies a compressed
`version of the audio file over network 40 to computing unit
`33 such that a bit stream bit rate of the compressed version
`is less than or equal to the effective bit rate of 13.0 kbps for
`modem 37. For instance, the audio server 24 might supply
`thc comprcsscd vcrsion at a bit rate of 12.955 kbps, 12.1
`kbps, or 11.3 kbps.
`Now suppose that computing unit 34 sends a request for
`the same audio file along with an effective bit rate of
`corresponding modem 38 which is, for example, 27.5 kpbs.
`In this case,
`the audio server 24 supplies a compressed
`version of the audio file over network 40 to computing unit
`34 such that a bit stream bit rate of the compressed version
`is less than or equal to the effective bit rate of 27.5 kbps for
`modem 37. Here,
`the audio server 24 might supply the
`compressed version at a bit rate of 25.9 kbps, 22.6 kbps, or
`15.4 kbps.
`The audio server 24 thereby provides a compressed
`version of the requested audio file that is scaled to maximize
`the available bandwidth of the receiving modem. In the
`examples, the audio server 24 sent one compressed version
`of the audio file scaled to the speed of modem 37 (i.e., § 13.0
`kbps) and sent a second compressed version of the same
`audio file scaled to the speed of modem 38 (i.e., §27.5
`kbps). The scaleability permits delivery of variable quality
`audio files that are commensurate with the communication
`
`bandwidth. The audio server 24 provides a higher quality
`version of the audio file to computing unit 34 (which has a
`higher performing modem) and a lower quality version to
`computing unit 33 (which has a lower performing r11oder11).
`The compressed audio file supplied from the audio server
`24 consists of individual audio data blocks which contain a
`
`certain number bits of digital audio data produced at a
`selected sample rate. The audio data blocks have variable
`sizc depending upon the number of data bits included
`therein. The number of digital audio data bits and the sample
`rate are selected to provide an encoded bit stream bit rate
`that is less than or equal to the effective bit rate of the
`receiving modem.
`Upon receipt of the audio data blocks representing the
`compressed audio file, the computing unit 33 decodes the
`audio data blocks and reproduces audio sound from the
`audio data blocks as they are received from the audio server.
`The computing unit does not wait for the entire file to be
`downloaded before decompressing the file; but instead plays
`the audio sound as the blocks are being received. The
`participant can thus begin listening to a requested audio file
`
`10
`
`15
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`

`
`5,83
`
`5,495
`
`5
`in1r11ediately, and cancel the file if l1e/sl1e desires to quit
`listening to that file and move onto another file. Additionally,
`by scaleably encoding individual blocks, the receiving com-
`puting unit is ensured of optimal quality audio data.
`A participant can also request multiple audio files from
`the audio server 24. In this case, the audio server 24 supplies
`a compressed version of each audio file over network 40 to
`the requesting computing unit. The bit stream bit rate of the
`compressed versions of each audio file is less than or equal
`to the effective bit rate of the receiving modem. Upon receipt
`of the compressed versions,
`the computing unit decom-
`presses the audio data blocks, mixes the results, and plays
`the mixed version.
`
`The audio server 24 and computing units 32-34 are all
`equipped with an audio coder/decoder (or “codec”). One
`suitable type of codec is a time-domain codec, and more
`particularly, an analysis-by-synthesis predictive codec.
`There are a variety of speech and other audio coding
`standards for different applications, both nationally and
`internationally. The standards are based upon different cod-
`ing rates and employ different types of coders. The audio
`codecs are configured using one of the common standards,
`which includes versions of CCITT (International Telephone
`and Telegraph Consultative Committee), a European GSM
`(Group Speciale Mobile) standard, CTIA (Cellular Telecom-
`munications Industry Association), and two US. federal
`standards. Table 1 lists various coding standards:
`
`Standard
`
`CCITT G.711
`CCITT (3.721
`CCITT (3.723
`CCITT (3.727
`CCITT (3.728
`GSM
`CTIA
`Fed. Std. 1016
`Fed. Std. 1015
`
`TABLE 1
`
`Rate (kbps)
`
`64
`32
`24,40
`16,24,32,4O
`16
`13
`8
`4.8
`2.4
`
`Coder
`
`log PCM
`ADPCM
`ADPCM
`Embedded ADPCM
`LD-CELP
`RPB-LTP
`VSELP
`CELP
`LPC
`
`The various coders listed in Table 1 are as follows: PCM
`
`(pulse code modulation), ADPCM (adaptive differential
`PCM), LD-CELP (low delay code-excited linear prediction),
`RPE-LTP (regular pulse excitation—long-term predictor),
`VSELP (vector sum excited linear prediction), CELP (code-
`excited linear prediction), and LPC (linear predictive
`coding). FIG. 2 shows a block diagram of an audio codec 50
`which is based in part on the European GSM standard, but
`modified to perform the encoding/decoding functions
`required by aspects of this invention. The audio codec 50 is
`preferably implemented in software which executes on the
`audio server and recipient computing units. The audio codec
`50 encodes input audio frames of 160 audio samples (8-bit
`or 16-bit PCM format) into audio data blocks of various
`sizes and decodes the audio data blocks to reconstruct output
`audio frames of 160 audio samples. Ir1 the implementation
`described herein, the audio data blocks have nine dilferent
`sizes of 164 bits, 176, bits, 188, bits, 200 bits, 212 bits, 224
`bits, 236 bits, 248 bits, and 260 bits. The difference in block
`sizes are caused by differing numbers of encoded signal
`sample bits, whereby more bits results in higher quality and
`fewer bits results in lower quality. Ilowever, the omitted bits
`for the smaller block sizes are selected such that the quality
`loss is negligible and not too problematic to the human
`auditory system. The coding scheme is RPE-LTP (regular
`pulse excitation—long-term predictor).
`The audio codec 50 includes an RPE-LTP coder 52 and an
`
`RPE-LTP decoder 54. The RPE-LTP coder 52 comprises a
`
`6
`preprocessor 56, an LPC (linear predictive coding) analyzer
`58, a short term analysis filter 60, a long term predictor filter
`62, and an RPE coder 64. The function of all RPE-LTP coder
`components other than the RPE encoder 64 are standard, and
`will not be described in detail. Rather, a summary of the
`functions are provided. A more detailed presentation of these
`components is described in the ETSI-GSM Technical Speci-
`fication entitled “GSM Full Rate Speech Transcoding”,
`GSM 06.10, Version 3.2.0, which is hereby incorporated by
`reference.
`
`Preprocessor 56 receives an input audio frame consisting
`of 160 signal samples that are sampled at three different
`input sampling rates of 8000 samples/second, 11025
`samples/second, and 22050 samples/second. For the 8000
`Hz sampling rate, the 160 input samples represent 20 ms of
`audio. For the 11025 Hz sampling rate,
`the 160 input
`samples represent 14.5 ms of audio. Finally, for the 22050
`Hz sampling rate, the 160 input samples represent 7.25 ms
`of audio. The preprocessor 56 produces an olfset-free signal
`that is then subjected to a first order pre-emphasis filter, such
`as a FIR (Finite Impulse Response) filter.
`The LPC analyzer 58 analyzes the 160 samples to deter-
`mine coeflicients for use in the short term analysis filter 60.
`The LPC analyzer 58 performs such tasks as segmentation
`of the audio frame, autocorrelation, calculation of reflection
`coefficients using the Schur recursion algorithm, transfor-
`mation of the reflection coefficients into log area ratios
`LARs, and quantization and coding of the LARs. The short
`term analysis filter 60 filters the same 160 samples to
`produce a short term residual signal. The short term analysis
`filter 60 performs such tasks as decoding the LARs from the
`LPC analyzer 58, interpolating the decoded LARs to avoid
`spurious transients which may occur if the filter coefficients
`are changed abruptly, transforming the LARs into reflection
`coeflicients, and short term analysis filtering.
`The audio frame is divided into four sub-frames, with
`each sub-frame having forty samples of the short
`term
`residual signal. The sub-frames are processed blockwise by
`the long term predictor filter 62 and RPE encoder 64. Each
`sub-frame is initially passed to the long term predictor (LTP)
`filter 62. Before processing the sub-frame, LTP parameters
`used in the LTP filter 62 are estimated and updated using the
`current sub-frame and a stored sequence of the 120 previous
`reconstructed short
`term residual samples. These LTP
`parameters include LTP lags N and LTP gains b.
`A segment of forty long term residual signal samples is
`obtained by subtracting forty estimates of the short term
`residual signal from the short term residual signal itself. The
`resulting segment of forty long term residual samples,
`designated as “e,” is fed to the RPE encoder 64 for com-
`pression. The RPE encoder 64 encodes the long term
`residual samples into a compressed format for transmission.
`The compressed format contains the RPE parameters which
`include a signal samples xm, a maximum of the samples
`xmm, and a grid position M, as will be described in more
`detail below.
`
`The RPE encoder 64 also produces a segment of forty
`samples of the quantized version of a reconstructed long
`term residual signal, designated as “e',” and sends the
`samples back to the LTP filter 62. The forty quantized
`samples of the long term residual are added to the previous
`sub-frame of forty short term residual signal estimates to
`produce a reconstructed version of the current short term
`residual signal. This sub-frame of reconstructed short term
`residual signal samples is then fed back to produce a new
`sub-frame of forty short
`term residual signal estimates,
`
`10
`
`15
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`

`
`7495
`
`5
`
`5,83
`
`7
`thereby completing a feedback loop used in predictive
`coders of this type.
`x
`x
`The RPE parameters ( m, max, M) and LTP parameters
`(N, b) for all four sub-frames, along with the filter param-
`eters (I.ARs), are configured into audio data blocks 66 of
`various sizes. These audio data blocks are then transmitted
`to the RPE-LTP decoder 54.
`
`FIG. 3 shows a block diagram of the RPE encoder 64 in
`more detail. RPE encoder 64 has a weighting filter 70, an
`RPE grid selector 72, nine quantizers 740-748, nine corre-
`sponding inverse quantizers 760-768, and an RPE grid
`positioner 78. The weighting filter 70 is a FIR filter that is
`applied to each sub-frame by convolving the forty long term
`residual samples e with an 11-tap impulse response. One
`suitable impulse response is provided in the above-
`referenced and incorporated ETSI-GSM Technical Specifi-
`cation. This filtering process yields a filtered signal X.
`The RPE grid selector 72 down-samples the filtered signal
`x by a ratio of three to yield three interleaved sequences
`consisting of 14, 13, and 13 samples. The RPE grid selector
`then splits these sequences into four sub-sequences xm,
`where “m” denotes the position of a decimation grid. Each
`sub—sequence xm has thirteen RPE samples. The RPE grid
`selector 72 selects an optimum sub—sequence xM which has
`the maximum energy from among the four sub-sequences,
`where “M” denotes the optimum grid position.
`One of the quantizers 740-743 encodes the sub—sequence
`of RPE samples into a compressed format for transmission.
`More particularly, the selected sub—sequence
`of thir-
`teen RPE samples is quantized by one of the quantizers
`740-748 using APCM (Adaptive Pulse Code Modulation).
`To perform the quantization, a maximum xmm of the abso-
`lute value
`is selected for each sub—sequence of
`rnzve
`thirteen samples xM(i). The maximum x
`is quantized
`logarithmically and output as one of the RPE parameters in
`the audio data block 66. The thirteen RPE samples of the
`selected sub—sequence
`are then normalized by a
`decoded version x‘max of the block maximum, as follows:
`x’(i)=xM(i)/x’,mw' i=0, .
`.
`. 12
`
`The normalized samples x'(i) are quantized uniformly
`with one of the nine quantizers 740-748. The appropriate
`quantizer is selected by the RPE grid selector 72 depending
`upon the best available effective bit rate wMaxBitRate at
`which the receiving modem is presently operating. In this
`manner, the RPE grid selector also functions as a quantizer
`selector. The effective bit rate wMaxBitRate of the receiving
`mode is known by the RPE encoder prior to the quantization
`process. In the system of FIG. 1, for example, the participant
`computing units queried the operating system for the present
`modem connection speed and forwarded this effective bit
`rate wMaxBitRate to the audio server.
`Depending upon which quantizer is selected, the audio
`data blocks output by the RPE-LTP coder 52 are different in
`size. The audio data blocks have nine different sizes of 164
`bits, 176, bits, 188, bits, 200 bits, 212 bits, 224 bits, 236 bits,
`248 bits, and 260 bits depending upon which quantizer is
`selected. The various sized audio data blocks differ in the
`number of bits used to represent the thirteen normalized
`RPE samples for each of the four sub-frames. The smaller
`audio data blocks (i.e., 164-bit and 176-bit) contain fewer
`bits to represent the normalized RPE samples, whereas the
`larger audio data blocks (i.e., 248-bit and 260-bit) contain
`more bits to represent the normalized RPE samples. The
`fewer the bits results in a slightly lower quality signal, but
`not to an annoying or disruptive level.
`
`5
`
`10
`
`15
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`8
`When the effective bit rate of the receiving modem is
`comparatively smaller, representing a lower performing
`modem, a quantizer that causes output of smaller sized audio
`data blocks is selected. The lower quality signal is com1nen-
`surate with the performance of the receiving modem.
`Conversely, when the effective bit rate of the receiving
`modem is comparatively higher, representing a better per-
`forming modem, a quantizer that causes output of larger
`sized audio data blocks is selected. The higher quality signal
`is commensurate with the performance of the better per-
`forming receiving modern.
`In this manner,
`the multiple
`quantizers enable the RPE-LTP coder 52 to be scaleable
`according to the awaiting modern capabilities.
`The following discussion provides a specific example
`implementation of the nine quantizers used in an audio
`RPE-LTP coder that is implemented according to the Euro-
`pean GSM standard. The first quantizer 740 is selected when
`the wMaxBitRate is at a level 0. The first quantizer 740
`uniformly quantizes the first eight normalized samples x‘(i)
`of the first sub-frame to two bits, the last five normalized
`samples x'(i) of the first sub-frame to one bit, and the thirteen
`normalized samples
`of the three last sub-frames to one
`bit. Upon selection of the first quantizer, the RPE-LTP coder
`52 will output a 164-bit audio data block having the bit
`allocation shown in Table 2.
`
`wMaxBitRate ==
`Parameter
`
`Filter parameters
`
`Sub-frame #1 parameters
`
`Sub-frame #2 parameters
`
`Sub-frame #3 parameters
`
`Sub-frame #4 parameters
`
`TABLE 2
`
`Parameter name
`
`Variable Name
`
`Number
`of bits
`
`LAR1-LAR8
`8 LARS
`\I1
`ITP ag
`b1
`LTP gain
`RPE grid position M1
`Bloc { amplitude
`"max1
`3 RPE samples
`x1(0)—X1(12)
`LTP ag
`N2
`LTP gain
`b2
`RPE grid position M2
`Bloc { amplitude
`"‘max2
`' 3 RPE samples
`x2(0)-x2(12)
`LTP ag
`N3
`LTP gain
`b3
`RPE grid position M3
`Bloc { amplitude
`"max3
`3 RPE samples
`x3(0)-x3(12)
`LTP ag
`N4
`LTP gain
`b4
`RPE grid position M4
`Bloc { amplitude
`"max4
`3 RPE samples
`x4l:0)-x4(12)
`Total
`
`36
`7
`2
`2
`6
`21
`7
`2
`2
`6
`13
`7
`2
`2
`6
`13
`7
`2
`2
`6
`13
`164
`
`The second quantizer 741 is selected when the wMaxBi-
`tRate is at a level 1. The second quantizer 741 uniformly
`quantizes the thirteen normalized samples x‘(i) of the first
`sub-frame to two bits, the first seven normalized samples
`x‘(i) of the second sub-frame to two bits,
`the last six
`normalized samples x'(i) of the last sub-frame to one bit, and
`the thirteen normalized samples x‘(i) of the two last sub-
`frames to one bit. Upon selection of the second quantizer, the
`RPE-LTP coder 52 will output a 176-bit audio data block
`having the bit allocation shown in Table 3.
`
`TABLE 3
`
`wMaxBitRate ==
`Parameter
`
`Filter parameters
`
`Parameter name
`
`Variable Name
`
`Number
`of bits
`
`8 Log. Area ratios
`1 LTP lag
`
`LAR1-IAR8
`.\I1
`
`36
`7
`
`

`
`5,83
`
`U1
`
`495
`
`9
`
`TABLE 3-continued
`
`10
`
`TABLE 5
`
`wMaXBitRate == 1
`Parameter
`
`Parameter name
`
`Variable Name
`
`Number
`of bits
`
`wMaxBitRate == 3
`Parameter
`
`Parameter name
`
`Variable Name
`
`Number
`of bits
`
`Sub-frame #1 parameters
`
`Sub-frame #2 parameters
`
`Sub-frame #3 parameters
`
`Sub-frame #4 parameters
`
`b1
`LTP gain
`RPE grid position M1
`Bloc; amplitude
`Xmax1
`3 RPE samples
`x1(O)-x1(12)
`LTP ag
`N2
`LTP gain
`b2
`RPE grid position M2
`Bloc: amplitude
`"max2
`3 RPE samples
`x2(0)-x2(l2)
`' LTP ag
`N3
`LTP gain
`b3
`RPE grid position M3
`Bloc{ amplitude
`Xmax3
`3 RPE samples
`x3(0)-x3(12)
`LTP ag
`N4
`LTP gain
`b4
`RPE grid position M4
`Bloc{ amplitude
`"max4
`3 RPE samples
`x4(0)-x4(12)
`Total
`
`2
`2
`6
`26
`7
`2
`2
`6
`20
`7
`2
`2
`6
`13
`7
`2
`2
`6
`13
`176
`
`The third quantize 742 is selected when the wMaxBi-
`tRate is at a level 2. The third quantizer 742 uniformly
`quantizes the thirteen normalized samples x‘(i) of the first
`two sub-frames to two bits, the first six normalized samples
`x‘(i) of the third sub-frame to 2 bits, the last seven normal-
`ized samples x'(i) of the third sub-frame to one bit, and tl1e
`thirteen normalized samples x‘(i) of the last sub-frame to one
`bit. Upon selection of the third

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket