Parallel scheduling of multilayered media
AssigneeCable Television Laboratories, Inc.
InventorBelal Hamzeh
Life of this patent
Estimating the term…
Abstract
Multi-link transportation of media, video and other data of the type having multiple layers, streams and/or encodings is contemplated. The multi-link transportation may be facilitated with a scheduler configured to schedule the various layers, streams, encodings, etc. for transportation over selectable communication links, such as based on reliability, capacity and/or other operating characteristics.
Claims14
A method for transporting data from a server to a client comprising:
- identifying the data to be encoded according to at least a first encoding and a second encoding;
- identifying at least a first link to be available for transporting the first encoding to the client and a second link to be available for transporting the second encoding to the client;
- determining first parameters for the first link and second parameters for the second link, the first and second parameters respectively representing streaming characteristics associated with transport of the first and second encodings over the corresponding first and second link
- determining the first and second parameters to represent inequalities and/or latencies associated with the first and second links;
- selecting an order for transmission of the first and second encodings from the server as a function of the first and second parameters;
- and
- adding stuffing to the first encoding when being transported from the server to facilitate arrival at the client in the order, the stuffing being sufficient for increasing a total amount of data necessary to facilitate transport of the first encoding.
A method for transporting data from a server to a client comprising:
- identifying the data to be encoded according to at least a first encoding and a second encoding;
- identifying at least a first link to be available for transporting the first encoding to the client and a second link to be available for transporting the second encoding to the client;
- determining first parameters for the first link and second parameters for the second link, the first and second parameters respectively representing streaming characteristics associated with transport of the first and second encodings over the corresponding first and second link;
- deriving from the first and second parameters a first throughput of the first link to be less than a second throughput of the second link;
- selecting an order for transmission of the first and second encodings from the server as a function of the first and second parameters;
- and
- adding synchronization data to the second encoding to compensate for the first throughput being less than the second throughput, including determining an amount and/or frequency of the synchronization data to be proportional to a difference between the first throughput and the second throughput such that the client renders the data without re-rendering and without missing portions of the data when switching from the first link to the second link during rendering.
A method for transporting data from a server to a client comprising:
- identifying the data to be encoded according to at least a first encoding and a second encoding;
- identifying at least a first link to be available for transporting the first encoding to the client and a second link to be available for transporting the second encoding to the client;
- determining first parameters for the first link and second parameters for the second link, the first and second parameters respectively representing streaming characteristics associated with transport of the first and second encodings over the corresponding first and second link;
- determining the first and second parameters to represent inequalities and/or latencies associated with the first and second links;
- selecting an order for transmission of a plurality of packets comprising the first and second encodings, the plurality of packets being transmitted from the server as a function of the first and second parameters, the order relating in time the first encoding relative to the second encoding so as to arrive at the client in a manner matching a prior order that the first and second encodings were received at the server;
- and
- adding synchronization data to transmission of one or both of the first and second encodings such that the first and second encodings arrive at the client in the prior order, the synchronization data being independent of the plurality of packets.
A server for transporting media to a client, the server comprising:
- an encoder device for separately encoding the media independently into at least a first encoding and a second encoding;
- a first interface for transporting the first encoding over a first link and a second interface for transporting the second encoding over a second link, the second link being physically and/or logically distinct from the first link;
- and
- a controller having a plurality of non-transitory instructions executable with a processor associated therewith to facilitate transport of the media, the non-transitory instructions being sufficient for adding synchronization data to the first encoding, the synchronization data including stuffing and/or blanks to compensate for transmission inequalities or latencies between the first and second links.
Dependencies are inferred from the claim text.