IP Library › Granted Patent US 8,224,981
Granted Patent B2
US 8,224,981 · App. 11/947,013 · Granted Jul 17, 2012

Accelerated multimedia file download and playback

Assignee: Speedbit Ltd.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,224,981
App. No.
11/947,013
Granted
Jul 17, 2012
Kind
B2
Abstract

A multimedia file transfer system including a redirector configured to identify a request to access a multimedia file via a network at a specified network address, and an accelerator configured to respond to the request by identifying at least one physical data storage device on which at least a portion of the multimedia file is stored, establish a plurality of data transfer links via the network with any of the devices, download a different portion of the multimedia file via each of the data transfer links, where any of the portions are downloaded at least partly concurrently, and provide, at least partly concurrently with downloading any of the portions, downloaded multimedia file data to a multimedia file player in the order in which the data appear in the multimedia file.

Claims (81)

1. A multimedia file transfer system comprising:

a redirector configured to identify a request to access a multimedia file via a network; and

an accelerator configured to

respond to said request by identifying at least one physical data storage device on which at least a portion of said multimedia file is stored,

establish a plurality of data transfer links via said network with any of said devices,

download a different portion of said multimedia file via each of said data transfer links, wherein any of said portions are downloaded at least partly concurrently,

provide, at least partly concurrently while downloading any of said portions, downloaded multimedia file data to a multimedia file player in the order in which said data appear in the multimedia file,

determine, in advance of downloading a next portion of said multimedia file, a size of said next portion in accordance with a predefined function of

a) a rate at which said multimedia file is downloaded, and

b) a current play rate of any of said portions of said multimedia file preceding said next portion,

specify to any of said devices said next portion to be downloaded while indicating said size of said next portion, and

download said next portion of said multimedia file,

wherein said redirector and said accelerator are implemented in either of

a) computer hardware, and

b) computer software embodied in a non-transitory, computer-readable storage medium.

2. A system according to claim 1 wherein said accelerator is configured to indicate to any of said devices, to which said accelerator has established any of said data transfer links, a byte offset demarcating the beginning of a portion of said multimedia file to be downloaded, and the number of bytes in the portion to be downloaded.

3. A system according to claim 1 wherein said accelerator is configured to provide said downloaded multimedia file data to said multimedia file player after buffering a predefined amount of said data.

4. A system according to claim 1 wherein either of said redirector and said accelerator are executed by either of a modem and a router.

5. A system according to claim 1 wherein said multimedia file player is assembled with either of said redirector and said accelerator.

6. A system according to claim 1 wherein said accelerator is configured to determine the size of said next portion of said multimedia file to be downloaded where said predefined function is of the product of said download rate of said multimedia file and the amount of time remaining until all of said portions of said multimedia file preceding said next portion will have been played at said current play rate.

7. A system according to claim 1 wherein said download rate is any of

the fastest download rate achieved at any time during the download of any portion of said multimedia file,

the slowest download rate achieved at any time during the download of any portion of said multimedia file,

the average download rate of all downloaded portions of said multimedia file, and

the download rate of the most recently downloaded portion of said multimedia file.

8. A system according to claim 1 wherein said accelerator is configured to determine the size of said next portion of said multimedia file to be downloaded as

PPS

×

DR

PR

-

DR

where DR is said download rate of said multimedia file, PR is said current play rate of said multimedia file, and PPS is the amount of data yet to be played of all portions of said multimedia file preceding said next portion at said current play rate, and where PR>DR.

9. A system according to claim 1 wherein said accelerator is configured to provide said downloaded multimedia file data to said multimedia file player at a data transfer rate that is less than said download rate of said multimedia file.

10. A system according to claim 9 wherein said accelerator is configured to buffer said downloaded data until a predetermined buffer size is reached, whereupon said data transfer rate to said player is increased.

11. A system according to 10 wherein said buffer size is determined by the formula

DR*FS /( PR+DR )

where DR is said download rate of said multimedia file, PR is said current play rate of said multimedia file, and FS is the size of said multimedia file.

12. A system according to claim 1 wherein said accelerator is configured to download a remainder of said multimedia file in a plurality of equally-sized portions where a determined size of a next portion to be downloaded equals, exceeds, or comes within a predefined distance from the end of said multimedia file.

