Mixed media content items for display on a focus area of a networked television device
By coupling the unified user interface and the server system on the networked TV device, and real-time recommendation of media content is recommended based on user data, the problems of complex user interface and unreal-time recommendation in the prior art are solved, and the user experience is improved.
Patent Information
- Application Number
- CN202080001262.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-03-13
- Publication Date
- 2025-05-02
- Estimated Expiration
- 2040-03-13
AI Technical Summary
When existing media display devices provide content-based media recommendations, the user interface is complex and it is difficult to recommend relevant media content in real time based on user interests and activities.
A unified user interface is realized on a networked TV device. Through coupling with the server system, multiple media content items are recommended in real time based on user search query, viewing history, purchase history and other data, and the promotion content is displayed in the focus area according to chronological order.
It realizes a unified user interface that is recommended in real time based on user interests and activities, improves the user experience and simplifies the discovery and access process of media content.
Smart Images

Figure CN114424579B_ABST
Abstract
Description
Technical Field
[0001] The present application generally relates to display technology, including but not limited to methods and systems for providing knowledge-based media content recommendations, displaying a unified user interface with content-based media recommendations, mixing multiple media content items to be displayed on a focus area, and / or projecting controlled media content associated with a networked television device. Background Art
[0002] Media display devices are used to stream various media content (e.g., television programs, movies, live broadcasts, personal videos, etc.) via one or more communication networks. Media display devices include various networked display devices, such as mobile phones, set-top boxes, or networked television devices. Networked television devices are often controlled via remote control interfaces that can be displayed directly on the media display device or separately on a second screen mobile device (e.g., a tablet computer, a laptop, or a mobile phone). A user can browse a list of content items and search for media content on a user interface displayed on a television device while controlling playback of media content via a dedicated remote device or a second screen mobile device (e.g., a tablet computer, a laptop, or a mobile phone). However, lists of content items are often organized based on media player applications configured to play the content items in a playlist. Summary of the invention
[0003] The present application relates to presenting a unified user interface with content-based media recommendations on a networked 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 specific user based at least in part on knowledge of the user's interests and activities (e.g., the user's search queries, search results, previous viewing history, purchase history, the user's sports activities). In some implementations, the media content recommendations are organized into multiple clusters 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 some embodiments, media content provided by different content sources (e.g., action movies from two different streaming services and broadcast TV channels) can be recommended in the same cluster.
[0004] In some implementations, the unified user interface includes a focus area (e.g., a prominently displayed area of the user interface) that is configured to display a series of media content items (e.g., advertisements, movie trailers, promotional images) in chronological order for the purpose of promoting the media content items, products, or events.
[0005] In some implementations, a user initiates playback of a content item from the unified user interface by selecting an icon or thumbnail corresponding to the content item. In some implementations, playback of a media content item selected from the unified user interface is handled by a dedicated application associated with a particular media streaming service or broadcast channel, a cable TV or over-the-air (OTA) tuner, a web browser, or an internal casting application associated with a networked TV displaying the user interface. In some implementations, playback of the content item is handled collaboratively by the media player application and the local content casting application, particularly when playback occurs in a restricted mode not supported by the media player application (e.g., in an age-restricted system context such as a media player interface customized for kids). In some implementations where the unified user interface provides both restricted and unrestricted modes and the media player application supports only unrestricted mode, the media player application is used to play the media content when the user interface is in unrestricted mode, and the local casting application is used to play the media content item when the system is in a restricted mode media player.
[0006] In various implementations, the unified user interface is coupled to a server system that hosts a virtual user domain including a user account associated with a user of the user interface. Hardware devices and software applications are integrated with each other via user accounts in the virtual user domain. In some implementations, the user account is associated with a networked TV device, and the unified media application is configured to present a unified user interface on the TV device. The user account can also be associated with one or more home devices (e.g., cameras, doorbells, and / or hazard detectors), one or more media player devices (e.g., set-top boxes and / or associated TV devices), one or more assistant devices (e.g., speaker assistants and / or display assistant devices) and their corresponding home security, media players, and assistant applications. The user account can also be associated with general user applications (e.g., email applications, social media applications, map applications, and online retailer applications).
[0007] In some implementations, and only to the extent approved by the user, the server system learns the user's interests and activities based on information reported by various applications associated with the user's account, and based on this information, generates targeted media content recommendations for the user. These recommendations are displayed on a unified user interface of a networked TV device that is communicatively coupled to the server system, third-party content providers, electronic program guide (EPG) providers, and advertisement (ad) providers via one or more communication networks.
[0008] Specifically, in one aspect, a method for identifying media content items for presentation on a networked TV device is implemented at a server system hosting a virtual user domain including a user account. The method includes associating a user account with a unified TV application, multiple media player applications, and multiple user applications. The unified TV application is associated with the networked TV device, and the multiple user applications include at least an Internet search engine. The method includes storing corresponding activity data for each of the unified TV application, the media player application, and the user application, including: storing search queries and search results for multiple search operations implemented by the Internet search engine from the user account, storing viewing information associated with the user account for a subset of the media player applications, and storing purchase information associated with the user account for a subset of the user applications. The method also includes: calculating a multi-dimensional unified user activity characteristic based on the stored activity data; and obtaining program information associated with multiple media player applications, thereby generating de-duplicated program information for multiple unique media programs. The method also includes: identifying an ordered subset of unique programs to be recommended to the user via the unified TV application in accordance with the user activity characteristics and program information for the plurality of unique programs; and enabling display of an ordered sequence of information items corresponding to the ordered subset of unique programs via the unified TV application, each information item representing a respective unique program provided by a corresponding media player application.
[0009] In another aspect, a program presentation method is implemented at a networked TV 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 obtaining a media recommendation stream from a server, the 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 corresponding command to be executed at the networked TV device in response to a user selection of the corresponding selectable information item. The program presentation method also includes: displaying multiple clusters on the unified user interface. Each cluster includes a subset of the ordered sequence of selectable information items, and the 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 also includes: in response to a first user selection of the first selectable information item, displaying information of a first media content item provided by a first content provider. The program presentation method also includes: in response to a second user selection of the second selectable information item, displaying information of a second media content item provided by a second content provider. The second content provider is different from the first content provider.
[0010] In another aspect, a method for presenting selected content provided by a media player application is implemented at a networked TV 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 a unified user interface to be displayed on the networked TV device. The unified TV application has a normal mode and a restricted mode and is associated with one or more standard media player applications and a local content projection application. The method also includes: displaying multiple clusters on the unified user interface, each of which has multiple optional information items, including in the restricted mode: identifying content selection criteria; and selecting multiple optional information items from program information associated with one or more standard media player applications according to the content selection criteria. The method also includes: receiving a user action on a first optional information item, and the first optional information item corresponds to a first media content item provided by a first content provider in the first media player application. The method also 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 networked TV device via a local content projection application in accordance with a determination that the unified TV application is operating in a restricted mode and a determination that the first media player application is not operating in a restricted mode; and displaying the first media content item corresponding to the first selectable information item on the networked TV device via the first media player application in accordance with a determination that the unified TV application is operating in a normal mode.
[0011] In another aspect, a method for displaying focus content is implemented at a server system that hosts a virtual user domain including a user account. The method includes associating a user account with a unified TV application and multiple media player applications. The unified TV application is associated with a networked TV device and is configured to enable display of media content on the TV device, and each of the multiple media player applications is configured to display media content provided by a corresponding content provider. The method also includes executing the unified TV application to enable display of a unified user interface on the networked TV device. The unified user interface has a focus area configured to display multiple focus items. The method also includes displaying multiple focus items in the focus area in sequence according to a chronological order. Each focus item is associated with a corresponding focus item provider selected from a marketing module, an advertiser, and a media recommendation engine. The multiple focus items include 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 multiple predefined user interface elements of a focus area of a unified user interface; and in response to the request, receiving multiple media content items associated with the first focus item from the first advertiser server and merging the multiple 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, which, when executed by one or more processors, cause the processors to perform any of the above methods. A computer system includes one or more processors and a memory having instructions stored thereon, which, when executed by one or more processors, cause the processors to perform any of the above methods. BRIEF DESCRIPTION OF THE DRAWINGS
[0013] For a better understanding of the various described implementations, reference should be made to the following detailed description in conjunction with the following drawings, in which like reference numerals refer to corresponding parts throughout the figures.
[0014] Figure 1 is an example media environment in which networked TV devices, server systems, and third-party content sources interact with each other via one or more communication networks, in accordance with some implementations.
[0015] Figure 2 is an example operating environment in accordance with some implementations in which the server system 104 provides knowledge-based media content recommendations to networked TV devices.
[0016] Figure 3 is an example unified user interface for display on a networked TV device in accordance with some implementations.
[0017] Figure 4 is an example flow chart of a method of providing knowledge-based media content recommendations to a networked TV device in accordance with some implementations.
[0018] Figure 5 is an example flow chart of a method of presenting program information on a networked TV device in accordance with some implementations.
[0019] Fig. 6A and Figure 6B 2 are two example media content item pages displayed on a networked TV device in accordance with some implementations.
[0020] Figure 7 is an example operating environment in which a unified TV application and a media player application cooperatively play media content items on a networked TV device 12, in accordance with some implementations.
[0021] Figure 8 is an example sequence 800 of user interfaces sequentially displayed on a networked TV device in response to user actions on a remote control device coupled to the networked TV device, in accordance with some implementations.
[0022] Fig. 9is an example operating environment in which a unified TV application, a media player application, and a content projection application of a networked TV device cooperatively enable playback of media content items, in accordance with some implementations.
[0023] Fig. 10A is an example unified user interface displayed on a networked TV device in restricted mode in accordance with some implementations.
[0024] Fig. 10B and Fig. 10C are two example sequences of user interfaces displayed sequentially on a networked TV device in response to user actions on a remote control device coupled to the networked TV device, in accordance with some implementations.
[0025] Fig.11 is an example flow chart of a method of presenting selected media content provided by a media player application on a networked TV device in accordance with some implementations.
[0026] Fig.12 is an example operating environment in accordance with some implementations in which focus items (also referred to as tiles) provided by a recommendation engine, one or more advertising (ad) providers, and a merchandising module are blended for display on a networked TV device.
[0027] Fig.13 is an example flow chart of a method of blending focus content (including VAST-based advertisements) on a networked TV device in accordance with some implementations.
[0028] Fig.14A is a block diagram illustrating a server system of a media environment in accordance with some implementations.
[0029] Fig. 14B is an example device and application registry for a server system in accordance with some implementations that stores information of one or more user accounts managed by the server system and information of user devices and applications associated with each of the one or more user accounts.
[0030] Fig.15 is a block diagram illustrating an example networked TV device configured to display a unified user interface and media content provided by a media player application in accordance with some implementations.
[0031] Like reference numerals refer to corresponding parts throughout the several views of the drawings. DETAILED DESCRIPTION
[0032] In various implementations, a media environment includes a networked TV device (also referred to as a smart TV device) having one or more processors and a memory storing instructions for execution by the one or more processors. The networked TV device is linked to a user account in a virtual user domain hosted by a server system. The networked TV device executes a unified TV application to display a unified user interface, on which media content items provided by various media content providers are selected and displayed for users of the networked TV device. In some implementations, the networked TV device 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 implementations, the dedicated remote control device is set to be close to the TV device. In some implementations, the dedicated remote control device or the client device having the remote control application is not physically close to the TV device, but is associated with a user account maintained at the server system of the media environment.
[0033] When a networked TV device executes a unified TV application, it obtains a media recommendation stream from a server system. The media recommendation stream includes an ordered sequence of optional information items corresponding to an ordered set of unique media content items or programs. The optional information items in the media recommendation stream are identified for a specific user based at least in part on the knowledge of the user of the networked TV device (e.g., the user's interests and activities). Specifically, a user account associated with the unified TV application is also associated with multiple media player applications and multiple user applications (e.g., search engines, map applications). The activity data of these applications is stored in association with the user account and is used to calculate the user's multi-dimensional unified user activity characteristics (also known as a knowledge graph). According to the user activity characteristics, the ordered sequence of optional information items is determined based on the program information associated with multiple media player applications and recommended to the user via the unified TV application.
[0034] An ordered sequence of selectable information items is displayed on a unified user interface of a networked TV device. For each selectable information item, the media recommendation stream includes a corresponding command to be executed at the networked TV device in response to a user selection of the corresponding selectable information item. The selectable information items are organized into clusters and arranged without reference to their content providers. That is, two information items associated with media content items provided by different content providers can be placed adjacent to each other, allowing the unified user interface to focus on the content and be ostensibly blind to the content providers.
[0035] In addition to the optional information items, the unified user interface optionally displays multiple focus items in the focus area in sequence according to the time sequence, that is, each focus item occupies the entire focus area in sequence. The focus area can be located on the upper half of the unified user interface. Each focus item is associated with a corresponding focus item provider selected from the promotion module, the advertiser, and the media recommendation engine. The focus items provided by the promotion module of the server system optionally correspond to media content items provided by the TVOD content provider and required to be paid for review. In some implementations, the focus items are advertising items provided by advertisers, and the advertising items comply with the customized video advertising delivery template (VAST). Specifically, the TV device sends a request for the focus item to the advertiser, and the request includes information of a predefined user interface element of the focus area. The advertising item is aggregated from multiple media content items provided by the advertiser based on the information of the predefined user interface element.
[0036] In some implementations, the unified TV application has a restricted mode in which content selection criteria are applied to limit the media content provided via standard media content applications for playback on the unified user interface. For example, the content selection criteria may be related to age-based content ratings and define the restricted mode as child-friendly. In restricted mode, the unified TV application optionally determines whether the standard media content application is operating in restricted mode. In accordance with the determination that the standard media content application is operating in 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 is not operating in restricted mode, the media content is displayed on the unified user interface via a local content projection application that is different from the standard media content application.
[0037] Reference will now be made in detail to implementations, examples of which are illustrated in the accompanying drawings. In the following detailed description, many specific details are set forth in order to provide a thorough understanding of the various described implementations. However, it will be apparent to one of ordinary skill in the art that the various described implementations may be practiced without these specific details. In other instances, well-known methods, processes, components, circuits, and networks have not been described in detail in order to avoid unnecessarily confusing aspects of the implementations.
[0038] Figure 11 is an example media environment 100 in accordance with some implementations, wherein a networked TV device 102, a server system 104, and third-party content sources 106-110 interact with each other via one or more communication networks 112. The media environment 100 corresponds to a virtual user domain created and hosted by the server system 104, and the virtual user domain includes a plurality of user accounts. The third-party content sources 106-110 include an advertisement 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 and 116-126, and is configured to recommend and stream media content for review by the user via the corresponding user account.
[0039] Specifically, one or more media devices associated with a user and a user account are set in the media environment 100 to provide the user with media content stored at and streamed from a remote content source. The remote content source is optionally a third-party media content source 110 or an internal media source hosted by a server system 104. In some implementations, one or more media devices include a networked TV device 102 that directly streams media content from a remote content source or integrates an embedded projection unit configured to stream media content for display to its audience. The networked TV device 102 is communicatively coupled to a dedicated remote control device 114 and / or a client device with a remote control application. The dedicated remote control device 114 can be set close to the TV device 102 and configured to communicate with the TV device 102 using digitally encoded pulses of infrared signals. Alternatively, in some cases, the dedicated remote control device 114 is configured to communicate with the TV device 102 via a communication network 112 (i.e., via a local area network and / or a wide area network) without having to be physically close to the TV device 102.
[0040] The networked TV device 102 includes one or more processors and a memory storing instructions for execution by the one or more processors. The instructions stored on the networked TV device 102 include a unified TV application, a local content casting application, and one or more media player applications associated with third-party content sources 106-110 and / or internal media sources associated with the server system 104. These applications are linked to a user account in a virtual user domain of the media environment 100.
[0041] Alternatively, in some implementations, the media devices provided in the media environment 100 include: a display device 116 that outputs the media content directly to the audience; and a projection device 118 that is coupled to the display device 116 and is configured to stream the media content to the display device 116. Examples of the display device 116 include, but are not limited to, a television (TV) display device and a music player. Examples of the projection device 118 include, but are not limited to, a set-top box (STB), a DVD player, and a TV box. Figure 1 In this example shown in , the display device 116 includes a TV display hardwired to a DVD player or set-top box 118. In contrast, in some implementations, the media devices disposed in the media environment 100 include: a computer screen 120A, which outputs media content to an audience; and a desktop computer 120B, which streams media content to the computer screen 120A. In some implementations, the media devices disposed in the 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 player applications that are configured to receive and play media content items provided by the third-party content sources 106-110 or an internal media source associated with the server system 104.
[0042] The server system 104 includes a unified media platform (UMP) 128 that is configured to manage media content recommendations and streaming to one or more media devices in the media environment 100. The UMP 128 is configured to receive a multi-dimensional unified user activity characteristic associated with a user account and program information of programs or content items provided by a media content source 110 from a knowledge engine 130a, and generate media content recommendations personalized for the user account. The unified user activity characteristic associated with the user account is obtained from a plurality of information sources 132, such as search engines, map applications, and online retailers associated with the user account, each of which provides activity data related to the activity of the user account via a corresponding software program or application. Optionally, the media content recommendations generated by the UMP 128 are presented on the networked TV device 102 via a server-side TV application 134, and the server-side TV application 134 enables the display of media content on the unified TV application on the TV device 102 in response to a user selection from the media content recommendations. Furthermore, 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 TV device 102 .
[0043] In some embodiments, activity data associated with a user account is collected from the TV application 134 and the casting service module 136 (which is therefore part of the information source 132) and returned to the knowledge graph engine 130 to update unified user activity characteristics and media content recommendations associated with the user account.
[0044] In some implementations, UMP 128 also includes a media search engine (e.g., Figure 2 The engine 222 in the media search engine is configured to receive a search query from the server-side TV application 134 or the projection service module 136, and identify one or more media content items based on program information of the program or content item provided by the media content source 110.
[0045] Note that user accounts of the virtual user domain hosted by the server system 104 are also associated with one or more other types of devices, such as smart, multi-sensing, networked auxiliary devices 138 and home devices 140 installed in the media environment 100 associated with the user of the networked TV device 102. Examples of auxiliary devices 138 include speaker auxiliary devices 142 and display auxiliary devices 144. The speaker auxiliary device 142 is capable of collecting audio input, recognizing user commands from the audio input, and implementing operations in response to the user commands (e.g., playing music, answering questions). The display auxiliary device 144 is capable of collecting audio and / or video input, recognizing user commands from the audio and / or video input, and implementing operations in response to the user commands (e.g., playing music, presenting an image or video clip, answering questions). Examples of home devices 140 include one or more of smart, multi-sensing, and networked: hazard detectors 146, camera systems 148, thermostats, entryway 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).
[0046] Each of the auxiliary devices 138 and the home devices 140 are optionally managed by a unified home device application or a dedicated user application and linked to a user account in the virtual domain in conjunction with the unified TV application of the networked TV 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 the home devices 140, thereby allowing the media content recommendations provided to the user to reflect such activity data collected directly from the physical environment associated with the media environment 100.
[0047] In some implementations, the server system 104 includes a device and application registry 150 that is configured to store information of one or more user accounts managed by the server system 104 and information of user devices and applications associated with each of the one or more user accounts. For example, the device and application registry 150 stores information of the networked TV device 102, the remote control device 114, the media devices 116-126, the auxiliary device 138, and the home device 140, and information of the corresponding unified TV application, remote control application, media player application, unified home device application associated with the auxiliary device 138 and the home device 140, and dedicated user application. Optionally, these media devices, auxiliary devices, and home devices associated with the same user account are distributed over different geographic regions. Optionally, these devices are located at the same physical location. Each media, auxiliary, or home device uses one or more communication networks 112 to communicate with another device or the server system 104. The communication 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 subnet are coupled via a wired connection, whereas at least some of the devices in the same subnet are coupled via a local radio communication network (e.g., ZigBee, Z-Wave, Insteon, Bluetooth, Wi-Fi, and other radio communication networks).
[0048] Figure 22 is an example operating environment 200 in accordance with some implementations, in which a server system 104 provides knowledge-based media content recommendations to a networked TV device 102. In the example 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 user accounts associated with the server-side TV application 134 and a unified TV application 202 implemented at the networked TV device 102. The user account is also associated with multiple media player applications 204 and multiple user applications such as a search engine 206. The server system 104 stores activity data for each of the unified TV application 202, the media player application 204, and the user applications. The knowledge graph engine 130 of the server system 104 calculates a multi-dimensional unified user activity characteristic 208 (e.g., related to user preferences or affinities) based on the stored activity data, and obtains program information associated with the multiple media player applications 204, thereby generating de-duplicated program information 210 for multiple unique programs (also referred to as media content items). The UMP 128 includes a recommendation engine 212 that is configured to compare the user activity characteristics 208 to program information 210 for a plurality of unique programs to identify an ordered subset 214 of unique programs to be recommended to the user via the unified TV application 202 .
[0049] In one example, the knowledge graph engine 130 receives a number of search queries related to "Star Wars" from the search engine 206 and determines that the user associated with the user account is interested in "Star Wars". A plurality of unique programs associated with the program information are ranked in view of the user's interest, preference, or affinity (i.e., as represented by the unified user activity characteristic 208). A number of the highest ranked unique programs are selected and classified into clusters. Given that the user is interested in "Star Wars" as indicated by the search query, the highest ranked unique programs include one or more media content items related to "Star Wars", and the clusters include clusters related to "Star Wars", e.g., "Sci-fi movies like Star Wars".
[0050] The ordered subset 214 of unique programs identified by the recommendation engine 212 is represented by an ordered sequence of information items, and the ordered sequence of information items is provided to the server-side TV application 134 and implemented for display via the unified TV application 202 of the networked TV device 102. In some cases, the activity data used by the knowledge graph engine 130 and the resulting unified user activity characteristics 208 are constantly changing. The ordered subset 214 of unique programs can be dynamically identified. For example, the ordered subset 214 of unique programs is updated periodically or in response to a user request by the networked TV device 102. In some cases, each unique program in the ordered subset 214 has a lifespan determined based on the corresponding content type of the corresponding unique program and must be removed from the recommended ordered subset after the lifespan expires. In some implementations, the unified user activity characteristics 208 vary with the time of day and the day of the week, as do the ordered subset 214 of unique programs recommended via the unified TV application 202.
[0051] The plurality of user applications serve as a plurality of information sources 132 to provide activity data of the user of the TV device 102, and include at least an Internet search engine 206. The server system 104 stores and provides search queries and search results for a plurality of search operations implemented by the Internet search engine 206 from the user account to the knowledge graph engine 130. Additionally, in some embodiments, the server system 104 stores viewing information associated with the user account for a subset or all of the media player applications 204 and purchase information associated with the user account for a subset of the user applications (e.g., an online retailer application). Such viewing information and purchase information are provided to the knowledge graph engine 130 in conjunction with the search queries and search results. In some implementations, the plurality of user applications include a voice or video assistance application 218 associated with a speaker assistance device 142 or a display assistance device 144. In some implementations, the plurality of user applications include a unified 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 .
[0052] Optionally, one of the media player applications 204 is provided by the server system 104 itself. Optionally, the media player application 204 is provided by a third-party media content source 110 that is different and / or remote from the server system 104. In one example, the virtual user domain is associated with a Google user account (e.g., abc@gmail.com ). The media player applications 204 include YouTube, which is provided by Google, and other media player applications that are not provided by Google and are hosted independently of Google (e.g., Netflix, Amazon Prime, Hulu).
[0053] In some implementations, the program information associated with the plurality of media player applications 204 includes one or more of the following: schedule information, brief plot summaries, cast information, rating information, and reviews for current and scheduled programs that are or will be available on each of the media player 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 player applications 204. Optionally, the program information is provided to the server system 104 by the EPG source 108. Alternatively, in some implementations, the program information associated with the plurality of media player applications 204 includes public media information downloaded from a public database independent of a user account. Note that the program information associated with the media player application can be provided to the server system 104 independent of whether the user account associated with the TV device 102 and the unified TV application 202 is subscribed to the media player application and has access rights to the media content provided via the media player application.
[0054] In some implementations, the program information related to the same media content item provided by different media content sources 110 is not the same and can change to different levels, so it is necessary to deduplicate the program information associated with multiple media player applications. Specifically, in some implementations, the first media content item is provided by the first media player application and is associated with the first program information. The second media content item is provided by the second media player application and is associated with the second program information in the second media player application. The second program information is different from the first program information. The knowledge graph engine 130 identifies the similarity level of the first program information and the second program information and determines that the similarity level exceeds the similarity threshold. In accordance with the determination, the knowledge graph engine 130 deduplicates 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 media content item and the second media content item. That is, the first media content item and the second media content item provided by two different media player applications correspond to the same unique program or media content item. In addition, in some implementations, the knowledge graph engine 130 identifies the similarity level of the first program information and the second program information by identifying the first keyword from the first program information and identifying the second keyword from the second program information. The first keyword and the second keyword are semantically compared to identify the similarity level of the first program information and the second program information. For example, two program information items are generally consistent, but record different semantically close keywords "police" and "inspector". The two program information items correspond to a relatively high similarity level that is above the similarity threshold.
[0055] In some implementations, in addition to deduplication, program information associated with multiple media player applications is processed to calculate program characteristics of a unique program in the unique programs. The multidimensional unified user activity characteristics are then compared to the calculated program characteristics to generate a consistency score. The recommendation engine 212 is configured to determine whether the consistency score exceeds a consistency threshold, and to identify the unique program in the unique programs to be recommended to the user via the unified TV application when the consistency score exceeds the consistency threshold. Alternatively, in some implementations, in order to identify each unique program in the ordered subset of unique programs, the recommendation engine 212 identifies one or more keywords based on the multidimensional unified user activity characteristics, and searches for the one or more keywords in the deduplicated program information of the multiple unique programs to identify the corresponding unique program in the ordered subset of unique programs.
[0056] In some implementations, the recommendation engine 212 receives rights information for a subset of the plurality of media player applications. For each of the ordered subset of unique programs, the recommendation engine 212 determines, based on the rights information, that the corresponding unique program corresponds to a corresponding media player application to which a user of the networked TV device has access rights. According to the rights information, the user may have access rights to the corresponding unique program because the user has subscribed to the corresponding media player application or because the corresponding unique program is free to review with or without registration. The corresponding unique programs that are free to review include media content that is freely available over the air, such as via a feed delivered by a broadcast service or IPTV, and media content that may be provided due to regional regulations or rights.
[0057] In other words, the personal preferences shown by the multi-dimensional unified user activity characteristics are used to select a set of unique programs from the unique programs provided by the media content source 110 and to 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 is entitled to (e.g., has access rights to) the media content provided by the media content source 110 via the corresponding media player application 204. Such rights information associated with the media player application is optionally entered by the user of the unified TV application during an initial application personalization process or execution phase of the unified TV application 202. Optionally, such rights information associated with the media player application is automatically extracted from the media player application.
[0058] In some implementations, UMP 128 also includes a media search engine 222 that is configured to receive a search query from server-side TV application 134 and identify one or more media content items based on program information 210 of a program or content item provided via media player application 204 .
[0059] The server system 104 has one or more processors and a memory storing instructions for execution by the one or more processors. In some implementations, the server system 104 includes a single server computer that is 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 some implementations, the server system 104 includes two or more separate server computers, each of which is 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.
[0060] Figure 3 is an example unified user interface 300 for display on a networked TV device 102 in accordance with some implementations. The unified TV application 202 is executed locally at the networked TV device 102 to display the unified user interface 300. As described above with reference to Figure 2 As illustrated, the server system 104 identifies an ordered subset 214 of unique programs based on the user activity characteristic 208 and the program information 210 for the plurality of unique programs. The unified TV application 202 obtains a media recommendation stream from the server system 104, the media recommendation stream comprising an ordered sequence of selectable information items 302-332 corresponding to the identified ordered subset 214 of unique media content items or programs. For each selectable information item, the media recommendation stream comprises a corresponding command to be executed in response to a user selection of the corresponding selectable information item displayed on the networked TV device 102.
[0061] In some implementations, the corresponding ordered sequence of optional information items is classified into an ordered list of clusters 334-340. That is, multiple clusters 334-340 are created for display on the unified user interface 300 and are physically arranged according to a predefined clustering order. Optionally, these clusters are dynamically created and arranged based on the multidimensional unified user activity characteristics 208. In some implementations, the clusters recommended via the unified TV application 202 have a certain heterogeneity level, that is, have a number of different clusters greater than a predetermined number. For example, three or more different clusters must be recommended via the unified TV application 202. Or, in some implementations, the clusters displayed on the unified user interface 300 have a similarity score that is controlled to be below the inter-cluster similarity threshold of many adjacent clusters. This is to avoid situations where similar clusters and information items are arranged adjacent to each other in highly correlated clusters. In some implementations, a benchmark for defining an inter-cluster similarity threshold across multiple adjacent clusters is established.
[0062] Each cluster includes one or more information items that are sorted in an ordered sequence into an ordered sublist of the information items in the corresponding cluster. For each cluster (e.g., first cluster 338), a corresponding subset of the ordered sequence of selectable information items (e.g., information items 318-324) is physically arranged according to a predefined information item order determined based on the multi-dimensional unified user activity characteristic 208 of the user account associated with the ordered sequence of selectable information items.
[0063] Examples of clusters shown on the unified user interface 300 include “New Release” 334, “PlayNext” 336, “Trending Now” 338, “Because You Watched Movie ABC” 340, and “Action Movies.” In another example, a cluster is specific to a single media player application (e.g., YouTube), and a subset of the information items associated with the cluster corresponds to a mixture of shows, movies, and TV show content provided by the single media player application. Each cluster thus corresponds to a corresponding ordered sublist of information items and is defined according to one or more of the following categories: content type (e.g., “Action Movies”), viewing history (e.g., “Because You Watched Movie ABC”), release time (e.g., “Trending”), or content source (e.g., different streaming services and broadcast TV channels that provide action movies). In particular, information items in the cluster of "New Release" are determined based on one or more of content type / format, content quality, recency, popularity, seasonality, and application life cycle associated with the media content items or programs corresponding to the information items in "New Release".
[0064] In some implementations, media content items corresponding to information items in a cluster of "New Release" or "Trending Now" are provided by a transactional video on demand (TVOD) content provider, and selection of a media content item in "New Release" or "Trending Now" is configured to cause a user interface that prompts a user of TV device 102 to collect payment for reviewing the media content item. Optionally, such cluster of "New Release" or "Trending Now" is provided as part of an ordered sequence of information items corresponding to an ordered subset 214 of unique programs determined based on unified user activity characteristic 208. Optionally, such cluster of "New Release" or "Trending Now" is provided to all user accounts independently of unified user activity characteristic 208 for individual user accounts as a supplement to the ordered sequence of information items corresponding to ordered subset 214 of unique programs.
[0065] In some implementations, media content items corresponding to information items in the cluster of "Action Movies" are provided by a subscription video on demand (SVOD) content provider. Selection of media content items in such a cluster is configured to implement a media content item page (also referred to as a summary page, e.g., Fig. 6A In some implementations, the media content items corresponding to the information items in the "Play Next" cluster are optionally provided by SVOD or TVOD content providers. In response to the selection of a media content item in such a "Play Next" cluster, the TV device 102 restarts displaying the media content item, thereby allowing the user of the TV device 102 to have one-click access to continue watching a particularly favorite show or movie.
[0066] For each cluster on the unified user interface 300, a portion or all of the ordered sublists of information items are displayed according to the total number of information items that the corresponding sublist has, the size of each information item, and the available display space associated with the corresponding cluster. In some implementations, each of the ordered subsets 214 of unique programs is different from any other unique program in the ordered subsets 214 of unique programs. Any two of the information items 302-332 displayed in the unified user interface 300 are different from each other. In some cases, any two of the information items 302-332 displayed in the same cluster of the unified user interface 300 are different from each other. Alternatively, in some cases, two of the information items 302-332 can be the same, but are recommended in different clusters, for example, the information item 310 associated with "Downton Abbey" appears in both the cluster of "PlayNext" 336 and the cluster of "Drama".
[0067] In some implementations, the unified user interface 300 includes application visibility items 342 and corresponding selectable information items displayed therewith, distinct from the ordered list of clusters. In response to a user action on the visibility item 342 (e.g., selection of the item 342 via the remote control 114), the unified TV application 202 updates the unified user interface 300 with pages that each represent an information item of the corresponding media player application 204. Figure 3 In some implementations not shown in FIG. 3 , the unified user interface 300 also includes alternative clusters of information items that each represent a respective one of the plurality of media player applications 204 .
[0068] In some implementations, the unified user interface 300 includes an EPG visibility item 348. In response to a user action on the visibility item 348 (e.g., a selection of the item 348 via the remote control device 114), the unified TV application 202 displays a unified EPG page that includes a schedule of multiple content items and programs provided through broadcast services (e.g., TV, cable, satellite, YouTube) and organized in chronological order. The content items and programs are selected based at least in part on the location of the networked TV device 102. In some implementations, the multiple content items and programs are also determined by comparing the multi-dimensional unified user activity characteristics 208 and the de-duplicated program information corresponding to the media content items and programs provided through the broadcast services.
[0069] The information items 302-332 are provided by more than one media content source 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. The first cluster 338 includes a first selectable information item 318 and a second selectable information item 320. The first selectable information item 318 and the second selectable information item 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 TV device 102 displays information of 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 TV device 102 displays information of the second media content item provided by the second content provider. The second content provider is different from the first content provider, but information of the first content provider and the second content provider is optionally hidden on the unified user interface 300 showing the clusters 334 - 340 and the selectable information items 302 - 332 .
[0070] In some embodiments, each of the first content provider and the second content provider is selected from a broadcast television service, a broadcast satellite service, a cable television 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, and a replay and time-shifted content playback source. Optionally, the first content provider or the second content provider relies on a tuner-based delivery of airborne media content. Optionally, the first content provider or the second content provider delivers a live TV stream based on an Internet Protocol Television (IPTV) or other Internet-delivered linear, live or synthetic live content source, and the first content provider or the second content provider is 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), a unique broadcast program corresponding to one of the information items 302-332 is permitted to be shown at the location of the TV device 102 in accordance with geographic restrictions associated with the broadcast television service.
[0071] Note that the unified TV application 202 is associated with a user account of a virtual user domain hosted by the server system 104. In some implementations, a first content provider is associated with a first media player application, and the first media player application is optionally associated with a user account of a virtual user domain hosted by the server system 104. In some implementations, a second content provider is associated with a second media player application, and the second media player application is optionally associated with a user account of a virtual user domain hosted by the server system 104.
[0072] In some cases, the first cluster 338 has more selectable information items than the number of slots on the corresponding space of the unified user interface 300 allocated to the first cluster 338. The subset of selectable information items corresponding to the first cluster 338 is physically arranged and configured to move along the first axis 344 of the unified user interface 300, so that different information items in the subset of selectable information items corresponding to the first cluster 338 can be displayed on the unified user interface 300 and recommended to the user of the TV device 102. Specifically, a first user action on information item 318 (e.g., a user pressing a "previous" button on the remote control device 114) can cause information items 318-322 to move right one slot to cause information item 324 to exit the unified user interface 300 and cause a new information item associated with the first cluster 338 to enter the unified user interface 300. Likewise, a second user action on information item 324 (e.g., a user pressing a "next" button on remote control device 114) can cause information items 320-324 to move left one slot to cause information item 318 to exit unified user interface 300 and cause another new information item associated with first cluster 338 to enter unified user interface 300. When one of the first user action and the second user action is applied continuously, the beginning or ending information item in first cluster 338 is displayed. When this occurs, one of the first user action and the second user action optionally does not change the information item displayed on unified 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 immediately following the beginning or ending information item, respectively.
[0073] Additionally, in some implementations, the plurality of clusters are distributed along a second axis 346 of the unified user interface 300 and include a first subset of clusters and a second subset of clusters. The first subset of clusters may be moved out of the unified user interface, and the second subset of clusters may be moved into the unified 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., a user pressing an "up" button on the remote control 114) can cause clusters 334-338 to move down one slot to cause cluster 340 to exit the unified user interface 300 and cause a new cluster preceding cluster 334 to enter the unified user interface 300 from the top edge. Likewise, a fourth user action on one of the information items 326-332 (e.g., a user pressing a "down" button on the remote control 114) can cause the clusters 336-340 to move up one slot to cause the clusters 336-340 to exit the unified user interface 300 and cause another new cluster following the cluster 340 to enter the unified user interface 300. When one of the third user action and the fourth user action is applied consecutively, the top or bottom cluster of the plurality of clusters is displayed. When this occurs, one of the third user action and the fourth user action optionally does not change the cluster displayed on the unified 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.
[0074] Figure 4 is an example flow diagram of a method 400 of providing knowledge-based media content recommendations to a networked TV device 102 in accordance with some implementations. The method 400 is performed by a server system 104 and, optionally, governed by instructions stored in a non-transitory computer-readable storage medium and executed by one or more processors of the server system 104. Figure 4 Each of the operations shown in the example may be stored in a computer memory or a non-transitory computer-readable storage medium (e.g., Fig.14A The computer-readable storage medium may include a disk or optical disk storage device, a solid-state storage device such as a flash memory, or one or more other non-volatile memory devices. The instructions stored on the computer-readable storage medium may include one or more of the following: 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.
[0075] The server system 104 hosts a virtual user domain including a user account. The server system 104 associates (402) the user account with a unified TV application 202, a plurality of media player applications 204, and a plurality of user applications. The unified TV application 202 is associated with the networked TV device 102, and the plurality of user applications include at least an Internet search engine 206. For each of the unified TV application, the media player application, and the user application, the server system stores (404) corresponding activity data. Specifically, the server system 104 stores (406) search queries and search results for a plurality of search operations implemented by the Internet query engine 206 from the user account, stores (408) viewing information associated with the user account for a subset of the media player applications 204, and stores (410) purchase information associated with the user account for a subset of the user applications. Thus, a multi-dimensional unified user activity characteristic 208 is calculated (412) based on the stored activity data.
[0076] The server system 104 also obtains (414) program information associated with the plurality of media player applications 204, thereby generating deduplicated program information 210 for the plurality of unique programs. In some implementations, the first media content item is provided by the first media player application and is associated with the first program information, and the second media content item is provided by the second media player application and is associated with the second program information in the second media player application. The server system 104 identifies (416) a level of similarity between the first program information and the second program information. Based on a determination (418) that the level of similarity exceeds a similarity threshold, the server system 104 deduplicates (420) the first program information for the first media content item and the second program information for the second media content item, and determines (422) that a unique program is associated with both the first media content item and the second media content item.
[0077] Based on 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 214 of unique programs to be recommended to the user via the unified TV application 202. The server system 104 enables 426 display of an ordered sequence of information items (e.g., items 302-332) corresponding to the ordered subset 214 of unique programs via the unified TV application 202. Each information item represents a respective unique program or media content item provided by a corresponding media player application 204.
[0078] Figure 5 is an example flow diagram of a method 500 of presenting program information on a networked TV device 102 in accordance with some implementations. The method 500 is performed by the networked TV device 102 and, optionally, governed by instructions stored in a non-transitory computer-readable storage medium and executed by one or more processors of the networked TV device 102. Figure 5 Each of the operations shown in can be stored in a computer memory or a non-transitory computer-readable storage medium (e.g., Fig.15 The computer-readable storage medium may include a magnetic or optical disk storage device, a solid-state storage device such as a flash memory, or one or more other non-volatile memory devices. The instructions stored on the computer-readable storage medium may include one or more of the following: 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.
[0079] The networked TV device 102 is linked to a user account in a virtual user domain hosted by the server system 104. The networked TV device 102 executes (502) the unified TV application 202 to display the unified user interface 300. The media recommendation stream is obtained (504) from the server system 104 and includes an ordered sequence of selectable information items 302-332 corresponding to the ordered set 214 of unique media content items or programs. For each selectable information item, the media recommendation stream includes (506) a corresponding command to be executed at the networked TV device 102 in response to a user selection of the corresponding selectable information item.
[0080] The networked TV device 102 displays (508) a plurality of clusters on the unified user interface 300. Each cluster includes (510) a subset of the ordered sequence of selectable information items 302-332. The first cluster 338 includes the first selectable information item 318 and the second selectable information item 320. The first selectable information item 318 and the second selectable information item 320 of the first cluster 338 are simultaneously displayed (510) on the unified user interface 300. In some embodiments, information of content providers associated with the first selectable information item and the second selectable information item is hidden on the unified user interface 300 that displays the first selectable information item and the second selectable information item in the first cluster 338.
[0081] In response to a first user selection of a first selectable information item, the networked TV device 102 displays (512) information about a first media content item provided by a first content provider (e.g., via a first media player application associated with the first content provider). In response to a second user selection of a second selectable information item, the networked TV device 102 displays (514) information about a second media content item provided by a second content provider (e.g., via a second media player application associated with the second content provider). The second content provider is different from the first content provider. In some cases, displaying the information about the first media content item includes initiating playback of the first media content item provided by the first content provider directly from the first media player application, and displaying the information about the second media content item includes initiating playback of the second media content item provided by the second content provider directly from the second media player application. Alternatively, in some cases, the information about the first media content item and the second media content item are displayed on their respective media content item pages (e.g., Fig. 6A on page 600 of the .
[0082] Fig. 6A and Figure 6B 6 and 650, respectively, are displayed on the networked TV device 102 according to some implementations. In some implementations, the media content item page 600 is displayed to present information of a first media content item provided by a first media player application associated with a first content provider in response to a user selection of a selectable information item (e.g., item 318) in the unified user interface 300. The information of the first media content item includes one or more of the following: scheduling information, a brief plot summary 612, cast information 614, rating information 616, and reviews of the first media content item. Optionally, the information of the first media content item includes one or more recommendations 618 related to the first media content item.
[0083] A list 602 of content providers that provide a first media content item is displayed on the media content item page 600. A first content provider 604 is listed at the top of the list 602 of content providers and has the highest priority thereon. A user account associated with the unified TV application 202 has subscribed to a subset or all of the content providers in the list 602. In some implementations, the user account has subscribed to at least the first content provider 604, allowing the recommendation engine 212 to rely on the rights information of the first content provider 604 and add the first content item to the ordered sequence of selectable information items provided to the networked TV device 102.
[0084] In addition, in some cases, 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 on the list of content providers 602 that provides the first media content item than the second content provider 606. On the other hand, note that different media content item pages can be displayed to present information of the second media content item in response to user selection of different selectable information items (e.g., item 320) in the unified user interface 300. The different list of content providers is displayed with the second content provider 606 associated with the second media content item listed at the top of the different list of content providers.
[0085] refer to Figure 6B In some implementations, a media content item page 650 is displayed to present information of a first media content item provided by a first media player application associated with a first content provider in response to a user selection of a selectable information item (e.g., item 318) in the unified user interface 300. The user account is not subscribed to the first media player application, and the media content item page 650 includes a functional visibility item 608 linked to the first media player application to allow the user account to subscribe to the services of the first content provider in response to a user action on the functional visibility item 608. In one example, the first media content item is relatively new, e.g., has recently ceased to be shown in theaters and began to be distributed by a TVOD content provider, and the functional visibility item 608 is linked to a uniform resource locator (URL) associated with the first media player application that supports review of the first media content item on a pay-per-view basis.
[0086] Figure 7 7 is an example operating environment 700 in accordance with some implementations in which a unified TV application 202 and a media player application 204 cooperatively play a media content item on a networked TV device 102. Both the unified TV application 202 and the media player application 204 are executed by the networked TV device 102. Playback of the media content item begins in the unified TV application 202. In some cases, playback of a first media content item provided by a first content provider from a first media player application is directly initiated in response to a user action on a corresponding selectable information item 318 displayed on the unified user interface 300. Alternatively, in some cases, playback of the first media content item is initiated from a corresponding media content item page 600, for example, in response to a user selection of a media content provider in a list 602 of media content providers.
[0087] When initiating playback of the first media content item, the unified TV application 202 relies on the first or other selected media player application 204 to play the first media content item. In some implementations, although the first media content item is played by the first media player application, the user interface elements of the first media player application are bypassed and stop being displayed to the user of the networked TV device 102. These bypassed user interface elements include user interface elements associated with the home page user interface of the first media player application. In contrast, alternative user interface features may not be skipped, and examples of these non-skipped user interface features include a startup 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 player application, the unified TV application 202 and the media player application 204 are seamlessly integrated together so that the first media content item can be played back without user intervention to switch between the two applications.
[0088] Figure 8 8 is an example sequence 800 of user interfaces sequentially displayed on a networked TV device 102 in response to a user action on a remote control device 114 coupled to the networked TV device 102, in accordance with some implementations. When a media content item page 600 (also referred to as a summary page) is displayed for a first media content item on the TV device 102, a first media content provider 604 is selected from a list 602 of media content providers by a first user action with an indication of a first media content provider (e.g., by pressing a play button 802 of 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 played on a media player interface 804 via a first media player application associated with the first media content provider 604. The media player application is executed and hidden in the background to enable playback of the first media content item.
[0089] In some implementations, a user request is received to stop playback of the first media content item on the media player interface 804 implemented by the first media player application. In response to the user request to stop playback of the first media content item, the home user interface 806 of the first media player application is displayed, and the networked TV device 102 operates in the media environment managed by the first media player application. The user of the networked TV device 102 can exit the media environment by selecting an exit affordance item on the home user interface 806 of the first media player application or pressing one or more predefined shortcut buttons of the remote control device 114.
[0090] Alternatively, in some implementations, in response to a user request to stop playback of the first media content item on the media player interface 804, display control is returned directly to the unified TV application 202 associated with the networked TV device 102. That is, in response to the user request, the networked TV device 102 displays the first media content item or the plurality of clustered media content item pages 600 on the unified user interface 300 via the unified TV application 202. By these means, the user of the networked TV device 102 may not be able to see the involvement of the first media player application at all, thereby allowing the media player application 204 to be seamlessly integrated within the unified TV application 202.
[0091] Fig. 9 900 is an example operating environment according to some implementations, wherein the unified TV application 202, the media player application 204, and the content projection application 902 of the networked TV device 102 cooperate to implement playback of media content items. The media player application 204 is a dedicated application associated with a specific media streaming service or broadcast channel, a cable TV or over-the-air (OTA) tuner, a web browser. The content projection application 902 is inside the networked TV device 102 that executes the unified TV application 202. The networked TV device 102 has a normal mode and a restricted mode, and the restricted mode is associated with content selection criteria. In normal mode, media content that is allowed to be played via the unified TV application 202 is selected from the media content provided by each media content source 110 associated with the media player application 204 without any restrictions other than the rights of the user account (i.e., the right to access the media content as permitted by the subscription). In contrast, in restricted mode, in addition to the rights of the user account, media content that is allowed to be played via the unified TV application 202 is selected according to content selection criteria from the media content provided by each media content source 110 associated with the media player application 204. Therefore, the implementation of restricted mode involves operations on both the server side and the TV device side.
[0092] On the server side, the recommendation engine 212 compares the user activity characteristics 208 with the program information 210 of the plurality of unique content items or programs to identify an ordered subset 214 of unique programs to be recommended to the user in the normal mode. In the restricted mode, the recommendation engine 212 applies content filtering criteria in conjunction with the user activity characteristics 208 and other filtering conditions, if any (e.g., rights information of the media player application 204), in obtaining the ordered subset 214 of unique programs. That is, in the restricted mode, the ordered subset 214 of unique programs is determined based at least in part on the content filtering criteria. The selectable information items displayed on the TV device 102 correspond to the ordered subset 214 of unique programs and, therefore, are selected from the program information 210 associated with one or more media player applications 204 according to the content selection criteria.
[0093] On the TV device side, the unified TV application 202 is executed to enable the unified user interface 300 to be displayed on the networked TV device 102. In normal mode, the unified TV application 202 does not impose any restrictions associated with the content selection criteria on the media content provided via the media player application 204, and the media player application 204 is therefore called by the unified TV application 202 to play the media content. Conversely, in restricted mode, the 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 by a first content provider in the first media player application. In response to the user action on the first selectable information item, the unified TV application 202 determines that the unified TV application is operating in restricted mode and the first media player application is not operating in restricted mode, and the local content projection application is called by the unified TV application 202 to display the first media content item corresponding to the first selectable information item on the networked TV device 102.
[0094] Alternatively, in some implementations, the unified TV application 202 determines that the unified TV application is operating in a restricted mode and the first media player application is capable of operating in the restricted mode, and the first media player application is invoked by the unified TV application 202 to display a first media content item corresponding to the first selectable information item on the networked TV device 102. In the restricted mode, the media player application 204 has priority over the content playback application 902 that is invoked only when the media player application 204 is not capable of operating in the restricted mode. The content projection application 902 is locally available to run on behalf of the media player application 204 that cannot comply with the content selection criteria.
[0095] In some implementations, the media player applications 204 are associated with respective third-party media content sources 110 independently of a unified TV application configured to introduce content selection criteria to limit the media content provided via the respective media player applications. Alternatively, in some implementations, the media player applications 204 are associated with a server system 104 that also implements the unified TV application 202. Additionally, in some implementations, the content projection application 902 includes a plurality of media receiver modules 904 corresponding to the plurality of media player applications 204. In the restricted mode, the unified TV application 202 applies content selection criteria to media content provided by the media content sources 110 associated with the media player applications 204 via the respective media receiver modules 904 of the content projection application 902.
[0096] Fig. 10A is an example unified user interface 1000 displayed on a networked TV device 102 in a restricted mode in accordance with some implementations. Fig. 10B and Fig. 10C 1040 and 1080 are two example sequences of user interfaces 1040 and 1080 sequentially displayed on the networked TV device 102 in response to user actions on the remote control device 114 coupled to the networked TV device 102 in accordance with some implementations. In the restricted mode, the content selection criteria define an age-based content rating, and the first media content item corresponding to the plurality of selectable information items displayed on the unified user interface 1000 complies with the age-based content rating. For example, a kids zone can be created in the corresponding unified TV application 202. In some implementations, 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 items displayed on the unified user interface 1000. The one or more second media content items are playable by a first media player application associated with the first content provider in the normal mode, but are prohibited from being played by the local content projection application 902 in the restricted mode.
[0097] In some implementations, the unified TV application 202 loads a criteria setting user interface and receives input of the age of a child associated with a user account associated with the unified TV application 202 on the criteria setting user interface. The unified TV application 202 is configured to automatically identify an age-based content rating based on the input of the age of the child. While operating in the restricted mode, the server system 104 identifies an age-based content rating defined based on the age of the child and selects a plurality of selectable information items for display on the unified user interface 1000 based on the age-based content rating, thereby creating a child-friendly media environment on the TV device 102.
[0098] As described above, in the restricted mode, the ordered subset 214 of unique programs is determined based at least in part on the content filtering criteria. The selectable information items displayed on the TV device 102 correspond to the ordered subset 214 of unique programs and are selected from the program information 210 associated with the one or more media player applications 204 based on the content selection criteria. In some embodiments, the program information 210 associated with the one or more media player applications 204 includes multiple characteristic fields for each media content item or program, such as an age rating field. 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 defining the age-based content rating.
[0099] Additionally, in some implementations, the first selectable information item is selected from first program information associated with the first media player application according to the content selection criteria, and the first program information is at least partially provided by an information source different from the first media player application. For example, the first media player application (e.g., HBO) does not have a kids' zone, and the corresponding program information 210 of the media content item provided thereby does not include an age rating field and may not be used to determine whether the media content item complies with age-based content ratings. As a solution, the recommendation engine 212 can extract the program information 210 from another information source different from the first media player application to determine whether the media content item provided via the first media player application complies with age-based content ratings.
[0100] refer to Fig. 10B In some implementations, when the unified user interface 1000 is displayed on the networked TV device 102 to present a plurality of selectable information items, the TV device 102 receives a user selection of a first selectable information item, for example, via the remote control device 114. In response to the user selection, the TV device 102 initiates playback of a first media content item corresponding to the first selectable information item. In one example, the TV device 102 sequentially displays a start-up 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. Reference Fig. 10C In some cases, the TV device 102 responds to the user selection of the first selectable information item by initiating playback of the first media content item 1006 corresponding to the first selectable information item without displaying the startup image frame 1002 .
[0101] While the first media content item is playing on TV device 102, TV device 102 receives a user request to stop playback of the first media content item, for example, via remote control device 114. In some implementations ( Fig. 10B), in accordance with a determination that the unified TV application 202 is operating in a restricted mode, the TV device 102 ceases displaying the first media content item and redisplays the plurality of clusters with selectable information items (i.e., the unified user interface 1000). Alternatively, in some implementations ( Fig. 10C ), in accordance with a determination that the unified TV application 202 is operating in a restricted mode, the TV device 102, in response to a user request, suspends display of the first media content item and displays a home user interface 1008 of the first media player application. Additionally, in response to an additional user request, the TV device 102 exits the home user interface and redisplays a plurality of clusters with selectable information items (i.e., the unified user interface 1000). Conversely, in accordance with a determination that the unified TV application is operating in a normal mode, the TV device 102 suspends display of the first media content item and implements one of the following: redisplaying a plurality of clusters on the unified user interface 1000 and displaying the home user interface 1008 of the first media player application.
[0102] Fig.11 1 is an example flow chart of a method 1100 of presenting selected media content provided by a media player application on a networked TV device 102 in accordance with some implementations. The method 1100 is performed by the networked TV device 102 and, optionally, governed by instructions stored in a non-transitory computer-readable storage medium and executed by one or more processors of the networked TV device 102. Figure 5 Each of the operations shown in can be stored in a computer memory or a non-transitory computer-readable storage medium (e.g., Fig.15 The computer-readable storage medium may include a magnetic or optical disk storage device, a solid-state storage device such as a flash memory, or one or more other non-volatile memory devices. The instructions stored on the computer-readable storage medium may include one or more of the following: 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.
[0103] The TV device 102 is linked to a user account in a virtual user domain hosted by the server system 104. The TV device 102 executes (1102) a unified TV application 202 to enable a unified user interface 1000 to be displayed on the networked TV device. The unified TV application 202 has (1104) a normal mode and a restricted mode, and is associated with one or more standard media player applications 204 and a local content projection application 902. A plurality of clusters are displayed (1106) on the unified user interface 1000. Each cluster has a plurality of selectable information items. The TV device 102 identifies (1108) content selection criteria, and selects (1110) a plurality of selectable information items from the program information 210 associated with the one or more media player applications 204 according to the content selection criteria.
[0104] The TV device 102 receives (1112) a user action on a first selectable information item corresponding to a first media content item provided by a first content provider in a first media player application. In response to the user action on the first selectable information item (1114), in accordance with a determination that the unified TV application is operating in a restricted mode and a determination that the first media player application is not operating in a restricted mode, the TV device 102 displays the first media content item corresponding to the first selectable information item on the networked TV device via the local content projection application. Alternatively, in response to the user action on the first selectable information item (1114), in accordance with a determination that the unified TV application is operating in a normal mode, the TV device 102 displays (1118) the first media content item corresponding to the first selectable information item on the networked TV device 102 via the first media player application.
[0105] In some implementations, the first content provider is configured to provide one or more second media content items, each of which is different from the plurality of media content items corresponding to the plurality of selectable information items. The first media player application is configured to play the one or more second media content items in a normal mode. The one or more second media content items are prohibited from being played by the local content projection application in a restricted mode.
[0106] Fig.121 is an example operating environment 1200 in accordance with some implementations, wherein focus items (also referred to as tiles) provided by a recommendation engine 212, one or more advertisement (ad) providers, and a promotion module 1202 are mixed for display on a networked TV device 102. The one or more advertisement providers include internal advertisement providers 1204 hosted and managed by a server system 104 and / or external third-party advertisement sources 106 that are not hosted by the server system 104. An advertisement management module 1208 is coupled to the one or more advertisement providers and is configured to manage advertisement content provided by the one or more advertisement providers. The recommendation engine 212 is configured to compare a multi-dimensional unified user activity characteristic 208 with program information 210 of a plurality of unique programs provided by a media content source 204 to identify an ordered subset 214 of unique programs to be recommended to a user via a unified TV application 202. In particular, the recommendation engine 212 is capable of recommending media content provided by broadcast services (television, satellite, or cable) and video on demand (VOD) content providers to target a user of the TV device 102 based on the user activity characteristic 208. The promotion module 1202 is hosted and managed by the server system 104 and is configured to provide focus items selected by the server system 104 for promotion. The focus items selected by the promotion module 1202 are optionally determined independently of the user activity characteristics 208 or based on the user activity characteristics 208 of the user. In some implementations, the focus items selected by the promotion module 1202 are advertisements that entreat users to subscribe to services provided by SVOD content providers, purchase or rent certain media content, or play online games. For example, the focus items selected by the promotion module 1202 include trailers related to newly released movies. In some implementations, the focus items selected by the promotion module 1202 are provided by the TVOD content provider independently of the user activity characteristics 208 of any particular user (that is, the focus items are associated with the TVOD content provider and pushed to the TV device by the promotion module 1202). Alternatively, in some cases, the focus items selected by the promotion module 1202 are determined by the server system 104 based on the user activity characteristics 208 of many users across different usage scenarios in the virtual user domain hosted by the server system 104. In one example, each of the focus items selected by the promotion module 1202 is determined based on one or more of: content type / format, content quality, recency, popularity, seasonality, and application life cycle of the corresponding focus item.
[0107] refer to Figure 3, the unified TV application 202 is executed to enable the unified user interface 300 to be displayed on the networked TV device 102, and 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 on the upper half area of the unified user interface 300. The multiple focus items are displayed sequentially in the focus area 362 according to a chronological order. Optionally, the multiple focus items are organized in time as a carousel, so as to smoothly transition to the start focus item after the end focus item is displayed. Each focus item is associated with a corresponding focus item provider selected from the promotion 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 the chronological order. In some implementations, the focus area 362 extends to partially overlap with a subset of the selectable information items 302-332. In one example, the focus area 362 covers the entire unified user interface 300 and overlaps all selectable information items 302-332. That is, a subset or all of the selectable information items 302-332 are displayed on the background of the focus area 362, and multiple focus items are sequentially displayed on the background for a subset or all of the selectable information items 302-332.
[0108] Additionally, the advertisement management module 1208 of the server system 104 also includes (in Fig.12 100 ). The TV device 102 includes an advertisement conversion module (not shown) configured to customize the media content items received from the external advertisement source 106 for display in the focus area 362 of the unified user interface 300. For example, the plurality of focus items include a first focus item. The TV device 102 sends a request for the first focus item to the first advertiser server 106, and the request includes information of a plurality of predefined user interface elements of the focus area of the unified user interface. In response to the request, the TV device 102 receives a plurality of media content items associated with the first focus item from the first advertiser server 106 and merges 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 some implementations, the plurality of media content items include a subset of media content items that comply with the Video Advertisement Delivery Template (VAST) standard for communication requirements between the first advertiser server and the networked TV device. Therefore, the advertisement conversion module of the advertisement management module 1208 is configured to merge the subset of content items into the first focus item and customize the first focus item for display on the unified user interface 3000 of the networked TV device 102.
[0109] Examples of predefined user interface elements for the focus area 362 include one or more of the following: background image, stylized title / logo image, description including buzz phrases, call to action, title text, application name, source tag, package name, click link, and video clip. The background image may include an image of characters without any text. The request for the first focus item sent to the first advertiser server defines which part of the image of the characters needs to remain blank in order to place the title. In some implementations, the logo image is required, while the stylized font is optional and promotes a line of description of the media content associated with the first focus item. The call to action includes selectable actions for the first focus item, such as "Subscribe Now", "Available for Rental", "Watch Now", "Subscription Required", "Coming Soon", "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. When the stylized title is not available, the title text is used. Whether the content is an advertisement, a promotional unit, or a recommendation, the first focus item carries a source tag that highlights the content to the user of the TV device 102. The click-through link includes a link to an application, content in an application, or a commercial webpage associated with the first focus item, and the click on the first focus item automatically results in activation of the link.
[0110] In one example, the first focus item includes a static advertising image of a movie currently playing in theaters, and the first focus item includes a link 364 for purchasing tickets and / or a link 366 for pre-ordering a digital versatile disk (DVD). In some implementations, the static advertising image displays "Now Available on DVD..." and has a link for renting a DVD of the corresponding movie.
[0111] In some implementations, 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 television service, an SVOD content provider, or an AVOD service. The recommendation engine 212 of the server system 104 identifies the multi-dimensional user activity characteristic 208 of a user of the networked TV device 102, obtains program information 210 associated with the plurality of media player applications 204, and identifies highlighted media content items to be recommended to the user via the unified TV application. Specifically, the highlighted media content items are displayed to the user of the TV device 102 in a focus area 362 of the unified user interface 300. Information of the highlighted media content can be further provided to the recommendation engine 212 to update the multi-dimensional user activity characteristic 208 and subsequent recommendations of media content items.
[0112] In some implementations, the plurality of focus items sequentially displayed in the focus area 362 also include a second focus item, and the second focus item includes a video clip or a static image configured to highlight a media content item provided by a TVOD content provider. The video clip or static 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 static image, a TVOD media application is executed to allow a user to order and play a media content item corresponding to the second focus item. In some cases, this video clip or static image is sponsored by a 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 the user of the networked TV device 102.
[0113] refer to Figure 3 In some implementations, multiple focus items are displayed simultaneously with multiple selectable information items organized in clusters. Although the selectable information items of each cluster are distributed parallel to the first axis 344, the focus area and the multiple clusters are distributed along a second axis 346 of the unified user interface 300 that is different from the first axis 344. The focus area is fixed on the unified user interface 300, regardless of the display of multiple selectable information items on a non-focus area that is different from and does not overlap the focus area. Specifically, regardless of whether the selectable information items move within, enter, or leave the non-focus area, the focus items are displayed in the fixed focus area. In some implementations, multiple focus item indicators 368 are displayed in conjunction with the focus items. Each focus item indicator 368 represents a corresponding one of the multiple focus items. For each of the multiple focus items, in accordance with the determination that the corresponding focus item is displayed in the focus area, the TV device 102 displays a corresponding focus item indicator that conforms to the activity specification 370a. In accordance with a determination that the corresponding focus item is not displayed in the focus area, the TV device 102 displays a corresponding focus item indicator that conforms to an inactive specification 370b that is different from the active specification 370a.
[0114] In some cases, the TV device 102 receives a predefined user action associated with the corresponding focus item (e.g., a click of a previous or next button on the remote control device 114) while displaying a focus item among the plurality of focus items in the focus area 362. In response to the predefined user action, the TV device 102 ceases to display the corresponding focus item and displays in the focus area of the unified user interface (1) a subsequent focus item that chronologically follows the corresponding focus item or (2) a previous focus item that chronologically precedes the corresponding focus item.
[0115] The focus item is frequently updated in the focus area 362 to maintain its freshness. For example, the server system 104 determines the number of times that the plurality of focus items have been sequentially displayed in the focus area 362 according to the chronological order. In accordance with the determination that the number of times is equal to or greater than a predetermined playback threshold (e.g., 2 times), the server system 104 replaces at least one of the plurality of focus items with a substitute focus item.
[0116] Additionally, in some implementations, the server system 104 is configured to de-duplicate focus items displayed sequentially in the focus area 362. In addition to the first focus area, the plurality of focus items also includes a second focus item. The mixer 1206 receives two or more original items, each of which is from a different content provider selected from the promotion module 1202, the advertiser 106, and the media recommendation engine 212. The mixer 1206 de-duplicates the two or more original items according to a preferred order of the promotion module 1202, the advertiser 106, and the media recommendation engine 212 to generate the second focus item. In one example, the preferred order defines a decreasing preference of the advertiser 106, the promotion module 1202, and the media recommendation engine 212, which prioritizes the advertiser 106 over any other content source.
[0117] In some embodiments, information of the user action associated with the focus area is provided to one of the recommendation engine 212, the advertisement management module 1208, and the promotion module 1202 to provide a focus item displayed in the focus area. The information of the user action indicates a user preference of the user of the networked TV device 102 related to the plurality of focus items displayed in the focus area. Each of the recommendation engine 212, the advertisement management module 1208, and the promotion module 1202 may determine one or more additional focus items for the user based on the user preference of the user or based on the user preferences of a plurality of users related to the user of the networked TV device 102.
[0118] Fig.13 1 is an example flow chart of a method 1300 of blending focus content (including VAST-based advertisements) on a networked TV device 102 in accordance with some implementations. The method 1300 is performed by a server system 104 and, optionally, is governed by instructions stored in a non-transitory computer-readable storage medium and executed by one or more processors of the server system 104. Fig.13 Each of the operations shown in can be stored in a computer memory or a non-transitory computer-readable storage medium (e.g., Fig.14AThe computer-readable storage medium may include a disk or optical disk storage device, a solid-state storage device such as a flash memory, or one or more other non-volatile memory devices. The instructions stored on the computer-readable storage medium may include one or more of the following: 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.
[0119] The server system 104 hosts a virtual user domain including user accounts. The user accounts are associated with a unified TV application 202 and multiple media player applications 204 (1302). The unified TV application 202 is associated with a networked TV device 102 (1304) and is configured to enable display of media content on the TV device 102, and each of the multiple media player applications 204 is configured to display media content provided by a corresponding content provider 110. The unified TV application 202 is executed (1306) to enable display of a unified user interface on the networked TV device 102. The unified user interface 300 has a focus area 362 configured to display multiple focus items. Multiple focus items (also referred to as tiles) are displayed in sequence in the focus area 362 according to a chronological order, for example in a carousel (1308). Each focus item is associated with a corresponding focus item provider selected from a promotion module, an advertiser, and a media recommendation engine.
[0120] The plurality of focus items include a first focus item. The server system 104 sends (1310) a request for the first focus item to the first advertiser server. The request includes information of a plurality of predefined user interface elements of a focus area of the unified 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 merges the plurality of media content items into the first focus item for display on the focus area 362 during a time slot corresponding to the first focus item.
[0121] It should be understood that having described Figure 4 , Figure 5 , Fig.11 and Fig.13 The specific order of operations in each of the methods 400, 500, 1100, and 1300 is merely exemplary and is not intended to indicate that the described order is the only order in which the operations can be performed. One of ordinary skill in the art will recognize various ways to display information items and focused content in a unified user interface as described herein. Additionally, it should be noted that the details described with respect to one of the processes 400, 500, 1100, and 1300 may also be applied in a similar manner to any other of the methods 400, 500, 1100, and 1300. For the sake of brevity, similar details are not repeated.
[0122] Fig.14A 14 is a block diagram illustrating a server system 104 of a media environment according to some implementations. 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 for interconnecting these components (sometimes referred to as chipsets). The server system 104 can include one or more input devices 1410 to facilitate user input, such as a keyboard, mouse, voice command input unit or microphone, touch screen display, touch-sensitive input pad, gesture capture camera, or other input buttons or controls. In addition, the server system 104 can use a microphone and voice recognition or a camera and gesture recognition to supplement or replace the keyboard. In some implementations, the server system 104 includes one or more cameras, scanners, or photo sensor units for capturing images of, for example, a graphic series code printed on an electronic device. The server system 104 can also include one or more output devices 1412 that enable the presentation of a user interface and display of content, including one or more speakers and / or one or more visual displays.
[0123] 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 one or more processing units 1402. Memory 1406 or alternatively non-volatile memory within memory 1406 includes non-transitory computer-readable storage media. In some implementations, memory 1406 or non-transitory computer-readable storage media of memory 1406 stores the following programs, modules, and data structures, or a subset or superset thereof:
[0124] = Operating system 1416, including processes for handling various basic system services and for performing hardware-related tasks;
[0125] A network communication module 1418 for connecting the server system 104 to other devices (e.g., various servers in the server system 104, advertising sources 106, EPG sources 108, media content sources 110, networked TV 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.;
[0126] • a projection device application 1420 that is executed to provide server-side functionality for device provisioning, device control, and user account management associated with the projection device 118;
[0127] ● One or more internal media player applications 1422 (e.g., YouTube and Google Play), which are executed to provide server-side functionality for media display and user account management;
[0128] ● 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 executed to provide server-side functionality for device provisioning, device control, data processing, and data review for a corresponding auxiliary device 138 or home device 140; and
[0129] • Server-side TV applications 134 , which are executed to provide server-side functionality for device provisioning, device control, data processing, and data review for the networked TV device 102 ;
[0130] A knowledge graph engine 130 executed to collect activity data from media player applications and user applications associated with a user account, calculate multi-dimensional unified user activity characteristics 208 based on the collected activity data, and collect program information (de-duplicated or not) associated with the media player application 204;
[0131] • a recommendation engine 212 executed to compare the user activity characteristics 208 with program information 210 for a plurality of unique programs to identify an ordered subset 214 of unique programs to be recommended to the user via the unified TV application 202;
[0132] • a promotion module 1202 that is executed to provide focus items selected for promoting media content independent of user activity characteristics 208 of individual user accounts;
[0133] ● an advertisement management module 1208 executed to manage advertisement content provided by the internal advertisement providers 1204 or the external advertisement sources 106, including an advertisement conversion module executed to customize media content items received from the external advertisement sources 106, e.g., according to a custom VAST format, for display in the focus area 362 of the unified user interface 3000;
[0134] A mixer 1206 (also referred to as a focus item aggregation module) that is executed to sequentially mix a plurality of focus items provided by two or more content sources (e.g., the recommendation engine 212, the promotion module 1202, and the advertisement provider 1204 or 106) according to a time sequence; and
[0135] ● a media search engine 222 executed 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 based on program information of the programs or content items provided by the media content source 110; and
[0136] Server system data 1440, which stores data associated with at least the control of media display on the networked TV device 102, including:
[0137] o User account settings 1442, for storing account settings for one or more user accounts and settings for devices and applications associated with each user account and managed by the server system 104, including:
[0138] ■ TV device settings 1444, for storing information associated with the TV device 102, including common device settings (e.g., service tier, device model, storage capacity, processing capability, communication capability, 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);
[0139] ■ projection device settings 1446 for storing information associated with a user account of projection device 118 and projection device application 1420, including one or more of account access information, information for device settings (e.g., service tier, device model, storage capacity, processing capability, communication capabilities, etc.);
[0140] ■ media player application settings 1448 for storing information associated with a user account of one or more media player applications 204, including one or more of account access information, user preferences for media content types, and viewing history data;
[0141] ■ Remote control settings 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 these media content functions; and
[0142] ■ a device and application registry 150 for storing information of one or more user accounts managed by the server system 104 and information of user devices and applications associated with each of the one or more user accounts;
[0143] o User account data 1454 for storing data generated by various applications of multiple devices associated with each of the user accounts managed by the server system 104, such as display information associated with media content currently displayed on the TV device 102;
[0144] ○ 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 that unifies the TV application 202, the media player application 204, and the user application 1424; multi-dimensional unified user activity characteristics 208 derived from the activity data; and program information 210 associated with multiple media player applications 204; and
[0145] ○ One or more content selection criteria 1460 applied by the unified TV application 202 to control the media content displayed on the TV device 102 .
[0146] Each of the above identified elements can be stored in one or more of the previously mentioned memory devices, and corresponds to the instruction set for performing the above functions. It is not necessary to implement the above identified modules or programs (i.e., instruction sets) as separate software programs, processes, modules or data structures, and therefore can combine or otherwise rearrange each subset of these modules in various implementations. In some implementations, memory 1406 optionally stores the above identified modules and a subset of data structures. In addition, memory 1406 optionally stores additional modules and data structures not described above.
[0147] Fig. 14B 1482 is an example device and application registry 150 of the server system 104 according to some implementations, which stores information of one or more user accounts managed by the server system 104 and information of user devices and applications associated with each of the one or more user accounts. In this example, the user accounts 1482 are grouped according to email addresses (e.g., abc@gmail.com ) and is associated with multiple user devices including a projection device 118 (e.g., Google Chromecast), a surveillance camera 148 (e.g., a Nest camera), and a remote control device 114. The device and application registry 150 stores one or more of a device identification (ID), a device type, a device manufacturer ID, and an Internet Protocol (IP) address for each user device associated with a user account. When a user device is linked to a user account 1482, the device ID is assigned to the user device. 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 a user account 1482, the corresponding manufacturer ID is requested for the purpose of authenticating the corresponding user device. The IP addresses of the user devices are applied to track the location of the user devices on the Internet. They are acquired during the process of linking the user device to the user account 1482, and are updated when the location of the user device changes on the Internet.
[0148] In some implementations, a first user device associated with a user account 1482 is linked to a second user device associated with the user account 1482. For example, a remote control device 114 (device ID=10) is linked to a networked TV device 102 (device ID=11), but not to a projection device 118 (device ID=1). In some implementations, a user account 1482 includes two or more remote control devices 114, each of which is uniquely linked to a particular networked TV device 102 or projection device 118. In some implementations, a user account 1482 includes one remote control device 114 that is linked to more than one projection device or TV device according to a predetermined linking rule (e.g., according to the distance of the remote control device 114 to any of the more than one projection device or TV device).
[0149] In some implementations, the user can be assigned a username and password based on an email address (e.g., abc@gmail.com ) is also associated with the unified TV application 202, multiple media player applications 204, and multiple user applications 1424. Each of the media player applications 204 is configured to display media content items or programs provided by broadcast services (television, satellite, or cable TV) and VOD content providers. The VOD content provider is optionally a server system 104 or a third-party content provider different from the server system 104. Examples of media player applications 204 include, but are not limited to, YouTube, Google Play, Netflix, Hulu, Amazon Prime, HBO, and some TV channel applications (e.g., ESPN, NBC, ABC, and PBS). Conversely, examples of multiple user applications 1424 include email applications (e.g., Google Gmail), map applications (e.g., Google Map), auxiliary applications (e.g., Google Assistance), home device applications (e.g., Nest Camera, Nest Hello), and online retailer applications (e.g., Google Shopping). Optionally, each media player or user application stores one or more of: an application identification (ID), application type, a flag indicating whether this is a first or third party application, and entitlement / subscription information (eg, membership type, credentials).
[0150] Fig.151 is a block diagram illustrating an example networked TV device 102 configured to display a unified user interface and media content provided by a media player application 204 in accordance with some implementations. The networked TV device 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 alternatively the non-volatile memory within the memory 1506 includes a non-transitory computer-readable storage medium. The TV device 102 can include one or more input devices 1510, such as input buttons or controls, to facilitate user input. In addition, the TV device 102 can use a microphone and voice recognition or a camera and gesture recognition to supplement or replace buttons. The TV device 102 can also include one or more output devices 1512, including speakers and / or visual displays, that enable presentation of a user interface and display of content.
[0151] In some implementations, the memory 1506 or the non-transitory computer-readable storage medium of the memory 1506 stores the following programs, modules, and data structures, or a subset or superset thereof:
[0152] = Operating system 1514, including processes for handling various basic system services and for performing hardware-related tasks;
[0153] A network communication module 1516 for connecting the networked TV device 102 to other computers or systems (e.g., server system 104, media content source 110, remote control device 114) via one or more network interfaces 1504 (wired or wireless) and one or more networks 112, such as the Internet, other wide area networks, local area networks, metropolitan area networks, cable TV systems, satellite TV systems, IPTV systems, etc.;
[0154] A unified TV application 202 for presenting recommended media content to the unified user interface 300 and playing media content provided by the media content source 204 in response to a user selection of the recommended media content;
[0155] a local content casting application 902 configured to be invoked by the unified TV application 202 in a restricted mode for playing a media content item selected according to a content selection criterion, comprising a plurality of media receiver modules 904, each of which corresponds to a respective media content source 110 and is invoked to bypass a respective media player application 204 and play a media content item provided by the respective media content source;
[0156] ● a media player application 204 that is executed to provide device-side functionality for media display and user account management associated with a corresponding media content source 110; and
[0157] Device data 1526, storing at least data associated with the control of media display on TV device 102, including:
[0158] o projection settings 1528, for storing information associated with a user account of a projection device application, including one or more of account access information, information for device settings (e.g., service tier, device model, storage capacity, processing power, communication capabilities, etc.), and information for automatic media display control;
[0159] o Media player application settings 1530 for storing information associated with a user account of the media player application 204, including one or more of account access information, user preferences for media content types, and viewing history data; and
[0160] o Unified TV application settings 1532, for storing information associated with a user account of the unified TV application 202, including one or more of account access information associated with the unified TV application 202, user preferences for media content types, and viewing history data.
[0161] Each of the above identified elements can be stored in one or more of the previously mentioned memory devices, and corresponds to the instruction set for performing the above functions. It is not necessary to implement the above identified modules or programs (i.e., instruction sets) as separate software programs, processes, modules or data structures, and therefore can combine or otherwise rearrange each subset of these modules in various implementations. In some implementations, memory 1506 optionally stores the above identified modules and a subset of data structures. In addition, memory 1506 optionally stores additional modules and data structures not described above.
[0162] It should also be understood that although in some instances, the terms first, second, etc. are used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another element. For example, without departing from the scope of the various described implementations, a first type of audio feature can be referred to as a second type of audio feature, and similarly, a second type of audio feature can be referred to as a first type of audio feature. The first type of audio feature and the second type of audio feature are two types of audio features, but they are not the same type of audio features.
[0163] The terms used in the description of the various described implementations herein are only used for the purpose of describing specific implementations and are not intended to be restrictive. As used in the description of the various described implementations and the appended claims, unless the context clearly indicates otherwise, the singular forms "one", "an" and "the" are also intended to include plural forms. It should also be understood that the term "and / or" as used herein refers to and includes any and all possible combinations of one or more of the related enumerated items. It should be further understood that the terms "comprising", "comprising", "including" and / or "including" when used in this specification specify the presence of stated features, integers, steps, operations, elements and / or components, but do not exclude the presence or increase of one or more other features, integers, steps, operations, elements, components and / or their groups.
[0164] As used herein, the term "if" is optionally interpreted to mean "when" or "at the time of" or "in response to a determination" or "in response to detecting" or "in accordance with a determination of". Similarly, the phrase "if it is determined" or "if [stated condition or event] is detected" is optionally interpreted to mean "at the time of the determination" or "in response to the determination" or "at the time of detecting [stated condition or event]" or "in response to detecting [stated condition or event]" or "in accordance with a determination that [stated condition or event] is detected", depending on the context.
[0165] Although the various figures illustrate many logical stages in a particular order, stages that are not order-dependent may be reordered and other stages may be combined or decomposed. Although some reordering or other groupings are specifically mentioned, other groupings will be apparent to one of ordinary skill in the art, so the ordering and groupings presented herein are not an exhaustive list of alternatives. Furthermore, it should be appreciated that the stages can be implemented in hardware, firmware, software, or any combination thereof.
[0166] For purposes of illustration, the foregoing description has been described with reference to specific implementations. However, the above illustrative discussion is not intended to be exhaustive or to limit the scope of the claims to the precise forms disclosed. Many modifications and variations are possible in light of the above teachings. Implementations are selected to best illustrate the principles underlying the claims and their practical application, thereby enabling others skilled in the art to best use implementations with various modifications as appropriate for the particular use contemplated.
Claims
1. A method for displaying focus content, comprising: At a server system having one or more processors and a memory storing instructions for execution by the one or more processors, wherein the server system hosts a virtual user domain including user accounts: associating the user account with a unified TV application and a plurality of media player applications, wherein the unified TV application is associated with a networked TV device and is configured to enable display of media content on the TV device, and each of the plurality of media player applications is configured to display media content provided by a corresponding content provider; executing the unified TV application to enable display of a unified user interface on the network-connected TV device, wherein the unified user interface has a focus area configured to display a plurality of focus items; The plurality of focus items are sequentially displayed in the focus area according to a time sequence, wherein each focus item is associated with a corresponding focus item provider selected from a marketing module, an advertiser, and a media recommendation engine, and the plurality of focus items include a first focus item, comprising: Sending a request for the first focus item to a first advertiser server, the request including information of a plurality of predefined user interface elements of a focus area of the unified user interface; and In response to the request, multiple media content items based on information of the multiple predefined user interface elements are received from the first advertiser server, the multiple media content items are associated with the first focus item, and the multiple media content items are merged into the first focus item for display on the focus area during a time slot corresponding to the first focus item.
2. The method according to claim 1, wherein: The plurality of predefined user interface elements of the focus area include one or more of: a background image, a stylized title / logo image, a description, a call to action, title text, a source tag, a buzzword, and a video clip.
3. The method according to claim 1, wherein: The plurality of media content items includes a subset of media content items that require compliance with a Video Ad Serving Template (VAST) standard for communication between the first advertiser server and the networked TV device; and The subset of content items, when incorporated into the first focus item, is customized for display on the networked TV device.
4. The method according to claim 1, wherein: The first focus item includes a static advertising image of a movie currently playing in a theater, and the first focus item includes a link for purchasing tickets and / or a link for pre-ordering a digital versatile disk (DVD).
5. The method according to claim 1, wherein: The plurality of focus items include video clips or still images configured to highlight media content items provided by one or more of a broadcast television service, a broadcast satellite service, a cable television service, a subscription video on demand (SVOD) content provider, and an advertisement-based video on demand (AVOD) service, further comprising: identifying a multi-dimensional user activity characteristic of a user of the networked TV device; obtaining program information associated with the plurality of media player applications; and The highlighted media content item is identified, by the media recommendation engine, to be recommended to the user via the unified TV application.
6. The method according to claim 1, wherein: The plurality of focus items include a second focus item, and the second focus item includes a video clip or a still image configured to highlight a media content item provided by a transactional video on demand (TVOD) content provider, further comprising: The video clip or still image is displayed during a time slot corresponding to the second focus item.
7. The method according to claim 1, wherein: The focus area is displayed on an upper half area of the unified user interface.
8. The method according to claim 1, wherein: The plurality of focus items are displayed simultaneously with the plurality of information items, and the focus area is fixed on the unified user interface regardless of display of the plurality of information items on a non-focus area that is different from and does not overlap with the focus area.
9. The method according to claim 1, further comprising: Displaying a plurality of focus item indicators, each focus item indicator representing a corresponding one of the plurality of focus items, further comprising, for each of the plurality of focus items: in accordance with a determination that the corresponding focus item is displayed in the focus area, displaying the corresponding focus item indicator that complies with activity specifications; as well as In accordance with a determination that the corresponding focus item is not displayed in the focus area, displaying the corresponding focus item indicator conforming to an inactive specification that is different than the active specification.
10. The method according to claim 1, wherein: Displaying the plurality of focus items in the focus area sequentially according to the time sequence further comprises, for each of the plurality of focus items: While the corresponding focus item is displayed in the focus area and in response to a predefined user action associated with the corresponding focus item, display of the corresponding focus item is terminated and (1) a subsequent focus item that follows the corresponding focus item in the chronological order or (2) a prior focus item that precedes the corresponding focus item in the chronological order is displayed in the focus area of the unified user interface.
11. The method according to any one of claims 1 to 10, further comprising: determining a number of times the plurality of focus items have been displayed sequentially in the focus area according to the chronological order; as well as In accordance with a determination that the number of times is equal to or greater than a predetermined play threshold, at least one of the plurality of focus items is replaced with an alternative focus item.
12. The method according to any one of claims 1 to 10, wherein: The plurality of focus items include a second focus item, further comprising: receiving two or more original items, each original item being from a different content provider selected from the marketing module, the advertiser, and the media recommendation engine; and The two or more original items are deduplicated according to the order of the marketing module, the advertiser, and the media recommendation engine to generate the second focus item.
13. The method according to claim 12, wherein: The order defines a decreasing preference of the advertiser, the marketing module, and the media recommendation engine.
14. The method according to any one of claims 1 to 10, wherein: The promotion module is hosted and managed by the server system and is configured to provide a focus item selected by the server system for promotion, and one of the multiple focus items is selected by the promotion module and configured to solicit users to subscribe to services provided by the SVOD content provider, purchase or rent media content, or play online games.
15. The method according to any one of claims 1 to 10, wherein: A focus item of the plurality of focus items is provided by the marketing module based on user activity characteristics of a plurality of users in the virtual user domain hosted by the server system.
16. The method according to any one of claims 1 to 10, wherein: A focus item among the plurality of focus items is provided for promotion by the marketing module based on one or more of content type / format, content quality, recency, popularity, seasonality, and application life cycle associated with the one of the plurality of focus items.
17. A non-transitory computer readable medium having stored thereon instructions which, when executed by one or more processors, cause the processors to perform the method according to any one of claims 1-10.
18. The non-transitory computer readable medium of claim 17, wherein: The instructions stored on the computer readable medium further include instructions for: determining a number of times the plurality of focus items have been displayed sequentially in the focus area according to the chronological order; as well as In accordance with a determination that the number of times is equal to or greater than a predetermined play threshold, at least one of the plurality of focus items is replaced with an alternative focus item.
19. The non-transitory computer readable medium of claim 17, wherein: The plurality of focus items include a second focus item, and the instructions stored on the computer-readable medium further include instructions for: receiving two or more original items, each original item being from a different content provider selected from the marketing module, the advertiser, and the media recommendation engine; as well as The two or more original items are deduplicated according to the order of the marketing module, the advertiser, and the media recommendation engine to generate the second focus item.
20. A server system, comprising: one or more processors; and A memory having stored thereon instructions which, when executed by the one or more processors, cause the processors to perform the method according to any one of claims 1-10.
21. The server system according to claim 20, wherein: The instructions stored on the memory further include instructions for: determining a number of times the plurality of focus items have been displayed sequentially in the focus area according to the chronological order; as well as In accordance with a determination that the number of times is equal to or greater than a predetermined play threshold, at least one of the plurality of focus items is replaced with an alternative focus item.
22. The server system according to claim 20, wherein: The plurality of focus items include a second focus item, and the instructions stored on the memory further include instructions for: receiving two or more original items, each original item being from a different content provider selected from the marketing module, the advertiser, and the media recommendation engine; as well as The two or more original items are deduplicated according to the order of the marketing module, the advertiser, and the media recommendation engine to generate the second focus item.
Citation Information
Patent Citations
Image display apparatus and method for operating the same
US20130276031A1