Patent ID: 7978962

Claim:
A method for controlling a pick-up for reading three or more data streams from a storage medium, the data streams being distributed to more than one file on said storage medium and being separately buffered after reading, and after buffering the data streams being continuously read from the buffers and being used for simultaneous reproduction, wherein said buffers have different individual output data rates and buffer sizes, and wherein the buffer with the highest output data rate being a first buffer relates to a first data stream, the method comprising: when in a buffer of the separate buffers a remaining amount of buffered data is below a threshold, generating and scheduling a request for the pick-up to read data from the corresponding data stream for filling the buffer that has a remaining amount of buffered data below the threshold, wherein the request indicates the respective data stream to be read, and wherein for each of said buffers an individual average number of requests per time interval is generated that results from its output data rate, its size and said threshold; upon serving said request, the pick-up accessing the corresponding data stream and reading data from the accessed data stream; and buffering the read data in the corresponding buffer, wherein the amount of data of the first data stream buffered in the first buffer is sufficient for providing continuous buffer output through a time that is required for accessing and reading any one data stream other than the first data stream of the at least three data streams, filling the respective buffer with the read data from said other data stream and accessing and reading the first data stream again, and wherein the amount of buffered data for each of the other data streams is sufficient for providing continuous buffer output through a time that is required for accessing the first data stream, filling and emptying said first buffer a number of times and accessing the respective other data stream again, wherein said number of times of filling the first buffer before the other buffer needs to be refilled is an integer and is at least two.