WO2023059616A1 - Methods to manage dynamic content consumption groups and to recommend content - Google Patents

Methods to manage dynamic content consumption groups and to recommend content Download PDF

Info

Publication number
WO2023059616A1
WO2023059616A1 PCT/US2022/045645 US2022045645W WO2023059616A1 WO 2023059616 A1 WO2023059616 A1 WO 2023059616A1 US 2022045645 W US2022045645 W US 2022045645W WO 2023059616 A1 WO2023059616 A1 WO 2023059616A1
Authority
WO
WIPO (PCT)
Prior art keywords
content
ccg
group
members
user device
Prior art date
Application number
PCT/US2022/045645
Other languages
French (fr)
Inventor
Dale Seed
Paul Dougherty
Sanghoon Kim
Lu Liu
Original Assignee
Interdigital Patent Holdings, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Interdigital Patent Holdings, Inc. filed Critical Interdigital Patent Holdings, Inc.
Publication of WO2023059616A1 publication Critical patent/WO2023059616A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/251Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/252Processing of multiple end-users' preferences to derive collaborative data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25883Management of end-user data being end-user demographical data, e.g. age, family status or address
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26241Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the time of distribution, e.g. the best time of the day for inserting an advertisement or airing a children program
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2668Creating a channel for a dedicated end-user group, e.g. insertion of targeted commercials based on end-user profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • H04N21/43076Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of the same content streams on multiple devices, e.g. when family members are watching the same movie on different devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44213Monitoring of end-user related data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44213Monitoring of end-user related data
    • H04N21/44222Analytics of user selections, e.g. selection of programs or purchase activity
    • H04N21/44224Monitoring of user activity on external systems, e.g. Internet browsing
    • H04N21/44226Monitoring of user activity on external systems, e.g. Internet browsing on social networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/4508Management of client data or end-user data
    • H04N21/4532Management of client data or end-user data involving end-user characteristics, e.g. viewer profile, preferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/466Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/4668Learning process for intelligent management, e.g. learning user preferences for recommending movies for recommending content, e.g. movies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47214End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for content reservation or setting reminders; for requesting event notification, e.g. of sport results or stock market

