Patent ID: 8239905

Claim:
A method comprising: under control of one or more processors configured with executable instructions: receiving, at a first peer computing device of a peer-to-peer architecture, audio and video content associated with a presentation provided by a presenting computing device; receiving, at the first peer computing device, data content of presentation materials associated with the presentation; detecting a change in the data content of the received presentation materials, the detecting comprising determining that a difference between a latest frame and a previous frame of the data content of the received presentation materials is greater than a predetermined threshold; in response to detecting the change in data content of the received presentation materials, encoding the latest frame of the data content of the received presentation materials into a file, uploading the file to a web server, and querying a current timestamp of the audio and video content associated with the presentation; synchronizing the received audio and video content with the received presentation materials using one or more timestamps associated with each detected change of the data content of the received presentation materials; and sending the synchronized audio content, video content, and presentation materials to one or more other peer computing devices of the peer-to-peer architecture for consumption by the one or more other peer computing devices.