# US 2019/0356716 A1 · Presentation of media in an application

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

- Number: US 2019/0356716 A1
- Document ID: US20190356716A1
- Status: Published application
- Kind: A1
- Application number: 16/529,687
- Filed: 2019-08-01
- Published: 2019-11-21
- Earliest claimed: 2007-03-20
- Assignees: Apple Inc.
- Applicants: Apple Inc.
- Inventors: Eric Carlson; Kevin Calhoun; David W. Singer
- Web page: https://patentgrep.com/patent/US20190356716A1

## CPC

- G06F 16/48: Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F 16/70: of video data
- G06F 16/9577: {Optimising the visualization of content, e.g. distillation of HTML documents}
- G06F 16/986: {Document structures and storage, e.g. HTML extensions}
- H04L 65/764: {at the destination (reformatting of additional data in video clients H04N21/4355)}
- H04N 21/23439: {for generating different versions}
- H04N 21/235: Processing of additional data, e.g. scrambling of additional data or processing content descriptors
- H04N 21/431: Generation of visual interfaces {for content selection or interaction}; Content or additional data rendering
- H04N 21/435: Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
- H04N 21/4431: {characterized by the use of Application Program Interface [API] libraries}
- H04N 21/6581: {Reference data, e.g. a movie identifier for ordering a movie or a product identifier in a home shopping application}
- 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/8402: {involving a version number, e.g. version number of EPG data (arrangements for version control in computers G06F8/71)}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A method and apparatus for presenting timed media represented by data in a markup language (e.g., HTML) including examining a tag or metadata which is capable of specifying more than one form or representation of timed media, such as different versions of a video encoded according to different video codec standards.

## Claims

### Claim at position 1

-43. (canceled)

### Claim 44

A machine implemented method for presenting media in a media player comprising:
receiving metadata associated with timed media, the metadata including a tag associated with a media item of the timed media, and the tag identifying different coded variants of the media item that are available by codec type;
comparing the codec types identified by the tag to decoder types included in native code of the media player;
responsive to a match identified between a codec type identified by the tag and a decoder type in the native code, retrieving the coded variant of the media item corresponding to the matching codec type;
decoding the coded variant of the media item by the matching decoder in the native code of the media player;
presenting the media item by the media player.

### Claim 45 (depends on 44)

The method of claim 44, wherein an error event indicating a render error of the media item occurs when the native code of the media player supports none of the plurality of codec protocols.

### Claim 46 (depends on 44)

The method of claim 44, wherein the tag includes a MIME type specifying a codec required to present the media item.

### Claim 47 (depends on 44)

The method of claim 44, wherein the tag further specifies a minimum data rate requirement associated with each of the plurality of codec protocols, and wherein the selected codec protocol is selected based in part on its associated minimum data rate.

### Claim 48 (depends on 44)

The method of claim 44, wherein the media item in the supported codec protocol is retrieved from the resource over a network connection.

### Claim 49 (depends on 44)

The method of claim 44, wherein:
the metadata is received from a network resource over a network connection; and
the media item is retrieved the network resource over the network connection.

### Claim 50 (depends on 44)

The method of claim 44, wherein:
the tag identifies a plurality of codec types for video, and
when the comparing step identifies no match between the video codec types identified by the tag to decoder types included in native code of the media player, a still image representation of the media item is retrieved and rendered by the media player.

### Claim 51 (depends on 44)

The method of claim 44, wherein:
the tag identifies at least one coded variant by a video codec protocol and at least one other coded variant by an audio codec protocol, and
the variant corresponding to the video codec protocol, when it generates a match, is prioritized over the variant corresponding to the audio codec protocol.

### Claim 52

