IP Library Granted Patent US 9,852,771
Granted Patent B2
US 9,852,771 · App. 14/193,798 · Granted Dec 26, 2017

Method of timebase management for MPEG decoding with personal video recording functionality

Inventors: Jason Demas (Irvine, CA); Marcus Kellerman (Poway, CA); Sandeep Bhatia (Bangalore, CA); Srinivasa Mogathala Prabhakara Reddy (Bangalore, CA); Xuemin Chen (Rancho Sante Fe, CA); Vijayanand Aralaguppe (Bangalore, CA); Girish Raghunath Hulmani (Karnataka, IN); Pramod Chandraiah (Karnataka, IN); Ghanashyam Ananthamurthy Bailwal (Karnataka, IN)
Assignee: Avago Technologies General IP (Singapore) Pte. Ltd.
G11B27/10G11B27/005H04N5/76H04N5/935H04N5/94H04N9/79H04N9/7921H04N9/8042H04N9/87H04N19/44H04N21/4147H04N21/4305H04N21/4341H04N21/8455H04N5/783
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,852,771
App. No.
14/193,798
Granted
Dec 26, 2017
Kind
B2
Abstract

Disclosed are various embodiments that facilitate recording to a storage medium in a personal video recorder (PVR) system. In one embodiment, a transport stream is received. The transport stream is stored into a memory. An index table is generated that provides information for locating particular frames recorded in the memory.

Claims (48)

1. A method for recording to a storage medium in a personal video recorder (PVR) system, comprising:

receiving a transport stream;

storing the transport stream into a memory;

generating an index table that provides information for locating particular frames recorded in the memory;

configuring a video decoder for a timebase management mode in which the video decoder is configured to begin decoding after a video system time clock (STC) has been initialized;

generating, by the video decoder configured in the timebase management mode, an interrupt for STC initialization, in response to detecting the first presentation time stamp (PTS) of a sequence of PTSs of the transport stream;

initializing, after the interrupt, a video STC with a most recently received PTS of the transport stream, before using the video decoder to begin decoding of the transport stream; and

begin decoding of the transport stream, using the video decoder, after the video STC has been initialized with the most recently received PTS.

2. The method according to claim 1 , wherein the index table is adapted to point to start codes of the stored transport stream.

3. The method according to claim 1 , wherein the index table is stored in a recording buffer.

4. The method according to claim 1 , further comprising:

transferring at least one of the stored transport stream or the index table from the memory to a storage unit.

5. The method according to claim 4 , wherein transferring comprises employing a direct memory access (DMA) engine to transfer at least one of the stored transport stream or the index table from the memory to the storage unit.

6. The method according to claim 1 , wherein the memory is configured as a linked list of descriptors, and the index table is written into the linked list of descriptors.

7. A method for playback from a storage media in a personal video recorder (PVR) system, comprising:

programming a voltage controlled crystal oscillator (VCXO) to a nominal frequency;

configuring a data transport engine to play back a transport stream from a memory;

configuring a video decoder to decode with a throttle control;

configuring the video decoder for a timebase management mode in which the video decoder is configured to begin decoding after a video system time clock (STC) has been initialized;

generating, by the video decoder configured in the timebase management mode, an interrupt for STC initialization, in response to detecting the first presentation time stamp (PTS) of a sequence of PTSs of the transport stream;

initializing, after the interrupt, a video STC with a most recently received PTS of the transport stream, before using the video decoder to begin decoding of the transport stream; and

begin decoding of the transport stream, using the video decoder, after the video STC has been initialized with the most recently received PTS.

8. The method according to claim 7 , further comprising:

configuring an audio decoder to decode with the throttle control; and

initializing an audio STC with the PTS.

9. The method according to claim 7 , wherein programming comprises programming the VCXO to a nominal center frequency.

10. The method according to claim 7 , wherein configuring the data transport engine further comprises configuring the data transport engine to playback data from a playback buffer in a unified synchronous dynamic random access memory (SDRAM).

11. The method according to claim 10 , wherein at least one location of the playback buffer is configured as a linked list of descriptors.

12. The method according to claim 7 , wherein the throttle control is adapted to ensure that a buffer does not underflow or does not overflow.

13. The method according to claim 7 , wherein the video decoder includes a pause signal line, and the pause signal line is adapted to pause a flow of information from the data transport engine.

14. The method according to claim 7 , wherein configuring the video decoder for the timebase management mode comprises configuring the video decoder to begin the decoding of the transport stream in the timebase management mode.

15. The method according to claim 7 , wherein initializing the video STC further comprises interrupting a host so that the video STC can be initialized.

16. The method according to claim 7 , wherein initializing the video STC further comprises configuring a timing recovery circuit to initialize the video STC.

17. A method for recording and playing simultaneously in a personal video recorder (PVR) system, comprising:

configuring a data transport engine to record a transport stream;

generating an index table that provides information for locating particular frames of the transport stream stored in a memory;

controlling a voltage controlled crystal oscillator (VCXO) as a function of error between a program clock reference (PCR) in the transport stream and a serial PCR local system time clock (STC);

configuring the data transport engine to play back the transport stream from the memory;

configuring a video decoder to decode at different decoding rates;

configuring a video decoder for a timebase management mode in which the video decoder is configured to begin decoding after a video STC has been initialized;

generating, by the video decoder configured in the timebase management mode, an interrupt for STC initialization, in response to detecting the first presentation time stamp (PTS) of a sequence of PTSs of the transport stream;

initializing, after the interrupt, the video STC with a most recently received PTS of the transport stream, before using the video decoder to begin decoding of the transport stream; and

begin decoding of the transport stream, using the video decoder, after the video STC has been initialized with the most recently received PTS.

18. The method according to claim 17 , further comprising:

configuring an audio decoder to decode with different decoding rates; and

updating an audio STC with the PTS.

19. The method according to claim 17 , wherein the video decoder comprises a throttle control that is adapted to ensure that a buffer in a video decompression engine does not underflow or does not overflow.

20. The method according to claim 17 , wherein controlling the VCXO further comprises controlling the VCXO as a function of error between the PCR in an original live broadcast stream and the serial PCR local STC.

Assignments (6)
CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE PREVIOUSLY RECORDED AT REEL: 047422 FRAME: 0464. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 6, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 048883/0702 →
MERGER Recorded Oct 5, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047422/0464 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2014
From: DEMAS, JASON; KELLERMAN, MARCUS; BHATIA, SANDEEP; REDDY, SRINIVASA MOGATHALA PRABHAKARA; CHEN, SHERMAN (XUEMIN); ARALAGUPPE, VIJAYANAND; HULAMANI, GIRISH RAGHUNATH; CHANDRAIAH, PRAMOD; BAILWAL, GHANASHAYAM
To: BROADCOM CORPORATION
Reel/Frame 033819/0307 →
Continuity (5)
Division 10174355 · Jun 18, 2002
Continuation In Part 09933231 · Aug 20, 2001
Continuation In Part 10060118 · Jan 29, 2002
Provisional Application 60361154 · Mar 1, 2002
Related Publication 20140178036A1 · Jun 26, 2014