Patent US5996022A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5996022A Expired / Lapsed US ⏱️ 0.0 years remaining

Transcoding data in a proxy computer prior to transmitting the audio data to a client

Assignee: Adeia Technologies Inc
•
Filing: 1997-04-07
•
Granted: 1999-11-30
•
Expires: 2017-04-07
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A local server has a connection to a client and to a remote server over the Internet. The local server receives a request for an audio file from the client and, in response, transmits a requests for the audio file to the remote server. Upon receiving the audio file, the local server transcodes the audio file received from the remote server and then transmits the transcoded audio file to the client. Transcoding may include changing the audio file type, compressing the audio file, reducing the number of audio channels, or reducing the sampling rate of the data. The local server determines the extent and type of transcoding to be performed on the audio file as the audio file is downloaded from the remote server. The extent and type of transcoding are based on the file formats which the client is capable of handling, the size of the requested audio file, the memory capacity of the client, the bandwidth of the connection between the local server and the client, and the desired level of audio quality. Transcoding may be performed on-the-fly while the requested audio file is being downloaded to the local server from the remote server and while the modified audio file is being downloaded from the local server to the client.

Inventors

  • 👤 Mark H. Krueger
  • 👤 Jay D. Logue

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-04 21:57
CPC Classifications
G; G06; G06F; G06F8/00; G06F8/60; G06F8/65; G06F16/00; G06F16/90; G06F16/95; G06F16/957; G06F16/9577; H; H04; H04L; H04L51/00; H04L51/07; H04L51/10; H04L65/00; H04L65/60; H04L65/75; H04L65/765; H04L67/00; H04L67/34; H04L69/00; H04L69/30; H04L69/32; H04L69/322; H04L69/329; H04N; H04N19/00; H04N19/40; H04N19/46; H04N21/00; H04N21/20; H04N21/23; H04N21/235; H04N21/2355; H04N21/2356; H04N21/25; H04N21/254; H04N21/2541; H04N21/258; H04N21/25808; H04N21/25866; H04N21/25875; H04N21/25891; H04N21/266; H04N21/2662; H04N21/40; H04N21/43; H04N21/433; H04N21/4331; H04N21/435; H04N21/45; H04N21/462; H04N21/4622; H04N21/47; H04N21/478; H04N21/4782; H04N21/4786; H04N21/80; H04N21/81; H04N21/812; H04N21/8166; H04N5/00; H04N5/44; H04N5/60; H04N5/602; H04N7/00; H04N7/08; H04N7/087; H04N7/088; H04L51/21; H04L51/224; H04M; H04M2242/00; H04M2242/22; H04M3/00; H04M3/42; H04M3/42025; H04M3/42034; H04M3/42059

Claims Analysis

