IP Library Granted Patent US 9,100,700
Granted Patent B2
US 9,100,700 · App. 13/707,008 · Granted Aug 4, 2015

File structure techniques for storing 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 9,100,700
App. No.
13/707,008
Granted
Aug 4, 2015
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 (58)

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

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 a media content file encoded at a plurality of different bitrates; and

a storage architecture coupled to the file system to store the encoded media segments as a single logical file on behalf of the subscriber system and only accessible by that subscriber system, wherein:

the single logical file comprises a plurality of different sets of the encoded media segments;

each set of the plurality of different sets comprises a group of a plurality of the encoded media segments having identical time indices and identical durations;

each encoded media segment of the group is associated with a different bitrate of the plurality of different bitrates; and

a beginning of data representing a respective encoded media segment of a respective group is located at a predefined increment of storage space of the storage architecture to enable the file system module to retrieve a requested encoded media segment for a desired bitrate by consulting a table that indicates a specified offset for the desired bitrate, the specified offset corresponding to the predefined increment of storage space for the requested encoded media segment.

2. The RS-DVR system of claim 1 , wherein the storage architecture comprises a plurality of memory storage devices, and the single logical file is partitioned for storage across the plurality of memory storage devices.

3. The RS-DVR system of claim 2 , wherein the single logical file is partitioned such that data representing encoded media segments for different bitrates are stored on different ones of the plurality of memory storage devices.

4. The RS-DVR system of claim 1 , wherein the single logical file comprises a sparse file.

5. The RS-DVR system of claim 1 , wherein the network interface, the file system module, and the storage architecture cooperate to provide the encoded media segments to the subscriber system for presentation using at least one of the plurality of different bitrates.

6. The RS-DVR system of claim 1 , wherein:

the group comprises at least three encoded media segments;

each encoded media segment of the at least three encoded media segments has an identical time index and an identical duration as remaining encoded media segments of the at least three encoded media segments; and

each encoded media segment of the at least three encoded media segments is associated with a bitrate different from the bitrates of the remaining encoded media segments of the at least three encoded media segments.

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

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 a media content file encoded at a plurality of different bitrates; and

a storage architecture coupled to the file system to store the encoded media segments as a single logical file on behalf of the subscriber system and only accessible by that subscriber system, wherein:

the single logical file comprises a plurality of different sets of the encoded media segments;

each set of the plurality of different sets comprises a group of a plurality of the encoded media segments having identical time indices and identical durations; and

each encoded media segment of the group is associated with a different bitrate of the plurality of different bitrates; and

the single logical file has a file structure arranged such that data representing encoded media segments for any particular bitrate is contiguous within the file structure.

8. The RS-DVR system of claim 7 , wherein the file structure is arranged such that data representing encoded media segments for different bitrates is located at specified offsets to enable the file system module to retrieve the encoded media segments for any particular bitrate.

9. The RS-DVR system of claim 8 , wherein the specified offsets correspond to predefined increments of storage space.

10. The RS-DVR system of claim 7 , wherein:

the storage architecture comprises a plurality of memory storage devices; and

the file structure is arranged such that non-contiguous portions of the single logical file are stored on different ones of the plurality of memory storage devices.

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

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

receiving, at the RS-DVR system, an instruction to record the media content file on behalf of a subscriber; and

in response to receiving the instruction, storing, on behalf of the subscriber, the encoded media segments as a single logical file across a plurality of memory storage devices of the RS-DVR system, wherein:

the single logical file is only accessible by the subscriber;

the single logical file comprises a plurality of different sets of the encoded media segments;

each set of the plurality of different sets comprises a group of a plurality of the encoded media segments having identical time indices and identical durations;

each encoded media segment of the group is associated with a different bitrate of the plurality of different bitrates; and

the single logical file has a file structure arranged such that data representing encoded media segments for any particular bitrate is contiguous within the file structure.

12. The method of claim 11 , further comprising:

receiving, at the RS-DVR system, a request for playback of the media content file at a requested bitrate; and

in response to the request, providing encoded media segments having the requested bitrate to the subscriber system via the network.

13. The method of claim 11 , wherein the storing step stores the single logical file in a partitioned manner such that data representing encoded media segments for different bitrates are stored on different ones of the plurality of memory storage devices.

14. The method of claim 11 , wherein the file structure is arranged such that data representing encoded media segments for different bitrates is located at specified offsets to enable a file system module to retrieve the encoded media segments for any particular bitrate.

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

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

receiving, at the RS-DVR system, an instruction to record the media content file on behalf of a subscriber; and

in response to receiving the instruction, storing, on behalf of the subscriber, the encoded media segments in a storage architecture as a single logical file, wherein:

the single logical file is only accessible by the subscriber;

the single logical file comprises a plurality of different sets of the encoded media segments;

each set of the plurality of different sets comprises a group of a plurality of the encoded media segments having identical time indices and identical durations;

each encoded media segment of the group is associated with a different bitrate of the plurality of different bitrates; and

the single logical file has a file structure arranged such that data representing encoded media segments for any particular bitrate is contiguous within the file structure and data representing encoded media segments for different bitrates is located at specified offsets to enable a file system module to retrieve the encoded media segments for any particular bitrate.

16. The method of claim 15 , wherein:

the storage architecture comprises a plurality of physically distinct memory storage devices; and

the storing step stores the single logical file in a partitioned manner such that data representing encoded media segments for different bitrates are stored on different ones of the plurality of memory storage devices.

17. The method of claim 15 , wherein the single logical file comprises a sparse file.

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 4, 2013
From: MAJOR, ROBERT DREW; MAJOR, DARREN
To: DISH DIGITAL L.L.C.
Reel/Frame 030151/0721 →