Patent ID: 7801847

Claim:
A method for use with a plurality of plug-ins for converting a media file to a format which a media player on a computing device of a user is able to render, said method comprising: receiving an original media file including a first media content at the computing device of the user; identifying a file format of the received original media file; if the media player is able to render the identified file format, storing the original media file as a primary file in a database of a media library and further storing content data in the database, said content data relating to and identifying the first media content; if the media player is unable to render the identified file format: selecting a plug-in from the plurality of plug-ins as a function of the identified format of the original media file; providing the original media file to the selected plug-in wherein the selected plug-in generates a converted media file consisting of the first media content of the original media file in a second file format which the media player is able to render, wherein the rendering of the original file is the same as the rendering of the converted file; renaming the original media file as a function of the first media content and a predetermined naming convention; storing, by a media library of the computing device, the original media file as a shadow file hidden from the user on a computer readable storage media of the computing device of the user at a location determined as a function of the first media content and a predetermined locating convention; storing, by the media library, the converted media file on the computer readable storage media as a primary file; and storing content data in a database of the media library, said content data relating to and identifying the first media content of both the shadow file and the primary file without storing any association data between the shadow file and the primary file; receiving a request for transfer of the original file from the media player to a media device via a drag-and-drop action; receiving, by the media player from the media device, an identification of the media device; retrieving a list of supported file formats for the identified media device; if no shadow file corresponding to the original file exists, providing the primary file corresponding to the original file to the media device; and if the shadow file corresponding to the original file exists, providing the shadow file or the primary file to the media device based on a preference order specified in the retrieved list of supported file formats, wherein said providing comprises retrieving the shadow file from the determined location as a function of the first media content when the shadow file exists and is in a format preferred by the media device over the format of the primary media file.