IP Library Granted Patent US 9,432,701
Granted Patent B2
US 9,432,701 · App. 14/792,485 · Granted Aug 30, 2016

Distribution schemes 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,432,701
App. No.
14/792,485
Granted
Aug 30, 2016
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 (48)

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 module to store the encoded media segments, wherein:

the storage architecture comprises a plurality of memory storage devices;

the encoded media segments are stored across the plurality of memory storage devices in accordance with a distribution scheme as a function of performance characteristics of individual memory storage devices of the plurality of memory storage devices; and

the file system module is configured to detect the performance characteristics of the individual memory storage devices and automatically quit writing to a slowing memory storage device of the plurality of memory storage devices.

2. The RS-DVR system of claim 1 , the slowing memory storage device comprising a failed drive, wherein when a new drive is hot swapped with the failed drive, the file system module detects that the new drive is available and immediately starts to use the new drive in accordance with the distribution scheme.

3. The RS-DVR system of claim 1 , wherein the individual memory storage devices comprise SATA drives.

4. The RS-DVR system of claim 1 , wherein the file system module detects the slowing memory storage device based on determining the slowing memory storage device is operating below a threshold speed required to maintain real-time delivery of the encoded media segments.

5. The RS-DVR system of claim 1 , wherein the file system module detects the slowing memory storage device based on determining the slowing memory storage device is too busy to maintain real-time delivery of the encoded media segments.

6. The RS-DVR system of claim 1 , wherein the individual memory storage devices are physically distinct.

7. The RS-DVR system of claim 1 , wherein the distribution scheme is influenced by the plurality of different bitrates and time ranges of the encoded media segments.

8. The RS-DVR system of claim 1 , wherein the plurality of memory storage devices comprise a cluster group physically located together close to a Content Delivery Network (CDN) edge HTTP caching server.

9. The RS-DVR system of claim 1 , wherein the plurality of memory storage devices comprise one or more centralized cluster groups and one or more cluster groups located close to a Content Delivery Network (CDN) edge HTTP caching server.

10. 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 module to store the encoded media segments, wherein:

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

the encoded media segments are stored across the plurality of memory storage devices in accordance with a distribution scheme as a function of performance characteristics of individual memory storage devices of the plurality of memory storage devices to minimize head throw.

11. 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 module to store the encoded media segments, wherein:

the storage architecture comprises a plurality of memory storage devices;

the encoded media segments are stored across the plurality of memory storage devices in accordance with a distribution scheme as a function of performance characteristics of individual memory storage devices of the plurality of memory storage devices; and

the file system module is configured to assign one or more of the encoded media segments assigned to a first memory storage device of the plurality of memory storage devices to a different memory storage device of the plurality of memory storage devices within a cluster group including the first memory storage device upon detecting failure of the first memory storage device.

12. 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;

detecting, at the RS-DVR system, performance characteristics of the individual memory storage devices; and

in response to receiving the instruction, storing the encoded media segments as a single logical file across a plurality of memory storage devices of the RS-DVR system in accordance with a distribution scheme as a function of performance characteristics of individual memory storage devices of the plurality of memory storage devices, wherein the RS-DVR system automatically quits writing to a slowing memory storage device of the plurality of memory storage devices.

13. The method of claim 12 , further comprising detecting, at the RS-DVR system, when a new drive is available and when the new drive is hot swapped with the slowing memory storage device, wherein the RS-DVR system immediately starts to use the new drive in accordance with the distribution scheme.

14. The method of claim 12 , further comprising determining, at the RS-DVR system, the slowing memory storage device is operating below a threshold speed required to maintain real-time delivery of the encoded media segments.

15. The method of claim 12 , further comprising determining, at the RS-DVR system, the slowing memory storage device is too busy to maintain real-time delivery of the encoded media segments.

16. 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;

in response to receiving the instruction, storing the encoded media segments as a single logical file across a plurality of memory storage devices of the RS-DVR system in accordance with a distribution scheme as a function of performance characteristics of individual memory storage devices of the plurality of memory storage devices; and

assigning one or more of the encoded media segments assigned to a first memory storage device of the plurality of memory storage devices to a different memory storage device of the plurality of memory storage devices upon detecting failure of the first memory storage device.

17. The method of claim 16 , wherein:

a cluster group of memory storage devices physically located together close to a Content Delivery Network (CDN) edge HTTP caching server includes the first memory storage device; and

assigning the one or more of the encoded media segments to the different memory storage device comprises assigning the one or more of the encoded media segments to the different memory storage device within the cluster group.

18. The method of claim 12 , further comprising generating, at the RS-DVR system, an indication a requested bitrate for the media content file is unavailable at the RS-DVR system.

Assignments (3)
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 Dec 16, 2015
From: MAJOR, ROBERT DREW; MAJOR, DARREN
To: ECHOSTAR TECHNOLOGIES L.L.C.
Reel/Frame 037309/0725 →