# US 9,883,361 B2 · Delivering time synchronized arbitrary data in an RTP session

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

- Number: US 9,883,361 B2
- Document ID: US9883361B2
- Status: Granted
- Kind: B2
- Application number: 13/950,593
- Filed: 2013-07-25
- Published: 2014-01-30
- Granted: 2018-01-30
- Earliest claimed: 2012-07-27
- Assignees: QUALCOMM Incorporated
- Applicants: QUALCOMM Incorporated
- Inventors: Vijay Anandrao Suryavanshi; Giridhar Dhati Mandyam
- Web page: https://patentgrep.com/patent/US9883361B2

## CPC

- H04W 4/16: Communication-related supplementary services, e.g. call-transfer or call-hold
- H04L 65/65: Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

The disclosure relates to wireless communications. An aspect generates a plurality of packets of data, each packet comprising a header and a payload of media data, receives opaque data related to a payload of at least one packet, and embeds the opaque data in an extension header of the at least one packet. An aspect receives a plurality of packets of data, each packet comprising a header and a payload of media data, and receives opaque data related to a payload of at least one packet, the opaque data embedded in an extension header of the at least one packet.

## Claims

### Claim 1

A method for wireless communications, comprising:
generating a plurality of packets of data, each packet comprising a header and a payload of media data;
receiving opaque data related to a payload of at least one packet of the plurality of packets of data, wherein the opaque data comprises user-generated data related to the payload of the at least one packet to be played simultaneously with the payload of the at least one packet;
embedding the opaque data in an extension header of the at least one packet, wherein the extension header comprises an extension header data field in which the opaque data is embedded and a profile identifier field identifying a profile indicating how the opaque data is to be processed by a target user device, wherein the profile is negotiated with the target user device at the application level; and
transmitting the plurality of packets of data to the target user device,
wherein the opaque data and the payload of the at least one packet are played simultaneously by the target user device that receives the plurality of packets of data.

### Claim 2 (depends on 1)

The method of claim 1, wherein the user-generated data comprises coordinate data generated by a user tracing on a user interface.

### Claim 3 (depends on 1)

The method of claim 1, wherein the opaque data comprises data related to the plurality of packets of data that is automatically generated by an application.

### Claim 4 (depends on 1)

The method of claim 1, wherein the media data comprises at least one of video, image, and/or audio data.

### Claim 5 (depends on 1)

The method of claim 1, wherein the header comprises a real-time transport protocol (RTP) header.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
setting an extension header field in the header of the at least one packet to indicate that the at least one packet includes the opaque data.

### Claim 7

A method for wireless communications, comprising:
receiving a plurality of packets of data, each packet comprising a header and a payload of media data;
receiving opaque data related to a payload of at least one packet of the plurality of packets of data, wherein the opaque data comprises user-generated data related to the payload of the at least one packet to be played simultaneously with the payload of the at least one packet, the opaque data embedded in an extension header of the at least one packet, wherein the extension header comprises an extension header data field in which the opaque data is embedded and a profile identifier field identifying a profile indicating how the opaque data is to be processed by a target user device, wherein the profile is negotiated with the target user device at the application level;
extracting the opaque data from the extension header of the at least one packet and caching the extracted opaque data;
transmitting the at least one packet to a first target user device during a group call; and transmitting the extracted opaque data to a second target user device when the second target user device joins the group call after the at least one packet has been transmitted to the first target user device.

### Claim 8 (depends on 7)

The method of claim 7, wherein the user-generated data comprises coordinate data generated by a user tracing on a user interface.

### Claim 9 (depends on 7)

The method of claim 7, wherein the opaque data comprises data related to the plurality of packets of data that is automatically generated by an application.

### Claim 10 (depends on 7)

The method of claim 7, wherein the media data comprises at least one of video, image, and/or audio data.

### Claim 11 (depends on 7)

The method of claim 7, wherein the header comprises a real-time transport protocol (RTP) header.

