Internet content is often unavailable on consumer electronics without a dedicated device to facilitate the reception and rendering of downloaded content. For example, many people use Internet content hosting sites to store pictures, video, audio and the like. However, they are usually only able to share and view that content on a personal computer unless they purchase and install a dedicated device that provides downloading and rendering of the content on a consumer electronic device such as a television. Such dedicated devices are often expensive, difficult to set up and limited in functionality. In one example, dedicated devices often do not provide appropriate monitoring, synchronization and updating of content, allowing downloaded content to become outdated and stale. In another example, the dedicated devices may require complex programming to achieve the desired results.
In view of the foregoing, methods and systems for managing, synchronizing and distributing content are needed.
According to one or more aspects, a method and system for coordinating the distribution of content may include a coordinating device that monitors a content service or provider for new content. Upon detection of new content, the coordinating device may propagate the new content or information associated with the new content to a receiving device. The receiving device may include a personal video recorder (PVR), a personal computer (PC) or other device that may store and/or render content for display on a consumer electronic device such as a television. Similarly, new or updated content on a device in the local network may be propagated to one or more content services. For example, if a new picture is placed in a folder of the local network, a coordinating device may detect the addition of the new picture and upload the picture of a shared album on an image hosting/sharing service. In one or more arrangements, the coordinating device may further be used to update and synchronize metadata of content items across various devices.
This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. The Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
The foregoing summary of the invention, as well as the following detailed description of illustrative embodiments, is better understood when read in conjunction with the accompanying drawings, which are included by way of example, and not by way of limitation with regard to the claimed invention.
In the following description of various illustrative embodiments, reference is made to the accompanying drawings, which form a part hereof, and in which is shown, by way of illustration, various embodiments in which the invention may be practiced. It is to be understood that other embodiments may be utilized and structural and functional modifications may be made without departing from the scope of the present invention.
Computer executable instructions and data used by processor 128 and other components within mobile terminal 112 may be stored in a computer readable memory 134. The memory may be implemented with any combination of read only memory modules or random access memory modules, optionally including both volatile and nonvolatile memory. Software 140 may be stored within memory 134 and/or storage to provide instructions to processor 128 for enabling mobile terminal 112 to perform various functions. Alternatively, some or all of mobile device 112 computer executable instructions may be embodied in hardware or firmware (not shown).
Mobile terminal 112 may be configured to receive, decode and process digital broadband broadcast transmissions that are based, for example, on the DVB standard, through a specific DVB receiver 141. The mobile device may also be provided with other types of receivers for digital broadband broadcast transmissions. Additionally, mobile terminal 112 may also be configured to receive, decode and process transmissions through FM/AM Radio receiver 142, WLAN transceiver 143, and telecommunications transceiver 144. Transceivers 143 and 144 may, alternatively, be separated into individual transmitter and receiver components (not shown). In one aspect of the invention, mobile terminal 112 may receive Radio Data System (RDS) messages. Other transmission and reception systems may also be used including Bluetooth transceivers. In one or more instances, signals may be transmitted to and received from another mobile terminal (not shown). For example, audio, video and other signals may be transmitted between two terminals using various transmission protocols such as wireless local area networks (WLANs), General Packet Radio Service (GPRS), third generation mobile system technology (3G), Bluetooth and/or Universal Plug and Play (UPnP). Such networks may be used to access or support local networks or remote networks such as the Internet.
Content server 205 may include file sharing services, content hosting services, content providers and the like. File sharing services may allow users to distribute various types of contents like music, photos, videos and audio to other users using the service (e.g., peer-to-peer distribution services) while content hosting services may provide storage space for a user's library of content. Examples of content hosting services include FLICKR, IMEEM, GOOGLE VIDEO, YOUTUBE and VIZREA. For content hosting services, a user may control access rights to the content or content may be public. As such, a user may specify the extent to which his or her content may be distributed. In contrast to file sharing and content hosting services, content providers may originate and distribute content such as television programs, music, radio, movies, video games and the like upon request (and often purchase) of a user.
Coordinating device 215 and media device 210 may be parts of a local or home network. In one or more configurations, coordinating device 215 may be connected to a local or home network using tunneling techniques. Each of devices 215 and 210 may further be UPnP enabled for connecting to and communicating through the local or home network. In one example, coordinating device 215 may transmit content to media device 210 for subsequent playback or display using UPnP transmission protocols. Alternatively or additionally, coordinating device 215 may transmit a uniform resource identifier (URI) to media device 210. Media device 210 may then retrieve the content from the specified URI for playback or rendering. Additionally, media device 210 may upload information to a network (e.g., to content server 205) through coordinating device 215 or through an independent connection. Coordinating device 215 may serve as a mediator or facilitator that coordinates the transmission of information to and from devices in a local network. In one or more configurations, a local home network may include a content storage device for storing a coordinating device user's personal content since coordinating devices like mobile telephones often have limited storage capacity. Thus, content downloaded to or otherwise available on a user's coordinating device (e.g., device 215) may be manually or automatically transmitted to a local home network for storage. Further, information associated with content such as metadata tags may be updated in a similar fashion. Alternatively or additionally, device 215 may be used to coordinate the propagation of information to and from a device (not shown) not on a local network to which device 215 is connected.
In step 305, the coordinating device may determine whether new or updated content exists on the content service. The determination may be made according to the methods described. In step 310, the coordinating device may determine whether the new or modified content is desired by a user. In one example, the coordinating device may compare predefined criteria with metadata (e.g., author, genre, era) and/or other information associated with the one or more new or modified content items. If the coordinating device determines that new or modified content exists and that a user would be interested in the content, the coordinating device may identify a version of content to send to a local or home device based on specified preferences in step 315. For example, if the local device has low storage capacity, the local device may request low quality versions of content. In another example, if the local device only supports up to a certain resolution, the local device may request and retrieve content versions that do not exceed the device's display or rendering capabilities. Accordingly, in step 320, the coordinating device may forward a URI and/or metadata to the local device on the local network in accordance with one or more specified preferences. If no preferences are indicated or set or if only one version exists, the coordinating device may forward the URI and/or metadata associated with the content without making the determination of step 315.
In transmitting the URI to the local device, the coordinating device may or may not provide instructions to the device to download the content. In one example, the coordinating device may allow the local device to independently determine whether to download the content based on information available to the local device (e.g., network congestion, download priority). In another example, the coordinating device might not instruct the local device to download the content to conserve storage space until (or shortly before) the content is needed. Thus, if a user schedules viewing of a particular program or content item ahead of time, the local device may retrieve the content sufficiently prior to the scheduled viewing time so that the content may be viewed without interruption. Interruptions may occur due to content buffering (e.g., for streaming downloads) or network problems.
Additionally or alternatively, in one or more instances where the local device does not have network access to the content service, the coordinating device may act as an access point for downloading the content to the local device. The coordinating device may facilitate the download in a variety of ways including fully downloading the content item to the coordinating device before sending the content to the local device or facilitating a streaming download (e.g., if the content item is too large to be fully downloaded to the coordinate device).
Once the content and/or the URI thereof has been transmitted to the local device, the coordinating device may store and maintain a database to associate or link the various versions of a content item together in step 325. Using such a method may allow a user to obtain a different version of a content item if he or she is dissatisfied with a current version without having to conduct extensive searches for a different and/or desired version.
In one or more configurations, the local device may directly retrieve a content item from a content source using a provided URI. The metadata associated with the content item, however, may be propagated to the local device from the coordinating device and subsequently associated with the received content. A coordinating device may use various protocols for uploading the metadata to the local device including UPnP control point application programming interface (API) (e.g., UpdateObject functionality). Such configurations may be used in the event metadata cannot be pulled, by the local device, from web or content feeds or other non-UPnP compatible sources.
Additionally, a coordinating device may also serve as a coordinator for automatically uploading content based on one or more specified criteria.
If new or updated content items are identified, the coordinating device may further identify particular versions of the new or updated content items to upload in step 410. Users may specify, for example, that only reduced-size versions of content be uploaded. Accordingly, the coordinating device may identify the appropriate version based on user preferences and/or other factors. According to one or more aspects, if a specified upload version of the content is not available, either the second device or the coordinating device may create the specified upload version (e.g., reduced-size version) prior to transmission to the content service. An upload version, as used herein, generally relates to a version of content designated for upload or transmission to another device. The coordinating device may then upload or provide instructions for uploading the new and/or updated items to a content service in step 415. Uploading may be performed in various manners. In one or more arrangements, the coordinating device may instruct the second device to upload the identified content items to a specified content service. In particular, the coordinating device may provide a URI of the content service to the second device. Additionally, the second device may create the upload version if one is not already available. Alternatively, the coordinating device may request and retrieve the identified content items from the second device and upload the content to a content service. In these alternative instances, the coordinating device may be responsible for creating the upload version if the version is not already available.
In addition to propagation of new or updated content items, a coordinating device may further update and propagate metadata associated with content items.
In step 505, the coordinating device may determine whether metadata tags associated with one or more content items have been added, changed or otherwise modified. The determination may be performed by comparing the retrieved metadata with the metadata currently stored in a database of the coordinating device. The new or modified metadata may thus be identified in step 510 based on the determination of step 505. The new and/or modified metadata may then be propagated/uploaded to various content services in step 515. Content services may be automatically selected by the coordinating device based on known available services or may be pre-selected by a user based on preferences and/or other factors. In one or more configurations, a coordinating device such as a mobile telephone may be manufactured with predefined content sharing services. Alternatively or additionally, a content service may be selected if the content service already has metadata corresponding to the content item to be uploaded.
According to one or more arrangements, a second device in the local network may support various metadata harvesting protocols such as International Press Telecommunications Council (IPTC) metadata harvesting. Thus, in one example, metadata changes made to IPTC tags using a content management application may be imported (automatically or manually) to a second device such as a media server. The metadata may then be automatically propagated to various content services through a coordinating device according to the method described in
In some instances, content to be propagated to a local device might not be in a compatible format. For example, a local device may only have a PDF viewer while the content is formatted as a MICROSOFT WORD document.
The above methods for converting content from a first format to a second format may similarly be used for content being propagated from a local content store to a content service. Accordingly, a coordinating device may reformat an image for an image hosting site that only allows JPEGs and GIF formatted images if the image is in some other format.
As discussed, the coordinating device may include various types of computing devices including mobile telephones, PDAs and PCs. As such, the systems and methods described herein may be implemented through an application running on a PC. The PC may utilize UPnP functionality to communicate with media servers in the local network while using a wide area network connection (e.g., Internet connection) to communicate with one or more content services. The PC may also utilize content service APIs for various functions. Still further, the PC application may subscribe to web or content feeds such as RSS or Atom feeds for enabling automatic content pull/push between the local network and the content services.
While many aspects have been described with respect to propagating new or modified content in a second device of a local network or a content service, the methods and systems may also be used to propagate information from the coordinating device. For example, the coordinating device may maintain a database of content items and/or associated metadata corresponding to content and metadata stored by a content service and/or a second device. If a change is made to content and/or metadata thereof on the coordinating device, the changes may be propagated to either or both of the content service and the second device to insure synchronization of content and metadata. Additionally or alternatively, the coordinating device and the receiving device (e.g., the second device) might not be on the same local network. For example, the coordinating device may propagate content information to or from the second or receiving device through the Internet.
Further, a coordinating device may also maintain a database of URIs to content and metadata thereof associated with content that is downloaded to a second device or uploaded to a content service. By storing the content URIs and/or metadata, the coordinating device and/or a user thereof may share the content with others without having to share the actual content. Instead, the other users may use the URI to retrieve the shared content.
Additionally, the methods and features recited herein may further be implemented through any number of computer readable media that are able to store computer readable instructions. Examples of computer readable media that may be used include RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, DVD or other optical disk storage, magnetic cassettes, magnetic tape, magnetic storage and the like.
While illustrative systems and methods as described herein embodying various aspects of the present invention are shown, it will be understood by those skilled in the art, that the invention is not limited to these embodiments. Modifications may be made by those skilled in the art, particularly in light of the foregoing teachings. For example, each of the elements of the aforementioned embodiments may be utilized alone or in combination or subcombination with elements of the other embodiments. It will also be appreciated and understood that modifications may be made without departing from the true spirit and scope of the present invention. The description is thus to be regarded as illustrative instead of restrictive on the present invention.