Patent ID: 8903895

Claim:
A computer implemented method of dynamically preparing media content for delivery from a server to a client, said client comprising a client device and a media application for providing media playback on said client device, said computer implemented method comprising the steps of: receiving media attributes from said client, said media attributes comprising one or more playback formats compatible with said client; receiving from said client a request to provide a media segment comprising a selected segment of a selected media content item, said request defining a starting offset of said media segment; identifying a source where a media content file relating to said selected media content item is stored; obtaining said media content file from said source; obtaining a transcoded media segment file comprising a transcoded segment of said media content file, wherein said transcoded media segment file comprises a playback format selected from said media attributes; wherein said media attributes further comprise one or more transport formats compatible with said client, said computer implemented method further comprising the steps of: selecting a transport format from said media attributes; preparing said transcoded media segment file for delivery according to the transport format, thereby obtaining a prepared transcoded media segment file; and communicating a location of said prepared transcoded media segment file to said client; wherein said prepared transcoded media segment file comprises a currently prepared transcoded media segment, and wherein said request is provided after said client is disconnected while streaming a previously generated prepared transcoded media segment, wherein said starting offset is an offset during said previously generated prepared transcoded media segment when said streaming of said previously generated prepared transcoded media segment was disconnected; and wherein said previously generated prepared transcoded media segment was prepared by a different server, and wherein said currently prepared transcoded media segment is generated using a different transport format than a transport format employed when streaming said previously generated prepared transcoded media segment, and wherein said different transport format is selected from said media attributes.