Patent ID: 7774488

Claim:
A method for switching media streams of a video in a client system, said media streams being made available to the client system by a content providing system, said method comprising: a processor of a computer system receiving a first media stream of the video from the content providing system; said processor playing the first media stream in a SHOW mode in the client system as the first media stream is being received; during said playing the first media stream, said processor detecting an environmental change in an environment within or adjacent to the client system, said environmental change configured to activate executing a procedure for deciding whether to make a switch from playing the first media stream to playing a second media stream of the video, said second media stream differing from the first media stream with respect to a differentiating characteristic selected from the group consisting of a content modality, a color scheme, and a media stream bandwidth; responsive to said detecting the environmental change, said processor executing the procedure; said processor deciding from said executing the procedure to make the switch; and after said deciding, said processor switching from playing the first media stream to playing the second media stream in the SHOW mode as the second media stream is being received from the content providing system in response having been requested from the content providing system, said switching preserving video content continuity of the video, wherein said receiving the first media stream, said playing the first media stream, said detecting the environmental change, said executing the procedure, said deciding, and said switching are performed by said processor executing a media application in the client system, wherein timecodes identifying relative time within the video are distributed in the first media stream and the second media stream, and wherein said switching comprises: requesting the second media stream from the content providing system; after said requesting, receiving the second media stream from the content providing system such that the first and second media streams are being received concurrently with respect to their respective content; playing the second media stream in a HIDE mode in the client system while the second media stream is being received and while said playing the first media stream in the SHOW mode is being performed; and at a real time corresponding to a matching timecodes within a specified tolerance, in the first and second media stream, transitioning from playing the second media stream in the HIDE mode to playing the second media stream in the SHOW mode and stopping said playing the first media stream.