Seamless switching between different playback speeds of time-scale modified data streams
First Claim
Patent Images
1. A system for rendering a stream of data at different playback speeds, comprising:
- a component of a server that sends the stream of data for a first playback speed from the server to a client via a network;
a component of the client that receives the stream of data;
a component of the client that renders the received stream of data at the client at the first playback speed, switches the rendering of the received stream of data from the first playback speed to a second playback speed that is greater than the first playback speed, and notifies the server of the second playback speed; and
a component of the server that, upon receiving notification of the second playback speed, initially sends to the client the stream of data that is timeline-modified for a third playback speed that is greater than the second playback speed and then sends to the client a stream of data that is timeline-modified for the second playback speed;
wherein the component of the client that switches the rendering does so before the client starts receiving from the server the stream of data for the second playback speed andwherein the client renders the data sent for the third playback speed at the second playback speed.
2 Assignments
0 Petitions
Accused Products
Abstract
In a network environment, multimedia content is streamed from a server computer to a client computer via the network. A user of the client computer can alter the speed at which the multimedia content is played; either speeding up or slowing down the playback. The client seamlessly switches between the different playback speeds, reducing breaks and/or delays between the time the user selects the new playback speed and the time the multimedia content begins being played back at the new speed.
168 Citations
16 Claims
-
1. A system for rendering a stream of data at different playback speeds, comprising:
-
a component of a server that sends the stream of data for a first playback speed from the server to a client via a network; a component of the client that receives the stream of data; a component of the client that renders the received stream of data at the client at the first playback speed, switches the rendering of the received stream of data from the first playback speed to a second playback speed that is greater than the first playback speed, and notifies the server of the second playback speed; and a component of the server that, upon receiving notification of the second playback speed, initially sends to the client the stream of data that is timeline-modified for a third playback speed that is greater than the second playback speed and then sends to the client a stream of data that is timeline-modified for the second playback speed; wherein the component of the client that switches the rendering does so before the client starts receiving from the server the stream of data for the second playback speed and wherein the client renders the data sent for the third playback speed at the second playback speed. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A server system for providing to a client a stream of data for different playback speeds, comprising:
-
a component that sends to the client via a network the stream of data for a first playback speed; a component that receives from the client a notification of a second playback speed that is greater than the first playback speed; and a component that initially sends to the client the stream of data that is timeline-modified for a third playback speed that is greater than the second playback speed and then sends to the client the stream of data that is timeline-modified for the second playback speed to accommodate when the client switches to the second playback speed before it starts receiving the stream of data for the second playback speed and wherein the client renders the data sent for the third playback speed at the second playback speed. - View Dependent Claims (8, 9)
-
-
10. A method for rendering a stream of data at different playback speeds, the method comprising:
-
receiving from a server via a network a stream of data for a first playback speed; rendering the received stream of data at the first playback speed switching the rendering of the received stream of data from at the first playback speed to at a second playback speed that is greater than the first playback speed; notifying the server of the second playback speed; and after switching the rendering, initially receiving from the server the stream of data that is timeline-modified for a third playback speed that is greater than the second playback speed and then receiving from the server the stream of data that is timeline-modified for the second playback speed wherein the data received for the third playback speed are rendered at the switched second playback speed. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. A system that streams a video with frames from a server to a client at different playback speeds, a playback speed faster than a normal playback speed being simulated by skipping frames of the video, comprising:
-
a component that sends frames of the video for a first playback speed; a component that receives an indication of a second playback speed that is greater than the first playback speed; and a component that upon receiving the indication, initially sends frames of the video that are timeline-modified for a third playback speed that is greater than the second playback speed; and then sends frames of the video that are timeline-modified for the second playback speed so that the client renders the frames of the video for the third playback speed and the second playback speed at the second playback speed.
-
Specification