Patent ID: 8818941

Claim:
A method of synchronizing a content playback device with a content management device, comprising: generating a plurality of containers on a content management device, each container storing a subset of content items within a media library, the subset of content items identified by applying filters to the media library in such a manner that a particular content item is in two or more of the plurality of containers, the content items being files that are to be played back on a content playback device; associating a container on the content management device with a container on the content playback device, the content playback device storing a plurality of containers, each container configured to store content items within; receiving an operation on the container on the content playback device; comparing the container on the content management device and any content items within the container with the container on the content playback device and any content items within, and if the container on the content management device and any content items within differ from the container on the content playback device and any content items within, then generating a list of tasks necessary to make the container on the content management device and any content items within the same as the container on the content playback device and any content items within; performing the list of tasks to accomplish at least a partial synchronization; while performing the list of tasks, detecting a concurrent user-directed addition, deletion or modification of a content item within one container of either the container on the content management device or the container on content playback device, and modifying the task list to add, delete or modify the content item, respectively, in the other container of either the container on the content management device or the container on the content playback device; and adding, deleting or modifying the content item, respectively, in accordance with the modified task list while performing the list of tasks and before finishing the at least partial synchronization.