13. A system according to claim 1 wherein said accelerator is configured to download and buffer a predefined amount of said multimedia file if said player has finished playing all downloaded portions of said multimedia file while more of said multimedia file remains to be downloaded.

14. A system according to claim 1 wherein said accelerator is configured to determine the number of said data transfer links using the formula

INT ( PR/DR )+1

where DR is said download rate of said multimedia file and PR is said current play rate of said multimedia file.

15. A multimedia file transfer system according to claim 1 wherein said accelerator is configured to determine the size of said next portion such that said next portion will be completely downloaded when all of said portions of said multimedia file preceding said next portion will have been played.

16. A multimedia file transfer method comprising:

identifying at least one physical data storage device on which at least a portion of a multimedia file is stored;

establishing a plurality of data transfer links via said network with any of said devices;

downloading a different portion of said multimedia file via each of said data transfer links, wherein any of said portions are downloaded at least partly concurrently;

providing, at least partly concurrently with downloading any of said portions, downloaded multimedia file data to a multimedia file player in the order in which said data appear in the multimedia file;

determining, in advance of downloading a next portion of said multimedia file, a size of said next portion in accordance with a predefined function of

a) a rate at which said multimedia file is downloaded, and

b) a current play rate of any of said portions of said multimedia file preceding said next portion;

specifying to any of said devices said next portion to be downloaded while indicating said size of said next portion; and

downloading said next portion of said multimedia file.

17. A method according to claim 16 and further comprising indicating to any of said devices a byte offset demarcating the beginning of a portion of said multimedia file to be downloaded, and the number of bytes in the portion to be downloaded.

18. A method according to claim 16 and further comprising providing said downloaded multimedia file data to said multimedia file player after buffering a predefined amount of said data.

19. A method according to claim 16 wherein said downloading step comprises determining the size of said next portion of said multimedia file to be downloaded where said predefined function is of the product of said download rate of said multimedia file and the amount of time remaining until all of said portions of said multimedia file preceding said next portion will have been played at said current play rate.

20. A method according to claim 16 wherein said downloading step comprises determining said download rate as any of

the fastest download rate achieved at any time during the download of any portion of said multimedia file,

the slowest download rate achieved at any time during the download of any portion of said multimedia file,

the average download rate of all downloaded portions of said multimedia file, and

the download rate of the most recently downloaded portion of said multimedia file.

21. A method according to claim 16 and further comprising determining the size of said next portion of said multimedia file to be downloaded as

PPS

×

DR

PR

-

DR

where DR is said download rate of said multimedia file, PR is said current play rate of said multimedia file, and PPS is the amount of data yet to be played of all portions of said multimedia file preceding said next portion at said current play rate, and where PR>DR.

22. A method according to claim 16 and further comprising providing said downloaded multimedia file data to said multimedia file player at a data transfer rate that is less than said download rate of said multimedia file.

23. A method according to claim 22 and further comprising buffering said downloaded data until a predetermined buffer size is reached, whereupon said data transfer rate to said player is increased.

24. A method according to 23 and further comprising determining said buffer size by the formula

DR*FS /( PR+DR )

where DR is said download rate of said multimedia file, PR is said current play rate of said multimedia file, and FS is the size of said multimedia file.

25. A method according to claim 16 and further comprising downloading a remainder of said multimedia file in a plurality of equally-sized portions where a determined size of a next portion to be downloaded equals, exceeds, or comes within a predefined distance from the end of said multimedia file.

26. A method according to claim 16 and further comprising downloading and buffering a predefined amount of said multimedia file if said player has finished playing all downloaded portions of said multimedia file while more of said multimedia file remains to be downloaded.

27. A method according to claim 16 and further comprising determining the number of said data transfer links using the formula

INT ( PR/DR )+1

where DR is said download rate of said multimedia file and PR is said current play rate of said multimedia file.

28. A multimedia file transfer method according to claim 16 wherein said determining step comprises determining said size of said next portion such that said next portion will be completely downloaded when all of said portions of said multimedia file preceding said next portion will have been played.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 17, 2008
From: BEN ADERET, FABIAN; FEIGENBAUM, IDAN; VARDI, YOSEF
To: SPEEDBIT LTD., MATAM
Reel/Frame 020526/0697 →
Continuity (2)
Provisional Application 60867834 · Nov 30, 2006
Related Publication 20080133771A1 · Jun 5, 2008