IP Library Granted Patent US 7,551,832
Granted Patent B2
US 7,551,832 · App. 10/010,781 · Granted Jun 23, 2009

Application management and interface for cluster control of time shift buffer

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 7,551,832
App. No.
10/010,781
Granted
Jun 23, 2009
Kind
B2
Abstract

An interfacing system enables an application client to interface with a device driver in a client device with persistent storage. In some preferred embodiments, the interfacing system includes a memory with logic and a processor configured with the logic to use the normal play time locations to reference media content instances of a buffer file stored in clusters of a hard disk. In some preferred embodiments, the processor is configured with the logic to designate one of the referenced media content instances of the buffer file as a permanent file.

Claims (85)

1. A method for managing cluster allocation in a client device with persistent storage, comprising the steps of:

allocating by the client device a plurality of clusters of a hard disk as a buffer file;

causing a plurality of media content instances to be written to the buffer file, wherein each instance of said plurality is stored on one or more clusters in the buffer file;

creating a normal play time pointer for each stored media content instance, wherein each normal play time pointer points to the location of the cluster or clusters on which its corresponding media content instance is stored;

storing the normal play time pointers in a data record for the hard disk;

using the normal play time pointers to reference the media content instances stored in the clusters of the hard disk;

storing a list of the clusters allocated as the buffer file in the data record;

maintaining the size of the buffer file substantially constant over time, such that when the buffer file approaches a full status, the cluster storing the oldest media content instance is deallocated from the buffer file, and a new cluster is allocated to the buffer file; and

updating the data record as clusters are deallocated from, and newly allocated to, the buffer file.

2. The method of claim 1 , further comprising the steps of receiving a user request to designate one of the media content instances stored in the buffer file as permanent and designating the requested media content instance as a permanent file.

3. The method of claim 2 , further comprising the step of using the normal play time pointer of the media content instance requested by the user to locate the requested media content instance.

4. The method of claim 2 , further comprising the steps of updating the normal play time pointer corresponding to the permanent file, and storing the updated normal play time pointer in the data record.

5. The method of claim 1 , further comprising the steps of storing in the data record real-time start and stop time values of the stored media content instances, wherein the real-time start and stop time values are retrieved from a media content instance guide database, and using the stop time values to determine the stop times of the stored media content instances.

6. The method of claim 1 , further comprising the steps of receiving and storing in the data record real-time start and stop buffering times and real-time permanent recording times provided by an operating system.

7. A method for managing cluster allocation in a client device with persistent storage, comprising the steps of:

allocating by the client device a plurality of clusters of a hard disk as a buffer file, wherein a plurality of media content instances are written to the buffer file, and wherein each instance of said plurality is stored on one or more clusters in the buffer file;

creating a normal play time pointer for each stored media content instance, wherein each normal play time pointer points to the location of the cluster or clusters on which its corresponding media content instance is stored;

storing the normal play time pointers in a data record for the hard disk;

storing a list of the clusters allocated as the buffer file in the data record;

using normal play time pointers to reference the stored media content instances

designating one of the referenced media content instances of the buffer file as a permanent file;

maintaining the size of the buffer file substantially constant over time, such that when a media content instance is designated permanent, the cluster or clusters on which it is stored are deallocated from the buffer file, and a corresponding cluster or clusters are newly allocated to the buffer file; and

updating the data record as clusters are deallocated from, and newly allocated to, the buffer file.

8. The method of claim 7 , wherein said designation step is responsive to receiving a user request to designate the media content instance as permanent.

9. The method of claim 8 , further comprising the step of using the normal play time pointer of the media content instance requested by the user to locate the requested media content instance.

10. The method of claim 7 , wherein said updating step comprises updating the normal play time pointer corresponding to the permanent file and storing the updated normal play time pointer the data record.

11. The method of claim 7 , further comprising the steps of storing in the data record real-time start and stop time values for the stored media content instances, wherein the real-time start and stop time values are retrieved from a media content instance guide database, and using the stop time values to determine the stop times of the stored media content instances.

