IP Library Granted Patent US 9,324,365
Granted Patent B2
US 9,324,365 · App. 13/196,918 · Granted Apr 26, 2016

Multi-language buffering during media playback

Inventor: Dieter Hametner (Karlsruhe, DE)
Assignee: NERO AG
G11B20/10527G06F9/4448G11B27/105G11B27/329G11B2020/10629G11B2020/10638G11B2020/10675G11B2020/10685G11B2020/10759G11B2020/10796G11B2220/2541G11B2220/2562
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 9,324,365
App. No.
13/196,918
Granted
Apr 26, 2016
Kind
B2
Abstract

A data processor for processing a data stream having audio and video data has an input buffer for buffering the data stream; a data stream analyzer for analyzing the data stream for finding information on a plurality of language-specific content in different languages; a queuing buffer for queuing a plurality of parallel queues, each queue having only language-specific content in the same language; and a feeder for feeding a selected queue in accordance with a language selection signal to a subsequent processing stage, wherein a non-selected queue is not fed by the feeder. Also disclosed are a corresponding method for processing a data stream and a computer-readable digital storage medium. The data processor or the method for processing a data stream reduces a delay experience by a user when switching from one language-specific content to another language-specific content in a different language, even if the processing is done on an architecture that needs ample data buffering to compensate for variations in the system load, such as a personal computer system with the standard operating system.

Claims (42)

1. A data processor for processing a data stream comprising audio and video data, comprising:

an input buffer configured to buffer the data stream;

a data stream analyzer programmed and configured to analyze the data stream to find information on a plurality of language-specific contents in different languages;

a queuing buffer configured to queue a plurality of parallel queues, each queue including only references to language-specific contents in the same distinct language, wherein the reference point to input buffer items in the input buffer; and

a feeder programmed and configured to extract the references to language-specific contents from a selected queue in accordance with a language selection signal and to feed the extracted references to the language-specific contents to subsequent data processing stages, wherein the references to the language-specific contents in a non-selected queue are not fed to the subsequent data processing stages;

wherein at least one of the input buffer, the data stream analyzer, the queuing buffer, and the feeder comprises a hardware implementation.

2. The data processor according to claim 1 , wherein the data stream originates from one of an optical disk, a magnetic disk, a hard drive, a network, a Digital Versatile Disk, and a Blu-ray disk.

3. The data processor according to claim 1 , wherein the input buffer is adapted to buffer source packets.

4. The data processor according to claim 1 , further comprising a data stream decrypter upstream of the data stream analyzer.

5. The data processor according to claim 1 , wherein the information on language-specific contents is a program identifier.

6. The data processor according to claim 1 , further comprising a time stamp generator adapted to determine playlist time stamps for items to be queued in the plurality of parallel queues and to apply the playlist time stamps to the items.

7. The data processor according to claim 1 , wherein the queuing buffer is adapted to append items to the plurality of parallel queues in accordance with the information on the plurality of language-specific contents and an order defined by time stamps of sections of the data stream.

8. The data processor according to claim 1 , wherein the queuing buffer is adapted to receive a plurality of references to input buffer items in the input buffer so that the queuing of the plurality of queues is achieved by inserting a reference of the plurality of references according to a queuing scheme, the reference pointing to an input buffer item in the input buffer.

9. The data processor according to claim 1 , wherein the feeder is further adapted to retrieve and discard expired content from the non-selected queue.

10. The data processor according to claim 1 , wherein the language-specific content is one of an audio stream, a subtitle, a presentation graphic, an interactive graphic, and a credits section of an audio and video presentation.

11. A method for processing a data stream comprising audio and video data, comprising:

buffering the data stream in an input buffer;

analyzing the data stream to find information on a plurality of language-specific contents in different languages;

appending information regarding a particular language-specific content to a queue of a plurality of parallel queues, the information in each queue including only references to language-specific content in the same language, the information regarding the particular language-specific content being appended to a parallel queue of the same distinct language, wherein the references point to input buffer items in the input buffer;

retrieving the references to the language-specific content from a parallel queue selected in accordance with a currently valid language selection signal; and

feeding the retrieved references to the language-specific content to a subsequent processing stage, wherein the references to the language-specific content of a non-selected parallel queue are not fed to the subsequent processing stage.

12. The method according to claim 11 , further comprising:

determining playlist time stamps for items to be queued in the plurality of parallel queues;

applying the playlist time stamps to the items.

13. The method according to claim 11 ,

wherein the appending of a particular language-specific content to the queue in the same language is done in accordance with the information on the language-specific contents and an order defined by time stamps of sections of the data stream.

14. The method according to claim 11 , further comprising:

retrieving and discarding expired language-specific content from non-selected queues.

15. A non-transitory computer readable digital storage medium comprising stored thereon a computer program code for performing, when running on a computer, a method for processing a data stream comprising audio and video data, the method comprising:

buffering the data stream in an input buffer;

analyzing the data stream to find information on a plurality of language-specific contents in different languages;

appending information regarding a particular language-specific content to a queue of a plurality of parallel queues, the information in each queue including only references to language-specific content in the same language, the information regarding the particular language-specific content being appended to a parallel queue of the same distinct language, wherein the references point to input buffer items in the input buffer;

retrieving the references to the language-specific content from a parallel queue selected in accordance with a currently valid language selection signal; and

feeding the retrieved references to the language-specific content to a subsequent processing stage, wherein the references to the language-specific content of a non-selected parallel queue are not fed to the subsequent processing stage.

16. The data processor according to claim 1 , wherein:

one of the subsequent processing stages is a data renderer;

the feeder is programmed and configured to feed the extracted references to the language-specific contents to the data renderer; and

the data renderer is programmed and configured to use the extracted references to query the input buffer for the input buffer items referenced by the extracted references.

17. The method according to claim 11 , wherein:

the subsequent processing stage is a data renderer;

the feeding includes feeding the extracted references to the language-specific contents to the data renderer; and

the method further includes a step of using, by the data renderer, the extracted references to query the input buffer for the input buffer items referenced by the extracted references.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 3, 2019
From: HERTL MEDIA LLC
To: NERO, AG
Reel/Frame 049668/0290 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 2, 2018
From: POLYGLOT ENTERPRISES LLC
To: HERTL MEDIA LLC
Reel/Frame 045407/0211 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 14, 2018
From: JLP UNITED STATES PATENT SOLUTIONS, LLC
To: POLYGOT ENTERPRISES LLC
Reel/Frame 044929/0196 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 12, 2018
From: NERO, AG
To: JLP UNITED STATES PATENT SOLUTIONS, LLC
Reel/Frame 045308/0244 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 1, 2011
From: HAMETNER, DIETER
To: NERO AG,
Reel/Frame 026841/0540 →
Priority Claims (1)
EP 10176177 · Sep 10, 2010 · regional
Continuity (2)
Provisional Application 61370589 · Aug 4, 2010
Related Publication 20120035913A1 · Feb 9, 2012