Patent ID: 8620972
Filing Date: 2013-12-31
Classification: G11B

Abstract:
1. A system for creating a random order file format, wherein randomization occurs at the sub-file level, the system comprising: a data storage unit that stores a plurality of data pieces and at least one Random Order File Format (RODFF) file, that is created from said data pieces, where the RODFF files and data pieces are stored according to commands received by a software application; a microprocessor, configured by the software application, and operatively connected to the data storage unit whereby the microprocessor is configured to execute the software application and enable the RODFF files to be created, according to a set of predetermined methods, from the plurality of digital data pieces and also enables the RODFF files to be stored on and retrieved from the data storage unit; the software application, hosted on the data storage unit, where the software application enables the microprocessor to store, on the data storage unit, the input data flies, where said RODFF files are created from the plurality of digital data pieces and also enables the microprocessor to retrieve the RODFF files in a useable format according to predetermined methods, where said software application contains code for executing the above tasks and Random Order Logic; at least one RODFF file, hosted on the data storage unit and created from the plurality of data pieces via the software application, and the microprocessor, whereby said RODFF file is created such that its contents are thereafter accessed according to the Random Order Logic String (ROLS) identified in the file header where said Random Order Logic String and file header are determined during an instance of a encoding application, where the file header also contained a Cuesheet, or a location for a Cuesheet, where the Cuesheet identifies the locations of each of the data pieces within the RODFF file; the plurality of data pieces, hosted on the data storage unit, wherein said data pieces are combined, via the software application and the microprocessor, to create the RODFF data file; a set of code instructions for the Random Order Logic, executed by the software application, which selects a unique access order instance, from the set of possible sequences defined by the Random Order Logic String, stored in a RODFF file header of the RODFF file which configures the RODFF file to the random order file format when the decoding application is executed; a set of code instructions for the encoding application, implemented by the software application, which enables the plurality of data pieces to be consolidated and packed into the one single RODFF file, where the encoder determines, based on instructions selected by an original user, a Random Order Logic String, which determines the possible random orders in which the data should be played back, where the ROLS is placed in the file header to be read by the decoding application at playback time, where the encoder also creates a Cuesheet, which stores the locations of the plurality of data pieces within the file; a set of code instructions for the decoding application, implemented by the software application, which enables the data pieces to be unpacked from the RODFF file and accessed for use, where the decoding application executes the Random Order Logic and selects a unique access order based on the Random Order Logic String, where the decoding application then locates the data pieces selected by the unique access order from the memory locations identified by the Cuesheet, where the data pieces are then sent to the compression algorithm to be decompressed; a set of code instructions for compression application utilized by the software application, which enables compression and decompression of the data pieces by the encoder into an RODFF file; the file header comprising a separate data piece located within the RODFF file, where the file header identifies the Random Order Logic String contained in the RODFF file; a cuesheet which may be located in the file header, or may comprise a separate datapiece identified in the file header, where the cuesheet identifies the locations of the plurality of data pieces within the RODFF file; wherein the system encodes, via the encoding application, and creates, from the plurality of data pieces, the single RODFF file; wherein one of said data pieces comprises the file header created by the software application; wherein the file header identifies a Random Order Logic String, as defined by the software application, where the Random Order Logic String defines a set of possible sequences in which data pieces are accessed and decoded from the RODFF file; and wherein the system also stores the single RODFF file on the data storage unit, and retrieves the single RODFF file, using the decoding application, whereby the decoding application reads the Random Order Logic String from the file header, and executes the Random Order Logic, which selects a unique order for accessing the data pieces in the file, whereby the decoding application then selects and decompresses the individual data pieces in the file according to the unique order.