Real-time video optimizer
First Claim
1. A method comprising:
- monitoring communications between a client device and an origin server to intercept a request associated with providing a source video from the origin server to the client device, the intercepted request replaced with a redirect request identifying the source video at the origin server and configured to automatically redirect the client device to a transcoding server for providing transcoded source video to the client device, the redirect request including a uniform resource location (URL) of the source video and meta data providing video transcoding parameters based on properties of the client device;
load balancing transcoding requests over multiple transcoding servers; and
in response to receiving the redirect request to transcode the source video for the client device at a transcoding server;
establishing a first session at the transcoding server with the origin server for retrieving source video data from the origin server based on the URL of the source video included in the redirect request,extracting profile settings associated with the source video, andestablishing a second session at the transcoding server with the client device to provide transcoded source video data, the transcoding of the video based on the transcoding parameters included in the meta data of the redirect request and the extracted profile settings.
4 Assignments
0 Petitions
Accused Products
Abstract
A video optimizer receives a request to optimize a video, wherein the request includes optimization parameters and a uniform resource locator (URL) of the video. The video optimizer retrieves the video from an origin server and transcodes the video based on optimization parameters. The video optimizer load balances several transcoding sessions over one or more servers and tracks each session based on session identifications (IDs). Additionally, the video optimizer tracks each session to determine when a server is at or near capacity to prevent an overflow situation. The video optimizer is also enabled to stitch together two or more transcoding sessions in the event of a seek operation by a user during video playback. The video optimizer streams the video to the client device, enabling the client device to stream videos in substantially real-time after requesting the video.
-
Citations
22 Claims
-
1. A method comprising:
-
monitoring communications between a client device and an origin server to intercept a request associated with providing a source video from the origin server to the client device, the intercepted request replaced with a redirect request identifying the source video at the origin server and configured to automatically redirect the client device to a transcoding server for providing transcoded source video to the client device, the redirect request including a uniform resource location (URL) of the source video and meta data providing video transcoding parameters based on properties of the client device; load balancing transcoding requests over multiple transcoding servers; and in response to receiving the redirect request to transcode the source video for the client device at a transcoding server; establishing a first session at the transcoding server with the origin server for retrieving source video data from the origin server based on the URL of the source video included in the redirect request, extracting profile settings associated with the source video, and establishing a second session at the transcoding server with the client device to provide transcoded source video data, the transcoding of the video based on the transcoding parameters included in the meta data of the redirect request and the extracted profile settings. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system for transcoding a video, the system comprising:
-
a non-transitory machine-readable storage medium comprising computer program code that when executed by one or more processors performs steps to; monitoring communications between a client device and an origin server to intercept a request associated with providing a source video from the origin server to the client device, the intercepted request replaced with a redirect request identifying the source video at the origin server and configured to automatically redirect the client device to a transcoding server for providing transcoded source video to the client device, the redirect request including a uniform resource location (URL) of the source video and meta data providing video transcoding parameters based on properties of the client device; load balancing transcoding requests over multiple transcoding servers; and in response to receiving the redirect request to transcode the source video for the client device at a transcoding server from the client device; establishing a first session at the transcoding server with the origin server for retrieving source video data from the origin server based on the URL of the source video included in the redirect request, extracting profile settings associated with the source video, and establishing a second session at the transcoding server with the client device to provide transcoded source video data, the transcoding of the video based on the transcoding parameters included in the meta data of the redirect request and the extracted profile settings. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A non-transitory machine-readable storage medium storing executable computer program instructions for transcoding a video, the computer program instructions comprising instructions for:
-
monitoring communications between a client device and an origin server to intercept a request associated with providing a source video from the origin server to the client device, the intercepted request replaced with a redirect request identifying the source video at the origin server and configured to automatically redirect the client device to a transcoding server for providing transcoded source video to the client device, the redirect request including a uniform resource location (URL) of the source video and meta data providing video transcoding parameters based on properties of the client device; load balancing transcoding requests over multiple transcoding servers; and in response to receiving the redirect request to transcode the source video for the client device at a transcoding server; establishing a first session at the transcoding server with the origin server for retrieving source video data from the origin server based on the URL of the source video included in the redirect request, extracting profile settings associated with the source video, and establishing a second session at the transcoding server with the client device to provide transcoded source video data, the transcoding of the video based on the transcoding parameters included in the meta data of the redirect request and the extracted profile settings. - View Dependent Claims (18, 19, 20, 21, 22)
-
Specification