Patent ID: 7941554

Claim:
A method comprising: receiving, at a client device for presentation to a user, a plurality of temporally non-contiguous portions of a streaming media file, wherein: temporally non-contiguous portions consist of portions of a received streaming media file that are not adjacent to one another in terms of temporal presentation of content of the non-contiguous portions during playback, and at least a first and a second of the temporally non-contiguous portions of the received streaming media file are encoded at different bit rates, wherein the first and second non-contiguous portions comprise video data and wherein a third non-contiguous portion comprises audio data; and storing the plurality of temporally non-contiguous portions of the received streaming media file in a single cache file on the client device, wherein the act of storing comprises: creating, at the client device, a plurality of media cache streams, each media cache stream being associated with a unique bit rate; storing the first non-contiguous portion in a media cache stream associated with the bit rate of the first non-contiguous portion; storing the second non-contiguous portion in a media cache stream associated with the bit rate of the second non-contiguous portion; and storing, by the client device, the media cache streams in the cache file.