# US 7,609,716 B2 · Method and apparatus for efficient data transmission control in a wireless voice-over-data communication system

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 7,609,716 B2
- Document ID: US7609716B2
- Status: Granted
- Kind: B2
- Application number: 10/345,002
- Filed: 2003-01-14
- Published: 2003-06-05
- Granted: 2009-10-27
- Earliest claimed: 1999-10-26
- Assignees: QUALCOMM Incorporated
- Inventors: James M. Brown; Yu-Dong Yao
- Web page: https://patentgrep.com/patent/US7609716B2

## CPC

- H04L 12/6418: {Hybrid transport}
- H04L 65/70: Media network packetisation
- H04L 69/163: In-band adaptation of TCP data exchange; In-band control procedures
- H04L 69/164: Adaptation or special uses of UDP protocol
- H04L 69/166: IP fragmentation; TCP segmentation
- H04L 65/1101: Session protocols
- H04L 69/16: Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L 69/24: Negotiation of communication capabilities
- H04L 2012/6421: {Medium of transmission, e.g. fibre, cable, radio, satellite}
- H04L 2012/6472: {Internet}
- H04L 2012/6481: {Speech, voice}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

In a transmitter, data segments are transmitted in accordance with a predefined data protocol. The predefined data protocol is modified to define a first segment size and a second segment size. The first segment size represents a minimum segment size that can be transmitted. The second segment size represents a maximum segment size that can be transmitted. A segment is created and transmitted whenever a quantity of time-sensitive information available for transmission allows a segment to be constructed having a segment size between the minimum segment size and the maximum segment size. A segment of any size up to the maximum segment size is also created and transmitted whenever any time-sensitive information is available for transmission and an acknowledgement message is received by the transmitter.

## Claims

### Claim 1

A method for transmitting time-sensitive information in a communication system, comprising:
determining a number of bits contained within at least one time-sensitive data frame comprising at least a portion of a data stream;
adding at least one random bit to any time-sensitive data frame that does not contain at least a predetermined number of bits based on the determination, wherein the data stream does not comprise the at least one random bit, wherein the adding further comprises adding a number of the at least one random bits until a predetermined ratio of maximum time-sensitive frame size to minimum time-sensitive frame size within the data stream is achieved, wherein the predetermined ratio corresponds to a level of distortion; and
storing said at least one time-sensitive data frame in a queue.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
storing a minimum data segment size for information to be transmitted; and
storing a maximum data segment size for information to be transmitted, said maximum data segment size being greater than said minimum data segment size, wherein the generation of the at least one data frame comprises:
generating a first data segment if a sufficient quantity of bits are available within the queue, said first data segment having a data segment size between said minimum data segment size and said maximum data segment size; and
generating a second data segment having a data segment size less than or equal to said maximum data segment size upon the occurrence of a predefined event.

### Claim 3 (depends on 2)

The method of claim 2 wherein the predefined event comprises the receipt of an acknowledgment message from the receiver.

### Claim 4 (depends on 1)

The method of claim 1 wherein said at least one time-sensitive data frame comprises a vocoder frame.

### Claim 5 (depends on 1)

The method of claim 1, further comprising:
generating at least one data segment from the at least one time-sensitive data frame; and
transmitting bits associated with the at least one data segment to a receiver, wherein the transmitted bits comprise the at least one added random bit.

### Claim 6 (depends on 1)

The method of claim 1, wherein the addition comprises adding at least one random bit until a number of bits contained within the at least one time-sensitive data frame is equal to the number of predetermined number of bits.

### Claim 7

An apparatus for transmitting time-sensitive information in a communication system, comprising:
at least one processor for determining a number of bits contained within at least one time-sensitive data frame comprising at least a portion of a data stream;
wherein the at least one processor is for adding at least one random bit to any data frames that does not contain at least a predetermined number of bits based on the determination, wherein the data stream does not comprise the at least one random bit, wherein the at least one processor is for adding a number of the at least one random bits until a predetermined ratio of maximum time-sensitive frame size to minimum time-sensitive frame size within the data stream is achieved, wherein the predetermined ratio corresponds to a level of distortion; and
a memory for storing said at least one time-sensitive data frame.

### Claim 8 (depends on 7)

The apparatus of claim 7, further comprising:
wherein the memory is for storing a minimum data segment size for information to be transmitted and for storing a maximum data segment size for information to be transmitted, said maximum data segment size being greater than said minimum data segment size, wherein the at least one processor is for generating:
a first data segment if a sufficient quantity of bits are available within the memory, said first data segment having a data segment size between said minimum data segment size and said maximum data segment size, and
a second data segment having a data segment size less than or equal to said maximum data segment size upon the occurrence of a predefined event.

### Claim 9 (depends on 8)

The apparatus of claim 8 wherein the predefined event comprises the receipt of an acknowledgment message.

### Claim 10 (depends on 7)

The apparatus of claim 7, wherein said at least one time-sensitive data frame comprises a vocoder frame.

### Claim 11 (depends on 7)

The apparatus of claim 7, further comprising:
wherein the at least one processor is for generating at least one data segment from the at least one time-sensitive data frame; and
wherein the at least one processor is for transmitting bits associated with the at least one data segment to a receiver, wherein the transmitted bits comprise the at least one added random bit.

### Claim 12 (depends on 7)

The apparatus of claim 7, wherein the at least one processor is for adding at least one random bit until a number of bits contained within the at least one time-sensitive data frame is equal to the number of predetermined number of bits.

### Claim 13

