This patent application relates to a system and method for use with networked computer systems, according to one embodiment, and more specifically, to a system and method for aggregating online images and managing image streams.
The content available to networked computer users has increased significantly in recent years. Content sources accessible on public data networks can include search engines, social networks, personal websites or blogs, email hosts, businesses, or any of a variety of providers of network transportable digital content. Often, these content sources can include images, photographs, drawings, graphics, and the like. Increasingly, organizations and people are using various network sites, on-line communities, or social network sites for interacting with each other. Social networks have gained in popularity as people have started to use content sources and content itself as a basis for connecting with each other. Various conventional sites, such as facebook.com, twitter.com, linkedin.com, pinterest.com, and youtube.com are just a few examples of the community of content sources and social networks that have grown in popularity.
As the numbers and size of the content sources and social networks expand, it becomes more difficult to follow favored imagery across the community of content sources and social networks. Additionally, it is difficult to move this imagery to external devices in a real-time manner. As a result, users are not able to benefit from the continually changing imagery available from their community of content sources and social networks. Currently, the majority of internet users tend to upload their digital photos of special and memorable events to a social community (e.g., Facebook) to share with friends and family; however, due to a lack of viewing options, only a small percentage of those users actually go back to enjoy these pictures or even remember that they exist.
An example embodiment provides an easy-to-use application that seamlessly integrates with a social community (e.g., Facebook) and the images or image albums posted on a social community account. From the application, users can build their own image albums and then stream images from the created image albums to various devices, such as computers, computer screensavers, tablets, TV's, digital picture frames, and/or other rendering devices. The example embodiment allows users to follow people, albums or particular images from their own social community accounts and/or their friends' social community accounts. The example embodiment allows users to create a custom image stream from an image source of the user's choosing. This custom image stream can then be sent to others to view via a browser-based player, a screensaver application, and/or a rendering device application. The user can download the screensaver application or the device application to their computing platform or their digital picture viewing device. The rendering device can also have the screensaver application or the device application pre-installed on the device. The browser player, screensaver application (app) or the device application (app) can then stream or download the user's chosen images or the user's friend's social community images (depending on settings) to the user's screensaver or rendering device. These chosen images can stream directly from the chosen social community account to the browser player, the screensaver app, or the device app. The images update automatically and dynamically on the browser player, the screensaver app, or the device app and the corresponding rendering device according to the user-defined settings. Other embodiments include a capability for users to stream their images to Smart TVs, DVD apps, GoogleTV™, and AppleTV™ via a device app. In embodiments for streaming images to a digital picture frame, the system of an embodiment synchronizes (syncs) the digital picture frames with chosen images from the social community account, thereby alleviating this tedious process. Little effort is necessary for keeping images current on a digital picture frame. Setting up the digital picture frame can be performed from the easy-to-use application. A wireless network can be used to enable data communication between the easy-to-use application and the digital picture frame.
In one embodiment, a Really Simple Syndication (RSS) feed is used to stream the chosen images to the specified devices. Because of the large amount of changing content, users often seek mechanisms that help them manage, access, and use the content sources that interest them. One such mechanism uses an RSS feed. Generally, RSS provides web content or summaries of web content together with links to the full versions of the content, and other meta-data. This information is delivered as an Extensible Markup Language (XML) file typically called an RSS feed, web feed, RSS stream, or RSS channel. RSS feeds enable a user to subscribe to a content provider's website, or the like, and receive a content feed in a defined format. Other services can provide an alert indicating when a change to the content has occurred. The various embodiments can use RSS feeds to send or receive an updated set of images from a specified content source to a specified rendering device.
In another embodiment, a JSON (JavaScript Object Notation) format can be used to stream the chosen images to the specified devices. JSON is a text-based open standard designed for human-readable data interchange. The JSON format is often used for serializing and transmitting structured data over a network connection. JSON can be used in an embodiment to transmit data between a server, device, or application, wherein JSON serves as an alternative to XML.
In a particular embodiment, a host or host website is used to provide access to the easy-to-use application described herein. The host can be accessed using conventional means for accessing an internet website. In the particular embodiment, the host does not need to store any images or image albums. Rather, all images are streamed live from a selected content source to a selected user rendering device. In one embodiment, all images are streamed live via an RSS or JSON feed using a social community (e.g., Facebook) Application Programming Interface (API) between a social community account and a chosen rendering device. The host simply stores the data for managing the image stream, such as data identifying the images to display, data specifying when to display the images, and data specifying how to display the images. The host can relay this information live on the fly to the browser player, the screensaver app, or the device app. The browser player, the screensaver app, or the device app can then communicate directly with the social community site (or other content source) via the APIs to get the desired images in the order specified by use of the host site.
Another embodiment also provides a Mobile Event Application, which allows users and businesses to create events or event albums that provide other users the capability of posting images directly to the event album. This is a very innovative tool for the hosts of special events, such as weddings, concerts, birthday parties, sports events, etc. By providing permission to the guests of the events to upload images directly to the event albums, at the end of the event, the album will comprise a compilation of each guest's memories and footage from different user's perspectives.
The various embodiments is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings in which:
In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the various embodiments. It will be evident, however, to one of ordinary skill in the art that the various embodiments may be practiced without these specific details.
Referring to
Content sources 130 can also represent network-accessible sites on which individuals, businesses, organizations, or other entities may create personalized information data sets that provide information about the entity, images related to the entity, and typically a means for communicating with the entity. Such personalized information data sets, often organized on various social network sites or communities (e.g., Facebook), can include photos, graphics, photo albums, animations, video or audio clips, organizational information, product/service information, contact information, historical information, or a wide variety of structured or unstructured information related to a particular entity. Various conventional sites, such as facebook.com, twitter.com, linkedin.com, and pinterest.com are just a few examples of the available content sources 130. It will be apparent to those of ordinary skill in the art that content sources 130 can be any of a variety of networked content providers. It will also be apparent to those of ordinary skill in the art that content sources 130 can include a variety of network sites including, social network sites, data aggregation sites, marketing sites, photo sharing sites, and the like. The image stream management site 110, content sources 130, and user platforms 140 (described below) may communicate and transfer information via a wide area data network (e.g., the Internet) 120. Various components of the image stream management site 110 can also communicate internally via a conventional intranet or local area network (LAN) 114.
Networks 120 and 114 are configured to couple one computing device with another computing device. Networks 120 and 114 may be enabled to employ any form of computer readable media for communicating information from one electronic device to another. Network 120 can include the Internet in addition to LAN 114, wide area networks (WANs), direct connections, such as through a universal serial bus (USB) port, other forms of computer-readable media, or any combination thereof. On an interconnected set of LANs, including those based on differing architectures and protocols, a router acts as a link between LANs, enabling messages to be sent between computing devices. Also, communication links within LANs typically include twisted wire pair or coaxial cable, while communication links between networks may utilize analog telephone lines, full or fractional dedicated digital lines including T1, T2, T3, and T4, Integrated Services Digital Networks (ISDNs), Digital User Lines (DSLs), wireless links including satellite links, or other communication links known to those of ordinary skill in the art. Furthermore, remote computers and other related electronic devices can be remotely connected to either LANs or WANs via a modem and temporary telephone link.
Networks 120 and 114 may further include any of a variety of wireless sub-networks that may further overlay stand-alone ad-hoc networks, and the like, to provide an infrastructure-oriented connection. Such sub-networks may include mesh networks, Wireless LAN (WLAN) networks, cellular networks, and the like. Networks 120 and 114 may also include an autonomous system of terminals, gateways, routers, and the like connected by wireless radio links or wireless transceivers. These connectors may be configured to move freely and randomly and organize themselves arbitrarily, such that the topology of networks 120 and 114 may change rapidly.
Networks 120 and 114 may further employ a plurality of access technologies including 2nd (2G), 2.5, 3rd (3G), 4th (4G) generation radio access for cellular systems, WLAN, Wireless Router (WR) mesh, and the like. Access technologies such as 2G, 3G, 4G, and future access networks may enable wide area coverage for mobile devices, such as one or more of client devices 141, with various degrees of mobility. For example, networks 120 and 114 may enable a radio connection through a radio network access such as Global System for Mobile communication (GSM), General Packet Radio Services (GPRS), Enhanced Data GSM Environment (EDGE), Wideband Code Division Multiple Access (WCDMA), CDMA2000, and the like. Networks 120 and 114 may also be constructed for use with various other wired and wireless communication protocols, including TCP/IP, UDP, SIP, SMS, RTP, WAP, CDMA, TDMA, EDGE, UMTS, GPRS, GSM, UWB, WiMax, IEEE 802.11x, and the like. In essence, networks 120 and 114 may include virtually any wired and/or wireless communication mechanisms by which information may travel between one computing device and another computing device, network, and the like. In one embodiment, network 114 may represent a LAN that is configured behind a firewall (not shown), within a business data center, for example.
The content sources 130 may include any of a variety of providers of network transportable digital content. Typically, the file format that is employed is Extensible Markup Language (XML), however, the various embodiments are not so limited, and other file formats may be used. For example, data formats other than Hypertext Markup Language (HTML)/XML or formats other than open/standard data formats can be supported by various embodiments. Any electronic file format, such as Portable Document Format (PDF), Joint Photographic Experts Group (JPEG) format, Tagged Image File Format (TIFF), audio/video (e.g., Motion Picture Experts Group Audio Layer 3—MP3, MP4, and the like), and any proprietary interchange format defined by specific content sites can be supported by the various embodiments described herein.
In a particular embodiment, a user platform 140 with one or more client devices 141 enables a user to access image stream management site 110 via the network 120. Client devices 141 may include virtually any computing device that is configured to send and receive information and/or images over a network, such as network 120. Such client devices 141 may include portable or mobile devices 143 such as, cellular telephones, smart phones, display pagers, radio frequency (RF) devices, infrared (IR) devices, global positioning devices (GPS), Personal Digital Assistants (PDAs), handheld computers, wearable computers, tablet computers, laptop computers, integrated devices combining one or more of the preceding devices, and the like. Client devices 141 may also include other computing devices, such as personal computers (PCs) 142, multiprocessor systems, microprocessor-based or programmable consumer electronics, network PC's, and the like. Client devices 141 may also include other computing or imaging devices 144 and/or 145, such as electronic picture frame devices, wireless application devices, rendering devices, players, consumer electronic devices, networked imaging devices, image rendering devices, monitors, televisions (TVs), smart TVs, and the like. As such, client devices 141 may range widely in terms of capabilities and features. For example, a client device configured as a cell phone may have a numeric keypad and a few lines of monochrome LCD display on which only text or simple images may be displayed. In another example, a web-enabled client device may have a touch sensitive screen, a stylus, and a color LCD or plasma display on which text, images, and/or graphics may be displayed. Moreover, the web-enabled client device may include an application enabled to receive and to send wireless application protocol messages (WAP), and/or wired application messages, and the like. In one embodiment, the application is enabled to employ HyperText Markup Language (HTML), Dynamic HTML, Handheld Device Markup Language (HDML), Wireless Markup Language (WML), WMLScript, JavaScript, EXtensible HTML (xHTML), Compact HTML (CHTML), and the like, to display images and transfer messages with relevant information.
Client devices 141 may also include at least one client application that is configured to receive content or messages from another computing device via a network transmission. In one embodiment, the client application can include a screensaver application 146. In general, screensaver apps for displaying images on a display screen during idle times are well known. In an embodiment described herein, the screensaver app 146 is reconfigured to automatically and periodically communicate directly with one or more content sources 130 via the network 120 to download images or receive an image stream directly from the one or more content sources 130 under the control and configuration of the image stream management site 110. The received images can then be displayed by the screensaver app 146 on one or more rendering devices of the user platform 140 as configured by the user. Similarly, the user platform 141 can include a browser player 147 that can also be used to download or stream images directly from the one or more content sources 130 under the control and configuration of the image stream management site 110. Standard browser players are well-known in the conventional technology. In another embodiment, a device app 151 can also be used to download or stream images directly from the one or more content sources 130 under the control and configuration of the image stream management site 110. In general for the various embodiments, the user platform 140 requires a software component (e.g., a browser player, a screensaver app, or device app) plus a hardware component (e.g., a display device, a digital picture frame, a TV, or other rendering device). The software components and the hardware components for rendering the images can be paired in a variety of ways. Once a pairing of software/hardware components is established under control of the user, the pairing of software/hardware components can be configured to stream images via RSS (or JSON), locally download, store, and display the images, or both. The browser player is typically part of any conventional browser. The screensaver app or the device app can be downloaded to a rendering device or pre-installed in the rendering device. In the various embodiments described herein, the image stream management site 110 does not need to store the images downloaded or streamed to the one or more rendering devices of the user platform 140.
Referring still to
Referring now to
As described in more detail below in connection with
Referring again to
In a particular embodiment, the host 110 is used to provide access for a user at user platform 140 to the image stream management system 200 of an example embodiment, which hosts or facilitates the easy-to-use application described herein. In one embodiment, the entire application can be hosted at site 110. In other embodiments, the application can be split with a portion operating on the host site 110 and a portion operating on the user platform 140. The image stream management system 200 can be accessed using any conventional means for accessing an internet website via network 120. In the particular embodiments described herein, the host 110 does not need to store any images or image albums. Rather, all images are streamed live from a selected content source 130 to a selected user rendering device 148-150. In one embodiment, images can be streamed live via an RSS or JSON feed using a social community (e.g., Facebook) Application Programming Interface (API) between a social community account and a chosen rendering device 148-150. The host 110 simply stores the data for managing the image stream, such as data identifying the images to display, data specifying when to display the images, and data specifying how to display the images on the rendering device 148-150. The host 110 can relay this information live on the fly to the browser players, screensaver apps, and/or device apps of the rendering devices 148-150. The browser players, screensaver apps, and/or device apps of the rendering devices 148-150 can then communicate directly with the social community site (or other content sources 130) via the APIs to get the desired images in the order specified by use of the host site 110. In an example embodiment, the image data acquisition module 210 can use the site interfaces module 250 to obtain the appropriate APIs for each of the social community sites or other content sources 130 from which the browser players, screensaver apps, and/or device apps of the rendering devices 148-150 obtain images.
As shown in areas 407 and 409 of
Referring now to
Referring now to
In an example embodiment, a user can configure the set of images from one or more image albums for automatic, periodic, and direct transfer from a particular content source 130 to a selected rendering device 148-150 on the user platform 140. As shown in
The configuration of an image stream can also be used to define the particular rendering device(s) 148-150 of the user platform 140 that are used to display the image stream. For example, the user can specify that the image stream is to be streamed to a digital picture frame device in data communication with the user platform 140. In response to this selection, the image stream management system 200 can use the APIs to configure the screensaver app 146, the browser player 147, or the device app 151 on the selected rendering device to initiate the streaming of the specified image stream directly from the pre-configured image source(s). The image data acquisition module 210 of an example embodiment can use the site interfaces module 250 to obtain the appropriate APIs for each of the content sources 130 from which the screensaver apps 146, the browser player 147 or the device app 151 of the rendering devices 148-150 obtain the images for presentation. In this manner, the images can be automatically streamed to the digital picture frame device of the user platform 140 without requiring the user to manipulate the digital picture frame device directly. The example embodiment thereby enables the image stream management system 200 to integrate with the digital picture frame device and to automatically stream images to the user rendering device without further action by the user. Because the image stream is sourced from a corresponding image album at a content site 130, the presentation of images on the user rendering device will automatically update as new images are added to the image album at the corresponding content site 130.
Referring now to
Another embodiment also provides a Mobile Event Application, which allows users and businesses to create events that provide other users the capability of posting images directly to the event's albums. This is a very innovative tool for the hosts of special events, such as weddings, concerts, birthday parties, sports events, etc. By providing permission to the guests of the events to upload images directly to the event albums, at the end of the event, the image album will comprise a compilation of each guest's memories and footage from different user's perspectives.
In another embodiment, the image stream management system 200 can use appropriate APIs for each of the content sources 130 from which the screensaver apps 146, the browser player 147, or the device app 151 of the rendering devices 148-150 obtain images for presentation. These APIs can be used to obtain information related to the identities of the users who have linked image streams to particular images or image albums. In this manner, a user can obtain information identifying the other users who are viewing or using images or image albums of interest. This information can be included in the analytics information captured by the analytics module 260 of the image stream management system 200 as described in more detail below.
Referring to
In an example embodiment, the analytics module 260 can generate data sets that correspond to the usage (e.g., viewing, downloading, or streaming) of images or image albums relative to a plurality of people or entities associated with the images or image albums. Similarly, the analytics module 230 can also generate data sets that correspond to the aggregated image usage data relative to a plurality of content sources 130. Moreover, the analytics module 230 can also generate aggregate relevance scores that correspond to the aggregated image viewing activity relative to a plurality of people or entities, a plurality of content sources, and a plurality of rendering devices. Thus, the analytics module 230 can generate a variety of relevance score data that corresponds to an online presence across multiple people or entities, multiple content sources, and multiple rendering devices. This generated analytics data can be computed by the analytics module 260 and stored in database 105. This relevance score data can be useful for generating targeting advertising and for generating information for compensating the content sources 130 or for attribution of the content sources 130.
Referring now to
The example computer system 700 includes a data processor 702 (e.g., a central processing unit (CPU), a graphics processing unit (CPU), or both), a main memory 704 and a static memory 706, which communicate with each other via a bus 708. The computer system 700 may further include a video display unit 710 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)). The computer system 700 also includes an input device 712 (e.g., a keyboard), a cursor control device 714 (e.g., a mouse), a disk drive unit 716, a signal generation device 718 (e.g., a speaker) and a network interface device 720.
The disk drive unit 716 includes a non-transitory machine-readable medium 722 on which is stored one or more sets of instructions (e.g., software 724) embodying any one or more of the methodologies or functions described herein. The instructions 724 may also reside, completely or at least partially, within the main memory 704, the static memory 706, and/or within the processor 702 during execution thereof by the computer system 700. The main memory 704 and the processor 702 also may constitute machine-readable media. The instructions 724 may further be transmitted or received over a network 726 via the network interface device 720. While the machine-readable medium 722 is shown in an example embodiment to be a single medium, the term “machine-readable medium” should be taken to include a single non-transitory medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions. The term “machine-readable medium” can also be taken to include any non-transitory medium that is capable of storing, encoding or carrying a set of instructions for execution by the machine and that cause the machine to perform any one or more of the methodologies of the various embodiments, or that is capable of storing, encoding or carrying data structures utilized by or associated with such a set of instructions. The term “machine-readable medium” can accordingly be taken to include, but not be limited to, solid-state memories, optical media, and magnetic media.
The Abstract of the Disclosure is provided to comply with 37 C.F.R. §1.72(b), requiring an abstract that will allow the reader to quickly ascertain the nature of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. In addition, in the foregoing Detailed Description, it can be seen that various features are grouped together in a single embodiment for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting an intention that the claimed embodiments require more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive subject matter lies in less than all features of a single disclosed embodiment. Thus the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separate embodiment.