IP Library Granted Patent US 10,129,587
Granted Patent B2
US 10,129,587 · App. 14/875,405 · Granted Nov 13, 2018

Fast switching of synchronized media using time-stamp management

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,129,587
App. No.
14/875,405
Granted
Nov 13, 2018
Kind
B2
Abstract

Disclosed are various embodiments that facilitate fast switching of synchronized media using time-stamp management. A first media stream and multiple second media streams are obtained. The second media stream is time synchronized to the first media stream. The first media stream and one of the second media streams are decoded. Time-stamp management without decoding is performed for another one of the second media streams to facilitate fast switching to the other one of the second media streams when desired.

Claims (52)

1. A system, comprising:

processing circuitry configured to:

obtain a video stream associated with a plurality of audio streams, the audio streams being time synchronized to the video stream;

decode the video stream; and

while the video stream is being continuously decoded:

concurrently perform time-stamp management on each of the audio streams;

decode portions of a selected subset of the audio streams having a first presentation time stamp, with portions of at least one of the audio streams having the first presentation time stamp being excluded from the selected subset and remaining undecoded; and

discard, from a buffer, the portions having the first presentation time stamp of the at least one of the audio streams that remain undecoded;

obtain a selection of a second subset of the audio streams; and

switch decoding from the selected subset to the second subset by:

decoding a first portion of the selected subset of the audio streams having a second presentation time stamp, and discarding without decoding a first portion of the second subset of the audio streams having the second presentation time stamp, each of the first portion of the selected subset of the audio streams and the first portion of the second subset of the audio streams synchronized to a first portion of the video stream, and

decoding a second portion of the second subset of the audio streams having a third presentation time stamp subsequent to the second presentation time stamp, and discarding without decoding a second portion of the selected subset of the audio streams having the second presentation time stamp, each of the second portion of the selected subset of the audio streams and the second portion of the second subset of the audio streams synchronized to a second portion of the video stream.

2. The system of claim 1 , wherein a first audio stream of the selected subset of the audio streams is at a first bitrate and a second audio stream of the selected subset of the audio streams is at a second, different bitrate.

3. The system of claim 1 , wherein the video stream corresponds to a picture-in-picture video stream including a first video stream and a second video stream, a first one of the audio streams corresponds to the first video stream, and a second one of the audio streams corresponds to the second video stream.

4. The system of claim 1 , wherein the processing circuitry is further configured to:

obtain a multiplexed media stream; and

demultiplex the multiplexed media stream to produce the video stream and the audio streams.

5. The system of claim 1 , wherein the processing circuitry comprises:

an audio decoder configured to perform the time-stamp management for the selected subset of the audio streams and to decode the selected subset of the audio streams; and

an audio primer configured to perform the time-stamp management for the at least one of the audio streams that are excluded from the selected subset and remain undecoded.

6. A system, comprising:

processing circuitry configured to:

obtain a first media stream and a plurality of second media streams, the second media streams being time synchronized to the first media stream;

decode a first portion of the first media stream;

decode a first portion of a first one of the second media streams, the first portion of the first one of the second media streams synchronized to the first portion of the first media stream;

discard, without decoding, a first portion of a second one of the second media streams, the first portion of the second one of the second media streams synchronized to the first portion of the first media stream;

obtain a selection of the second one of the second media streams; and

responsive to the selection:

cease decoding of the first one of the second media streams,

commence decoding of the second one of the second media streams using a portion of the second one of the second media streams stored prior to the selection in a time-stamp management buffer, and

perform time-stamp management without decoding for the first one of the second media streams.

7. The system of claim 6 , wherein the processing circuitry is further configured to:

obtain a multiplexed stream; and

demultiplex the multiplexed stream to produce the first media stream and the second media streams.

8. The system of claim 6 , wherein the first media stream corresponds to a video stream, and the second media streams correspond to subtitle streams.

9. The system of claim 6 , wherein the first media stream corresponds to an audio stream, and the second media streams correspond to video streams.

10. The system of claim 6 , wherein the first media stream corresponds to a picture-in-picture video stream.

11. The system of claim 6 , wherein the processing circuitry is further configured to match presentation time stamps (PTS) for the second one of the second media streams with a clock reference associated with the first media stream.

12. A method, comprising:

obtaining, by processing circuitry, a first media stream and a plurality of second media streams, the second media streams being time synchronized to the first media stream, the second media streams stored in a corresponding plurality of buffers;

decoding, by a first decoder in the processing circuitry, the first media stream;

decoding, by a second decoder in the processing circuitry, a first one of the second media streams by extracting a first portion of the first one of the second media streams from a first buffer having a time stamp corresponding to a time stamp of the first media stream, and decoding the extracted first portion of the first one of the second media streams;

performing, by a primer in the processing circuitry, time-stamp management for a second one of the second media streams by extracting a first portion of the second one of the second media streams from a second buffer having a time stamp corresponding to the time stamp of the first media stream, and discarding the extracted first portion of the second one of the second media streams;

obtaining, by the processing circuitry, a selection of the second one of the second media streams;

stopping, by the second decoder, decoding of the first one of the second media streams, responsive to the selection;

transferring contents of the second buffer from the primer to the first buffer of the second decoder, responsive to the selection;

starting, by the second decoder, decoding of the second one of the second media streams using the contents of the first buffer, responsive to the selection; and

performing, by the primer, time-stamp management for the first one of the second media streams, responsive to the selection.

13. The method of claim 12 , further comprising performing, by the primer, security operations for the second one of the second media streams.

14. The method of claim 12 , further comprising performing, by the second decoder, time-stamp management for the first one of the second media streams.

15. The method of claim 12 , further comprising demultiplexing, by the processing circuitry, a multiplexed transport stream to produce the first media stream and the second media streams.

16. The method of claim 12 , wherein the first media stream corresponds to a picture-in-picture video stream including a first video stream and a second video stream, the first one of the second media streams corresponds to an audio stream for the first video stream, and the second one of the second media streams corresponds to an audio stream for the second video stream.

Assignments (6)
CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE OF THE MERGER AND APPLICATION NOS. 13/237,550 AND 16/103,107 FROM THE MERGER PREVIOUSLY RECORDED ON REEL 047231 FRAME 0369. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 8, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 048549/0113 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 9, 2018
From: ERICKSON, DAVID
To: BROADCOM CORPORATION
Reel/Frame 047107/0791 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047231/0369 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →