Stream sharing method, apparatus, and system
First Claim
1. A stream sharing method, comprising:
- receiving a stream according to a first scheduling window;
storing a plurality of received segments of the stream in a buffer module, wherein each of the received segments corresponds to a receiving time-point;
receiving a sharing request comprising a second scheduling window;
sending one or more requested segments according to the second scheduling window, wherein each of the one or more requested segments is one of the received segments and further corresponds to a sending time-point; and
adjusting the first scheduling window according to the receiving time-point and the sending time-point corresponding to each of the one or more requested segments;
wherein adjusting the first scheduling window according to the receiving time-point and the sending time-point corresponding to each of the one or more requested segments comprises;
for each of the one or more requested segments, calculating a difference between the sending time-point and the receiving time-point corresponding to the requested segment;
updating an average according to the one or more differences corresponding to the one or more requested segments; and
adjusting the first scheduling window according to the average, wherein when the average is smaller than a lower bound and the first scheduling window is smaller than a maximum size, the first scheduling window is increased.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed herein are a method and an apparatus for stream sharing, the apparatus comprising a buffer module, a sharing module, and an adjusting module. The sharing module receives a stream based on a first scheduling window and stores received segments of that stream in the buffer module, each received segment corresponding to a receiving time-point. A sharing request including a second scheduling window is received. Among the received segments the sharing module sends one or more requested segments, each of which further corresponding to a sending time-point. The adjusting module selectively adjusts the first scheduling window based on the corresponding receiving time-point and sending time-point of each requested segment. Also disclosed is a stream sharing system which comprises a stream source apparatus for hosting a stream and at least one stream sharing apparatus.
10 Citations
15 Claims
-
1. A stream sharing method, comprising:
-
receiving a stream according to a first scheduling window; storing a plurality of received segments of the stream in a buffer module, wherein each of the received segments corresponds to a receiving time-point; receiving a sharing request comprising a second scheduling window; sending one or more requested segments according to the second scheduling window, wherein each of the one or more requested segments is one of the received segments and further corresponds to a sending time-point; and adjusting the first scheduling window according to the receiving time-point and the sending time-point corresponding to each of the one or more requested segments; wherein adjusting the first scheduling window according to the receiving time-point and the sending time-point corresponding to each of the one or more requested segments comprises; for each of the one or more requested segments, calculating a difference between the sending time-point and the receiving time-point corresponding to the requested segment; updating an average according to the one or more differences corresponding to the one or more requested segments; and adjusting the first scheduling window according to the average, wherein when the average is smaller than a lower bound and the first scheduling window is smaller than a maximum size, the first scheduling window is increased. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A stream sharing apparatus, comprising:
-
a processor, configured to execute functions of modules, the modules comprising; a buffer module; a sharing module configured to receive a stream according to a first scheduling window, to store a plurality of received segments of the stream in the buffer module, to receive a sharing request comprising a second scheduling window, and to send one or more requested segments according to the second scheduling window, wherein each of the received segments corresponds to a receiving time-point, and each of the one or more requested segments is one of the received segments and further corresponds to a sending time-point; and an adjusting module configured to adjust the first scheduling window according to the receiving time-point and the sending time-point corresponding to each of the one or more requested segments; wherein when the adjusting module adjusts the first scheduling window according to the receiving time-point and the sending time-point corresponding to each of the one or more requested segments, the adjusting module calculates, for each of the one or more requested segments, a difference of the receiving time-point and the sending time-point corresponding to the requested segment, updates an average according to the one or more differences corresponding to the one or more requested segments, and adjusts the first scheduling window according to the average; wherein when the average is smaller than a lower bound and the first scheduling window is smaller than a maximum size, the adjusting module increases the first scheduling window. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A stream sharing system, comprising:
-
a stream source apparatus configured to host a stream; and a first stream sharing apparatus comprising; a processor, configured to execute functions of modules, the modules comprising; a buffer module; a sharing module configured to receive the stream from the stream source apparatus or a second stream sharing apparatus according to a first scheduling window, to store a plurality of received segments of the stream in the buffer module, to receive from a third stream sharing apparatus a sharing request comprising a second scheduling window, and to send one or more requested segments to the third stream sharing apparatus according to the second scheduling window, wherein each of the received segments corresponds to a receiving time-point, and each of the one or more requested segments is one of the received segments and further corresponds to a sending time-point; and an adjusting module configured to adjust the first scheduling window according to the receiving time-point and the sending time-point corresponding to each of the one or more requested segments; wherein when the adjusting module adjusts the first scheduling window according to the receiving time-point and the sending time-point corresponding to each of the one or more requested segments, the adjusting module calculates, for each of the one or more requested segments, a difference of the receiving time-point and the sending time-point corresponding to the requested segment, updates an average according to the one or more differences corresponding to the one or more requested segments, and adjusts the first scheduling window according to the average; wherein when the average is smaller than a lower bound and the first scheduling window is smaller than a maximum size, the adjusting module increases the first scheduling window. - View Dependent Claims (12, 13, 14, 15)
-
Specification