Definitions

  • the present disclosure generally relates to managing network communication between groups and more particularly to techniques to provide dynamic management of content consumption groups of users.
  • Video conferencing applications is one such technology that allow people to communicate with each other in remote locations through use of audio and video media in real time or otherwise.
  • Similar other technologies allow the broadcast and dissemination of such viewings and interactions.
  • Single content can be consumed in such manners simultaneously or otherwise and be enjoyed during get togethers, meetings and conferences, and other popular events. During many of these events or conferences, participant responses are captured or disseminated live. This can include different scenarios, ranging from live streams of a sporting event to captured business meetings and technical conferences.
  • Technology has also been providing secondary users and consumers of content to connect together in a social manner even when located remotely.
  • Some examples of the types of functionality currently lacking in existing content consumption systems and devices include capability to auto-detect scenarios in which users are interested in consuming content together with one another in a group setting; capability to perform content consumption group operations on behalf of users upon detecting conditions to perform these operations have bene met (e.g., forming a content consumption group, disbanding a content consumption group, adding, or removing users as members of a content consumption group); capability to send content consumption group related notifications to users (e.g., notifying them of group content consumptions schedules, events, availability of other members, etc.) ; and capability to manage a content consumption profile of a group on behalf of its group members (e.g., maintain content consumed by group, content preferences of the group, availability of the group members, etc.).
  • a method performed by an electronic device includes detecting a condition that a first user device and a second user device are available to play a content selection as a group, forming a content playback group including at least the first user device and the second user device as members of the playback group, scheduling a time to play the content selection on the first user device and the second user device, sending one or more notifications to the first user device and the second user device, the notification including a schedule to play the content selection, recording content selection level of satisfaction indications from at least one of the first user device and the second user device while playing the content selection, and sending one or more content recommendations to at least one of the first user device or second user device, wherein the content recommendations are based on the recorded content selection level of satisfaction indications.
  • FIG. 1 is a block diagram illustrating a communication network configured for facilitating one or more interactive realtime communications between users and/or devices, according to one environment;
  • FIG. 2 is an illustration of a group of users using a centralized service according to one embodiment
  • FIG. 3 is an illustration of a scenario where a group of users having access to a centralized local area network according to one embodiment
  • FIG. 4 is an illustration of an embodiment using a fully distributed and decentralized managed system
  • FIG. 5 is a flow chart illustration of a content consumption group (CCG) functionality deployment methodology according to one embodiment
  • FIG. 6A is an illustration of a system that provides several different types of entities in an end-to-end multimedia arrangement according to one embodiment
  • FIG. 6B is an illustration of a system having a plurality of interfaces within and end- to-end multimedia content distribution arrangement according to one embodiment
  • FIG. 7 is a flow chart illustration of a CCG function deployment methodology according to one embodiment
  • FIG. 8 schematically illustrates a general overview of an encoding and decoding system according to one or more embodiments
  • FIG. 9 depicts an example flow diagram according to an embodiment.
  • FIG. 10 depicts an example apparatus architecture that can perform any of the embodiment methods.
  • Figure 1 is a block diagram illustrating a communication network 110 that is coupled to a variety of devices 100 via different alternative means such as busses and cables (shown generally as 150).
  • the devices 100 are illustratively shown in Figure 1 as desktop computers, laptops or mobile or smart devices like mobile phones. These are just a few examples of the devices that can be used. It is understood that in alternate embodiments other devices can be added or substituted for these examples.
  • the network is capable of facilitating one or more interactive real-time communication such as teleconference and streaming devices and mini-networks that provide both audio and/or video components.
  • the network contains at least one processor 120 that may be, for example in one or more servers (shown as 120 as well).
  • the server/processor may be remote or local and can be in processing communication with other processor/servers. In alternate embodiments, one or more of these processor/servers can be part of a coupled or group of wireless or portable devices via a base station.
  • server 120 may represent an instance among a large instances of application servers in a data center, cloud computing environment, or any other mass computing environment. This is illustrated by reference numerals 130 (i.e. network/cloud). There also may include thousands or millions of client computers. Together they will hereinafter be referenced as numerals 110, 130 or 110/130 interchangeably.
  • the network 110/130 can also provide internet connectivity and include other components such as a digital television (DTV) as illustratively shown at 140 that allows viewers to stream on-demand videos, online interactive media, over-the-top content, music, browse the internet, view photos, and the like.
  • DTV digital television
  • Some examples of these technologies include Google ChromecastTM and Apple TVTM. This technology enables a user to share content from their personal devices onto a larger screen such that it can be more easily viewed by others. For example, displaying pictures or movies stored on a personal device onto the larger screen of a DTV can be used for others to view the content more easily.
  • At least one processor is provided in one of the devices for example in the server computer 120 which is configured to host a conferencing meeting and transmits and receives video, image, and audio data to and from each of the client computers (through the cloud or the network when that is the case.)
  • Each of the client computers may also include their own computing device with at least a processor, processing units, graphics processing units (GPU), one or more buses, memory organized as volatile and/or nonvolatile storage, one or more data input devices, I/O interfaces and output devices such as loudspeakers or a LINE-OUT jack and associated drivers.
  • Each of the client computers may also include an integrated or separate display unit such as a computer screen, TV screen or other display and have any of mobile or stationary computers including desktop computers, laptops, netbooks, ultrabooks, tablet computers, smartphones, et cetera.
  • the network 130 is the Internet.
  • each device 100 that can be referenced as user or client computer 100 may have a particular profile and one or more users can also have a profile that resides in the particular device or client computer or can be located on the cloud under a user account.
  • the network through one or more servers may also maintain a list of accounts or profiles that are each associated with one of the client computers and/or one or more users of the client computers.
  • each of the client computers can be used by an attendee of a conference session that enables video (live and streaming or recorded) and images and audio operations.
  • Devices/client computers 100 can be simultaneously a presenting device or a recipient device (attendee) of a video conference session.
  • a socially suboptimal setting is one that lacks social cues of someone who would otherwise enhance the experience if present.
  • Such systems may inject or overlay social effects with the primary media content during synchronous or asynchronous viewing.
  • valuable social effects may be lacking from current systems for several reasons.
  • users may be reluctant to share information due to privacy concerns (e.g. for effects that utilize user-provided audio, a user may be concerned a microphone will pick up unrelated conversation in a different room).
  • users may be reluctant to share information that interrupts the viewing experience (e.g. writing a chat message or selecting an emoticon involves attention from the user that may distract from the primary content).
  • users may be unavailable for viewing of a live event referenced as a Media Item (e.g. a live broadcast of a sporting event or new show).
  • Media Item may be part of a larger media content being consumed or be the entirety of the content.
  • Graphical emoticons are another form of text-based cues that users may select and insert during playback of the Media Item.
  • An example of a system that supports insertion of emoticons is Facebook Live which allows user to select “reaction emojis” which appear layered with the display of a live-streamed Media Item. These reaction emojis are preserved with the Media Item and made available when the Media Item is replayed by other users of the system but still do not address the prior art shortcomings.
  • Existing content consumption systems and devices currently lack sufficient functionality for assisting users with the optimal consumption of multimedia content (e.g., movies, shows, sporting events, YouTube, music, etc.) in group-based settings (e.g., with family, friends, acquaintances, etc.).
  • multimedia content e.g., movies, shows, sporting events, YouTube, music, etc.
  • group-based settings e.g., with family, friends, acquaintances, etc.
  • Some examples of the types of functionality currently lacking in existing content consumption systems and devices include the following: capability to auto-detect scenarios in which users are interested in consuming content together with one another in a group setting, where the users may be collocated or noncollocated, and where the users may consume the content together at the same time or at different times; capability to perform content consumption group operations on behalf of users upon detecting conditions to perform these operations have bene met (e.g., forming a content consumption group, disbanding a content consumption group, adding, or removing users as members of a content consumption group); capability to send content consumption group related notifications to users (e.g., notifying them of group content consumptions schedules, events, availability of other members, etc.); capability to manage a content consumption profile of a group on behalf of its group members (e.g., maintain content consumed by group, content preferences of the group, availability of the group members, etc.); capability to coordinate content consumption schedules for a content consumption group (e.g., survey group members to identify optimal content consumption times for the group);
  • FIG 2 is an illustration of a group of users 200 (also referenced as clients) that are sharing a content or are connected through a common service provider 250. These users are part of a content consumption group (CCG).
  • CCG content consumption group
  • desired functionality can be deployed in a centralized manner within a wide are network.
  • this CCG functionality may be deployed as a service on a network server (e.g. in the cloud). This CCG service may then be accessed by CCG client functionality hosted on user devices 210 as shown in Figure 2.
  • the CCG functionality is still in a centralized manner, but the users are in electronic communication with one another through a more localized network, in this example a local area network (LAN) not shown.
  • LAN local area network
  • the local area network is established within a single residence 390, but as can be understood other arrangements can be provided in alternate embodiments (withing a gated community, hospital, university dorm system, military base, residence housing etc.)
  • the CCG functionality may be deployed as a service in a local device 310 (e.g. DTV, set top box, etc. as specified as 320).
  • the CCG service may then be accessed by users 300 that are in proximity to that device (e.g. watching TV with one another - see 320) and/or by users using separate devices hosting CCG clients that are in local proximity to the CCG service as shown in the figure.
  • the content and the mode of its consumption may include, but is not limited, to one or more of the following: a. watching streamed video content such as movies, shows, documentaries, classes, other personal live streaming content, etc., b. watching broadcasted content such as a live sporting event, nationally televised presidential debate, an awards show, etc., c. watching web-based content such as YouTube, Facebook, TikTok, etc., d. watching personal content such as pictures, videos, etc., e. listening to audio contents such as songs, albums, concerts, playlists, etc., f. engaging in the exchange of content between group members such as chats, texts, etc.
  • a content consumption group member may consume content associated with the group in one or more of the following manners: - together with other group members at the same time, in the same location, via a shared device (e.g. DTV),
  • a shared device e.g. DTV
  • FIG. 4 is an illustration of a decentralized scenario.
  • the CCG functionality may be deployed in a fully distributed and de-centralized manner 440 as a CCG function hosted on user 400 devices 410 that coordinate amongst themselves to realize the proposed CCG functionality as shown.
  • the individual CCG functions 440 hosted on the devices 410 may support the capability to coordinate with one another to perform CCG operations such as CCG group creation, disbandment, etc. In doing so, overlap and duplicate CCG operations are avoided.
  • This coordination may involve CCG coordination messages to be exchanged between the CCG functions to enable the CCG functions to determine which CCG function performs CCG operations.
  • a group of users assembling together in a collocated fashion near a shared content consumption device e.g. DTV
  • a shared content consumption device e.g. DTV
  • a remote (non-collocated) fashion indicating their intentions to consume content with one another via a distributed set of content consumption devices (e.g. DTVs, phones, computers, tablets, etc.);
  • - a social graph that exists between users (e.g. leveraging social media apps and their user profiles such as Facebook, Instagram, etc.);
  • a verbal or electronic conversation e.g. social media feeds such as group texts and chats
  • social media feeds such as group texts and chats
  • deleting a profile when a content consumption group is disbanded d. merging individual profiles of group members together such that their individual content consumption history, feedback, and recommendations are aggregated together into a group profile; and e. updating individual profiles of the group members with information that is stored in a group profile such as content consumption history, feedback, and recommendations.
  • coordinating content consumption schedules for a group may consist of, but is not limited to, one or more of the following operations: a. examining individual group member schedules / calendar; b. surveying individual group members to inquire about their availability to consume content with other group members; and c. aggregating and assessing the availability of the individual group members to determine optimal times for all or subset(s) of group members to consume content either with one another at the same time or at different times.
  • a recording group member comments and reactions while they consume content may consist of, but is not limited to, one or more of the following operations, a. recording text, audio, video chat comments and reactions of one or more group members while they consume content; b. storing the recorded comments and reactions of one or more group members along with metadata to enable the comments and reactions to be associated with the content timeline and/or scenes/events of the content; c. support for playing back the recorded comments and reactions of the group members along with the associated content in a manner in which the comments and reactions of the group are aligned with the timeline and/or scenes/events of the content; d. support for scrolling, viewing, or playing back the recorded comments in an offline manner that is independent of the associated content; and e. support for selectively searching and or filtering comments and reactions.
  • monitoring and tracking the content selections consumed by the group members may consist of, but is not limited to, one or more of the following operations: a. measuring the level of satisfaction of each individual group member and aggregating these results into a group level of satisfaction; b. collecting feedback from members by indirect means such as monitoring the interaction between the members and the comments and reactions they express to other members; and c. storing the aggregated group level of satisfaction results in the content consumption profile of the group.
  • determining the types of content of interest to the collective set of members of the group may consist of, but is not limited to, one or more of the following operations: a. analyzing the content consumption metadata of the group, b. monitoring the different forms of interaction (e.g., spoken words, texts, chats, social media, body position and language) between group members to detect content likes and dislikes of the individual group members of the group, c. classifying the types of content of interest to the group members (e.g., based on genres, series, actors, ratings, etc.), and d. computing the preferred types of content of interest to the collective set of members of a group by assessing the aggregated group content satisfaction levels for the different content selections consumed by the group.
  • a. analyzing the content consumption metadata of the group e.g., a. monitoring the different forms of interaction (e.g., spoken words, texts, chats, social media, body position and language) between group members to detect content likes and dislikes of the individual group members of the group, c. classifying
  • curating content selections of interest to members of a content consumption group may consists of, but is not limited to, one or more of the following operations: a. searching for content selections from various content providers that align with the collective content preferences and interests of the group members; b. presenting content recommendations to the group via the group’s content consumption profile (e.g., thumbnails, swim lanes, links, etc.); c. sharing content recommendations from the group’s profile with individual group members (e.g., upon detecting that particular member(s) enjoyed a content selection or type of content that was consumed together with the group); and d. using content consumption and satisfaction metadata (e.g. content consumption history and satisfaction ratings, etc.) from individual group member content consumption profiles to make content recommendations to other members in the group even at times when group members are not actively watching content together with one another.
  • content consumption and satisfaction metadata e.g. content consumption history and satisfaction ratings, etc.
  • enabling group members to consume content in a group setting at different times asynchronously of one another may consist of, but is not limited to, one or more of the following operations: a. scheduling the consumption of a content selection by each of the members of content consumption group such that the members may consume the content at different times than one another along with an optional configured time window (e.g. 1 week); b. streaming to a group member’s device a content selection along with recorded comments and reactions (e.g. text, audio, video chats) from fellow group members that previously consumed the content selection such that the content selection and the comments and reactions from the fellow group members are synchronized with one another; c.
  • a function to assist individuals with the consumption of content in a group-based setting will be designed to be capable of performing one or more content consumption group management operations on behalf of individuals (i.e. clients or users) such as but not limited to those operations defined in Figure 5.
  • the function may support one or more embodiments that can include one or more of the shown operations and/or a combination of some of these operations in the same or different sequences (than the order shown) in Figure 5.
  • the operations that will be discussed in Figure 5 can be deployed on various types of nodes in a system such as but not limited to a function hosted on a local device in close proximity to users (e.g. Digital Television, smart phone, tablet, computer, home gateway, personal digital assistant, or set top box), or a function hosted remotely in the network (e.g. on a cloud, edge or enterprise server), or combinations thereof.
  • these CCG function(s) can support content consumption group members such as but not limited to an entire family or a subset of family members (e.g. kids, parents, father and son, mother and daughter, etc.), friends, acquaintances, strangers, or combinations thereof.
  • the CCG function enables members of a content consumption group to consume content such as but not limited to one or more of the following:
  • streamed video content e.g. movies, shows, documentaries, classes, etc.
  • broadcasted content e.g. live sporting event, nationally televised presidential debate, etc.
  • the CCG function enables content consumption group members to consume content associated with the group in manners such as but not limited to one or more of the following: consuming content together with other group members at the same time, in the same location, via a shared device (e.g. DTV); consuming content together with other group members at the same time, but in different locations and via separate devices (e.g. separate DTVs, phones, tablets, computers); and consuming content with other group members, but at different times (but still benefitting from other aspects of the content consumption group such as content recommendations, content satisfaction level reviews, and group discussion about the content before or after it is consumed).
  • a shared device e.g. DTV
  • separate devices e.g. separate DTVs, phones, tablets, computers
  • consuming content with other group members but at different times (but still benefitting from other aspects of the content consumption group such as content recommendations, content satisfaction level reviews, and group discussion about the content before or after it is consumed).
  • Figure 5 provides an illustration of a variety of different functions and functionality as provided by CCG as per one embodiment.
  • Numerals referenced as 501 to 504 provide the type of users and or device and service. So for example 501 is reserved for local users while 504 is provided for the remote users.
  • the methodology provided in the embodiment is divided into 10 steps denoted by reference numerals 510 to 595 for better clarity.
  • the Content Consumption Group (CCG) function detects situations in which users are interested or may potentially be interested in consuming content together with one another in a group setting which may consist of detecting conditions such as but not limited to: a group of users assembling locally together in a collocated fashion near a shared content consumption device (e.g. DTV) and indicating their intentions to consume content with one another, - a group of users assembling together in different remote (non-collocated) locations from one another and indicating their intentions to consume content with one another via a distributed set of content consumption devices (e.g. DTVs, phones, computers, tablets, etc.),
  • a shared content consumption device e.g. DTV
  • a group of users assembling together in different remote (non-collocated) locations from one another and indicating their intentions to consume content with one another via a distributed set of content consumption devices e.g. DTVs, phones, computers, tablets, etc.
  • a verbal or electronic conversation e.g. social media feeds such as group texts and chats
  • social media feeds such as group texts and chats
  • emotional state e.g., mood, bored, tiredness, excitedness, sad, happy.
  • the CCG function triggers and performs one or more CCG management operations on behalf of the users such as but not limited to: forming a CCG, disbanding a CCG, adding user(s) as member(s) of a CCG, and removing user(s) as member(s) of a CCG.
  • the CCG function manages a content consumption profile of a group on behalf of its group members which may consist of operations such as but not limited to one or more of the following:
  • CCG metadata within a profile such as: a. Individual group member information such as names, identifiers, content preferences, contact information, device information, availability, b. Group level information such as content selections consumed by the group or individual members of the group, content preferences of the group, group availability, group content satisfaction level ratings, creating a CCG profile when a CCG is formed,
  • the CCG function coordinates content consumption schedules for a CCG which may consist of operations such as but not limited to one or more of the following:
  • the CCG function sends content consumption group notifications to users for purposes such as but not limited to one or more of the following:
  • content consumption profile e.g., thumbnails, swim lanes, links, etc.
  • the CCG function records group member comments and reactions while they consume content such that these comments and reactions along with the content can later be consumed by other group members (or the same group members viewing the content over again). This may consist of, but is not limited to, one or more of the following operations:
  • the CCG function monitors and tracks the content consumed by the members of a CCG and their level of satisfaction with the consumed content which may consist of operations such as but not limited to one or more of the following: measuring the level of satisfaction of each individual CCG member and aggregating these results into a group level of satisfaction,
  • the CCG function determines the types of content of interest to the collective set of members of the CCG which may consist of operations such as but not limited to one or more of the following:
  • CCG members e.g., based on genres, series, actors, ratings, etc.
  • the CCG function may track and differentiate (i.e., prioritize) satisfaction levels measured for content that is consumed by CCG members together as a group vs. satisfaction levels measured for content that is consumed individually by CCG members.
  • the CCG function curates content selections of interest to members of a CCG which may consist of operations such as but not limited to one or more of the following:
  • the CCG function enables group members to consume content in a group setting at different times asynchronously of one another such as, but not limited to, one or more of the following:
  • - streaming to a group member devices a content selection along with recorded comments and reactions (e.g. text, audio, video chats) from fellow group members that previously consumed the content selection such that the content selection and the comments and reactions from the fellow group members are synchronized with one another,
  • comments and reactions e.g. text, audio, video chats
  • the content consumption group e.g. chat session
  • the CCG can be implemented as to detect situations and opportunities.
  • the following scenarios and special topics can be provided in different embodiments.
  • a first scenario In a first scenario,
  • the CCG function detects situations in which users are interested or may potentially be interested in consuming content together with one another in a group setting.
  • the CCG function may support one or more methods for detecting these situations.
  • the CCG may detect a group of users assembling locally together in a collocated fashion near a shared content consumption device (e.g. DTV, a smart speaker, etc.) or a noncollocated group of users in assembling in remote locations and also interested in consuming content with one another. Users of the CCG function can indicate their intentions to consume content with one another.
  • the CCG function may use peripheral sensor devices (e.g. smart cameras, smart microphones, etc.) capable of detecting the presence of users (e.g. via facial recognition, voice detection, etc.) that are recognized as members of an existing CCG (e.g. family members) or candidate members for a new or existing CCG .
  • the CCG may also detect the activities that the individual users are engaging in and whether these activities suggest that the users are assembling together for the purpose of consuming content with one another (e.g., watching TV) or that the users are assembling together to perform another activity that may be further enhanced via the consumption of content with one another (e.g., listening to music during dinner with one another).
  • the CCG function may leverage other context information. For example, context from various other sources such as schedule or calendar information stored on a user’s local device or in the cloud, context from one or more social media apps or accounts of the user or one or more their peers.
  • the CCG function may support users indicating their interests and/or intentions to consume content remotely with one another.
  • the CCG function may receive indications from users via their individual devices (e.g. DTVs, phones, computers, tablets, etc.). These CCG indications may include information such as a user’s presence, availability and/or interest in consuming content with other users as well as the type of content.
  • the CCG indications may be initiated by the users themselves (e.g., configuring their CCG settings within a CCG app hosted on their local device which then communicates these CCG settings back to a CCG function hosted in the cloud). Alternatively, the CCG indications may be auto generated on the user’s behalf.
  • a CCG function hosted on the user’s device may be capable of detecting the presence of the user (e.g. via facial recognition, voice detection, etc.).
  • the CCG function on the user’s device may also detect the activity that the individual user is currently engaging in and whether this activity suggests that the user is available and interested in consuming content with other users.
  • the CCG function hosted on the user’s device may then relay CCG indications to a CCG function in the cloud.
  • This CCG function in the cloud may then process CCG indications from remote users to detect situations in which these users are interested in consuming content with one another in a remote fashion.
  • the CCG function may detect a social graph that exists between users.
  • the CCG function may interface and/or leverage information from user social media apps, accounts, or profiles (e.g. Facebook, Instagram, etc.). Information may include location, availability, content interests or preferences, willingness to join content consumption groups, etc. Based on this information, the CCG function may be able to detect and/or construct a social graph which it can then use to determine whether user(s) are candidates to take part in a content consumption group.
  • user social media apps e.g. Facebook, Instagram, etc.
  • Information may include location, availability, content interests or preferences, willingness to join content consumption groups, etc.
  • the CCG function may be able to detect and/or construct a social graph which it can then use to determine whether user(s) are candidates to take part in a content consumption group.
  • the CCG function may monitor and detect a verbal or electronic conversation or sign (e.g. via microphones and/or over social media feeds such as group texts and chats) between users indicating their interest in consuming content with one another. For example, a group of users may be discussing the idea or planning a time when they might like to consume content with one another or particular types of content selections they might like to consume with one another. In another example, each user may be commenting to the recent release of the movie on his own and if positive comments (e.g. “Likes” button is pressed) are observed from multiple persons, the CCG function may recommend that these users form a group to consume content of a similar and nature.
  • a verbal or electronic conversation or sign e.g. via microphones and/or over social media feeds such as group texts and chats
  • the CCG function may detect an observed action by a group of users such as jointly searching for content that they might like to consume together with one another. For example, a group of users may be assembling locally or remotely and starting their search together via the content browser of one or more streaming services (e.g. Netflix, Hulu, etc.).
  • a group of users may be assembling locally or remotely and starting their search together via the content browser of one or more streaming services (e.g. Netflix, Hulu, etc.).
  • the CCG function may detect an observed pattern or alignment in user behavior or user responses (e.g., cheering, boo, crying, laughing) that may indicate that they might be like minded individuals as well as available candidates for forming a new CCG or joining an existing CCG. For example, fans of a common sports team that are starting to watch a televised sporting event, or users that have searched, consumed, or responded to content in a similar fashion.
  • user behavior or user responses e.g., cheering, boo, crying, laughing
  • the CCG function may detect an observed pattern or alignment in user’s emotional state (e.g., tired, bored, excitedness, sad, happy) that may indicate that they might be like minded individuals as well as available candidates for forming a new CCG or joining an existing CCG. For example, a fan of candidate for political election gets sad at the candidate loses the and he may want to form a group to watch certain videos together with other supporters of the same candidate who are also sad due to the loss of the election.
  • emotional state e.g., tired, bored, excitedness, sad, happy
  • the Content Consumption Group can also be provided so that the formation, disbandment and member management is controlled.
  • the CCG function can trigger the formation of a new CCG or the addition of members to an existing CCG.
  • the CCG function can keep track of the individual members of a CCG by storing information such as user device identifiers and addresses, content preferences, etc.
  • a CCG may have a “lifespan” depending on what is the trigger for the formation of the group. This may also indicate when to trigger the disbandment of a CCG. For example, if a group is formed among strangers that are interested in a live event, then the group could be disbanded when the event (content) is over. Groups formed among families and friends may have longer lifespan or no time limit.
  • the CCG function can trigger the disbandment of a CCG or the removal of members from a CCG based on detecting certain criteria have been met. For example, the CCG function may detect that the group has finished consuming content with one another, group members themselves have left a location and/or are no longer available to consume content, or explicit requests to remove group member(s) or disband a group have been received.
  • the CCG function may manage one or more profiles for the CCG on behalf of its group members.
  • the CCG function may track and store various forms of information such as individual group member information including names, identifiers, content preferences, content consumption history, contact information, device information, member availability, content consumption schedule preferences, forms and types of interaction preferences (e.g. text, audio, video chat), content provider account info.
  • the CCG function may also track, aggregate and store this information individual group member profile information to build one or more profiles for the CCG consisting of content selections consumed by the group, content consumption history and preferences of the group, group availability, group content satisfaction level ratings, group content consumption schedule preferences, forms and types of interaction preferences of the group, and content providers accessible by the group to consume content.
  • the CCG function may create a CCG profile when a CCG is formed or at other opportune times during the lifetime of the CCG.
  • the creation of the CCG profile may involve the merging/aggregation of individual member profiles. This merging/aggregation may involve the CCG function identifying commonalities across the group members with respect to member availability, content consumption schedule preferences, forms and types of interaction that are preferred, content provider account info. This merging/aggregation may also involve the CCG function identifying non-commonalities across the individual member profiles and filtering these from the group profile such that they are not included.
  • the CCG function may also keep the profile updated when new users are added or existing users are removed from the CCG, content is consumed by the CCG members, feedback from CCG members is received regarding content that they have consumed.
  • the CCG function may delete the CCG profile.
  • the CCG function may store the profile in the event that the CCG function detects that the same group of users forms a CCG in the future. If this is the case, the CCG may reuse the profile if/ when the CCG forms again.
  • the CCG function may share CCG profile information across CCGs or with individual members of a CCG.
  • the CCG function may leverage CCG profiles of similar CCGs to make content recommendations across CCGs.
  • the CCG function may use information in a CCG profile to make content recommendations to individual users as well.
  • the CCG function may coordinate content consumption schedules for the CCG which may consist of operations such as examining individual CCG member schedules / calendars. This may include examining schedule information stored within individual CCG member profiles, schedule information stored on member devices, schedule information stored within member on-line calendars. This may also include the CCG function monitoring the past and/or current physical or online activity to determine current availability or patterns of availability of one or more members to consume content.
  • the CCG function may also survey individual CCG members to inquire about their availability to consume content with other CCG members. This surveying may be performed by the CCG function sending requests to members to inquire about their potential availability. This request may take the form of an SMS, email, or notification to which the member may respond with their availability.
  • the CCG function may also leverage information from user social media context to determine user availability to consume content with other CCG members.
  • the CCG function may also leverage this information to detect user activity patterns such that these patterns can be used to detect user availability to consume content.
  • the CCG may aggregate and assess the availability of the individual CCG members to determine optimal times for all or subset(s) of CCG members to consume content with one another at the same time or at different times.
  • the CCG function may send CCG notifications to users for various purposes. These notifications may be sent to users based on device or user contact information and settings.
  • the CCG may send notifications informing users that a CCG has been formed or disbanded or that a user has been added to or removed from a CCG.
  • the CCG function may send notifications recommending one or more CCGs that users can join based on detecting content that may be of interest to a user and that is being consumed by these groups and that has alignment with the content interests of the user.
  • the CCG function may send notifications to group members of scheduled CCG events that are suggested or planned (e.g., viewing parties) by one or more CCG members or the CCG function itself.
  • the CCG function may send notifications to group members of the presence and/or availability schedule of other group members to consume content with other group members.
  • the CCG function may send notifications to present content recommendations to the CCG members via the group’s content consumption profile (e.g., thumbnails, swim lanes, links, etc.).
  • the content recommendations may be computed by the CCG function or by one or more CCG members.
  • the CCG function may send notifications to share content recommendations from the CCG’s profile with individual group members (e.g., upon detecting that particular member(s) enjoyed a content selection or type of content that was consumed together with the group). These recommendations may be based on the CCG’s content consumption history or the content preferences of fellow group members.
  • CCG notifications may include various types of information such as names or identifiers of CCGs, names or identifiers of CCG members, past, current or planned content that the group has already consumed, is in the process of consuming, or plans to consume, content consumption schedule, CCG member availability, or CCG member comments, feedback or recommendations regarding content.
  • the CCG function may record group member comments and reactions while they consume content.
  • the CCG function can then make these recorded comments and reactions, along with the content, available for later consumption by other group members that have yet to consume the content or that want to consume the same content over again. This can allow group members to consume the content along with the recorded comments and reactions synchronized to the content. In doing so, the CCG function is providing additional supplemental content to the group members to consume that complements the primary content.
  • Consuming the content along with the synchronized recorded comments and reactions of the other group members can enhance the viewing experience of the members by allowing them to immerse themselves in a group watching experience without watching the content with these group members in real time.
  • the recorded comments and reactions can also be made available to allow group members to watch content over again. This can allow group members to experience the content along with the same recorded comments and reactions multiple times.
  • any additional recorded comments and reactions from other members that have consumed the content in the interim can be added.
  • the recorded comments and reactions may contain new information and the content consumption experience may be even better than the prior content consumption experiences of the members.
  • the recorded comments and reactions of the group members to the consumed content may include text, audio, video chat comments and reactions of one or more group members while they consume content.
  • Recording of the comments and reactions may include the CCG function storing the recorded comments and reactions of one or more group members along with metadata to enable the comments and reactions to be associated with the content timeline and/or scenes/events of the content.
  • the CCG may also support playing back the recorded comments and reactions of the group members along with the associated content in a manner in which the comments and reactions of the group are aligned with the timeline and/or scenes/events of the content.
  • the CCG function may also support the capability for members to scroll, view or play back the recorded comments and reactions in an offline manner that is independent of the associated content or that includes clips of content for easier and more quicker consumption of the recorded comments and reactions.
  • the CCG function may also support the capability for members to selectively search and or filter comments and reactions. This searching and filtering may be performed based on desired or undesired comments and reactions from certain group members, certain scenes or events in the content, certain timepoints, certain types of comments or reactions (e.g. happy, sad, funny), certain keywords made in the comments or reactions, etc.
  • the CCG function may monitor and track the content consumed by the members of a CCG as well as their level of satisfaction with the consumed content.
  • the CCG function may measure the level of satisfaction of each individual CCG member and then aggregate these results into a group level of satisfaction.
  • the CCG may support a feedback interface which allows members to directly input their level of satisfaction while consuming the content.
  • the CCG function may also support sending a request to members to collect their feedback after they have consumed a given content selection.
  • the CCG may also support collecting feedback from members by indirect means such as monitoring the interaction between the members and the comments and reactions they express to other members concerning the consumed content.
  • the CCG function may monitor the text, audio or video chat messages exchanged between the group members.
  • the CCG function may analyze these message exchanges to assess the messages for content satisfaction clues and indications using techniques such as natural language processing. Based on this processing, the CCG function may formulate a perceived level of satisfaction and use this as an indirect assessment to avoid bothering the members for their direct feedback or to further complement any direct feedback the CCG function may receive from the members.
  • the CCG function may store aggregated group satisfaction results in the CCG profile and make this information available to CCG members to access.
  • the CCG function may also use group satisfaction results such as factoring this information into making future content recommendations to the CCG members.
  • the CCG function may determine the types of content of interest (e.g., based on genres, series, actors, ratings, etc.) to the collective set of members of the CCG by keeping track of the content selections consumed by the group members together as a group as well as the content consumed by individuals on their own without other group members.
  • the CCG may also keep track of the satisfaction results of this consumed content.
  • the satisfaction results can include results computed across the entire group as well as results computed for individual group members (e.g. for cases where only some of the group members have consumed some content selections).
  • the CCG function may also leverage content selections consumed by other CCGs and their corresponding satisfaction levels. If the CCG function detects that the CCG profile of one CCG has similarities to the CCG profile of another CCG, the CCG function may leverage information across CCGs to determine content that may be of interest to each CCG.
  • the CCG function may compute the preferred types of content of interest to the collective set of members of a CCG by assessing the aggregated group content satisfaction levels for the different content selections consumed by the CCG, the aggregated group content satisfaction levels for the different content selections consumed by other CCGs having similarities to this CCG, as well as by assessing the content satisfaction levels for the different content selections consumed by individual CCG members.
  • the CCG function may track and differentiate satisfaction levels measured for content that is consumed individually by CCG members vs. satisfaction levels measured for content that is consumed by CCG members together as a group. In doing so, the CCG function may give more weight and prioritize satisfaction levels measured for content consumed by CCG members together as a group.
  • the CCG function may curate content selections of interest based on these types. This curation process may consist of operations such as searching for content selections from various content providers that align with the collective content preferences and interests of the CCG members. After finding potential content selections of interest, the CCG function may present these to the CCG. The CCG may present these via the CCG profile using techniques such as thumbnails, swim lanes, links, etc. In addition to curating and making content selections available to the CCG as a whole, the CCG function may also share content recommendations from the CCG with individual group members such that they can also enjoy consuming these selections by themselves if they prefer. For example, the CCG function may, upon detecting that particular member(s) enjoyed a content selection or type of content that was consumed together with the group, make content selection recommendations to the individual member profiles as well.
  • the CCG function may support the capability for group members to consume content in a group setting at different times asynchronously of one another.
  • the CCG function may schedule the consumption of a content selection by each of the members of the CCG such that the members may consume the content at different times than one another but that are convenient to the schedules of the individual group members. For example, group members may consume content at different times and on different days spanning over a week based on their availabilities.
  • the CCG function may enforce a time window (e.g. 1 week) for the asynchronous consumption of the content by the members.
  • the CCG function may stream, to a group member’s device, a content selection along with recorded comments and reactions (e.g.
  • the CCG function can synchronize the recorded comments and reactions temporally with the content. In doing so, the CCG function presents the recorded comments and reactions in the same order, progression, and timeline (with respect to the content being consumed by the member) as the fellow members made these comments.
  • the CCG function may also aggregate the different comments and reactions from the different group members that consume a given content selection at different times. In doing so, the CCG function can build upon the comments and reactions of former members that have viewed a content selection such that any future members that view the same content selection can have access to this aggregated set of comments and reactions.
  • the CCG function can include all the comments and reactions from all the fellow members that have consumed the content beforehand. This allows any members consuming content after other members to enjoy the comments and reactions of these members.
  • the CCG function may also generate asynchronous group content consumption events to notify group members if/when each individual group member completes viewing a content selection and/or a group member has made a comment or reacted to a content selection in a certain manner. In doing so, members who have viewed content selections before other members may be kept updated with the comments and reactions of members viewing content after them.
  • the CCG function may also allow members who have viewed content selections before other members and who are not currently viewing a content selection when other members later consume the content, to respond back to notifications such that the member that is viewing the content selection can receive their responses while consuming the content. This can further enhance the group watching experience for all the members even though they are consuming the content without one another at different times.
  • the CCG function may also monitor the asynchronous consumption of a content selection by each of the member devices to detect if/when the content selection has been consumed by the different group members. In doing so, the CCG function can keep track of which members have and have not consumed a particular content selection yet. The CCG function can use this information to send reminders to members that have yet to watch the content. The CCG function can also use this information to filter the amount of information that it sends to members in notifications. For example, when sending a notification to members that another members has consumed content and has comments and reactions to that content, the CCG function can filter the actual comments and reactions from notifications it sends to members who have not yet consumed the content. In doing so, the CCG function can avoid spoiling the content consumption experience for those fellow members.
  • the CCG function may also create separate sub-group(s) within the content consumption group (e.g. chat session) related to a particular content selection, the consumption status of this content selection by the group members, and possibly the comments and reactions of the group members.
  • the CCG function may enroll group members in a sub-group only upon detecting that they have completed consumption of a content selection. In doing so, the CCG function can enhance the content consumption experience for group members that have not yet consumed the content by minimizing the chances that other group members that have already consumed the content selection will not spoil the content consumption experience with their comments and reactions.
  • the CCG function may enroll group members in a sub-group based on their comments and reactions to the content (e.g. only enroll members in a sub-group if the member enjoyed and is interested in discussing the consumed content with other group members).
  • the aforementioned CCG functionality provides group members with a group content consumption atmosphere even when the group members are not consuming content together with one another at the same time.
  • FIG. 6A captures embodiments of several different types of entities in an end-to- end multimedia content distribution and consumption system in which the Content Consumption Group (CCG) functionality 602 proposed in this embodiment may be realized.
  • CCG Content Consumption Group
  • various types of multimedia centric devices may support the CCG functionality proposed.
  • Such devices may include but are not limited to a DTV, smart phone, tablet, laptop, smart watch, smart glasses, AR HMD, etc.
  • the devices may host a CCG service and/or a CCG client that interfaces to a CCG service hosted on another device or server within in a user’s personal area network or elsewhere in the system
  • Such communications core networks 615 may support the CCG functionality proposed.
  • Such communications core networks may include but are not limited to 5G, 4G, Satellite, IP, Cable TV networks.
  • different types of network nodes/functions may support CCG functionality.
  • Such broadcasting core networks 625 embodiment support the CCG functionality proposed in this invention.
  • Such broadcasting core networks may include but are not limited to networks based on the ATSC or DVB standards. Within these networks different types of network nodes/functions may support CCG functionality.
  • Various types of Service 603 and Content Providers 604 may support the CCG functionality proposed.
  • Such Content Providers may include but are not limited to those that broadcast content to devices, stream content to devices and/or generate and send content-based notifications to devices. These Content Providers may support CCG functionality.
  • Figure 6B illustrate embodiments of several potential interfaces within an end-to-end multimedia content distribution and consumption system over which CCG functionality may be supported.
  • Figure 6A is very similar to Figure 6B and the same numerals are used for ease of understanding but the interconnection are delineated by lines to reflect connectivity between components and CCG interface paths.
  • CCG message protocol can be realized as a client/server messaging protocol where users and/or their personal devices can function in the role of a client and/or a server to exchange CCG request and response messages with other entities in the system (e.g. Content Providers).
  • a CCG client may be hosted on a user device and CCG server may be hosted on a network device (e.g. cloud server).
  • the information elements of the CCG request and response protocol messages can be encapsulated and carried within the payloads of existing client/server protocols such HTTP, COAP or Web Sockets.
  • these information elements can be encapsulated and carried within lower level protocols such as TCP or UDP without the use of higher layer protocols such as HTTP, COAP or Web Sockets.
  • the CCG messages can be encapsulated and carried within publish/subscribe messaging protocols.
  • an entity in the System e.g. communication core network entity or a content broadcasting core network entity
  • This broker functionality can be used by the devices to exchange CCG messages with other entities in the system (e.g. Content Providers). This exchange can be facilitated by each entity subscribing to the message broker to receive messages from other entities.
  • each entity can publish message to the message broker that target other entities.
  • the information elements of the CCG request and response protocol messages can be encapsulated and carried within the pay loads of existing publish/subscribe protocols such MQTT or AMQP.
  • CCG information elements may be embedded within content streaming protocols.
  • streaming protocols such as but not limited to Real Time Messaging Protocol (RTMP), Real Time Streaming Protocol (RTSP), MPEG-DASH, Apple HTTP Live Streaming (HLS), WebRTC and SRT.
  • CCG information elements may be embedded within one or more separate virtual channels or streams supported by the streaming protocol (e.g. RTMP). These virtual channels or streams can be multiplexed together and sent over a single physical transport connection (e.g. TCP).
  • TCP physical transport connection
  • CCG information elements can be sent on one channel/stream while multimedia content can be sent on another channel/stream. These two channels/streams can be multiplexed and sent together over a single transport connection between entities in the system.
  • CCG request and response protocol messages can be supported by the different entities. These may include but are not limited to the types of message defined in Table 2.
  • FIG. 7 captures a use case embodiment demonstrating how the proposed content consumption group (CCG) functionality can be used by members of a CCG to consume content together with one another.
  • CCG content consumption group
  • the CCG members benefit from the CCG functionality since it enables them to share the content as well as their comments and reactions with one another in an asynchronous manner. This enables the CCG members to immerse themselves in a group content consumption experience in spite of not consuming the content at the same times as each other (e.g., the CCG members may consume the content days apart from one another).
  • Each CCG member leverages a device (e.g. DTV, phone, laptop, etc.) in their proximity. Their devices host a CCG client function. This CCG client function communicates with a CCG server function in the network (e.g., in the cloud). Together the CCG clients and the CCG server provide the CCG functionality proposed in this invention.
  • a device e.g. DTV, phone, laptop, etc.
  • CCG client function communicates with a CCG server function in the network (e.g., in the cloud).
  • CCG server monitors content consumption selections and patterns of individual users as well as their CCG preferences. As a result, the CCG server detects several users having similar content consumption and CCG preferences, (e.g. fans of the same sports teams).
  • the CCG server triggers formation of CCG and sends requests to individual users to inquire whether they would like to join the CCG and become members.
  • the CCG includes information such as content selections or types of content targeted for consumption by this group and identifiers of other group members.
  • the CCG server receives responses from individual users indicating whether they would like to join the CCG as members. In the response, users may include information such as their profile containing names, identifiers, content preferences, contact information, device information, availability, etc. [0110] (S734): The CCG server determines the aggregated content selection preferences of the CCG members by examining profiles and preferences of the individual group members.
  • the CCG server queries the schedules of the individual CCG members to determine their availability to consume the one or more content selections.
  • the CCG server sends notification requests to CCG members that include content selection(s) that may be of interest to the group and some potential dates and times which CCG members look to have availability in their schedules to consume content together with one another.
  • the CCG server receives responses back from CCG members indicating the times they are available to consume the content selection(s).
  • the CCG server Based on the responses received, the CCG server detects that there are no times in which all CCG members are available to consume the content selection with one another. Hence the CCG server send notifications to the CCG members of this situation. Within the notification, the CCG server may include information such as the times that align with the individual availability schedule, the names of other CCG members that are also available to consume content at these times, and the content selection(s) they would prefer to consume at these times.
  • the CCG server As CCG members 2 and 3 consume the content selection, the CCG server records their comments and reactions. When recording these comments and reactions, the CCG server maintains additional metadata such that the recorded comments and reactions can be synchronized with the content selection and played back in the same temporal sequence as they were recorded in. The CCG server also aggregates the recorded comments and reactions from the individual members consuming a content selection into one collective set which includes the comments and reactions of all the members interleaved together with one another.
  • a link to the sub-group maintained by the CCG server may be included. This link may be used by these members to access the sub-group and view as well as exchange messages.
  • the CCG server As member 1 consumes the content selection along with the comments and reactions from members 2 and 3, the CCG server records the comments and reactions of member 1. [0123] (S785): The CCG server may send notifications to members 2 and 3. Within the notifications, the CCG server includes information such as the identify of member 1 consuming the content, as well as any reactions and comments of member 1 to either the content being consumed and/or the recorded comments and reactions from members 2 and/or 3.
  • members 2 and 3 may respond to them.
  • members 2 and 3 may include information such as their comments and reactions to the member l’s comments and reactions.
  • the CCG server then sends the responses from members 2 and 3 to member 1.
  • numerals referenced as 501 to 504 provide the type of users and or device and service. So for example 501 is reserved for local users while 504 is provided for the remote users.
  • Figure 8 schematically illustrates a general overview of an encoding and decoding system according to one or more embodiments.
  • the system of Figure 9 is configured to perform one or more functions of embodiments of the invention and can have a pre-processing module 830 to prepare a received content (including one more images or videos) for encoding by an encoding device 840.
  • Encoding device 840 packages the content in a form suitable for transmission and/or storage for recovery by a compatible decoding device 870.
  • the encoding device 840 provides a degree of compression, allowing the common space to be represented more efficiently (i.e., using less memory for storage and/or less bandwidth required for transmission.
  • the data is sent to a network interface 850, which may be typically implemented in any network interface, for instance present in a gateway.
  • the data can be then transmitted through a communication network, such as the internet.
  • a communication network such as the internet.
  • Various other network types and components e.g. wired networks, wireless networks, mobile cellular networks, broadband networks, local area networks, wide area networks, WiFi networks, and/or the like
  • any other communication network may be foreseen.
  • the data may be received via network interface 860 which may be implemented in a gateway, in an access point, in the receiver of an end user device, or in any device including communication receiving capabilities.
  • the data are sent to a decoding device 870.
  • Decoded data are then processed by the device 880 that can be also in communication with sensors or users input data.
  • the decoder 870 and the device 880 may be integrated in a single device (e.g., a smartphone, a game console, a STB, a tablet, a computer, etc.).
  • a rendering device 890 may also be incorporated.
  • Figure 9 is an example flow diagram 900 having similar features to that of signal diagram of Figure 5.
  • the method 900 may be performed by an electronic device, such as a DTV or a User Device.
  • user devices are under the control of individual users and the user devices act in response to their respective users that interface with an interface that includes a CCG client to allow group participation according to features described herein.
  • the method includes detecting a condition that a first user device and a second user device are available to play a content selection.
  • Detecting a condition that a first user device and a second user device are available to play a content selection may include detecting one or more of a set of co-located user devices, a set of remotely located user devices, or a set of devices with social media applications indicating a social graph between user devices. Such a social graph may indicate that users of the user devices may have social media applications in which the users of multiple user devices have social links between them.
  • a content playback group is formed that includes at least the first user device and the second user device as members of the playback group. Forming a content playback group may further include the creation of a content consumption profile of the playback group.
  • a modification of a content consumption profile for a playback group may include the addition or deletion of members of the playback group.
  • Functions of the content consumption profile may also include merging together individual member profiles of the playback group. Such merging may include merging data or metadata of any of individual member content consumption history, feedback, and recommendations for content selection.
  • a time to play the content selection on the first user device and the second user device may be made by an apparatus hosting a CCG client.
  • scheduling a time to play the content selection includes scheduling the time to play the content selection concurrently or at different times on any one or more of the user devices in the playback group.
  • one or more notifications are sent to the first user device and the second user device.
  • the notifications including at least a schedule to play the content selection.
  • This transmission of notifications of content recommendations to members of the playback group may be based on a content consumption profile of the playback group.
  • one or more content selection level of satisfaction indications are collected and recorded from at least one of the first user device and the second user device while playing the content selection.
  • the recording of indication of content selection level of satisfaction includes the recording of collected feedback from members of the playback group.
  • the feedback received from the user devices includes reactions of the users of the user devices of the playback group concerning the content selection.
  • the feedback may be in a form of or interpreted to be a level of satisfaction experienced by a user and transmitted by a user device to an apparatus, such as a DTV or another host of a CCG client.
  • one or more content recommendations may be sent to at least one of the first user device or second user device.
  • the content recommendations are based on the recorded content selection level of satisfaction indications.
  • the recommendations sent may be a result of searching for content selection(s) from content providers.
  • the selected content is intended to align with a content consumption profile of the playback group.
  • Figure 10 is a depiction of an example device architecture 1000 that can host a CCG client, such as for a DTV, laptop computer, desktop computer, access point, and the like configured to perform the method of Figure 9 or the signaling of any of Figures 5 or 7.
  • the apparatus of Figure 10 can be either a special -purpose machine, or part of a larger machine that performs other tasks.
  • the apparatus of Figure 10 can be a Digital Television (DTV), a user playback device, or a CCG server that can support the functionality described hereinabove for a device using or hosting a CCG client.
  • DTV Digital Television
  • Other examples of the apparatus include, but are not limited to a laptop, a personal computer, a mobile phone, a tablet, and the like that is configured to host a CCG client functionality.
  • the description may follow that of a DTV, but other devices, such as those listed above, are also possible as is well understood by those of skill in the art.
  • the apparatus 1000 of Figure 10 includes a transmitter/receiver interface 1002 providing connectivity to IP network to receive (1001) digital content from content providers.
  • the interface 1002 connects to the bus interface 1004 which allows access to the internal bus 1024.
  • bus 1024 Other non-bus implementations are also possible as is well known to those of skill in the art.
  • a storage device 1006 which can be used for any general storage such as retrieved or requested data and network management data, parameters, and digital content, and executable software instruction programs.
  • Storage device 1006 may also serve as disk or solid-state storage for the information collected as displayable digital content.
  • Main executable programs, utility and other programs may be under the control of controller/processor 1008.
  • This controller/processor 1008 may be a single processor or a multiplicity of processors performing the tasks of digital content data acquisition, user interface control, and resource management. Controller/processor 1008 can perform the method described in Figure 9.
  • Control memory 1010 may also supply program instruction and configuration control for controller/processor 1008.
  • the status indicators 1018 are a user interface and allows a user, system owner, or system manager to see a status of the apparatus 1000. Such indicators may include a display, LEDs, speaker, and the like.
  • a graphical processing unit (GPU) and input/output (I/O) interface 1016 allows the CCG client hosting device to connect to a main display screen 1020 that may be used to display digital content on device 1000.
  • GPU graphical processing unit
  • I/O input/output
  • the I/O interface 1016 may also include a hardline interface, such as an Ethernet interface for a local area network or may be an HDMI interface for the main screen 1020.
  • a hardline interface such as an Ethernet interface for a local area network or may be an HDMI interface for the main screen 1020.
  • Other options for the I/O interface are a RF or IR interface for a remote control of the apparatus 1000.
  • Another option of I/O interface 1016 is an interactive interface which may include the use of a separate display device (secondary device), keyboard, mouse, light pen, and the like.
  • Apparatus 1000 has a wireless network interface 1012 which allows access to and from wireless devices, such as receiving viewer devices.
  • the wireless receiving viewer devices may be those that are known and registered to a WLAN of the apparatus 1000.
  • Such an interface 1012 includes all elements to control a wireless network, including the use of wireless network protocols such as IEEE 802.XX, Bluetooth, other near field protocols, and the like for communication between the apparatus 1000 and receiving viewer devices.
  • implementations described herein may be implemented in, for example, a method or process, an apparatus, or a combination of hardware and software. Even if only discussed in the context of a single form of implementation (for example, discussed only as a method), the implementation of features discussed may also be implemented in other forms. For example, implementation can be accomplished via a hardware apparatus, hardware and software apparatus. An apparatus may be implemented in, for example, appropriate hardware, software, and firmware. The methods may be implemented in, for example, an apparatus such as, for example, a processor, which refers to any processing device, including, for example, a computer, a microprocessor, an integrated circuit, or a programmable logic device.
  • the methods may be implemented by instructions being performed by a processor, and such instructions may be stored on one or more processors or non-transitory computer-readable media such as, for example, an integrated circuit, a software carrier or other storage device such as, for example, a hard disk, a compact diskette (“CD” or “DVD”), a random-access memory (“RAM”), a read-only memory (“ROM”) or any other magnetic, optical, or solid-state media.
  • the instructions may form an application program tangibly embodied on a computer-readable medium such as any of the media listed above or known to those of skill in the art.
  • the instructions thus stored are useful to execute using elements of hardware and software to perform the steps of the methods described herein.
  • the computer-readable media is useful to instruct a processor to perform the steps of the methods disclosed herein.

Abstract

A method performed by an electronic device includes forming a playback group of devices that can participate in a shared playback of the same digital content. A time to play the digital content selection on multiple user devices is scheduled. One or more notifications to the multiple user devices are sent. One notification may include the schedule to play the content selection. While playing the content selection, a level of satisfaction from the multiple user devices is collected and recorded. One or more content recommendations to the multiple user devices is sent. The content recommendations are based on the recorded content selection level of satisfaction indications.

Description

METHODS TO MANAGE DYNAMIC CONTENT CONSUMPTION GROUPS AND TO RECOMMEND CONTENT
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of US provisional patent application No. 63/252,214 filed on 05 October 2021 which is incorporated by reference herein in its entirety.
TECHNICAL FIELD
[0002] The present disclosure generally relates to managing network communication between groups and more particularly to techniques to provide dynamic management of content consumption groups of users.
BACKGROUND
[0003] With increasing availability of digital electronics and network devices, communication between individuals has become much easier. With the advent of social media and on-line communities both friend groups and haphazard strangers join and play games, share thoughts, and attend meetings. Technologies that allow for interactive interactions allow any such individual engagements that are virtual to feel closer to real engagements. Video conferencing applications is one such technology that allow people to communicate with each other in remote locations through use of audio and video media in real time or otherwise. In addition to video conferencing, similar other technologies allow the broadcast and dissemination of such viewings and interactions. Single content can be consumed in such manners simultaneously or otherwise and be enjoyed during get togethers, meetings and conferences, and other popular events. During many of these events or conferences, participant responses are captured or disseminated live. This can include different scenarios, ranging from live streams of a sporting event to captured business meetings and technical conferences. Technology has also been providing secondary users and consumers of content to connect together in a social manner even when located remotely.
[0004] Recently the challenges to travel and getting together as a group in person had put more pressure in developing technologies that enable live streams or recorded meetings and conferences. Unfortunately, existing content consumption systems and devices currently lack sufficient functionality for assisting users with the optimal consumption of multimedia content (e.g., movies, shows, sporting events, YouTube, music, etc.) in group-based settings (e.g., with family, friends, acquaintances, etc.).
[0005] Some examples of the types of functionality currently lacking in existing content consumption systems and devices include capability to auto-detect scenarios in which users are interested in consuming content together with one another in a group setting; capability to perform content consumption group operations on behalf of users upon detecting conditions to perform these operations have bene met (e.g., forming a content consumption group, disbanding a content consumption group, adding, or removing users as members of a content consumption group); capability to send content consumption group related notifications to users (e.g., notifying them of group content consumptions schedules, events, availability of other members, etc.) ; and capability to manage a content consumption profile of a group on behalf of its group members (e.g., maintain content consumed by group, content preferences of the group, availability of the group members, etc.).
[0006] Consequently, techniques are needed to address these short comings and provide additional capability not currently provided by the prior art.
SUMMARY
[0007] This summary is provided to introduce a selection of concepts in a simplified form as a prelude to the more detailed description that is presented later. The summary is not intended to identify key or essential features, nor is it intended to delineate the scope of the claimed subject matter.
[0008] In one embodiment, a method performed by an electronic device, the method includes detecting a condition that a first user device and a second user device are available to play a content selection as a group, forming a content playback group including at least the first user device and the second user device as members of the playback group, scheduling a time to play the content selection on the first user device and the second user device, sending one or more notifications to the first user device and the second user device, the notification including a schedule to play the content selection, recording content selection level of satisfaction indications from at least one of the first user device and the second user device while playing the content selection, and sending one or more content recommendations to at least one of the first user device or second user device, wherein the content recommendations are based on the recorded content selection level of satisfaction indications.
BRIEF DESCRIPTION OF THE DRAWINGS
[0009] The foregoing summary, as well as the following detailed description of illustrative embodiments, is better understood when read in conjunction with the accompanying drawings, which are included by way of example, and not by way of limitation with regard to the present principles. In the drawings, like numbers represent similar elements FIG. 1 is a block diagram illustrating a communication network configured for facilitating one or more interactive realtime communications between users and/or devices, according to one environment;
FIG. 2 is an illustration of a group of users using a centralized service according to one embodiment;
FIG. 3 is an illustration of a scenario where a group of users having access to a centralized local area network according to one embodiment, FIG. 4 is an illustration of an embodiment using a fully distributed and decentralized managed system;
FIG. 5 is a flow chart illustration of a content consumption group (CCG) functionality deployment methodology according to one embodiment;
FIG. 6A is an illustration of a system that provides several different types of entities in an end-to-end multimedia arrangement according to one embodiment;
FIG. 6B is an illustration of a system having a plurality of interfaces within and end- to-end multimedia content distribution arrangement according to one embodiment;
FIG. 7 is a flow chart illustration of a CCG function deployment methodology according to one embodiment;
FIG. 8 schematically illustrates a general overview of an encoding and decoding system according to one or more embodiments;
FIG. 9 depicts an example flow diagram according to an embodiment; and
FIG. 10 depicts an example apparatus architecture that can perform any of the embodiment methods.
DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS
[0010] In the following description of various illustrative embodiments, reference is made to the accompanying drawings, which form a part thereof, and in which is shown, by way of illustration, how various embodiments may be practiced. It is to be understood that other embodiments may be utilized, and structural and functional modification may be made without departing from the scope of the present principles
[0011] Figure 1 is a block diagram illustrating a communication network 110 that is coupled to a variety of devices 100 via different alternative means such as busses and cables (shown generally as 150). The devices 100 are illustratively shown in Figure 1 as desktop computers, laptops or mobile or smart devices like mobile phones. These are just a few examples of the devices that can be used. It is understood that in alternate embodiments other devices can be added or substituted for these examples.
[0012] The network is capable of facilitating one or more interactive real-time communication such as teleconference and streaming devices and mini-networks that provide both audio and/or video components. The network contains at least one processor 120 that may be, for example in one or more servers (shown as 120 as well). The server/processor may be remote or local and can be in processing communication with other processor/servers. In alternate embodiments, one or more of these processor/servers can be part of a coupled or group of wireless or portable devices via a base station. In one example, server 120 may represent an instance among a large instances of application servers in a data center, cloud computing environment, or any other mass computing environment. This is illustrated by reference numerals 130 (i.e. network/cloud). There also may include thousands or millions of client computers. Together they will hereinafter be referenced as numerals 110, 130 or 110/130 interchangeably.
[0013] The network 110/130 can also provide internet connectivity and include other components such as a digital television (DTV) as illustratively shown at 140 that allows viewers to stream on-demand videos, online interactive media, over-the-top content, music, browse the internet, view photos, and the like. There are existing technologies that enable a user to mirror the content displayed on the screen of their personal device to the screen of a digital television (DTV) or the like which can also provide such communication between one or more devices 100. Some examples of these technologies include Google Chromecast™ and Apple TV™. This technology enables a user to share content from their personal devices onto a larger screen such that it can be more easily viewed by others. For example, displaying pictures or movies stored on a personal device onto the larger screen of a DTV can be used for others to view the content more easily.
[0014] In one embodiment, at least one processor is provided in one of the devices for example in the server computer 120 which is configured to host a conferencing meeting and transmits and receives video, image, and audio data to and from each of the client computers (through the cloud or the network when that is the case.) Each of the client computers, in one embodiment may also include their own computing device with at least a processor, processing units, graphics processing units (GPU), one or more buses, memory organized as volatile and/or nonvolatile storage, one or more data input devices, I/O interfaces and output devices such as loudspeakers or a LINE-OUT jack and associated drivers. Each of the client computers may also include an integrated or separate display unit such as a computer screen, TV screen or other display and have any of mobile or stationary computers including desktop computers, laptops, netbooks, ultrabooks, tablet computers, smartphones, et cetera. In one embodiment, the network 130 is the Internet.
[0015] In one embodiment, each device 100 that can be referenced as user or client computer 100, may have a particular profile and one or more users can also have a profile that resides in the particular device or client computer or can be located on the cloud under a user account. In an embodiment, the network through one or more servers may also maintain a list of accounts or profiles that are each associated with one of the client computers and/or one or more users of the client computers. In one embodiment, each of the client computers can be used by an attendee of a conference session that enables video (live and streaming or recorded) and images and audio operations. Devices/client computers 100 can be simultaneously a presenting device or a recipient device (attendee) of a video conference session.
[0016] In recent years, technologies for creating or enhancing a viewing experience for users who are consuming content in non-social settings (e.g. an individual or small group viewing a DTV) or socially suboptimal settings are available. A socially suboptimal setting is one that lacks social cues of someone who would otherwise enhance the experience if present. Such systems may inject or overlay social effects with the primary media content during synchronous or asynchronous viewing. However, valuable social effects may be lacking from current systems for several reasons.
[0017] In one scenario, users may be reluctant to share information due to privacy concerns (e.g. for effects that utilize user-provided audio, a user may be concerned a microphone will pick up unrelated conversation in a different room). In other scenarios users may be reluctant to share information that interrupts the viewing experience (e.g. writing a chat message or selecting an emoticon involves attention from the user that may distract from the primary content). In addition, users may be unavailable for viewing of a live event referenced as a Media Item (e.g. a live broadcast of a sporting event or new show). Media Item may be part of a larger media content being consumed or be the entirety of the content.
[0018] It should be noted that in some scenarios, users may not have viewed content that is being viewed by other members of their social groups (relevant for asynchronous viewing). Unfortunately, as indicated solutions that address a lack of social cues in media consumption systems is not provided currently by the prior art and is desirable.
[0019] Current technologies lack the ability to the creation/modification/addition of social elements to the content that is being consumed by the users. For example, many general purpose teleconferencing solutions (Skype, Zoom, Facetime etc.) implicitly pull in social elements from participants that are viewing a shared Media Item (e.g. a user may play a video while sharing their screen). These solutions include tools such as live chat that may serve to synchronously overlay information about the shared media item. More recently, solutions such as Netflix Party, Disney Plus GroupWatch, Facebook Live, Scener, Amazon Prime Video Watch Party and various applications for synchronous viewing of YouTube videos have been developed that incorporate different forms of text-based social cues but still do not address the control of cues. These social cues include traditional text-based information such as live chat that users may engage in that appears alongside displayed media content.
[0020] Graphical emoticons are another form of text-based cues that users may select and insert during playback of the Media Item. An example of a system that supports insertion of emoticons is Facebook Live which allows user to select “reaction emojis” which appear layered with the display of a live-streamed Media Item. These reaction emojis are preserved with the Media Item and made available when the Media Item is replayed by other users of the system but still do not address the prior art shortcomings.
[0021] Existing content consumption systems and devices currently lack sufficient functionality for assisting users with the optimal consumption of multimedia content (e.g., movies, shows, sporting events, YouTube, music, etc.) in group-based settings (e.g., with family, friends, acquaintances, etc.). Some examples of the types of functionality currently lacking in existing content consumption systems and devices include the following: capability to auto-detect scenarios in which users are interested in consuming content together with one another in a group setting, where the users may be collocated or noncollocated, and where the users may consume the content together at the same time or at different times; capability to perform content consumption group operations on behalf of users upon detecting conditions to perform these operations have bene met (e.g., forming a content consumption group, disbanding a content consumption group, adding, or removing users as members of a content consumption group); capability to send content consumption group related notifications to users (e.g., notifying them of group content consumptions schedules, events, availability of other members, etc.); capability to manage a content consumption profile of a group on behalf of its group members (e.g., maintain content consumed by group, content preferences of the group, availability of the group members, etc.); capability to coordinate content consumption schedules for a content consumption group (e.g., survey group members to identify optimal content consumption times for the group); capability to record group member comments and reactions while they consume content such that these comments and reactions along with the content can later be consumed by other group members (or the same group members over again), capability to monitor and track the content consumed by the members of a content consumption group (e.g., measuring and aggregating group’s level of satisfaction for the content consumed by the group); capability to determine the types of content of interest to the collective set of members of the group (e.g., based on analysis of group’s level of satisfaction to content consumed); capability to curate content selections of interest to members of a content consumption group; and capability to enable group members to consume content in a group setting but consume the content at different times (i.e., in an asynchronous fashion) such that group members can still enjoy group comradery and immersion even though they do not consume content on the same schedule as each other. [0022] In order to ease understanding of the solutions as per different embodiments, Figures
2- 4 are provided to illustrate a few different scenarios that require different enabling functionalities when consuming content.
[0023] Figure 2 is an illustration of a group of users 200 (also referenced as clients) that are sharing a content or are connected through a common service provider 250. These users are part of a content consumption group (CCG). In this scenario, desired functionality, as will be discussed presently, can be deployed in a centralized manner within a wide are network. For example, in one scenario this CCG functionality may be deployed as a service on a network server (e.g. in the cloud). This CCG service may then be accessed by CCG client functionality hosted on user devices 210 as shown in Figure 2.
[0024] The scenario presented in Figure 3, provides a variation. In this scenario, the CCG functionality is still in a centralized manner, but the users are in electronic communication with one another through a more localized network, in this example a local area network (LAN) not shown. In this example, the local area network is established within a single residence 390, but as can be understood other arrangements can be provided in alternate embodiments (withing a gated community, hospital, university dorm system, military base, residence housing etc.) In one embodiment, the CCG functionality may be deployed as a service in a local device 310 (e.g. DTV, set top box, etc. as specified as 320). The CCG service may then be accessed by users 300 that are in proximity to that device (e.g. watching TV with one another - see 320) and/or by users using separate devices hosting CCG clients that are in local proximity to the CCG service as shown in the figure.
[0025] The scenarios of Figures 2 and 3, are provided to enable understanding that the functions can be provided on the hosted device, whether as in Figure 3 they are provided in a network that is local and somewhat in close proximity to users (e.g. DTV, phone, computer, home gateway, personal digital assistant) or as in Figure 2, relatively remotely using a function hosted in a network that enables it (cloud etc.). In either scenario, the clients and the CCG can be set up to consist of a variety of groups (with understanding that these are just examples and the groups are not limited) that include different members including:
- an entire family or a subset of family members (e.g. kids, parents, father and son, mother and daughter, etc.),
- a group of friends,
- a group of acquaintances,
- group of strangers.
[0026] As with respect to content provided, the content and the mode of its consumption may include, but is not limited, to one or more of the following: a. watching streamed video content such as movies, shows, documentaries, classes, other personal live streaming content, etc., b. watching broadcasted content such as a live sporting event, nationally televised presidential debate, an awards show, etc., c. watching web-based content such as YouTube, Facebook, TikTok, etc., d. watching personal content such as pictures, videos, etc., e. listening to audio contents such as songs, albums, concerts, playlists, etc., f. engaging in the exchange of content between group members such as chats, texts, etc.
[0027] In addition, a content consumption group member may consume content associated with the group in one or more of the following manners: - together with other group members at the same time, in the same location, via a shared device (e.g. DTV),
- together with other group members at the same time, but in different locations and via separate devices (e.g. separate DTVs, phones, tablets, computers),
- with other group members, but at different times (but still benefitting from other aspects of the content consumption group such as content recommendations, content satisfaction level reviews, and group discussion about the content before or after it is consumed).
[0028] Figure 4 is an illustration of a decentralized scenario. In this other embodiment, the CCG functionality may be deployed in a fully distributed and de-centralized manner 440 as a CCG function hosted on user 400 devices 410 that coordinate amongst themselves to realize the proposed CCG functionality as shown. In this case, the individual CCG functions 440 hosted on the devices 410 may support the capability to coordinate with one another to perform CCG operations such as CCG group creation, disbandment, etc. In doing so, overlap and duplicate CCG operations are avoided. This coordination may involve CCG coordination messages to be exchanged between the CCG functions to enable the CCG functions to determine which CCG function performs CCG operations.
[0029] Considering Figure 4 in conjunction with Figures 2 and 3, situations may arise in which the users are interested or may potentially be interested in consuming content together with one another in a group may consist of, but are not limited to, detection of one or more of the following conditions:
- a group of users assembling together in a collocated fashion near a shared content consumption device (e.g. DTV) and indicating their intentions to consume content with one another; - a group of users assembling together in a remote (non-collocated) fashion and indicating their intentions to consume content with one another via a distributed set of content consumption devices (e.g. DTVs, phones, computers, tablets, etc.);
- a group of users (e.g. family members or friends) all having availability in their schedules that may be used to consume content with one another,
- a social graph that exists between users (e.g. leveraging social media apps and their user profiles such as Facebook, Instagram, etc.);
- a verbal or electronic conversation (e.g. social media feeds such as group texts and chats) between users indicating interest in consuming content with one another;
- an observed action by a group of users such as searching for content that they might like to consume together; and
- similar responses (Ex. cheering, boo, crying, laughing) from multiple users to specific types of content or scenes or moments within particular content (i.e. user who react in a similar way to specific content).
[0030] In addition, when sending CCG notifications to users may take a few different forms. Some of these may include, but is not limited to, one or more of the following operations:
- sharing the name or identifier of a content consumption group that a user is a potential, current or past member of;
- recommending one or more groups that users can join based on detecting content that may be of interest to a user and that is being consumed by these groups and that has alignment with the content interests of the user;
- notifying group members of scheduled content consumption events that are suggested or planned (e.g., viewing parties) by one or more members or the function itself; - notifying group members of the presence and/or availability schedule of other group members to consume content with other group members,
- presenting content recommendations to the group (e.g. via the group’s content consumption profile, thumbnails, swim lanes, links, etc.);
- sharing content recommendations from the group’s profile with individual group members (e.g., upon detecting that particular member(s) enjoyed a content selection or type of content that was consumed together with the group);
- sharing content recommendations with individual group members based on the group’s content consumption history or the content preferences of fellow group members; and
- sharing comments and reactions to content consumed by the CCG members.
[0031] In addition, in a situation where managing a content consumption profile for a group may consist of, but is not limited to, one or more of the following operations: a. storing content consumption group metadata within a profile such as: i. Individual group member information such as names, identifiers, content preferences, contact information, device information or availability; ii. Group level information such as content selections consumed by the entire group or consumed by individual members or sub-groups of the group, content preferences of the group, group availability, group content satisfaction level ratings; b. creating a profile when a content consumption group is formed; c. updating a profile when users are added to or removed from a content consumption group, content is consumed by the group, feedback from group members is received regarding content that they consumed; c. deleting a profile when a content consumption group is disbanded; d. merging individual profiles of group members together such that their individual content consumption history, feedback, and recommendations are aggregated together into a group profile; and e. updating individual profiles of the group members with information that is stored in a group profile such as content consumption history, feedback, and recommendations.
[0032] Furthermore, where coordinating content consumption schedules for a group may consist of, but is not limited to, one or more of the following operations: a. examining individual group member schedules / calendar; b. surveying individual group members to inquire about their availability to consume content with other group members; and c. aggregating and assessing the availability of the individual group members to determine optimal times for all or subset(s) of group members to consume content either with one another at the same time or at different times.
[0033] Alternatively, where a recording group member comments and reactions while they consume content such that these comments and reactions along with the content can later be consumed by other group members (or the same group members viewing the content over again) may consist of, but is not limited to, one or more of the following operations, a. recording text, audio, video chat comments and reactions of one or more group members while they consume content; b. storing the recorded comments and reactions of one or more group members along with metadata to enable the comments and reactions to be associated with the content timeline and/or scenes/events of the content; c. support for playing back the recorded comments and reactions of the group members along with the associated content in a manner in which the comments and reactions of the group are aligned with the timeline and/or scenes/events of the content; d. support for scrolling, viewing, or playing back the recorded comments in an offline manner that is independent of the associated content; and e. support for selectively searching and or filtering comments and reactions.
[0034] In addition, where monitoring and tracking the content selections consumed by the group members may consist of, but is not limited to, one or more of the following operations: a. measuring the level of satisfaction of each individual group member and aggregating these results into a group level of satisfaction; b. collecting feedback from members by indirect means such as monitoring the interaction between the members and the comments and reactions they express to other members; and c. storing the aggregated group level of satisfaction results in the content consumption profile of the group.
[0035] However, where determining the types of content of interest to the collective set of members of the group may consist of, but is not limited to, one or more of the following operations: a. analyzing the content consumption metadata of the group, b. monitoring the different forms of interaction (e.g., spoken words, texts, chats, social media, body position and language) between group members to detect content likes and dislikes of the individual group members of the group, c. classifying the types of content of interest to the group members (e.g., based on genres, series, actors, ratings, etc.), and d. computing the preferred types of content of interest to the collective set of members of a group by assessing the aggregated group content satisfaction levels for the different content selections consumed by the group.
[0036] In situations where curating content selections of interest to members of a content consumption group may consists of, but is not limited to, one or more of the following operations: a. searching for content selections from various content providers that align with the collective content preferences and interests of the group members; b. presenting content recommendations to the group via the group’s content consumption profile (e.g., thumbnails, swim lanes, links, etc.); c. sharing content recommendations from the group’s profile with individual group members (e.g., upon detecting that particular member(s) enjoyed a content selection or type of content that was consumed together with the group); and d. using content consumption and satisfaction metadata (e.g. content consumption history and satisfaction ratings, etc.) from individual group member content consumption profiles to make content recommendations to other members in the group even at times when group members are not actively watching content together with one another.
[0037] In addition, where enabling group members to consume content in a group setting at different times asynchronously of one another, may consist of, but is not limited to, one or more of the following operations: a. scheduling the consumption of a content selection by each of the members of content consumption group such that the members may consume the content at different times than one another along with an optional configured time window (e.g. 1 week); b. streaming to a group member’s device a content selection along with recorded comments and reactions (e.g. text, audio, video chats) from fellow group members that previously consumed the content selection such that the content selection and the comments and reactions from the fellow group members are synchronized with one another; c. monitoring the asynchronous consumption of a content selection by each of the member devices to detect if/when the content selection has been consumed by the different group members and using this information to send reminders to members that have yet to watch the content or filter the amount of information sent to members in notifications; d. aggregating the comments and reactions of group members for a given content selection that is consumed at different times by different members of the group; e. generating asynchronous group content consumption events to notify group members if/when each individual group member completes viewing of a content selection and their comments and reactions to the content selection; and f. creating a separate sub-group within the content consumption group (e.g. chat session) related to a particular content selection and enrolling group members in the sub-group upon detecting that they have completed consumption of the content selection such that the content consumption experience for group members that have not yet consumed the content is not spoiled.
[0038] In order to address these needs in light of the visited scenarios, in one embodiment, a function to assist individuals with the consumption of content in a group-based setting. The content consumption group (CCG) will be designed to be capable of performing one or more content consumption group management operations on behalf of individuals (i.e. clients or users) such as but not limited to those operations defined in Figure 5. The function may support one or more embodiments that can include one or more of the shown operations and/or a combination of some of these operations in the same or different sequences (than the order shown) in Figure 5.
[0039] In addition, the operations that will be discussed in Figure 5 can be deployed on various types of nodes in a system such as but not limited to a function hosted on a local device in close proximity to users (e.g. Digital Television, smart phone, tablet, computer, home gateway, personal digital assistant, or set top box), or a function hosted remotely in the network (e.g. on a cloud, edge or enterprise server), or combinations thereof. It should also be noted that these CCG function(s), at least in one embodiment, can support content consumption group members such as but not limited to an entire family or a subset of family members (e.g. kids, parents, father and son, mother and daughter, etc.), friends, acquaintances, strangers, or combinations thereof.
[0040] In one embodiment, the CCG function enables members of a content consumption group to consume content such as but not limited to one or more of the following:
- watching streamed video content (e.g. movies, shows, documentaries, classes, etc.),
- watching broadcasted content (e.g. live sporting event, nationally televised presidential debate, etc.),
- watching web-based content (e.g. YouTube, Facebook, TikTok, etc.),
- watching personal content (e.g. pictures, videos, etc.),
- listening to audio content (e.g. songs, albums, concerts, playlists, etc.),
- engaging in the exchange of content (e.g. chats, texts, etc.), or
- combinations thereof. [0041] In another embodiment, the CCG function enables content consumption group members to consume content associated with the group in manners such as but not limited to one or more of the following: consuming content together with other group members at the same time, in the same location, via a shared device (e.g. DTV); consuming content together with other group members at the same time, but in different locations and via separate devices (e.g. separate DTVs, phones, tablets, computers); and consuming content with other group members, but at different times (but still benefitting from other aspects of the content consumption group such as content recommendations, content satisfaction level reviews, and group discussion about the content before or after it is consumed).
[0042] Figure 5 provides an illustration of a variety of different functions and functionality as provided by CCG as per one embodiment. Numerals referenced as 501 to 504 provide the type of users and or device and service. So for example 501 is reserved for local users while 504 is provided for the remote users. The methodology provided in the embodiment, is divided into 10 steps denoted by reference numerals 510 to 595 for better clarity.
- In S510 (Step 1: ), the Content Consumption Group (CCG) function detects situations in which users are interested or may potentially be interested in consuming content together with one another in a group setting which may consist of detecting conditions such as but not limited to: a group of users assembling locally together in a collocated fashion near a shared content consumption device (e.g. DTV) and indicating their intentions to consume content with one another, - a group of users assembling together in different remote (non-collocated) locations from one another and indicating their intentions to consume content with one another via a distributed set of content consumption devices (e.g. DTVs, phones, computers, tablets, etc.),
- a group of users (e.g. family members or friends) all having availability in their schedules to consume content with one another,
- a social graph that exists between users (e.g. leveraging social media apps and their user profiles such as Facebook, Instagram, etc.),
- a verbal or electronic conversation (e.g. social media feeds such as group texts and chats) between users indicating interest in consuming content with one another,
- an observed action by a group of users such as searching for content that they might like to consume together,
- observed alignment in user behavior or responses (e.g., cheering, boo, crying, laughing) to specific types of content or scenes or moments within particular content selection (i.e. those who similarly responded to specific content can form the group).
- observed and estimated user’s emotional state (e.g., mood, bored, tiredness, excitedness, sad, happy).
[0043] In S520, the CCG function triggers and performs one or more CCG management operations on behalf of the users such as but not limited to: forming a CCG, disbanding a CCG, adding user(s) as member(s) of a CCG, and removing user(s) as member(s) of a CCG.
[0044] In S530. the CCG function manages a content consumption profile of a group on behalf of its group members which may consist of operations such as but not limited to one or more of the following:
Storing CCG metadata within a profile such as: a. Individual group member information such as names, identifiers, content preferences, contact information, device information, availability, b. Group level information such as content selections consumed by the group or individual members of the group, content preferences of the group, group availability, group content satisfaction level ratings, creating a CCG profile when a CCG is formed,
- updating a CCG profile when users are added to or removed from a CCG, content is consumed by the CCG members, feedback from CCG members is received regarding content that they consumed, deleting a CCG profile when a CCG is disbanded,
- merging individual profiles of CCG members together such that their individual content consumption history, feedback, and recommendations are aggregated together into a CCG profile, and
- updating individual profiles of the CCG members with information that is stored in a CCG profile such as content consumption history, feedback, and recommendations.
[0045] In S540. the CCG function coordinates content consumption schedules for a CCG which may consist of operations such as but not limited to one or more of the following:
- examining individual CCG member schedules / calendars,
- surveying individual CCG members to inquire about their availability to consume content with other CCG members,
- aggregating and assessing the availability of the individual CCG members to determine optimal times for all or subset(s) of CCG members to consume content wither with one another at the same time or at different times. [0046] In S550 , the CCG function sends content consumption group notifications to users for purposes such as but not limited to one or more of the following:
- informing users that a CCG has been formed or disbanded,
- sharing the name or identifier of a CCG that a user has been added to or removed from,
- recommending one or more CCGs that users can join based on detecting content that may be of interest to a user and that is being consumed by these groups and that has alignment with the content interests of the user,
- notifying group members of scheduled CCG events that are suggested or planned (e.g., viewing parties) by one or more members or the function itself,
- notifying group members of the presence and/or availability schedule of other group members to consume content with other group members,
- presenting content recommendations to the CCG members via the group’s content consumption profile (e.g., thumbnails, swim lanes, links, etc.),
- sharing content recommendations from the CCG’s profile with individual group members (e.g., upon detecting that particular member(s) enjoyed a content selection or type of content that was consumed together with the group),
- sharing content recommendations with individual CCG members based on the CCG’s content consumption history or the content preferences of fellow group members,
- sharing comments and reactions to content consumed by the CCG members.
[0047] In S560 , the CCG function records group member comments and reactions while they consume content such that these comments and reactions along with the content can later be consumed by other group members (or the same group members viewing the content over again). This may consist of, but is not limited to, one or more of the following operations:
- recording text, audio, video chat comments and reactions of one or more group members while they consume content,
- storing the recorded comments and reactions of one or more group members along with metadata to enable the comments and reactions to be associated with the content timeline and/or scenes/events of the content,
- support for playing back the recorded comments and reactions of the group members along with the associated content in a manner in which the comments and reactions of the group are aligned with the timeline and/or scenes/events of the content,
- support for scrolling, viewing, or playing back the recorded comments in an offline manner that is independent of the associated content.
- support for selectively searching and or filtering recorded comments and reactions.
[0048] In S570, the CCG function monitors and tracks the content consumed by the members of a CCG and their level of satisfaction with the consumed content which may consist of operations such as but not limited to one or more of the following: measuring the level of satisfaction of each individual CCG member and aggregating these results into a group level of satisfaction,
- collecting feedback from members by indirect means such as monitoring the interaction between the members and the comments and reactions they express to other members, concerning the consumed content
- storing the aggregated group level of satisfaction results in the CCG profile. [0049] In S580, the CCG function determines the types of content of interest to the collective set of members of the CCG which may consist of operations such as but not limited to one or more of the following:
- analyzing the content consumption metadata of the CCG,
- classifying the types of content of interest to the CCG members (e.g., based on genres, series, actors, ratings, etc.), and
- computing the preferred types of content of interest to the collective set of members of a CCG by assessing the aggregated group content satisfaction levels for the different content selections consumed by the CCG.
[0050] When computing the types of content of interest to the CCG members, the CCG function may track and differentiate (i.e., prioritize) satisfaction levels measured for content that is consumed by CCG members together as a group vs. satisfaction levels measured for content that is consumed individually by CCG members.
[0051] In S590, the CCG function curates content selections of interest to members of a CCG which may consist of operations such as but not limited to one or more of the following:
- searching for content selections from various content providers that align with the collective content preferences and interests of the CCG members,
- presenting content recommendations to the CCG via the CCG profile (e.g., thumbnails, swim lanes, links, etc.),
- sharing content recommendations from the CCG profile with individual group members (e.g., upon detecting that particular member(s) enjoyed a content selection or type of content that was consumed together with the group), - using content consumption and satisfaction metadata (e.g. content consumption history and satisfaction ratings, etc.) from individual group member content consumption profiles to make content recommendations to other members in the group even at times when group members are not actively watching content together with one another.
[0052] In S595, the CCG function enables group members to consume content in a group setting at different times asynchronously of one another such as, but not limited to, one or more of the following:
- scheduling the consumption of a content selection by each of the members of content consumption group such that the members may consume the content at different times than one another along with an optional configured time window (e.g. 1 week),
- streaming to a group member’s device a content selection along with recorded comments and reactions (e.g. text, audio, video chats) from fellow group members that previously consumed the content selection such that the content selection and the comments and reactions from the fellow group members are synchronized with one another,
- monitoring the asynchronous consumption of a content selection by each of the member devices to detect if/when the content selection has been consumed by the different group members and using this information to send reminders to members that have yet to watch the content or filter the amount of information sent to members in notifications,
- aggregating the comments and reactions of group members for a given content selection that is consumed at different times by different members of the group
- generating asynchronous group content consumption events to notify group members if/when each individual group member completes viewing a content selection and/or adds their comments and reactions to the content selection, - creating a separate sub-group within the content consumption group (e.g. chat session) related to a particular content selection and enrolling group members in the sub-group upon detecting that they have completed consumption of the content selection such that the content consumption experience for group members that have not yet consumed the content is not spoiled.
[0053] The CCG can be implemented as to detect situations and opportunities. The following scenarios and special topics can be provided in different embodiments. In a first scenario,
[0054] I. Content Consumption Opportunities
In one embodiment, the CCG function detects situations in which users are interested or may potentially be interested in consuming content together with one another in a group setting. The CCG function may support one or more methods for detecting these situations.
[0055] The CCG may detect a group of users assembling locally together in a collocated fashion near a shared content consumption device (e.g. DTV, a smart speaker, etc.) or a noncollocated group of users in assembling in remote locations and also interested in consuming content with one another. Users of the CCG function can indicate their intentions to consume content with one another. In one embodiment, the CCG function may use peripheral sensor devices (e.g. smart cameras, smart microphones, etc.) capable of detecting the presence of users (e.g. via facial recognition, voice detection, etc.) that are recognized as members of an existing CCG (e.g. family members) or candidate members for a new or existing CCG . In addition to detecting the presence of these users, the CCG may also detect the activities that the individual users are engaging in and whether these activities suggest that the users are assembling together for the purpose of consuming content with one another (e.g., watching TV) or that the users are assembling together to perform another activity that may be further enhanced via the consumption of content with one another (e.g., listening to music during dinner with one another). [0056] In addition to leveraging devices such as smart cameras and microphones to monitor and/or detect user context such as their presence, current or planned activities, or availability to consume content with other users, the CCG function may leverage other context information. For example, context from various other sources such as schedule or calendar information stored on a user’s local device or in the cloud, context from one or more social media apps or accounts of the user or one or more their peers.
[0057] The CCG function may support users indicating their interests and/or intentions to consume content remotely with one another. In one embodiment, the CCG function may receive indications from users via their individual devices (e.g. DTVs, phones, computers, tablets, etc.). These CCG indications may include information such as a user’s presence, availability and/or interest in consuming content with other users as well as the type of content. The CCG indications may be initiated by the users themselves (e.g., configuring their CCG settings within a CCG app hosted on their local device which then communicates these CCG settings back to a CCG function hosted in the cloud). Alternatively, the CCG indications may be auto generated on the user’s behalf. For example, a CCG function hosted on the user’s device may be capable of detecting the presence of the user (e.g. via facial recognition, voice detection, etc.). The CCG function on the user’s device may also detect the activity that the individual user is currently engaging in and whether this activity suggests that the user is available and interested in consuming content with other users. The CCG function hosted on the user’s device may then relay CCG indications to a CCG function in the cloud. This CCG function in the cloud may then process CCG indications from remote users to detect situations in which these users are interested in consuming content with one another in a remote fashion. [0058] The CCG function may detect a social graph that exists between users. For example, the CCG function may interface and/or leverage information from user social media apps, accounts, or profiles (e.g. Facebook, Instagram, etc.). Information may include location, availability, content interests or preferences, willingness to join content consumption groups, etc. Based on this information, the CCG function may be able to detect and/or construct a social graph which it can then use to determine whether user(s) are candidates to take part in a content consumption group.
[0059] The CCG function may monitor and detect a verbal or electronic conversation or sign (e.g. via microphones and/or over social media feeds such as group texts and chats) between users indicating their interest in consuming content with one another. For example, a group of users may be discussing the idea or planning a time when they might like to consume content with one another or particular types of content selections they might like to consume with one another. In another example, each user may be commenting to the recent release of the movie on his own and if positive comments (e.g. “Likes” button is pressed) are observed from multiple persons, the CCG function may recommend that these users form a group to consume content of a similar and nature.
[0060] The CCG function may detect an observed action by a group of users such as jointly searching for content that they might like to consume together with one another. For example, a group of users may be assembling locally or remotely and starting their search together via the content browser of one or more streaming services (e.g. Netflix, Hulu, etc.).
[0061] The CCG function may detect an observed pattern or alignment in user behavior or user responses (e.g., cheering, boo, crying, laughing) that may indicate that they might be like minded individuals as well as available candidates for forming a new CCG or joining an existing CCG. For example, fans of a common sports team that are starting to watch a televised sporting event, or users that have searched, consumed, or responded to content in a similar fashion.
[0062] The CCG function may detect an observed pattern or alignment in user’s emotional state (e.g., tired, bored, excitedness, sad, happy) that may indicate that they might be like minded individuals as well as available candidates for forming a new CCG or joining an existing CCG. For example, a fan of candidate for political election gets sad at the candidate loses the and he may want to form a group to watch certain videos together with other supporters of the same candidate who are also sad due to the loss of the election.
[0063] II. Group Formation, Disbandment and Management
The Content Consumption Group can also be provided so that the formation, disbandment and member management is controlled. Upon detecting an opportune situation for grouping together users for the purpose of consuming content with one another, the CCG function can trigger the formation of a new CCG or the addition of members to an existing CCG. When doing so, the CCG function can keep track of the individual members of a CCG by storing information such as user device identifiers and addresses, content preferences, etc.
[0064] A CCG may have a “lifespan” depending on what is the trigger for the formation of the group. This may also indicate when to trigger the disbandment of a CCG. For example, if a group is formed among strangers that are interested in a live event, then the group could be disbanded when the event (content) is over. Groups formed among families and friends may have longer lifespan or no time limit.
[0065] The CCG function can trigger the disbandment of a CCG or the removal of members from a CCG based on detecting certain criteria have been met. For example, the CCG function may detect that the group has finished consuming content with one another, group members themselves have left a location and/or are no longer available to consume content, or explicit requests to remove group member(s) or disband a group have been received.
[0066] HI. CCG Profile Management
In one embodiment, upon the formation of a CCG and until it is disbanded, the CCG function may manage one or more profiles for the CCG on behalf of its group members. To manage a CCG profile, the CCG function may track and store various forms of information such as individual group member information including names, identifiers, content preferences, content consumption history, contact information, device information, member availability, content consumption schedule preferences, forms and types of interaction preferences (e.g. text, audio, video chat), content provider account info. The CCG function may also track, aggregate and store this information individual group member profile information to build one or more profiles for the CCG consisting of content selections consumed by the group, content consumption history and preferences of the group, group availability, group content satisfaction level ratings, group content consumption schedule preferences, forms and types of interaction preferences of the group, and content providers accessible by the group to consume content.
[0067] In one embodiment, the CCG function may create a CCG profile when a CCG is formed or at other opportune times during the lifetime of the CCG. The creation of the CCG profile may involve the merging/aggregation of individual member profiles. This merging/aggregation may involve the CCG function identifying commonalities across the group members with respect to member availability, content consumption schedule preferences, forms and types of interaction that are preferred, content provider account info. This merging/aggregation may also involve the CCG function identifying non-commonalities across the individual member profiles and filtering these from the group profile such that they are not included.
[0068] Once a CCG profile has been created, the CCG function may also keep the profile updated when new users are added or existing users are removed from the CCG, content is consumed by the CCG members, feedback from CCG members is received regarding content that they have consumed.
[0069] When a CCG is disbanded, the CCG function may delete the CCG profile.
Alternatively, the CCG function may store the profile in the event that the CCG function detects that the same group of users forms a CCG in the future. If this is the case, the CCG may reuse the profile if/ when the CCG forms again.
[0070] The CCG function may share CCG profile information across CCGs or with individual members of a CCG. For example, the CCG function may leverage CCG profiles of similar CCGs to make content recommendations across CCGs. Similarly, the CCG function may use information in a CCG profile to make content recommendations to individual users as well.
[0071] IV - Schedule Management
After forming a CCG, the CCG function may coordinate content consumption schedules for the CCG which may consist of operations such as examining individual CCG member schedules / calendars. This may include examining schedule information stored within individual CCG member profiles, schedule information stored on member devices, schedule information stored within member on-line calendars. This may also include the CCG function monitoring the past and/or current physical or online activity to determine current availability or patterns of availability of one or more members to consume content.
[0072] The CCG function may also survey individual CCG members to inquire about their availability to consume content with other CCG members. This surveying may be performed by the CCG function sending requests to members to inquire about their potential availability. This request may take the form of an SMS, email, or notification to which the member may respond with their availability.
[0073] The CCG function may also leverage information from user social media context to determine user availability to consume content with other CCG members. The CCG function may also leverage this information to detect user activity patterns such that these patterns can be used to detect user availability to consume content. Based on the scheduling and availability information of the individual members, the CCG may aggregate and assess the availability of the individual CCG members to determine optimal times for all or subset(s) of CCG members to consume content with one another at the same time or at different times.
[0074] V. Group Notifications
The CCG function may send CCG notifications to users for various purposes. These notifications may be sent to users based on device or user contact information and settings. The CCG may send notifications informing users that a CCG has been formed or disbanded or that a user has been added to or removed from a CCG. The CCG function may send notifications recommending one or more CCGs that users can join based on detecting content that may be of interest to a user and that is being consumed by these groups and that has alignment with the content interests of the user. The CCG function may send notifications to group members of scheduled CCG events that are suggested or planned (e.g., viewing parties) by one or more CCG members or the CCG function itself. The CCG function may send notifications to group members of the presence and/or availability schedule of other group members to consume content with other group members. The CCG function may send notifications to present content recommendations to the CCG members via the group’s content consumption profile (e.g., thumbnails, swim lanes, links, etc.). The content recommendations may be computed by the CCG function or by one or more CCG members. The CCG function may send notifications to share content recommendations from the CCG’s profile with individual group members (e.g., upon detecting that particular member(s) enjoyed a content selection or type of content that was consumed together with the group). These recommendations may be based on the CCG’s content consumption history or the content preferences of fellow group members. CCG notifications may include various types of information such as names or identifiers of CCGs, names or identifiers of CCG members, past, current or planned content that the group has already consumed, is in the process of consuming, or plans to consume, content consumption schedule, CCG member availability, or CCG member comments, feedback or recommendations regarding content.
[0075] VI. Recording Group Member Comments and Reactions
The CCG function may record group member comments and reactions while they consume content. The CCG function can then make these recorded comments and reactions, along with the content, available for later consumption by other group members that have yet to consume the content or that want to consume the same content over again. This can allow group members to consume the content along with the recorded comments and reactions synchronized to the content. In doing so, the CCG function is providing additional supplemental content to the group members to consume that complements the primary content. [0076] Consuming the content along with the synchronized recorded comments and reactions of the other group members can enhance the viewing experience of the members by allowing them to immerse themselves in a group watching experience without watching the content with these group members in real time. In addition, to making the recorded comments and reactions available for later consumption by other group members that have yet to consume the content, the recorded comments and reactions can also be made available to allow group members to watch content over again. This can allow group members to experience the content along with the same recorded comments and reactions multiple times. In addition, when a member consumes content for a second (or third, fourth, etc.) time, any additional recorded comments and reactions from other members that have consumed the content in the interim can be added. Thus, when a member consumes the same content over again, the recorded comments and reactions may contain new information and the content consumption experience may be even better than the prior content consumption experiences of the members.
[0077] The recorded comments and reactions of the group members to the consumed content may include text, audio, video chat comments and reactions of one or more group members while they consume content. Recording of the comments and reactions may include the CCG function storing the recorded comments and reactions of one or more group members along with metadata to enable the comments and reactions to be associated with the content timeline and/or scenes/events of the content. The CCG may also support playing back the recorded comments and reactions of the group members along with the associated content in a manner in which the comments and reactions of the group are aligned with the timeline and/or scenes/events of the content.
[0078] The CCG function may also support the capability for members to scroll, view or play back the recorded comments and reactions in an offline manner that is independent of the associated content or that includes clips of content for easier and more quicker consumption of the recorded comments and reactions.
[0079] The CCG function may also support the capability for members to selectively search and or filter comments and reactions. This searching and filtering may be performed based on desired or undesired comments and reactions from certain group members, certain scenes or events in the content, certain timepoints, certain types of comments or reactions (e.g. happy, sad, funny), certain keywords made in the comments or reactions, etc.
[0080] VII. Monitoring
The CCG function may monitor and track the content consumed by the members of a CCG as well as their level of satisfaction with the consumed content. The CCG function may measure the level of satisfaction of each individual CCG member and then aggregate these results into a group level of satisfaction. To measure the individual level of satisfaction, the CCG may support a feedback interface which allows members to directly input their level of satisfaction while consuming the content. The CCG function may also support sending a request to members to collect their feedback after they have consumed a given content selection. [0081] The CCG may also support collecting feedback from members by indirect means such as monitoring the interaction between the members and the comments and reactions they express to other members concerning the consumed content. For example, the CCG function may monitor the text, audio or video chat messages exchanged between the group members. The CCG function may analyze these message exchanges to assess the messages for content satisfaction clues and indications using techniques such as natural language processing. Based on this processing, the CCG function may formulate a perceived level of satisfaction and use this as an indirect assessment to avoid bothering the members for their direct feedback or to further complement any direct feedback the CCG function may receive from the members.
[0082] The CCG function may store aggregated group satisfaction results in the CCG profile and make this information available to CCG members to access. The CCG function may also use group satisfaction results such as factoring this information into making future content recommendations to the CCG members.
[0083] VIII. Determining Content of Interest
The CCG function may determine the types of content of interest (e.g., based on genres, series, actors, ratings, etc.) to the collective set of members of the CCG by keeping track of the content selections consumed by the group members together as a group as well as the content consumed by individuals on their own without other group members. The CCG may also keep track of the satisfaction results of this consumed content. The satisfaction results can include results computed across the entire group as well as results computed for individual group members (e.g. for cases where only some of the group members have consumed some content selections).
[0084] The CCG function may also leverage content selections consumed by other CCGs and their corresponding satisfaction levels. If the CCG function detects that the CCG profile of one CCG has similarities to the CCG profile of another CCG, the CCG function may leverage information across CCGs to determine content that may be of interest to each CCG.
[0085] The CCG function may compute the preferred types of content of interest to the collective set of members of a CCG by assessing the aggregated group content satisfaction levels for the different content selections consumed by the CCG, the aggregated group content satisfaction levels for the different content selections consumed by other CCGs having similarities to this CCG, as well as by assessing the content satisfaction levels for the different content selections consumed by individual CCG members. When computing the types of content of interest to the CCG members, the CCG function may track and differentiate satisfaction levels measured for content that is consumed individually by CCG members vs. satisfaction levels measured for content that is consumed by CCG members together as a group. In doing so, the CCG function may give more weight and prioritize satisfaction levels measured for content consumed by CCG members together as a group. This may allow the CCG to better determine content that the CCG members like to consume together as a group since the satisfaction level for some content may differ when consumed individually vs. together with others. For example, watching a comedy may result in increased infectious laughter if consumed together with a group rather than individually.
[0086] VIII. Curating Content of Interest
After determining the types of content of interest to the members of a CCG, the CCG function may curate content selections of interest based on these types. This curation process may consist of operations such as searching for content selections from various content providers that align with the collective content preferences and interests of the CCG members. After finding potential content selections of interest, the CCG function may present these to the CCG. The CCG may present these via the CCG profile using techniques such as thumbnails, swim lanes, links, etc. In addition to curating and making content selections available to the CCG as a whole, the CCG function may also share content recommendations from the CCG with individual group members such that they can also enjoy consuming these selections by themselves if they prefer. For example, the CCG function may, upon detecting that particular member(s) enjoyed a content selection or type of content that was consumed together with the group, make content selection recommendations to the individual member profiles as well.
[0087] X. Asynchronous Content Consumption
The CCG function may support the capability for group members to consume content in a group setting at different times asynchronously of one another. The CCG function may schedule the consumption of a content selection by each of the members of the CCG such that the members may consume the content at different times than one another but that are convenient to the schedules of the individual group members. For example, group members may consume content at different times and on different days spanning over a week based on their availabilities. The CCG function may enforce a time window (e.g. 1 week) for the asynchronous consumption of the content by the members. The CCG function may stream, to a group member’s device, a content selection along with recorded comments and reactions (e.g. text, audio, video chats) from fellow group members that previously consumed the content selection before that member consumed the content. When streaming a content selection along with recorded comments and reactions from the fellow group members, the CCG function can synchronize the recorded comments and reactions temporally with the content. In doing so, the CCG function presents the recorded comments and reactions in the same order, progression, and timeline (with respect to the content being consumed by the member) as the fellow members made these comments.
[0088] The CCG function may also aggregate the different comments and reactions from the different group members that consume a given content selection at different times. In doing so, the CCG function can build upon the comments and reactions of former members that have viewed a content selection such that any future members that view the same content selection can have access to this aggregated set of comments and reactions. When content is consumed by members asynchronously, the CCG function can include all the comments and reactions from all the fellow members that have consumed the content beforehand. This allows any members consuming content after other members to enjoy the comments and reactions of these members.
[0089] The CCG function may also generate asynchronous group content consumption events to notify group members if/when each individual group member completes viewing a content selection and/or a group member has made a comment or reacted to a content selection in a certain manner. In doing so, members who have viewed content selections before other members may be kept updated with the comments and reactions of members viewing content after them. The CCG function may also allow members who have viewed content selections before other members and who are not currently viewing a content selection when other members later consume the content, to respond back to notifications such that the member that is viewing the content selection can receive their responses while consuming the content. This can further enhance the group watching experience for all the members even though they are consuming the content without one another at different times.
[0090] The CCG function may also monitor the asynchronous consumption of a content selection by each of the member devices to detect if/when the content selection has been consumed by the different group members. In doing so, the CCG function can keep track of which members have and have not consumed a particular content selection yet. The CCG function can use this information to send reminders to members that have yet to watch the content. The CCG function can also use this information to filter the amount of information that it sends to members in notifications. For example, when sending a notification to members that another members has consumed content and has comments and reactions to that content, the CCG function can filter the actual comments and reactions from notifications it sends to members who have not yet consumed the content. In doing so, the CCG function can avoid spoiling the content consumption experience for those fellow members.
[0091] The CCG function may also create separate sub-group(s) within the content consumption group (e.g. chat session) related to a particular content selection, the consumption status of this content selection by the group members, and possibly the comments and reactions of the group members. For example, the CCG function may enroll group members in a sub-group only upon detecting that they have completed consumption of a content selection. In doing so, the CCG function can enhance the content consumption experience for group members that have not yet consumed the content by minimizing the chances that other group members that have already consumed the content selection will not spoil the content consumption experience with their comments and reactions. In another example, the CCG function may enroll group members in a sub-group based on their comments and reactions to the content (e.g. only enroll members in a sub-group if the member enjoyed and is interested in discussing the consumed content with other group members).
[0092] The aforementioned CCG functionality provides group members with a group content consumption atmosphere even when the group members are not consuming content together with one another at the same time.
[0093] Figure 6A captures embodiments of several different types of entities in an end-to- end multimedia content distribution and consumption system in which the Content Consumption Group (CCG) functionality 602 proposed in this embodiment may be realized. Within a user’s personal area network 605, various types of multimedia centric devices may support the CCG functionality proposed. Such devices may include but are not limited to a DTV, smart phone, tablet, laptop, smart watch, smart glasses, AR HMD, etc. For example, the devices may host a CCG service and/or a CCG client that interfaces to a CCG service hosted on another device or server within in a user’s personal area network or elsewhere in the system
(e.g., on a cloud server or communication network node).
[0094] Various types of communications core networks 615 may support the CCG functionality proposed. Such communications core networks may include but are not limited to 5G, 4G, Satellite, IP, Cable TV networks. Within these networks, different types of network nodes/functions may support CCG functionality.
[0095] Various types of content broadcasting core networks 625 embodiment support the CCG functionality proposed in this invention. Such broadcasting core networks may include but are not limited to networks based on the ATSC or DVB standards. Within these networks different types of network nodes/functions may support CCG functionality.
[0096] Various types of Service 603 and Content Providers 604 may support the CCG functionality proposed. Such Content Providers may include but are not limited to those that broadcast content to devices, stream content to devices and/or generate and send content-based notifications to devices. These Content Providers may support CCG functionality.
[0097] Figure 6B illustrate embodiments of several potential interfaces within an end-to-end multimedia content distribution and consumption system over which CCG functionality may be supported. Figure 6A is very similar to Figure 6B and the same numerals are used for ease of understanding but the interconnection are delineated by lines to reflect connectivity between components and CCG interface paths.
[0098] Table 1 defines each of the proposed interfaces captured in Figure 6B. Each of these interfaces may support the exchange of CCG related messages between each of the applicable entities in the system. The collection of these messages may form a protocol that is used to enable the exchange and performing of CCG operations in an end-to-end fashion throughout the system. [0099] In one, CCG message protocol can be realized as a client/server messaging protocol where users and/or their personal devices can function in the role of a client and/or a server to exchange CCG request and response messages with other entities in the system (e.g. Content Providers). For example, a CCG client may be hosted on a user device and CCG server may be hosted on a network device (e.g. cloud server). The information elements of the CCG request and response protocol messages can be encapsulated and carried within the payloads of existing client/server protocols such HTTP, COAP or Web Sockets.
Figure imgf000044_0001
Table 1 : Content Consumption Group (CCG) Interfaces
[0100] In another embodiment, these information elements can be encapsulated and carried within lower level protocols such as TCP or UDP without the use of higher layer protocols such as HTTP, COAP or Web Sockets.
[0101] In yet another embodiment, the CCG messages can be encapsulated and carried within publish/subscribe messaging protocols. For example, an entity in the System (e.g. communication core network entity or a content broadcasting core network entity) can support message broker functionality. This broker functionality can be used by the devices to exchange CCG messages with other entities in the system (e.g. Content Providers). This exchange can be facilitated by each entity subscribing to the message broker to receive messages from other entities. Likewise, each entity can publish message to the message broker that target other entities. The information elements of the CCG request and response protocol messages can be encapsulated and carried within the pay loads of existing publish/subscribe protocols such MQTT or AMQP.
[0102] In yet another embodiment, CCG information elements may be embedded within content streaming protocols. For example, streaming protocols such as but not limited to Real Time Messaging Protocol (RTMP), Real Time Streaming Protocol (RTSP), MPEG-DASH, Apple HTTP Live Streaming (HLS), WebRTC and SRT. In one type of embodiment, CCG information elements may be embedded within one or more separate virtual channels or streams supported by the streaming protocol (e.g. RTMP). These virtual channels or streams can be multiplexed together and sent over a single physical transport connection (e.g. TCP). For example, CCG information elements can be sent on one channel/stream while multimedia content can be sent on another channel/stream. These two channels/streams can be multiplexed and sent together over a single transport connection between entities in the system.
[0103] Various types of CCG request and response protocol messages can be supported by the different entities. These may include but are not limited to the types of message defined in Table 2.
[0104] . Within these messages, the CCG informational elements proposed by this invention, as well as other informational elements, may be included.
Figure imgf000046_0001
Table 2: Content Consumption Group (CCG) protocol message types [0105] Figure 7 captures a use case embodiment demonstrating how the proposed content consumption group (CCG) functionality can be used by members of a CCG to consume content together with one another. In this use case, the CCG members benefit from the CCG functionality since it enables them to share the content as well as their comments and reactions with one another in an asynchronous manner. This enables the CCG members to immerse themselves in a group content consumption experience in spite of not consuming the content at the same times as each other (e.g., the CCG members may consume the content days apart from one another).
[0106] Each CCG member leverages a device (e.g. DTV, phone, laptop, etc.) in their proximity. Their devices host a CCG client function. This CCG client function communicates with a CCG server function in the network (e.g., in the cloud). Together the CCG clients and the CCG server provide the CCG functionality proposed in this invention.
[0107] In Figure 7, in (S710), with assistance from CCG clients, CCG server monitors content consumption selections and patterns of individual users as well as their CCG preferences. As a result, the CCG server detects several users having similar content consumption and CCG preferences, (e.g. fans of the same sports teams).
[0108] In (S715): The CCG server triggers formation of CCG and sends requests to individual users to inquire whether they would like to join the CCG and become members. Within the request, the CCG includes information such as content selections or types of content targeted for consumption by this group and identifiers of other group members.
[0109] In (S720): The CCG server receives responses from individual users indicating whether they would like to join the CCG as members. In the response, users may include information such as their profile containing names, identifiers, content preferences, contact information, device information, availability, etc. [0110] (S734): The CCG server determines the aggregated content selection preferences of the CCG members by examining profiles and preferences of the individual group members.
[0111] (S735): The CCG server searches and finds one or more content selections that align with the aggregated set of content preferences of the CCG
[0112] (S736): The CCG server queries the schedules of the individual CCG members to determine their availability to consume the one or more content selections.
[0113] (S740): The CCG server sends notification requests to CCG members that include content selection(s) that may be of interest to the group and some potential dates and times which CCG members look to have availability in their schedules to consume content together with one another.
[0114] (S745): The CCG server receives responses back from CCG members indicating the times they are available to consume the content selection(s).
[0115] (S750): Based on the responses received, the CCG server detects that there are no times in which all CCG members are available to consume the content selection with one another. Hence the CCG server send notifications to the CCG members of this situation. Within the notification, the CCG server may include information such as the times that align with the individual availability schedule, the names of other CCG members that are also available to consume content at these times, and the content selection(s) they would prefer to consume at these times.
[0116] (S755): The CCG server receives responses back from CCG members indicating the times they are available to consume the content selection(s).
[0117] (S761): The CCG server monitors and detects if/when each of the CCG members consume the content selection(s) either together in sub-groups with one or more other CCG members or individually by themselves. [0118] (S762): CCG members 2 and 3 consume content selection together with one another without member 1 who is unavailable at that time.
[0119] (S763): As CCG members 2 and 3 consume the content selection, the CCG server records their comments and reactions. When recording these comments and reactions, the CCG server maintains additional metadata such that the recorded comments and reactions can be synchronized with the content selection and played back in the same temporal sequence as they were recorded in. The CCG server also aggregates the recorded comments and reactions from the individual members consuming a content selection into one collective set which includes the comments and reactions of all the members interleaved together with one another.
[0120] (S770): As the CCG server detects members 2 and 3 consuming a content selection, it adds these members to a sub-group which the CCG creates and maintains to separate members that have consumed a content selection versus those that have not yet (i.e. member 1). Via this sub-group, the CCG server enables members 2 and 3 to communicate (e.g., text, audio, video chat) with one another separately from member 1 who has not yet consumed the content selection such that the content consumption for member 1 is not spoiled. When members 2 and 3 are added to the content selection sub-group, the CCG server may send a notification to each of them. Within the notification, information such as a link to the sub-group maintained by the CCG server may be included. This link may be used by these members to access the sub-group and view as well as exchange messages.
[0121] (S775): Later when the same content selection is consumed by member 1, the CCG server enables member 1 to consume the content selection itself as well as the aggregated set of comments and reactions from members 2 and 3 that the CCG server has recorded.
[0122] (S780): As member 1 consumes the content selection along with the comments and reactions from members 2 and 3, the CCG server records the comments and reactions of member 1. [0123] (S785): The CCG server may send notifications to members 2 and 3. Within the notifications, the CCG server includes information such as the identify of member 1 consuming the content, as well as any reactions and comments of member 1 to either the content being consumed and/or the recorded comments and reactions from members 2 and/or 3.
[0124] (S790): After receiving the notifications, members 2 and 3 may respond to them. In the response, members 2 and 3 may include information such as their comments and reactions to the member l’s comments and reactions. The CCG server then sends the responses from members 2 and 3 to member 1.
[0125] (S795): The CCG server adds member 1 to the same sub-group as members 2 and 3 such that they can continue to communicate with one another about the content selection.
[0126] As before and similar to Figure 5, numerals referenced as 501 to 504 provide the type of users and or device and service. So for example 501 is reserved for local users while 504 is provided for the remote users.
[0127] Figure 8 schematically illustrates a general overview of an encoding and decoding system according to one or more embodiments. The system of Figure 9 is configured to perform one or more functions of embodiments of the invention and can have a pre-processing module 830 to prepare a received content (including one more images or videos) for encoding by an encoding device 840. Encoding device 840 packages the content in a form suitable for transmission and/or storage for recovery by a compatible decoding device 870. In general, though not strictly required, the encoding device 840 provides a degree of compression, allowing the common space to be represented more efficiently (i.e., using less memory for storage and/or less bandwidth required for transmission. After being encoded, the data, is sent to a network interface 850, which may be typically implemented in any network interface, for instance present in a gateway. The data can be then transmitted through a communication network, such as the internet. Various other network types and components (e.g. wired networks, wireless networks, mobile cellular networks, broadband networks, local area networks, wide area networks, WiFi networks, and/or the like) may be used for such transmission, and any other communication network may be foreseen. Then the data may be received via network interface 860 which may be implemented in a gateway, in an access point, in the receiver of an end user device, or in any device including communication receiving capabilities. After reception, the data are sent to a decoding device 870. Decoded data are then processed by the device 880 that can be also in communication with sensors or users input data. The decoder 870 and the device 880 may be integrated in a single device (e.g., a smartphone, a game console, a STB, a tablet, a computer, etc.). In another embodiment, a rendering device 890 may also be incorporated.
[0128] Figure 9 is an example flow diagram 900 having similar features to that of signal diagram of Figure 5. In Figure 9, the method 900 may be performed by an electronic device, such as a DTV or a User Device. In general, user devices are under the control of individual users and the user devices act in response to their respective users that interface with an interface that includes a CCG client to allow group participation according to features described herein. At 905, the method includes detecting a condition that a first user device and a second user device are available to play a content selection. Detecting a condition that a first user device and a second user device are available to play a content selection may include detecting one or more of a set of co-located user devices, a set of remotely located user devices, or a set of devices with social media applications indicating a social graph between user devices. Such a social graph may indicate that users of the user devices may have social media applications in which the users of multiple user devices have social links between them. At 910, a content playback group is formed that includes at least the first user device and the second user device as members of the playback group. Forming a content playback group may further include the creation of a content consumption profile of the playback group. In another option, a modification of a content consumption profile for a playback group may include the addition or deletion of members of the playback group. Functions of the content consumption profile may also include merging together individual member profiles of the playback group. Such merging may include merging data or metadata of any of individual member content consumption history, feedback, and recommendations for content selection. At 915, a time to play the content selection on the first user device and the second user device. The selection of the digital content may be made by an apparatus hosting a CCG client. According to one feature, scheduling a time to play the content selection includes scheduling the time to play the content selection concurrently or at different times on any one or more of the user devices in the playback group.
[0129] At 920, one or more notifications are sent to the first user device and the second user device. The notifications including at least a schedule to play the content selection. This transmission of notifications of content recommendations to members of the playback group may be based on a content consumption profile of the playback group. At 925, one or more content selection level of satisfaction indications are collected and recorded from at least one of the first user device and the second user device while playing the content selection. The recording of indication of content selection level of satisfaction includes the recording of collected feedback from members of the playback group. The feedback received from the user devices includes reactions of the users of the user devices of the playback group concerning the content selection. The feedback may be in a form of or interpreted to be a level of satisfaction experienced by a user and transmitted by a user device to an apparatus, such as a DTV or another host of a CCG client. At 930, one or more content recommendations may be sent to at least one of the first user device or second user device. The content recommendations are based on the recorded content selection level of satisfaction indications. The recommendations sent may be a result of searching for content selection(s) from content providers. The selected content is intended to align with a content consumption profile of the playback group. Figure 10 is a depiction of an example device architecture 1000 that can host a CCG client, such as for a DTV, laptop computer, desktop computer, access point, and the like configured to perform the method of Figure 9 or the signaling of any of Figures 5 or 7. The apparatus of Figure 10 can be either a special -purpose machine, or part of a larger machine that performs other tasks. For example, the apparatus of Figure 10 can be a Digital Television (DTV), a user playback device, or a CCG server that can support the functionality described hereinabove for a device using or hosting a CCG client. Other examples of the apparatus include, but are not limited to a laptop, a personal computer, a mobile phone, a tablet, and the like that is configured to host a CCG client functionality. Here, for simplicity, the description may follow that of a DTV, but other devices, such as those listed above, are also possible as is well understood by those of skill in the art.
[0130] The apparatus 1000 of Figure 10 includes a transmitter/receiver interface 1002 providing connectivity to IP network to receive (1001) digital content from content providers. The interface 1002 connects to the bus interface 1004 which allows access to the internal bus 1024. Other non-bus implementations are also possible as is well known to those of skill in the art. Present on bus 1024 are a storage device 1006 which can be used for any general storage such as retrieved or requested data and network management data, parameters, and digital content, and executable software instruction programs. Storage device 1006 may also serve as disk or solid-state storage for the information collected as displayable digital content. Main executable programs, utility and other programs may be under the control of controller/processor 1008.
[0131] This controller/processor 1008 may be a single processor or a multiplicity of processors performing the tasks of digital content data acquisition, user interface control, and resource management. Controller/processor 1008 can perform the method described in Figure 9. Control memory 1010 may also supply program instruction and configuration control for controller/processor 1008. The status indicators 1018 are a user interface and allows a user, system owner, or system manager to see a status of the apparatus 1000. Such indicators may include a display, LEDs, speaker, and the like. A graphical processing unit (GPU) and input/output (I/O) interface 1016 allows the CCG client hosting device to connect to a main display screen 1020 that may be used to display digital content on device 1000. The I/O interface 1016 may also include a hardline interface, such as an Ethernet interface for a local area network or may be an HDMI interface for the main screen 1020. Other options for the I/O interface are a RF or IR interface for a remote control of the apparatus 1000. Another option of I/O interface 1016 is an interactive interface which may include the use of a separate display device (secondary device), keyboard, mouse, light pen, and the like.
[0132] Apparatus 1000 has a wireless network interface 1012 which allows access to and from wireless devices, such as receiving viewer devices. The wireless receiving viewer devices may be those that are known and registered to a WLAN of the apparatus 1000. Such an interface 1012 includes all elements to control a wireless network, including the use of wireless network protocols such as IEEE 802.XX, Bluetooth, other near field protocols, and the like for communication between the apparatus 1000 and receiving viewer devices.
[0133] As can be appreciated by one of skill in the art, combinations of features of various utilizations of the current disclosure can be combined unless otherwise specifically stated. Thus, features of the various figures may easily be combined. Combining features described in this disclosure is within the scope of the concepts presented herein. Such combinations of concepts and features are considered viable embodiments unless otherwise restricted if indicated herein.
[0134] The implementations described herein may be implemented in, for example, a method or process, an apparatus, or a combination of hardware and software. Even if only discussed in the context of a single form of implementation (for example, discussed only as a method), the implementation of features discussed may also be implemented in other forms. For example, implementation can be accomplished via a hardware apparatus, hardware and software apparatus. An apparatus may be implemented in, for example, appropriate hardware, software, and firmware. The methods may be implemented in, for example, an apparatus such as, for example, a processor, which refers to any processing device, including, for example, a computer, a microprocessor, an integrated circuit, or a programmable logic device.
[0135] Additionally, the methods may be implemented by instructions being performed by a processor, and such instructions may be stored on one or more processors or non-transitory computer-readable media such as, for example, an integrated circuit, a software carrier or other storage device such as, for example, a hard disk, a compact diskette (“CD” or “DVD”), a random-access memory (“RAM”), a read-only memory (“ROM”) or any other magnetic, optical, or solid-state media. The instructions may form an application program tangibly embodied on a computer-readable medium such as any of the media listed above or known to those of skill in the art. The instructions thus stored are useful to execute using elements of hardware and software to perform the steps of the methods described herein. In this disclosure, the computer-readable media is useful to instruct a processor to perform the steps of the methods disclosed herein.
[0136] A number of implementations have been described herein. Nevertheless, it will be understood that various modifications may be made. For example, elements of different implementations may be combined, supplemented, modified, or removed to produce other implementations. Additionally, one of ordinary skill will understand that other structures and processes may be substituted for those disclosed and the resulting implementations will perform at least substantially the same function(s), in at least substantially the same way(s), to achieve at least substantially the same result(s) as the implementations disclosed. Accordingly, these and other implementations are contemplated by this application.

Claims

55 CLAIMS:
1. A method performed by an electronic device, the method comprising: detecting a condition that a first user device and a second user device are available to play a content selection; forming a content playback group comprising at least the first user device and the second user device as members of the playback group; scheduling a time to play the content selection on the first user device and the second user device; sending one or more notifications to the first user device and the second user device, the notification including a schedule to play the content selection; recording content selection level of satisfaction indications from at least one of the first user device and the second user device while playing the content selection; sending one or more content recommendations to at least one of the first user device or second user device, wherein the content recommendations are based on the recorded content selection level of satisfaction indications.
2 The method of claim 1, wherein detecting a condition that a first user device and a second user device are available to play a content selection comprises detecting one or more of a set of collocated user devices, a set of remotely located user devices, or a set of devices with social media applications indicating a social graph between user devices.
3. The method of any one of claims 1 -2, wherein forming a content playback group further comprises creating a content consumption profile of the playback group.
4. The method of claim 3, further comprising merging member profiles of the playback group together including any of individual member content consumption history, feedback, and recommendations for content selection. 56
5. The method of any one of claims 1-4, wherein scheduling a time to play the content selection comprises scheduling the time to play the content selection concurrently or at different times on the first user device and the second user device.
6. The method of any one of claims 1-5, wherein sending one or more notifications comprises sending notifications of content recommendations to members of the playback group, the content recommendations based on a content consumption profile of the playback group.
7. The method of any one of claims 1-6, wherein recording content selection level of satisfaction indications comprises collecting feedback from members of the playback group concerning the content selection and recording the feedback as a level of satisfaction.
8. The method of any one of claims 1-7, wherein sending one or more content recommendations comprises searching for content selection from content providers that align with a content consumption profile of the playback group and sending at least one content selection to at least one of the first user device or second user device.
9. The method of any one of claims 1-8, wherein electronic device is one of the first user device or the second user device.
10. The method of any one of claims 1-9, wherein the electronic device is a digital television.
11. An electronic device comprising circuitry, including a transmitter, a receiver, a processor, and memory, the electronic device configured to: detect a condition that a first user device and a second user device are available to play a content selection; form a content playback group comprising at least the first user device and the second user device as members of the playback group; schedule a time to play the content selection on the first user device and the second user device; 57 send one or more notifications to the first user device and the second user device, the notification including a schedule to play the content selection; record content selection level of satisfaction indications from at least one of the first user device and the second user device while playing the content selection; send one or more content recommendations to at least one of the first user device or second user device, wherein the content recommendations are based on the recorded content selection level of satisfaction indications.
12 The electronic device of claim 11, wherein detecting a condition that a first user device and a second user device are available to play a content selection comprises detecting one or more of a set of collocated user devices, a set of remotely located user devices, or a set of devices with social media applications indicating a social graph between user devices.
13. The electronic device of any one of claims 11-12, wherein a content playback group has an associated content consumption profile of the playback group.
14. The electronic device of claim 13, wherein member profiles of the playback group are merged, the member profiles including any of individual member content consumption history, feedback, and recommendations for content selection.
15. The electronic device of any one of claims 11-14, wherein a time to play the content selection is scheduled to play the content selection concurrently or at different times on the first user device and the second user device.
16. The electronic device of any one of claims 11-15, wherein the one or more notifications comprises notifications of content recommendations to members of the playback group wherein the content recommendations are based on a content consumption profile of the playback group.
17. The electronic device of any one of claims 11-16, wherein content selection level of satisfaction indications comprise feedback from members of the playback group concerning the content selection, wherein the feedback comprises a level of satisfaction. 58
18. The electronic device of any one of claims 11-17, wherein the one or more content recommendations comprise content selections from content providers that align with a content consumption profile of the playback group.
19. The electronic device of any one of claims 11-19, wherein the electronic device is one of the first user device, the second user device, or a digital television.
20. A computer-readable storage media having instructions which, when executed by a processor, perform the method of any of claims 1-10.
PCT/US2022/045645 2021-10-05 2022-10-04 Methods to manage dynamic content consumption groups and to recommend content WO2023059616A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202163252214P 2021-10-05 2021-10-05
US63/252,214 2021-10-05

Publications (1)

Publication Number Publication Date
WO2023059616A1 true WO2023059616A1 (en) 2023-04-13

Family

ID=84245720

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2022/045645 WO2023059616A1 (en) 2021-10-05 2022-10-04 Methods to manage dynamic content consumption groups and to recommend content

Country Status (1)

Country Link
WO (1) WO2023059616A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060282856A1 (en) * 2005-03-04 2006-12-14 Sharp Laboratories Of America, Inc. Collaborative recommendation system
WO2013010177A2 (en) * 2011-07-14 2013-01-17 Surfari Inc. Online groups interacting around common content
US20140136990A1 (en) * 2012-11-14 2014-05-15 invi Labs, Inc. System for and method of embedding rich media into text messages
WO2015148693A1 (en) * 2014-03-26 2015-10-01 Publicover Mark W Computerized method and system for providing customized entertainment content
US20150350274A1 (en) * 2014-05-30 2015-12-03 At&T Intellectual Property I, L.P. Program recommendations for group viewing

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060282856A1 (en) * 2005-03-04 2006-12-14 Sharp Laboratories Of America, Inc. Collaborative recommendation system
WO2013010177A2 (en) * 2011-07-14 2013-01-17 Surfari Inc. Online groups interacting around common content
US20140136990A1 (en) * 2012-11-14 2014-05-15 invi Labs, Inc. System for and method of embedding rich media into text messages
WO2015148693A1 (en) * 2014-03-26 2015-10-01 Publicover Mark W Computerized method and system for providing customized entertainment content
US20150350274A1 (en) * 2014-05-30 2015-12-03 At&T Intellectual Property I, L.P. Program recommendations for group viewing

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
DAWEN JIA ET AL: "A New Approach for Date Sharing and Recommendation in Social Web", 3 September 2012, DATABASE AND EXPERT SYSTEMS APPLICATIONS, SPRINGER BERLIN HEIDELBERG, BERLIN, HEIDELBERG, PAGE(S) 314 - 328, ISBN: 978-3-642-32596-0, XP047013921 *
MA XIAOQIANG ET AL: "Exploring sharing patterns for video recommendation on YouTube-like social media", MULTIMEDIA SYSTEMS., vol. 20, no. 6, 1 November 2014 (2014-11-01), US, pages 675 - 691, XP093015624, ISSN: 0942-4962, Retrieved from the Internet <URL:https://link.springer.com/content/pdf/10.1007/s00530-013-0309-1.pdf?pdf=button> [retrieved on 20230120], DOI: 10.1007/s00530-013-0309-1 *
SAIM SHIN ET AL: "The User-Group Based Recommendation for the Diverse Multimedia Contents in the Social Network Environments", DEPENDABLE, AUTONOMIC AND SECURE COMPUTING (DASC), 2011 IEEE NINTH INTERNATIONAL CONFERENCE ON, IEEE, 12 December 2011 (2011-12-12), pages 202 - 206, XP032086431, ISBN: 978-1-4673-0006-3, DOI: 10.1109/DASC.2011.206 *

Similar Documents

Publication Publication Date Title
US10523979B2 (en) Streaming live video
US10455291B2 (en) Live video stream sharing
US10021059B1 (en) Messaging content and ad insertion in channels, group chats, and social networks
US11514536B2 (en) Systems and methods for providing a community-based dating service for a social networking system
US10674187B2 (en) Systems and methods for shared broadcasting
US9349414B1 (en) System and method for simultaneous capture of two video streams
US9866902B2 (en) Social sharing and unlocking of reactions to content
US7519658B1 (en) Automatic blogging during media viewing
US20160057457A1 (en) Live video broadcasting mobile application for social sharing
US8676908B2 (en) Method and system for seamless interaction and content sharing across multiple networks
US20140033039A1 (en) System And Method For Playback Positioning Of Distributed Media Co-Viewers
US20080134235A1 (en) Telepresence via wireless streaming multicast
US11297391B2 (en) Television interface for multi-party social media sessions
US11272246B2 (en) System and method for management and delivery of secondary syndicated companion content of discovered primary digital media presentations
JP2015525496A (en) Real-time composite broadcasting system and method having a mechanism for adjusting a plurality of media feeds
US11936697B2 (en) Methods and apparatus for providing social viewing of media content
US20180041552A1 (en) Systems and methods for shared broadcasting
US20150294633A1 (en) Life Experience Enhancement Illuminated by Interlinked Communal Connections
US20180109477A1 (en) Methods, systems, and media for facilitating user interactions while watching media content
US11528309B1 (en) Systems and methods for shared broadcasting
JP6158435B2 (en) Associating social messages with related multimedia flows
US20190068660A1 (en) System, method and apparatus for content eavesdropping
JP2012526317A (en) Method and system for providing experience reports for members of a user group
WO2023059616A1 (en) Methods to manage dynamic content consumption groups and to recommend content
US20220368743A1 (en) System and Method for Asynchronous User-Centric Context-Based Shared Viewing of Multimedia

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22800425

Country of ref document: EP

Kind code of ref document: A1