DELIVERY OF DIFFERENT SERVICES THROUGH CLIENT DEVICES BY VIDEO AND INTERACTIVE SERVICE PROVIDER

A system that handles delivery of services through a client device, includes a video and interactive service provider and the client device. The video and interactive service provider inserts a plurality of trigger identifiers at different event opportunities in media content and transmits a media stream of the media content that includes programming media content and non-programming media content, to the client device. The client device detects the inserted trigger identifiers in the media content, renders overlay graphics on the media content in response to the detection of the inserted trigger identifiers, and activates at least one of input devices in vicinity of the client device or the rendered overlay graphics. The client device receives trigger responses over an activated overlay graphic, via the activated input devices and displays an interactive view on the client device, to enable delivery of services in response to the received trigger responses.

Skip to: Description  ·  Claims  · Patent History  ·  Patent History
Description
CROSS-REFERENCE TO RELATED APPLICATIONS/INCORPORATION BY REFERENCE

This Application makes reference to, and claims priority to, and claims benefit from U.S. Application Ser. No. 62/511,190, which was filed on May 25, 2017.

This Application also makes reference to:

U.S. application Ser. No. ______ (Attorney Docket No. TBS-1054); and
U.S. application Ser. No. ______ (Attorney Docket No. TBS-1060);

Each of the above stated patent applications is hereby incorporated herein by reference in its entirety.

FIELD OF TECHNOLOGY

Certain embodiments of the present disclosure relate to television and broadcasting technologies for streaming media networks. More specifically, certain embodiments of the present disclosure relate to delivery of different services through various client devices.

BACKGROUND

Recent technological advancements in broadcasting and media delivery technologies have paved the way for promoters to target relevant audiences across different media networks, such as linear networks, VOD networks, and mobile networks, with promotional content of products or services. Such media networks maintain a curated repository of media content that is delivered to users across different media platforms under ownership of the media network. The media content is distributed according to a schedule with slots dedicated to the promotional content of products or services. Such slots can be placed between two segments of the media content or over a defined region of the media content. The audience that engages with the media content is served with such promotional content.

The media networks that are owners of the media content, provide viewership information of served promotional content to associated promotional networks. However, such viewership information obscures the intent or interest of target audience to subscribe to the products or services upon watching associated promotional content. Additionally, promoters that prefer to target certain audiences for granular periods of time in a day, require intent or interest of a user in associated product or services for such granular periods of time. For example, a restaurant chain may wish to target audiences at different periods of time, such as before breakfast time, lunch time, and dinner time, to raise possibility of users to purchase products items from the restaurant. Moreover, such promoters may request to improve the intent of target audience to purchase promoted products or services, which may be a technically challenging task.

Currently, the ability to measure intent and further improve the intent in a way that encourages each target audience member to purchase product items is performed via detection of impressions or clicks on a promoted media content. However, with varying attention span of audience members, such impressions or clicks result in lower conversion rates. The impressions or clicks are considered an imperfect measure of intent in a time when audience members have a transient attention span. The current technological solutions are inefficient to measure the intent or interest of users to purchase products or services that are promoted through the promotional content. The transient attention span of a target audience affects the conversion of the target audience. Thus, advanced systems may be required that may transform that transient attention to selective sustained attention for viewed promotional content.

Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such systems with some aspects of the present disclosure as set forth in the remainder of the present application with reference to the drawings.

BRIEF SUMMARY OF THE DISCLOSURE

Systems and methods are provided for delivery of different services through various client devices by a video and interactive service provider, substantially as shown in and/or described in connection with at least one of the figures, as set forth more completely in the claims.

These and other advantages, aspects, and novel features of the present disclosure, as well as details of an illustrated embodiment thereof, will be more fully understood from the following description and drawings.

BRIEF DESCRIPTION OF SEVERAL VIEWS OF THE DRAWINGS

FIG. 1 is a block diagram that illustrates an exemplary network environment for delivery of different services through various client devices, in accordance with an exemplary embodiment of the disclosure.

FIG. 2 is a block diagram that illustrates an exemplary trigger management system that handles insertion and activation of trigger identifiers in media content, in accordance with an exemplary embodiment of the disclosure.

FIG. 3 is a flow diagram that illustrates data exchange among the exemplary video and interactive service provider of FIG. 2, an exemplary client device, and a content producer/primary distributor, in accordance with an embodiment of the disclosure.

FIGS. 4A and 4B, collectively depict a first exemplary scenario that illustrates a client-side presentation of overlay graphics and receipt of trigger response over presented overlay graphics, via an input device, in accordance with an embodiment of the disclosure.

FIG. 5 depicts a second exemplary scenario that illustrates client-side presentation of overlay graphics and receipt of trigger response over presented overlay graphics, via a trigger input rendered on a secondary device paired with client device, in accordance with an embodiment of the disclosure.

FIG. 6 depicts a third exemplary scenario that illustrates client-side presentation of overlay graphics and receipt of trigger response over presented overlay graphics based on a direct user selection of presented overlay graphics, in accordance with an embodiment of the disclosure.

FIG. 7 depicts a fourth exemplary scenario that illustrates client-side presentation of overlay graphics and receipt of voice responses over presented overlay graphics, handled by a smart conversational agent, in accordance with an embodiment of the disclosure.

FIGS. 8A, 8B, 8C, 8D, and 8E are flowcharts that collectively illustrate a method for delivery of different services through various client devices, in accordance with an embodiment of the disclosure.

FIG. 9 is a conceptual diagram that illustrates an example of a hardware implementation for the trigger management system of FIG. 1 that employs a processing system for delivery of different services through various client devices through various client devices, in accordance with an exemplary embodiment of the disclosure.

DETAILED DESCRIPTION OF THE DISCLOSURE

Certain embodiments of the disclosure may be found in a system and method that handles delivery of a service through a client device or a secondary device paired with the client device. Examples of the different services may include, but is not limited to a service that may be delivered through the client device 132 may be an (over-the-top) OTT service through internet, a service that can be delivered through broadcast networks on different client devices, such as (Advanced Television Systems Committee) ATSC smart TVs (e.g., ATSC 3-enabled TV), presentable (audio-visual) services, consumable services, online services, purchase service, or other access independent services or dependent services. Also, different client devices, through which different services may be delivered, may be an ATSC smart TV capable of reading watermarks for a broadcast implementation, a set top box, an internet-based television, a smartphone, a tablet, and the like. Instead of an OTT service, different services may be delivered via an enabled set-top, ATSC3 TV, or Smart TV with Automatic Content Recognition (ACR), or a legacy TV with a smart second device that is cable of decoding an audio watermark.

Various embodiments of the disclosure include a system that may include a video and interactive service provider and the client device. The video and interactive service provider may include one or more processors. Similarly, the client device may include a processor. The one or more processors at the interactive service provider may be configured to insert a plurality of trigger identifiers at a plurality of event opportunities in media content that includes programming media content and non-programming media content. The plurality of event opportunities may correspond to a plurality of candidate time intervals in a playback duration of the media content. The one or more processors may be further configured to transmit a media stream of the media content to the client device, via a communication network.

The processor in the client device may be configured to detect the inserted plurality of trigger identifiers in the media content in the playback duration of the media content at the client device. The processor may be further configured to render a plurality of overlay graphics on the media content within the plurality of candidate time intervals and activate at least one of one or more input devices in vicinity of the client device or the rendered plurality of overlay graphics. The processor may be further configured to receive one or more trigger responses over an activated overlay graphic rendered on the media content in the playback duration. Such one or more trigger responses may be received via the activated one or more input devices. The processor may be further configured to display an interactive view (e.g., an interactive interface) on the client device, to enable delivery a service(s) in response to the received one or more trigger responses. Such delivery of the service(s) may be enabled at the client device in communication with a fulfillment server that may fulfill the delivery of the service(s) to increase a user engagement to select the service(s). For example, the service(s) may include, but is not limited to at least one of a direct payment, a direct transaction, or a direct notification for selected at least one product offering or at least one service offering, and a direct update of the selected at least one product offering or the at least one service offering on a shopping cart, a personalized list, a social platform, or a combination thereof.

In accordance with an embodiment, the one or more processors may be further configured to receive a request for analysis of the media content. The request for the analysis may be followed by an insertion of the plurality of trigger identifiers at the plurality of event opportunities in the media content.

In accordance with an embodiment, the one or more processors may be further configured to fingerprint the programming media content and the non-programming media content and generate fingerprint information for the programming media content and the non-programming media content. The fingerprint information may include at least one of acoustic fingerprint information and video fingerprint information for different segments of the programming media content and the non-programming media content. Such different segments may include audio frames or image frames of the programming media content and the non-programming media content.

In accordance with an embodiment, the one or more processors may be further configured to insert at least one of a plurality of digital watermarks into an audio portion or a video portion of the media content or a plurality of digital fingerprints of the audio portion or the video portion of the media content. Such plurality of digital watermarks or the plurality of digital fingerprints are inserted at the plurality of event opportunities in the media content. The one or more processors may be further configured to generate watermark information that may include metadata for at least one of an acoustic watermark or a video watermark inserted between different segments of the media content. The generated watermark information may correspond to at least digital watermark inserted into the audio portion or the video portion of the media content. At the client device, the processor may be configured to detect at least one of the inserted plurality of digital watermarks or the plurality of digital fingerprints in the playback duration of the media content at the client device. Such detection may be executed on at least one of the client device or at a proxy server that operates, on behalf of the client device, as an intermediary server operating between the client device and the video and interactive service provider.

In accordance with an embodiment, each event opportunity may correspond to a specified event in the media content and the specified event may correspond to at least one of start credits, end credits, lull points, time-based marked regions, location-based marked regions, context-based marked regions, explicit scene start and end, and product placement opportunities, within the media content. Each trigger identifier of the plurality of trigger identifiers may be at least one, but not limited to, of Society of Cable and Telecom Engineers (SCTE) 35 triggers, playlists (e.g., .m3u8 playlist), manifest tags (e.g., .mpd manifest tags), SCTE-104 triggers, Nielsen ID3 tags, inaudible beacons, image beacons, and data beacons.

In accordance with an embodiment, the processor in the client device may be further configured to pair up the one or more input devices available in vicinity of the client device or the secondary device paired with the client device. The one or more input devices may be paired via at least one of a Bluetooth network, a Wi-Fi network, an internet-based network, a wired local network, and an ad hoc network. In some embodiments, the paired/unpaired input device may be enabled with a virtual voice assistant on at least one of the client device and the secondary device paired with the client device. The paired/unpaired input device, which is enabled with the virtual voice assistant, may be configured to actively wait and listen for a trigger identifier in an audio portion of the media content.

In accordance with an embodiment, the processor in the client device may be further configured to instruct the virtual voice assistant to detect at least one beacon within the playback duration of the programming media content/watermark/trigger recognizer. The processor in the client device may be further configured to facilitate a conversation with a user associated with the client device, to receive a trigger response from the user. The trigger response may be received through a user's speech input.

In accordance with an embodiment, the non-programming media content may include promotional media content for at least one of a product offering or a service offering. The promotional media content may include at least one of graphical content, textual content, video content, or animated content.

In accordance with an embodiment, the processor in the client device may be further configured to execute a check to decide whether to activate the one or more paired/unpaired input devices from a set of input devices, the render plurality of overlay graphics on the media content. The decision is based on the check executed on a defined criteria that is associated with records of previous service requests for the plurality of event opportunities on which the at least one service was delivered in past. The defined criteria may include at least one of a user-defined constraint, an inventory constraint, and a specified threshold count of trigger responses for a product offering or a service offering promoted by the non-programming media content.

In accordance with an embodiment, the one or more processors may be further configured to instruct a delivery of notifications on at least one of the client device or the secondary device paired with the client device, in response to the received one or more trigger responses. The one or more trigger responses may correspond to one or more user interactions that may be received based on at least one of a touch input, a gesture input, a haptic input, and a voice command input.

FIG. 1 is a block diagram that illustrates an exemplary network environment for delivery of different services through various client devices, in accordance with an exemplary embodiment of the disclosure. With reference to FIG. 1, there is shown a network environment 100 that includes a content producer/primary distributor 102. The content producer/primary distributor 102 may include an ad agency 104, a studio 106, and a pre-produced master content store 108. There is further shown an video and interactive service provider 110, which may include a trigger management system 112, a non-programming media content store 114, a media analysis system 116, and a user manager 118. The trigger management system 112 may include a fingerprinting system 120 and a watermarking system 122. Similarly, the non-programming media content store 114 may include a graphic overlay manager 124 and a watermark/fingerprint/trigger registry 126. Also, the video and interactive service provider 110 may include a programming content store 128 and a media encoder/packager 130.

