Patent Publication Number: US-10313726-B2

Title: Distributing media content via media channels based on associated content being provided over other media channels

Description:
TECHNICAL FIELD 
     This disclosure relates generally to computer-implemented methods and systems and more particularly relates to distributing or otherwise providing access to media content via a media channel based on associated content being provided over a different media channel. 
     BACKGROUND 
     Media providers provide or otherwise manage access to media content channels. For example, a user may have a subscription to a cable television provider or other multi-channel media provider. The subscription allows a user to access multiple channels of media content from different media providers (e.g., a news channel, a cooking channel, a movie channel, etc.) via the cable television provider. Some providers of media content may provide access to media content over the Internet in addition to providing televised content. For example, a news organization may broadcast news programs over a cable television channel and provide access to the same or similar news programs via the news organization&#39;s website. 
     Users may simultaneously access media content via different media channels. For example, a user may browse the Internet on a laptop computer while also viewing television programming on a television. Advertisers and other content providers may wish to maximize views of advertisements and other media content on different devices. 
     It is therefore desirable to facilitate the simultaneous provision of related or associated items of media content over different media channels. 
     SUMMARY 
     According to certain aspects, a notification facilitation system can provide access to media content via a media channel (e.g., a website accessed by a computing device) based on associated content being provided over a different channel (e.g., a cable television channel). For example, the notification facilitation system can determine that a media identifier corresponds to media content that is being provided via a first media channel. Based on determining the correspondence between the media identifier and the media content provided over the first media channel, the notification facilitation system can identify multiple computing devices that have been configured to receive additional media content that is associated with the first media content. The notification facilitation system can provide access to the additional media content by the identified computing devices via a second media channel. 
     These illustrative aspects are mentioned not to limit or define the disclosure, but to provide examples to aid understanding thereof. Additional aspects and examples are discussed in the Detailed Description, and further description is provided there. 
    
    
     
       BRIEF DESCRIPTION OF THE FIGURES 
       These and other features, embodiments, and advantages of the present disclosure are better understood when the following Detailed Description is read with reference to the accompanying drawings, where: 
         FIG. 1  is a block diagram that depicts an example of a system for detecting specified media content being provided over a first media channel and facilitating the provision of associated media content over a second media channel according to certain aspects; 
         FIG. 2  is a modeling diagram that depicts an example of a notification facilitation system of  FIG. 1  providing primary media data to a detection system for detecting specified primary media content according to certain aspects; 
         FIG. 3  is a modeling diagram that depicts an example of the detection system of  FIGS. 1 and 2  detecting the specified primary media content according to certain aspects; 
         FIG. 4  is a modeling diagram that depicts an example of the detection system of  FIGS. 1-3  providing a detection event that describes the detected primary media content to the notification facilitation system according to certain aspects; 
         FIG. 5  is a modeling diagram that depicts an example of the notification facilitation system of  FIGS. 1-4  providing secondary media data to a computing device that can be used to retrieve secondary media content from a secondary media provider according to certain aspects; 
         FIG. 6  is a flow chart illustrating an example of a method for providing access to media content via a media channel based on associated content being provided over a different media channel according to certain aspects; 
         FIG. 7  is a modeling diagram that depicts an example of a computing device detecting primary media content presented by a media device that is near the computing device according to certain aspects; 
         FIG. 8  is a modeling diagram that depicts an example of a detection system providing a detection event that describes the detected primary media content to the computing device of  FIG. 7  according to certain aspects; 
         FIG. 9  is a modeling diagram that depicts the computing device of  FIG. 7  providing the detection event of  FIG. 8  to a notification facilitation system according to certain aspects; 
         FIG. 10  is a modeling diagram that depicts an example of the notification facilitation system of  FIG. 9  providing secondary media data to the computing device of  FIG. 7  that can be used to retrieve secondary media content from a secondary media provider according to certain aspects; and 
         FIG. 11  is a block diagram that depicts example systems for implementing certain aspects. 
     
    
    
     DETAILED DESCRIPTION 
     Computer-implemented systems and methods are disclosed for distributing or otherwise providing access to media content via a media channel based on associated content being provided over a different media channel. For example, a server system may determine that advertising content is being transmitted via a cable television channel and instruct a computing device to access other advertising content over the Internet that is related to the advertising content being transmitted via the cable television channel. Thus, if a user views the cable television channel on a television while also browsing the Internet with the computing device, related advertising content may simultaneously displayed on both the television screen and the computer screen. 
     In accordance with some aspects, a notification facilitation system can determine that a media identifier corresponds to media content that is being provided via a first media channel. In one non-limiting example, a notification facilitation system determines the correspondence based on receiving an electronic communication indicative of the correspondence from a remote computing system. For instance, the remote computing system may execute an automatic content recognition process for analyzing media content provided via the first media channel and determining that a fingerprint of the media content matches a reference fingerprint. In another non-limiting example, the notification facilitation system can perform the automatic content recognition process. Based on the correspondence between the media identifier and the media content provided over the first media channel, the notification facilitation system can identify multiple computing devices that have been configured to receive additional media content that is associated with the first media content. In a non-limiting example, the notification facilitation system may determine that advertising content being transmitted via a cable television channel corresponds to a reference fingerprint and may identify computing devices that are configured to receive related advertising content over the Internet. The notification facilitation system can provide access to the additional media content via a second media channel by the identified computing devices in response to identifying the plurality of computing devices. In some aspects, providing access to the additional media content can involve transmitting information to the identified computing devices that can be used to retrieve the additional media content (e.g., a uniform resource locator (“URL”)). A media application executed at a computing device can retrieve and execute the additional media content. In additional or alternative aspects, providing access to the additional media content can involve transmitting the additional media content to the computing devices. 
     As used herein, the term “media content” is used to refer to electronic content that is transmitted by a media provider over a media channel. Non-limiting examples of media content can include image content, video content, audio content, textual content, or some combination thereof. For example, media content can include online advertising content that is streamed or otherwise provided from a website to a computing device. 
     As used herein, the term “media identifier” is used to refer to data that is used to uniquely identify or otherwise reference specific content provided by a media provider. Non-limiting examples of media identifiers include video or audio fingerprints, watermarks, alphanumeric identifiers, etc. 
     As used herein, the term “media channel” is used to refer to any manner of delivering media content to a computing device or other media device (e.g., a television). In one non-limiting example, a media channel may be a television channel. In another non-limiting example, a media channel may be a website hosted by a provider of media content, such as a website that provides online access to news programs that are also provided over a television channel. In another non-limiting example, a media channel may be a section of a website that is used to host content by a specific media content provider. For example, a cable television provider may host a website that includes a first section for content provided by a news channel, a second section for content provided by a movie channel, etc. 
     As used herein, the term “media provider” is used to refer to an entity or service that can provide electronic media content over one or more media channels. Non-limiting examples of electronic media content include video content, audio content, etc. In some aspects, the media provider may provide access to multiple media channels over different types of communication networks. For example, a cable television provider may provide televised media content that is accessible via a cable television channel and online media content that is accessible via a website. 
     As used herein, the term “media application” is used to refer to any application that can be used to display, execute, or otherwise use media content provided via a media channel. In some aspects, a media application can access media content over different channels. For example, a web browser application may access media content from different channels over different websites. In additional or alternative aspects, a media application can be an application that is designed for accessing media content over specific channels. In a non-limiting example, a provider of online video content (e.g., a news website) may provide an application (e.g., “NewsTV”) that can be installed on a computing device and used specifically to access video content from only that provider. In some aspects, such a media application may be a native application that is specifically configured to access content from a given media channel and, unlike a web browser, may be unable to access content from other media channels. 
     Referring now to the drawings,  FIG. 1  is a block diagram that depicts an example of a system for detecting specified media content being provided over a first media channel and facilitating the provision of associated media content over a second media channel. The system depicted in  FIG. 1  can include a notification facilitation system  102  that can communicate with one or more primary media providers  110 , a detection system  112 , one or more computing devices  114 , and one or more secondary media providers  116 . The various systems and devices depicted in  FIG. 1  can communicate data via a network  118  such as the Internet or other suitable data network. 
     As used herein, the terms “primary media content” and “primary media provider” are used to refer to media content transmitted over a monitored media channel and an entity providing the transmitted media content, respectively. The terms “secondary media content” and “secondary media provider” are used to refer to additional media content transmitted over an additional media channel in response to a detection of primary media content being transmitted over the monitored media channel and an entity providing the additional media content, respectively. A non-limiting example of primary and/or secondary media content is advertising content. Although  FIG. 1  depicts the primary media provider  110  and the secondary media provider  116  as separate functional blocks, other implementations are possible. For example, the same media provider may transmit both primary content over a first media channel (e.g., a television channel) and secondary content over a second media channel (e.g., an Internet connection). 
     The notification facilitation system  102  can facilitate the delivery of secondary media content to the computing device  114  via a media channel of the network  118  (e.g., an Internet connection) simultaneously or near simultaneously with primary content being transmitted over a media channel of the network  124  (e.g. a television channel). In some aspects, the notification facilitation system  102  can include a server system or a group of server systems configured for cloud computing. Non-limiting examples of a computing device  114  include a laptop computer, a tablet computer, a smart phone, or any other suitable device that can execute a media application  120  for executing, displaying, or otherwise using media content from the secondary media provider  116 . As described herein, the secondary media content from the secondary media provider  116  can be selected based on the secondary media content being related to or otherwise associated with primary media content that can be provided to a media device  126  via another media channel (e.g., a cable television connection) of the network  124 . 
     The performance of this selection can be at least partially automated such that access to the secondary media content can be provided simultaneously or nearly simultaneously with at least some of the primary content being transmitted over a media channel of the network  124 . Providing secondary media content simultaneously or nearly simultaneously with at least some of the primary content being transmitted over a media channel of the network  124  can allow related content accessible via different types of media channels to be presented simultaneously on different types of devices. 
     The notification facilitation system  102  can include one or more processing devices that execute program instructions for facilitating the delivery of secondary media content to the computing device  114 . The program instructions stored at or accessible by the notification facilitation system  102  can include one or more software modules. For example,  FIG. 1  depicts a matching module  104 , a mapping module  106 , and a notification module  108 . The matching module  104 , the mapping module  106 , and the notification module  108  can be used to generate and communicate data with other systems accessible via the network  118 . Although  FIG. 1  depicts the matching module  104 , the mapping module  106 , and the notification module  108  as separate modules for illustrative purposes, other implementations are possible. For example, one or more functions performed by the matching module  104 , the mapping module  106 , and the notification module  108  may be performed by a common module, application, or other set of program instructions. 
     The notification facilitation system  102  can also include one or more non-transitory computer-readable media for storing primary media data  105 , secondary media data  107 , and subscription data  109 . The primary media data  105 , the secondary media data  107 , and/or the subscription data  109  can be stored as databases or other suitable data structures. 
     The primary media data  105  can include media identifiers that can be used for referencing different primary media content provided by the primary media provider  110 . A media identifier can be any data that can uniquely identify or otherwise reference specific media content provided by the primary media provider  110 . Non-limiting examples of these media identifiers include video or audio fingerprints, watermarks, etc. 
     The matching module  104  can be used to add data to and retrieve data from the primary media data  105 . For example, a management interface can be presented at the notification facilitation system  102  or a computing device in communication with the notification facilitation system  102 . The management interface can be used for adding data to the primary media data  105 . For example, the management interface can be used to upload or otherwise identify primary media content to the notification facilitation system  102 . The matching module  104  or another suitable module executed by the notification facilitation system  102  can assign, generate, or otherwise obtain a media identifier for the primary media content that is uploaded or otherwise identified using the management interface. 
     In a non-limiting example, a fingerprinting module can generate reference fingerprints from a media content. The fingerprinting module can be notified of media content (e.g., videos) to be fingerprinted from a queue managed by a management module of the notification facilitation system  102 . The fingerprinting module can download or otherwise access the media content identified in the queue. The fingerprinting module can generate a reference fingerprint (e.g., an audio fingerprint) that can be used by the detection application  113  (e.g., a fingerprint generated using a selected automatic content recognition technology). The matching module  104  can store the generated fingerprint in the primary media data  105 . In some aspects, the generated fingerprint can be associated with identifiers for one or more secondary media content items (e.g., an identifier for one or more advertising campaigns). 
     The secondary media data  107  can include data that can be used to request, retrieve, or otherwise obtain specific secondary media content items from the secondary media provider  116 . Non-limiting examples of the secondary media data  107  include one or more of an identifier of an advertisement or other secondary media content item, account information for a secondary media provider  116  that provides secondary media content, visual characteristics of secondary media content items (e.g., width, height, etc.), a type of application programming interface used to access the advertisement or other secondary media content item (e.g., Open Rich Media Mobile Advertising (“ORMMA”), Mobile Rich Media Ad Interface Definitions (“MRAID”), etc.). 
     The mapping module  106  can be used to add data to and retrieve data from the secondary media data  107 . For example, a management interface can be presented at the notification facilitation system  102  or a computing device in communication with the notification facilitation system  102 . The management interface can be used for accessing the mapping module  106  and thereby adding data to the secondary media data  107 . 
     The subscription data  109  can include data describing or otherwise identifying account information used by computing devices  114  to access the notification facilitation system  102 . The subscription data  109  can be used by the notification module  108  to determine whether to transmit (or facilitate the transmission of) secondary media content to a given computing device  114 . Non-limiting examples of account information may include one or more of an identifier for the computing device  114  (e.g., a network address, a hardware identifier, etc.), an identifier for a user of a computing device  114  (e.g., a user name, an account number, etc.), hardware characteristics of the computing device  114  (e.g., device type, screen size, etc.), an application type for the media application  120  or a type of primary media content accessed by the media application  120 , an identifier of a secondary media provider  116  from which the media application  120  receives secondary media content, etc. The notification module  108  can also be used to add data to and retrieve data from the subscription data  109 . For example, a management interface can be presented at the notification facilitation system  102  or a computing device in communication with the notification facilitation system  102 . 
     The primary media provider  110  can include any system or group of systems that is programmed or otherwise configured for providing primary media content via one or more of the networks  118 ,  124 . For example, the primary media provider  110  can be a cable news channel or other provider of televised content. The primary media provider  110  can provide programming over a cable television network  124  and provide the same or different programming over a data network  118 , such as the Internet. Although  FIG. 1  depicts separate networks  118 ,  124  for illustrative purposes, other implementations are possible. In additional or alternative aspects, the primary media provider  110  may provide different types of media content via different media channels of the same network. For example, the primary media provider  110  may provide different types of media content via different media channels over a network  118  such as the Internet to both the computing device  114  and the media device  126  (e.g., another computing device, a television configured to communicate via the Internet, etc.). 
     The detection system  112  can include any system or group of systems that is programmed or otherwise configured for executing a detection application  113 . The detection application  113  can monitor and detect primary media content provided over a media channel of the network  124  by the primary media provider  110 . As described in detail herein, the detection application  113  can perform one or more operations that identify primary media content in this media channel that matches one or more fingerprints, watermarks, or other suitable media identifiers. The detection application  113  can provide data to the notification facilitation system  102  that describes the identified primary media content. In some aspects, the notification facilitation system  102  can respond to receiving this data from the detection system  112  by providing secondary media data to the computing device  114 . The computing device can use the provided secondary media data (e.g., an identifier of an advertisement) to retrieve secondary media content (e.g., a video advertisement, a banner advertisement, etc.) from the secondary media provider  116 . In additional or alternative aspects, the notification facilitation system  102  can respond to receiving the data from the detection system  112  by providing the secondary media content to the computing device  114  without the computing device  114  having to retrieve the secondary media content from the secondary media provider  116 . 
     Although  FIG. 1  depicts the notification facilitation system  102  and detection system  112  as separate systems for illustrative purposes, other implementations are possible. For example, in some aspects, the same computing system or group of computing systems can perform one or more functions of both the notification facilitation system  102  and the detection system  112 . Such a computing system or group of computing systems can execute program instructions for performing one or more functions of the matching module  104 , the mapping module  106 , the notification module  108 , the detection application  113 , or some combination thereof. 
     The secondary media provider  116  can include any system or group of systems that is programmed or otherwise configured for providing primary media content via the network  118 . In a non-limiting example, the secondary media provider  116  can provide online advertising content to the computing device over the Internet. Although  FIG. 1  depicts the notification facilitation system  102  and the secondary media provider  116  as separate functional blocks for illustrative purposes, other implementations are possible. For example, in additional or alternative aspects, the same computing system or group of computing systems can perform one or more functions of both the notification facilitation system  102  and the secondary media provider  116 . 
     For aspects in which the notification facilitation system  102  and detection system  112  are separate systems, the notification facilitation system  102  can provide data to the detection system  112  that identifies the primary media content for which the detection system  112  should monitor the network  124 . For example,  FIG. 2  is a modeling diagram that depicts the notification facilitation system  102  providing primary media data to the detection system  112 . The primary media data can include one or more primary media records  202 . For example, the matching module  104  can retrieve primary media records  202  from the primary media data  105  and electronically transmit the primary media records  202  in a database or other suitable data structure to the detection application  113  via a data network  118 . 
     In some aspects, each of the media records can include a record identifier  204  and at least one media identifier  206 , as depicted in  FIG. 2 . The record identifier  204  can be an alphabetical, numeric, or alphanumeric string that can be used by the notification facilitation system  102  to uniquely identify different media fingerprints or other media identifiers in a database or other data structure. The media identifier  206  can be a fingerprint, watermark, or other data that the detection application  113  can use to identify specific primary media content. In response to identifying this primary media content, the detection application  113  can notify the notification facilitation system  102  that the primary media content has been detected by transmitting a message with the record identifier  204  to the matching module  104  via the data network  118 . In additional or alternative aspects, each of the media records  202  can include a record identifier  204  and the media content or a portion thereof for which the detection application  113  is to monitor a media channel. For example, a media record  202  can include a video and a unique identifier for the video. The detection application  113  can execute one or more processes that generate a media identifier for the video (e.g., a fingerprint). The detection application  113  can use the generated media identifier to monitor the media channel. 
     The detection system  112  can monitor one or more media channels to detect or otherwise identify primary media content being provided by the primary media provider  110  over a monitored media channel. For example,  FIG. 3  is a modeling diagram that depicts an example of the detection system  112  detecting primary media content. The detection system  112  can be communicatively coupled to the primary media provider  110  via the network  124  (e.g., a cable television network). The detection system  112  can receive primary media content  302  from the primary media provider  110  via the network  124 . One or more processing devices of the detection system  112  can execute the detection application  113  to compare the received primary media content  302  to one or more of the media identifiers  206  received from the notification facilitation system  102 . 
     If the detection system  112  determines that the media content  302  matches or otherwise corresponds to a media identifier  206 , the detection system  112  can generate a detection event  402  and transmit the detection event  402  to the notification facilitation system  102 , as depicted in  FIG. 4 . The detection event  402  can be transmitted using any suitable electronic communication, such as (but not limited to) a Hypertext Transfer Protocol (“HTTP”) message. The detection event  402  can describe or otherwise identify the detected primary media content  302 . For example, the detection event  402  depicted in  FIG. 4  includes a record identifier  204  retrieved from a primary media record  202  (which the notification facilitation system  102  previously provided to the detection system  112 ) and a provider identifier  404  that identifies the primary media provider  110  from which the media content  302  was received (e.g., a television channel used to transmit the media content  302 ). 
     The notification facilitation system  102  can determine from the detection event  402  that specific primary media content has been or is being provided via a monitored media channel by a specific primary media provider  110 . The matching module  104  can use the record identifier  204  to access a media identifier for the primary media content from the primary media data  105 . The matching module  104  can use the provider identifier  404  received from the detection system  112  to identify the primary media provider  110  that is providing (or that has provided) the primary media content. 
     The notification facilitation system  102  can respond to receiving the detection event  402  by providing secondary media data to the computing device  114 , as depicted in  FIG. 5 . The matching module  104  can provide a notification command  502  to the notification module  108  to identify one or more computing devices  114  that are to receive secondary media data that includes (or can be used to retrieve) secondary media content that relates to or is otherwise associated with the detected primary media content  302 . 
     The notification module  108  can access the subscription data  109  to determine that the computing device  114  uses a media application  120  configured for executing or otherwise using the detected primary media content  302 . For example, the provider identifier  404  may identify a primary media provider  110  such as “NewsTV.” A record in the subscription data  109  may indicate that a given computing device  114  has a media application  120  such as “NewsTV Mobile” that is used to access media content from the primary media provider  110 . The notification module  108  can thus determine that secondary media data is to be provided to the computing device  114  identified in the subscription data  109 . 
     The notification module  108  can request secondary media data from the mapping module  106 . For example, the mapping module  106  can receive the provider identifier  404  from the matching module  104  or the notification module  108  and can receive information about the computing device  114  (e.g., device type, screen size, etc.) from the notification module  108 . The mapping module  106  can retrieve, generate, or otherwise obtain secondary media data  504  based on the provider identifier  404  and the information about the computing device  114 . For example, the mapping module  106  can retrieve an identifier for a secondary content item (e.g., a marketing campaign, an advertisement identifier, etc.) that is associated with the primary media provider  110  or the detected media content  302  and that can be displayed on the computing device  114  (e.g., an advertisement having dimensions smaller than the screen). The mapping module  106  can also retrieve data describing the application programming interface used to access the secondary media content item (e.g., ORMMA, MRAID, etc.). 
     The mapping module  106  can provide secondary media data  504  to the notification module  108  that includes the retrieved information about the secondary content item. The notification module  108  can transmit an electronic message that includes secondary media data  504 ′ via the data network  118  to a client notification module  122  executed at the computing device  114 . The secondary media data  504 ′ can include at least some of the secondary media data  504 . For example, the secondary media data  504 ′ can be a URL or other network address for secondary media content hosted by the secondary media provider  116 . The client notification module  122  executed at the computing device  114  can transmit a request  506  for the secondary media content via the data network  118  to the secondary media provider  116 . The request  506  can include secondary media data  504 ″ that includes at least some of the secondary media data  504 ′ received by the computing device  114  from the notification facilitation system  102 . 
     The secondary media provider  116  can respond to the request  506  by transmitting the requested secondary media content  508  to the computing device  114  via the data network  118 . The media application  120  executed at the computing device  114  can display, execute, or otherwise use the secondary media content  508  received from the secondary media provider  116 . 
     In some aspects, the secondary media data  504  can include information that the client notification module  122  can use to request the secondary media content, as described above with respect to  FIG. 5 . In additional or alternative aspects, the secondary media data  504  can include the secondary media content. For example, the notification facilitation system  102  can provide an advertisement or other secondary media content directly to the computing device  114  without the computing device  114  having to transmit a separate request to the second media provider  116 . 
       FIG. 6  is a flow chart illustrating an example of a method  600  for providing access to media content via a media channel based on associated content being provided over a different media channel. For illustrative purposes, the method  600  is described with reference to the implementation depicted in  FIGS. 1-5 . Other implementations, however, are possible. 
     The method  600  involves determining that a media identifier corresponds to first media content that is being provided via a first media channel, as depicted in block  610 . For example, a suitable processing device can execute a detection application  113  that analyzes at least some of the media content  302  provided over a monitored media channel. The detection application  113  can obtain a media identifier from the media content  302 . The detection application  113  can also retrieve a stored media identifier from a database or other suitable data structure that is stored on a non-transitory computer-readable medium or is accessible via a data network. The detection application  113  can compare the media identifier obtained from the media content with the stored media identifier. The detection application  113  can determine that the media identifier corresponds to media content provided via the first media channel based on the media identifiers at least partially matching one another. 
     In some aspects, determining that a media identifier corresponds to media content  302  can additionally or alternatively involve receiving, via a data network, an electronic communication indicating that a remote computing system has identified a correspondence between the first media content and the media identifier. For example, the detection application  113  can be executed on a detection system  112  that is accessible over a data network by the notification facilitation system  102 . The detection application  113  can compare a media identifier obtained from the media content  302  with a stored media identifier to determine that the media identifiers at least partially match one another. The detection system  112  can execute the detection application  113  to generate a detection event  402  or other electronic message that identifies the match between media identifiers, as described above with respect to  FIG. 4 . The detection application  113  can transmit the detection event  402  or other electronic message to the notification facilitation system  102  via the data network  118 . The notification facilitation system  102  can determine from the received message that the media content  302  corresponding to a media identifier from the primary media data  105  is being provided over the first media channel. In additional or alternative aspects, the detection application  113  can be executed by the notification facilitation system  102  rather than a remote computing system. 
     In some aspects in which a remote computing system (e.g., the detection system  112 ) executes the detection application  113 , the notification facilitation system  102  can provide one or more media identifiers to the remote computing system that are used by the remote computing system to monitor media content over the media channel. For example, the notification facilitation system  102  can execute the matching module  104  to generate, retrieve, or otherwise obtain one or more media identifiers to be used by a remote detection system  112 . The notification facilitation system  102  can transmit one or more electronic communications to the detection system  112  that include the media identifiers obtained by the matching module  104 , as described above with respect to  FIG. 2 . The detection system  112  can receive the electronic communications over the data network. The detection system  112  can use the media identifiers from the received electronic communications to monitor media content  302  transmitted by the primary media provider  110  via the network  124 . 
     In additional or alternative aspects, one or more processing devices of the notification facilitation system  102  can execute program instructions that generate the media identifiers used by the detection application  113 . For example, these program instructions can include a fingerprinting module. Executing the program instructions can generate a reference fingerprint (e.g., an audio fingerprint, a video fingerprint, or some combination thereof) from media content (e.g., an audio stream, a video stream, or some combination thereof) that is to be provided by the primary media provider  110 . The processing device of the notification facilitation system  102  can store the generated reference fingerprint or other media identifier in a database or other suitable data structure. The stored reference fingerprint or other media identifier can be indexed in the database or other suitable data structure by an identifier for an advertisement or other media content provided by the primary media provider  110 . 
     In additional or alternative aspects, the matching module  104  can determine that media content  302  identified by a remote computing system is included in a set of primary media data  105  tracked by the notification facilitation system  102 . In one non-limiting example, the notification facilitation system  102  may delete a given media identifier from the primary media data  105  or otherwise modify the primary media data  105  to indicate that the given media identifier should no longer be tracked. The notification facilitation system  102  can subsequently receive a detection event  402  indicating that the detection application  113  has identified media content  302  that corresponds to a media identifier. The notification facilitation system  102  can execute the matching module  104  to determine if the media identifier that is identifiable from the detection event  402  is the deleted or inactive media identifier. If the media identifier that is identifiable from the detection event  402  is the deleted or inactive media identifier, a processing device of the notification facilitation system  102  can terminate the method  600 . If the media identifier is an active media identifier that is being tracked by the notification facilitation system  102 , the method  600  can continue. 
     The method  600  also involves identifying computing devices that have been configured to receive second media content that is associated with the first media content provided over the first media channel, as depicted in block  620 . For example, one or more processing devices of the notification facilitation system  102  can execute the notification module  108  to identify the computing devices  114  configured to the receive related or otherwise associated media content. The notification module  108  can reference the subscription data  109  to determine which computing devices  114  are to receive the additional media content. 
     In some aspects, the notification module  108  can identify the computing devices  114  that have been configured to receive the second media content based on a type of media application  120  installed on the computing devices  114 . For example, the primary media provider  110  may be an entity that provides news programming (e.g., “NewsTV”) over both a cable network  124  (e.g., a “NewsTV” cable channel) and a data network  118  (e.g., a “NewsTV” website). The notification module  108  can determine from the subscription data  109  that one or more computing devices  114  executes a media application  120  that is configured to receive content from the primary media provider  110  via the network  118 . In one non-limiting example, the media application  120  may be an application that is specifically configured to access content from the primary media provider  110  (e.g., a “NewsTV” mobile application) and may be unable to access content from other media providers. The subscription data  109  may include a record for a computing device  114  that indicates that the “NewsTV” mobile application is installed on the computing device  114 . The notification module  108  can identify the computing device  114  as being configured to receive the second media content based on the “NewsTV” mobile application being installed on the computing device  114 . 
     In additional or alternative aspects, the notification module  108  can identify the computing devices  114  configured to receive the second media content based on receiving a notification from a computing device  114  that the media application  120  is accessing content from the primary media provider  110 . For example, if the primary media provider  110  is an entity that provides news programming (e.g., “NewsTV”) over both a cable network  124  (e.g., a “NewsTV” cable channel) and a data network  118  (e.g., a “NewsTV” website), a client notification module  122  executed at the computing device  114  may monitor the media application  120  to determine if the media application  120  is accessing content from the primary media provider  110 . If the media application  120  is accessing content from the primary media provider  110 , the client notification module  122  can transmit an electronic communication to the notification module  108  via the data network  118  indicating that the media application  120  is accessing content from the primary media provider  110 . The notification facilitation system  102  can identify the computing device as being configured to receive second media content based on receiving the notification from the client notification module  122 . In one non-limiting example, the media application  120  may be an application that is specifically configured to access content from the primary media provider  110  (e.g., a “NewsTV” mobile application) and may be unable to access content from other media providers. The client notification module  122  can transmit a notification to the notification facilitation system  102  in response to a user activating the media application  120  (e.g., turning on the media application, switching an active window to the media application, etc.). In another non-limiting example, the media application  120  may be a web browser or other application that can access a website of the primary media provider  110 . The client notification module  122  can transmit an electronic communication to the notification facilitation system  102  indicating that the web browser accessing the website of the primary media provider  110 . 
     The method  600  also involves providing access to the second media content via a second media channel by the identified computing devices, as depicted in block  630 . One or more processing devices of the notification facilitation system  102  can execute the notification module  108  to provide access to the second media content by the identified computing devices  114  via a media channel of the network  118 . In some aspects, providing access to the second media content can involve generating and transmitting secondary media data  504  to the identified client devices  114  via the data network  118 , as described above with respect to  FIG. 5 . The secondary media data  504  can be used by the client computing devices  114  to retrieve secondary media content from a secondary media provider  116 , as described above with respect to  FIG. 5 . In additional or alternative aspects, providing access to the associated media content can involve the notification facilitation system  102  transmitting the secondary media content to the identified client devices  114  via the data network  118 . 
     The notification facilitation system  102  can execute the mapping module  106  to identify the secondary media content to which the computing devices  114  are to be provided access. In some aspects, the mapping module  106  may identify the media content based on a type of media content that can be executed, displayed, or otherwise outputted by a given computing device  114 . For example, the subscription data  109  may indicate that the computing device  114  has a video player application that is configured to play specific types of video content. The mapping module  106  may generate secondary media data  504  that can be used by the computing device  114  to retrieve secondary content (e.g., video advertisements) that are compatible with the video player of the computing device  114 . 
     In additional or alternative aspects, the mapping module  106  may identify the media content based on a hardware characteristic of the computing device  114 . A non-limiting example of a hardware characteristic of the computing device  114  include one or more dimensions (e.g., height, width) of a display screen that is included in or communicatively coupled to the computing device  114 . For instance, the subscription data  109  may indicate that the computing device  114  has a display screen with a given set of dimensions. The mapping module  106  may generate secondary media data  504  that can be used by the computing device  114  to retrieve secondary content items that can be fully displayed on a screen with the given set of dimensions (e.g., a banner advertisement having an aspect ratio similar to the screen of the computing device  114 ). In another non-limiting example, the subscription data  109  may indicate that the computing device  114  is a smart phone or other type of computing device with one or more processing constraints (e.g., less memory, slower processor, less sophisticated graphics) as compared to a laptop or desktop computer. The mapping module  106  may generate secondary media data  504  that can be used by the computing device  114  to retrieve secondary content items that can be used effectively in view of these processing constraints. For example, the mapping module  106  may select a banner advertisement for a first computing device  114  that is a smart phone and may select a video advertisement for a second computing device  114  that is a laptop computer. 
     Although, for illustrative purposes, certain parameters used to select a type of media content are discussed above, any suitable parameter can be used by the mapping module  106  or other suitable program code to select media content to be provided to a computing device  114 . Non-limiting examples of such suitable parameters include the identity or type of media application  120  that is utilizing a client notification module  122  or other software development kit, a type of integration with the media application  120  (e.g., ORMMA, MRAID, etc.), the media type of the secondary media data  504  to be provided (e.g., HTML, video, etc.), and/or any other suitable parameter that may be added based on the desired behavior of a system for facilitating the provision of associated media content over a second media channel. 
     In some aspects, one or more functions of the detection application  113 , the matching module  104 , the mapping module  106 , and/or the notification module  108  can be performed by a single device. For example, the notification facilitation system  102  may be implemented using a set-top unit or other suitable device for receiving cable television channels over a cable network  124 . This set-top unit may execute software instructions for performing one or more functions of the detection application  113 , the matching module  104 , the mapping module  106 , and/or the notification module  108 . The set-top unit can identify media content being broadcasted via one or more of the received cable television channels that corresponds to a given media identifier, as described above with respect to block  610 . The set-top unit can identify one or more computing devices  114  that are registered with the cable subscription and that are configured to receive related media content, as described above with respect to block  620 . The computing devices  114  may be in communication with the set-top unit over a data network  118  via a cable modem and/or network router that is communicatively coupled to the set-top unit. The set-top unit can provide the computing devices  114  with access to the related media content, as described above with respect to block  630 . For example, the set-top unit can transmit secondary media data  504  to the computing devices via the cable modem and/or network router. 
     In additional or alternative aspects, a computing device  114  can perform one or more functions for monitoring primary media content provided by a primary media provider  110 . For example,  FIG. 7  is a modeling diagram that depicts an example of a computing device  114  detecting primary media content presented by a media device  702  near the computing device  114 . Non-limiting examples of a media device  702  include a television, a radio, another computing device, etc. The media device  702  can be communicatively coupled to the primary media provider  110  via the network  124 . For example, a media device  702  such as television can be communicatively coupled to a primary media provider  110  such as a cable television provider via a cable network  124 . The media device  702  can emit signals  704  in the vicinity of the computing device  114 . Non-limiting examples of the signals  704  include sound waves (e.g., from the audio played by a television), light waves (e.g., from video images displayed on the television), etc. 
     The computing device  114  can include a receiver device  706  that can receive the signals  704 . In one non-limiting example, the receiver device  706  can be a microphone that can receive audio signals  704  emitted by the media device  702 . In another non-limiting example, the receiver device  706  can be a camera that can capture images from light signals  704  emitted by the media device  702 . A client notification module  122  executed by the computing device  114  can receive digital data  708  that represents the signals received by the receiver device  706 . 
     In some aspects, the computing device  114  can transmit identification data  712  to the detection system  112  via a data network  118 . In some aspects, the identification data  712  can include a media identifier generated from the digital data  708  received by the client notification module  122 . For example, a client detection module  710  can be executed by the computing device  114  that generates a fingerprint or other media identifier from the digital data  708 . In other aspects, the identification data  712  can include at least a portion of the digital data  708  received by the client notification module  122 . For example, the client detection module  710  can be executed by the computing device  114  that extracts a portion of the digital data  708  and transmits the extracted digital data with the identification data  712  to the detection application  113 . The detection application  113  can generate a fingerprint or other media identifier from the extracted digital data received with the identification data  712 . 
     The detection application  113  can generate a detection event  802  and transmit the detection event  802  to the computing device  114 , as depicted in  FIG. 8 . The detection event  802  can include a record identifier  804  and a provider identifier  806 . The detection application  113  can generate the detection event  802  with the record identifier  804  and the provider identifier  806  in a similar manner as described above with respect to the detection event  402 , the record identifier  204 , and the provider identifier  404  depicted in  FIG. 4 . 
     The computing device  114  can obtain secondary media data using the record identifier  804  and the provider identifier  806 . The computing device  114  can transmit a detection event  902  to the notification facilitation system  102 , as depicted in  FIG. 9 . For example, the client notification module  122  can transmit the detection event  902  to the matching module  104  via the data network  118 . The detection event  902  can include the record identifier  804  and the provider identifier  806 . The matching module  104  can respond to receiving the detection event  902  by providing a notification command  1002  to the notification module  108 . The matching module  104  can generate the notification command  1002  using the record identifier  804  and the provider identifier  806  in a similar manner as described above with respect to the notification command  502  depicted in  FIG. 5 . The notification module  108  can obtain secondary media data  1004  from the mapping module  106  and provide at least some secondary media data  1004 ′ to the computing device  114  via the data network  118 . The notification module  108  can do so in a similar manner as described above with respect to the secondary media data  504  depicted in  FIG. 5 . The operations described above with respect to block  610  can include the notification facilitation system  102  using the detection event  902  to determine that a media identifier corresponds to the media content being provided over a media channel by the primary media provider  110 . 
     In additional or alternative aspects, the computing device  114  may generate the detection event  802  without transmitting the identification data  712  to the detection system  112 . For example, the client detection module  710  can access a local database or other suitable data structure stored in a non-transitory computer-readable medium of the computing device  114 . The local database can include reference fingerprints or other media identifiers provided from the notification facilitation system  102  to the computing device  114 . The client detection module  710  can generate a detection event  902  by determining that a media identifier generated from the digital data  708  matches or otherwise corresponds to a media stored at the computing device  114 . 
     In additional or alternative aspects, the detection system  112  can transmit the detection event  802  to the notification facilitation system  102  rather than (or in addition to) transmitting the detection event  802  to the computing device  114 . The notification facilitation system  102  can obtain and transmit the secondary media data  1004  to the computing device  114  in response to receiving the detection event  802  from the detection system  112 . The operations described above with respect to block  610  can include the notification facilitation system  102  using the detection event  802  to determine that a media identifier corresponds to the media content being provided over a media channel by the primary media provider  110 . 
     Any suitable computing systems can be used to implement the aspects described above. For example,  FIG. 11  is a block diagram that depicts example systems for implementing certain aspects. 
     The notification facilitation system  102  and the computing device  114  depicted in  FIG. 11  can respectively include processors  1102 ,  1112 . Non-limiting examples of the processors  1102 ,  1112  include a microprocessor, a field-programmable gate array (“FPGA”) an application-specific integrated circuit (“ASIC”), a state machine, or other suitable processing device. Each of the processors  1102 ,  1112  can include any number of processing devices, including one. The processors  1102 ,  1112  can be communicatively coupled to computer-readable media, such as memory devices  1104 ,  1114 . The processors  1102 ,  1112  can execute computer-executable program instructions and/or otherwise access information respectively stored in the memory devices  1104 ,  1114 . 
     Each of the memory devices  1104 ,  1114  may be a computer-readable medium such as (but not limited to) an electronic, optical, magnetic, or other storage device capable of providing a processor with computer-readable instructions. Non-limiting examples of such optical, magnetic, or other storage devices include read-only (“ROM”) device(s), random-access memory (“RAM”) device(s), magnetic disk(s), magnetic tape(s) or other magnetic storage, memory chip(s), an ASIC, configured processor(s), optical storage device(s), or any other medium from which a computer processor can read instructions. The instructions may comprise processor-specific instructions generated by a compiler and/or an interpreter from code written in any suitable computer-programming language. Non-limiting examples of suitable computer-programming languages include C, C++, C#, Visual Basic, Java, Python, Perl, JavaScript, ActionScript, and the like. 
     The notification facilitation system  102  and the computing device  114  depicted in  FIG. 11  respectively include buses  1106 ,  1116 . Each of the buses  1106 ,  1116  can communicatively couple one or more components of a respective one of the notification facilitation system  102  and the computing device  114 . 
     Although the processors  1102 ,  1112 , the memory devices  1104 ,  1114 , and the buses  1106 ,  1116  are respectively depicted in  FIG. 11  as separate components in communication with one another, other implementations are possible. For example, the processors  1102 ,  1112 , the memory devices  1104 ,  1114 , and the buses  1106 ,  1116  can be respective components of respective printed circuit boards or other suitable devices that can be disposed in a notification facilitation system  102  and/or a computing device  114  to store and execute programming code. 
     The notification facilitation system  102  and computing device  114  can also include respective communication devices  1108 ,  1118 . The communication devices  1108 ,  1118  can be configured to establish a communication link  112 . Non-limiting examples of the communication devices  1108 ,  1118  include Ethernet transceivers, modems, etc. The computing device  114  can also include one or more input or output devices  1110  for receiving input or output (e.g., a keyboard, a mouse, a touchscreen, a display screen, etc.). 
       FIG. 11  also depicts the matching module  104 , the primary media data  105 , the mapping module  106 , the secondary media data  107 , the notification module  108 , the subscription data  109 , and the detection application  113  stored in the memory device  1104  of the notification facilitation system  102 . The processor  1102  can execute one or more of the matching module  104 , the mapping module  106 , the notification module  108 , and the detection application  113  to perform one or more operations described herein. In some aspects, one or more of the matching module  104 , the primary media data  105 , the mapping module  106 , the secondary media data  107 , the notification module  108 , the subscription data  109 , and the detection application  113  can be omitted. 
       FIG. 11  also depicts the media application  120 , the client notification module  122 , and the client detection module  710  stored in the memory device  1114  of the computing device  114 . The processor  1112  can execute one or more of the client notification module  122 , and the client detection module  710  to perform one or more operations described herein. In some aspects, one or more of the client notification module  122  and the client detection module  710  can be omitted. 
     GENERAL CONSIDERATIONS 
     Numerous specific details are set forth herein to provide a thorough understanding of the claimed subject matter. However, those skilled in the art will understand that the claimed subject matter may be practiced without these specific details. In other instances, methods, apparatuses, or systems that would be known by one of ordinary skill have not been described in detail so as not to obscure claimed subject matter. 
     Unless specifically stated otherwise, it is appreciated that throughout this specification discussions utilizing terms such as “processing,” “computing,” “calculating,” “determining,” and “identifying” or the like refer to actions or processes of a computing device, such as one or more computers or a similar electronic computing device or devices, that manipulate or transform data represented as physical electronic or magnetic quantities within memories, registers, or other information storage devices, transmission devices, or display devices of the computing platform. 
     The system or systems discussed herein are not limited to any particular hardware architecture or configuration. A computing device can include any suitable arrangement of components that provides a result conditioned on one or more inputs. Suitable computing devices include multipurpose microprocessor-based computer systems accessing stored software that programs or configures the computing system from a general purpose computing apparatus to a specialized computing apparatus implementing one or more aspects of the present subject matter. Any suitable programming, scripting, or other type of language or combinations of languages may be used to implement the teachings contained herein in software to be used in programming or configuring a computing device. 
     Aspects of the methods disclosed herein may be performed in the operation of such computing devices. The order of the blocks presented in the examples above can be varied—for example, blocks can be re-ordered, combined, and/or broken into sub-blocks. Certain blocks or processes can be performed in parallel. 
     The use of “adapted to” or “configured to” herein is meant as open and inclusive language that does not foreclose devices adapted to or configured to perform additional tasks or steps. Additionally, the use of “based on” is meant to be open and inclusive, in that a process, step, calculation, or other action “based on” one or more recited conditions or values may, in practice, be based on additional conditions or values beyond those recited. Headings, lists, and numbering included herein are for ease of explanation only and are not meant to be limiting. 
     While the present subject matter has been described in detail with respect to specific examples thereof, it will be appreciated that those skilled in the art, upon attaining an understanding of the foregoing, may readily produce alterations to, variations of, and equivalents to such examples. Accordingly, it should be understood that the present disclosure has been presented for purposes of example rather than limitation, and does not preclude inclusion of such modifications, variations, and/or additions to the present subject matter as would be readily apparent to one of ordinary skill in the art.