Total Claims: 43
Claim 1
Independent Claim 173 words
In a proxy computer having a connection to a client computer, a method of reducing latency that would otherwise occur as the proxy computer transmits audio data to the client computer, the method comprising the steps of: receiving a request for audio data from the client computer, the request being directed to a remote server; obtaining the requested audio data from the remote server on behalf of the client computer; selecting a level of transcoding to be performed on the requested audio data as the requested audio data is being received from the remote server, the level of transcoding being selected from: a first level of transcoding that reduces the number of channels in the requested audio data; a second level of transcoding that reduces a sample rate associated with the requested audio data; and a third level of transcoding that compresses the requested audio data; transcoding the requested audio data according to the selected level of transcoding to generate transcoded audio data; and transmitting the transcoded audio data to the client computer.
Claim 2
Dependent Claim 173 words
In a proxy computer having a connection to a client computer, a method of reducing latency that would otherwise occur as the proxy computer transmits audio data to the client computer, the method comprising the steps of: receiving a request for audio data from the client computer, the request being directed to a remote server; obtaining the requested audio data from the remote server on behalf of the client computer; selecting a level of transcoding to be performed on the requested audio data as the requested audio data is being received from the remote server, the level of transcoding being selected from: a first level of transcoding that reduces the number of channels in the requested audio data; a second level of transcoding that reduces a sample rate associated with the requested audio data; and a third level of transcoding that compresses the requested audio data; transcoding the requested audio data according to the selected level of transcoding to generate transcoded audio data; and transmitting the transcoded audio data to the client computer.
Claim 3
Dependent Claim 51 words
A method according to claim 1, wherein the step of transcoding the requested audio data further comprises the step of converting the requested audio data from a first file type in which the requested audio data has been stored to a different, second file type that the client computer can accommodate.
Claim 4
Dependent Claim 54 words
A method according to claim 1, wherein the step of transcoding the requested audio data results in less latency during the step of transmitting the transcoded audio data to the client computer than would otherwise occur if the requested audio data were to be transmitted to the client computer without the step of transcoding.
Claim 5
Dependent Claim 65 words
A method according to claim 1, wherein: the first level of transcoding is selected to be the selected level of transcoding; the requested audio data comprises dual-channel stereo audio data; and the step of transcoding the requested audio data comprises the step of converting the dual-channel stereo audio data to single-channel mono audio data, wherein the single-channel mono audio data becomes the transcoded audio data.
Claim 6
Dependent Claim 42 words
A method according to claim 4, wherein the step of converting the dual-channel stereo audio data comprises the step of averaging corresponding data samples from each of the two channels included in the dual-channel stereo audio data to generate single resultant samples.
Claim 7
Dependent Claim 96 words
A method according to claim 1, wherein the second level of transcoding is selected to be the selected level of transcoding; the requested audio data includes a plurality of first samples; and the step of transcoding the requested audio data comprises the step of interpolating between selected ones of the plurality of first samples to generate second samples, the second samples being included in the transcoded audio data, wherein the number of the second samples included in the transcoded audio data is smaller than the number of the first samples included in the requested audio data.
Claim 8
Dependent Claim 90 words
A method according to claim 1, wherein: the step of selecting the level of transcoding comprises the step of selecting two levels of transcoding, the two levels of transcoding being the first level of transcoding and the second level of transcoding; and the step of transcoding the requested audio data is conducted according to both the first level of transcoding and the second level of transcoding to generate transcoded audio data having both a reduced number of channels and a reduced sample rate with respect to the requested audio data.
Claim 9
Dependent Claim 48 words
A method according to claim 1, further comprising the step of informing the client computer of the selected level of transcoding according to which the step of transcoding the requested audio data has been conducted, so as to permit the client computer to process the transcoded audio data.
Claim 10
Dependent Claim 39 words
A method according to claim 1, wherein the transcoded audio data inherently includes information whereby the client computer can infer the selected level of transcoding according to which the step of transcoding the requested audio data has been conducted.
Claim 11
Dependent Claim 29 words
A method according to claim 1, wherein the step of selecting the level of transcoding is based at least in part on a size of the requested audio data.
Claim 12
Dependent Claim 34 words
A method according to claim 1, wherein the step of selecting the level of transcoding is based at least in part on a measure of audio quality that is desired at the client computer.
Claim 13
Dependent Claim 35 words
A method according to claim 1, wherein the step of selecting the level of transcoding is based at least in part on a bandwidth of the connection between the proxy computer and the client computer.
Claim 14
Dependent Claim 242 words
In a proxy computer having a connection to a client and to a remote server, a method of reducing latency that would otherwise occur as the proxy computer transmits audio data to the client, the method comprising the steps of: receiving a request for an audio file from the client, the audio file including first audio data; requesting the audio file from the remote server in response to the request from the client; receiving the requested audio file from the remote server in response to the requesting step; selecting a level of transcoding to be performed on the requested audio file as the requested audio file is being received from the remote server, the level of transcoding being selected from: a first level of transcoding that reduces the number of channels in the first audio data; a second level of transcoding that reduces a sample rate associated with the first audio data; and a third level of transcoding that compresses the first audio data, transcoding the first audio data according to the selected level of transcoding to form a transcoded audio file; informing the client regarding the selected level of transcoding so that the client can process the transcoded audio file; and transmitting the transcoded audio file to the client, wherein there is less latency while transmitting the transcoded audio file than would otherwise occur if the first audio data were instead to be transmitted to the client without having been transcoded.
Claim 15
Dependent Claim 242 words
In a proxy computer having a connection to a client and to a remote server, a method of reducing latency that would otherwise occur as the proxy computer transmits audio data to the client, the method comprising the steps of: receiving a request for an audio file from the client, the audio file including first audio data; requesting the audio file from the remote server in response to the request from the client; receiving the requested audio file from the remote server in response to the requesting step; selecting a level of transcoding to be performed on the requested audio file as the requested audio file is being received from the remote server, the level of transcoding being selected from: a first level of transcoding that reduces the number of channels in the first audio data; a second level of transcoding that reduces a sample rate associated with the first audio data; and a third level of transcoding that compresses the first audio data, transcoding the first audio data according to the selected level of transcoding to form a transcoded audio file; informing the client regarding the selected level of transcoding so that the client can process the transcoded audio file; and transmitting the transcoded audio file to the client, wherein there is less latency while transmitting the transcoded audio file than would otherwise occur if the first audio data were instead to be transmitted to the client without having been transcoded.
Claim 16
Dependent Claim 56 words
A method according to claim 13, wherein the step of transcoding the first audio data further comprises the step of converting the first audio data from a first file type associated with the requested audio file to a different, second file type that is associated with the transcoded audio file and that the client can accommodate.
Claim 17
Dependent Claim 91 words
A method according to claim 13, wherein: the step of selecting the level of transcoding comprises the step of selecting two levels of transcoding the two levels of transcoding being the first level of transcoding and the second level of transcoding; and the step of transcoding the first audio data is conducted according to both the first level of transcoding and the second level of transcoding to generate the transcoded audio file having both a reduced number of channels and a reduced sample rate with respect to the first audio data.
Claim 18
Dependent Claim 81 words
A method according to claim 13, wherein: the first level of transcoding is selected to be the selected level of transcoding; the first audio data comprises dual-channel stereo audio data; and the step of transcoding the first audio data comprises the steps of: averaging corresponding data samples from each of the two channels included in the dual-channel stereo audio data to generate single resultant samples representing single-channel mono audio data; and placing the single resultant samples in the transcoded audio file.
Claim 19
Dependent Claim 95 words
A method according to claim 13, wherein: the second level of transcoding is selected to be the selected level of transcoding; the first audio data includes a plurality of first samples; and the step of transcoding the first audio data comprises the step of interpolating between selected ones of the plurality of first samples to generate second samples the second samples being placed in the transcoded audio file wherein the number of the second samples included in the transcoded audio file is smaller than the number of the first samples included the first audio data.
Claim 20
Dependent Claim 63 words
A method according to claim 13, wherein the step of selecting the level of transcoding is based on at least one criterion from the list of criteria consisting of: audio quality that is desired at the client; a size of the requested audio file; a bandwidth of the connection between the proxy computer and the client; and a memory capacity of the client.
Claim 21
Dependent Claim 168 words
A proxy computer capable of establishing a connection to a client computer over a network, the proxy computer comprising: means for receiving a request for audio data from the client computer, the request being directed to a remote server; means for obtaining the requested audio data from the remote server on behalf of the client computer; means for selecting a level of transcoding to be performed on the requested audio data as the requested audio data is being received from the remote server, the level of transcoding being selected from: a first level of transcoding that reduces the number of channels in the requested audio data; a second level of transcoding that reduces a sample rate associated with the requested audio data; and a third level of transcoding that compresses the requested audio data; means for transcoding the requested audio data according to the selected level of transcoding to generate transcoded audio data; and means for transmitting the transcoded audio data to the client computer over the network.
Claim 22
Dependent Claim 168 words
A proxy computer capable of establishing a connection to a client computer over a network, the proxy computer comprising: means for receiving a request for audio data from the client computer, the request being directed to a remote server; means for obtaining the requested audio data from the remote server on behalf of the client computer; means for selecting a level of transcoding to be performed on the requested audio data as the requested audio data is being received from the remote server, the level of transcoding being selected from: a first level of transcoding that reduces the number of channels in the requested audio data; a second level of transcoding that reduces a sample rate associated with the requested audio data; and a third level of transcoding that compresses the requested audio data; means for transcoding the requested audio data according to the selected level of transcoding to generate transcoded audio data; and means for transmitting the transcoded audio data to the client computer over the network.
Claim 23
Dependent Claim 51 words
A proxy computer according to claim 19, wherein the means for transcoding the requested audio data further comprises means for converting the requested audio data from a first file type in which the requested audio data has been stored to a different, second file type that the client computer can accommodate.
Claim 24
Dependent Claim 51 words
A proxy computer according to claim 19, wherein the means for transcoding the requested audio data enables the means for transmitting to transmit the transcoded audio data to the client computer with less latency than would otherwise occur if the requested audio data were to be transmitted without having been transcoded.
Claim 25
Dependent Claim 65 words
A proxy computer according to claim 19, wherein: the means for selecting a level of transcoding selects the first level of transcoding; the requested audio data comprises dual-channel stereo audio data, and the means for transcoding the requested audio data comprises means for converting the dual-channel stereo audio data to single-channel mono audio data, wherein the single-channel mono audio data becomes the transcoded audio data.
Claim 26
Dependent Claim 42 words
A proxy computer according to claim 22, wherein the means for converting the dual-channel stereo audio data comprises means for averaging corresponding data samples from each of the two channels included in the dual-channel stereo audio data to generate single resultant samples.
Claim 27
Dependent Claim 96 words
A proxy computer according to claim 19, wherein the means for selecting a level of transcoding selects the second level of transcoding; the requested audio data includes a plurality of first samples; and the means for transcoding the requested audio data comprises means for interpolating between selected ones of the plurality of first samples to generate second samples, the second samples being included in the transcoded audio data, wherein the number of the second samples included in the transcoded audio data is smaller than the number of the first samples included in the requested audio data.
Claim 28
Dependent Claim 88 words
A proxy computer according to claim 24, wherein: the means for selecting the level of transcoding selects two levels of transcoding, the two levels of transcoding being the first level of transcoding and the second level of transcoding; and the means for transcoding the requested audio data is performs transcoding according to both the first level of transcoding and the second level of transcoding to generate transcoded audio data having both a reduced number of channels and a reduced sample rate with respect to the requested audio data.
Claim 29
Dependent Claim 47 words
A proxy computer according to claim 19, further comprising means for informing the client computer of the selected level of transcoding according to which the means for transcoding has transcoded the requested audio data, so as to permit the client computer to process the transcoded audio data.
Claim 30
Dependent Claim 67 words
A proxy computer according to claim 26, wherein the means for selecting the level of transcoding operates based on at least one criterion from the list of criteria consisting of: audio quality that is desired at the client computer; a size of the requested audio file; a bandwidth of the connection between the proxy computer and the client computer; and a memory capacity of the client computer.
Claim 31
Dependent Claim 195 words
A machine-readable program storage medium for implementing, in a proxy computer having a connection to a client computer, a method of reducing latency that would otherwise occur as the proxy computer transmits audio data to the client computer, the machine-readable program storage medium comprising: executable instructions for transcoding audio data, including first transcoding means for transcoding audio data by reducing the number of channels in the audio data; second transcoding means for transcoding audio data by reducing a sample rate associated with the audio data; and third transcoding means for transcoding audio data by compressing the audio data; and executable instructions for performing the method, including the steps of: receiving a request for audio data from the client computer, the request being directed to a remote server; obtaining the requested audio data from the remote server on behalf of the client computer; selecting at least one of the first transcoding means, the second transcoding means, and the third transcoding means for use in transcoding the requested audio data; transcoding the requested audio data using the selected transcoding means to generate transcoded audio data; and initiating transmission of the transcoded audio data to the client computer.
Claim 32
Dependent Claim 195 words
A machine-readable program storage medium for implementing, in a proxy computer having a connection to a client computer, a method of reducing latency that would otherwise occur as the proxy computer transmits audio data to the client computer, the machine-readable program storage medium comprising: executable instructions for transcoding audio data, including first transcoding means for transcoding audio data by reducing the number of channels in the audio data; second transcoding means for transcoding audio data by reducing a sample rate associated with the audio data; and third transcoding means for transcoding audio data by compressing the audio data; and executable instructions for performing the method, including the steps of: receiving a request for audio data from the client computer, the request being directed to a remote server; obtaining the requested audio data from the remote server on behalf of the client computer; selecting at least one of the first transcoding means, the second transcoding means, and the third transcoding means for use in transcoding the requested audio data; transcoding the requested audio data using the selected transcoding means to generate transcoded audio data; and initiating transmission of the transcoded audio data to the client computer.
Claim 33
Dependent Claim 54 words
A machine-readable program storage medium according to claim 28, wherein the step of transcoding the requested audio data further comprises the step of converting the requested audio data from a first file type in which the requested audio data has been stored to a different, second file type that the client computer can accommodate.
Claim 34
Dependent Claim 57 words
A machine-readable program storage medium according to claim 28, wherein the step of transcoding the requested audio data results in less latency during the step of transmitting the transcoded audio data to the client computer than would otherwise occur if the requested audio data were to be transmitted to the client computer without the step of transcoding.
Claim 35
Dependent Claim 84 words
A machine-readable program storage medium according to claim 28, wherein: the step of selecting at least one of the first transcoding means, the second transcoding means, and the third transcoding means comprises the step of selecting the first transcoding means; the requested audio data comprises dual-channel stereo audio data; and the step of transcoding the requested audio data comprises the step of converting the dual-channel stereo audio data to single-channel mono audio data, wherein the single-channel mono audio data becomes the transcoded audio data.
Claim 36
Dependent Claim 115 words
A machine-readable program storage medium according to claim 28, wherein: the step of selecting at least one of the first transcoding means, the second transcoding means, and the third transcoding means comprises the step of selecting the second transcoding means; the requested audio data includes a plurality of first samples; and the step of transcoding the requested audio data comprises the step of interpolating between selected ones of the plurality of first samples to generate second samples, the second samples being included in the transcoded audio data, wherein the number of the second samples included in the transcoded audio data is smaller than the number of the first samples included in the requested audio data.
Claim 37
Dependent Claim 63 words
A machine-readable program storage medium according to claim 28, wherein the executable instructions for performing the method further comprise executable instructions for performing the step of informing the client computer of the selected level of transcoding according to which the step of transcoding the requested audio data has been conducted, so as to permit the client computer to process the transcoded audio data.
Claim 38
Dependent Claim 189 words
A proxy computer capable of forming a connection to a client computer over a network, the proxy computer comprising: a processor; and at least one storage device coupled to the processor, the at least one storage device having stored therein: executable instructions for transcoding audio data including: first transcoding means for transcoding audio data by reducing the number of channels in the audio data; second transcoding means for transcoding audio data by reducing a sample rate associated with the audio data; and third transcoding means for transcoding audio data by compressing the audio data; and executable instructions which configure the proxy computer to: receive a request for audio data from the client computer the quest being directed to a remote server; obtain the requested audio data from the remote server on behalf of the client computer; select at least one of the first transcoding means, the second transcoding means, and the third transcoding means for use in transcoding the requested audio data; transcode the requested audio data using the selected transcoding means to generate transcoded audio data; and initiate transmission of the transcoded audio data to the client computer.
Claim 39
Dependent Claim 189 words
A proxy computer capable of forming a connection to a client computer over a network, the proxy computer comprising: a processor; and at least one storage device coupled to the processor, the at least one storage device having stored therein: executable instructions for transcoding audio data including: first transcoding means for transcoding audio data by reducing the number of channels in the audio data; second transcoding means for transcoding audio data by reducing a sample rate associated with the audio data; and third transcoding means for transcoding audio data by compressing the audio data; and executable instructions which configure the proxy computer to: receive a request for audio data from the client computer the quest being directed to a remote server; obtain the requested audio data from the remote server on behalf of the client computer; select at least one of the first transcoding means, the second transcoding means, and the third transcoding means for use in transcoding the requested audio data; transcode the requested audio data using the selected transcoding means to generate transcoded audio data; and initiate transmission of the transcoded audio data to the client computer.
Claim 40
Dependent Claim 64 words
A first computer system according to claim 34, wherein the executable instructions which configure the proxy computer to transcode the requested audio data further comprise executable instructions which configure the proxy computer to convert the requested audio data from a first file type in which the requested audio data has been stored to a different, second file type that the client computer can accommodate.
Claim 41
Dependent Claim 96 words
A first computer system according to claim 34, wherein: the executable instructions which configure the proxy computer to select at least one of the first transcoding means, the second transcoding means, and the third transcoding means select the first transcoding means; the requested audio data comprises dual-channel stereo audio data; and the executable instructions which configure the proxy computer to transcode the requested audio data comprise executable instructions which configure the proxy computer to convert the dual-channel stereo audio data to single-channel mono audio data, wherein the single-channel mono audio data becomes the transcoded audio data.
Claim 42
Dependent Claim 55 words
A first computer system according to claim 36, wherein the executable instructions which configure the proxy computer to convert the dual-channel stereo audio data comprises executable instructions which configure the proxy computer to average corresponding data samples from each of the two channels included in the dual-channel stereo audio data to generate single resultant samples.
Claim 43
Dependent Claim 127 words
A first computer system according to claim 34, wherein: the executable instructions which configure the proxy computer to select at least one of the first transcoding means, the second transcoding means, and the third transcoding means select the second transcoding means; the requested audio data includes a plurality of first samples; and the executable instructions which configure the proxy computer to transcode the requested audio data comprise executable instructions which configure the proxy computer to interpolate between selected ones of the plurality of first samples to generate second samples, the second samples being included in the transcoded audio data, wherein the number of the second samples included in the transcoded audio data is smaller than the number of the first samples included in the requested audio data.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-11-29 2003-05-31 2003-11-30 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-11-29 2007-05-31 2007-11-30 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-11-29 2011-05-31 2011-11-30 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag