# US 12,526,331 B2 · Adaptive media streaming method and apparatus according to decoding performance

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

- Number: US 12,526,331 B2
- Document ID: US12526331B2
- Status: Granted
- Kind: B2
- Application number: 17/734,229
- Filed: 2022-05-02
- Published: 2022-08-18
- Granted: 2026-01-13
- Earliest claimed: 2016-11-07
- Assignees: Hanwha Vision Co., Ltd.
- Applicants: Hanwha Techwin Co., Ltd.
- Inventors: Byung In Song; Sweung Won Cheung
- Web page: https://patentgrep.com/patent/US12526331B2

## CPC

- H04L 65/764: {at the destination (reformatting of additional data in video clients H04N21/4355)}
- H04L 65/61: for supporting one-way streaming services, e.g. Internet radio
- H04L 65/65: Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
- H04N 21/23439: {for generating different versions}
- H04N 21/4516: {involving client characteristics, e.g. Set-Top-Box type, software version or amount of memory available}
- H04N 21/6125: {involving transmission via Internet (transmission by internet of broadcast information H04H60/82)}
- H04N 21/8173: {End-user applications, e.g. Web browser, game}
- H04N 21/8193: {dedicated tools, e.g. video decoder software or IPMP tool}
- 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

A method and apparatus for streaming media without installing a plug-in in a web browser are provided. When a JavaScript decoder is used to stream media without installing a plug-in, it is difficult to support decoding of high framerate and high resolution video due to the limitations of JavaScript. When streaming media using a video element of HTML5 without installing a plug-in, a compatibility issue with a conventional video capturing apparatus using RTSP/RTP and an initial delay problem due to a container of MPEG-DASH are inherent. The present disclosure presents an adaptive media streaming method and apparatus capable of performing streaming of high framerate and high resolution video without an initial delay and compatibility issues by addressing these drawbacks.

## Claims

### Claim 1

An adaptive media streaming apparatus comprising:
a receiver;
a video web worker;
a first video player;
a second video player;
the receiver receiving media data generated by a media service apparatus using a communication protocol which supports web services;
the video web worker configured to determine that a video codec used to encode video data in the media data is supported by a first video decoder and configured to determine that a decoding delay over a delay threshold has occurred in the first video player;
the first video player configured to decode a portion of the video data transmitted from the video web worker using a second video decoder; and
the second video player configured to decode another portion of the video data using the first video decoder upon determination that the video codec is supported by the first video decoder and upon determination that the decoding delay over the delay threshold has occurred, wherein
the first video decoder is embedded in a web browser of the adaptive media streaming apparatus that allows the adaptive media streaming apparatus to play the media data without installing a plug-in, and
the second video decoder is written in a script which is supported by the web browser that allows the adaptive media streaming apparatus to play the media data without installing a plug-in.

### Claim 2 (depends on 1)

The adaptive media streaming apparatus of claim 1, wherein a decoding time measurer measures a frame rate of the video data being decoded by the first video player using a frames per second (FPS) meter to determine that the decoding delay of the first video player is over the delay threshold.

### Claim 3 (depends on 1)

The adaptive media streaming apparatus of claim 1, further comprising:
an audio web worker determining that an audio codec of audio data included in the media data is supported by a first audio decoder embedded in the web browser;
a first audio player, in response to the audio codec of the audio data being unsupported by the first audio decoder embedded in the web browser, decoding the audio data transmitted from the audio web worker using a second audio decoder written in the script; and
a second audio player, in response to the audio codec of the audio data being supported by the first audio decoder embedded in the web browser, decoding the audio data transmitted from the audio web worker using the first audio decoder embedded in the web browser.

### Claim 4 (depends on 1)

The adaptive media streaming apparatus of claim 1, wherein the script is JavaScript.

### Claim 5 (depends on 3)

The adaptive media streaming apparatus of claim 3, wherein the first video decoder and the first audio decoder are a video tag and an audio tag, respectively, according to a HTML5 standard.

### Claim 6 (depends on 3)

The adaptive media streaming apparatus of claim 3, wherein the video web worker is further configured to transmit the video data to the first video player or the second video player according to the video codec used to encode the video data and whether the decoding delay over the delay threshold has occurred, and
wherein the audio web worker is further configured to transmit the audio data to the first audio player or the second audio player according to the audio codec of the audio data.

### Claim 7

An adaptive media streaming apparatus comprising:
a receiver;
a video web worker;
a first video player;
a second video player;
the receiver receiving media data generated by a media service apparatus using a communication protocol which supports web services;
the video web worker configured to determine that a video codec used to encode video data in the media data is supported by a first video decoder and configured to determine that a decoding delay over a delay threshold has occurred in the first video player;
the first video player configured to decode a portion of the video data transmitted from the video web worker using a second video decoder; and
the second video player configured to decode another portion of the video data using the first video decoder upon determination that the video codec is supported by the first video decoder and upon determination that the decoding delay over the delay threshold has occurred, wherein
the first video decoder is embedded in a web browser of the adaptive media streaming apparatus, and
the second video decoder is written in a script which is supported by the web browser.

### Claim 8 (depends on 7)

The adaptive media streaming apparatus of claim 7, wherein a decoding time measurer measures a frame rate of the video data being decoded by the first video player using a frames per second (FPS) meter to determine that the decoding delay of the first video player is over the delay threshold.

### Claim 9 (depends on 7)

The adaptive media streaming apparatus of claim 7, wherein the video web worker is configured to adjust, through machine learning, a threshold value used for determining the decoding time received from a decoding time measurer.

### Claim 10 (depends on 7)

The adaptive media streaming apparatus of claim 7, further comprising:
an audio web worker determining that an audio codec of audio data included in the media data is supported by a first audio decoder embedded in the web browser;
a first audio player, in response to the audio codec of the audio data being unsupported by the first audio decoder embedded in the web browser, decoding the audio data transmitted from the audio web worker using a second audio decoder written in the script; and
a second audio player, in response to the audio codec of the audio data being supported by the first audio decoder embedded in the web browser, decoding the audio data transmitted from the audio web worker using the first audio decoder embedded in the web browser.

### Claim 11 (depends on 7)

The adaptive media streaming apparatus of claim 7, wherein the script is JavaScript.

### Claim 12 (depends on 10)

The adaptive media streaming apparatus of claim 10, wherein the first video decoder and the first audio decoder are a video tag and an audio tag, respectively, according to a HTML5 standard.

### Claim 13 (depends on 10)

The adaptive media streaming apparatus of claim 10, wherein the video web worker is further configured to transmit the video data to the first video player or the second video player according to the video codec used to encode the video data and whether the decoding delay over the delay threshold has occurred, and
wherein the audio web worker is further configured to transmit the audio data to the first audio player or the second audio player according to the audio codec of the audio data.