12. The method of claim 7 , further comprising the steps of receiving and storing in the data record real-time start and stop buffering times and real-time permanent recording times provided by an operating system.

13. A method for managing cluster allocation in a client device with persistent storage, comprising the steps of:

allocating by the client device a substantially constant number of clusters of a hard disk for a buffer file for buffering media content instances, wherein a plurality of media content instances are written to the buffer file, and wherein each instance of said plurality is stored on one or more clusters in the buffer file;

maintaining a data record for the media content instances stored in clusters of the buffer file;

storing in the data record real-time start and stop time values of the stored media content instances, wherein the real-time start and stop time values are retrieved from a media content instance guide database, and using the stop time values to determine the stop times of the stored media content instances;

creating a normal play time pointer for each stored media content instance, wherein each normal play time pointer points to the location of the cluster or clusters on which its corresponding media content instance is stored;

storing the normal play time pointers in the data record;

storing a list of the clusters allocated as the buffer file in the data record;

receiving a user request to designate one of the stored media content instances as permanent;

using the normal play time pointer of the media content instance requested by the user to locate the requested media content instance;

designating the identified media content instance as a permanent recording file;

maintaining the substantially constant number of clusters in the buffer file by a reallocation process in which, when the buffer file approaches a full status, the cluster storing the oldest media content instance is deallocated from the buffer file, and a new cluster is allocated to the buffer file, and when a media content instance is designated permanent, the cluster or clusters on which it is stored are deallocated from the buffer file, and a corresponding cluster or clusters are newly allocated to the buffer file; and

updating the data record as clusters are deallocated from, and newly allocated to, the buffer file.

14. A system for managing cluster allocation in a client device with persistent storage, comprising:

a memory with logic; and

a processor configured with the logic to:

allocate a plurality of clusters of a hard disk as a buffer file;

cause a plurality of media content instances to be written to the buffer file, wherein each instance of said plurality is stored on one or more clusters in the buffer file;

create a normal play time pointer for each stored media content instance, wherein each normal play time pointer points to the location of the cluster or clusters on which its corresponding media content instance is stored;

store the normal play time pointers in a data record for the hard disk;

use the normal play time pointers to reference the media content instances stored in the clusters of the hard disk;

store a list of the clusters allocated as the buffer file in the data record;

maintain the size of the buffer file substantially constant over time, such that when the buffer file approaches a full status, the cluster storing the oldest media content instance is deallocated from the buffer file, and a new cluster is allocated to the buffer file; and

update the data record as clusters are deallocated from, and newly allocated to, the buffer file.

15. The system of claim 14 , wherein the processor is further configured with the logic to receive a user request to designate one of the media content instances stored in the buffer file as permanent, wherein the processor is further configured with the logic to designate the requested media content instance as a permanent file.

16. The system of claim 15 , wherein the processor is further configured with the logic to use the normal play time pointer of the media content instance requested by the user to locate the requested media content instance.

17. The system of claim 15 , wherein the processor is further configured with the logic to update the normal play time pointer corresponding to the permanent file and store the updated normal play time pointer locations in the data record.

18. The system of claim 14 , wherein the processor is further configured with the logic to store in the data record real-time start and stop time values for the stored media content instances, wherein the real-time start and stop time values are retrieved from a media content instance guide database, and use the stop time values to determine the stop times of the stored media content instances.

19. The system of claim 14 , wherein the processor is further configured with the logic to receive and store in the data record real-time start and stop buffering times and real-time permanent recording times provided by an operating system.

20. A system for managing cluster allocation in a client device with persistent storage, comprising:

a memory with logic; and

a processor configured with the logic to

allocate a plurality of clusters of a hard disk as a buffer file;

cause a plurality of media content instances to be written to the buffer file, wherein each instance of said plurality is stored on one or more clusters in the buffer file;

create a normal play time pointer for each stored media content instance, wherein each normal play time pointer points to the location of the cluster or clusters on which its corresponding media content instance is stored;

