The present disclosure generally relates to methods and apparatus to generate a channel based on the most socially commented audio-visual content.
Social media platforms enable users to easily share contents and/or publish comments. Advances in the television industry have challenged the television platform operators and/or television broadcasters to develop new solutions to take advantage of the increasing popularity of these new platforms. As a result new functionalities have been implemented and are now available to television end users. Typically, television end users are now able to access and interact with their favorite social media platforms directly via their television sets.
The present invention will be understood and appreciated more fully from the following detailed description, taken in conjunction with the drawings in which:
In one embodiment, a method for providing access to a content delivery channel for presentation on a viewing device, includes: receiving statistics about comments published on a social media platform, the comments being identified as relevant to a plurality of media content instances broadcast during a given period of time; processing the received statistics to determine the most commented upon media content instances on the social media platform; using the processed statistics to identify one or more highlights in each of the most commented upon media content instances; and constructing a content delivery channel, wherein the content delivery channel comprises audio-visual (AV) content corresponding to the identified one or more highlights.
In the following description, numerous specific details are set forth in order to provide a thorough understanding of the various principles of the present invention. However, those skilled in the art will appreciate that not all these details are necessarily always required for practicing the present invention. In this instance, well-known circuits, control logic, and the details of computer program instructions for conventional algorithms and processes have not been shown in detail in order not to obscure the general concepts unnecessarily.
Although the principles of the present invention are largely described herein in relation to a television broadcast environment and related television applications, this is an example selected for convenience of presentation, and is not limiting.
The disclosed technology addresses the need in the art for a system that is able to filter meaningful statistics from social media platforms to facilitate the generation of a content delivery channel that presents the highlights of recently broadcast media content and/or other audio-visual content. Media content for the content delivery channel is selected as being among the highlights based on the aggregated reaction of audience members that are active on a social media platform during broadcasting of the media content. Related methods for filtering the statistics from social networks and generating the content delivery channel are also disclosed.
Reference is now made to
Social media platform 110 may be configured to manage (e.g. maintain, process, distribute and/or generate) a platform enabling users to publish any type of comments on a wide range of topics, including comments about media content provided a headend 120. In addition, the social media platform 110 is operable to transmit statistics relevant to the comments associated with media content provided by a headend 120 to the headend 120. Although the embodiments below will be largely described with reference to Twitter as the social media platform 110, those skilled in the art will realize that any social media platform, including but not limited to Facebook, Google+, etc. may be the source, alone or in combination, of the social media commentaries and statistics.
Headend 120 may be configured to manage (e.g. maintain, process, distribute and/or generate) media content for presentation to one or more users of client device 130. As used herein, “media content” may refer to any content under the control of the headend 120 and accessible via a client device 130. For example, media content includes, but is not limited to, any television program, on-demand media program (e.g., video-on-demand program), pay-per-view event, broadcast media program (e.g., broadcast television program), multicast media program, advertisement. IPTV media content, or any other form of AV content that may be viewed or otherwise experienced by a user of client device 130. The headend 120 is operable to request and receive statistics relevant to the media content from the social media platform 110. The headend 120 is further operable to process the statistics in order to identify the most commented upon media content instances on the social media platform 110. The headend 120 is further configured to generate a channel (hereinafter referred as the content delivery channel) including portions of media content instances identified as the most commented upon on the social media platform 110 and make it available to one or more users of client device 130.
Client device 130 may be configured to facilitate access by a user to media content and to the content delivery channel provided by the headend 120 and/or any other data provided by the headend 120 or social media platform 110. Client device 130 may be for example, but not limited to, a set-top box disposed in use between the headend 120 and a display device 140. Although depicted as separate devices, client device 130 and display device 140 may be combined in a single device as long as the single device is operable to process and present media content and the content delivery channel to one or more users. Such a single device may be for example, but is not limited to, a smart television, a tablet computer, an iPad, a laptop or personal computer, a Personal Digital Assistant (PDA), mobile phone, or any other handheld device. For the sake of simplicity of depiction, only one client device 130 is shown in
Components of system 100 may communicate with one another using any suitable communication technologies, devices, media, and protocols supportive of data communications, including, but not limited to, socket connections, Ethernet, data bus technologies, data transmission media, communications devices, Transmission Control Protocol (“TCP”), Internet Protocol (“IP”), File Transfer Protocol (“FTP”), Telnet, Hypertext Transfer Protocol (“HTTP”), Hypertext Transfer Protocol Secure (“HTTPS”), Session Initiation Protocol (“SIP”), Simple Object Access Protocol (“SOAP”), Extensible Mark-up Language (“XML”) and variations thereof, Simple Mail Transfer Protocol (“SMTP”), Real-Time Transport Protocol (“RTP”), User Datagram Protocol (“UDP”), Global System for Mobile Communications (“GSM”) technologies, Code Division Multiple Access (“CDMA”) technologies, Time Division Multiple Access (“TDMA”) technologies, Short Message Service (“SMS”), Multimedia Message Service (“MMS”), radio frequency (“RF”) signaling technologies, wireless communication technologies (e.g., Bluetooth, Wi-Fi, etc.), in-band and out-of-band signaling technologies, and other suitable communications technologies.
Components of system 100 may communicate using any suitable network. For example, as shown in
Reference is now made to
The I/O interface 122 may be any suitable communication interface enabling the content delivery channel generator 121 to exchange data with the social media platform 110 and the headend 120. The I/O interface 122 is further operable to pass the received data to the processor 123 and/or the memory 124.
The processor 123 is a microcontroller or a microprocessor, for example to execute software instructions stored in memory 124.
The memory 124 may comprise read only memory (ROM), random access memory (RAM), magnetic disk storage media devices, optical storage media devices, flash memory devices, electrical, optical, or other physical/tangible (e.g. non-transitory) memory storage devices. Thus, in general, memory 124 may comprise one or more computer readable storage media (e.g. memory device) encoded with software comprising computer executable instructions and when the software is executed (by the processor 123) it is operable to perform the operations described hereinbelow. For example, memory 124 stores or is encoded with instructions for:
The memory 124 is further operable to store data such as, for example, but not limited to, social media data 125 and media content data 126. The social media data 125 may include the statistics requested and received from the social media platform 110 via the I/O interface 122 as well as intermediate and/or final data obtained during or as a result of the different operations mentioned hereinabove. The media content data 126 typically includes data relevant to the media content instances for which statistics may be requested.
Reference is now made to
At step 310, the content delivery channel generator 121 receives statistics from the social media platform 110. Typically, the content delivery channel generator 121 may request the social media platform 110 to transmit statistics about comments relevant to media content instances that were broadcast during a given period of time. Those skilled in the art will appreciate that the period of time is configurable and may be set and/or changed at any time. Non-limiting examples includes transmitting and receiving statistics for media content instances that were broadcast during the current day, the last twenty-four hours, the last twelve hours, the last week, etc. Similarly, the time at which the statistics are transmitted by the social media platform 110 and received at the content delivery channel generator 121 may be configurable. Non-limiting examples include transmitting/receiving the statistics on a real time basis during the given period of time, at the end of the given period of time, or at a later time.
The media content data 126 may be used to identify the comments relevant to media content instances provided by the headend 120 on the social media platform 110. The media content data 126 identifies each of the media content instances that are made available by the headend 120 to the client device 130. The media content data 126 may comprise for example, but not limited, an official hash tag associated with a particular media content instance, a user-generated hash tag associated with a particular media content instance, a title of the media content instance, a name of one or more characters/actors associated with the media content instance, etc. or any other suitable attribute enabling a media content instance to be identified in the comments published on the social media platform 110. The media content data 126 may be received and/or retrieved from a metadata provider (not shown in
In one example embodiment, official and user-generated hash tags may be received and/or retrieved from the social media platform 110. Taking an episode of the series “Games of Thrones” as an example, the official hash tag associated with this media content instance is #got. However, other hash tags generated by users of the social media platform 110 (e.g. #GamesOfThrones) might appear. In order to take into consideration the user generated hash tags (e.g. #GamesOfThrones) a threshold value may be defined and applied. In turn, when the official hash tag #got is associated with the user-generated hash tag #GamesofThrones more than the threshold value, the user-generated hash tag is provided and stored at the content delivery channel generator 121. As a result, both hash tags may be used as media content data 126 for the particular media content instance. In another example, the titles, names, etc. may be received and/or retrieved from the headend 120. For example, a heuristic search may be performed through the Electronic Program Guide (EPG) to identify titles, names of characters/actors, etc. relevant to each media content instance broadcast within the given period of time. As a result, the titles, the names, etc. may be used as media content data 126 for the media content instances.
In any case, the comments relevant to the media content instances of the headend 120 are identified using the media content data 126. Then, statistics may be transmitted by the social media platform 110 and received at the content delivery channel generator 121. These statistics may be provided to the content delivery channel generator 121 in any suitable form and stored in memory 124. Typically, for each comment identified as relevant to a media content instance, an entry is created comprising at least one identifier indicating to which media content instance the entry refers to, and a timestamp corresponding to a data and/or a time at which the comment was published on the social media platform 110. The statistics received by the content delivery channel generator 121 may therefore be seen as a collection of entries that are stored in the memory 124 as part of the social media data 125.
Then, these statistics are processed at step 320. The processor 123 is able to determine which media content instances were the most commented upon on the social media platform 110 during the given period of time. The processor 123 parses the statistics and increments a media content instance count value every time an identifier corresponding to a media content instance is found. Upon completion, the processor 123 generates a list of the media content instances sorted from a highest to a lowest count value for the given period of time. In other words, the list of the media content instances is sorted from a most to a least commented upon media content instances for the given period of time. In another example embodiment, the sorting operation may be based on other data such as historical data. For example, a previous, past, or average, etc. count value for a media content instance may be compared to the current count value for the same media content instance. The difference between previous, past or average and current count values may therefore be computed and used as the basis for the sorting operation. In any case, the generated list is then stored in memory 124 as part of the social media data 125.
At this step 330, the processor 123 continues to process the received statistics. While parsing each media content instance, the processor 123 is further able to determine a distribution of the comments for the period of time during which a media content instance was broadcast. The processor 123 may receive and/or retrieve the media content instance broadcast start and end times from the headend 120. For each media content instance, the processor 123 compares the timestamps relevant to the media content instance with the media content instance broadcast start and and times. As a result of this comparison, the processor 123 determines which timestamps to use for calculating a number of comments published per unit of time. A timestamp corresponding to a time not comprised between the media content instance broadcast start and end times is not taken into consideration for the calculation. The unit of time may be set to one minute although those skilled in the art will recognize that any suitable unit of time may be chosen. At the end, the distribution of the comments is calculated for each media content instance and stored in memory 124 as part of the social media data 125.
Reference is now made to
Then, the process moves to step 340 in which the processor 123 of the content delivery channel generator 121 identifies the AV content that is to be included within the content delivery channel. The AV content to include generally corresponds to the highlights of the media content instances, where heightened activity is a proxy for a highlight. As illustrated in
In one example embodiment, for each media content instance, the number of comments published per unit of time is compared to a configurable threshold. This configurable threshold may be set to a particular value corresponding to a particular number of comments published per unit of time, although those skilled in the art will appreciate that it may be changed and/or updated at any time. Then, for each media content instance, the processor 123 is able to determine the highlights for which a number of comments per unit of time is over the threshold. Start and end times of the highlights may be determined using the timestamp associated with the entries. For each highlight, the processor 123 is able to identify the earliest entry for the first unit of time for which the number of comments is over the threshold (i.e. the entry corresponding to the comment published the earliest for this unit of time on the social media platform 110) and set the timing information associated with the earliest entry as the highlight start time. Similarly, the processor 123 is able to identify the latest entry for the last unit of time for which the number of commentaries is over the threshold (i.e. the entry corresponding to the commentary published the latest for this unit of time on the social media platform) and set the timing information associated with the latest entry as the highlight end time. At the end, the highlights of the different media content instances are identified for which corresponding AV contents are to be included within the content delivery channel.
In order to identify the AV content corresponding to each highlight, the processor 123 is able to use the media content instances broadcast start time. Since the comments relevant to a highlight are published on the social media platform approximately at the same time (or quickly after that time) as the time at which the highlight of the media content instance is broadcast, the highlight start and and times may be approximated as the corresponding AV content start and end times. The corresponding AV content start and and times are then converted into offset start and and times relative to the media content instance broadcast start. The offset start time of the AV content may be expressed as a duration corresponding to the time elapsed between the media content instance broadcast start time and the determined highlight start time. Similarly, the offset end time of the AV content may be expressed as a duration corresponding to the time elapsed between the media content instance broadcast start time and the determined highlight end time. Additionally and/or alternatively, a guard interval of a particular duration may be applied to AV content offset start and end times to ensure that the highlight is entirely captured. The following example illustrate these mechanisms:
Alternatively and/or additionally, the corresponding AV content start and and times may be determined using one or more media content instance timeline metadata. Generally, program metadata is typically associated with media content instance. Common examples of such program metadata include a title, a synopsis, a genre, one or more images and cast information relating to a specific item of television program content. Media content instance timeline metadata corresponds to metadata that is associated with one or more points along the timeline of a particular media content instance, rather than being associated with the entire media content instance as a single atomic entity. Media content instance timeline metadata may therefore be suitable for providing information relevant to a specific point during a media content instance. For example, whereas program specific metadata such as that used to generate an EPG may indicate that the genre of a television program is a movie, media content instance timeline metadata may be used to indicate, for example, but not limited to, a specific time during the course of the movie, such as, for example, when a particular commercial, video scene, etc. actually begins or ends. Those skilled in the art will appreciate that the media content instance timeline metadata may be configured according to the genre of a particular media content instance to indicate specific points in time during the course of the particular media content instance.
The processor 123 of the content delivery channel generator 121 may receive and/or retrieve timeline metadata for each media content instance and use it to determine an AV content start and/or end time. For example, the processor 123 may be operative to identify that the determined highlight start and end times fall between two specific points in time indicated by the media content instance timeline metadata corresponding to a commercial. In such a case, it is likely that the highlight of interest is the commercial itself. Therefore, the processor 123 may use the specific points in time of the media content instance timeline metadata as the AV content start and end times. In another example, the processor 123 may be operative to identify that the determined highlight end time falls between two specific points in time indicated by the media content instance timeline metadata corresponding to a particular video scene. In such a case, it is likely that the highlight of interest is just before the particular video scene indicated by the media content instance timeline metadata. The processor 123 may therefore use the specific point in time corresponding to the video scene start time of the media content instance timeline metadata as the AV content end time. Those skilled in the art will appreciate that the above examples are not limiting and that other ways of using a media content instance timeline metadata to set AV content start and/or end times may be provided. The content delivery channel generator 121 may be configured to use rules in accordance with the genre (or other program metadata) to further specify an AV content start and/or end time according to media content instance timeline metadata. For example, for a movie, the timeline metadata may be used to specify an entire video scene; for a commercial break, the timeline metadata may be used to specify the commercial advertisement itself; for a sports event, the timeline metadata may be used to specify a specific play or sequence of plays, etc.
Reference is now made to
In both embodiments described hereinabove, the threshold is set to a particular value corresponding to a particular number of comments published per unit of time. This configurable value may be set as a fixed constant value or may be defined as a relative value. In the latter case, the relative value may be defined as a percentage relative to the highest number of comments received in one unit of time during the given period of time. For example, it may be decided that every unit of time in which the number of comments is more than thirty percent of the highest number of comments received in one unit of time is to be considered as a highlight.
In another example, the relative value may be defined as a percentage relative to an average of the total number of comments relevant to a media content instance that were published on the social media platform 110 during the media content instance broadcast start and end times. For instance, it may be decided that every unit of time in which the number of comments are over twenty five percent of the average is to be considered as a highlight. In the embodiment for which the graphical representations are used, each Gaussian peak that is over 25% of the average is considered as a highlight. Additionally and/or alternatively, a same or different threshold(s) may be used to determine the highlights for the different media content instances. Referring again to
At step 350, the processor 123 constructs the content delivery channel. The processor 123 retrieves, from memory 124, the list generated at step 320 and gathers the relevant AV contents to include within the content delivery channel. Based on the AV content offset start and end times, the processor 123 may be able to retrieve the corresponding AV contents from any suitable content source. The corresponding AV contents may be retrieved from, for example, but not limited to, the headend 120 catch-up catalog, a third-party content provider, a cloud-based computing system, or any other external AV content source accessible by the content delivery channel generator 121.
The processor 123 parses the sorted list and starts with the first media content instance in the list, i.e. the most commented upon instance (for example, media content instance 1 of
Thus, the content delivery channel is constructed with the retrieved AV contents. The result of the process is shown in
Additionally and/or alternatively, the corresponding AV contents are not retrieved but rather references are produced. Each of this reference typically includes a location indicating the content source for the AV content (e.g. a network address, a Uniform Resource Locator, a pointer, etc.) and the offset start and end times indicating the portion of the AV content to include within the content delivery channel. Therefore, the same process may be applied but, instead of constructing a channel line-up, a playlist is constructed for the content delivery channel.
The result of the process is shown in
The process ends at step 360 at which the content delivery channel is constructed and made available to one or more users of client device 130.
Reference is now made to
Once generated, the content delivery channel is ready to be broadcast and made available to one or more users of client device 130.
The user may select the content delivery channel using any suitable controller such as for example, but not limited to, a remote control, a mobile phone, a handheld device, a tablet computer, etc. Once selected, the content delivery channel is played back and displayed on display device 140. The content delivery channel is played back according to the content delivery channel line-up (
Reference is now made to
It is appreciated that various features of the invention which are, for clarity, described in the contexts of separate embodiments may also be provided in combination in a single embodiment. Conversely, various features of the invention which are, for brevity, described in the context of a single embodiment may also be provided separately or in any suitable subcombination.
It will be appreciated by persons skilled in the art that the present invention is not limited by what has been particularly shown and described hereinabove. Rather the scope of the invention is defined by the appended claims and equivalents thereof:
This application claims priority to U.S. Provisional Application No. 62/048,200, filed Sep. 9, 2014, the complete disclosure of which is incorporated herein by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
62048200 | Sep 2014 | US |