A non-transitory machine-readable storage medium that stores instructions which, when executed by a machine, cause the machine to perform a method of presenting media item in a media player, the method comprising:
receiving metadata associated with timed media, the metadata including a tag associated with a media item of the timed media, and the tag identifying different coded variants of the media item that are available by codec type;
comparing the codec types identified by the tag to decoder types included in native code of the media player;
responsive to a match identified between a codec type identified by the tag and a decoder type in the native code, retrieving the coded variant of the media item corresponding to the matching codec type;
decoding the coded variant of the media item by the matching decoder in the native code of the media player;
presenting the media item by the media player.

### Claim 53 (depends on 52)

The non-transitory machine-readable storage medium of claim 52, wherein an error event indicating a render error of the media item occurs when the native code of the media player supports none of the plurality of codec protocols.

### Claim 54 (depends on 52)

The non-transitory machine-readable storage medium of claim 52, wherein the tag includes a MIME type specifying a codec required to present the media item.

### Claim 55 (depends on 52)

The non-transitory machine-readable storage medium of claim 52, wherein the tag further specifies a minimum data rate requirement associated with each of the plurality of codec protocols, and wherein the selected codec protocol is selected based in part on its associated minimum data rate.

### Claim 56 (depends on 52)

The non-transitory machine-readable storage medium of claim 52, wherein the media item in the supported codec protocol is retrieved from the resource over a network connection.

### Claim 57 (depends on 52)

The non-transitory machine-readable storage medium of claim 52, wherein:
the metadata is received from a network resource over a network connection; and
the media item is retrieved the network resource over the network connection.

### Claim 58 (depends on 52)

The non-transitory machine-readable storage medium of claim 52, wherein:
the tag identifies a plurality of codec types for video, and
when the comparing step identifies no match between the video codec types identified by the tag to decoder types included in native code of the media player, a still image representation of the media item is retrieved and rendered by the media player.

### Claim 59 (depends on 52)

The non-transitory machine-readable storage medium of claim 52, wherein:
the tag identifies at least one coded variant by a video codec protocol and at least one other coded variant by an audio codec protocol, and
the variant corresponding to the video codec protocol, when it generates a match, is prioritized over the variant corresponding to the audio codec protocol.

### Claim 60

A system comprising a processor and a memory, the memory including instructions for a media player, that when executed by the processor, cause:
receiving a metadata associated with timed media including a tag associated with a media item of the timed media, the tag identifying different coded variants of the media item that are available by codec type;
comparing the codec types identified by the tag to decoder types included in native code of the media player;
responsive to a match identified between a codec type identified by the tag and a decoder type in the native code, retrieving the coded variant of the media item corresponding to the matching codec type;
decoding the coded variant of the media item by the matching decoder in the native code of the media player;
presenting the media item by the media player.

### Claim 61 (depends on 60)

The system of claim 60, wherein an error event indicating a render error of the media item occurs when the native code of the media player supports none of the plurality of codec protocols.

### Claim 62 (depends on 60)

The system of claim 60, wherein the tag includes a MIME type specifying a codec required to present the media item.

### Claim 63 (depends on 60)

The system of claim 60, wherein the tag further specifies a minimum data rate requirement associated with each of the plurality of codec protocols, and wherein the selected codec protocol is selected based in part on its associated minimum data rate.

### Claim 64 (depends on 60)

The system of claim 60, wherein the media item in the supported codec protocol is retrieved from the resource over a network connection.

### Claim 65 (depends on 60)

The system of claim 60, wherein:
the metadata is received from a network resource over a network connection; and
the media item is retrieved the network resource over the network connection.

### Claim 66 (depends on 60)

The system of claim 60, wherein:
the tag identifies a plurality of codec types for video, and
when the comparing step identifies no match between the video codec types identified by the tag to decoder types included in native code of the media player, a still image representation of the media item is retrieved and rendered by the media player.

### Claim 67 (depends on 60)

The system of claim 60, wherein:
the tag identifies at least one coded variant by a video codec protocol and at least one other coded variant by an audio codec protocol, and
the variant corresponding to the video codec protocol, when it generates a match, is prioritized over the variant corresponding to the audio codec protocol.