### Claim 12 (depends on 7)

The method of claim 7, further comprising:
detecting an extension header field in the header of the at least one packet that indicates that the at least one packet includes the opaque data.

### Claim 13 (depends on 7)

The method of claim 7, further comprising:
processing the opaque data according to the profile identified in the profile identifier field.

### Claim 14 (depends on 7)

The method of claim 7, further comprising:
playing the opaque data and the payload of the at least one packet simultaneously,
wherein the method is performed by a user device.

### Claim 15 (depends on 7)

The method of claim 7, wherein the method is performed by a media server.

### Claim 16

An apparatus for wireless communications, comprising:
at least one processor configured to:
generate a plurality of packets of data, each packet comprising a header and a payload of media data;
receive opaque data related to a payload of at least one packet of the plurality of packets of data, wherein the opaque data comprises user-generated data related to the payload of the at least one packet to be played simultaneously with the payload of the at least one packet; and
embed the opaque data in an extension header of the at least one packet, wherein the extension header comprises an extension header data field in which the opaque data is embedded and a profile identifier field identifying a profile indicating how the opaque data is to be processed by a target user device, wherein the profile is negotiated with the target user device at the application level; and
at least one transmitter configured to transmit the plurality of packets of data to the target user device,
wherein the opaque data and the payload of the at least one packet are configured to be played simultaneously by the target user device that receives the plurality of packets of data.

### Claim 17 (depends on 16)

The apparatus of claim 16, wherein the user-generated data comprises coordinate data generated by a user tracing on a user interface.

### Claim 18 (depends on 16)

The apparatus of claim 16, wherein the opaque data comprises data related to the plurality of packets of data that is automatically generated by an application.

### Claim 19 (depends on 16)

The apparatus of claim 16, wherein the media data comprises at least one of video, image, and/or audio data.

### Claim 20 (depends on 16)

The apparatus of claim 16, wherein the header comprises a real-time transport protocol (RTP) header.

### Claim 21 (depends on 16)

The apparatus of claim 16, wherein the processor is further configured to:
set an extension header field in the header of the at least one packet to indicate that the at least one packet includes the opaque data.

### Claim 22

An apparatus for wireless communications, comprising:
at least one processor configured to:
receive a plurality of packets of data, each packet comprising a header and a payload of media data;
receive opaque data related to a payload of at least one packet of the plurality of packets of data, wherein the opaque data comprises user-generated data related to the payload of the at least one packet to be played simultaneously with the payload of the at least one packet, the opaque data embedded in an extension header of the at least one packet, wherein the extension header comprises an extension header data field in which the opaque data is embedded and a profile identifier field identifying a profile indicating how the opaque data is to be processed by a target user device, wherein the profile is negotiated with the target user device at the application level; and
extract the opaque data from the extension header of the at least one packet and caching the extracted opaque data; and a transmitter configured to:
transmit the at least one packet to a first target user device during a group call; and transmit the extracted opaque data to a second target user device when the second target user device joins the group call after the at least one packet has been transmitted to the first target user device.

### Claim 23 (depends on 22)

The apparatus of claim 22, wherein the user-generated data comprises coordinate data generated by a user tracing on a user interface.

### Claim 24 (depends on 22)

The apparatus of claim 22, wherein the opaque data comprises data related to the plurality of packets of data that is automatically generated by an application.

### Claim 25 (depends on 22)

The apparatus of claim 22, wherein the media data comprises at least one of video, image, and/or audio data.

### Claim 26 (depends on 22)

The apparatus of claim 22, wherein the header comprises a real-time transport protocol (RTP) header.

### Claim 27 (depends on 22)

The apparatus of claim 22, wherein the at least one processor is further configured to:
detect an extension header field in the header of the at least one packet that indicates that the at least one packet includes the opaque data.

### Claim 28 (depends on 22)

The apparatus of claim 22, wherein the at least one processor is further configured to:
process the opaque data according to the profile identified in the profile identifier field.