There is further shown a client device 132, a secondary device 134, and a display 136. In some embodiments, the display 136 may be a separate device communicatively coupled to the client device 132. In other embodiments, the display 136 may be integrated with the client device 132. There is further shown a content/watermark/trigger recognizer 138 and interactive service provider partners 140, which may include an overlay ad server 142, and a fulfillment server 144. The aforementioned components in the network environment 100 may be communicatively coupled to each other, via a communication network 146.

The content producer/primary distributor 102, the video and interactive service provider 110, the client device 132, and the interactive service provider partners 140 may together be a part of a system of networks, devices, and/or circuitries, interconnected to each other via the communication network 146. Although not shown in FIG. 1, the video and interactive service provider 110 may include one or more processors and the client device may also include a processor. The one or more processors of the video and interactive service provider 110 and the processor of the client device 132, may be configured to execute all the operations of the video and interactive service provider 110 and the client device 132, respectively. The operations may be inclusive of all the operations described in the present disclosure as well as other operations that is omitted from the disclosure for the sake of brevity.

The content producer/primary distributor 102 may be a server or a distributed network of servers that may be managed, owned, and operated by a producer entity or a primary distributor entity. The content producer/primary distributor 102 may store and distribute media content, which includes programming media content (e.g., television shows, live programs, trailers, movies, etc.) as well as non-programming media content (e.g., advertisement videos, graphic advertisements (e.g., bugs, logos, banners, tickers, popups, ⅓rd graphics, etc.), promotional videos, and promotional audio, etc.). Also, the content producer/primary distributor 102 may prepare, package, and distribute the media content (programming and/or non-programming) to different networks that serve the media content to different client devices, through a secure (or open) content delivery network. The content producer/primary distributor 102 may include the ad agency 104, the studio 106, and the pre-produced master content store 108 coupled to the ad agency 104 and the studio 106.

The ad agency 104 may be a content producer that creates, plans, and handles different tasks associated with production and distribution of non-programming media content (which may be advertisements or other promotional content). The ad agency 104 may produce commercial videos, radio commercials, online advertisements, out-of-home advertisements, and the like, based on an advertising campaign that may be specified by a product/service promoter or owner.

The studio 106 may be a platform that facilitate content producers to create, edit, curate, and/or package different types of non-programming media content for distribution to different programming networks (e.g. the video and interactive service provider 110) that stream programming media content to different client devices (e.g., the client device 132). In some embodiments, the studio 106 may be an application platform that may be configured to produce media content and curate the produced media content for distribution to different programming networks.

The pre-produced master content store 108 may be a media server or a distributed network of media servers, which may be a part of a content delivery network for producers/distributors of the media content. The pre-produced master content store 108 may be configured to receive produced and/or curated media content (e.g., TV shows, live shows, movies, video ads, promotions videos, graphics (e.g., bugs, logos, ⅓rd graphics, banners, etc.,), promotional audio, etc.) from the ad agency 104 and the studio 106. The pre-produced master content store 108 may be further configured to maintain a curated repository of media content that is received from the ad agency 104, the studio 106, or other content production and distribution platforms.

The video and interactive service provider 110 may be a distribution network (e.g., a television network or a media streaming network) as well as a service network (e.g., an affiliate network for the content producer/primary distributor 102 or the interactive service provider partners 140). As a distribution network (content), the video and interactive service provider 110 may handle production, curation, and distribution of media content that includes programming media content packaged along with non-programming media content (which may be received from, e.g., the content producer/primary distributor 102 or other sources). The video and interactive service provider 110 may store programming media content along with other programming or non-programming assets (e.g. media content received from the content producer/primary distributor 102). The distribution of media content may be managed via different delivery channels, which may be managed by the video and interactive service provider 110, for example, broadcast channels (e.g., as per Advanced Television Systems Committee (ATSC) 2, ATSC 3, or other standards), internet-based media streaming channels, web channels, podcast channels, radio channels, and the like. As the media content (programming and/or non-programming) received from the content producer/primary distributor 102 may have not been prepared for final distribution to the client device, the video and interactive service provider 110 may mark locations in the media content, for ad breaks, edits for TV if there is objectionable content, and further convert the media content as per distribution formats, via the media encoder/packager 130.

As a service network, the video and interactive service provider 110 may handle delivery of different (or similar) service(s) over the media content as the media content is delivered and played through different client devices or media player applications. The video and interactive service provider 110 may include a server or a distributed network of servers executing different operations on media content (programming or non-programming) received from different content producers/primary distributors (e.g., the content producer/primary distributor 102). Different operations may be executed based on requirements of different video service providers. The requirements may include, but are not limited to at least one of media content (programming or non-programming) analysis, watermarks insertion, fingerprints generation, trigger identifiers insertion, or a combination thereof. The media content (programming or non-programming) may be received from different content producers/primary distributors (e.g., the content producer/primary distributor 102) and a modified version of the media content (after execution of different operations) may be packaged with the prepared programming media content for delivery of a media stream to the client device 132.

The trigger management system 112 may comprise suitable logic, circuitry, and interfaces that may be configured to fingerprint and/or schedule insertion of different watermarks in media content (programming and/or non-programming) received from the content producer/primary distributor 102. The fingerprints and watermarks may be utilized at the client device 132 to present interactive options over programming or non-programming media content (e.g., promotional graphics or promotional videos) streamed at the client device 132. The trigger management system 112 may be implemented as a computational circuitry or as a set of instructions that are executed on a computational circuitry on one or more servers of the video and interactive service provider 110.

The non-programming media content store 114 may be a server, a distributed network of servers, or a set of applications that are executed on the server or the distributed network of servers. The operations of the non-programming media content store 114 may be handled by the video and interactive service provider 110. The non-programming media content store 114 may be configured to manage overlay of graphical assets on different client devices (e.g., the client device 132) and further maintain a database of watermark information, fingerprint information, or event information for different types of information (e.g., trigger identifiers, watermarks, or fingerprints) inserted in the media content (programming or non-programming).

The media analysis system 116 may comprise suitable logic, circuitry, and interfaces that may be configured to determine the one or more event opportunity points (e.g., time slots in media content) associated with the media content (programming or non-programming) that is received from a content producer/primary distributor, such as the content producer/primary distributor 102. The media analysis system 116 may be further configured to identify information associated with different segments (e.g., specific portions, specific scenes, POD durations, commercial breaks, etc.) in the media content. The information may be identified based on analysis of a context, a user preference, or a defined goal (associated with flights of an advertisement campaign) of different segments in the media content (programming and/or non-programming). Such information may include different attributes, for example, a duration, a tag or metadata, a suitable overlay asset for an event opportunity, a total number of event opportunities in a segment, and the like. The determined one or more event opportunity points and associated information may be transmitted to the trigger management system 112 (e.g., stored in an event opportunity store (not shown in FIG. 1)) and the non-programming media content store 114.

The user manager 118 may comprise suitable logic, circuitry, and interfaces that may be configured to manage processes and requests that may be associated with user preferences, user activities (or user footprints), user selections, or user profiles across different client devices (e.g., the client device 132). Such user preferences, user activities, user selections, or user profiles may be stored and managed as user-related data in a user database (not shown in FIG. 1). The user-related data may be received as structured and relational or unstructured and non-relational data from one or more data sources. The user database may comprise suitable logic, circuitry, and interfaces that may be configured to store and manage the user-related data in real time. The user-related data may comprise at least a set of user-authentication data, a subscription data, user preferences, user attributes (e.g., demographic profile (e.g., age, gender, location, income details, etc.) and user footprints (e.g., cookies-based data) that defines user activities on applications/client devices associated with a user. Every time a user request is received by the video and interactive service provider 110 to stream the programming media content to a client device (e.g., the client device 132), the user request may be routed to the user manager 118. In certain implementations, the user manager 118 may be configured to facilitate transactions or payments made on options delivered over the programming media content in conjunction with a transaction system.

The fingerprinting system 120 may comprise suitable logic, circuitry, and interfaces that may be configured to fingerprint an audio portion and/or a video portion of the media content (programming and/or non-programming media content) that may be received from a specific content producer/primary distributor (e.g., the content producer/primary distributor 102). The fingerprinting system 120 may generate fingerprint information, which may include at least one of acoustic fingerprint information or video fingerprint information for different fragments (or selected audio or image frames) of the media content. The generated fingerprint information for a non-programming asset may be utilized to uniquely identify and detect playback of a non-programming asset at different client devices (e.g., the client device 132).

The watermarking system 122 may comprise suitable logic, circuitry, and interfaces that may be configured to insert digital watermarks (perceptible or imperceptible) in an audio portion and/or a video portion of the media content (programming and/or non-programming) received from a specific content producer/primary distributor (e.g., the content producer/primary distributor 102). The watermarking system 122 may generate watermark information, which may include metadata for at least one of an acoustic watermark or a video watermark inserted between different fragments (or selected audio or image frames) of the media content. The generated watermark information for a programming or non-programming asset may be utilized to uniquely identify and detect playback of a programming or non-programming asset at different client devices (e.g., the client device 132).

The graphic overlay manager 124 may comprise suitable logic, circuitry, and interfaces that may be configured to manage an overlay schedule database for a repository of overlay graphics (e.g., logos, bugs, banners, tickers, ⅓rd graphics, sliders, etc.). The overlay schedule may be generated and delivered to the graphic overlay manager 124 by the trigger management system 112 based on a plurality of event opportunities identified (or pre-specified) in the media content. Alternatively, the overlay schedule may be shared by the interactive service provider partners 140. The overlay schedule database may include details of what to overlay, when to overlay, for what duration to overlay and how that overlay should be presented at different devices (e.g., the client device 132).

The watermark/fingerprint/trigger registry 126 may comprise suitable logic, circuitry, and interfaces that may be configured to manage a database or a set of databases for different types of information received from the fingerprinting system 120, the watermarking system 122, and/or a trigger scheduler (not shown in FIG. 1). The different types of information may include fingerprint information, watermark information, and event information for each portion (or asset) in media content. Such types of information may be utilized to search for metadata and details of an event trigger that is detected at different client devices (e.g., the client device 132). The event trigger may correspond to an event opportunity, details of which may be specified at the watermark/fingerprint/trigger registry 126.

The programming content store 128 may be a media server or a distributed network of media servers, which may be a part of a programming content delivery network that is handled by the video and interactive service provider 110. The programming content store 128 may be a curated repository of different media assets, which includes programming media assets along with non-programming media content, received from the pre-produced master content store 108 of the content producer/primary distributor 102. In case a user request for programming media content is received, the programming content store 128 may be configured to deliver different programming media assets (e.g., episodes of different shows, movies, trailers, etc.) along with non-programming media content (e.g., video ads, audio ads, overlay graphics, or other promotional content, etc.) to the media encoder/packager 130.

The media encoder/packager 130 may comprise suitable logic, circuitry, and interfaces that may be configured to package different programming media assets to obtain programming media content that may be further packaged with non-programming media content at different event opportunities in the media content. The media encoder/packager 130 may be further configured to insert a plurality of trigger identifiers (e.g., Society of Cable and Telecom Engineers (SCTE)-35 triggers, SCTE-104 triggers, Nielsen ID3 tags, inaudible beacons, data beacons, etc.). The plurality of trigger identifiers may be further utilized to trigger different user options at client devices (e.g., the client device 132)). The media encoder/packager 130 may be further configured to encode the packaged media content and encapsulate the encoded media content in a media stream (e.g., a media stream that includes H.264 video stream and AAC audio stream or an MPEG-2 TS stream (where MPEG stands for Moving Pictures Experts Group)). Such media stream may then be delivered to different client devices (e.g., the client device 132) via the communication network 146.

