IP Library Granted Patent US 8,776,151
Granted Patent B2
US 8,776,151 · App. 13/707,031 · Granted Jul 8, 2014

File system index table for a remote storage digital video recorder that handles multiple bitrate content

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 8,776,151
App. No.
13/707,031
Granted
Jul 8, 2014
Kind
B2
Abstract

A remote storage digital video recorder (RS-DVR) system is disclosed. The RS-DVR system includes a network interface to communicate data between the RS-DVR system and a subscriber system via a network, a file system module coupled to the network interface, an ingest agent coupled to the file system module to receive encoded media segments that represent media content files encoded at a plurality of different bitrates; and a storage architecture coupled to the file system to store the encoded media segments, resulting in stored media segments. The RS-DVR carries out a number of functions and operations to service multiple subscribers and associated subscriber systems, such as various storage device management operations, file structure techniques, assignment of recorded media to subscribers, file system indexing, and supporting shared and per-subscriber content rights.

Claims (47)

1. A remote storage digital video recorder (RS-DVR) system comprising:

a network interface to communicate data between the RS-DVR system and a plurality of subscriber systems via a network;

a file system module coupled to the network interface;

an ingest agent coupled to the file system module to receive encoded media segments that represent media content files encoded at a plurality of different bitrates; and

a plurality of memory storage devices coupled to the file system to store the encoded media segments, each of the plurality of memory storage devices being divided into a plurality of allocation units to store the encoded media segments, and each of the plurality of memory storage devices storing a respective index table comprising entries for at least some of the plurality of allocation units;

wherein:

each of the entries comprises descriptive data that characterizes one or more encoded media segments stored in the respective allocation units;

each allocation unit comprises a respective consistency check field that contains at least some of the descriptive data;

the respective consistency check field for a respective allocation unit contains the at least some of the descriptive data that characterizes one or more encoded media segments stored in the respective allocation unit; and

each allocation unit including a first instantiation of the respective consistency check field located at a beginning section of the respective allocation unit and a second instantiation of the respective consistency check field located at an ending section of the respective allocation unit.

2. The RS-DVR system of claim 1 , wherein the descriptive data comprises a subscriber identifier corresponding to one of the plurality of subscriber systems.

3. The RS-DVR system of claim 1 , wherein the descriptive data comprises a content identifier corresponding to the one or more encoded media segments stored in the respective allocation unit.

4. The RS-DVR system of claim 1 , wherein the descriptive data comprises a bitrate identifier corresponding to the one or more encoded media segments stored in the respective allocation unit.

5. The RS-DVR system of claim 1 , wherein the descriptive data comprises a time index for each of the one or more encoded media segments stored in the respective allocation unit.

6. The RS-DVR system of claim 1 , wherein the file system module reads the respective index table for each of the plurality of memory storage devices.

7. The RS-DVR system of claim 1 , wherein the file system module is configured to:

compare the respective consistency check field for a respective allocation unit to the respective entry for the respective allocation unit in the respective index table; and

generate a notification when the at least some of the data contained in the respective consistency check field is different than the descriptive data in the respective entry.

8. A method of operating a remote storage digital video recorder (RS-DVR) system that supports a plurality of subscriber systems via data communication over a network, the method comprising:

receiving, at the RS-DVR system, encoded media segments that represent media content files encoded at a plurality of different bitrates;

storing the encoded media segments in a plurality of memory storage devices of the RS-DVR system, each of the plurality of memory storage devices being divided into a plurality of allocation units to store the encoded media segments; and

maintaining, at each of the plurality of memory storage devices, a respective index table comprising entries for at least some of the plurality of allocation units, wherein:

each of the entries comprises descriptive data that characterizes one or more encoded media segments stored in the respective allocation unit;

each respective allocation unit comprises a respective consistency check field that contains at least some of the descriptive data;

the respective consistency check field for a respective allocation unit contains the at least some of the descriptive data that characterizes one or more encoded media segments stored in the respective allocation unit; and

each respective allocation unit includes a first instantiation of the respective consistency check field located at a beginning section of the respective allocation unit and a second instantiation of the respective consistency check field located at an ending section of the respective allocation unit.

9. The method of claim 8 , wherein the descriptive data for each of the one or more encoded media segments stored in the respective allocation unit comprises:

a subscriber identifier corresponding to one of the plurality of subscriber systems;

a content identifier;

a bitrate identifier; and

a time index.

10. The method of claim 8 , further comprising:

reading, with a file system module, the respective index table for each of the plurality of memory storage devices.

11. The method of claim 8 , further comprising:

comparing the respective consistency check field for a respective allocation unit to the respective entry for the respective allocation unit in the respective index table; and

generating a notification when the at least some of the data contained in the respective consistency check field is different than the descriptive data in the respective entry.

12. A method of operating a remote storage digital video recorder (RS-DVR) system that supports a plurality of subscriber systems via data communication over a network, the RS-DVR system comprising a memory storage device, the method comprising:

receiving, at the RS-DVR system, encoded media segments that represent media content files encoded at a plurality of different bitrates;

storing the encoded media segments in a plurality of allocation units of the memory storage device;

generating an index table for the memory storage device, the index table comprising a respective entry for each of the plurality of allocation units having an encoded media segment stored therein, wherein each entry of the index table comprises a content identifier that identifies a particular one of the media content files, a bitrate identifier that identifies one of the plurality of different bitrates, and a time index relative to the particular one of the media content files;

generating a respective consistency check field for each of the plurality of allocation units having an encoded media segment stored therein, the respective consistency check field comprising descriptive data that characterizes the encoded media segment, wherein each of the plurality of allocation units having an encoded media segment stored therein includes a first instantiation of the consistency check field located at a beginning section, and a second instantiation of the consistency check field located at an ending section; and

storing the index table in the memory storage device.

13. The method of claim 12 , wherein each entry of the index table further comprises a subscriber identifier that identifies one of the plurality of subscriber systems.

14. The method of claim 12 , wherein each consistency check field comprises a respective entry of the index table.

15. The method of claim 12 , further comprising:

comparing the respective consistency check field for a respective allocation unit to the respective entry in the index table for the respective allocation unit; and

generating a notification when the respective consistency check field is different than the respective entry in the index table.

Assignments (4)
SECURITY INTEREST Recorded Nov 30, 2021
From: DISH BROADCASTING CORPORATION; DISH NETWORK L.L.C.; DISH TECHNOLOGIES L.L.C.
To: U.S. BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 058295/0293 →
CONVERSION Recorded Aug 7, 2018
From: ECHOSTAR TECHNOLOGIES L.L.C.
To: DISH TECHNOLOGIES L.L.C.
Reel/Frame 046737/0610 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 4, 2014
From: DISH DIGITAL L.L.C.
To: ECHOSTAR TECHNOLOGIES L.L.C.
Reel/Frame 033470/0726 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 11, 2013
From: MAJOR, ROBERT DREW; MAJOR, DARREN
To: DISH DIGITAL L.L.C.
Reel/Frame 030199/0705 →