Patent ID: 8782165

Claim:
A method for transcoding a video stream that is delivered to an end-user device over a communications network, the method comprising: selecting a transcoding technique for the video stream; transcoding a portion of the video stream using the selected transcoding technique; streaming the transcoded portion of the video stream to the end-user device; while the transcoded portion of the video stream is being streamed to the end-user device, detecting a change in a condition of the communications network; selecting a different transcoding technique in response to the change in the condition of the communications network; transcoding a subsequent portion of the video stream using the different transcoding technique; and streaming the transcoded subsequent portion of the video stream to the end-user device, wherein detecting the change in the condition of the communications network is based upon a calculation of a difference between a presentation timestamp of a video frame in the video stream and an elapsed time of the video frame, wherein the presentation timestamp indicates a correct time to display the video frame at the end-user device and the elapsed time is the time between when a transcoding proxy begins to transmit video frames of the video stream to the end-user device and when the end-user device fully receives the video frame.