CA2466482C

File splitting, scalable coding and asynchronous transmission in streamed data transfer

Abstract

Files (2750) are divided into parts (2716, 2718) and at least some of the parts are transmitted to a client using a communication channel. At least some of the transmitted parts are cached locally. This allows subsequent streaming playback of the file while using 'less bandwidth by transmitting the part of the file that hasn't been cached, and combining the cached parts with the tramitted parts. In some embodiments, files may be represented at a low quality level by a first data set (2804), and at higher quality levels with additional data sets (2806). Data sets are cached locally, so that during subsequent streaming playback of the file, the quality level of the playback may be improved by sending additional data sets using bandwidth that would otherwise be dedicated to transmitting the cached data sets.

CA2466482C, drawing sheet 1
Sheet 1 of 15

Term

Term ended

Expired 9 November 2022, 3.9 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

46 claims: 2 independent, 44 dependent

  1. 1
    CA 02466482 2011-01-13 What is claimed is:1. In a client connected to a network and including a local storage device, a computer-implemented method of receiving a media file to be played via a user device, the media file comprising at least a first part and a second part, comprising: receiving, over the network and from a remote server in a first communication, the second part of the media file, the second part being unusable without the first part;storing the second part at the local storage device;receiving, over the network and from the remote server in a second communication, subsequent to the first communication the first part of the media file and not the second part of the media file;and combining the first and second parts, so that the media file can be played via the user device.
  2. 26
    A method executable using one or more servers to transmit a media file, the method comprising:communicating in a first communication a second part of the media file, the second part being unusable without a first part;and communicating in a second communication subsequent to the first communication the first part of the media file and not the second part of the media file, such that the media file can be played via a user device using at least part of the first and second parts after a start of the second communication.