# US 11,451,602 B2 · Methods and apparatuses for dynamic adaptive streaming over HTTP

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

- Number: US 11,451,602 B2
- Document ID: US11451602B2
- Status: Granted
- Kind: B2
- Application number: 17/477,315
- Filed: 2021-09-16
- Published: 2022-07-07
- Granted: 2022-09-20
- Earliest claimed: 2021-01-06
- Assignees: Tencent America LLC
- Applicants: Tencent America LLC
- Inventors: Iraj Sodagar
- Web page: https://patentgrep.com/patent/US11451602B2

## CPC

- H04L 65/61: for supporting one-way streaming services, e.g. Internet radio
- H04N 21/26258: {for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list (retrieval of multimedia data based on playlists G06F16/40)}
- H04L 65/1108: Web based protocols, e.g. webRTC
- H04L 65/612: for unicast
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L 67/146: Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
- H04N 21/435: Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
- H04N 21/4516: {involving client characteristics, e.g. Set-Top-Box type, software version or amount of memory available}
- H04N 21/4524: {involving the geographical location of the client (retrieval from the Internet by querying based on geographical locations G06F16/9537; systems specially adapted for using geographical information in broadcast systems H04H60/70; protocols in which the network application is adapted for the location of the user terminal in communication control or processing H04L67/52; services making use of the location of users or terminals in wireless networks H04W4/02; locating users or terminals in wireless networks H04W64/00)}
- H04N 21/4532: {involving end-user characteristics, e.g. viewer profile, preferences (monitoring of user activities for profile generation for accessing a video database G06F16/739; user profiles in network data switching protocols H04L67/306; processing of user preferences or user profiles in wireless networks H04W8/18)}
- H04N 21/6582: {Data stored in the client, e.g. viewing habits, hardware capabilities, credit card number (arrangements where receivers interact with the broadcast H04H20/38)}
- H04N 21/84: Generation or processing of descriptive data, e.g. content descriptors {(systems specially adapted for using meta-information in broadcast systems H04H60/73)}
- H04N 21/8456: {by decomposing the content in the time domain, e.g. in time segments}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

Aspects of the disclosure include methods, apparatuses, and non-transitory computer-readable storage mediums for receiving media data. One apparatus includes processing circuitry that receives a media presentation description (MPD) file that includes an essential property descriptor for session-based dynamic adaptive streaming over hypertext transfer protocol (DASH) operation. The essential property descriptor indicates a session-based description (SBD) file that includes one or more key-value pairs dynamically generated by a local SBD session controller. Each key of the one or more key-value pairs indicates service information of a different service of a local device. The processing circuitry modifies a uniform resource locator (URL) based on the SBD file. The processing circuitry acquires a resource from a remote server based on the modified URL.

## Claims

### Claim 1

A method of receiving media data, comprising:
receiving a media presentation description (MPD) file that includes an essential property descriptor for session-based dynamic adaptive streaming over hypertext transfer protocol (DASH) operation, the essential property descriptor indicating an address of a session-based description (SBD) file, the SBD file including one or more key-value pairs dynamically generated by a local SBD session controller, each key of the one or more key-value pairs indicating service information of a different service of a local device;
obtaining the SBD file based on the address of the SBD file indicated by the essential property descriptor;
modifying a uniform resource locator (URL) based on the obtained SBD file; and
acquiring a resource from a remote server based on the modified URL.

### Claim 2 (depends on 1)

The method of claim 1, wherein the address is included in the essential property descriptor and is a local address of the SBD file.

### Claim 3 (depends on 1)

The method of claim 1, wherein the service information includes at least one of device information, user information, application information, or location information.

### Claim 4 (depends on 1)

The method of claim 1, further comprising:
in response to a change in the service information of the local device,
updating one of the one or more key-value pairs corresponding to the service information of one of the services of the local device.

### Claim 5 (depends on 1)