A computer-readable medium for transmitting time-sensitive information in a communication system, said computer-readable medium comprises instructions executable by at least one processor to:
determine a number of bits contained within at least one time-sensitive data frame comprising at least a portion of a data stream;
add at least one random bit to any time-sensitive data frame that does not contain at least a predetermined number of bits based on the determination, wherein the data stream does not comprise the at least one random bit, wherein the adding further comprises adding a number of the at least one random bits until a predetermined ratio of maximum time-sensitive frame size to minimum time-sensitive frame size within the data stream is achieved, wherein the predetermined ratio corresponds to a level of distortion; and
store said at least one time-sensitive data frame in a queue.

### Claim 14 (depends on 13)

The computer-readable medium of claim 13, wherein the instructions are executable by the at least one processor to further:
store a minimum data segment size for information to be transmitted;
store a maximum data segment size for information to be transmitted, said maximum data segment size being greater than said minimum data segment size; and further wherein the generation of the at least one data segment comprises:
generating a first data segment if a sufficient quantity of bits are available within the queue, said first data segment having a data segment size between said minimum data segment size and said maximum data segment size; and
generating a second data segment having a data segment size less than or equal to said maximum data segment size upon the occurrence of a predefined event.

### Claim 15 (depends on 14)

The computer-readable medium of claim 14 wherein the predefined event comprises the receipt of an acknowledgment message.

### Claim 16 (depends on 13)

The computer-readable medium of claim 13 wherein said at least one time-sensitive data frame comprises a vocoder frame.

### Claim 17 (depends on 13)

The computer-readable medium of claim 13, wherein the instructions are executable by the at least one processor to further:
generate at least one data segment from the at least one time-sensitive data frame; and
transmit bits associated with the at least one data segment to a receiver, wherein the transmitted bits comprise the at least one added random bit.

### Claim 18 (depends on 13)

The computer-readable medium of claim 13, wherein the addition comprises adding at least one random bit until a number of bits contained within the at least one time-sensitive data frame is equal to the number of predetermined number of bits.

### Claim 19

A processor configured to transmit time-sensitive information in a communication system, comprising:
at least one processing element to execute at least one preprogrammed instruction set for determining a number of bits contained within at least one time-sensitive data frame comprising at least a portion of a data stream;
wherein the at least one processing element operable to execute at least one preprogrammed instruction set is for adding at least one random bit to any time sensitive data frame that does not contain at least a predetermined number of bits based on the determination, wherein the data stream does not comprise the at least one random bit wherein the at least one processing element to execute at least one preprogrammed instruction set is for adding a number of the at least one random bits until a predetermined ratio of maximum time-sensitive frame size to minimum time-sensitive frame size within the data stream is achieved, wherein the predetermined ratio corresponds to a level of distortion; and
wherein the at least one processing element to execute at least one preprogrammed instruction set is for storing said at least one time-sensitive data frame in a queue.

### Claim 20 (depends on 19)

The processor of claim 19 further comprising:
wherein the at least one processing element to execute at least one preprogrammed instruction set is for generating at least one data segment from the at least one time-sensitive data frame; and
wherein the at least one processing element to execute at least one preprogrammed instruction set is for transmitting bits associated with the at least one data segment to a receiver, wherein the transmitted bits comprise the at least one added random bit.

### Claim 21 (depends on 19)

The processor of claim 19, wherein the at least one processing element to execute at least one preprogrammed instruction set is to add at least one bit until a number of bits contained within the at least one time-sensitive data frame is equal to the number of predetermined number of bits.

### Claim 22

A method for transmitting time-sensitive information in a communication system, comprising:
determining a number of bits contained within at least one time-sensitive data frame comprising at least a portion of a data stream;
adding at least one random bit to any time-sensitive data frame that does not contain at least a predetermined number of bits based on the determination, wherein the data stream does not comprise the at least one random bit, wherein the adding further comprises adding a number of the at least one random bits until a predetermined average bit size of the time-sensitive frames within the data stream is achieved; and
storing said at least one time-sensitive data frame in a queue.

### Claim 23

An apparatus for transmitting time-sensitive information in a communication system, comprising:
at least one processor for determining a number of bits contained within at least one time-sensitive data frame comprising at least a portion of a data stream;
wherein the at least one processor is for adding at least one random bit to any data frame that does not contain at least a predetermined number of bits based on the determination, wherein the data stream does not comprise the at least one random bit, wherein the at least one processor is for adding a number of the at least one random bits until a predetermined average bit size of the time-sensitive frames within the data stream is achieved; and
a memory for storing said at least one time-sensitive data frame.

### Claim 24

A computer-readable medium for transmitting time-sensitive information in a communication system, said computer-readable medium comprises instructions executable by at least one processor to:
determine a number of bits contained within at least one time-sensitive data frame comprising at least a portion of a data stream;
add at least one random bit to any time-sensitive data frame that does not contain at least a predetermined number of bits based on the determination, wherein the data stream does not comprise the at least one random bit, wherein the adding further comprises adding a number of the at least one random bits until a predetermined average bit size of the time-sensitive frames within the data stream is achieved; and
store said at least one time-sensitive data frame in a queue.

### Claim 25

A processor configured to transmit time-sensitive information in a communication system, comprising:
at least one processor for determining a number of bits contained within at least one time-sensitive data frame comprising at least a portion of a data stream;
wherein the at least one processor is for adding at least one random bit to any time sensitive data frame that does not contain at least a predetermined number of bits based on the determination, wherein the data stream does not comprise the at least one random bit, wherein the at least one processor is for adding a number of the at least one random bits until a predetermined average bit size of the time-sensitive frames within the data stream is achieved; and
a memory for storing said at least one time-sensitive data frame.