The client device 132 may comprise suitable logic, circuitry, and interfaces that may be configured to request the video and interactive service provider 110 to stream programming media content at the client device 132. The client device 132 may also request the video and interactive service provider 110 to stream programming media content (e.g., TV shows, live matches, movies, etc.) along with further requests for activation of trigger inputs (overlaid graphical buttons or physical input devices) to engage (e.g., purchase, sell, bid, share, etc.) with non-programming media content presented along with the programming media content. Such trigger inputs may be activated for various event opportunities in the programming media content, for example, television programming or on-demand shows (e.g. dramas, movies, etc.), at a display view of the client device 132. Examples of the client device 132 may include, but are not limited to a Set-Top-Box (STB), an (internet protocol television) IPTV, a hybrid box, a cable converter, a smartphone, a laptop, and a tablet, a smart TV, a digital media player (for example, “Fire” TV, “Apple” TV, etc.). Also the client device 132, through which different services may be delivered, may be an ATSC smart TV capable of reading watermarks for a broadcast implementation, a set top box, an internet-based television, a smartphone, a tablet, a set-top box, an ATSC3 TV, or a Smart TV with ACR (automatic content recognition), or a legacy TV with a smart second device that is cable of decoding an audio watermark.

In some embodiments, the client device 132 may execute the playback of the programming media content via the display 136 that may be a peripheral device or integrated with the client device 132. Examples of the display 136 may include, but not limited to a television display (e.g. Liquid Crystal Display (LCD), Light Emitting Diode (LED) display, organic light emitting diodes (OLED) display, plasma display, Thin-Film Transistor (TFT) display, etc.) a projector screen, a computer monitor, a three dimensional (3D) display, and an (Augmented Reality/Virtual Reality (AR/VR display).

The secondary device 134 may comprise suitable logic, circuitry, and interfaces that may be configured to display trigger inputs (overlaid graphic buttons) in response to an event trigger that occurs based on a detection of a trigger identifier with the playback of the media content (programming and/or non-programming) at the client device 132. Additionally, the secondary device 134 may be configured to display notifications, payment options, or, promotional content, via at least one delivery platform accessible on the secondary device 134. The one or more delivery platforms may correspond to a communication exchange platform that may incorporate visual, audible, or executable data to serve notifications or associated promotional content on the secondary device 134. Example of the one or more delivery platforms may include, but not limited to an Email platform, a mobile messaging platform, a webpage, a podcast, and a push notification. Examples of the secondary device 134 may include, but not limited to smartphones, tablets, phablets, smart watches, smart glasses, and smart speakers with or without artificially intelligent (AI) conversational agents. In some cases, the secondary device 134, for e.g., as a smart conversational agent, may be configured to detect the audio watermark itself and may not rely on the client device 132 for detection.

The content/watermark/trigger recognizer 138 may comprise suitable logic, circuitry, and interfaces that may be configured to identify trigger identifiers, inserted watermarks, or media content based on fingerprints at the client device 132. Such identifications may be done based on a direct integration of a media application (operational on the client device 132) with the video and interactive service provider 110. Alternatively stated, the content/watermark/trigger recognizer 138 may detect and/or identify information associated a trigger identifier, an inserted watermark, or a fingerprint while the programming media content (along with non-programming media content) is played at the client device 132. The content/watermark/trigger recognizer 138 may communicate with the video and interactive service provider 110, via a set of calls or other instructions (e.g., API calls), to identify information (e.g., event information, watermark information, fingerprint information, etc.) in response to a detection of an event trigger at the client device 132.

The interactive service provider partners 140 may be a group of service networks (e.g., different affiliate networks) that may have partnerships and affiliations with the video and interactive service provider 110 and/or the content producer/primary distributor 102. The interactive service provider partners 140 may include a server or a distributed network of servers that may serve overlay advertisement graphics (or media content) to the client device 132 in response to request from the client device. Also, the different operations on media content (programming or non-programming) for different video and interactive service providers (e.g., the video and interactive service provider 110). Different operations may be executed based on requirements of different video and interactive service providers.

The overlay ad server 142 may comprise suitable logic, circuitry, and interfaces that may be configured to design or produce and distribute overlay graphics along with associated metadata to the client device 132 in response to requests received from the client device 132. A repository of overlay graphics (e.g., bugs, logos, tickers, banners, sliders, ⅓rd graphics, full screen graphics, etc.) may also be maintained at the overlay ad server 142.

The fulfillment server 144 may comprise suitable logic, circuitry, and interfaces that may be configured to deliver a service (e.g., payment service, order service, bid/reverse bidding service, registration, subscription, social sharing, etc.) to a user in response to a request from the client device 132.

The communication network 146 may comprise suitable logic, circuitry, and interfaces that may be configured to manage a plurality of network ports and a plurality of communication channels for transmission and reception of communication data (for e.g. media streams, request data, metadata, database files, web data, etc.). The communication data may correspond to data received and/or exchanged among the content producer/primary distributor 102, the video and interactive service provider 110, the client device 132, the secondary device 134, the content/watermark/trigger recognizer 138, and the interactive service provider partners 140, via the communication network 146. Each network port may correspond to a virtual address (or a physical machine address) for transmission and reception of the communication data. For example, the virtual address may be an Internet Protocol version 4 (IPV4) or an Internet Protocol version 6 (IPV6) address, and the physical address may be a media access control (MAC) address. An application layer may be associated with the communication network 146 for implementation of communication protocols on one or more communication requests from at least one of the one or more computing devices. Examples of the communication protocol may include, but not limited to a Hypertext Transfer Protocol (HTTP), a File Transfer Protocol (FTP), a Simple Mail Transfer Protocol (SMTP), a Domain Name Server (DNS) protocol, and a Common Management Information Protocol (CMIP) Over Transmission Control Protocol/Internet Protocol TCP/IP (CMOT).

The communication channels may include, but are not limited to, a wireless channel, a wired channel, a combination of wireless and wired channel thereof. The wireless or wired channel may be associated with a data standard which may be defined by one of a Local Area Network (LAN), a Personal Area Network (PAN), a Wireless Local Area Network (WLAN), a Wireless Sensor Network (WSN), a Wireless Area Network (WAN), and a Wireless Wide Area Network (WWAN). Additionally, the wired channel may be selected on the basis of bandwidth criteria. For example, an optical fiber channel may be used for a high bandwidth communication, and a coaxial cable (or Ethernet-based communication channel) may be used for moderate bandwidth communication. In one scenario, the communication network 146 may be an internet based network. For such networks, a delivery standard may be used, for example, National Television System Committee (NTSC), (Phase Alternating Line) PAL, Sequential Color with Memory (SECAM), Moving Picture Experts Group (MPEG), and (Digital Video Broadcasting) DVB-S/DVB-S2 or (Integrated Services Digital Broadcasting) ISDB-S. Although, only a single communication network has been illustrated in FIG. 1, there may be more than one communication networks that may or may not share resources to optimally deliver programming content and other non-programming content to various connected client devices.

In operation, a request (i.e. a user-initiated or an automatic client initiated request) may be transmitted by the client device 132 to the video and interactive service provider 110, via the communication network 146. A media application may be installed at the client device 132. The media application may be managed by the video and interactive service provider 110. The request may be made for an instructed delivery and playback of programming media content at the client device 132.

In some embodiments, along with the request, the client device 132 may transmit request information, such as user information, constraint information (e.g., device constraints, network constraints, user-specified constraints, etc.), stored/collected user preferences (e.g., favorite shows, preferred products/services, frequently/recently searched terms, etc.) to the video and interactive service provider 110. The request information may further include user attributes (e.g., demographic details (such as age, gender, income bracket, and location), and digital footprints (i.e., traceable, inferred or analyzed digital activities, actions, contributions, and communications on internet or digital devices (such as the client device 132 or the secondary device 134). The request along with the request information may be stored in a user database of the user manager 118 present in a network of the video and interactive service provider 110.

In some embodiments, the client device 132 may be communicatively coupled to a proxy server (not shown in FIG. 1) that acts as an intermediary between the client device 132 and at least one of the content producer/primary distributor 102, the video and interactive service provider 110, the content/watermark/trigger recognizer 138, or the interactive service provider partners 140. All the requests from the client device 132 may be parsed, processed, and/or routed by the proxy server to at least the content producer/primary distributor 102, the video and interactive service provider 110, the content/watermark/trigger recognizer 138, or the interactive service provider partners 140.

The content producer/primary distributor 102 may be configured to transmit media content (programming and/or non-programming, for e.g., TV shows, live shows, movies, advertisement videos, graphic advertisements (e.g., bugs, logos, banners, tickers, popups, ⅓rd graphics, etc.), promotional videos, promotional audio, etc.) to the video and interactive service provider 110. The non-programming media content may include promotional media content for at least one of a product offering or a service offering. The promotional media content may include at least one of graphical content, textual content, video content, or animated content. The programming and/or non-programming media content may be transmitted by the content producer/primary distributor 102 in an attempt to increase user engagement with the non-programming media content that may be played along with programming media content at the client device 132. Examples of the programming media content may include, but are not limited to episodes of different shows, movies, live matches, trailers, program recap, programs to be aired, program highlights, sports highlight, sports analysis, news feed, or other television programming, and on-demand shows (e.g. pre-produced or live shows, etc.).

The video and interactive service provider 110 may be configured to receive the media content from the content producer/primary distributor 102 (i.e., from the pre-produced master content store 108 of the content producer/primary distributor 102). The video and interactive service provider 110 may be further configured to receive the request, for media analysis, fingerprinting, and/or watermark insertion in the non-programming media content, from the content producer/primary distributor 102.

The media analysis system 116 may be configured to analyze the media content received from the content producer/primary distributor 102 to identify slots, contextual points, product placement opportunities, etc., in the media content. More specifically, the media analysis system 116 may be configured to analyze the programming media content (i.e., TV shows, movies, etc.) to look for non-programming content, such as brand logos, but may also look for more contextually relevant opportunities, such as a coffee scene or a breakfast scene, or a restraint scene. Such contextually relevant opportunities may translate to ad or offer placement opportunities that may be relevant to an advertiser and a non-programming media element can be overlaid at the contextually relevant opportunity, e.g, a burger order logo (user-selectable) over a breakfast scene. The media analysis system 116 may also analyze advertisements so as to enable such advertisements interactive at the time of presentation on the client device 132.

In some embodiments, the media analysis system 116 may implement a content recognition service (not shown in FIG. 1) that may be configured to execute operations associated with content recognition on the non-programming media content received from different content producers/content distributors (e.g., the content producer/primary distributor 102). The content recognition service may operate on a statistical signal processing engine that may execute operations for the recognition of non-programming assets (e.g., video advertisements, etc.) in the programming media content. The content recognition service may further identify different attributes (e.g., audio or video fingerprints) of the non-programming media assets (as part of non-programming media content) through implementation of a technique, such as acoustic fingerprinting, digital watermarking, and digital video fingerprinting. In certain implementations, supervised or unsupervised machine learning, deep learning, neural network, or artificially intelligence based techniques may be implemented to facilitate precise determination of different attributes of the media items in the media content. In certain embodiments, the content recognition service may be implemented on a specialized circuitry or an application at the trigger management system 112. For such implementations, the content recognition service may utilize computational resources of a graphical processing unit (GPU) at the trigger management system 112.

After the analysis, different features along with metadata and other details of different programming or non-programming assets (as part of the media content) may be identified by the media analysis system 116. Examples of the different features may include, but not limited to contextual information of different scenes/portions of a programming asset, a point in time to trigger an overlay over a programming or a non-programming asset, a suitable position in a non-programming asset where an overlay may be placed, or other playback information (e.g., playback duration, start/end time stamps, etc.). The contextual information may be a context of a scene, for example, sports, health, baby products, car promo, and the like. A record of the analysis may be updated in the trigger management system 112 and the trigger management system 112 may store the record generated post the analysis of the media content.

In some embodiments, the received request from the content producer/primary distributor 102 may also include information that specifies a type of detection that should be used at the client device 132. The type of detection may include, but not limited to trigger identifier detection, watermark detection, fingerprint detection, tags-based detection, or a combination thereof. Based on the type of detection, the video and interactive service provider 110 may insert fingerprint, watermark, or associate tags with the programming media content. In other embodiments, in absence of such information with the received request, the video and interactive service provider 110 may be configured to optimally select a type of detection suitable for execution at the client device 132. The programming content store 128 may be configured to store the non-programming media content along with the programming media assets (e.g., individual episodes, segments, or curated portions of shows, live content, or pre-packaged content) at the programming content store 128. The non-programming media content may be further transferred to the media encoder/packager 130.

For a trigger identifier detection, a trigger scheduler (not shown in FIG. 1) in the video and interactive service provider 110 may be configured to generate a plurality of trigger identifiers (e.g., a trigger identifier may include “255” or “32” bytes of information that includes at least an asset or event identifier (ID)). When detected, such trigger identifiers may indicate a plurality of event opportunities in a playback duration of media content (programming and/or non-programming) that may be streamed at the client device 132. The event opportunities may correspond to candidate time intervals, which may be pre-specified or identified in real time or near time based on an analysis of the programming media content. Such event opportunity may correspond to a specified event in the programming media content and such specified event may correspond to, but are not limited to, start credits, end credits, lull points, time-based marked regions, location-based marked regions, context-based marked regions, explicit scene start and end, and product placement opportunities, within the programming media content. The trigger scheduler may also generate event information for each generated trigger identifier. The event information may include, but are not limited to, asset ID of a non-programming media asset, an overlay position, a graphic asset that may be overlaid, an overlay duration, and an IP address of the overlay ad server 142, and/or other presentation attributes.

The trigger scheduler may be further configured to insert the plurality of trigger identifiers (e.g., Society of Cable and Telecom Engineers (SCTE)-35 triggers, SCTE-104 triggers, Nielsen ID3 tags, inaudible beacons, data beacons, etc.) at a plurality of event opportunities (specified in an event opportunity store (not shown in FIG. 1)) in the media content packaged by the media encoder/packager 130. In some cases, the packaged media content may have a client manifest or a manifest with trigger tags or metadata timeline, which may be transmitted along with a media stream of the packaged media content. The manifest may be used to stream fragments and may include the plurality of trigger identifiers along with the trigger metadata (e.g. trigger duration, trigger end time, trigger start time, etc.). The trigger scheduler may be further configured to store the generated event information associated with each trigger identifier in the watermark/fingerprint/trigger registry 126 (that is a part of video and interactive service provider 110).

In certain embodiments, the video and interactive service provider 110 may also include a tagging system (not shown in FIG. 1). The tagging system may place one or more tags with the non-programming media content. Such tags may render more control over personalization of interactivity (e.g., delivery of services, interactive graphics overlay over ads or programs, etc.) at the client device 132. Such tags may be invoked at the client device 132 while the non-programming media content is played at the client device 132. Each tag may include, but is not limited to, at least a pointer for a defined playback duration in a candidate time interval (e.g., “00:33:43”-“00:35:43” or “2 minutes” from “00:33:43”), information (e.g., IP address, permission, etc.) to access the overlay ad server 142. The tags (or a metadata of the tags) may be transmitted along with a client manifest that may be created by the media encoder/packager 130. In some cases, the tags may be embedded in the audio portion or the video portion of the media content. The client manifest may be interpreted at the client device 132 and the one or more tags present along with the client manifest may be represented by at least one of a signal, a beacon, a SCTE-35 message, a marker, textual information, binary information, visual information, aural information, and the like.

In certain embodiments, the video and interactive service provider 110 may be further configured to modify one or more of the plurality of trigger identifiers inserted in the packaged media content at the media encoder/packager 130. For example, in event of a request from an advertiser that wants to target a specific user, one or more trigger identifiers may be modified by the video and interactive service provider 110 prior to (or even after) streaming the media content to the client device 132. The modifications may include, but are not limited to, resetting the position of the trigger identifier in the packaged media content, a deletion of a trigger identifier previously inserted in the packaged media content, a change in metadata of the trigger identifier (e.g., trigger ID), and the like. In other embodiments, instead of modification, the video and interactive service provider 110 may be configured to add a new trigger identifier at an event opportunity in the packaged media content. The video and interactive service provider 110 may be configured to generate event information for each modified trigger identifier or each new trigger identifier added in the packaged media content. After every modification or update, the video and interactive service provider 110 communicates the generated event information and/or an event log (which includes a list of modifications) for an update at the watermark/fingerprint/trigger registry 126. The watermark/fingerprint/trigger registry 126 may include databases that may be sorted, curated, updated, and structured such that in event of a call (e.g., an API-call) from the client device 132, a search may be executed in such databases to extract information (e.g., event information) that corresponds to detected trigger identifier at the client device 132.

In accordance with an embodiment, for a watermark detection or fingerprint detection at the client device 132, the trigger management system 112 may be configured to insert at least one of a plurality of digital watermarks into an audio portion or a video portion of the media content, or a plurality of digital fingerprints in the audio portion or the video portion of the media content. Such plurality of digital watermarks or the plurality of digital fingerprints may be inserted at the plurality of event opportunities in the media content. More specifically for the fingerprint detection, the fingerprinting system 120 in the trigger management system 112 may be configured to fingerprint different segments (e.g., contextual points, product placement opportunities, ads, etc.) of the media content and generate fingerprint information for the different segments of the media content. The fingerprint information may include at least one of acoustic fingerprint information or video fingerprint information (that corresponds to an inserted fingerprint) for different segments (or selected audio or image frames) of the media content.

The generated fingerprint information for a non-programming asset may be utilized to uniquely identify and detect playback of a non-programming asset (or an upcoming event opportunity) on different client devices (e.g., the client device 132). As an example, the acoustic fingerprint information may include, but not limited to an average zero crossing rate, an estimated tempo, an average spectrum, a spectral flatness, and prominent tones across a set of frequency bands, a bandwidth, and a spectrogram for a segment of the audio portion. Similarly, the video fingerprint information may include, but not limited to, histogram data, intensity information, motion vectors, feature points extracted based on application of at least one of Scale Invariant Feature Transform (SIFT), Speeded Up Robust Features (SURF), Oriented Brief and Fast (ORB), and Histogram of Oriented Gradients (HOG), and the like.

In accordance with another embodiment, for the watermark detection, the watermarking system 122 may be configured to insert a plurality of digital watermarks (perceptible or imperceptible) in an audio portion and/or a video portion of the programming media content at different event opportunities in the media content. The watermarking system 122 may generate watermark information, which may include metadata for at least one of an acoustic watermark or a video watermark inserted between different fragments (or selected audio or image frames) of the media content. The generated watermark information may correspond to at least digital watermark inserted into the audio portion or the video portion of the media content. The generated watermark information for a non-programming asset in the media content may be utilized to uniquely identify and detect playback of such asset (or an upcoming event opportunity) on the client device 132. The watermark information may further include details (e.g., title, duration, start time, end time, tags, etc.) of an asset in the media content. The trigger management system 112 may be further configured to store the generated fingerprint information and the watermark information in the watermark/fingerprint/trigger registry 126.

In some cases, the watermarks and/or fingerprints may be primarily intended for the programming media content to identify events for triggers. The non-programming assets may be typical fingerprinted or watermarked to detect playback for tracking or in the case the non-programming content is overlaid in the broadcast distribution to make it interactive on the enabled client devices (e.g., the client device 132). As an example, in a TV show with a beach scene, fingerprints, watermarks, or trigger identifiers, may be generated for a positive sentiment beach scene. Such fingerprints, watermarks, or trigger identifiers may indicate an event opportunity for which a personalized travel or vacation offer may be served on the client device 132, for viewers that may like going to the beach. The watermark/fingerprint/trigger registry 126 may also store information around non-programming content, such as a promotional overlay for a new TV show, to enable the video and interactive service provider 110 to keep a track of users who may have viewed the promotional overlay for the new TV show. The video and interactive service provider 110 may also allow the user (through the client device 132 or other input devices) to act upon the promotional overlay, such as scheduling a DVR recording or adding it to the watch list.

The media encoder/packager 130 may be further configured to prepare the media content (i.e., obtained after insertion of at least one of trigger identifiers, digital watermarks, or digital fingerprints), which may include the programming media content packaged with the non-programming content. More specifically, during preparation, different programming media assets may be packaged with different non-programming media assets (as part of the non-programming media content) at different event opportunities. The packaging may be done such that different non-programming media assets are inserted at pre-assigned spots present in between different programming media assets.

The media content that is prepared by the media encoder/packager 130 may include, but is not limited to, VOD media content, linear media content, live media content, VOD to VOD programming media content, VOD to live programming media content, live to live programming media content, live to VOD programming media content, or a combination thereof. Such diverse types of programming media content may be generated based on implementation of functions on a client manifest generated by a dynamic manifest generator (not shown in FIG. 1) present with the media encoder/packager 130.

The media encoder/packager 130 may be further configured to transmit a media stream (of the media content) that comprises the programming media content and the non-programming media content to the client device 132, via the communication network 146. At least one of the plurality of digital watermarks, the plurality of digital fingerprints, or the plurality of trigger identifiers may be present at the plurality of event opportunities in the media content. The media stream may be generated by encapsulation of the packaged media content (inserted with trigger identifiers) in a transport stream based on a digital streaming protocol or a real time streaming protocol (RTSP)). Examples of the digital streaming protocol may include, but are not limited to, HTTP Live Streaming (HLS), Adaptive Bitrate Streaming (ABR), MPEG-DASH, Smooth Streaming, and HTTP Dynamic Streaming (HDS), or a suitable digital streaming protocol.

At the client-end, the client device 132 may be configured to receive the media stream of the media content, via the communication network 146. In some embodiments, instead of the client device 132, a proxy server may receive the media stream of the packaged media content and further transmit the same media stream to the client device 132, via the communication network 146. Upon reception, the client device 132 may execute playback operations (e.g., decoding media content, rendering user interface, loading non-graphical and graphical elements, initializing player, displaying decoded media content on a player window, etc.) for the programming media content on the display 136 associated with the client device 132.

The plurality of trigger identifiers may be associated with the media content (e.g., provided in the client manifest or embedded in the media stream that includes the programming and/or the non-programming content) that is streamed at the client device 132. In some cases, digital watermarks (e.g., audio or video watermarks generated by the watermarking system 122) may be present/inserted at different candidate points (or event opportunities in the media content. Also, in other cases, digital fingerprints (audio or video fingerprints generated by the fingerprinting system 120) may be present/inserted in the media content.

In certain embodiments, the client device 132 may be configured to decide whether there is a requirement of fingerprint detection or watermark detection. In cases where there is a requirement of fingerprint detection and/or watermark detection, the client device 132 may be configured to detect at least one of the inserted plurality of digital watermarks or the plurality of digital fingerprints (of different segments or scenes, which may render an event opportunity) in the playback duration of the media content (programming or non-programming) at the client device 132. Such detection may be executed on at least one of the client device 132 or at a proxy server that operates, on behalf of the client device 132, as an intermediary server operating between the client device 132 and the video and interactive service provider 110. Such decision to detect at least one of the inserted digital watermarks or the inserted plurality of digital fingerprints may be further instructed by the video and interactive service provider 110 via a set of instructions (e.g., API-instructions) to the client device 132. Also, in some cases, the client application (or the media application) operational on the client device 132 and responsible for playback of the media content may lack the capability to detect and recognize at least one of the inserted plurality of trigger identifiers, the inserted plurality of digital watermarks or the digital fingerprints in the media content. Therefore, in such cases, the client device 132 may be configured to request the content/watermark/trigger recognizer 138 to detect and recognize at least one of the inserted plurality of trigger identifiers, the inserted plurality of digital watermarks, or the digital fingerprints in the media content, while the client application is playing the media content on the display 136.

The content/watermark/trigger recognizer 138 may detect at least one of the inserted plurality of digital watermarks or the inserted plurality of digital fingerprints in the media content, through at least one of the client device 132 or the secondary device 134. For the detected digital watermarks and digital fingerprints, the content/watermark/trigger recognizer 138 may utilize the functionalities to identify information (e.g., watermark information and fingerprint information, etc.) associated with the detected digital watermarks and/or digital fingerprints. Such information may include details of what to do, when the detection occurs, and where to request for information on the next action. For example, detection of a digital audio watermark may lead to determination of a watermark ID (255 bytes). The watermark ID may be insufficient for the client device 132 to execute an action, such as contacting the overlay ad server 142, retrieving the overlay graphics, presenting the retrieved overlay graphics, and activating the trigger inputs (input devices or overlay trigger inputs). Therefore, the content/watermark/trigger recognizer 138 may be configured to transmit a request to watermark/fingerprint/trigger registry 126 to determine at least one of the fingerprint information or the watermark information for detected digital fingerprints, and detected digital watermarks, respectively. In some cases, the request may be transmitted through instruction calls raised by a proxy server on behalf of the client device 132.

The watermark/fingerprint/trigger registry 126 may be configured to receive the request from the content/watermark/trigger recognizer 138. Further, in response to the received request, the watermark/fingerprint/trigger registry 126 may be configured to search for at least one of fingerprint information or the watermark information (whichever is requested) for detected digital fingerprints and detected digital watermarks, respectively. The watermark/fingerprint/trigger registry 126 may be further configured to communicate the fingerprint information and the watermark information back to the client device 132, for detected digital fingerprints and detected digital watermarks, respectively.

In other cases where there is a requirement of trigger identifier detection instead of fingerprint detection or watermark detection, the content/watermark/trigger recognizer 138 may be configured to detect one or more of the inserted plurality of trigger identifiers in the playback duration of media content (programming or non-programming). Such decision to detect one or more trigger identifiers of the inserted plurality of trigger identifiers may be further instructed by one of the video and interactive service provider 110. Such instruction may be made to exercise an improved control of interactivity (e.g., presentation of different overlays, trigger options, and letting the user engage better with a presented opportunity) at the client device 132. The detection of a trigger identifier may lead to determination of an event ID (255 bytes). The event ID may be insufficient for the client device 132 to execute an action, such as contacting the overlay ad server 142, retrieving the overlay graphics, presenting the retrieved overlay graphics, and activating the trigger inputs (input devices or overlay trigger inputs). Therefore, the client device 132 may be further configured to transmit a request to the watermark/fingerprint/trigger registry 126 to determine event information for one or more detected trigger identifiers. In response to the request, the watermark/fingerprint/trigger registry 126 may be configured to search for event information for the one or more detected trigger identifiers in the triggers registry and communicate the event information to the client device 132 for the one or more detected trigger identifiers.

In some cases, the client device 132 may be configured to receive the communicated fingerprint information or the watermark information from the watermark/fingerprint/trigger registry 126. In other cases, the client device 132 may be configured to receive the event information for the one or more detected trigger identifiers from the watermark/fingerprint/trigger registry 126. The fingerprint information, the watermark information, or the event information may include instructions (or other metadata) that may specify at least an address (e.g., IP address) of the overlay ad server 142, an asset identifier (ID) of an overlay graphic that has to be presented at the event opportunity, permission information, and the like. The permission information, for example, may be information to access data from the overlay ad server 142. For each event opportunity, the client device 132 may seek permissions to present an overlay graphic on the display 136, from the graphic overlay manager 124 at the video and interactive service provider 110 or the overlay ad server 142.

In response to permission requests, the client device 132 may receive, from the graphic overlay manager 124, decisions (based on the overlay schedule) regarding whether to present an overlay graphic on the display 136 for a detected event opportunity (specified by a watermark, a fingerprint, or a trigger identifier). In some embodiments, the decision regarding whether to act upon the event opportunity may be taken based on a defined criteria. The defined criteria may include, but is not limited to a retrieved set of user-preferences, a defined goal in a flight (defined by the video and interactive service provider 110), a measured or known user attention span, time constraints, inventory constraints, user-defined constraints, and a combination thereof.

For example, the defined goal may include, but not limited to a defined value of cost per thousand impressions (CPM), a click through rate (CTR), cost per sale (CPS), and a reach target. Similarly, the time constraints may include, but are not limited to a limited duration for which the user may stay online and stream the programming media content, a limit to a total number of candidate time intervals (event opportunities) in the programming media content, and an average attention span of the user. The limit on user availability for the duration of programming media content may also set a limit on the number of candidate time intervals in a limited duration of the programming media content.

The inventory constraints may include, but are not limited to an availability of overlay graphics that can be presented in the identified candidate time interval and a limit on a number of overlay graphics that matches up to the parameters in the request information. The user-defined constraints may include but are not limited to a constraint on number of advertisements, a cap on number of times a product advertised may be rendered purchasable, a content filter for a specific viewer (for example, filter content that is not intended for young kids and teenagers (below the age of 18 years).

The client device 132 may be further configured to transmit a request to the overlay ad server 142, to transmit overlay graphics for the event opportunities for which the permissions to present overlay graphics (and deliver services) have been granted by the video and interactive service provider 110 or the graphic overlay manager 124. The overlay ad server 142 may be configured to receive the request from the client device 132 and in response to the received request, the overlay ad server 142 may transmit overlay graphics (along with graphic metadata) to the client device 132. More specifically, the overlay ad server 142 may receive asset ID (or trigger ID and event ID) for each event opportunity for which permission to overlay graphics and render different services has been granted. The overlay ad server 142 may be further configured to search for overlay graphics that may match the asset ID (or trigger ID and event ID). In some cases, the overlay ad server 142 (or the graphic overlay manager 124 at the video and interactive service provider 110) may also specify (in the graphic metadata) different types of services that can be delivered through each overlay graphic, via the client device 132.

On receipt of the overlay graphics, the client device 132 may be configured to render a plurality of overlay graphics on the media content (programming and non-programming) for a plurality of candidate time intervals (corresponding to a plurality of event opportunities) within the playback duration of the media content. The plurality of overlay graphics may be rendered as a transparent layer placed on top (or sandwiched between different graphical layers) of the media content. An overlay graphic rendered on the media content may act as a trigger input, or more specifically, a user-selectable option when activated at the client device 132. However, in some cases, initially, the overlay graphic rendered on the media content may be presented in a deactivated state. The overlay graphic may be a specific bug (i.e., a digital on-screen graphic) for a product that is promoted in a non-programming asset played at the client device 132, a graphical button, a product mark, and the like.

In some embodiments, the overlay graphics may be rendered on an interactive view (i.e. an interactive platform or an interactive viewable region) of a client application in the secondary device 134. A notification may be served on the secondary device 134 and upon user selection of the served notification, the client application may pop up on the display screen of the secondary device 134 and an overlay graphic (e.g., an on-screen user-selectable button) may be displayed in the client application interface. The decision to present an overlay graphic on the secondary device 134 may be taken by the video and interactive service provider 110, or the client device 132, based on usage statistics of the secondary device 134, user accessibility to engage with the overlay graphic (if activated) on the secondary device 134, and the like.

The client device 132 may be further configured to search (or identify) for available set of input devices (wired or wireless) that may be present in the vicinity of the client device 132 or the secondary device 134 paired with the client device 132. Example of an input device may include, but not limited to, a TV remote, a smartphone, a haptic switch, a gesture sensor, a motion sensor, a smart speaker, a paired (or connectable) microphone, or a specialized physical input device (e.g., a button that is common for every product, or a product-specific button). Thereafter, the client device 132 may be further configured to pair up with one or more of the set of input devices available in vicinity of the client device 132 or the secondary device 134 paired with the client device 132. The client device 132 may pair up with one or more of the set of input devices, via a Bluetooth network, a Wi-Fi network, an internet-based network, a wired local network, a wireless ad hoc network, and the like. In some cases, instead of pairing up, an input device (e.g., a smart speaker) may listen to audio (or visual) markers/beacons/signals during the playback of the media content. A check may be further executed by the client device 132 to decide whether to activate one or more input devices from the set of input devices, the overlay graphics rendered on the media content or the overlay graphics rendered at the secondary device 134.

The decision for activation may be taken based on the check executed on a defined criteria that is associated with records of previous service requests for event opportunities already on which services were delivered in past. The defined criteria may include at least one of a user-defined constraint, an inventory constraint, and a specified threshold count of trigger responses for a product offering or a service offering promoted by the non-programming media content. For example, the criteria may include that don't activate the paired/unpaired input devices for “x” product if the customer has already purchased “x” product yesterday. In some cases, the decisions may be taken to minimize an effect of disturbance or diversions in viewing experience for a user who may wish to watch the programming media content without any diversions caused by promotional content (or user selectable options).

The client device 132 may be further configured to activate at least one of one or more input devices in vicinity of the client device 132 or the rendered plurality of overlay graphics. At least one of the one or more input devices may be paired with the client device 132 or the secondary device 134. The activation may be done based on the decisions (based on the defined criteria) taken by the video and interactive service provider 110. The activation may be followed by a notification (e.g., a notification light that blinks on the TV remote when the TV remote is activated to send a trigger response, a vibration pattern, a tone with a specific pattern, an on-screen visual notification, etc.) to alert the user associated with the client device 132 regarding the activation of a paired/unpaired input device, or a rendered overlay graphic. The overlay graphic that is rendered on the display 136 may specify types of services that a user (associated with the client device 132) can avail if selected through the activated input device(s) or overlay graphics. The types of services may include, but are not limited to a direct payment, a direct transaction, or a direct notification for a product offering or a service offering, and a direct update of a selected product offering or a service offering in a shopping cart, a personalized list generation, sharing on a social platform, or a combination thereof. Different services that may be delivered through the client device 132 may be an OTT service through internet, a service that can be delivered through broadcast networks on different client devices, such as ATSC smart TVs (e.g., ATSC 3-enabled TV), presentable (visual, aural, etc.) services, consumable services, online services, purchase service, or other access independent services or dependent services.

In some cases, the client device 132 may be configured to receive one or more trigger responses over an activated overlay graphic on the media content (during playback duration of the media content), via an activated input device or an overlay trigger input (also referred to as an activated overlay graphic). The one or more trigger responses may correspond to one or more user interactions that are received based on at least one of, but not limited to, a touch input, a gesture input, a haptic input and a voice command input. One or more notifications may be received on at least one of the client device 132 or the secondary device 134 paired with the client device 132, in response to the received one or more trigger responses. Also, more notifications may be delivered when an overlay graphic or an input device is not enabled based on the defined criteria, or when service is selected delivery, and the like. The one or more notifications may be delivered by the fulfillment server 144 based on instructions of the video and interactive service provider 110. Alternatively stated, the video and interactive service provider 110 may be configured to instruct a delivery of the one or more notifications on at least one of the client device 132 or the secondary device 134 paired with the client device 132, in response to the received one or more trigger responses at the client device 132.

In response to a receipt of the one or more trigger responses, the client device 132 may be further configured to transmit a request to the fulfillment server 144 to deliver different services. Different services that may be delivered through the client device 132 may be an (over-the-top) OTT service through internet, a service that can be delivered through broadcast networks on different client devices, such as ATSC smart TVs (e.g., ATSC 3-enabled TV), presentable (visual, aural, etc.) services, consumable services, online services, purchase service, or other access independent services or dependent services. Also, different client devices (e.g., the client device 132), through which different services may be delivered, may be an ATSC smart TV capable of reading watermarks for a broadcast implementation, a set top box, an internet-based television, a smartphone, a tablet, and the like. The fulfillment server 144 may be configured to receive the request from the client device 132 for delivery of services (or service offerings) that were promoted by the non-programming media content at the client device 132. The fulfillment server 144 may deliver the services in response to the received one or more trigger responses on the event opportunities in the programming media content.

The client device 132 may be further configured to display an interactive view (or an interactive platform, e.g., a payment page or an e-commerce web page, etc.) on the client device 132, to enable delivery of the services in response to the received one or more trigger responses. The delivery of the services may be enabled at the client device 132 in communication with the fulfillment server 144 that fulfills the delivery of the services to increase a user engagement to select services. For example, the fulfillment server 144 may render a shopping cart with a product offering (promoted in the non-programming media content at an event opportunity) selected based on a trigger response. In some cases, instead of a shopping cart, a selected product offering may be directly ordered by the fulfillment server 144 based on pre-specified payment information and address information in the user database.

A user who watches the programming media content on the client device 132 may have a transient attention span (e.g., 5-10 seconds for an ad). The video and interactive service provider 110 may manage a delivery of different services (e.g., direct purchase (T-commerce), social sharing, subscriptions, etc.) through the client device 132 such that the transient attention span is converted to a sustained attention span (e.g., 1 minute to 5 minutes for a duration of a commercial POD). The intent to avail a service (promoted through the client device 132) may increase with a recurrent display and/or activation of different user-selectable options (i.e., activated overlay graphics on media content or activation of paired/unpaired input devices) at the playback time of the media content. Also, such recurrent and prompt availability and activation of different user-selectable options may improve the user's response time to engage with a service promoted through the media content at the client device 132.

In an exemplary embodiment, the paired/unpaired input device may be enabled by use of a virtual voice assistant on at least one of the client device 132 or the secondary device 134 paired with the client device 132. Also, the virtual voice assistant may be accessible through a voice command device (e.g., a smart speaker). The paired/unpaired input device may be configured to actively wait and listen for a trigger identifier in the audio portion of the media content. The trigger identifier in the audio portion may be an inaudible beacon (ultrasonic or infrasonic frequency range), an audible beacon, and the like. The voice command device or the virtual assistant may detect beacons within the playback duration of the programming media content and facilitate a conversation with the user to receive a trigger response from the user. The trigger response may be received through a user's speech input. The voice command device or the virtual assistant may communicate the trigger response to the client device 132, which may further communicate the trigger response to the fulfillment server 144. The fulfillment sever 152 may be further configured to deliver services (offered with the playback of the media content) based on the received trigger response in the conversation between the user and the voice command device or the virtual assistant.

In certain embodiments, all the operations executed by the client device 132 except the playback of media content on the display 136 may be executed by a proxy server (not shown in FIG. 1) on behalf of the client device 132. Such execution may not affect the functional performance of the client device 132 or expected results from different operations described in FIG. 1, without a deviation from scope of the disclosure.

FIG. 2 is a block diagram that illustrates an exemplary trigger management system that handles insertion and activation of trigger identifiers in media content, in accordance with an exemplary embodiment of the disclosure. FIG. 2 is explained in conjunction with elements from FIG. 1. With reference to FIG. 2, there is shown a block diagram 200 of the trigger management system 112. The trigger management system 112 may include a network interface 202, a content recognizer 204, a trigger scheduler 206, and an event opportunity store 208. The trigger management system 112 may also include the fingerprinting system 120 and the watermarking system 122, as shown in FIG. 1.

The content recognizer 204 may comprise suitable logic, circuitry, and interfaces that may be configured to execute operations associated with content recognition of programming or non-programming media content received from different content producers/primary distributors (e.g., the content producer/primary distributor 102). The content recognizer 204 may operate as a statistical signal processing engine that may execute operations for the recognition of programming and/or non-programming assets (e.g., video advertisements, overlay graphics (such as, bugs, logos, ⅓rd graphics, banners, tickers, etc.) in the media content. The content recognizer 204 may further identify different attributes (e.g., audio or video fingerprints) of the programming and/or non-programming media assets (as part of non-programming media content) through implementation of a technique, such as acoustic fingerprinting, digital watermarking, and digital video fingerprinting. In certain implementations, supervised or unsupervised machine learning, deep learning, neural network, or artificially intelligence based techniques may be implemented to facilitate precise determination of different attributes of the media items in the media content. In certain embodiments, the content recognizer 204 may be implemented as a specialized circuitry or an application at the trigger management system 112. For such implementations, the content recognizer 204 may utilize computational resources of a graphical processing unit (GPU) at the trigger management system 112.

The trigger scheduler 206 may comprise suitable logic, circuitry, and interfaces that may be configured to generate a plurality of trigger identifiers (e.g., a trigger identifier may include “255 bytes” of information that includes at least an asset or event identifier (ID)). The trigger scheduler 206 may also generate event information for each generated trigger identifier. The event information may include, but is not limited to asset ID of a non-programming media asset, an overlay position, a graphic asset that may be overlaid, an overlay duration, or other presentation attributes. The trigger scheduler 206 may be further configured to insert the plurality of trigger identifiers in the media content at different event opportunities. The trigger scheduler 206 may be further configured to store the generated event information associated with each trigger identifier in the watermark/fingerprint/trigger registry 126.

The event opportunity store 208 may comprise suitable logic, circuitry, and interfaces that may be configured to store a scheduled list of event opportunities (represented by candidate time intervals or on-screen regions in candidate time intervals) in the media content (programming or non-programming). The scheduled list of event opportunities may be received from a scheduler system, the media analysis system 116, or may be generated by the trigger management system 112 based on an analysis of the media content (programming or non-programming). Other operations of the different components of the trigger management system 112 may be understood from FIGS. 3, 4A, 4B, 5 to 7, 8A to 8E, and 9.

FIG. 3 is a flow diagram that illustrates data exchange among the exemplary video and interactive service provider of FIG. 2, an exemplary media content streaming device, and a content producer/primary distributor, in accordance with an embodiment of the disclosure. FIG. 3 is explained in conjunction with elements from FIG. 1 and FIG. 2. With reference to FIG. 3, there is shown a flow diagram 300 that specifies a sequence of data exchange among the video and interactive service provider 110, the client device 132, and the content producer/primary distributor 102, for delivery of different services (e.g., OTT services through internet, services that can be delivered through broadcast networks on devices, such as ATSC smart TVs, presentable services, consumable services, online services, purchase service, or other access independent services or dependent services, etc.) through various client devices.

Initially, as the content producer/primary distributor 102 may have partnerships and established communication channels (based on contractual obligations), with the video and interactive service provider 110, the content producer/primary distributor 102 may transmit media content 302 (programming and/or non-programming) to the video and interactive service provider 110, through the communication network 146. The media content 302 may be transmitted for a media analysis, fingerprinting, digital watermarking, or insertion of trigger identifiers at different event opportunities associated with the media content 302.

The video and interactive service provider 110 may be further configured to package the media content 302 with programming media content, to obtain a media stream 304. The video and interactive service provider 110 may also insert trigger identifiers in the media stream 304 and then transmit the media stream 304 along with a client manifest 306 to the client device 132, via the communication network 146. Thereafter, the client device 132 may be configured to execute the playback of the media content 302, detect trigger identifiers, and further serve different user-selectable options (via overlay graphics or paired/unpaired input devices) to request different services (as described in FIG. 1) for product offerings/service offerings promoted with the playback of the media content 302. A trigger response 308 may be further generated at the client device 132 in response to the user-engagement with served user-selectable options. The client device 132 may be further configured to transmit the trigger response 308 to the video and interactive service provider 110 (regarding further decisioning on what to do over the trigger response 308). In response to the receipt of the trigger response 308, the video and interactive service provider 110 may instruct the fulfillment server 144 to deliver a service (specified in the trigger response 308) though the client device 132 to the user. The fulfillment server 144 may be configured to execute different tasks (e.g., payment, ordering, notifications, etc.) to deliver the requested service through the client device 132.

FIGS. 4A and 4B, collectively depict a first exemplary scenario that illustrates a client-side presentation of overlay graphics and receipt of trigger response over presented overlay graphics, via an input device, in accordance with an embodiment of the disclosure. FIGS. 4A and 4B are explained in conjunction with elements from FIG. 1, FIG. 2, and FIG. 3. With reference to FIGS. 4A and 4B, there is shown a first exemplary scenario that shows two different states at different time instants (i.e., a first state 400A and a second state 400B) in which a purchase service is rendered based on user-options activated while programming media content is streamed and played onto the display 136.

In the first state 400A of FIG. 4A, a user 402 may be engaged in watching programming media content (e.g., a favorite TV show) on a television channel (represented by a channel logo 404). An input device 406 that is paired with the client device 132 may be held in the hand of the user 402. While an advertisement media 408 is played on the channel (represented by the channel logo 404), the client device 132 may present an overlay graphic 410 (represented as a “buy option” in the FIG. 4A) and activate the input device 406 to purchase a product offering 412 promoted in the advertisement media 408 presented onto the display 136.

In second state 400B of FIG. 4B that occurs after the first state 400A of FIG. 4A, upon activation of the input device 406, a notification light 406A on the input device 406 may blink in accordance with a specific pattern. Such blinking may alert the user 402 to act within a duration for which the input device 406 is activated. In an event where the button on the input device 406 is pressed (or selected), the fulfillment server 144 may receive a trigger response (which may include details of the selected product offering 412 and user details (e.g., payment details, delivery address, etc.)). Upon receipt of the trigger response, the fulfillment server 144 may generate an interactive view (i.e., an interactive platform or page) that may be displayed onto the display 136. The interactive view may show the selected product offering 412 getting transferred to a shopping cart 414 and a confirmation message may pop up on the display 136. Upon confirmation, the fulfillment server 144 may be configured to complete a transaction and the selected product offering 412 may be ordered for delivery.

FIG. 5 depicts a second exemplary scenario that illustrates client-side presentation of overlay graphics and receipt of trigger response over presented overlay graphics, via a trigger input rendered on a secondary device paired with client device, in accordance with an embodiment of the disclosure. FIG. 5 is explained in conjunction with elements from FIGS. 1, 2, 3, 4A, and 4B. With reference to FIG. 5, there is shown a second exemplary scenario that shows a state 500 in which a purchase service is rendered based on user-options activated while non-programming media content is streamed and played on the display 136.

In the state 500, a user 502 may be engaged in watching programming media content (e.g., favorite TV show) on a television channel (represented by a channel logo 504), and the non-programming media content may be presented at a certain point in the programming media content. A smartphone 506 (i.e., the secondary device 134) that is paired with the client device 132 may be held in the hand of the user 502. While the non-programming media content, such as an advertisement media 508, is played on the channel (represented by the channel logo 504), an overlay graphic 510 (which is represented by a “graphical button”) is rendered onto the display of the smartphone 506 and the smartphone 506 is activated to purchase a product offering 512 promoted in the advertisement media 508 and presented on the display 136.

Upon activation, the smartphone 506 may respond by generating a notification (e.g., a vibration, a light blink, screen blink, a tone, etc.). Such notifications may alert the user 502 to act within a specified duration for which the smartphone 506 is activated. In an event where the overlay graphic 510 on the smartphone 506 is pressed (or selected), the fulfillment server 144 may receive a trigger response (which may include details of the selected product offering 512 and user details (e.g., payment details, delivery address, etc.)). Upon receipt of the trigger response, the fulfillment server 144 may generate an interactive view (i.e., an interactive platform or interactive page) that may be displayed onto the display 136. The interactive view may show the selected product offering 512 getting transferred to a shopping cart 514 and a confirmation message may pop up on the display 136. Upon confirmation, the fulfillment server 144 may be configured to complete a transaction and the selected product offering 512 may be ordered for delivery. Thus, an advanced system is provided that transforms a transient attention to selective sustained attention for viewed promotional content (e.g. the advertisement media 508 played on the channel) and enables the selected product offering 512, to be purchased, without moving away from the channel (represented by the channel logo 504.

FIG. 6 depicts a third exemplary scenario that illustrates client-side presentation of overlay graphics and receipt of trigger response over presented overlay graphics based on a direct user selection of presented overlay graphics, in accordance with an embodiment of the disclosure. FIG. 6 is explained in conjunction with elements from FIGS. 1, 2, 3, 4A, 4B, and 5. With reference to FIG. 6, there is shown a third exemplary scenario that shows a state 600 in which a purchase service is rendered based on user-options activated while non-programming media content is streamed and played on a touch screen device.

In the state 600, a user 602 may be engaged in watching programming media content (e.g., favorite TV show) on a television channel (represented by a channel logo 604). A tablet 606 (i.e., an integration of the client device 132 and the display 136) may be held in the hand of the user 602. While an advertisement media 608 is played on the channel (represented by the channel logo 604) at a certain point of the programming media content, an overlay graphic 610 (which is represented by a “graphical button”) may be rendered onto the touch display of the tablet 606. Thereafter, the tablet 606 may be activated to purchase a product offering 612 promoted in the advertisement media 608.

Upon activation, the tablet 606 may respond by generating a notification (e.g., a vibration, a light blink, screen blink, a tone, etc.). Such notifications may alert the user 602 to act within a specified duration for which the tablet 606 is activated. In an event where the overlay graphic 610 is selected by a touch input on the touch screen of the tablet 606, the fulfillment server 144 may receive a trigger response (which may include details of the selected product offering 612 and user details (e.g., payment details, delivery address, etc.)). Upon receipt of the trigger response, the fulfillment server 144 may generate an interactive view (i.e., an interactive platform, page, or UI) that may be displayed onto the tablet 606. The page may show the selected product offering 612 getting transferred to a shopping cart 614 and a confirmation message may pop up on the tablet 606. Upon confirmation, the fulfillment server 144 may be configured to complete a transaction and the selected product offering 612 may be ordered for delivery.

FIG. 7 depicts a fourth exemplary scenario that illustrates client-side presentation of overlay graphics and receipt of voice responses over presented overlay graphics, handled by a smart conversational agent, in accordance with an embodiment of the disclosure. FIG. 7 is explained in conjunction with elements from FIGS. 1, 2, 3, 4A, 4B, 5, and 6. With reference to FIG. 7, there is shown a fourth exemplary scenario 700 in which a purchase service is rendered based on activation of a smart conversational agent while programming or non-programming media content is streamed and played onto the display 136.

Initially, a user 702 may be engaged in watching programming media content (e.g., favorite TV show) on a television channel (represented by a channel logo 704). A smart speaker 706 that includes (or is accessible to) a virtual voice assistant may be paired (or may be unpaired but active) with the client device 132. Also, instead of the smart speaker 706, the virtual voice assistant may be active on the secondary device 134. Both the smart speaker and/or the virtual voice assistant may be present in an audible range in the vicinity of the client device 132. The smart speaker 706 may be configured to actively wait and listen for a trigger identifier (e.g., an inaudible beacon) in the audio portion of the programming or non-programming media content. Thereafter, at a certain time point based on the trigger identifier, an advertisement media 708 (or in some cases, a programming media, e.g., a TV show that points to a product placement opportunity) for a product offering 710 is played on the channel (represented by the channel logo 704). The inaudible beacon (i.e., a trigger identifier) present in the audio portion of the advertisement media 708 may be received by the smart speaker 706, via a set of microphones in the smart speaker 706, during playback of the audio portion of the advertisement media 708. Upon receipt of the inaudible beacon, the virtual voice assistant in the smart speaker 706 may detect the inaudible beacon during the playback duration of the advertisement media 708 and facilitate a conversation with the user 702 to receive a trigger response from the user 702.

The virtual conversational agent may start the conversation by describing about the product offering 710 presented onto the display 136. Such conversation may alert the user 702 to act within a duration for which the smart speaker 706 is activated. In an event where a voice response is said by the user 702 to purchase the product offering 710 in the conversation, the virtual conversational agent may confirm an order for the product offering 710 and the client device 132 may display a shopping cart 712 where the product offering 710 is added. In other cases, the virtual conversational agent may confirm an order for the product offering 710 through the conversation with the user 702. The client device 132 may further transfer the voice response from the user 702 as a trigger response to the fulfillment server 144. The fulfillment server 144 may receive a trigger response (which may include details of the selected product offering 710 and user details (e.g., payment details, delivery address, etc.)). Upon receipt of the trigger response, the fulfillment server 144 may be configured to complete a transaction and the selected product offering 710 may be ordered for delivery.

FIGS. 8A, 8B, 8C, 8D, and 8E are flowcharts that collectively illustrate a method for delivery of different services through various client devices, in accordance with an embodiment of the disclosure. FIGS. 8A, 8B, 8C, 8D, and 8E are explained in conjunction with elements from FIGS. 1, 2, 3, 4A, 4B, 5, 6, and 7. With reference to FIGS. 8A, 8B, 8C, 8D, and 8E, there is shown a flowchart. The flowchart may depict a method that starts from 802 and proceeds to 804.

At 804, programming and/or non-programming media content may be transmitted to the video and interactive service provider 110. The content producer/primary distributor 102 may be configured to transmit the programming and/or non-programming media content to the video and interactive service provider 110.

At 806, programming and/or non-programming media content along with the request for media analysis and trigger identifier insertion in the programming and/or non-programming media content may be received. The video and interactive service provider 110 may be configured to receive the programming and/or non-programming media content along with the request for media analysis and trigger identifier insertion in the programming and/or non-programming media content.

At 808, media analysis may be executed on the received programming and/or non-programming media content in response to a request received from the content producer/primary distributor 102. The media analysis system 116 (of the video and interactive service provider 110) may be configured to execute a media analysis on received programming and/or non-programming media content in response to a request received from the content producer/primary distributor 102.

At 810, it may be determined whether it is required to fingerprint or watermark the programming and/or non-programming media content. The video and interactive service provider 110 may be configured to determine whether it is required to fingerprint or watermark the programming and/or non-programming media content. In a case where there is a requirement, control passes to 820. Otherwise, control passes to 812.

At 812, fingerprint information may be generated for the received programming and/or non-programming media content. The fingerprinting system 120 (of the video and interactive service provider 110) may be configured to generate fingerprint information for the received programming and/or non-programming media content.

At 814, watermarks may be inserted in the received programming and/or non-programming media content. The watermarking system 122 may be configured to insert the watermarks in the received programming and/or non-programming media content.

At 816, generated fingerprint information and watermark information may be stored in the watermark/fingerprint/trigger registry 126. The trigger management system 112 (of the video and interactive service provider 110) may be configured to store the generated fingerprint information and watermark information in the watermark/fingerprint/trigger registry 126.

At 818, received programming and/or non-programming media content that is inserted with watermarks along with fingerprint information may be stored in the programming content store 128. The video and interactive service provider 110 may be configured to store the received programming and/or non-programming media content that is inserted with watermarks along with fingerprint information in the programming content store 128.

At 820, trigger identifiers along with the event information for each trigger identifier may be generated for insertion in the programming and/or non-programming media content. The trigger management system 112 (specifically, the trigger scheduler 206) may be configured to generate the trigger identifiers along with the event information for each trigger identifier for insertion in the programming and/or non-programming media content.

At 822, trigger identifiers may be inserted in the media content at different event opportunities. The trigger scheduler 206 (of the trigger management system 112) may be configured to insert the trigger identifiers in the media content (that includes programming and/or non-programming media content) at different event opportunities.

At 824, the event information associated with each trigger identifier may be stored in the watermark/fingerprint/trigger registry 126. The trigger management system 112 may be configured to store the event information associated with each trigger identifier in the watermark/fingerprint/trigger registry 126.

At 826, trigger identifiers or event information associated with a trigger identifier that is inserted in the media content at event opportunities may be added or modified. The video and interactive service provider 110 may be configured to add or modify trigger identifiers or event information associated with a trigger identifier that is inserted in the media content at event opportunities.

At 828, a media stream that includes the packaged media content inserted with the trigger identifiers may be transmitted to the client device 132. The video and interactive service provider 110 may be configured to transmit the media stream that includes the packaged media content (inserted with the trigger identifiers) to the client device 132.

At 830, the media stream that includes the packaged media content inserted with the trigger identifiers may be received at the client device 132. The client device 132 may be configured to receive the media stream that includes the packaged media content (inserted with the trigger identifiers) from the video and interactive service provider 110.

At 832, inserted trigger identifiers may be detected in the playback duration of the programming media content at the client device 132. The client device 132 may be configured to request the content/watermark/trigger recognizer 138 to detect inserted trigger identifiers in the playback duration of the programming media content at the client device 132.

At 834, a request may be transmitted to the watermark/fingerprint/trigger registry 126 to determine event information for one or more detected trigger identifiers. The client device 132 may request the content/watermark/trigger recognizer 138 to request the watermark/fingerprint/trigger registry 126 to determine event information for one or more detected trigger identifiers.

At 836, the request to determine event information for one or more detected trigger identifiers may be received. The video and interactive service provider 110 may be configured to receive the request to determine event information for one or more detected trigger identifiers.

At 838, event information for one or more detected trigger identifiers may be searched in the watermark/fingerprint/trigger registry 126. The trigger management system 112 may be configured to search on event information for one or more detected trigger identifiers in the watermark/fingerprint/trigger registry 126.

At 840, the event information may be communicated to the client device 132 for one or more detected trigger identifiers. The trigger management system 112 may be configured to communicate the event information to the client device 132 for one or more detected trigger identifiers.

At 842, the communicated event information may be received for one or more detected trigger identifiers. The client device 132 may be configured to receive the communicated event information for one or more detected trigger identifiers.

At 844, it may be determined whether it is required to present overlay graphics at event opportunities for which event information is received. The client device 132 may be configured to determine whether it is required to present overlay graphics at event opportunities for which event information is received. In a case where a requirement exists, control passes to 846. Otherwise, control passes to 832.

At 846, a request may be transmitted to the overlay ad server 142 to transmit overlay graphics for received event information on event opportunities. The client device 132 may be configured to transmit the request to the overlay ad server 142 to transmit overlay graphics for received event information on event opportunities.

At 848, the request to transmit overlay graphics for received event information on event opportunities may be received. The overlay ad server 142 may be configured to receive the request to transmit overlay graphics for received event information on event opportunities.

At 850, the overlay graphics may be transmitted along with graphic metadata to the client device 132. The overlay ad server 142 may be configured to transmit the overlay graphics along with graphic metadata to the client device 132.

At 852, the overlay graphics may be rendered as user-selectable options on at least the client device 132 or the secondary device 134 paired with the client device 132, at event opportunities in the programming media content. The client device 132 may be configured to render the overlay graphics as user-selectable options on at least the client device 132 and the secondary device 134 paired with the client device 132, at event opportunities in the programming media content.

At 854, an input device that is in vicinity of the client device 132 or the secondary device 134 may be paired with the client device 132. The client device 132 may be configured to pair an input device that is in vicinity of the client device 132 or the secondary device 134 with the client device 132.

At 856, it may be determined whether it is required to activate the input device or the rendered overlay graphic at event opportunities. The client device 132 may be configured to determine whether it is required to activate the input device or the rendered overlay graphic at event opportunities. In a case where a requirement exists, control passes to 858. Otherwise, control passes to 832.

At 858, the input device may be activated while the overlay graphics are displayed at event opportunities in the playback duration of the programming media content on the client device 132 or the secondary device 134 paired with the client device 132. The client device 132 may be configured to activate the input device while the overlay graphics are displayed at event opportunities in the playback duration of the programming media content on the client device 132 or the secondary device 134 paired with the client device 132.

At 860, one or more trigger responses may be received for one or more event opportunities, via the activated input device or rendered overlay graphics. The client device 132 may be configured to receive the one or more trigger responses for one or more event opportunities, via the activated input device or rendered overlay graphics.

At 862, a request may be transmitted to the fulfillment server 144 to deliver services based on received one or more trigger responses. The client device 132 may be configured to transmit the request to the fulfillment server 144 to deliver services (e.g., direct purchase of a product offering promoted by a non-programming asset on the client device 132) based on received one or more trigger responses.

At 864, the request may be received from the client device 132 for delivery of services based on received one or more trigger responses. The fulfillment server 144 may be configured to receive the request from the client device 132 for delivery of services based on received one or more trigger responses.

At 866, services may be delivered in response to the received one or more trigger responses on event opportunities in the programming media content. The fulfillment server 144 may be configured to deliver services in response to the received one or more trigger responses on event opportunities in the programming media content.

At 868, one or more notifications may be delivered on at least one of the client device 132 or the secondary device 134 paired with the client device 132, in response to the delivery of services or received trigger responses. The fulfillment server 144 may be configured to deliver one or more notifications on at least one of the client device 132 or the secondary device 134 paired with the client device 132, in response to the delivery of services or received trigger responses. Control passes to end.

FIG. 9 is a conceptual diagram that illustrates an example of a hardware implementation for the trigger management system of FIG. 1 that employs a processing system for delivery of different services through various client devices, in accordance with an exemplary embodiment of the disclosure. In FIG. 9, the hardware implementation is shown by a representation 900 for the trigger management system 112 that employs a processing system 902 for management and delivery of services on a distribution network, in response to one or more event triggers, in accordance with an exemplary embodiment of the disclosure, as described herein. In some examples, the processing system 902 may comprise one or more hardware processors 904, a non-transitory computer-readable medium 906, the content recognizer 204, the trigger scheduler 206, the event opportunity store 208, the fingerprinting system 120, and the watermarking system 122.

In this example, the trigger management system 112 that employs the processing system 902 may be implemented with bus architecture, represented generally by a bus 908. The bus 908 may include any number of interconnecting buses and bridges depending on the specific implementation of the trigger management system 112 and the overall design constraints. The bus 908 links together various circuits including the one or more processors, represented generally by the hardware processor 904, the non-transitory computer-readable media, represented generally by the non-transitory computer-readable medium 906, the content recognizer 204, the trigger scheduler 206, the event opportunity store 208, the fingerprinting system 120, and the watermarking system 122 which may be configured to carry out one or more operations or methods described herein. A bus interface 910 renders an interface between the bus 908 and a transceiver 912. The transceiver 912 facilitates communication via the communication network 146 (FIG. 1) with various other apparatus, such as the content producer/primary distributor 102, the client device 132, and the secondary device 134.

The hardware processor 904 may be configured to manage the bus 908 and general processing, including the execution of a set of instructions stored on the non-transitory computer-readable medium 906. The set of instructions, when executed by the hardware processor 904, causes the trigger management system 112 to execute the various functions described herein for any particular apparatus. The non-transitory computer-readable medium 906 may also be used for storing data that is manipulated by the hardware processor 904 when executing the set of instructions. The non-transitory computer-readable medium 906 may also be configured to store data for one or more of the content recognizer 204, the trigger scheduler 206, the event opportunity store 208, the fingerprinting system 120, and the watermarking system 122.

In an aspect of the disclosure, the hardware processor 904, the non-transitory computer-readable medium 906, or a combination of both may be configured or otherwise specially programmed to execute the operations or functionality of the content recognizer 204, the trigger scheduler 206, the event opportunity store 208, the fingerprinting system 120, and the watermarking system 122, or various other components described herein. For example, the hardware processor 904, the non-transitory computer-readable medium 906, or a combination of both may be configured or otherwise specially programmed to perform the operations and functionality of the content recognizer 204, the trigger scheduler 206, the event opportunity store 208, the fingerprinting system 120, and the watermarking system 122 as described with respect to FIGS. 1, 2, 3, 4A, 4B, 5, 6, 7, 8A, 8B, 8C, 8D, and 8E.

The “OTT services” are services that allows at least one of the video and interactive service provider 110 or the interactive service provider partners 148 to render audio, video, and other media services (for example, purchase, payment, social sharing, or reverse bidding on products advertised in advertisements) to a consumer over the internet via streaming media, bypassing telecommunications, cable or broadcast television service providers that traditionally act as a controller or distributor of such content. Further, an entity that delivers the OTT service may not own a distribution network through which the OTT service is delivered. In some cases, an entity that delivers the OTT service may partially or completely own a distribution network through which the OTT service is delivered. For example, an entity that delivers the OTT service may deliver the OTT service through a network owned by a different service provider.

As utilized herein the terms “circuits” and “circuitry” refer to physical electronic components (i.e. hardware) and any software and/or firmware (“code”) which may configure the hardware, be executed by the hardware, and/or otherwise be associated with the hardware. As used herein, for example, a particular processor and memory may comprise a first “circuit” when executing first one or more lines of code and may comprise a second “circuit” when executing second one or more lines of code. As utilized herein, “and/or” means any one or more of the items in the list joined by “and/or”. As an example, “x and/or y” means any element of the three-element set {(x), (y), (x, y)}. As another example, “x, y, and/or z” means any element of the seven-element set {(x), (y), (z), (x, y), (x, z), (y, z), (x, y, z)}. As utilized herein, the term “exemplary” means serving as a non-limiting example, instance, or illustration. As utilized herein, the terms “e.g. and for example” set off lists of one or more non-limiting examples, instances, or illustrations. As utilized herein, circuitry is “operable” to perform a function whenever the circuitry comprises the necessary hardware and code (if any is necessary) to perform the function, regardless of whether performance of the function is disabled, or not enabled, by some user-configurable setting.

The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of embodiments of the present disclosure. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises”, “comprising,”, “includes” and/or “including”, when used herein, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.

Further, many embodiments are described in terms of sequences of actions to be performed by, for example, elements of a computing device. It will be recognized that various actions described herein can be performed by specific circuits (e.g., application specific integrated circuits (ASICs)), by program instructions being executed by one or more processors, or by a combination of both. Additionally, these sequence of actions described herein can be considered to be embodied entirely within any non-transitory form of computer readable storage medium having stored therein a corresponding set of computer instructions that upon execution would cause an associated processor to perform the functionality described herein. Thus, the various aspects of the present disclosure may be embodied in a number of different forms, all of which have been contemplated to be within the scope of the claimed subject matter. In addition, for each of the embodiments described herein, the corresponding form of any such embodiments may be described herein as, for example, “logic configured to” perform the described action.

Another embodiment of the present disclosure may provide a non-transitory machine and/or computer readable storage and/or media, having stored thereon, a machine code and/or a computer program having at least one code section executable by a machine and/or a computer, thereby causing the machine and/or computer to perform the steps as described herein to obtain a global workflow sequence.

The present disclosure may also be embedded in a computer program product, which comprises all the features enabling the implementation of the methods described herein, and which when loaded in a computer system is able to carry out these methods. Computer program in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: a) conversion to another language, code or notation; b) reproduction in a different material form.

Further, those of skill in the art will appreciate that the various illustrative logical blocks, modules, circuits, algorithm, and/or steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, firmware, or combinations thereof. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.

The methods, sequences and/or algorithms described in connection with the embodiments disclosed herein may be embodied directly in firmware, hardware, in a software module executed by a processor, or in a combination thereof. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor.

While the present disclosure has been described with reference to certain embodiments, it will be noted understood by, for example, those skilled in the art that various changes and modification could be made and equivalents may be substituted without departing from the scope of the present disclosure as defined, for example, in the appended claims. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the present disclosure without departing from its scope. The functions, steps, and/or actions of the method claims in accordance with the embodiments of the present disclosure described herein need not be performed in any particular order. Furthermore, although elements of the present disclosure may be described or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated. Therefore, it is intended that the present disclosure not be limited to the particular embodiment disclosed, but that the present disclosure will include all embodiments falling within the scope of the appended claims.

Claims

1. A system, comprising:

one or more processors in a video and interactive service provider that handles delivery of a service through a client device or a secondary device paired with the client device, wherein the one or more processors are configured to: insert a plurality of trigger identifiers at a plurality of event opportunities in media content that comprises programming media content and non-programming media content, and wherein the plurality of event opportunities corresponds to a plurality of candidate time intervals in a playback duration of the media content; and transmit a media stream of the media content to the client device, wherein the client device comprises a processor, wherein the processor is configured to: detect the inserted plurality of trigger identifiers in the media content in the playback duration of the media content at the client device; render a plurality of overlay graphics on the media content within the plurality of candidate time intervals in the media content in response to the detection of the inserted plurality of trigger identifiers; activate at least one of one or more input devices in a vicinity of the client device or the rendered plurality of overlay graphics, wherein at least one of the one or more input devices is paired with the client device or the secondary device; receive one or more trigger responses over an activated overlay graphic rendered on the media content in the playback duration, via the activated one or more input devices; and display an interactive view on the client device, to enable delivery of at least one service in response to the received one or more trigger responses, wherein the delivery of the at least one service is enabled at the client device in communication with a fulfillment server that fulfills the delivery of the at least one service to increase a user engagement to select the at least one service.

2. The system according to claim 1, wherein the one or more processors in the video and interactive service provider are further configured to receive a request for analysis of the media content, wherein the request for the analysis is followed by an insertion of the plurality of trigger identifiers at the plurality of event opportunities in the media content.

3. The system according to claim 1, wherein the one or more processors in the video and interactive service provider are further configured to:

fingerprint the programming media content and the non-programming media content; and
generate fingerprint information for the programming media content and the non-programming media content, wherein the fingerprint information comprises at least one of acoustic fingerprint information and video fingerprint information for different segments of the programming media content and the non-programming media content, and wherein the different segments comprises audio frames or image frames of the programming media content and the non-programming media content.

4. The system according to claim 1, wherein the one or more processors in the video and interactive service provider are further configured to insert at least one of a plurality of digital watermarks into an audio portion or a video portion of the media content or a plurality of digital fingerprints of the audio portion or the video portion of the media content, at the plurality of event opportunities in the media content.

5. The system according to claim 4, wherein the one or more processors in the video and interactive service provider are further configured to generate watermark information that comprises metadata for at least one of an acoustic watermark or a video watermark inserted between different fragments of the non-programming media content, wherein the generated watermark information corresponds to at least digital watermark inserted into the audio portion or the video portion of the non-programming media content.

6. The system according to claim 4, wherein the processor in the client device is further configured to detect at least one of the inserted plurality of digital watermarks or the plurality of digital fingerprints in the playback duration of the media content through at least one of the client device or the secondary device.

7. The system according to claim 6, wherein the detection is executed on at least one of the client device or at a proxy server that operates, on behalf of the client device, as an intermediary server operating between the client device and the video and interactive service provider.

8. The system according to claim 1, wherein each event opportunity of the plurality of event opportunities corresponds to a specified event in the media content and the specified event corresponds to at least one of start credits, end credits, lull points, time-based marked regions, location-based marked regions, context-based marked regions, explicit scene start and end, and product placement opportunities, within the media content.

9. The system according to claim 1, wherein each trigger identifier of the plurality of trigger identifiers is at least one of Society of Cable and Telecom Engineers (SCTE) 35 triggers, playlists, manifest tags, SCTE-104 triggers, Nielsen ID3 tags, inaudible beacons, image beacons, and data beacons.

10. The system according to claim 1, wherein the processor in the client device is further configured to pair up the one or more input devices available in vicinity of the client device or the secondary device paired with the client device, wherein the one or more input devices are paired via at least one of a Bluetooth network, a Wi-Fi network, an internet-based network, a wired local network, and a wireless ad hoc network.

11. The system according to claim 1, wherein the input device is enabled with a virtual voice assistant on at least one of the client device or the secondary device.

12. The system according to claim 11, wherein the input device is enabled with the virtual voice assistant that is configured to actively wait and listen for a trigger identifier in an audio portion of the media content.

13. The system according to claim 11, the processor in the client device is further configured to:

instruct the virtual voice assistant on the input device, to detect at least one beacon within the playback duration of the media content; and
facilitate a conversation with a user associated with the client device, to receive a trigger response from the user, wherein the trigger response is received through a user's speech input.

14. The system according to claim 1, wherein the non-programming media content comprises promotional media content for at least one of a product offering or a service offering, and wherein the promotional media content comprises at least one of graphical content, textual content, video content, or animated content.

15. The system according to claim 1, wherein the at least one service comprises at least one of a direct payment, a direct transaction, or a direct notification for selected at least one product offering or at least one service offering, and a direct update of the selected at least one product offering or the at least one service offering on a shopping cart, a personalized list, or a social platform.

16. The system according to claim 1, wherein the processor in the client device is further configured to execute a check to decide whether to activate at least one of the paired one or more input devices from a set of input devices or the render plurality of overlay graphics.

17. The system according to claim 16, wherein the decision is based on the check executed on a defined criteria, which is associated with records of previous service requests for the plurality of event opportunities on which the at least one service was delivered in past, wherein the defined criteria comprises at least one of a user-defined constraint, an inventory constraint, and a specified threshold count of trigger responses for a product offering or a service offering promoted by the non-programming media content.

18. The system according to claim 1, the one or more processors in the video and interactive service provider are further configured to instruct a delivery of at least one notification on at least one of the client device or the secondary device paired with the client device, in response to the received one or more trigger responses.

19. The system according to claim 1, wherein the one or more trigger responses corresponds to one or more user interactions that are received based on at least one of a touch input, a gesture input, a haptic input and a voice command input.

20. A method, comprising:

in a system that includes a video and interactive service provider that handles delivery of a service through a client device or a secondary device paired with the client device and the client device: inserting, by one or more processors of the video and interactive service provider, a plurality of trigger identifiers at a plurality of event opportunities in media content that comprises programming media content and non-programming media content, and wherein the plurality of event opportunities corresponds to a plurality of candidate time intervals in a playback duration of the media content; transmitting, by the one or more processors, a media stream of the media content to the client device; detecting, by a processor of the client device, the inserted plurality of trigger identifiers in the media content in the playback duration of the media content at the client device; rendering, by the processor, a plurality of overlay graphics on the media content within the plurality of candidate time intervals in the media content in response to the detection of the inserted plurality of trigger identifiers; activating, by the processor, at least one of one or more input devices in vicinity of the client device or the rendered plurality of overlay graphics, wherein at least one of the one or more input devices is paired with the client device or the secondary device; receiving, by the processor, one or more trigger responses over an activated overlay graphic rendered on the media content in the playback duration, via the activated one or more input devices; and displaying, by the processor, an interactive view on the client device, to enable delivery of at least one service in response to the received one or more trigger responses, wherein the delivery of the at least one service is enabled at the client device in communication with a fulfillment server that fulfills the delivery of the at least one service to increase a user engagement to select the at least one service.
Patent History
Publication number: 20180343476
Type: Application
Filed: May 24, 2018
Publication Date: Nov 29, 2018
Inventors: Donald Jude Loheide (Mableton, GA), Matthew Paul Giles (Marietta, GA), Gregory Mcclain Stigall (Douglasville, GA), Nishith Kumar Sinha (Mableton, GA), Cindy Loren Campbell (Atlanta, GA), James J. Arnzen (Atlanta, GA), Nicolas Paul Webb (Mcdonough, GA)
Application Number: 15/988,572
Classifications
International Classification: H04N 21/234 (20060101); H04N 21/431 (20060101); H04N 21/81 (20060101); H04N 21/2389 (20060101); H04N 21/2387 (20060101); H04N 21/233 (20060101); H04N 21/8545 (20060101); H04N 21/478 (20060101);