Media distribution to a plurality of devices utilizing buffered dispersed storage
First Claim
1. A method for execution by a processing module of a computing device, the method comprises:
- receiving, from a plurality of requesting devices, a plurality of playback requests for a stored program, wherein the stored program is encoded via an error coding dispersal storage function to produce a plurality of groups of sets of encoded data slices which are stored in dispersed storage network (DSN) memory, wherein each of the encoded data slices is encoded via the error coding dispersal storage function to not include consecutive bits of a data segment, and wherein a group of sets of the plurality of groups of sets of encoded data slices corresponds to data within a time window of the stored program and a set of encoded data slices of the group of sets of the plurality of groups of sets of encoded data slices corresponds to the data segment of the data within the time window and wherein the set of encoded data slices of the group of sets of the plurality of groups of sets of encoded data slices are encoded via the error coding dispersal storage function to require a threshold number of data slices for decoding; and
for each of the plurality of playback requests, entering a loop that includes;
retrieving a group of the plurality of groups of sets of encoded data slices from the DSN memory;
generating copies of the group of the plurality of groups of sets of encoded data slices, wherein a first copy is generated from first encoded data slices included in the group of the plurality of groups of sets of encoded data slices, and a second copy is generated using second encoded data slices included in the group of the plurality of groups of sets of encoded data slices, and wherein the first encoded data slices are different from the second encoded data slices;
storing the copies of the group of the plurality of groups of sets of encoded data slices in a playback DSN memory; and
for each of at least some of the plurality of playback requests, sending a representation of a copy of the copies to a requesting device associated with a corresponding playback request.
5 Assignments
0 Petitions
Accused Products
Abstract
A method begins by a processing module receiving a plurality of playback requests for a stored program, wherein the stored program is stored in a dispersed storage network (DSN) memory as sets of encoded data slices. In response to the playback requests, the method continues with the processing module entering a loop that begins with retrieving a group of sets of encoded data slices, generating copies therefrom, and storing the copies. The loop continues with the processing module sending a representation of the copies to a requesting device. The method continues with the processing module exiting the loop when the last group of the request has been retrieved and repeating the loop when it has not.
-
Citations
35 Claims
-
1. A method for execution by a processing module of a computing device, the method comprises:
-
receiving, from a plurality of requesting devices, a plurality of playback requests for a stored program, wherein the stored program is encoded via an error coding dispersal storage function to produce a plurality of groups of sets of encoded data slices which are stored in dispersed storage network (DSN) memory, wherein each of the encoded data slices is encoded via the error coding dispersal storage function to not include consecutive bits of a data segment, and wherein a group of sets of the plurality of groups of sets of encoded data slices corresponds to data within a time window of the stored program and a set of encoded data slices of the group of sets of the plurality of groups of sets of encoded data slices corresponds to the data segment of the data within the time window and wherein the set of encoded data slices of the group of sets of the plurality of groups of sets of encoded data slices are encoded via the error coding dispersal storage function to require a threshold number of data slices for decoding; and for each of the plurality of playback requests, entering a loop that includes; retrieving a group of the plurality of groups of sets of encoded data slices from the DSN memory; generating copies of the group of the plurality of groups of sets of encoded data slices, wherein a first copy is generated from first encoded data slices included in the group of the plurality of groups of sets of encoded data slices, and a second copy is generated using second encoded data slices included in the group of the plurality of groups of sets of encoded data slices, and wherein the first encoded data slices are different from the second encoded data slices; storing the copies of the group of the plurality of groups of sets of encoded data slices in a playback DSN memory; and for each of at least some of the plurality of playback requests, sending a representation of a copy of the copies to a requesting device associated with a corresponding playback request. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for execution by a dispersed storage processing module, the method comprises:
-
receiving, from a plurality of requesting devices, a plurality of playback requests for a stored program, wherein the stored program is encoded via an error coding dispersal storage function to produce a plurality of groups of sets of encoded data slices which are stored in dispersed storage network (DSN) memory, wherein each of the encoded data slices is encoded via the error coding dispersal storage function to not include consecutive bits of a data segment, and wherein a group of sets of the plurality of groups of sets of encoded data slices corresponds to data within a time window of the stored program and a set of encoded data slices of the group of sets of the plurality of groups of sets of encoded data slices corresponds to the data segment of the data within the time window and wherein the set of encoded data slices of the group of sets of the plurality of groups of sets of encoded data slices are encoded via the error coding dispersal storage function to require a threshold number of data slices for decoding; and for each of the plurality of playback requests, entering a loop that includes; retrieving a group of the plurality of groups of sets of encoded data slices from the DSN memory; decoding the group of the plurality of groups of sets of encoded data slices to generate a group of decoded data segments representing the data within the time window of the stored program, wherein a first decoded data segment of the group of decoded data segments is generated from first encoded data slices included in the group of the plurality of groups of sets of encoded data slices, and a second decoded data segment of the group of decoded data segments is generated using second encoded data slices included in the group of the plurality of groups of sets of encoded data slices, and wherein the first encoded data slices are different from the second encoded data slices; making copies of the group of decoded data segments; and transmitting the copies of the group of decoded data segments to the plurality of requesting devices associated with the plurality of playback requests. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A computer comprises:
-
an interface; and a processing module operable to; receive, via the interface from a plurality of requesting devices, a plurality of playback requests for a stored program, wherein the stored program is encoded via an error coding dispersal storage function to produce a plurality of groups of sets of encoded data slices which are stored in dispersed storage network (DSN) memory, wherein each of the encoded data slices is encoded via the error coding dispersal storage function to not include consecutive bits of a data segment, and wherein a group of sets of the plurality of groups of sets of encoded data slices corresponds to data within a time window of the stored program and a set of encoded data slices of the group of sets of the plurality of groups of sets of encoded data slices corresponds to the data segment of the data within the time window and wherein the set of encoded data slices of the group of sets of the plurality of groups of sets of encoded data slices are encoded via the error coding dispersal storage function to require a threshold number of data slices for decoding; and for each of the plurality of playback requests, entering a loop that includes; retrieving a group of the plurality of groups of sets of encoded data slices from the DSN memory; generating copies of the group of the plurality of groups of sets of encoded data slices, wherein a first copy is generated from first encoded data slices included in the group of the plurality of groups of sets of encoded data slices, and a second copy is generated using second encoded data slices included in the group of the plurality of groups of sets of encoded data slices, and wherein the first encoded data slices are different from the second encoded data slices; storing the copies of the group of the plurality of groups of sets of encoded data slices in a playback DSN memory; and for each of at least some of the plurality of playback requests, sending a representation of a copy of the copies to a requesting device associated with the corresponding playback request. - View Dependent Claims (15, 16, 17, 18)
-
-
19. A computer comprises:
-
an interface; and a processing module operable to; receive, via the interface from a plurality of requesting devices, a plurality of playback requests for a stored program, wherein the stored program is encoded via an error coding dispersal storage function to produce a plurality of groups of sets of encoded data slices which are stored in dispersed storage network (DSN) memory, wherein each of the encoded data slices is encoded via the error coding dispersal storage function to not include consecutive bits of a data segment, and wherein a group of sets of the plurality of groups of sets of encoded data slices corresponds to data within a time window of the stored program and a set of encoded data slices of the group of sets of the plurality of groups of sets of encoded data slices corresponds to the data segment of the data within the time window and wherein the set of encoded data slices of the group of sets of the plurality of groups of sets of encoded data slices are encoded via the error coding dispersal storage function to require a threshold number of data slices for decoding; and for each of the plurality of playback requests, perform a loop that includes; retrieving, via the interface, a group of the plurality of groups of sets of encoded data slices from the DSN memory; decoding the group of the plurality of groups of sets of encoded data slices to generate a group of decoded data segments representing the data within the time window of the stored program, wherein a first decoded data segment of the group of decoded data segments is generated from first encoded data slices included in the group of the plurality of groups of sets of encoded data slices, and a second decoded data segment of the group of decoded data segments is generated using second encoded data slices included in the group of the plurality of groups of sets of encoded data slices, and wherein the first encoded data slices are different from the second encoded data slices; making copies of the group of decoded data segments; and transmitting the copies of the group of decoded data segments to the plurality of requesting devices associated with the plurality of playback requests. - View Dependent Claims (20, 21, 22, 23, 24)
-
-
25. A non-transitory computer readable storage medium storing a program of instructions configured to be executed by a processor to implement a method for execution by a dispersed storage processing module, the program of instructions comprising:
-
at least one instruction configured to receive, from a plurality of requesting devices, a plurality of playback requests for a stored program, wherein the stored program is encoded via an error coding dispersal storage function to produce a plurality of groups of sets of encoded data slices which are stored in dispersed storage network (DSN) memory, wherein each of the encoded data slices is encoded via the error coding dispersal storage function to not include consecutive bits of a data segment, and wherein a group of sets of the plurality of groups of sets of encoded data slices corresponds to data within a time window of the stored program and a set of encoded data slices of the group of sets of the plurality of groups of sets of encoded data slices corresponds to the data segment of the data within the time window and wherein the set of encoded data slices of the group of sets of the plurality of groups of sets of encoded data slices are encoded via the error coding dispersal storage function to require a threshold number of data slices for decoding; and at least one instruction configured to enter a loop for each of the plurality of playback requests, the loop including; at least one instruction configured to retrieve a group of the plurality of groups of sets of encoded data slices from the DSN memory; at least one instruction configured to generate copies of the group of the plurality of groups of sets of encoded data slices, wherein a first copy is generated from first encoded data slices included in the group of the plurality of groups of sets of encoded data slices, and a second copy is generated using second encoded data slices included in the group of the plurality of groups of sets of encoded data slices, and wherein the first encoded data slices are different from the second encoded data slices; at least one instruction configured to store the copies of the group of the plurality of groups of sets of encoded data slices in a playback DSN memory; at least one instruction configured, for each of at least some of the plurality of playback requests, to send a representation of a copy of the copies to a requesting device associated with a corresponding playback request; and at least one instruction configured to, for each of the at least some of the plurality of playback requests. - View Dependent Claims (26, 27, 28, 29, 30)
-
-
31. A non-transitory computer readable storage medium storing a program of instructions configured to be executed by a processor to implement a method for execution by a dispersed storage processing module, the program of instructions comprising:
-
at least one instruction configured to receive, from a plurality of requesting devices, a plurality of playback requests for a stored program, wherein the stored program is encoded via an error coding dispersal storage function to produce a plurality of groups of sets of encoded data slices which are stored in dispersed storage network (DSN) memory, wherein each of the encoded data slices is encoded via the error coding dispersal storage function to not include consecutive bits of a data segment, and wherein a group of sets of the plurality of groups of sets of encoded data slices corresponds to data within a time window of the stored program and a set of encoded data slices of the group of sets of the plurality of groups of sets of encoded data slices corresponds to the data segment of the data within the time window and wherein the set of encoded data slices of the group of sets of the plurality of groups of sets of encoded data slices are encoded via the error coding dispersal storage function to require a threshold number of data slices for decoding; and at least one instruction configured to enter a loop for each of the plurality of playback requests, the loop including; at least one instruction configured to retrieve a group of the plurality of groups of sets of encoded data slices from the DSN memory; at least one instruction configured to decode the group of the plurality of groups of sets of encoded data slices to generate a group of decoded data segments representing the data within the time window of the stored program, wherein a first decoded data segment of the group of decoded data segments is generated from first encoded data slices included in the group of the plurality of groups of sets of encoded data slices, and a second decoded data segment of the group of decoded data segments is generated using second encoded data slices included in the group of the plurality of groups of sets of encoded data slices, and wherein the first encoded data slices are different from the second encoded data slices; at least one instruction to make copies of the group of decoded data segments; and at least one instruction configured to transmit the copies of the group of decoded data segments to the plurality of requesting devices associated with the plurality of playback requests. - View Dependent Claims (32, 33, 34, 35)
-
Specification