### Claim 29 (depends on 22)

The apparatus of claim 22, wherein the apparatus comprises a user device.

### Claim 30 (depends on 22)

The apparatus of claim 22, wherein the apparatus comprises a media server.

### Claim 31

An apparatus for wireless communications, comprising:
means for generating a plurality of packets of data, each packet comprising a header and a payload of media data;
means for receiving opaque data related to a payload of at least one packet of the plurality of packets of data, wherein the opaque data comprises user-generated data related to the payload of the at least one packet to be played simultaneously with the payload of the at least one packet;
means for embedding the opaque data in an extension header of the at least one packet, wherein the extension header comprises an extension header data field in which the opaque data is embedded and a profile identifier field identifying a profile indicating how the opaque data is to be processed by a target user device, wherein the profile is negotiated with the target user device at the application level; and
means for transmitting the plurality of packets of data to the target user device,
wherein the opaque data and the payload of the at least one packet are configured to be played simultaneously by the target user device that receives the plurality of packets of data.

### Claim 32

An apparatus for wireless communications, comprising:
means for receiving a plurality of packets of data, each packet comprising a header and a payload of media data;
means for receiving opaque data related to a payload of at least one packet of the plurality of packets of data, wherein the opaque data comprises user-generated data related to the payload of the at least one packet to be played simultaneously with the payload of the at least one packet, the opaque data embedded in an extension header of the at least one packet, wherein the extension header comprises an extension header data field in which the opaque data is embedded and a profile identifier field identifying a profile indicating how the opaque data is to be processed by a target user device, wherein the profile is negotiated with the target user device at the application level;
means for extracting the opaque data from the extension header of the at least one packet and caching the extracted opaque data;
means for transmitting the at least one packet to a first target user device during a group call; and
means for transmitting the extracted opaque data to a second target user device when the second target user device joins the group call after the at least one packet has been transmitted to the first target user device.

### Claim 33

A non-transitory computer-readable medium for wireless communications, comprising:
at least one instruction to generate a plurality of packets of data, each packet comprising a header and a payload of media data;
at least one instruction to receive opaque data related to a payload of at least one packet of the plurality of packets of data, wherein the opaque data comprises user-generated data related to the payload of the at least one packet to be played simultaneously with the payload of the at least one packet;
at least one instruction to embed the opaque data in an extension header of the at least one packet, wherein the extension header comprises an extension header data field in which the opaque data is embedded and a profile identifier field identifying a profile indicating how the opaque data is to be processed by a target user device, wherein the profile is negotiated with the target user device at the application level; and
at least one instruction to transmit the plurality of packets of data to the target user device,
wherein the opaque data and the payload of the at least one packet are configured to be played simultaneously by the target user device that receives the plurality of packets of data.

### Claim 34

A non-transitory computer-readable medium for wireless communications, comprising:
at least one instruction to receive a plurality of packets of data, each packet comprising a header and a payload of media data;
at least one instruction to receive opaque data related to a payload of at least one packet of the plurality of packets of data, wherein the opaque data comprises user-generated data related to the payload of the at least one packet to be played simultaneously with the payload of the at least one packet, the opaque data embedded in an extension header of the at least one packet, wherein the extension header comprises an extension header data field in which the opaque data is embedded and a profile identifier field identifying a profile indicating how the opaque data is to be processed by a target user device, wherein the profile is negotiated with the target user device at the application level;
least one packet, the opaque data embedded in an extension header of the at least one packet, wherein the extension header comprises a profile identifier field identifying a profile indicating how the opaque data is to be processed by a target user device;
at least one instruction to extract the opaque data from the extension header of the at least one packet and caching the extracted opaque data;
at least one instruction to transmit the at least one packet to a first target user device during a group call; and
at least one instruction to transmit the extracted opaque data to a second target user device when the second target user device joins the group call after the at least one packet has been transmitted to the first target user device.
