IP Library Granted Patent US 8,694,668
Granted Patent B2
US 8,694,668 · App. 13/107,040 · Granted Apr 8, 2014

Streaming media software interface to a dispersed data storage network

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,694,668
App. No.
13/107,040
Granted
Apr 8, 2014
Kind
B2
Abstract

A client computer streams a digital media presentation from a dispersed data storage network including a plurality of slice servers. A dispersed data storage network access component streams data directly from the dispersed data storage network and passes data to a media player, also residing on the client computer.

Claims (40)

1. A method for execution by a computer, the method comprising:

receiving a request to read streaming digital media from a digital dispersed storage network (DDSN), wherein the streaming digital media is encoded in accordance with a scalable streaming media technology to produce a scalable quality streaming digital media, wherein the scalable quality streaming digital media is divided into a plurality of data segments, wherein a data segment of the plurality of data segments is encoded into a set of data slices, and wherein the DDSN stores the scalable quality streaming digital media as a plurality of sets of data slices in slice servers; and

for one of the plurality of data segments:

determining a number of the slice servers that are available;

determining a level of quality of the streaming digital media based on the number of available slice servers;

determining a minimum number of data slices of a corresponding set of data slices based on the level of quality;

requesting the minimum number of data slices;

when the minimum number of data slices is received, decoding the minimum number of data slices to recover the one of the plurality of data segments to produce a recovered data segment; and

sending the recovered data segment to a media player for presentation as a part of playback of the streaming digital media.

2. The method of claim 1 , wherein the sending the recovered data segment comprises:

sending the recovered data segment to an interface, wherein the interface converts platform of the recovered data segment from a DDSN platform to a media player platform.

3. The method of claim 1 , wherein the sending the recovered data segment comprises:

converting platform of the recovered data segment from a DDSN platform to a media player platform to produce a media platform data segment; and

sending the media platform data segment to the media player.

4. The method of claim 1 further comprises:

for another one of the plurality of data segments:

requesting the minimum number of data slices of another corresponding set of data slices;

when the minimum number of data slices of the other corresponding set of data slices is received, decoding the minimum number of data slices of the other corresponding set of data slices to recover the another one of the plurality of data segments to produce another recovered data segment; and

sending the other recovered data segment to the media player for presentation as a part of playback of the streaming digital media.

5. A computer comprising:

a network interface; and

a central processing unit operably coupled to the network interface, wherein the central processing unit is operable to:

receive a request to read streaming digital media from a digital dispersed storage network (DDSN), wherein the streaming digital media is encoded in accordance with a scalable streaming media technology to produce a scalable quality streaming digital media, wherein the scalable quality streaming digital media is divided into a plurality of data segments, wherein a data segment of the plurality of data segments is encoded into a set of data slices, and wherein the DDSN stores the scalable quality streaming digital media as a plurality of sets of data slices in slice servers; and

for one of the plurality of data segments:

determine a number of the slice servers that are available;

determine a level of quality of the streaming digital media based on the number of available slice servers;

determine a minimum number of data slices of a corresponding set of data slices based on the level of quality;

request the minimum number of data slices;

when the minimum number of data slices is received, decode the minimum number of data slices to recover the one of the plurality of data segments to produce a recovered data segment; and

send the recovered data segment to a media player for presentation as a part of playback of the streaming digital media.

6. The computer of claim 5 , wherein the central processing unit further functions to send the recovered data segment by:

sending the recovered data segment to an interface, wherein the interface converts platform of the recovered data segment from a DDSN platform to a media player platform.

7. The computer of claim 5 , wherein the central processing unit further functions to send the recovered data segment by:

converting platform of the recovered data segment from a DDSN platform to a media player platform to produce a media platform data segment; and

sending the media platform data segment to the media player.

8. The computer of claim 5 , wherein the central processing unit is further operable to:

for another one of the plurality of data segments:

request the minimum number of data slices of another corresponding set of data slices;

when the minimum number of data slices of the other corresponding set of data slices is received, decode the minimum number of data slices of the other corresponding set of data slices to recover the another one of the plurality of data segments to produce another recovered data segment; and

send the other recovered data segment to the media player for presentation as a part of playback of the streaming digital media.

Assignments (6)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Jun 11, 2025
From: BARCLAYS BANK PLC, AS ADMINISTRATIVE AGENT
To: PURE STORAGE, INC.
Reel/Frame 071558/0523 →
SECURITY INTEREST Recorded Aug 26, 2020
From: PURE STORAGE, INC.
To: BARCLAYS BANK PLC AS ADMINISTRATIVE AGENT
Reel/Frame 053867/0581 →
CORRECTIVE ASSIGNMENT TO CORRECT THE 9992063 AND 10334045 LISTED IN ERROR PREVIOUSLY RECORDED ON REEL 049556 FRAME 0012. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNOR HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 14, 2020
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 052205/0705 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2019
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 049556/0012 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 13, 2016
From: CLEVERSAFE, INC.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 038687/0596 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 12, 2011
From: DHUSE, GREG; GLADWIN, S. CHRISTOPHER
To: CLEVERSAFE, INC.
Reel/Frame 026885/0108 →