Networked television device with knowledge-based media content recommendations and integrated user interface
The network-connected television device with a unified user interface addresses the lack of integrated content organization and playback control by offering personalized, category-based recommendations and supporting multiple content sources, enhancing user interaction and content organization, including restricted modes.
Patent Information
- Application Number
- JP2023168484
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2023-09-28
- Publication Date
- 2025-10-02
- Estimated Expiration
- 2040-03-13
AI Technical Summary
Existing media display devices lack a unified user interface that effectively organizes and recommends media content based on user interests and activities, often requiring separate interfaces for content browsing and playback control, and fail to seamlessly integrate content from different sources.
A network-connected television device with a unified user interface that integrates media content recommendations, organized by categories and user interests, using a knowledge-based system to provide personalized content suggestions and support both restricted and unrestricted playback modes, while allowing content from multiple providers to be displayed together.
The solution provides a seamless and personalized media content experience, enabling integrated playback and recommendation across different sources, with enhanced user interaction and content organization, including restricted modes for age-appropriate viewing.
Smart Images

Figure 0007748429000001 
Figure 0007748429000002 
Figure 0007748429000003
Abstract
Description
[Technical Field]
[0001] The present application generally relates to display technologies, including, but not limited to, methods and systems for providing knowledge-based media content recommendations, displaying content-based media recommendations and integrated user interfaces, blending multiple media content items displayed in a focus area, and / or casting controlled media content associated with a network-connected television device. [Background technology]
[0002] background Media display devices are used to stream various media content (e.g., television programs, movies, live broadcasts, personal videos, etc.) over one or more communication networks. Media display devices include various connected display devices, such as mobile phones, set-top boxes, or connected television devices. The connected television devices are often controlled via a remote control interface, which may be displayed directly on the media display device or separately on a second-screen mobile device (e.g., a tablet computer, laptop, or mobile phone). A user can browse lists of content items and search for media content on a user interface displayed on the television device while controlling the playback of the media content via a dedicated remote device or a second-screen mobile device (e.g., a tablet computer, laptop, or mobile phone). However, the list of content items is often organized based on a media playback application configured to play the content items in the list. Summary of the Invention [Means for solving the problem]
[0003] overview The present application is directed to presenting a unified user interface with content-based media recommendations on a network-connected television (TV) device (sometimes referred to as a smart TV). The unified user interface is configured to display multiple media content recommendations selected for a particular user based at least in part on knowledge of that user's interests and activities (e.g., the user's search queries, search results, previous viewing history, purchase history, the user's physical activity). In one embodiment, the media content recommendations are organized based on one or more categories, such as content type (e.g., "action movies"), viewing history (e.g., "because you watched movie ABC"), release time (e.g., "trending"), etc. In one embodiment, media content provided by different content sources (e.g., action movies from two different streaming services and a broadcast TV channel) may be recommended within the same cluster.
[0004] In one embodiment, the integrated user interface includes a focus area (e.g., a prominently displayed area of the user interface) configured to sequentially display a series of media content items (e.g., advertisements, movie trailers, product images) in chronological order for the purpose of promoting a media content item, product, or event.
[0005] In some embodiments, a user initiates playback of a content item from the integrated user interface by selecting an icon or thumbnail corresponding to the content item. In some embodiments, playback of media content items selected from the unified user interface is handled by a dedicated application associated with a particular media streaming service or broadcast channel, a cable or over-the-air (OTA) tuner, a web browser, or an internal casting application associated with the connected TV displaying the user interface. In some embodiments, playback of content items is handled collaboratively by a media playback application and a local content casting application, particularly when playback occurs in a restricted mode not supported by the media playback application (e.g., in an age-restricted system context such as a media playback interface customized for children). In some embodiments where the unified user interface provides both restricted and unrestricted modes and only the media playback application supports unrestricted mode, the media playback application is used to play media content when the user interface is in unrestricted mode, and a local casting application is used to play media content items when the system is in restricted-mode media playback.
[0006] In various embodiments, the unified user interface is coupled to a server system that hosts a virtual user domain that includes user accounts associated with users of the user interface. Hardware devices and software applications are integrated with each other through the user accounts in the virtual user domain. In one embodiment, the user account is associated with a network-connected television device, and the unified media application is configured to present the unified user interface on the television device. The user account may also be associated with one or more home devices (e.g., a camera, a doorbell, and / or a hazard detector), one or more media playback devices (e.g., a set-top box and / or associated television device), one or more assistant devices (e.g., a speaker assistant and / or a display assistant device), and their corresponding home security, media playback, and assistant applications. The user account may also be associated with general user applications, such as email applications, social media applications, map applications, and online retail applications.
[0007] In one embodiment, and only to the extent authorized by the user, the server system learns about the user's interests and activities from information reported by various applications associated with the user's account and generates, from this information, targeted media content recommendations for the user. These recommendations are displayed on an integrated user interface of a networked television device that is communicatively coupled to the server system, third-party content providers, electronic program guide (EPG) providers, and advertising (advertising) providers via one or more communications networks.
[0008] Specifically, in one aspect, a method for identifying media content items for presentation on a network-connected television device is implemented in a server system that hosts a virtual user domain including a user account. The method includes associating the user account with an integrated TV application, a plurality of media playback applications, and a plurality of user applications. The integrated TV application is associated with the network-connected television device, and the plurality of user applications includes at least an Internet search engine. The method includes storing, for each of the integrated TV application, the media playback application, and the user application, respective activity data, the storing including storing search queries and search results for a plurality of search operations performed by the Internet search engine from the user account; The method includes storing viewing information associated with the user account for a subset of the media playback applications and storing purchase information associated with the user account for the subset of the user applications. The method further includes calculating a multi-dimensional integrated user activity characteristic from the stored activity data and obtaining program information associated with the plurality of media playback applications, resulting in de-duplicated program information for a plurality of unique media programs. The method further includes identifying an ordered subset of the unique programs according to the user activity characteristic and the program information for the plurality of unique programs, and enabling an ordered sequence of information items corresponding to the ordered subset of the unique programs to be displayed via the integrated TV application. Each information item represents a respective unique program provided by the corresponding media playback application.
[0009] In another aspect, a program presentation method is implemented on a network-connected television device linked to a user account in a virtual user domain hosted by a server system. The program presentation method includes executing a unified TV application to display a unified user interface and retrieving from the server a media recommendation stream including an ordered sequence of selectable information items corresponding to an ordered set of unique media content items or programs. For each selectable information item, the media recommendation stream includes a respective command that is executed in response to a user selection of the respective selectable information item on the network-connected television device. The program presentation method further includes displaying multiple clusters on the unified user interface. Each cluster includes a subset of the ordered sequence of selectable information items, and a first cluster includes a first selectable information item and a second selectable information item that are simultaneously displayed on the unified user interface. The program presentation method further includes displaying information of a first media content item provided by a first content provider in response to a first user selection of the first selectable information item. The program presentation method further includes, in response to a second user selection of a second selectable information item, displaying information of a second media content item provided by a second content provider, the second content provider being different from the first content provider.
[0010] In yet another aspect, a method for presenting selected content provided by a media playback application is implemented on a network-connected television device linked to a user account in a virtual user domain hosted by a server system. The method includes executing a unified TV application to enable display of a unified user interface on the network-connected television device. The unified TV application has a normal mode and a restricted mode and is associated with one or more standard media playback applications and a local content casting application. The method further includes displaying, on the unified user interface, multiple clusters each having multiple selectable information items, and in the restricted mode, identifying content selection criteria and selecting, according to the content selection criteria, multiple selectable information items from program information associated with the one or more standard media playback applications. The method further includes receiving a user action on a first selectable information item, the first selectable information item corresponding to a first media content item provided in the first media playback application by a first content provider. The method includes, in response to a user action on the first selectable information item, displaying a first media content item corresponding to the first selectable information item on the network-connected television device via the local content casting application in accordance with a determination that the integrated TV application operates in a restricted mode and a determination that the first media playback application does not operate in a restricted mode; and, in response to a determination that the integrated TV application operates in a normal mode, displaying a first media content item corresponding to the first selectable information item on the network-connected television device via the local content casting application. and displaying, via the first media playback application, a first media content item corresponding to the first selectable information item on the network-connected television device.
[0011] In yet another aspect, a method for displaying focus content is implemented in a server system hosting a virtual user domain including a user account. The method includes associating the user account with a unified TV application and a plurality of media playback applications. The unified TV application is associated with a network-connected television device and configured to enable display of media content on the television device, and each of the plurality of media playback applications is configured to display media content provided by a respective content provider. The method further includes executing the unified TV application to enable display of a unified user interface on the network-connected television device. The unified user interface has a focus area configured to display a plurality of focus items. The method further includes sequentially displaying the plurality of focus items in a chronological order within the focus area. Each focus item is associated with a respective focus item provider selected from the sales module, the advertiser, and the media recommendation engine. The plurality of focus items includes a first focus item. More specifically, the method includes sending a request for a first focus item to a first advertiser server, the request including information of a plurality of predetermined user interface elements of a focus area of an integrated user interface, and in response to the request, receiving a plurality of media content items associated with the first focus item from the first advertiser server, and integrating the plurality of media content items into the first focus item for display on the focus area during a time slot corresponding to the first focus item.
[0012] A non-transitory computer-readable medium has instructions stored thereon that, when executed by one or more processors, cause the processors to perform any of the methods described above. A computer system includes one or more processors and a memory having instructions stored thereon that, when executed by one or more processors, cause the processors to perform any of the methods described above.
[0013] For a better understanding of the various described embodiments, reference should be made to the following description of the embodiments in conjunction with the following drawings, in which like reference numerals refer to corresponding parts throughout. [Brief explanation of the drawings]
[0014] [Figure 1] 1 is an exemplary media environment in which a networked television device, a server system, and a third-party content source interact with each other via one or more communications, according to an embodiment. [Figure 2] 1 is an exemplary operating environment in which a server system 104 provides knowledge-based media content recommendations to networked television devices, according to one embodiment. [Figure 3] 1 is an exemplary unified user interface for display on a networked television device according to an embodiment. [Figure 4] FIG. 2 is an exemplary flow diagram of a method for providing knowledge-based media content recommendations to a networked television device, according to an embodiment. [Figure 5] 1 is an exemplary flow diagram of a method for presenting program information on a networked television device according to an embodiment. [Figure 6A] 1 is a page of two exemplary media content items displayed on a networked television device according to one embodiment. [Figure 6B]1 is a page of two exemplary media content items displayed on a networked television device according to one embodiment. [Figure 7] 1 illustrates an exemplary operating environment in which an integrated TV application and a media playback application cooperate to play media content items on a networked television device 12, according to one embodiment. [Figure 8] 8 is an illustrative sequence 800 of user interfaces sequentially displayed on a network-connected television device in response to user actions on a remote control device coupled to the network-connected television device, according to one embodiment. [Figure 9] 1 is an exemplary operating environment in which an integrated TV application, a media playback application, and a content casting application on a networked television device cooperate to enable playback of media content items, according to one embodiment. [Figure 10A] 1 is an illustrative unified user interface displayed on a networked television device in limited mode according to some embodiments. [Figure 10B] 1 is an illustrative sequence of user interfaces sequentially displayed on a network-connected television device in response to user actions on a remote control device coupled to the network-connected television device, according to an embodiment. [Figure 10C] 1 is an illustrative sequence of user interfaces sequentially displayed on a network-connected television device in response to user actions on a remote control device coupled to the network-connected television device, according to an embodiment. [Figure 11] 1 is an exemplary flow diagram of a method for presenting selected media content provided by a media playback application on a network-connected television device, according to an embodiment. [Figure 12]1 is an exemplary operating environment in which focus items (also called tiles) provided by a recommendation engine, one or more advertising providers, and a sales module are mixed for display on a network-connected television device, according to one embodiment. [Figure 13] 1 is an exemplary flow diagram of a method for mixing focus content (including VAST-based advertisements) on a networked television device according to an embodiment. [Figure 14A] FIG. 1 is a block diagram illustrating a server system of a media environment according to some embodiments. [Figure 14B] 1 is an exemplary device and application registry of a server system that stores information for one or more user accounts managed by the server system and information for user devices and applications associated with each of the one or more user accounts, according to one embodiment. [Figure 15] FIG. 2 is a block diagram illustrating an exemplary networked television device configured to display an integrated user interface and media content provided by a media playback application, according to one embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0015] Like reference numerals refer to corresponding parts throughout the several views of the drawings.
[0016] Description of the embodiment In various embodiments, the media environment includes a networked television device (also referred to as a smart television device) having one or more processors and memory storing instructions for execution by the one or more processors. The networked television device is linked to a user account in a virtual user domain hosted by a server system. The networked television device executes a unified TV application to display a unified user interface in which media content provided by various media content providers is selected and displayed for a user of the networked television device. In one embodiment, the networked television device The television apparatus is controlled by a dedicated remote control device or a client device having a remote control application for playing media content items for the user. In some embodiments, the dedicated remote control device is located in proximity to the television apparatus. In some embodiments, the dedicated remote control device or client device having the remote control application is not in physical proximity to the television apparatus but is associated with a user account maintained on a server system of the media environment.
[0017] When a networked television device executes the integrated TV application, it retrieves a media recommendation stream from a server system. The media recommendation stream includes an ordered sequence of selectable information items corresponding to an ordered set of unique media content items or programs. The selectable information items in the media recommendation stream are identified for a particular user based at least in part on knowledge of that user of the networked television device (e.g., the user's interests and activities). Specifically, a user account associated with the integrated TV application is also associated with multiple media playback applications and multiple user applications (e.g., search engine, map application). Activity data from these applications is stored in association with the user account and used to calculate a multidimensional integrated user activity characteristic (also referred to as a knowledge graph) for the user. According to the user activity characteristic, an ordered sequence of selectable information items is determined from program information associated with the multiple media playback applications and recommended to the user via the integrated TV application.
[0018] An ordered sequence of selectable information items is displayed on a unified user interface of a network-connected television device. For each selectable information item, a media recommendation stream includes a respective command that is executed in response to a user selection of the respective selectable information item on the network-connected television device. The selectable information items are organized into clusters and arranged without reference to their content providers. Thus, two information items associated with media content items provided by separate content providers can be arranged adjacent to each other, thereby allowing the unified user interface to focus on the content and not be content provider-independent in its aspect.
[0019] In addition to selectable information items, the unified user interface optionally sequentially displays multiple focus items in a focus area according to a chronological order, i.e., each of the multiple focus items sequentially occupies the entire focus area. The focus area may be located in an upper half area of the unified user interface. Each focus item is associated with a respective focus item provider selected from the sales module, the advertiser, and the media recommendation engine. The focus items provided by the sales module of the server system optionally correspond to media content items provided by a TVOD content provider and requiring payment for review. In one embodiment, the focus items are advertising items provided by an advertiser, and the advertising items conform to a customized video advertising serving template (VAST). Specifically, the television device sends a request for focus items to the advertiser, including information on predetermined user interface elements of the focus area. The advertising items are aggregated from multiple media content items provided by the advertiser according to the information on the predetermined user interface elements.
[0020] In one embodiment, the integrated TV application has a restricted mode in which content selection criteria are applied to restrict media content offered through the standard media content application for playback on the integrated user interface. For example, the content selection criteria may relate to age-based content ratings, and the restricted mode may The third-party media content application is defined as being kid-friendly. In the restricted mode, the integrated TV application optionally determines whether the standard media content application operates in the restricted mode. In accordance with the determination that the standard media content application operates in the restricted mode, the media content is displayed on the unified user interface via the standard media content application. Alternatively, in accordance with the determination that the third-party media content application does not operate in the restricted mode, the media content is displayed on the unified user interface via a local content casting application different from the standard media content application.
[0021] Reference will now be made in detail to the embodiments, examples of which are illustrated in the accompanying drawings. In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the various described embodiments. However, it will be apparent to those skilled in the art that the various described embodiments may be practiced without these specific details. In other instances, well-known methods, procedures, components, circuits, and networks have not been described in detail so as not to unnecessarily obscure aspects of the implementations.
[0022] 1 illustrates an exemplary media environment 100 in which a networked television device 102, a server system 104, and third-party content sources 106-110 interact with each other via one or more communications networks 112, according to one embodiment. The media environment 100 corresponds to a virtual user domain created and hosted by the server system 104, the virtual user domain including multiple user accounts. The third-party content sources 106-110 include an advertising source 106, an EPG source 108, and a media content source 110. For each user account, the server system 104 is coupled to the third-party content sources 106-110 and one or more media devices 102, 116-126, and is configured to recommend and stream media content for review by the user via the respective user account.
[0023] Specifically, one or more media devices associated with a user and a user account are deployed in media environment 100 to provide the user with media content stored on and streamed from remote content sources. The remote content sources are optionally third-party media content sources 110 or internal media sources hosted by server system 104. In one embodiment, the one or more media devices include a networked television apparatus 102 that streams media content directly from the remote content sources or integrates an embedded casting unit configured to stream media content for display to its viewers. The networked television apparatus 102 is communicatively coupled to a dedicated remote control device 114 and / or to a client device having a remote control application. The dedicated remote control device 114 may be located proximate to the television apparatus 102 and configured to communicate with the television apparatus 102 via digitally encoded pulses of infrared signals. Alternatively, in some situations, a dedicated remote control device 114 may be configured to communicate with the television device 102 via the communications network 112 (i.e., via a local wide area network and / or a wide area network) and need not be physically close to the television device 102.
[0024] The networked television device 102 includes one or more processors and memory that stores instructions for execution by the one or more processors. The instructions stored on the networked television device 102 may include instructions for running an integrated TV application, a local content casting application, and third-party content casting applications. This includes one or more media playback applications associated with content sources 106-110 and / or internal media sources associated with server system 104. These applications are linked to user accounts within the virtual user domain of media environment 100.
[0025] Alternatively, in some embodiments, media devices disposed in media environment 100 include a display device 116 that outputs media content directly to a viewer and a casting device 118 that is coupled and configured to stream media content to display device 116. Examples of display device 116 include, but are not limited to, a television (TV) display device and a music player. Examples of casting device 118 include, but are not limited to, a set-top box (STB), a DVD player, and a TV box. In the example shown in FIG. 1 , display device 116 includes a TV display device hardwired to a DVD player or set-top box 118. In contrast, in some embodiments, media devices disposed in media environment 100 include a computer screen 120A that outputs media content to a viewer and a desktop computer 120B that streams media content to computer screen 120A. In some embodiments, media devices disposed in media environment 100 include mobile devices, such as a mobile phone 122, a tablet computer 124, and a laptop computer 126. Each of the media devices 118-126 includes one or more media playback applications configured to receive and play media content items provided by third-party content sources 106-110 or internal media sources associated with the server system 104.
[0026] Server system 104 includes a unified media platform (UMP) 128 configured to manage media content recommendations and streaming delivery to one or more media devices in media environment 100. UMP 128 is configured to receive from knowledge engine 130 multidimensional unified user activity characteristics associated with a user account and program information for programs or content provided by media content sources 110, and to generate personalized media content recommendations for the user account. The unified user activity characteristics associated with the user account are obtained from multiple information sources 132, such as search engines, mapping applications, and online retailers associated with the user account, each of which provides activity data associated with the user account's activity through a respective software program or application. Optionally, the media content recommendations generated by UMP 128 are presented on networked television device 102 via a server-side TV application 134, which enables display of media content on the unified TV application on television device 102 in response to a user selection from the media content recommendations. Additionally, the UMP 128 may also function as a centralized media content management module configured to provide media content recommendations to other media devices 118-126 in addition to the television device 102.
[0027] In one embodiment, activity data associated with the user account is collected from the TV application 134 and the casting service module 136 (which are therefore part of the information sources 132) and returned to the knowledge graph engine 130 to update the integrated user activity characteristics and media content recommendations associated with the user account.
[0028] In one embodiment, the UMP 128 receives a search query from the server-side TV application 134 or the casting service module 136 and generates one or more search results from the program information of the program or content item provided by the media content source 110. It also includes a media search engine (eg, engine 222 of FIG. 2) configured to identify media content items.
[0029] It should be noted that user accounts in a virtual user domain hosted by server system 104 may also be associated with one or more other types of devices, e.g., intelligent, multi-sensing, networked auxiliary devices 138 and home devices 140 installed in media environment 100 associated with a user of networked television apparatus 102. Examples of auxiliary devices 138 include speaker auxiliary device 142 and display auxiliary device 144. Speaker auxiliary device 142 may collect audio input, recognize user commands from the audio input, and perform actions in response to the user commands (e.g., playing music, responding to questions). Display auxiliary device 144 may collect audio and / or video input, recognize user commands from the audio and / or video input, and perform actions in response to the user commands (e.g., playing music, presenting images or video clips, responding to questions). Examples of home devices 140 include one or more of intelligent, multi-sensing, and networked hazard detectors 146, camera systems 148, thermostats, access point interface devices (e.g., smart doorbells and smart door locks), alarm systems, microphone devices, wall switches, wall plug interfaces, and appliances (e.g., refrigerators, stoves, ovens, televisions, washers, dryers, lights, stereos, intercom systems, garage door openers, floor fans, ceiling fans, wall air conditioners, pool heaters, irrigation systems, security systems, space heaters, window AC units, and powered duct vents).
[0030] Each of the auxiliary devices 138 and home devices 140 is optionally managed by an integrated home device application or a dedicated user application and linked to a user account in the virtual domain in conjunction with an integrated TV application on a networked television device. The activity data collected by the knowledge graph engine 130 may also include data collected by a subset of the auxiliary devices 138 and home devices 140, thereby enabling media content recommendations provided to the user to reflect this activity data collected directly from the physical surroundings associated with the media environment 100.
[0031] In one embodiment, server system 104 includes a device and application registry 150 configured to store information about one or more user accounts managed by server system 104 and information about user devices and applications associated with each of the one or more user accounts. For example, device and application registry 150 stores information about networked television devices 102, remote control devices 114, media devices 116-126, auxiliary devices 138, and home devices 140, as well as information about corresponding integrated TV applications, remote control applications, media playback applications, integrated home device applications, and dedicated user applications associated with auxiliary devices 138 and home devices 140. Optionally, these media devices, auxiliary devices, and home devices associated with the same user account are distributed across different geographic areas. Optionally, these devices are located in the same physical location. Each media, auxiliary, or home appliance device communicates with another device or server system 104 using one or more communications networks 112. The communications network 112 used may be one or more networks having one or more types of topologies, including, but not limited to, the Internet, an intranet, a local area network (LAN), a cellular network, an Ethernet, a storage area network (SAN), a telephone network, a Bluetooth personal area network (PAN), etc. In some embodiments, two or more devices in a sub-network are coupled via a wired connection, while at least some of the devices in the same sub-network are coupled via a local wireless communication network (e.g., ZigBee, Z-Wave, Insteon, Bluetooth, Wi-Fi and other wireless communication networks).
[0032] 2 is an exemplary operating environment 200 in which a server system 104 provides knowledge-based media content recommendations to a networked television apparatus 102, according to one embodiment. In the exemplary operating environment 200, the server system 104 includes multiple information sources 132, a knowledge graph engine 130, a UMP 128, and a server-side TV application 134. The server system 104 hosts a virtual user domain that includes a user account associated with the server-side TV application 134 and an integrated TV application 202 implemented on the networked television apparatus 102. The user account is also associated with multiple media playback applications 204 and multiple user applications, such as a search engine 206. The server system 104 stores activity data for each of the integrated TV application 202, the media playback application 204, and the user application. The knowledge graph engine 130 of the server system 104 calculates multi-dimensional unified user activity characteristics 208 (e.g., related to user preferences or affinities) from the stored activity data and obtains program information associated with the multiple media playback applications 204, resulting in de-duplicated program information 210 for the multiple unique programs (also referred to as media content items). The UMP 128 includes a recommendation engine 212 configured to compare the user activity characteristics 208 and the program information 210 for the multiple unique programs to identify an ordered subset of the unique programs 214 for recommendation to the user via the unified TV application 202.
[0033] In one example, the knowledge graph engine 130 receives several search queries related to "Star Wars" from the search engine 206 and determines that a user associated with a user account is interested in "Star Wars." A number of unique programs associated with the program information are ranked based on the user's interests, preferences, or affinities (i.e., as represented by the integrated user activity characteristics 208). A certain number of the top-ranked unique programs are selected and grouped into clusters. Given the user's interest in "Star Wars" as indicated by the search query, the top-ranked unique programs include one or more media content items related to "Star Wars," and the clusters include clusters associated with "Star Wars," such as "science fiction movies like Star Wars."
[0034] The ordered subset of unique programs 214 identified by the recommendation engine 212 is represented by an ordered sequence of information items, which are provided to the server-side TV application 134 and made available for display via the integrated TV application 202 of the network-connected television device 102. In some situations, the activity data used by the knowledge graph engine 130 and the resulting integrated user activity profile 208 are constantly changing. The ordered subset of unique programs 214 may be identified dynamically. For example, the ordered subset of unique programs 214 is updated periodically or in response to a request by a user of the network-connected television device 102. In some situations, each unique program in the ordered subset 214 has a lifespan determined based on the unique program's respective content type, and must be removed from the recommended ordered programs after its lifespan expires. In one embodiment, the integrated user activity profile 208 varies by time of day and day of the week, as does the ordered subset of unique programs 214 recommended via the integrated TV application 202 .
[0035] The plurality of user applications act as a plurality of information sources 132 for providing activity data of users of the television apparatus 102 and include at least an Internet search engine 206. The server system 104 stores and provides to the knowledge graph engine 130 search queries and search results for search operations performed by the Internet search engine 206 from user accounts. Additionally, in one embodiment, the server system 104 stores viewing information associated with the user accounts for a subset or all of the media playback applications 204 and purchasing information associated with the user accounts for a subset of the user applications (e.g., online retailer applications). Such viewing and purchasing information is provided to the knowledge graph engine 130 along with the search queries and search results. In one embodiment, the plurality of user applications includes an audio or video auxiliary application 218 associated with a speaker auxiliary 142 or a display auxiliary 144. In one embodiment, the plurality of user applications includes an integrated home device application and / or a dedicated home device application 220 associated with one or more home devices 140. Activity data collected by these auxiliary applications 218 and home device applications 220 is also stored and provided to the knowledge graph engine 130 .
[0036] Optionally, one of the media playback applications 204 is provided by the server system 104 itself. Optionally, the media playback application 204 is provided by a third-party media content source 110 that is separate and / or remote from the server system 104. In one example, a virtual user domain is associated with a Google® user account (e.g., abc@gmail.com). The application 204 is a service provided by YouTube (registered trademark) and Other media playback applications (e.g., Netflix, Amazon Prime, Hulu, etc.) that are not provided by Google and are hosted independently of Google. (Hulu)).
[0037] In one embodiment, the program information associated with the plurality of media playback applications 204 includes one or more of schedule information, short plot summaries, casting information, rating information, and comments for current or scheduled programs that are or will be available in each of the media playback applications. The program information is optionally provided to the server system 104 in a program catalog by each of the third-party media content sources 110 associated with the plurality of media playback applications 204. Optionally, the program information is provided to the server system 104 by the EPG source 108. Alternatively, in one embodiment, the program information associated with the plurality of media playback applications 204 includes public media information downloaded from a public database that is independent of a user account. Note that the program information associated with a media playback application may be provided to the server system 104 regardless of whether the user accounts associated with the television device 102 and the integrated TV application 202 subscribe to the media playback application and have access to media content provided via that media playback application.
[0038] In some embodiments, program information provided by different media content sources 110 for the same media content item may not be identical and may vary to different levels, thereby necessitating de-duplication of program information associated with multiple media playback applications. Specifically, in some embodiments, a first media content item is provided by a first media playback application and associated with first program information. A second media content item is provided by a second media playback application and associated with first program information. The first program information is associated with second program information in the second media playback application. The second program information is different from the first program information. The knowledge graph engine 130 identifies a similarity level between the first and second program information and determines that the similarity level exceeds a similarity threshold. In accordance with this determination, the knowledge graph engine 130 de-duplicates and aggregates the first program information of the first media content item and the second program information of the second media content item, and determines that one of the multiple unique programs is associated with both the first and second media content items. That is, the first and second media content items provided by the two separate media playback applications correspond to the same unique program or media content item. Furthermore, in one embodiment, the knowledge graph engine 130 identifies a similarity level between the first and second program information by identifying a first keyword from the first program information and a second keyword from the second program information. The first and second keywords are semantically compared to identify a similarity between the first and second program information items. For example, two program information items cite generally consistent, but semantically close, keywords, "police" and "inspector." These two program information items correspond to a relatively high similarity, above a similarity threshold.
[0039] In one embodiment, in addition to de-duplication, program information associated with the multiple media playback applications is processed to calculate program characteristics for one of the unique programs. The multi-dimensional integrated user activity characteristics are then compared to the calculated program characteristics to yield a consistency score. The recommendation engine 212 is configured to determine whether the consistency score exceeds a consistency threshold, and when the consistency score exceeds the consistency threshold, identify one of the unique programs to recommend to the user via the integrated TV application. Alternatively, in one embodiment, to identify each of the ordered subsets of unique programs, the recommendation engine 212 identifies one or more keywords based on the multi-dimensional integrated user activity characteristics and searches for the one or more keywords in the de-duplicated program information of the multiple unique programs to identify each unique program in the ordered subset of unique programs.
[0040] In one embodiment, the recommendation engine 212 receives credentials for a subset of a plurality of media playback applications. For each ordered subset of unique programs, the recommendation engine 212 determines that each unique program corresponds to a respective media playback application to which a user of the networked television device has access based on the credentials. According to the credentials, the user may have access to each unique program because the user subscribes to the respective media playback application or because each unique program is freely available for review with or without sign-up. Each unique program for free review includes, for example, media content that is freely available over the air via a broadcast service or IPTV distribution feed, as well as media content that is made available due to local regulations or entitlements.
[0041] In other words, the personal preferences indicated by the multi-dimensional integrated user activity characteristics are used to select a set of unique programs from the unique programs provided by the media content sources 110 and rank the selected set of unique programs. The selected set of unique programs is further filtered according to rights information indicating whether the user account has rights (e.g., has access rights) to the media content provided by the media content sources 110 via the corresponding media playback application 204. The credentials associated with the media playback application are optionally entered by a user of the integrated TV application during an initial application personalization process or execution phase of the integrated TV application 202. Optionally, the credentials associated with the media playback application are automatically extracted from the media playback application.
[0042] In one embodiment, the UMP 128 also includes a media search engine 222 configured to receive search queries from the server-side TV application 134 and identify one or more media content items from the program information 210 for the programs or content items provided via the media playback application 204.
[0043] The server system 104 has one or more processors and memory that stores instructions for execution by the one or more processors. In one embodiment, the server system 104 includes a single server computer configured to implement the functionality of the knowledge graph engine 130, the recommendation engine 212, the media search engine 222, and the server-side TV application 134. Alternatively, in one embodiment, the server system 104 includes two or more separate server computers, each configured to implement the functionality of one or more of the knowledge graph engine 130, the recommendation engine 212, the media search engine 222, and the server-side TV application 134.
[0044] 3 is an exemplary unified user interface 300 for display on a networked television apparatus 102, according to one embodiment. The unified TV application 202 executes locally on the networked television apparatus 102 and displays the unified user interface 300. As described above with reference to FIG. 2, the server system 104 identifies an ordered subset of unique programs 214 based on the user activity characteristics 208 and the program information 210 for the plurality of unique programs. The unified TV application 202 retrieves from the server system 104 a media recommendation stream including an ordered sequence of selectable information items 302-332 corresponding to the identified ordered subset of unique media content items or programs 214. For each selectable information item, the media recommendation stream includes a respective command that is executed in response to a user selection of the respective selectable information item displayed on the networked television apparatus 102.
[0045] In one embodiment, the corresponding ordered sequence of selectable information items is grouped into an ordered list of clusters 344-340. That is, multiple clusters 334-340 are created for display on the integrated user interface 300 and physically arranged according to a predetermined cluster order. Optionally, these clusters are dynamically created and arranged based on the multidimensional integrated user activity characteristic 208. In one embodiment, clusters recommended via the integrated TV application 202 have a certain level of heterogeneity, i.e., a number of distinct clusters greater than a predetermined number. For example, three or more distinct clusters must be recommended via the integrated TV application 202. Alternatively, in one embodiment, clusters displayed on the integrated user interface 300 have similarity scores that are controlled to be less than the inter-cluster similarity threshold of several adjacent clusters. This is to avoid placing similar clusters or information items adjacent to each other in highly related clusters. In one embodiment, a benchmark is established to define the inter-cluster similarity threshold across the number of adjacent clusters.
[0046] Each cluster includes one or more information items in an ordered sequence, organized into ordered sublists of information items within the respective cluster. For each cluster (e.g., first cluster 338), each subset of the ordered sequence of selectable information items (e.g., information items 318-324) is physically arranged according to a predetermined information item order determined based on multidimensional integrated user activity characteristics 208 of the user account associated with the ordered sequence of selectable information items. can be.
[0047] Examples of clusters shown in the unified user interface 300 include "New Releases" 334, "Playing Next" 336, "What's Trending Now" 338, "Just Watched Movie ABC" 340, and "Action Movies." In another example, a cluster may be dedicated to a single media playback application (e.g., YouTube), and the information items associated with that cluster may be The subsets of clusters correspond to a mix of shows, movies, and TV shoulder content provided by a single media playback application. Each of the clusters thereby corresponds to a respective ordered sublist of information items and is defined according to one or more categories: content type (e.g., "action movies"), viewing history (e.g., because I watched the movie ABC), release period (e.g., what's popular), or content source (e.g., different streaming services and broadcast TV channels that offer action movies). In particular, the information items in the "new" cluster are determined based on one or more of the content type / format, content quality, recency, popularity, seasonality, and application lifecycle associated with the media content item or program corresponding to the "new" information item.
[0048] In one embodiment, media content items corresponding to information items in a “new” or “trending” cluster are provided by a transactional video-on-demand (TVOD) content provider, and a user interface is configured to allow a user of the television device 102 to collect payment for reviewing the media content item upon selection of the “new” or “trending” media content item. Optionally, this “new” or “trending” cluster is provided as part of an ordered sequence of information items corresponding to an ordered subset of unique programs 214 determined based on the aggregated user activity characteristics 208. Optionally, this “new” or “trending” cluster is provided to all user accounts as a supplement to the ordered sequence of information items corresponding to the ordered subset of unique programs 214, regardless of the aggregated user activity characteristics 208 of individual user accounts.
[0049] In one embodiment, the media content items corresponding to the information items in the "Action Movies" cluster are provided by a subscription video-on-demand (SVOD) content provider. Selection of a media content item in this cluster is configured to activate a page (also referred to as a summary page, e.g., page 600 in FIG. 6A ) for the media content item or to begin displaying the media content item without triggering an immediate payment. Further, in one embodiment, the media content items corresponding to the information items in the "Playing Next" cluster are provided voluntarily by an SVOD or TVOD content provider. In response to selection of a media content item in this "Playing Next" cluster, the television device 102 resumes displaying the media content item, allowing a user of the television device 102 to have one-click access to continue watching a favorite show or movie.
[0050] For each cluster on the unified user interface 300, some or all of the ordered sublists of information items are displayed depending on the total number of information items each sublist has, the size of each information item, and the available display space associated with each cluster. In some embodiments, each ordered subset of unique programs 214 is different from any other unique program in the ordered subset of unique programs 214. Any two of the information items 302-332 displayed on the unified user interface 300 are different from each other. In some situations, multiple information items 302-332 displayed on the same cluster on the unified user interface 300 may be displayed. Any two of the information items 302-332 displayed in the "Playing Next" 336 cluster are different from one another. Alternatively, in some situations, two of the information items 302-332 may be the same but recommended in different clusters, e.g., information item 310 associated with "Downton Abbey" is shown in both the "Playing Next" 336 cluster and the "Dramas" cluster.
[0051] In one embodiment, the unified user interface 300 includes affordance items 342 and corresponding selectable information items displayed thereby that differ from the ordered list of clusters. In response to a user action on an affordance item 342 (e.g., selecting an item 342 via the remote control device 114), the unified TV application 202 updates the unified user interface 300 with a page of information items, each representing a respective media playback application 204. In one embodiment not shown in FIG. 3, the unified user interface 300 further includes alternative clusters of information items, each representing a respective one of the multiple media playback applications 204.
[0052] In one embodiment, the unified user interface 300 includes an EPG affordance item 348. In response to a user action on the affordance item 348 (e.g., selecting the item 348 via the remote control device 114), the unified TV application 202 displays the EPG affordance items provided by the broadcast service (e.g., TV, cable, satellite, YouTube). and displaying an integrated EPG page including a timetable of the plurality of content items and programs, the content items and programs being selected based at least in part on the location of the networked television device 102. In one embodiment, the plurality of content items and programs are also determined by comparing the multi-dimensional integrated user activity characteristic 208 with de-duplicated program information corresponding to the media content items and programs provided by the broadcast service.
[0053] The information items 302-332 are provided by two or more media content sources 110, but are organized and displayed on the unified user interface 300 based on the content (not the media content source) of the media content items or programs 214 recommended by the recommendation engine 212 of the server system 104. Specifically, each cluster displayed on the unified user interface 300 includes a subset of the ordered sequence of selectable information items. A first cluster 338 includes a first selectable information item 318 and a second selectable information item 320. The first and second selectable information items 318 and 320 of the first cluster 338 are displayed simultaneously on the unified user interface 300. In response to a first user selection of the first selectable information item 318, the television apparatus 102 displays information for the first media content item provided by the first content provider. In response to a second user selection of the second selectable information item 320, the television apparatus 102 displays information for the second media content item provided by the second content provider. The second content provider is different from the first content provider, but information about the first and second content providers is optionally hidden on the unified user interface 300 showing the clusters 334-340 and selectable information items 302-332.
[0054] In some embodiments, each of the first and second content providers is selected from a broadcast television service, a broadcast satellite service, a cable service, a subscription video-on-demand (SVOD) content provider, a transactional video-on-demand (TVOD) content provider, an advertising-based video-on-demand (AVOD) service, and a playback and time-shifted content playback source. Optionally, the first or second content provider relies on tuner-based delivery of wireless media content. Optionally, the first or second content provider relies on Internet Protocol Television (IPTV) or other Internet-distributed content provider. The first or second content provider may deliver a live TV stream based on a transmitted, linear, live, or synthetic live content source, and the first or second content provider may be an Internet-based live streaming service. If one of the information items 302-332 corresponds to a broadcast television service (e.g., NBC, ABC, ESPN), then a unique broadcast program corresponding to one of the information items 302-332 is permitted to be displayed at the location of the television device 102 according to geographic restrictions associated with the broadcast television service.
[0055] It should be noted that the integrated TV application 202 is associated with a user account of a virtual user domain hosted by the server system 104. In one embodiment, a first content provider is associated with a first media playback application, which is optionally associated with a user account of a virtual user domain hosted by the server system 104. In one embodiment, a second content provider is associated with a second media playback application, which is optionally associated with a user account of a virtual user domain hosted by the server system 104.
[0056] In some situations, first cluster 338 has more selectable information items than the number of corresponding spatial slots in integrated user interface 300 allocated to first cluster 338. The subset of selectable information items corresponding to first cluster 338 may be physically arranged and configured to move along first axis 344 of integrated user interface 300 such that different information items within the subset of selectable information items corresponding to first cluster 338 may be displayed in integrated user interface 300 and recommended to a user of television apparatus 102. Specifically, a first user action on information item 318 (e.g., the user pressing the “previous” button on remote control device 114) may cause information item 324 to exit integrated user interface 300 and cause information items 318-322 to shift one slot to the right to allow a new information item associated with first cluster 338 to enter integrated user interface 300. Similarly, a second user action on information item 324 (e.g., the user pressing the "next" button on the remote control device 114) may shift information items 320-324 one slot to the left, causing information item 318 to exit integrated user interface 300 and another new information item associated with first cluster 338 to enter integrated user interface 300. When one of the first and second user actions is applied consecutively, the beginning or ending information item in first cluster 338 is displayed. When this occurs, one of the first and second user actions optionally does not change the information items displayed on integrated user interface 300, or continues to display the end or beginning of the subset of selectable information items in first cluster 338 as a new information item following the beginning and / or ending information item, respectively.
[0057] Further, in some embodiments, the plurality of clusters are distributed along a second axis 346 of the integrated user interface 300, including a first subset of clusters and a second subset of clusters. The first subset of clusters may be moved out of the integrated user interface, and the second subset of clusters may be moved into the integrated user interface along the second axis. For example, the first subset of clusters includes cluster 334. A third user action on one of the information items 302-308 (e.g., the user presses the "up" button on the remote control device 114) can cause clusters 334-338 to shift down one slot, causing cluster 340 to exit the integrated user interface 300 and a new cluster preceding cluster 334 to enter the integrated user interface 300 from the top. Similarly, a fourth user action on one of the information items 326-332 (e.g., the user presses the "down" button on the remote control device 114) can cause clusters 336-340 to shift up one slot. , causing cluster 334 to exit integrated user interface 300 and another new cluster following cluster 340 to enter integrated user interface 300. If one of the third and fourth user actions is subsequently applied, the top or bottom cluster of the plurality of clusters is displayed. When this occurs, one of the third and fourth user actions optionally does not change the cluster displayed on integrated user interface 300, or continues to display the bottom or top cluster of the plurality of clusters as a new cluster following the top or bottom cluster, respectively.
[0058] FIG. 4 is an example flow diagram of a method 400 for providing knowledge-based media content recommendations to a network-connected television device 102 according to an embodiment. Method 400 is performed by server system 104 and is optionally controlled by instructions stored on a non-transitory computer-readable storage medium and executed by one or more processors of server system 104. Each of the operations shown in FIG. 4 may correspond to instructions stored in computer memory or a non-transitory computer-readable storage medium (e.g., memory 1406 of server system 104 of FIG. 14A). The computer-readable storage medium may include magnetic or optical disk storage, solid-state storage such as flash memory, or other non-volatile memory devices. The instructions stored on the computer-readable storage medium may include one or more of source code, assembly language code, object code, or other instruction formats interpreted by one or more processors. Some operations in method 400 may be combined and / or the order of some operations may be changed.
[0059] The server system 104 hosts a virtual user domain including a user account. The server system 104 associates (402) the user account with an integrated TV application 202, a plurality of media playback applications 204, and a plurality of user applications. The integrated TV application 202 is associated with a network-connected television device 102, and the plurality of user applications includes at least an Internet search engine 206. For each of the integrated TV application, media playback application, and user application, the server system stores (404) respective activity data. Specifically, the server system 104 stores (406) search queries and search results for a plurality of search operations performed by the Internet search engine 206 from the user account, stores (408) viewing information associated with the user account for a subset of the media playback applications 204, and stores (410) purchasing information associated with the user account for a subset of the user applications. A multi-dimensional integrated user activity characteristic 208 is thereby calculated (412) from the stored activity data.
[0060] The server system 104 also obtains (414) program information associated with the multiple media playback applications 204, resulting in de-duplicated program information 210 for the multiple unique programs. In an embodiment, a first media content item is provided by a first media playback application and associated with first program information, and a second media content item is provided by a second media playback application and associated with second program information within the second media playback application. The server system 104 identifies (416) a similarity level between the first and second program information. In accordance with determining (418) that the similarity level exceeds a similarity threshold, the server system 104 de-duplicates (420) the first program information of the first media content item and the second program information of the second media content item and determines (422) that the unique program is associated with both the first and second media content items.
[0061] According to the user activity characteristics 208 and the program information 210 for the plurality of unique programs, the server system 104 identifies (424) an ordered subset of the unique programs 214 to recommend to the user via the integrated TV application 202. The server system 104 enables (426) display, via the integrated TV application 202, an ordered sequence of information items (e.g., items 302-332) corresponding to the ordered subset of the unique programs 214. Each information item represents a respective unique program or media content item provided by the corresponding media playback application 204.
[0062] FIG. 5 is an example flow diagram of a method 500 for presenting program information on a network-connected television apparatus 102 according to an embodiment. Method 500 is performed by the network-connected television apparatus 102 and is controlled by instructions, optionally stored on a non-transitory computer-readable storage medium, and executed by one or more processors of the network-connected television apparatus 102. Each of the operations illustrated in FIG. 5 may correspond to instructions stored in a computer memory or a non-transitory computer-readable storage medium (e.g., memory 1506 of the network-connected television apparatus 102 of FIG. 15). The computer-readable storage medium may include magnetic or optical disk storage, solid-state storage such as flash memory, or other non-volatile memory devices. The instructions stored on the computer-readable storage medium may include one or more of source code, assembly language code, object code, or other instruction formats interpreted by one or more processors. Some operations in method 500 may be combined and / or the order of some operations may be changed.
[0063] The networked television apparatus 102 is linked to a user account in a virtual user domain hosted by the server system 104. The networked television apparatus 102 executes (502) the unified TV application 202 and displays the unified user interface 300. A media recommendation stream is obtained (504) from the server system 104 and includes an ordered sequence of selectable information items 302-332 corresponding to an ordered set of unique media content items or programs 214. For each selectable information item, the media recommendation stream includes (506) a respective command that is executed at the networked television apparatus 102 in response to user selection of the respective selectable information item.
[0064] The network-connected television device 102 displays (508) multiple clusters on the integrated user interface 300. Each cluster includes (510) a subset of the ordered sequence of selectable information items 302-332. A first cluster 338 includes a first selectable information item 318 and a second selectable information item 320. The first and second selectable information items 318 and 320 of the first cluster 338 are simultaneously displayed (510) on the integrated user interface 300. In some embodiments, content provider information associated with the first and second selectable information items is hidden on the integrated user interface 300 that displays the first and second selectable information items in the first cluster 338.
[0065] In response to a first user selection of a first selectable information item, the networked television apparatus 102 displays (512) information for a first media content item provided by the first content provider (e.g., via a first media playback application associated with the first content provider). In response to a second user selection of a second selectable information item, the networked television apparatus 102 displays (513) information for a second media content item provided by a second content provider (e.g., via a second media playback application associated with the second content provider). The information is displayed (514). The second content provider is different from the first content provider. In some situations, displaying the information for the first media content item includes directly initiating playback of the first media content item provided by the first content provider from the first media playback application, and displaying the information for the second media content item includes directly initiating playback of the second media content item provided by the second content provider from the second media playback application. Alternatively, in some situations, the information for the first and second media content items is displayed on their respective media content item pages (e.g., page 600 of FIG. 6A ) via the integrated TV application 202.
[0066] 6A and 6B are two exemplary media content item pages 600 and 650, respectively, displayed on a network-connected television apparatus 102, according to one embodiment. In one embodiment, media content item page 600 is displayed to present information of a first media content item provided by a first media playback application associated with a first content provider in response to a user selection of a selectable information item (e.g., item 318) within unified user interface 300. The first media content item information includes one or more of schedule information, a short summary of a plot 612, casting information 614, rating information 616, and comments on the first media content item. Optionally, the first media content item information includes one or more recommendations 618 associated with the first media content item.
[0067] A list of content providers 602 offering the first media content item is displayed on the media content item page 600. The first content provider 604 is listed at the top of the list of content providers 602 and has the highest priority thereon. A user account associated with the integrated TV application 202 is subscribed to a subset or all of the content providers in the list 602. In some embodiments, the user account is subscribed to at least the first content provider 604, thereby enabling the recommendation engine 212 to rely on the credentials of the first content provider 604 and add the first content item to the ordered sequence of selectable information items provided to the networked television device 102.
[0068] Additionally, in some situations, the list of content providers 602 includes a second content provider 606 that also provides the first media content item, and the first content provider 604 has a higher priority than the second content provider 606 on the list of content providers 602 that provides the first media content item. Note that, on the other hand, a separate media content item page may be displayed to present information about the second media content item in response to a user selection of a separate selectable information item (e.g., item 320) in the unified user interface 300. A separate list of content providers is displayed in association with the second media content item, with the second content provider 606 listed at the top of the separate list of content providers.
[0069] 6B , in one embodiment, media content item page 650 is displayed to present information for a first media content item provided by a first media playback application associated with a first content provider in response to a user selection of a selectable information item (e.g., item 318) within unified user interface 300. The user account does not have a subscription to the first media playback application, and media content item page 650 is displayed when the user account does not have a subscription to the first content provider in response to a user action on affordance item 608. The affordance item 608 may be linked to a first media playback application to enable a user to subscribe to the first media content item's service from a TVOD content provider. In one example, the first media content item is relatively new, e.g., recently shown in theaters and beginning to be distributed by a TVOD content provider, the affordance item 608 may be linked to a uniform resource locator (URL) associated with the first media playback application, and review of the first media content item may be supported on a pay-per-view basis.
[0070] 7 illustrates an exemplary operating environment 700 in which an integrated TV application 202 and a media playback application 204 cooperate to play media content items on a networked television apparatus 102, according to one embodiment. Both the integrated TV application 202 and the media playback application 204 are executed by the networked television apparatus 102. Playback of the media content item is initiated in the integrated TV application 202. In some situations, playback of a first media content item provided by a first content provider from a first media playback application is initiated directly in response to a user action on a corresponding selectable information item 318 displayed on the integrated user interface 300. Alternatively, in some situations, playback of the first media content item is initiated from the corresponding media content item page 600, for example, in response to a user selection of the media content provider from a list of media content providers 602.
[0071] When playback of the first media content item begins, the integrated TV application 202 relies on the first or other selected media playback application 204 to play the first media content item. In one embodiment, the first media content item is played by the first media playback application, but user interface elements of the first media playback application are bypassed and suspended so that they are not displayed to a user of the network-connected television device 102. These bypassed user interface elements include those associated with the home user interface of the first media playback application. In contrast, alternative user interface features may not be skipped; examples of these non-skipped user interface features include a splash image frame indicating that the first media item is provided by the first media content provider. By bypassing the user interface elements of the first media playback application, the integrated TV application 202 and the media playback application 204 are seamlessly integrated together to enable playback of the first media content item without requiring user intervention to switch between the two applications.
[0072] 8 is an exemplary sequence 800 of user interfaces sequentially displayed on a network-connected television apparatus 102 in response to user actions on a remote control device 114 coupled to the network-connected television apparatus 102, according to one embodiment. When media content item page 600 (also called summary page) is displayed for a first media content item on the television apparatus 102, a first media content provider 604 is selected from the list of media content providers 602 by a first user action with an indication of the first media content provider (e.g., by pressing a play button 802 on the remote control device 114). In response to the user action, the first media content item is provided by the first media content provider 604 and is played on the media playback interface 804 via a first media playback application associated with the first media content provider 604. The media playback application runs and recedes into the background to enable playback of the first media content item.
[0073] In one embodiment, a user request is received to stop playback of a first media content item on a media playback interface 804 enabled by a first media playback application. In response to the user request to stop playback of the first media content item, a home user interface 806 of the first media playback application is displayed, and the networked television apparatus 102 operates in a media environment managed by the first media playback application. A user of the networked television apparatus 102 can exit the media environment by selecting an exit affordance item on the home user interface 806 of the first media playback application or by pressing one or more predetermined shortcut buttons on the remote control device 114.
[0074] Alternatively, in one embodiment, in response to a user request to stop playback of a first media content item on the media playback interface 804, display control is returned directly to the integrated TV application 202 associated with the network-connected television device 102. That is, in response to the user request, the network-connected television device 102 displays media content item page 600 or multiple clusters of the first media content item in the integrated user interface 300 via the integrated TV application 202. By these means, the involvement of the first media playback application can be completely invisible to the user of the network-connected television device 102, thereby allowing the media playback application 204 to be seamlessly integrated within the integrated TV application 202.
[0075] 9 illustrates an exemplary operating environment 900 in which an integrated TV application 202, a media playback application 204, and a content casting application 902 of a network-connected television device 102 cooperate to enable playback of media content items, according to one embodiment. The media playback application 204 is a dedicated application associated with a particular media streaming service or broadcast channel, a cable or over-the-air (OTA) tuner, or a web browser. The content casting application 902 resides within the connected television device 102 that runs the integrated TV application 202. The network-connected television device 102 has a normal mode and a restricted mode, where the restricted mode is associated with content selection criteria. In the normal mode, the media content permitted to be played via the integrated TV application 202 is selected from the media content provided by each media content source 110 associated with the media playback application 204, without any restrictions other than the user account entitlements (i.e., the right to access media content permitted by a subscription). In contrast, in restricted mode, the media content permitted to be played via the integrated TV application 202 is selected from the media content provided by each media content source 110 associated with the media playback application 204 according to content selection criteria in addition to user account entitlements. Thus, implementing restricted mode involves operations on the server side and on the television device side.
[0076] On the server side, the recommendation engine 212 compares the user activity characteristics 208 with the program information 210 of multiple unique content items or programs to identify an ordered subset of unique programs 214 to recommend to the user in normal mode. In restricted mode, in the process of obtaining the ordered subset of unique programs 214, the recommendation engine 212 applies content filtering criteria along with the user activity characteristics 208 (if any) and other filtering conditions (e.g., media playback application 204 credentials). That is, in restricted mode, the ordered subset of unique programs 214 is filtered by the content filter. The selectable information items displayed on the television device 102 correspond to an ordered subset of unique programs 214 and are therefore selected from the program information 210 associated with one or more media playback applications 204 according to the content selection criteria.
[0077] On the television device side, the unified TV application 202 executes to enable the display of the unified user interface 300 on the network-connected television device 102. In a normal mode, the unified TV application 202 imposes no restrictions on content selection criteria on media content provided via the media playback application 204, which is invoked by the unified TV application 202 to play the media content. Conversely, in a restricted mode, content selection criteria are applied via the unified TV application 202. The unified TV application 202 receives a user action on a first selectable information item on the unified user interface 300. The first selectable information item corresponds to a first media content item provided in the first media playback application by a first content provider. In response to a user action on the first selectable information item, the integrated TV application 202 determines that the integrated TV application is operating in restricted mode and that the first media playback application is not operating in restricted mode, and the local content casting application is invoked by the integrated TV application 202 to display the first media content item corresponding to the first selectable information item on the network-connected television device 102.
[0078] Alternatively, in one embodiment, the integrated TV application 202 determines that it operates in restricted mode and that a first media playback application is capable of operating in restricted mode, and the first media playback application is invoked by the integrated TV application 202 to display a first media content item corresponding to the first selectable information item on the network-connected television device 102. In restricted mode, the media playback application 204 has priority over the content casting application 902, which is invoked only if the media playback application 204 cannot operate in restricted mode. The content casting application 902 is locally available to act on behalf of the media playback application 204 that cannot meet the content selection criteria.
[0079] In one embodiment, the media playback applications 204 are associated with respective third-party media content sources 110 independently of the integrated TV application configured to implement content selection criteria to limit the media content provided via the respective media playback applications. Alternatively, in one embodiment, the media playback applications 204 are associated with a server system 104 that also implements the integrated TV application 202. Furthermore, in one embodiment, the content casting application 902 includes multiple media receiver modules 904 corresponding to the multiple media playback applications 204. In the restricted mode, the integrated TV application 202 applies the content selection criteria to the media content provided by the media content sources 110 associated with the media playback applications 204 via the respective media receiver modules 904 of the content casting applications 902.
[0080] 10A is an exemplary unified user interface 1000 displayed on a network-connected television apparatus 102 in restricted mode, according to one embodiment. FIGS. 10B and 10C are diagrams illustrating unified user interfaces 1000, respectively, displayed on a network-connected television apparatus 102 in restricted mode, according to one embodiment, in response to a user action on a remote control device 114 coupled to the network-connected television apparatus 102. 10A and 10B are two exemplary sequences of user interfaces 1040 and 1080 displayed sequentially on a television device 102. In the restricted mode, the content selection criteria define an age-based content rating, and a first media content item corresponding to the plurality of selectable information items displayed in the unified user interface 1000 complies with the age-based content rating. For example, a kids' zone may be created within the corresponding unified TV application 202. In an embodiment, the first content provider is configured to provide one or more second media content items, each of which is different from the first media content item corresponding to the selectable information item displayed in the unified user interface 1000. The one or more second media content items may be played by a first media playback application associated with the first content provider in the normal mode, but are prohibited from being played by the local content casting application 902 in the restricted mode.
[0081] In one embodiment, the integrated TV application 202 loads a criteria-setting user interface and receives, on the criteria-setting user interface, an input of an age of a child associated with a user account associated with the integrated TV application 202. The integrated TV application 202 is configured to automatically identify an age-based content rating based on the input of the child's age. While operating in restricted mode, the server system 104 identifies a defined age-based content rating based on the child's age and selects a plurality of selectable information items according to the age-based content rating for display on the integrated user interface 1000, thereby creating a kid-friendly media environment on the television device 102.
[0082] As described above, in the restricted mode, the ordered subset of unique programs 214 is determined based at least in part on the content filtering criteria. The selectable information items displayed on the television device 102 correspond to the ordered subset of unique programs 214 and are selected from the program information 210 associated with the one or more media playback applications 204 according to the content selection criteria. In one embodiment, the program information 210 associated with the one or more media playback applications 204 includes multiple characteristic fields, such as an age rating field, for each media content item or program. The recommendation engine 212 compares the value of the age rating field with the age-based content rating to determine whether the corresponding media content item or program complies with the content selection criteria that define the age-based content rating.
[0083] Furthermore, in some embodiments, the first selectable information item is selected from first program information associated with the first media playback application according to content selection criteria, and the first program information is provided at least in part by an information source different from the first media playback application. For example, the first media playback application (e.g., HBO) may not have a Kids Zone, and the corresponding program information 210 of the media content items provided thereby may not include an age rating field and may not be used to determine whether the media content items comply with age-based content ratings. As one solution, the recommendation engine 212 may extract program information 210 from another information source different from the first media playback application and determine whether the media content items provided via the first media playback application comply with age-based content ratings.
[0084] Referring to FIG. 10B, in one embodiment, when unified user interface 1000 is displayed on networked television apparatus 102 to present multiple selectable information items, television apparatus 102 may, for example, via remote control device 114, select a first selectable item. 10C , in some situations, the television apparatus 102 responds to the user selection of the first selectable information item by beginning playback of a first media content item 1006 corresponding to the first selectable information item without displaying the splash image frame 1002. In response to the user selection, the television apparatus 102 begins playback of a first media content item corresponding to the first selectable information item. In one example, the television apparatus 102 sequentially displays a splash image frame 1002 indicating that the first media content item is provided by a first media content provider and a frame of the first media content item 1004. Referring to FIG. 10C , in some situations, the television apparatus 102 responds to the user selection of the first selectable information item by beginning playback of a first media content item 1006 corresponding to the first selectable information item without displaying the splash image frame 1002.
[0085] As a first media content item is played on the television device 102, the television device 102 receives a user request, e.g., via the remote control device 114, to stop playing the first media content item. In one embodiment (FIG. 10B), in response to determining that the integrated TV application 202 is operating in restricted mode, the television device 102 ceases displaying the first media content item and re-displays the plurality of clusters with selectable information items (i.e., the integrated user interface 1000). Alternatively, in one embodiment (FIG. 10C), in response to determining that the integrated TV application 202 is operating in restricted mode, the television device 102 ceases displaying the first media content item and displays the home user interface 1008 of the first media playback application in response to the user request. Furthermore, in response to an additional user request, the television device 102 exits the home user interface and re-displays the plurality of clusters with selectable information items (i.e., the integrated user interface 1000). Conversely, in response to determining that the integrated TV application is operating in normal mode, the television device 102 either ceases displaying the first media content item and re-displays the multiple clusters on the integrated user interface 1000, or displays the home user interface 1008 of the first media playback application.
[0086] 11 is an example flow diagram of a method 1100 for presenting selected media content provided by a media playback application on a network-connected television apparatus 102, according to an embodiment. Method 1100 is performed by the network-connected television apparatus 102 and is controlled by instructions, optionally stored on a non-transitory computer-readable storage medium, and executed by one or more processors of the network-connected television apparatus 102. Each of the operations shown in FIG. 5 may correspond to instructions stored in computer memory or a non-transitory computer-readable storage medium (e.g., memory 1506 of the network-connected television apparatus 102 of FIG. 15). The computer-readable storage medium may include magnetic or optical disk storage, solid-state storage such as flash memory, or other non-volatile memory devices. The instructions stored on the computer-readable storage medium may include one or more of source code, assembly language code, object code, or other instruction formats interpreted by one or more processors. Some operations in method 1100 may be combined, and / or the order of some operations may be changed.
[0087] The television device 102 is linked to a user account in a virtual user domain hosted by the server system 104. The television device 102 executes a unified TV application 202 to enable display of a unified user interface 1000 on the networked television device (1102). The unified TV application 202 has a normal mode and a restricted mode (1104) and is associated with one or more standard media playback applications 204 and a local content casting application 902. A plurality of clusters are displayed in the unified user interface 1000 (1106). Each cluster has a plurality of selectable information items. The television device 102 identifies (1108) content selection criteria and selects one or more content items according to the content selection criteria. selects 1110 a plurality of selectable information items from program information 210 associated with a plurality of media playback applications 204.
[0088] The television device 102 receives 1112 a user action on a first selectable information item corresponding to a first media content item provided in a first media playback application by a first content provider. In response to 1114 the user action on the first selectable information item, depending on whether the integrated TV application is operating in restricted mode or whether the first media playback application is not operating in restricted mode, the television device 102 displays 1116 the first media content item corresponding to the first selectable information item on the network-connected television device via the local content casting application. Alternatively, in response to 1114 the user action on the first selectable information item, depending on whether the integrated TV application is operating in normal mode, the television device 102 displays 1118 the first media content item corresponding to the first selectable information item on the network-connected television device via the first media playback application.
[0089] In one embodiment, the first content provider is configured to provide one or more second media content items different from the plurality of media content items each corresponding to the plurality of selectable information items, the first media playback application is configured to play the one or more second media content items in a normal mode, and the one or more second media content items are prohibited from being played by the local content casting application in a restricted mode.
[0090] 12 illustrates an exemplary operating environment 1200 in which focus items (also referred to as tiles) provided by a recommendation engine 212, one or more advertising (ad) providers, and a sales module 1202 are intermixed for display on a network-connected television apparatus 102, according to an embodiment. The one or more advertising providers include internal advertising providers 1204 hosted and managed by the server system 104 and / or external third-party advertising sources 106 not hosted by the server system 104. An advertising management module 1208 is coupled to the one or more advertising providers and configured to manage advertising content provided by the one or more advertising providers. The recommendation engine 212 is configured to compare the program information 210 and the multi-dimensional integrated user activity characteristics 208 for a plurality of unique programs provided by the media content sources 204 to identify an ordered subset of unique programs 214 for recommendation to a user via the integrated TV application 202. In particular, the recommendation engine 212 can target media content provided by broadcast services (television, satellite, or cable) and video-on-demand (VOD) content providers to users of the television device 102 based on the user activity characteristics 208. The sales module 1202 is hosted and managed by the server system 104 and configured to provide focus items selected by the server system 104 for promotion. The focus items selected by the sales module 1202 are optionally independent of the user activity characteristics 208 or are determined based on the user activity characteristics 208 of the user. In one embodiment, the focus items selected by the sales module 1202 are advertisements suggesting the user to subscribe to a service provided by an SVOD content provider, purchase or rent certain media content, or play an online game. For example, the focus items selected by the sales module 1202 include trailer clips associated with newly released movies.In one embodiment, the focus item selected by the sales module 1202 may be TVOD content, independent of the user activity characteristics 208 of any particular user. The focus items are provided by the provider (i.e., the focus items are associated with a TVOD content provider and pushed to the television device 102 by the sales module 1202). Alternatively, in some situations, the focus items selected by the sales module 1202 are determined by the server system 104 based on the user activity characteristics 208 of multiple users across different use cases in a virtual user domain hosted by the server system 104. In one example, each of the focus items selected by the sales module 1202 is determined based on one or more of the content type / format, content quality, recency, popularity, seasonality, and application lifecycle of the respective focus item.
[0091] Referring to FIG. 3 , the unified TV application 202 executes on the network-connected television device 102 to enable display of a unified user interface 300. The unified user interface 300 has a focus area 362 (e.g., a prominently displayed area of the user interface) configured to display multiple focus items. The focus area 362 is optionally located in an upper half area of the unified user interface 300. The multiple focus items are displayed sequentially in chronological order in the focus area 362. Optionally, the multiple focus items are organized temporally as a carousel, with a final focus item being displayed followed by a smooth transition to the starting focus item. Each focus item is associated with a respective focus item provider selected from the sales module 1202, the advertising management module 1208, and the media recommendation engine 212. The server system 104 includes a mixer 1206 configured to automatically mix the multiple focus items sequentially according to a chronological order. In one embodiment, the focus area 362 extends to overlap a subset of the selectable information items 302-332. In one example, focus area 362 covers the entire integrated user interface 300 and overlaps all of the selectable information items 302-332. That is, a subset or all of the selectable information items 302-332 are displayed in the background of focus area 362, and the multiple focus items are displayed in sequence in the background to the subset or all of the selectable information items 302-332.
[0092] Additionally, the advertising management module 1208 of the server system 104 further includes an advertising transformation module (not shown in FIG. 12 ) configured to customize media content items received from an external advertising source 106 for display in the focus area 362 of the unified user interface 300. For example, the plurality of focus items includes a first focus item. The television device 102 sends a request for the first focus item to the first advertiser server 106, the request including information of a plurality of predetermined user interface elements in the focus area of the unified user interface. In response to the request, the television device 102 receives a plurality of media content items associated with the first focus item from the first advertiser server 106 and aggregates the plurality of media content items into the first focus item for display on the focus area during the time slot corresponding to the first focus item. In one embodiment, the plurality of media content items includes a subset of media content items that conform to the Video Advertisement Template (VAST) standard for communication requirements between the first advertiser server and a network-connected television device. Accordingly, the advertising transformation module of the advertising management module 1208 is configured to integrate a subset of the content items into a first focus item and customize the first focus item for display on the integrated user interface 3000 of the network-connected television device 102.
[0093] Examples of predefined user interface elements in the focus area 362 are a background image, a stylized title / logo image, a description including a tagline, a call to action, title text, an application name, a source label, a package name, a clickable icon, and so on. The call to action may include one or more of the following: a link to a video clip, a link through link, and a video clip. The background image may include an image of text without text. The request for the first focus item sent to the first advertiser server defines which section of the image of text must be left empty for a title. In some embodiments, a logo image is required, but a stylized font is optional, facilitating a one-line description of the media content associated with the first focus item. The call to action may include selectable actions for the first focus item, such as "Subscribe Now," "Available for Rent," "Watch Now," "Subscription Required," "Coming Soon to Theater," "Add App to Favorites Row," and "Add Channel to Home Screen," and the server system 104 associates the first focus item with a subset of the selectable actions. The title text is used when a stylized title is not available. The first focus item carries a source label that highlights to the user of the television device 102 whether the content is an advertisement, a merchandising unit, or a recommendation. The click-through link includes a link to a web page of the application, content within the application, or commercial associated with the first focus item, and a click on the first focus item automatically results in activation of the link.
[0094] In one example, the first focus item includes a static advertising image of a movie being shown in a theater, and the first focus item includes a link to purchase tickets 364 and / or a link to pre-order a digital versatile disc (DVD) 366. In an embodiment, the static advertising image indicates "Available on DVD" and has a link to rent a DVD of the corresponding movie.
[0095] In one embodiment, the plurality of focus items include video clips or still images configured to highlight media content items provided by a broadcast television service, a broadcast satellite service, a cable service, an SVOD content provider, or an AVOD service. The recommendation engine 212 of the server system 104 identifies the multi-dimensional user activity characteristics 208 of a user of the network-connected television device 102, retrieves the program information 210 associated with the plurality of media playback applications 204, and identifies highlighted media content items for recommendation to the user via the unified TV application. Specifically, the highlighted media content items are presented to the user of the television device 102 in the focus area 362 of the unified user interface 300. Information about the highlighted media content can further be provided to the recommendation engine 212 to update the multi-dimensional user activity characteristics 208 and subsequent media content item recommendations.
[0096] In some embodiments, the plurality of focus items sequentially displayed within the focus area 362 further includes a second focus item, which includes a video clip or still image configured to highlight a media content item provided by the TVOD content provider. The video clip or still image is displayed during a time slot corresponding to the second focus item. In response to a user action on the displayed video clip or still image, a TVOD media application is executed to enable the user to order and play the media content item corresponding to the second focus item. In some circumstances, the video clip or still image is sponsored by the TVOD content provider or selected by the server system 104 to promote the corresponding media content item, regardless of the user activity characteristics 208 of a user of the networked television device 102.
[0097] Referring to Figure 3, in one embodiment, multiple focus items are displayed simultaneously with multiple selectable information items organized into clusters. The selectable information items in each cluster include: Although the focus area and the plurality of clusters are distributed parallel to the first axis 344, they are distributed along a second axis 346 of the integrated user interface 300 that is distinct from the first axis 344. The focus area is fixed on the integrated user interface 300 regardless of the display of the plurality of selectable information items in non-focus areas that are separate from and do not overlap the focus area. That is, the focus item is displayed in the fixed focus area regardless of whether selectable information moves within, enters, or exits the non-focus areas. In one embodiment, multiple focus item indicators 368 are displayed with the focus item. Each focus item indicator 368 represents a respective one of the plurality of focus items. For each of the plurality of focus items, in response to determining that the respective focus item is displayed in the focus area, the television apparatus 102 displays the respective focus item indicator according to an active specification 370a. In response to determining that the respective focus item is not displayed in the focus area, the television apparatus 102 displays the respective focus item indicator according to an inactive specification 370b that is different from the active specification 370a.
[0098] In some situations, while one of the multiple focus items is displayed in focus area 362, television device 102 receives a predetermined user action (e.g., clicking a previous or next button on remote control device 114) associated with the respective focus item. In response to the predetermined user action, television device 102 ceases displaying the respective focus item and displays, within the focus area of the unified user interface, either (1) the subsequent focus item that chronologically follows the respective focus item, or (2) the preceding focus item that chronologically precedes the respective focus item.
[0099] The focus items are updated frequently within the focus area 362 to maintain their freshness. For example, the server system 104 determines the number of times that the multiple focus items have been chronologically sequentially displayed in the focus area 362. In response to determining that the number is equal to or exceeds a predetermined threshold (e.g., two times), the server system 104 replaces at least one of the multiple focus items with an alternative focus item.
[0100] Further, in one embodiment, the server system 104 is configured to deduplicate focus items displayed sequentially within the focus area 362. The multiple focus items include a second focus item in addition to the first focus area. The mixer 1206 receives two or more original items from separate content providers selected from the sales module 1202, the advertisers 106, and the media recommendation engine 212. The mixer 1206 deduplicates the two or more original items according to a preferred order of the sales module 1202, the advertisers 106, and the media recommendation engine 212 to produce the second focus item. In one example, the preferred order defines decreasing priority of the advertisers 106, the sales module 1202, and the media recommendation engine 212, which prioritizes the advertisers 106 over any other content source.
[0101] In one embodiment, information of user actions associated with the focus area is provided to one of recommendation engine 212, advertising management module 1208, and sales module 1202, which provide the focus items displayed in the focus area. The information of user actions is information indicative of user preferences of a user of networked television apparatus 102 with respect to the plurality of focus items displayed in the focus area. Each of recommendation engine 212, advertising management module 1208, and sales module 1202 may, based on the user preferences or user preferences of a plurality of users associated with the user of networked television apparatus 102, provide one or more Additional focus items can be determined.
[0102] FIG. 13 is an example flow diagram of a method 1300 for mixing focused content (including VAST-based advertisements) on a network-connected television device 102, according to an embodiment. Method 1300 is performed by server system 104 and, optionally, controlled by instructions stored on a non-transitory computer-readable storage medium and executed by one or more processors of server system 104. Each of the operations illustrated in FIG. 13 may correspond to instructions stored in a computer memory or a non-transitory computer-readable storage medium (e.g., memory 1406 of server system 104 of FIG. 14A). The computer-readable storage medium may include magnetic or optical disk storage, solid-state storage such as flash memory, or other non-volatile memory devices. The instructions stored on the computer-readable storage medium may include one or more of source code, assembly language code, object code, or other instruction formats interpreted by one or more processors. Some operations in method 1300 may be combined and / or the order of some operations may be changed.
[0103] The server system 104 hosts a virtual user domain including user accounts. The user accounts are associated (1302) with a unified TV application 202 and multiple media playback applications 204. The unified TV application 202 is associated (1304) with a network-connected television device 102 and configured to enable the display of media content on the television device 102, with each of the multiple media playback applications 204 configured to display media content provided by a respective content provider 110. The unified TV application 202 is executed (1306) to display a unified user interface on the network-connected television device 102. The unified user interface 300 has a focus area 362 configured to display multiple focus items. The multiple focus items (also called tiles) are displayed (1308) sequentially within the focus area 362 in a chronological order, such as a carousel. Each focus item is associated with a respective focus item provider selected from a sales module, an advertiser, and a media recommendation engine.
[0104] The plurality of focus items includes a first focus item. The server system 104 sends (1310) a request for the first focus item to a first advertiser server. The request includes information of a plurality of predetermined user interface elements of a focus area of the integrated user interface. In response to the request, the server system 104 receives (1312) a plurality of media content items associated with the first focus item from the first advertiser server and integrates the plurality of media content items into the first focus item for display on the focus area 362 during the time slot corresponding to the first focus item.
[0105] It should be understood that the particular order in which the operations in each of Figures 4, 5, 11, and 13 are described is merely exemplary and is not intended to indicate that the described order is the only order in which the operations can be performed. Those skilled in the art will recognize various ways to display information items and focus content in an integrated user interface, as described herein. Furthermore, it should be noted that details described with respect to one of processes 400, 500, 1100, and 1300 are also applicable in a similar manner to any other of methods 400, 500, 1100, and 1300. For the sake of brevity, similar details will not be repeated.
[0106] FIG. 14A is a block diagram illustrating a server system 104 of a media environment according to one embodiment. FIG. 1 shows a server system 104. The server system 104 typically includes one or more processing units (CPUs) 1402, one or more network interfaces 1404, memory 1406, and one or more communication buses 1408 (sometimes referred to as a chipset) for interconnecting these components. The server system 104 may include one or more input devices 1410 to facilitate user input, such as a keyboard, mouse, voice command input unit or microphone, touchscreen display, touch-sensitive input pad, gesture capture camera, or other input buttons or controls. Additionally, the server system 104 may use a microphone and voice recognition, or a camera and gesture recognition, to supplement or replace a keyboard. In some embodiments, the server system 104 includes one or more cameras, scanners, or photo sensor units, for example, to capture images of graphic series codes printed on an electronic device. The server system 104 may also include one or more output devices 1412 to enable presentation of a user interface and display of content, including one or more speakers and / or one or more visual displays.
[0107] Memory 1406 includes high-speed random-access memory such as DRAM, SRAM, DDR RAM, or other random-access solid-state memory devices, and optionally includes non-volatile memory such as one or more magnetic disk storage devices, one or more optical disk storage devices, one or more flash memory devices, or one or more other non-volatile solid-state storage devices. Memory 1406 optionally includes one or more storage devices located remotely from the one or more processing units 1402. Memory 1406, or alternatively, the non-volatile memory within memory 1406, includes a non-transitory computer-readable storage medium. In an embodiment, memory 1406, or the non-transitory computer-readable storage medium of memory 1406, stores the following programs, modules, and data structures, or a subset or superset thereof: an operating system 1416, which contains procedures for handling various basic system services and performing hardware-dependent tasks; a network communications module 1418 for connecting the server system 104 to other devices (e.g., various servers within the server system 104, advertisement sources 106, EPG sources 108, media content sources 110, networked television devices 102, remote control devices 114, media devices 114-126, auxiliary devices 138, home devices 140, and mobile devices) via one or more network interfaces 1404 (wired or wireless) and one or more networks 112, such as the Internet, other wide area networks, local area networks, metropolitan area networks, etc.; a casting device application 1420 that executes to provide server-side functionality for device provisioning, device control, and user account management associated with the casting device 118; one or more internal media playback applications 1422 (e.g., YouTube and Google Play) that run to provide server-side functionality for media display and user account management; one or more user applications 1424, including one or more of an internet search engine, a mapping application, a social media application, a retailer application, and a device application that executes to provide server-side functionality for device provisioning, device control, data processing, and data review of a corresponding auxiliary device 138 or home device 140; a server-side TV application 134 that executes to provide server-side functionality for device provisioning, device control, data processing, and data review for the networked television device 102; a knowledge graph engine 130 that executes to collect activity data from the media playback applications and user applications associated with the user account, calculate a multi-dimensional integrated user activity profile 208 based on the collected activity data, and collect (deduplicated or non-duplicated) program information associated with the media playback applications 204; a recommendation engine 212 that is configured to compare the user activity characteristics 208 with program information 210 about a plurality of unique programs to identify an ordered subset of unique programs 214 for recommendation to the user via the integrated TV application 202; a sales module 1202 that executes to provide selected focus items to promote media content independent of user activity characteristics 208 of individual user accounts; an advertising management module 1208, including an advertising transformation module that executes to manage advertising content provided by the internal advertising providers 1204 or the external advertising sources 106, and to customize media content items received from the external advertising sources 106 for display within the focus area 362 of the unified user interface 3000, for example, according to a customized VAST format; a mixer 1206 (also called a focus item aggregation module) that is executed to sequentially mix multiple focus items provided by two or more content sources (e.g., the recommendation engine 212, the sales module 1202, and the advertising provider 1204 or 106) according to a chronological order; a media search engine 222 that is configured to receive a search query from the server-side TV application 134 or the casting service module 136 and identify one or more media content items from program information for the programs or content items provided by the media content source 110; Server system data 1440, which stores at least the following data associated with controlling media presentation on the network-connected television device 102: User account settings 1442 for storing account settings for one or more user accounts and device and application settings associated with each of the user accounts and managed by the server system 104, further including: television device settings 1444 for storing information associated with the television device 102, including common device settings (e.g., service tier, device model, storage capacity, processing capabilities, communication capabilities, etc.) and information associated with the corresponding unified TV application 202 (including one or more of account access information, user preferences for media content types, and viewing history data); a casting device settings 1446 for storing information associated with the casting device 118 and the user account of the casting device application 1420, including one or more of account access information, information for device settings (e.g., service tier, device model, storage capacity, processing capabilities, communication capabilities, etc.); media playback application settings 1448 for storing information associated with a user account for one or more media playback applications 204, including one or more of account access information, user preferences for media content types, and viewing history data; a remote control configuration 1450 for storing information associated with one or more remote control devices 114, such as common device settings (e.g., service tier, device model, storage capacity, processing capabilities, communication capabilities, etc.), media control functions linked to individual buttons, and commands and data for implementing each of the media content functions; a device and application registry 150 for storing information for one or more user accounts managed by the server system 104 and information for user devices and applications associated with each of the one or more user accounts; data generated by various applications on a plurality of devices associated with each of the user accounts managed by the server system 104, e.g., user account data 1454 for storing display information associated with media content currently being displayed on the television device 102; knowledge graph data 1456 associated with the knowledge graph engine 130 implemented by the server system 104, including one or more of activity data 1458 of the integrated TV application 202, the media playback application 204, and the user application 1424, multi-dimensional integrated user activity characteristics 208 derived from the activity data, and program information 210 associated with the plurality of media playback applications 204; One or more content selection criteria 1460 applied by the integrated TV application 202 to control the media content displayed on the television device 102 .
[0108] Each of the above-identified elements may be stored in one or more of the aforementioned memory devices and corresponds to a set of instructions for performing the functions described above. The above-identified modules or programs (i.e., sets of instructions) need not be implemented as separate software programs, procedures, modules, or data structures; thus, various subsets of these modules may be combined or otherwise rearranged in various embodiments. In an embodiment, memory 1406 optionally stores a subset of the above-identified modules and data structures. Additionally, memory 1406 optionally stores additional modules and data structures not described above.
[0109] 14B is an exemplary device and application registry 150 of server system 104 that stores information for one or more user accounts managed by server system 104 and information for user devices and applications associated with each of the one or more user accounts, according to one embodiment. In this example, user account 1482 is defined according to an email address (e.g., abc@gmail.com). The device and application registry 150 stores one or more of a device identifier (ID), a device type, a device manufacturer ID, and an Internet Protocol (IP) address for each user device associated with a user account. The device ID is assigned to a user device when the user device is linked to the user account 1482. The manufacturer ID includes a product serial number provided by the manufacturer to uniquely identify the user device. When each user device is linked to the user account 1482, the respective manufacturer ID is required to authenticate the respective user device. The user device's IP address is used to track the user device's location within the Internet. It is obtained in the process of linking the user device to the user account 1482 and is updated when the user device's location changes within the Internet.
[0110] In one embodiment, a first user device associated with user account 1482 is linked to a second user device associated with user account 1482. For example, remote control device 114 (device ID=10) is linked to networked television apparatus 102 (device ID=11), but not to casting device 118 (device ID=1). In one embodiment, user account 1482 includes two or more remote control devices 114, each of which is uniquely linked to a particular networked television apparatus 102 or casting device 118. In one embodiment, user account 1482 links one remote control device to two or more casting or television apparatuses according to predetermined linking rules (e.g., according to the distance of the remote control device 114 to any one of the two or more casting or television apparatuses). Includes location 114.
[0111] In one embodiment, the address is defined according to an email address (e.g., abc@gmail.com). The user account 1482 is also associated with an integrated TV application 202, a plurality of media playback applications 204, and a plurality of user applications 1424. Each of the media playback applications 204 is configured to display media content items or programs provided by a broadcast service (television, satellite, or cable) and a VOD content provider. The VOD content provider is optionally a third-party content provider different from the server system 104. Examples of media playback applications 204 include, but are not limited to, YouTube, Google Play, Netflix, Hulu, Amazon Prime, HBO, and several TV channel applications (e.g., ESPN, NBC, ABC, and PBS). Conversely, examples of the plurality of user applications 1424 include email applications (e.g., Google Gmail), map applications (e.g., Google Maps), assistance applications (e.g., Google Assistance), home device applications (e.g., Nest Camera, Nest Hello), and online retail applications (e.g., Google Shopping). Optionally, each media player or user application is stored with one or more of an application identifier (ID), an application type, a flag indicating whether it is a first-party or third-party application, and entitlement / subscription information (e.g., membership type, credentials).
[0112] 15 is a block diagram illustrating an exemplary networked television apparatus 102 configured to display an integrated user interface and media content provided by a media playback application 204, according to one embodiment. The networked television apparatus 102 typically includes one or more processing units (CPUs) 1502, one or more network interfaces 1504, memory 1506, and one or more communication buses 1508 for interconnecting these components (sometimes referred to as a chipset). The memory 1506 includes high-speed random-access memory such as DRAM, SRAM, DDR RAM, or other random-access solid-state memory devices, and optionally includes non-volatile memory such as one or more magnetic disk storage devices, one or more optical disk storage devices, one or more flash memory devices, or one or more other non-volatile solid-state storage devices. The memory 1506 optionally includes one or more storage devices located remotely from the one or more processing units 1502. The memory 1506, or the non-volatile memory within the memory 1506, includes a non-transitory computer-readable storage medium. The television apparatus 102 may include one or more input devices 1510 that facilitate user input, such as input buttons or controls. Additionally, the television apparatus 102 may use a microphone and voice recognition, or a camera and gesture recognition, to supplement or replace buttons. The television apparatus 102 may also include one or more output devices 1512, including speakers and / or visual displays, that enable the presentation of a user interface and the display of content.
[0113] In one embodiment, memory 1506, or the non-transitory computer-readable storage medium of memory 1506, stores the following programs, modules, and data structures, or a subset or superset thereof: an operating system 1514, which contains instructions for handling various basic system services and performing hardware-dependent tasks; One or more network interfaces 1504 (wired or wireless) and a network interface for connecting to the Internet, other wide area networks, local area networks, metropolitan areas, or a network communications module 1516 for connecting the networked television device 102 to other computers or systems (e.g., server system 104, media content source 110, remote control device 114) via one or more networks 112, such as a local area network, a cable television system, a satellite television system, an IPTV system, etc.; an integrated TV application 202 for presenting the recommended media content in an integrated user interface 300 and for playing media content provided by a media content source 204 in response to a user selection of the recommended media content; a local content casting application 902 configured to be invoked by the integrated TV application 202 in a restricted mode to play media content items selected according to content selection criteria, the local content casting application 902 including a plurality of media receiver modules 904, each corresponding to a respective media content source 110 and invoked to play media content items provided by the respective media content source, bypassing the corresponding media playback application 204; a media playback application 204 that executes to provide device-side functionality for media presentation and user account management associated with a corresponding media content source 110; Device data 1526, which stores data associated with controlling the display of media on the television device 102, including at least: casting settings 1528 for storing information associated with a user account of the casting device application, including one or more of account access information, information for device settings (e.g., service tier, device model, storage capacity, processing capabilities, communication capabilities, etc.), and information for automatic media display control; media playback application settings 1530 that store information associated with a user account for the media playback application 204, including one or more of account access information, user preferences for media content types, and viewing history data; Integrated TV application settings 1532 for storing information associated with a user account for the integrated TV application 202, including one or more account access information, user preferences for media content types, and viewing history data associated with the integrated TV application 202.
[0114] Each of the above-identified elements may be stored in one or more of the aforementioned memory devices and corresponds to a set of instructions for performing the functions described above. The above-identified modules or programs (i.e., sets of instructions) need not be implemented as separate software programs, procedures, modules, or data structures; thus, various subsets of these modules may be combined or otherwise rearranged in various embodiments. In an embodiment, memory 1506 optionally stores a subset of the above-identified modules and data structures. Additionally, memory 1506 optionally stores additional modules and data structures not described above.
[0115] It will also be understood that, while terms such as "first," "second," and the like are used herein to describe various elements in some instances, these elements should not be limited by these terms. These terms are used only to distinguish one element from another. For example, a first type of speech feature could be referred to as a second type of speech feature, and similarly, a second type of speech feature could be referred to as a first type of speech feature, without departing from the scope of the variously described embodiments. While a first type of speech feature and a second type of speech feature are both types of speech feature, they are not the same type of speech feature.
[0116] The terminology used in describing the various embodiments described herein is intended to be illustrative and not restrictive. For illustrative purposes only and not intended to be limiting. As used in describing the various described embodiments and the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms unless the context clearly dictates otherwise. It will also be understood that the term "and / or," as used herein, refers to and encompasses any and all possible combinations of one or more of the associated listed items. It will be further understood that, as used herein, the terms "comprises," "including," "comprises," and / or "comprising" specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.
[0117] As used herein, the term "if" is interpreted to mean "when" or "when" or "response to determining" or "response to detecting" or "following a determination that," depending on the context. Similarly, the phrase "when determined" or "when [a stated condition or event] is detected" is interpreted to mean "upon determining" or "in response to determining" or "in response to detecting a predetermined condition or event" or "in response to detecting a predetermined condition or event" or "following a determination that a predetermined condition or event has been detected," depending on the context.
[0118] While various figures depict some logical stages in a particular order, stages that are not order-dependent may be reordered, and other stages may be combined or broken down. While some permutations or other groupings are specifically mentioned, others will be apparent to those skilled in the art, and thus the ordering and groupings presented herein are not an exhaustive list of alternatives. Furthermore, it should be recognized that the stages may be implemented in hardware, firmware, software, or any combination thereof.
[0119] The above description has been set forth with reference to specific embodiments for purposes of explanation. However, the above exemplary description is not intended to be exhaustive or to limit the scope of the claims to the precise form disclosed. Many modifications and variations are possible in light of the above teachings. The embodiments were selected to best explain the principles underlying the claims and their practical application, thereby enabling others skilled in the art to best utilize the embodiments with various modifications as suited to the particular applications contemplated.
Claims
1. 1. A content-based program presentation method, comprising:
1. A networked media device having one or more processors and memory storing instructions for execution by the one or more processors, the networked media device being linked to a user account in a virtual user domain hosted by a server system, comprising: running an integrated media application to display an integrated user interface; receiving a selection of a selectable information item; and in response to receiving a selection of the selectable information item, displaying information of the media content item including a first affordance corresponding to the first content provider and a second affordance corresponding to the second content provider; the first content provider and the second content provider are included in a list of content providers offering the media content item; The user account associated with the integrated media application is subscribed to at least the first content provider in the list of content providers, and the content-based program presentation method further comprises: and executing a media playback application associated with the first content provider in response to receiving a selection of the first affordance, wherein executing the media playback application initiates playback of the media content item, the content-based program presentation method further comprising: responsive to receiving a selection of the second affordance, executing a media playback application associated with the second content provider, wherein executing the media playback application initiates playback of the media content item, and the first affordance has a priority over the second affordance based on the first content provider having a priority over the second content provider according to credentials of the user account.
2. The method further includes obtaining a media recommendation stream including an ordered sequence of selectable information items corresponding to the ordered set of unique media content items; 2. The content-based program presentation method of claim 1, wherein for each selectable information item, the media recommendation stream includes commands that are executed in response to the network-connected media device receiving the selection of the selectable information item.
3. The method further includes displaying a focus area in the integrated user interface having a plurality of focus items presented sequentially in chronological order while simultaneously displaying a non-focus area having a plurality of clusters; each cluster in the plurality of clusters comprises a subset of the ordered sequence of selectable information items; the selectable information item is a first selectable information item; a first cluster in the plurality of clusters includes the first selectable information item and a second selectable information item; 3. The content-based program presentation method of claim 2, wherein the method further comprises simultaneously displaying the first selectable information item and the second selectable information item of the first cluster in the integrated user interface.
4. the media content item is a first media content item; the list of content providers is a first list of content providers; The method further comprises: receiving a selection of the second selectable information item; and in response to receiving the selection of the second selectable information item, displaying information of the second media content item including a third affordance corresponding to a third content provider; the third content provider is included in a second list of content providers offering the second media content item; the second content provider is different from the first content provider; the user account associated with the integrated media application is subscribed to at least the second content provider in the second list of content providers; the media playback application is a first media playback application; 4. The content-based program presentation method of claim 3, wherein the method further includes, in response to receiving a selection of the third affordance, executing a second media playback application associated with the third content provider, wherein executing the second media playback application initiates playback of the second media content item.
5. 5. The content-based program presentation method of claim 3 or 4, wherein for each cluster in the plurality of clusters, the subset of the ordered sequence of selectable information items is physically arranged and configured to move along a first axis of the integrated user interface.
6. the plurality of focus items includes a plurality of selectable focus items; The content-based program presentation method of any one of claims 3 to 5, wherein the plurality of selectable focus items are displayed in the focus area according to a time sequence.
7. the plurality of clusters are distributed along a second axis of the unified user interface; the plurality of clusters includes a first subset of clusters and a second subset of clusters; Displaying the out-of-focus area having the plurality of clusters includes: displaying the first subset of clusters on the unified user interface; moving the first subset of clusters out of the unified user interface; The method of any one of claims 3 to 6, further comprising: moving the second subset of clusters along the second axis into the unified user interface.
8. arranging the plurality of clusters according to a predetermined cluster order; identifying a multi-dimensional integrated user activity characteristic of the user account; and for each cluster in the plurality of clusters, arranging the subset of the ordered sequence of selectable information items according to a predetermined information item order based on the multi-dimensional integrated user activity characteristics of the user account.
9. the user account is associated with the integrated media application; the integrated media application is associated with the network-connected media device; the integrated media application is configured to enable display of media content on the network-connected media device; 9. The content-based program presentation method of claim 1, wherein each of the first content provider and the second content provider is selected from a broadcast television service, a broadcast satellite service, a cable service, a subscription video-on-demand (SVOD) content provider, a transactional video-on-demand (TVOD) content provider, an advertisement-based video-on-demand (AVOD) service, an internet-based live streaming service, and a playback and time-shifted content playback source.
10. a network-connected media device linked to a user account in a virtual user domain hosted by a server system, at least one processor; and a memory storing instructions that, when executed by the at least one processor, cause the at least one processor to perform operations, the operations including: an operation for executing the integrated media application to display the integrated user interface; an operation for receiving a selection of a selectable information item; and an operation for displaying, in response to receiving a selection of the selectable information item, information of the media content item including a first affordance corresponding to the first content provider and a second affordance corresponding to the second content provider; the first content provider and the second content provider are included in a list of content providers offering the media content item; the user account associated with the unified media application is subscribed to at least the first content provider in the list of content providers, and the operation further comprises: and an operation for executing a media playback application associated with the first content provider in response to receiving a selection of the first affordance, the executing the media playback application initiating playback of the media content item, the operation further comprising: a network-connected media device, in response to receiving a selection of the second affordance, operating to execute a media playback application associated with the second content provider, wherein executing the media playback application initiates playback of the media content item, and the first affordance has a priority for the second affordance based on the first content provider having a priority over the second content provider according to credentials of the user account.
11. The operations further include obtaining a media recommendation stream including an ordered sequence of selectable information items corresponding to the ordered set of unique media content items; 11. The network-connected media device of claim 10, wherein for each selectable information item, the media recommendation stream includes commands that are executed in response to the network-connected media device receiving the selection of the selectable information item.
12. the operations further include displaying a focus area in the integrated user interface having a plurality of focus items presented sequentially in chronological order while simultaneously displaying a non-focus area having a plurality of clusters; each cluster in the plurality of clusters comprises a subset of the ordered sequence of selectable information items; the selectable information item is a first selectable information item; a first cluster in the plurality of clusters includes the first selectable information item and a second selectable information item; 12. The network-connected media device of claim 11, wherein the operations further include simultaneously displaying the first selectable information item and the second selectable information item of the first cluster in the unified user interface.
13. the media content item is a first media content item; the list of content providers is a first list of content providers; The operation is receiving a selection of the second selectable information item; and in response to receiving the selection of the second selectable information item, displaying information of the second media content item including a third affordance corresponding to a third content provider; the third content provider is included in a second list of content providers offering the second media content item; the second content provider is different from the first content provider; the user account associated with the integrated media application is subscribed to at least the second content provider in the second list of content providers; the media playback application is a first media playback application; 13. The network-connected media device of claim 12, wherein the operations further include executing a second media playback application associated with the third content provider in response to receiving a selection of the third affordance, wherein executing the second media playback application initiates playback of the second media content item.
14. 14. The network-connected media device of claim 12 or 13, wherein for each cluster in the plurality of clusters, the subset of the ordered sequence of selectable information items is physically arranged and configured to move along a first axis of the integrated user interface.
15. the plurality of focus items includes a plurality of selectable focus items; The network-connected media device of any one of claims 12 to 14, wherein the plurality of selectable focus items are displayed in the focus area according to a time sequence.
16. the plurality of clusters are distributed along a second axis of the unified user interface; the plurality of clusters includes a first subset of clusters and a second subset of clusters; Displaying the out-of-focus area having the plurality of clusters includes: displaying the first subset of clusters on the unified user interface; moving the first subset of clusters out of the unified user interface; and moving the second subset of clusters along the second axis into the unified user interface.
17. The operation is arranging the plurality of clusters according to a predetermined cluster order; identifying a multi-dimensional integrated user activity characteristic of the user account; and for each cluster in the plurality of clusters, arranging the subset of the ordered sequence of selectable information items according to a predetermined information item order based on the multi-dimensional integrated user activity characteristic of the user account.
18. the user account is associated with the integrated media application; the integrated media application is associated with the network-connected media device; the integrated media application is configured to enable display of media content on the network-connected media device; 18. The network-connected media device of claim 12, wherein each of the first content provider and the second content provider is selected from a broadcast television service, a broadcast satellite service, a cable service, a subscription video-on-demand (SVOD) content provider, a transactional video-on-demand (TVOD) content provider, an advertisement-based video-on-demand (AVOD) service, an internet-based live streaming service, and a playback and time-shifted content playback source.
19. A computer program comprising: The computer program includes instructions that, when executed by at least one processor of a networked media device linked to a user account in a virtual user domain hosted by a server system, cause the at least one processor to perform operations, including: an operation for executing the integrated media application to display the integrated user interface; an operation for receiving a selection of a selectable information item; and an operation for displaying, in response to receiving a selection of the selectable information item, information of the media content item including a first affordance corresponding to the first content provider and a second affordance corresponding to the second content provider; the first content provider and the second content provider are included in a list of content providers offering the media content item; the user account associated with the unified media application is subscribed to at least the first content provider in the list of content providers, and the operation further comprises: and an operation for executing a media playback application associated with the first content provider in response to receiving a selection of the first affordance, the executing the media playback application initiating playback of the media content item, the operation further comprising:
11. A computer program product comprising: in response to receiving a selection of the second affordance, operations for executing a media playback application associated with the second content provider, wherein executing the media playback application initiates playback of the media content item, and the first affordance has a priority over the second affordance based on the first content provider having a priority over the second content provider according to credentials of the user account.
Citation Information
Patent Citations
Method and system to navigate viewable content
JP2012231538A
Ranking User Search and Recommendation Results for Multimedia Assets Using Metadata Analysis
US20140223480A1
Methods and Systems for Automatic Media Output Based on User Proximity
US20170208363A1
Systems and methods for intelligently accessing media content based on rights
US20190325114A1