Patent ID: 8285886

Claim:
A method performed by data processing apparatus, the method comprising: receiving a media stream in a buffer, the received media stream including media messages, each media message comprising (i) a timed-sequence of video frames and (ii) audio channels that are synchronized with the timed-sequence of video frames, each audio channel including a number of channel-specific samples that are separated in time within each channel and are synchronized across the audio channels; decoding a media message from the buffer to obtain a decoded portion of the received media stream including a corresponding timed sequence of video frames and corresponding audio channels; responsive to a size of the buffer being less than or equal to a predetermined size, playing the decoded portion of the received media stream; responsive to the size of the buffer being more than the predetermined size, summing the audio channels corresponding to the decoded portion of the received media stream in a sum signal having the number of samples of the audio channels, analyzing in time domain the sum signal to determine a reduced number of samples to obtain down-sampled audio channels corresponding to the respective audio channels, each down-sampled audio channel to include the reduced number of samples, wherein said analyzing in the time domain comprises determining a time offset of the sum signal and a given number of samples to be removed from the sum signal starting at the determined time offset, generating based on the analyzing a modified portion of the media stream that includes the timed-sequence of video frames corresponding to the decoded portion of the received media stream and the down-sampled audio channels, and playing the modified portion of the media stream; while playing the decoded portion of the received media stream or the modified media stream, decoding a next media message from the buffer to obtain a decoded next portion of the received media stream; and processing the decoded next portion of the received media stream responsive to the size of the buffer relative to the predetermined size.