Background transcoding
First Claim
1. A computer implemented method comprising:
- maintaining, by a source device, in a transcode database, media status information that identifies;
media content to be synchronized to a target playback device during a next connection between the source device and the media playback device; and
device capability information regarding the target playback device;
while the target playback device is not connected to the source device, according to the media status information, anticipating, by the source device, a need to transcode media content for future download to the target playback device;
in response to the anticipating, the source device transcoding the media content on the source device before the target playback device is connected to the source device, wherein the transcoding comprises;
evaluating, by the source device, the device capability information stored in the transcode database to determine a media file format that the target playback device is capable of playing back;
transcoding the media content according to the device capability information, to generate transcoded media content in the media file format that the target playback device is capable of playing back; and
storing the transcoded media content in a transcode cache; and
while the target device is connected to the source device, according to the media status information, determining, by the source device, which media content is to be copied to the target playback device and whether or not the media content has been transcoded and stored in the transcode cache;
in an event that the media content has been transcoded and stored in the transcode cache, immediately transferring, by the source device, the media content to the target playback device;
in an event that the media content has not been transcoded and stored in the transcode cache, prioritizing, by the source device, a task of transcoding the media content to be copied to the target playback device above other transcoding tasks,wherein;
the source device is implemented as a personal computer;
the target playback device is implemented as a portable media player;
the media status information includes rules set up by a user to indicate which media content on the source device to be copied to the target playback device, the rules being entered by the user through a media player application on the source device; and
the media status information is maintained in the transcode database, located at the source device, while the target playback device is not connected to the source device.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and methods are described for transcoding media content in the background on a source computer device prior to such time as a target media playback device is connected to the source computer for synchronization of the media content. The system and methods anticipate which media content to background-transcode based on user input rules and media status data that are maintained in a transcode database. Pre-transcoding media content provides advantages that include a significant reduction in the time needed to synchronize media content between a source computer and a target media playback device, and an efficient use of CPU power for transcoding media content at times when the CPU might otherwise stand idle.
142 Citations
29 Claims
-
1. A computer implemented method comprising:
-
maintaining, by a source device, in a transcode database, media status information that identifies; media content to be synchronized to a target playback device during a next connection between the source device and the media playback device; and device capability information regarding the target playback device; while the target playback device is not connected to the source device, according to the media status information, anticipating, by the source device, a need to transcode media content for future download to the target playback device; in response to the anticipating, the source device transcoding the media content on the source device before the target playback device is connected to the source device, wherein the transcoding comprises; evaluating, by the source device, the device capability information stored in the transcode database to determine a media file format that the target playback device is capable of playing back; transcoding the media content according to the device capability information, to generate transcoded media content in the media file format that the target playback device is capable of playing back; and storing the transcoded media content in a transcode cache; and while the target device is connected to the source device, according to the media status information, determining, by the source device, which media content is to be copied to the target playback device and whether or not the media content has been transcoded and stored in the transcode cache; in an event that the media content has been transcoded and stored in the transcode cache, immediately transferring, by the source device, the media content to the target playback device; in an event that the media content has not been transcoded and stored in the transcode cache, prioritizing, by the source device, a task of transcoding the media content to be copied to the target playback device above other transcoding tasks, wherein; the source device is implemented as a personal computer; the target playback device is implemented as a portable media player; the media status information includes rules set up by a user to indicate which media content on the source device to be copied to the target playback device, the rules being entered by the user through a media player application on the source device; and the media status information is maintained in the transcode database, located at the source device, while the target playback device is not connected to the source device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer-readable storage medium encoded with processor-executable instructions that, when executed on a processor, direct a computing system to perform a method, the method comprising:
-
receiving, by the computing system, media status information that identifies user-specified media content to be synchronized to a target playback device, wherein the media status information is received while the target playback device is not connected to the computing system; maintaining, by the computing system, in a transcode database, the media status information; receiving, by the computing system, the media content; determining, by the computing system, that the target playback device is intended to be synchronized with the media content; generating, by the computing system, transcoded media content by transcoding the media content for the target playback device before the target playback device is connected to be synchronized; while the target device is connected to the computing system, according to the media status information, determining, by the computing system, which media content is to be copied to the target playback device and whether or not the media content has been transcoded and stored in a transcode cache; in an event that the media content has been transcoded and stored in the transcode cache, immediately transferring, by the computing system, the media content to the target playback device; in an event that the media content has not been transcoded and stored in the transcode cache, prioritizing, by the computing system, a task of transcoding the media content to be copied to the target playback device above other transcoding tasks; determining, by the computing system, if another target playback device is intended to be synchronized with the media content, according to media status information maintained in the transcode database; deleting, by the computing system, the transcoded media content from a transcode cache if it is determined that another target playback device is not intended to be synchronized with the media content; and retaining, by the computing system, the transcoded media content in the transcode cache if another target playback device is intended to be synchronized with the media content. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A computer system comprising:
-
memory and a processor; a media library module, stored in the memory and executable on the processor, configured to store media content; and a transcode architecture module, stored in the memory and executable on the processor, configured to pre-transcode at least a portion of the media content in anticipation of a connection between a portable playback device and the computer system, the transcode architecture module comprising; a transcode cache; a transcode database comprising media status information that indicates; user-specified media that the user desires to synchronize to the portable playback device during a next connection, wherein the media status information is received while the portable playback device is not connected to the computer; and device capability information regarding media formats supported by the portable playback device; and
a transcode manager configured to;determine, from the device capability information stored in the transcode database, one or more media file formats that the portable playback device is capable of playing back; transcode media content according to the one or more media file formats the portable playback device is capable of playing back; store transcoded media content in the transcode; and while the target device is connected to the computing system, according to the media status information, determine, by the computing system, which media content is to be copied to the target playback device and whether or not the media content has been transcoded and stored in the transcode cache;
in an event that the media content has been transcoded and stored in the transcode cache, immediately transferring, by the computing system, the media content to the target playback device; and
in an event that the media content has not been transcoded and stored in the transcode cache, prioritizing, by the computing system, a task of transcoding the media content to be copied to the target playback device above other transcoding tasks. - View Dependent Claims (27, 28, 29)
-
Specification