store the normal play time pointers in a data record for the hard disk;

use the normal play time pointers locations to reference the stored media content instances;

designate one of the referenced media content instances of the buffer file as a permanent file;

maintain the size of the buffer file substantially constant over time, such that when a media content instance is designated permanent, the cluster or clusters on which it is stored are deallocated from the buffer file, and a corresponding cluster or clusters are newly allocated to the buffer file; and

update the data record as clusters are deallocated from, and newly allocated to, the buffer file.

21. The system of claim 20 , wherein said designation comprises the processor being further configured with the logic to receive a user request to designate one of the media content instances stored in the buffer file as permanent, wherein the processor is further configured with the logic to designate the requested media content instance as a permanent file.

22. The system of claim 21 , wherein the processor is further configured with the logic to use the normal play time pointer of the media content instance requested by the user to locate said media content instance.

23. The system of claim 20 , wherein said updating comprises the processor being further configured with the logic to update the normal play time pointer corresponding to the permanent file and store the updated normal play time pointer in the data record.

24. The system of claim 20 , wherein the processor is further configured with the logic to store in the data record real-time start and stop time values for the stored media content instances, wherein the real-time start and stop time values are retrieved from a media content instance guide database, and use the stop times values to determine the stop times of the stored media content instances.

25. The system of claim 20 , wherein the processor is further configured with the logic to receive and store in the data record real-time start and stop buffering times and real-time permanent recording times provided by an operating system.

26. A system for managing cluster allocation in a client device with persistent storage, comprising:

a memory with logic; and

a processor configured with the logic to:

allocate a substantially constant number of clusters of a hard disk for a buffer file for buffering media content instances, wherein a plurality of media content instances are written to the buffer file, and wherein each instance of said plurality is stored on one or more clusters in the buffer file;

maintain a data record for the media content instances stored in clusters of the buffer file;

store in the data record real-time start and stop time values of the stored media content instances, wherein the real-time start and stop time values are retrieved from a media content instance guide database, and using the stop time values to determine the stop times of the stored media content instances;

create a normal play time pointer for each stored media content instance, wherein each normal play time pointer points to the location of the cluster or clusters on which its corresponding media content instance is stored;

store the normal play time pointers in the data record;

receive a user request to designate one of the stored media content instances as permanent;

use the normal play time pointer of the media content instance requested by the user to locate the requested media content instance;

designate the identified media content instance as a permanent recording file;

maintain the substantially constant number of clusters in the buffer file by a reallocation process in which, when the buffer file approaches a full status, the cluster storing the oldest media content instance is deallocated from the buffer file, and a new cluster is allocated to the buffer file, and when a media content instance is designated permanent, the cluster or clusters on which it is stored are deallocated from the buffer file, and a corresponding cluster or clusters are newly allocated to the buffer file; and

update the data record as clusters are deallocated from, and newly allocated to, the buffer file.

Assignments (4)
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENT 7523479 NEEDS TO BE INCLUDED, WAS ACCIDENTALLY MISSED WHEN RECORDING ASSIGNMENT PREVIOUSLY RECORDED ON REEL 049603 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE NEED TO INCLUDE PATENT 7523479 IN THE ASSIGNMENT. WAS ACCIDENTALLY MISSED ON LAST RECORDING. Recorded Jun 9, 2021
From: CISCO TECHNOLOGY, INC.
To: TECH 5 SAS
Reel/Frame 058043/0001 →
CHANGE OF NAME Recorded Nov 19, 2014
From: SCIENTIFIC-ATLANTA, INC.
To: SCIENTIFIC-ATLANTA, LLC
Reel/Frame 034299/0440 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 19, 2014
From: SCIENTIFIC-ATLANTA, LLC
To: CISCO TECHNOLOGY, INC.
Reel/Frame 034300/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 5, 2001
From: PLOURDE, HAROLD J. JR.
To: SCIENTIFIC-ATLANTA, INC. A CORPORATION IN GEORGIA
Reel/Frame 012373/0117 →