Media file system supported by streaming servers
First Claim
1. A method for transferring multimedia data using a data communication system, comprising the steps of:
- storing on an application server a multimedia file including a plurality groups of multimedia data, each group having a predetermined data size;
receiving a client request and reading a client address at the application server, the client address corresponding to at least one client apparatus;
stripping consecutive groups from the multimedia file and buffering the stripped groups in a staging buffer;
transferring to a streaming server, consecutive groups from the staging buffer and the client address;
converting at the streaming server, each of the consecutive groups received from the staging buffer into a format readable by the at least one client apparatus; and
sending each of the converted groups to the at least one client apparatus.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and data communication system for transferring multimedia data which stores on an application server a multimedia file including a plurality groups of multimedia data. Each group has a predetermined data size. Next, the system receives a client request and reads a client address at the application server. The client address corresponds to at least one client apparatus. Next, the system strips consecutive groups from the multimedia file and buffers the stripped groups in a staging buffer. Then, the system transfers to a streaming server, consecutive groups from the staging buffer and the client address. The system then converts at the streaming server, each of the consecutive groups received from the staging buffer into a format readable by the at least one client apparatus. Finally, the streaming server sends each of the converted groups to the at least one client apparatus.
-
Citations
57 Claims
-
1. A method for transferring multimedia data using a data communication system, comprising the steps of:
-
storing on an application server a multimedia file including a plurality groups of multimedia data, each group having a predetermined data size;
receiving a client request and reading a client address at the application server, the client address corresponding to at least one client apparatus;
stripping consecutive groups from the multimedia file and buffering the stripped groups in a staging buffer;
transferring to a streaming server, consecutive groups from the staging buffer and the client address;
converting at the streaming server, each of the consecutive groups received from the staging buffer into a format readable by the at least one client apparatus; and
sending each of the converted groups to the at least one client apparatus. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21)
-
-
16. A method for using an application server comprising the steps of:
-
storing on an application server a multimedia file including a plurality groups of multimedia data, each group having a predetermined data size;
receiving a client request and reading a client address at the application server, the client address corresponding to at least one client apparatus;
stripping consecutive groups from the multimedia file and buffering the stripped groups in a staging buffer; and
transferring to a streaming server, consecutive groups from the staging buffer and the client address.
-
-
22. A method for using a streaming server comprising the steps of:
-
receiving in a streaming server consecutive groups of data of a multimedia file and a client address;
converting each of the consecutive groups received into a format readable by at least one client apparatus; and
sending each of the converted groups to the at least one client apparatus. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A method for selectively sending multimedia files from application servers or streaming servers in a data communication system, comprising the steps of:
-
receiving in an application server, a client request for a multimedia file including a plurality of predetermined groups of multimedia data;
determining whether the multimedia file is located on a streaming server;
stripping consecutive groups from the multimedia file and buffering the stripped groups in a staging buffer at the application server;
transferring to a streaming server, consecutive groups from the stripping buffer and a client address corresponding to the client request received in the application server;
converting at the streaming server, each of the consecutive groups received from the staging buffer into a format readable by at least one client apparatus; and
sending each of the converted groups to the at least one client apparatus, when the multimedia file is not located on the streaming server.
-
-
32. A method for selectively sending multimedia files from application servers or streaming servers in a data communication system, comprising the steps of:
-
receiving in an application server, a client request for a multimedia file including a plurality of predetermined groups of multimedia data;
determining whether the multimedia file is located on a streaming server;
converting at the streaming server, each of the consecutive groups received from the staging buffer into a format readable by at least one client apparatus; and
sending each of the converted groups to the at least one client apparatus, when the multimedia file is located on the streaming server.
-
-
33. A method of purging multimedia files from a streaming server according to a garbage-collection algorithm, comprising the steps of:
-
determining a rate at which a multimedia file has been sent from a streaming server to at least one client apparatus;
comparing the number of times to a threshold number; and
purging the multimedia file from the streaming server when the number of times is less than or equal to the threshold number. - View Dependent Claims (34, 36, 38, 40)
-
-
35. A method for purging files from a streaming server comprising the steps of:
-
receiving in a streaming server, a maximum group count corresponding to a maximum number of groups of data that make up a multimedia file;
storing the maximum group count in the streaming server according to a garbage-collection algorithm;
receiving consecutive groups of data of the multimedia file;
counting a number of consecutive groups received in the streaming server;
determining whether the number of consecutive groups received is equal to the maximum group count; and
purging from the streaming server, consecutive groups of the multimedia file when the number of groups received is equal to the maximum group count.
-
-
37. A method for selectively transferring entire multimedia files from an application server to a streaming server comprising the steps of:
-
receiving in an application server, a client request for a multimedia file;
determining over a predetermined time period, a number of client requests for the multimedia file;
comparing the number of client requests for the multimedia file to a threshold popularity number; and
transferring the entire multimedia file from the application server to a streaming server when the total number of client requests for the multimedia file is greater than the threshold popularity number.
-
-
39. A method of buffering multimedia data in a data communication system, comprising the steps of:
-
receiving in a streaming server, consecutive groups of data of a multimedia file;
converting at the streaming server, each of the consecutive groups into a protocol readable by at least one client apparatus in communication with the streaming server;
determining whether a transfer rate of the groups to the streaming server is greater than a sending rate from the streaming server to the at least one client apparatus; and
sending consecutively, the converted groups to the at least one client apparatus, when the determining step determines that the transfer rate is greater than the sending rate.
-
-
41. A method of buffering multimedia data in a data communication system, comprising the steps of:
-
receiving in a streaming server, consecutive groups of data of a multimedia file;
converting at the streaming server, each of the consecutive groups into a protocol readable by at least one client apparatus in communication with the streaming server;
determining whether a transfer rate of the groups to the streaming server is greater than a sending rate from the streaming server to the at least one client apparatus; and
storing in a converted group buffer in the streaming server, the converted groups for a predetermined time period, when the determining step determines that the transfer rate is less than the sending rate; and
sending consecutively the converted groups to the at least one client apparatus. - View Dependent Claims (42)
-
-
43. A data communication system for sending multimedia data to a client apparatus, comprising:
-
an application server comprising;
a multimedia file storage;
a file to group stripping program;
a group staging buffer;
a clock, for synchronizing transfer of groups of a multimedia file; and
a streaming server comprising;
a group receiving buffer;
a format conversion program;
a converted group buffer; and
a transmitter for sending converted groups of the multimedia file to at least one client apparatus, wherein the streaming server is in communication with the application server. - View Dependent Claims (44, 45, 46, 47, 48, 49, 50)
-
-
51. A data communication system for transferring multimedia data, comprising:
-
an application server comprising;
a video file storage, for storing MPEG format video files;
a file to frame stripping program;
a frame staging buffer;
a clock, for synchronizing transfer of the frames; and
a streaming server comprising;
an elastic frame receiving buffer;
a frame format conversion program;
a converted frame buffer; and
a transmitter for sending converted frames to a client computer, wherein the streaming server is coupled over a local area network to the application server.
-
-
52. An application server comprising:
-
a multimedia file storage;
a file to group stripping program;
a group staging buffer; and
a clock, for synchronizing transfer of segments of a multimedia file. - View Dependent Claims (53, 54)
-
-
55. A streaming server comprising:
-
a group receiving buffer;
a group format conversion program;
a converted group buffer; and
a transmitter for sending converted groups of data of a multimedia file to at least one client apparatus. - View Dependent Claims (56, 57)
-
Specification