The method of claim 1, wherein the modifying includes modifying at least one of a host part, a port part, a path part, or a fragment part of the URL based on the SBD file.

### Claim 6 (depends on 1)

The method of claim 1, wherein the modifying includes adding a query to the URL based on the SBD file.

### Claim 7 (depends on 1)

The method of claim 1, wherein the URL is one of a media segment request, an MPD request, an extensible markup language linking language (XLink) resolution request, a callback request that is triggered by a callback event, a chaining request for a chained-to MPD, or a fallback request for a fallback MPD.

### Claim 8 (depends on 1)

The method of claim 1, wherein a type of the SBD file is a dynamic type and the one or more key-value pairs are arranged in a time-based order.

### Claim 9

An apparatus for receiving media data, the apparatus comprising:
processing circuitry configured to:
receive a media presentation description (MPD) file that includes an essential property descriptor for session-based dynamic adaptive streaming over hypertext transfer protocol (DASH) operation, the essential property descriptor indicating an address of a session-based description (SBD) file, the SBD file including one or more key-value pairs dynamically generated by a local SBD session controller, each key of the one or more key-value pairs indicating service information of a different service of a local device;
obtain the SBD file based on the address of the SBD file indicated by the essential property descriptor;
modify a uniform resource locator (URL) based on the obtained SBD file; and
acquire a resource from a remote server based on the modified URL.

### Claim 10 (depends on 9)

The apparatus of claim 9, wherein the address is included in the essential property descriptor and is a local address of the SBD file.

### Claim 11 (depends on 9)

The apparatus of claim 9, wherein the service information includes at least one of device information, user information, application information, or location information.

### Claim 12 (depends on 9)

The apparatus of claim 9, wherein the processing circuitry is further configured to:
in response to a change in the service information of the local device,
update one of the one or more key-value pairs corresponding to the service information of one of the services of the local device.

### Claim 13 (depends on 9)

The apparatus of claim 9, wherein the processing circuitry is further configured to:
modify at least one of a host part, a port part, a path part, or a fragment part of the URL based on the SBD file.

### Claim 14 (depends on 9)

The apparatus of claim 9, wherein the processing circuitry is further configured to:
add a query to the URL based on the SBD file.

### Claim 15 (depends on 9)

The apparatus of claim 9, wherein the URL is one of a media segment request, an MPD request, an extensible markup language linking language (XLink) resolution request, a callback request that is triggered by a callback event, a chaining request for a chained-to MPD, or a fallback request for a fallback MPD.

### Claim 16 (depends on 9)

The apparatus of claim 9, wherein a type of the SBD file is a dynamic type and the one or more key-value pairs are arranged in a time-based order.

### Claim 17

A non-transitory computer-readable storage medium storing instructions which, when executed by a computer for receiving media data, cause the computer to perform:
receiving a media presentation description (MPD) file that includes an essential property descriptor for session-based dynamic adaptive streaming over hypertext transfer protocol (DASH) operation, the essential property descriptor indicating an address of a session-based description (SBD) file, the SBD file including one or more key-value pairs dynamically generated by a local SBD session controller, each key of the one or more key-value pairs indicating service information of a different service of a local device;
obtaining the SBD file based on the address of the SBD file indicated by the essential property descriptor;
modifying a uniform resource locator (URL) based on the obtained SBD file; and
acquiring a resource from a remote server based on the modified URL.

### Claim 18 (depends on 17)

The non-transitory computer-readable storage medium of claim 17, wherein the address is included in the essential property descriptor and is a local address of the SBD file.

### Claim 19 (depends on 17)

The non-transitory computer-readable storage medium of claim 17,
wherein the service information includes at least one of device information, user information, application information, or location information.

### Claim 20 (depends on 17)

The non-transitory computer-readable storage medium of claim 17, wherein the stored instructions cause the computer to perform:
in response to a change in the service information of the local device,
updating one of the one or more key-value pairs corresponding to the service information of one of the services of the local device.
