Integrating continuous and sparse streaming data
First Claim
1. A computer-implemented method for controlling a client computer system to request sparse track fragments associated with a continuous data track, comprising:
- requesting, from a server, a continuous track fragment associated with the continuous data track of a media presentation over a network;
receiving the continuous track fragment over the network;
identifying a reference to a sparse track fragment associated with the continuous track fragment;
determining that the sparse track fragment has not previously been received;
in response to the determining that the sparse track fragment has not previously been received, requesting the sparse track fragment over the network;
receiving the sparse track fragment over the network;
identifying a reference to a previous sparse track fragment in a header associated and transmitted with the sparse track fragment;
determining that the previous sparse track fragment has not previously been received;
in response to the determining that the previous sparse track fragment has not previously been received, retrieving the previous sparse track fragment over the network; and
displaying the continuous track fragment, the sparse track fragment, and the previous sparse track fragment, wherein the sparse track fragment and the previous sparse track fragment are superimposed on the continuous data track.
2 Assignments
0 Petitions
Accused Products
Abstract
A sparse streaming system provides a first-class means for sparse metadata to be added to streaming media presentations and to be delivered using an integrated data channel that is cacheable using readily available HTTP-based Internet caching infrastructure for increased scalability. The sparse streaming system stores a reference to a sparse track within a continuous track. If a continuous fragment arrives at the client that refers to a sparse fragment that the client has not yet retrieved, then the client requests the sparse fragment. In addition, each sparse fragment may include a backwards reference to the sparse fragment created immediately prior. The references in the continuous fragments make the client aware of new sparse track fragments, and the backwards references in the sparse track fragments ensure that the client has not missed any intervening sparse track fragments.
41 Citations
20 Claims
-
1. A computer-implemented method for controlling a client computer system to request sparse track fragments associated with a continuous data track, comprising:
-
requesting, from a server, a continuous track fragment associated with the continuous data track of a media presentation over a network; receiving the continuous track fragment over the network; identifying a reference to a sparse track fragment associated with the continuous track fragment; determining that the sparse track fragment has not previously been received; in response to the determining that the sparse track fragment has not previously been received, requesting the sparse track fragment over the network; receiving the sparse track fragment over the network; identifying a reference to a previous sparse track fragment in a header associated and transmitted with the sparse track fragment; determining that the previous sparse track fragment has not previously been received; in response to the determining that the previous sparse track fragment has not previously been received, retrieving the previous sparse track fragment over the network; and displaying the continuous track fragment, the sparse track fragment, and the previous sparse track fragment, wherein the sparse track fragment and the previous sparse track fragment are superimposed on the continuous data track. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A client computer system for requesting sparse track fragments associated with a continuous data track of a media presentation, the system comprising:
-
a processor; a memory comprising software, the software including instructions to cause the processor to perform the actions of; requesting, from a server, a continuous track fragment associated with the continuous data track over a network; receiving the continuous track fragment over the network; identifying a reference to a sparse track fragment associated with the continuous track fragment; determining that the sparse track fragment has not previously been received; in response to the determining that the sparse track fragment has not previously been received, requesting the sparse track fragment over the network; receiving the sparse track fragment over the network; identifying a reference to a previous sparse track fragment in a header associated and transmitted with the sparse track fragment; determining that the previous sparse track fragment has not previously been received; in response to the determining that the previous sparse track fragment has not previously been received, retrieving the previous sparse track fragment over the network; and displaying the continuous track fragment, the sparse track fragment, and the previous sparse track fragment, wherein the sparse track fragment and the previous sparse track fragment are superimposed on the continuous data track. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer-readable storage device comprising instructions for controlling a client computer system to request sparse track fragments associated with a continuous data track, wherein the instructions, when executed, cause a processor to perform actions comprising:
-
requesting, from a server, a continuous track fragment associated with the continuous data track of a media presentation over a network; receiving the continuous track fragment over the network; identifying a reference to a sparse track fragment associated with the continuous track fragment; determining that the sparse track fragment has not previously been received; in response to the determining that the sparse track fragment has not previously been received, requesting the sparse track fragment over the network; receiving the sparse track fragment over the network; identifying a reference to a previous sparse track fragment in a header associated and transmitted with the sparse track fragment; determining that the previous sparse track fragment has not previously been received; in response to the determining that the previous sparse track fragment has not previously been received, retrieving the previous sparse track fragment over the network; and displaying the continuous track fragment, the sparse track fragment, and the previous sparse track fragment, wherein the sparse track fragment and the previous sparse track fragment are superimposed on the continuous data track. - View Dependent Claims (18, 19, 20)
-
Specification