Patent ID: 12231742

Wherever possible, the same reference numbers will be used throughout the drawing(s) and accompanying written description to refer to the same or like parts.

DETAILED DESCRIPTION

Many entities have an interest in understanding how users are exposed to media on the Internet. For example, AMEs desire knowledge on how users interact with media devices such as smartphones, tablets, laptops, smart televisions, etc. In particular, an example AME may want to monitor media presentations made at the media devices to, among other things, monitor exposure to advertisements, determine advertisement effectiveness, determine user behavior, identify purchasing behavior associated with various demographics, etc.

AMEs coordinate with advertisers to obtain knowledge regarding an audience of media. For example, advertisers are interested in knowing the composition, engagement, size, etc. of an audience for media. For example, media (e.g., audio and/or video media) may be distributed by a media distributor to media consumers. Content distributors, advertisers, content producers, etc. have an interest in knowing the size of an audience for media from the media distributor, the extent to which an audience consumes the media, whether the audience pauses, rewinds, fast forwards the media, etc. As used herein the term “content” includes programs, advertisements, clips, shows, etc. As used herein, the term “media” includes any type of content and/or advertisement delivered via any type of distribution medium. Thus, media includes television programming or advertisements, radio programming or advertisements, movies, web sites, streaming media, etc.

In some instances, AMEs identify media by extracting media identifiers such as signatures or media-identifying metadata such as codes, watermarks, etc. and comparing them to reference media identifiers. For example, audio watermarking is a technique used to identify media such as television broadcasts, radio broadcasts, advertisements (television and/or radio), downloaded media, streaming media, prepackaged media, etc. Existing audio watermarking techniques identify media by embedding one or more audio codes (e.g., one or more watermarks), such as media identifying information and/or an identifier that may be mapped to media identifying information, into an audio and/or video component. In some examples, the audio or video component is selected to have a signal characteristic sufficient to hide the watermark. As used herein, the terms “code” or “watermark” are used interchangeably and are defined to mean any identification information (e.g., an identifier) that may be inserted or embedded in the audio or video of media (e.g., a program or advertisement) for the purpose of identifying the media or for another purpose such as tuning (e.g., a packet identifying header). As used herein “media” refers to audio and/or visual (still or moving) content and/or advertisements. To identify watermarked media, the watermark(s) are extracted and used to access a table of reference watermarks that are mapped to media identifying information. Example techniques to perform audio watermarking detection and extraction are disclosed in U.S. Pat. No. 8,369,972, filed on Oct. 10, 2008, entitled “Methods and Apparatus to Perform Audio Watermarking and Watermark Detection and Extraction,” which is hereby incorporated herein by reference in its entirety.

In some examples, AMEs measure online video playing, advertisements, page views, etc. via a digital content rating (DCR) implementation. For example, instead of using signatures or watermarks (i.e., in-band metadata), AMEs may generate media exposure metrics using out-of-band metadata extracted from a metadata file associated with an Electronic Program Guide (EPG) (e.g., a digital television live channel lineup guide, a human-readable video on-demand (VoD) catalog, etc.). The AMEs may tag media content with instructions. For example, a media device that accesses the tagged media may execute the instructions to send media monitoring information (MMI) to a demographic provider (e.g., Facebook®). The demographic provider may generate monitoring statistics corresponding to the MMI for a plurality of media devices and demographic information associated with users of the media devices. The demographic provider may transmit the monitoring statistics to the AMEs to credit media.

Example methods, apparatus, and articles of manufacture disclosed herein monitor media presentations at media devices. Such media devices may include, for example, Internet-enabled televisions, personal computers, Internet-enabled mobile handsets (e.g., a smartphone), video game consoles (e.g., Xbox®, PlayStation®), tablet computers (e.g., an iPad®), digital media players (e.g., a Roku® media player, a Slingbox®, etc.), etc. In some examples, MMI including media identifiers is aggregated to determine ownership and/or usage statistics of media devices, relative rankings of usage and/or ownership of media devices, types of uses of media devices (e.g., whether a device is used for browsing the Internet, streaming media from the Internet, etc.), and/or other types of media device information.

In examples disclosed herein, MMI includes, but is not limited to, media identifiers (e.g., media-identifying metadata, codes, signatures, watermarks, and/or other information that may be used to identify presented media), application usage information (e.g., an identifier of an application, a time and/or duration of use of the application, a rating of the application, etc.), user-identifying information (e.g., demographic information, a user identifier, a device identifier, a username, etc.), timestamp information (e.g., a time at which media was accessed, a time corresponding to a media segment within media, etc.), and/or content publisher identifiers (e.g., publisher asset identifiers). As used herein, a publisher asset identifier includes a content identifier that is proprietary to a publisher (e.g., a content publisher) and/or a timestamp from the publisher assigned to a portion or a segment of media. In some examples, the publisher asset identifier is a media identifier when the publisher asset identifier is used to identify media. For example, a content publisher may generate a publisher asset identifier to correspond to a particular portion or a segment of media. For example, the publisher asset identifier may be used to identify a media source (e.g., Netflix®, YouTube®, Hulu®, Pandora®, Last.fm®, etc.), a media type (e.g., an episode of a television show, a movie, a song, streaming content, etc.), etc.

In some examples, AMEs coordinate with content providers and/or content publishers to monitor media presentations at media devices. For example, a content publisher may embed functionality (e.g., media monitoring functionality) into an application that is downloaded and/or utilized by a media device. The content publisher may embed the functionality via a client-side software development kit (SDK), a Cloud Application Program Interface (API), etc. For example, the content publisher may add functionality instructing the media device to log, store, and/or transmit MMI. However, content publishers may be hesitant to implement the functionality within their applications due to increased technological costs such as, for example, additional programming, testing (e.g., managing different version upgrades, coordinating with multiple external developers, etc.), and maintenance. Content publishers may also be hesitant due to effects of external code bloat (e.g., code developed by an entity external to a content publisher, etc.) that may lead to as increased application size, slower execution speeds, and security vulnerabilities.

In some disclosed examples, an AME implements a multi-server approach to obtain MMI. The AME may obtain a media feed (e.g., a live video feed, an on-demand video feed, etc.) from a content publisher (e.g., via a stream splitter at the content publisher). The AME analyzes the media feed to identify the media by extracting metadata (e.g., a watermark) embedded in the audio, video, etc. of the media. The AME also analyzes the media feed to extract a publisher asset identifier. The AME may create an association of a publisher asset identifier of the content publisher with the metadata. The AME may store the association, the extracted metadata, the publisher asset identifier, etc. in a database such as, for example, a look-up table.

In some disclosed examples, the AME obtains MMI from a media device via a content publisher. For example, the content publisher may package audio and/or video quality monitoring software instructions such as content publisher analytics software, AME analytics software, quality of service (QoS) software, etc. within an application (e.g., a video player) distributed by the content publisher. When the media device downloads the application, the media device may routinely, or by request, transmit analytics information (e.g., QoS data) to the content publisher. Analytics information may include parameters such as, for example, an availability, a bit rate, an error rate, jitter (e.g., jitter frequency, jitter period, etc.), transmission delay, data throughput, etc. In some instances, the media device transmits MMI to the content publisher. The content publisher may transmit the MMI obtained from the media device to the AME. For example, the content publisher may relay or re-transmit analytics information, MMI, etc. corresponding to media presented at the media device to the AME.

In some disclosed examples, the AME maps MMI obtained from a content publisher to reference MMI stored in a database. For example, the AME may extract a publisher asset identifier, a publisher timestamp, etc. from the analytics information. The AME may identify the media presented at the media device based on the publisher asset identifier, the publisher timestamp, etc. For example, the AME may identify the media based on mapping the publisher asset identifier and/or the publisher timestamp to an AME identifier and/or an AME timestamp. The AME may generate a report (e.g., a media exposure report) based on an identification of the media at the media device.

In some disclosed examples, AMEs ignore or filter MMI from users or media devices that opt-out of monitoring processes (e.g., multi-server media monitoring processes). For example, a user may use a media device such as a laptop, a mobile device, a tablet, etc. to navigate to an AME privacy web page, where the user may elect to opt-out of monitoring processes. In response to the AME receiving an opt-out request, the AME may transmit an opt-out cookie to a browser or an application on the media device. When the media device subsequently accesses media, a content publisher may query the AME to determine whether the media device has opted-out. In response to the AME determining that the media device has opted-out, the AME may flag the media device as an opt-out. When the AME obtains MMI from the content publisher corresponding to the opted-out media device, the AME may ignore, filter, delete, fail to report, etc. the MMI corresponding to the opted-out media device.

FIG.1is a block diagram of an example environment100constructed in accordance with the teachings of this disclosure to identify media presented at a media device. The example environment100includes an example content provider105, an example content publisher110, an example audience measurement entity (AME) media analyzer115, and an example AME media creditor120. The example content publisher110includes an example media splitter125and an example communication processor130. The example communication processor130is communicatively coupled to example media devices135,140,145via an example network150. Further shown are an example media association database155, an example metering database160, an example audit database165, and an example validation database170.

In the illustrated example ofFIG.1, the content provider105is a media generator. For example, the content provider105may be an audio (e.g., audio-book, Internet radio, music, podcast, etc.) creator, a video (e.g., a movie, a television show, YouTube® video, etc.) generator, and/or a combination thereof. The example content provider105may transmit media to the example content publisher110for distribution to media consumers.

In the illustrated example ofFIG.1, the content publisher110is a server providing Internet media (e.g., web pages, audio, videos, images, embedded media, etc.). The content publisher110may be implemented by any provider(s) of media such as a digital broadcast provider (cable television service, fiber-optic television service, etc.) and/or an on-demand digital media provider (e.g., Internet streaming video and/or audio services such as Netflix®, YouTube®, Hulu®, Pandora®, Last.fm®,) and/or any other provider of streaming media services. In some other examples, the content publisher110is a host for web site(s). The media provided by the example content publisher110can provide any type(s) of media, such as audio, video, multimedia, etc. Additionally, the media can correspond to live media, streaming media, broadcast media, stored media, on-demand content, etc.

The content publisher110of the illustrated example ofFIG.1provides media services to the media devices135,140,145via, for example, web pages including links (e.g., hyperlinks, embedded media, etc.) to media provided by the content provider105. In the illustrated example, the content publisher110modifies the media provided by the content provider105prior to transmitting the media to the media devices135,140,145. For example, the content publisher110may modify the media by changing an aspect ratio of the media to be presented on different device form factors (e.g., a smartphone, a tablet, a television, etc.), a video resolution and/or video quality based on available download bandwidth, etc. In another example, the content publisher110may modify the media by embedding a media identifier such as a publisher asset identifier, a publisher timestamp, etc. in the media.

In the illustrated example ofFIG.1, the content publisher110includes the example media splitter125and the communication processor130. While the illustrated example ofFIG.1discloses an example implementation of the content publisher110, other example implementations of the content publisher110may additionally or alternatively be used. The example content publisher110includes the example media splitter125to split a path of a media feed obtained from a media source. For example, the media splitter125may obtain a media feed from the example content provider105and transmit the media feed (e.g., transmit a copy of the media feed) to two or more destinations or media paths, where each media path receives the same media feed. In the illustrated example, the media splitter125transmits the media feed to (1) the communication processor130, and (2) the AME media analyzer115via the network150.

In the illustrated example ofFIG.1, the content publisher110includes the communication processor130to publish the media feed (e.g., making the media available for download, streaming, etc. for the media devices135,140,145). The example communication processor130may publish the media feed in parallel with the example AME media analyzer115processing the media feed (e.g., generating a look-up table). Alternatively, the example communication processor130may publish the media feed before or after the example AME media analyzer115processes the media feed.

The communication processor130of the illustrated example ofFIG.1interfaces with the AME media creditor120and the media devices135,140,145via the network150. For example, the communication processor130may obtain MMI corresponding to a presentation of media at the media devices135,140,145. In some examples, the MMI includes information indicating that the media devices135,140,145accessed (e.g., downloaded, listened, viewed, etc.) the media. In some instances, the MMI includes analytics information such as Quality of Service (QoS) information transmitted periodically by the media devices135,140,145when the media devices135,140,145access the media. In some examples, the MMI includes media interaction information such as a user agent string in a HTTP message to identify the user device on which the media is requested, a media identifier such as a publisher asset identifier to identify the media, a host identifier to identify the host (e.g., web server) with which the requested media is associated (e.g., a vendor identifier (VID)), a timestamp to identify the dates/times at which the media is requested, accessed and/or received, one or more command identifiers identifying control commands (e.g., pause, play, stop, etc.) acted upon the media, etc.

In the illustrated example ofFIG.1, the AME media analyzer115obtains a media feed from the media splitter125. The example AME media analyzer115analyzes the media feed to identify media included in the media feed. For example, the AME media analyzer115may identify the media by extracting an AME identifier (e.g., a media identifier) such as a watermark embedded in the audio of the media. In another example, the AME media analyzer115may identify the media by determining an AME identifier by accessing descriptive metadata of the media such as an AME timestamp. In another example, the AME media analyzer115may identify the media by comparing media information (e.g., embedded metadata, watermarks, etc.) to electronic program data (e.g., data from an electronic program guide), program schedule information, etc.

In some examples, the AME media analyzer115obtains reference data from the content publisher110that publishes the media. For example, the AME media analyzer115may obtain a first identifier corresponding to the media from the content publisher110such as a signature, a watermark, or any other type of media-identifying metadata. The example AME media analyzer115may validate the first identifier by comparing the first identifier to a second identifier extracted from the media presented at a reference site (e.g., an AME identifier). In some examples, the AME media analyzer115validates the reference data from the content publisher110when the first and the second identifiers match. In some instances, the AME media analyzer115does not validate the reference data when the first and the second identifiers do not match and, thus, the reference data is not to be used for crediting the media.

In yet another example, the AME media analyzer115may identify the media by identifying a signature. For example, the AME media analyzer115may analyze a characteristic of the media (e.g., the audio and/or the video component of the media) and compare the characteristic against reference characteristics. As used herein, the AME identifier is an identifier assigned to media or a segment of the media by an AME, where the identifier identifies a source of the media based on an extracted code or watermark of the media, by comparing an extracted signature of the media to a reference signature, etc.

The example AME media analyzer115extracts a publisher asset identifier from the media feed obtained from the media splitter125. For example, the AME media analyzer115may extract a publisher asset identifier when extracting the AME identifier, the AME timestamp, etc. from the media. In response to extracting a publisher asset identifier, the example AME media analyzer115creates an association of (1) a publisher asset identifier of a publisher of the media (e.g., an identifier transmitted by the example content provider105with the media), (2) the AME identifier, and/or (3) the AME timestamp corresponding to the AME identifier, where the AME timestamp corresponds to a portion or a segment of the media as identified by the AME media analyzer115. For example, the AME media analyzer115may generate a look-up table based on the association, and store the look-up table in the media association database155.

In some examples, the AME media analyzer115identifies the media in the media feed by comparing metadata (e.g., content management system (CMS) metadata, electronic program guide (EPG) metadata, etc.) embedded in the media to baseline metadata. The baseline metadata may be obtained from a look-up table, a mainstream EPG, etc. The example AME media analyzer115may identify the media when the embedded metadata matches the baseline metadata.

In the illustrated example ofFIG.1, the AME media creditor120obtains MMI (e.g., analytics information) from the content publisher110via the network150, where the MMI corresponds to media presented at the media devices135,140,145. The MMI may include information such as, for example, publisher asset identifiers, return path data, streams received information, etc. The MMI obtained from the example content publisher110is unlikely to include the AME identifier and/or the AME timestamp.

In some examples, the AME media creditor120maps the publisher asset identifier, the publisher timestamp (e.g., a timestamp of a segment of the media as identified by the content publisher110), etc. to the corresponding AME identifier and/or the AME timestamp to identify the media. In some instances, the AME media creditor120performs quality control validation by comparing the MMI from the content publisher110to audience measurement data obtained from the metering database160, the audit database165, the validation database170, etc. As used herein, the term “audience measurement data” refers to data collected by an audience measurement entity based on metering techniques (e.g., metering data), audit techniques (e.g., audit data), etc. For example, the content publisher110may not send accurate MMI to the AME media creditor120. As a result, the example AME media creditor120may obtain metering data, audit data, etc. from the example metering database160, the example audit database165, the example validation database170, etc. to analyze to identify erroneous data, outliers, etc. For example, the AME media creditor120may collect and/or aggregate data from the metering database160to determine statistics associated with metering data. In some instances, the AME media creditor120generates a report based on identifying the media and transmits the report to the audit database165, the validation database170, reporting servers, census data aggregation servers, operation analyzers, etc.

In the illustrated example ofFIG.1, the media devices135,140,145are devices that present media retrieved from the content publisher110. In some examples, the media devices135,140,145are capable of directly presenting media (e.g., via a display) while, in some other examples, the media devices present the media on separate media presentation equipment (e.g., speakers, a display, etc.). For example, the media device135of the illustrated example is an Internet-enabled mobile handset (e.g., a smartphone), and thus, is capable of presenting media (e.g., via an integrated display and speakers). The media device140of the illustrated example is an Internet-enabled tablet (e.g., an iPad, a Surface, etc.) capable of presenting media (e.g., via an integrated display and speakers). The media device145of the illustrated example is an Internet-enabled laptop computer capable of presenting media (e.g., via an integrated display and speakers).

While, in the illustrated example, an Internet-enabled mobile handset, an Internet-enabled tablet, and an Internet-enabled laptop are shown, any other type(s) and/or number(s) of media presentation device(s) may additionally or alternatively be used. For example, digital media players (e.g., a Roku® media player, a Slingbox®, etc.,), gaming consoles, Internet-enabled televisions, etc. may additionally or alternatively be used. Further, while in the illustrated example three media devices are shown, any number of media devices may be used.

In the illustrated example ofFIG.1, the network150is the Internet. However, the example network150may be implemented using any suitable wired and/or wireless network(s) including, for example, one or more data buses, one or more Local Area Networks (LANs), one or more wireless LANs, one or more cellular networks, one or more private networks, one or more public networks, etc. The example network150enables the content publisher110to be in communication with the AME media analyzer115, the example AME media creditor120, and the example media devices135,140,145. As used herein, the phrase “in communication,” including variances (e.g., secure or non-secure communications, compressed or non-compressed communications, etc.) therefore, encompasses direct communication and/or indirect communication through one or more intermediary components and does not require direct physical (e.g., wired) communication and/or constant communication, but rather includes selective communication at periodic or aperiodic intervals, as well as one-time events.

In the illustrated example ofFIG.1, the environment100includes the media association database155, the metering database160, the audit database165, and the validation database170to record and transmit data (e.g., associations, MMI, metering data, audit data, timestamps, etc.). The media association database155, the metering database160, the audit database165, and the validation database170may be implemented by a volatile memory (e.g., a Synchronous Dynamic Random Access Memory (SDRAM), Dynamic Random Access Memory (DRAM), RAMBUS Dynamic Random Access Memory (RDRAM), etc.) and/or a non-volatile memory (e.g., flash memory). The media association database155, the metering database160, the audit database165, and the validation database170may additionally or alternatively be implemented by one or more double data rate (DDR) memories, such as DDR, DDR2, DDR3, DDR4, mobile DDR (mDDR), etc. The media association database155, the metering database160, the audit database165, and the validation database170may additionally or alternatively be implemented by one or more mass storage devices such as hard disk drive(s), solid-state drives, flash memory drives, compact disk drive(s) digital versatile disk drive(s), etc. While in the illustrated example the media association database155, the metering database160, the audit database165, and the validation database170are illustrated as single databases, the media association database155, the metering database160, the audit database165, and the validation database170may be implemented by any number and/or type(s) of databases. Furthermore, the data stored in the media association database155, the metering database160, the audit database165, and the validation database170may be in any data format such as, for example, binary data, comma delimited data, tab delimited data, structured query language (SQL) structures, etc.

In the illustrated example ofFIG.1, the metering database160is a server that collects and processes metering data. As used herein, the term “metering data” refers to panelist data obtained from media devices associated with panelists monitored by a meter (e.g., a people meter, a media meter, etc.), where the media devices are accessing media. In some examples, the metering database160obtains audience measurement data such as metering data from a metering device in a media exposure measurement location (e.g., a panelist household, an Internet café, an office, an airport, a library, a non-panelist household, etc.). As used herein, the term “panelists” refers to users registered on panels maintained by a ratings entity (e.g., an audience measurement entity) that owns and/or operates the ratings entity subsystem.

Traditionally, audience measurement entities (also referred to herein as “ratings entities”) determine demographic reach for advertising and media programming based on registered panel members. That is, an audience measurement entity enrolls people that consent to being monitored into a panel. During enrollment, the audience measurement entity receives demographic information from the enrolling people so that subsequent correlations may be made between advertisement/media exposure to those panelists and different demographic markets.

People become panelists via, for example, a user interface presented on a media device (e.g., via a website). People become panelists in additional or alternative manners such as, for example, via a telephone interview, by completing an online survey, etc. Additionally or alternatively, people may be contacted and/or enlisted using any desired methodology (e.g., random selection, statistical selection, phone solicitations, Internet advertisements, surveys, advertisements in shopping malls, product packaging, etc.).

In the illustrated example ofFIG.1, the audit database165is a server that collects and processes audit data. As used herein, the term “audit data” refers to data such as MMI obtained from media devices associated with panelists monitored by automated processes such as monitoring scripts, where the media devices are accessing media. For example, a panelist media device may execute a monitoring script when accessing media to transmit audit information to the audit database165. In some examples, the monitoring script operates on the media devices135,140,145and automatically transmits MMI to the content publisher110. Alternatively, users of the example media devices135,140,145may manually execute the monitoring script to transmit MMI to the example content publisher110. Audit information may include a media presentation session start indicator (e.g., a start indicator of a user session), a media presentation session end indicator (e.g., an end indicator of a user session), a media presentation start indicator (e.g., a start indicator of an individual video stream, an individual audio stream, etc.), a media presentation end indicator (e.g., an end indicator of an individual video stream, an individual audio stream, etc.), an Internet Protocol (IP) address, a media access control (MAC) address, an audio watermark of the media, a signature of the media, etc. A media presentation session start and end indicator refer to a timestamp when media presentation starts and ends respectively. Alternatively, the audit information may not include an IP address, a MAC address, etc.

In some examples, the audit database165calculates a duration of media presentation by determining a difference between media presentation session start and end pings. In some instances, the audit database165stores and transmits census data. As used herein, the term “census data” refers to data such as MMI corresponding to non-panelists. For example, the audit database165may obtain census data via audit pings and/or audit communication between a media device and the audit database165. The audit pings may be transmitted periodically, upon executing an automated monitoring script at the media device, upon request by the audit database165or the AME, upon a user manually executing the monitoring script, etc.

In the illustrated example ofFIG.1, the validation database170is a server that collects and processes validation data obtained from the AME media creditor120, the metering database160, the audit database165, etc. For example, the validation database170may obtain validation alerts from the AME media creditor120, where a validation alert includes an alert not to report obtained MMI. The example validation database170may include trending information or alerts. For example, the validation database170may include information corresponding to suggested media presentation for a media consumer based on the AME media creditor120identifying media presented at the media devices135,140,145, etc.

FIG.2is a block diagram of an example implementation of the example AME media analyzer115ofFIG.1. The example AME media analyzer115associates information (e.g., media identifiers) corresponding to the example content publisher110with an AME identifier (e.g., a watermark) and an AME timestamp. The example AME media analyzer115includes an example communication receiver200, an example decoder210, an example data extractor220, an example associator230, and an example communication transmitter240.

In the illustrated example ofFIG.2, the AME media analyzer115includes the communication receiver200to obtain Internet communication. In the illustrated example, the communication receiver200implements a web server to obtain a media feed from the media splitter125ofFIG.1via the network150. For example, the media feed can be pushed to the AME media analyzer115from the content publisher110. In another example, the media feed can be pulled from the content publisher110by the AME media analyzer115. The media feed may be formatted as an HTTP message. However, any other message format and/or protocol may additionally or alternatively be used such as, for example, a file transfer protocol (FTP), a real-time transport protocol (RTP), a real-time control protocol (RTCP), a simple message transfer protocol (SMTP), an HTTP secure (HTTPS) protocol, an HTTP Live Streaming (HLS) protocol, a continuous stream from the example content publisher110, etc. Alternatively, the media feed may be playback from a standalone file obtained from the example content publisher110. In some examples, the communication receiver200unpacks data from the Internet communication (e.g., extracts data payload from an HTTP message) to be analyzed by the AME media analyzer115.

In the illustrated example ofFIG.2, the AME media analyzer115includes the decoder210to decode metadata embedded in media. In some examples, the media splitter125ofFIG.1transmits non-decoded media (e.g., unprocessed audio, unprocessed video, etc.) to the AME media analyzer115. For example, the media splitter125may transmit media that includes embedded (i.e., coded, encrypted, etc.) metadata. Alternatively, the example media splitter125may transmit decoded media (e.g., media with decoded metadata).

In some examples, the decoder210analyzes the media and determines that the media requires decoding. For example, the decoder210may select a media segment of the media. The example decoder210may detect a presence of embedded metadata in the media segment such as a code, a watermark, etc. In response to detecting the presence of the embedded metadata, the example decoder210may decode the embedded metadata. Additionally or alternatively, the example decoder210may extract a signature from the media segment (e.g., one or more characteristics of an audio and/or a video component of the media segment). In response to extracting the signature, the example decoder210may compare the signature to a reference signature (e.g., a signature extracted from the media presented at a reference site, a signature obtained from the example content publisher110, etc.) to identify the media segment. In some examples, the decoder210determines whether there is another media segment to process. For example, the decoder210may determine that the decoder210reached the end of the media, the media feed has been discontinued, etc. In some instances, the decoder210decodes an AME timestamp corresponding to the embedded metadata. For example, the AME timestamp may correspond to a media segment of the media as identified by the decoder210.

In the illustrated example ofFIG.2, the AME media analyzer115includes the data extractor220to extract information from media. For example, the data extractor220may extract decoded metadata (e.g., an AME identifier), publisher asset identifiers, timestamp information (e.g., an AME timestamp), etc. from the media. In some examples, the data extractor220may obtain information from an Internet communication packet. For example, the data extractor220may determine a source of the media by extracting a uniform resource locator (URL) from the Internet communication packet.

In the illustrated example ofFIG.2, the AME media analyzer115includes the associator230to generate one or more associations of MMI with an AME identifier. The example associator230may generate a look-up table entry based on the one or more associations. In some examples, the associator230generates a look-up table based on one or more look-up table entries. For example, the associator230may generate a look-up table entry that associates (1) a publisher asset identifier of media, (2) an AME identifier determined from metadata embedded in the media (e.g., a source identifier and a timestamp included in an embedded watermark), and (3) an AME timestamp corresponding to a media segment (e.g., a timestamp that increments from a start of the media, a timestamp that corresponds to a media segment within the media, etc.). In some examples, the identification information (e.g., the AME identifier) may include a universal identifier that is the same across multiple media distribution platforms and, thus, using the universal identifier and a corresponding timestamp may aid in linking MMI collected on a variety of platforms (e.g., a variety of content publishers).

In the illustrated example ofFIG.2, the AME media analyzer115includes the communication transmitter240to transmit information to the media association database155ofFIG.1. In the illustrated example, the example communication transmitter240implements a web server that transmits information such as, for example, media identifiers, a look-up table (e.g., an association look-up table), MMI, timestamps corresponding to a portion or a segment of media, etc. In the illustrated example, the transmitted information is formatted as an HTTP message. However, any other message format and/or protocol may additionally or alternatively be used such as, for example, a file transfer protocol (FTP), a simple message transfer protocol (SMTP), an HTTP secure (HTTPS) protocol, etc. Additionally or alternatively, the example communication transmitter240may transmit data via any other communication medium. For example, the communication transmitter240might transmit data via, for example, a USB connection, a Bluetooth connection, a serial connection, a local area network (LAN), etc.

In some examples, the communication transmitter240periodically and/or a-periodically transmits data to the media association database155ofFIG.1. The example communication transmitter240may transmit the data upon determining that the amount of data processed by the AME media analyzer115but not yet transmitted to the example media association database155has reached a threshold, and/or in response to a timer reaching a threshold (e.g., a time limit specifying that network communications are transmitted once every day). However, the transmission may occur at any desired interval(s) such as, for example, transmitting once every hour, once every week, etc. In examples in which the transmission is triggered based on an amount of data processed, but not yet transmitted, by the AME media analyzer115, the transmission threshold might indicate that data should be transmitted if there is more than a predetermined amount (e.g., one megabyte) of data processed, but not yet transmitted, by the AME media analyzer115. Any data processed amount may be used for such a trigger such as, for example, ten megabytes, one hundred megabytes, etc. Additionally or alternatively, multiple transmission thresholds may be present. For example, a first threshold indicating that data should be transmitted at least once a day and a second threshold indicating that data should be transmitted if more than one megabyte of data is processed, but not yet transmitted to the media association database155might be used.

While an example manner of implementing the AME media analyzer115ofFIG.1is illustrated inFIG.2, one or more of the elements, processes and/or devices illustrated inFIG.2may be combined, divided, re-arranged, omitted, eliminated, and/or implemented in any other way. Further, the example communication receiver200, the example decoder210, the example data extractor220, the example associator230, the example communication transmitter240and/or, more generally, the example AME media analyzer115ofFIG.2may be implemented by hardware, software, firmware, and/or any combination of hardware, software, and/or firmware. Thus, for example, any of the example communication receiver200, the example decoder210, the example data extractor220, the example associator230, the example communication transmitter240and/or, more generally, the example AME media analyzer115ofFIG.2could be implemented by one or more analog or digital circuit(s), logic circuits, programmable processor(s), application specific integrated circuit(s) (ASIC(s)), programmable logic device(s) (PLD(s)), and/or field programmable logic device(s) (FPLD(s)). When reading any of the apparatus or system claims of this patent to cover a purely software and/or firmware implementation, at least one of the example communication receiver200, the example decoder210, the example data extractor220, the example associator230, the example communication transmitter240and/or, more generally, the example AME media analyzer115ofFIG.2is/are hereby expressly defined to include a non-transitory computer readable storage device or storage disk such as a memory, a digital versatile disk (DVD), a compact disk (CD), a Blu-ray disk, etc. storing the software and/or firmware. Further still, the example AME media analyzer115ofFIG.2may include one or more elements, processes, and/or devices in addition to, or instead of, those illustrated inFIG.2, and/or may include more than one of any or all of the illustrated elements, processes, and devices.

FIG.3is a block diagram of an example implementation of the example AME media creditor120ofFIG.1. The example AME media creditor120credits and/or identifies media presented at a media device. The example AME media creditor120includes an example network interface300, an example media identifier310, an example data validator320, and an example report generator330.

In the illustrated example ofFIG.3, the AME media creditor120includes the network interface300to obtain information from and/or transmit information to the network150ofFIG.1. In the illustrated example, the example network interface300implements a web server that receives MMI from the content publisher110, audience measurement data from the metering database160, the audit database165, the validation database170, etc. In the illustrated example, the monitoring information is formatted as an HTTP message. However, any other message format and/or protocol may additionally or alternatively be used such as, for example, a file transfer protocol (FTP), a real-time transfer protocol (RTP), a simple message transfer protocol (SMTP), an HTTP secure (HTTPS) protocol, etc.

In the illustrated example ofFIG.3, the AME media creditor120includes the media identifier310to identify media accessed by or presented at the media devices135,140,145. In some examples, the media identifier310determines a publisher asset identifier and/or a publisher timestamp from obtained MMI (e.g., MMI received from the example content publisher110). The example media identifier310may map the publisher asset identifier and/or the publisher timestamp to an AME identifier and/or an AME timestamp in a look-up table. For example, the media identifier310may query a look-up table in the media association database155. The example media identifier310may reference the look-up table to identify media corresponding to the obtained MMI.

In some examples, the media identifier310credits a media device based on identifying a media segment. For example, the media identifier310may credit the media devices135,140,145to having been presented the media segment based on mapping a publisher asset identifier and/or a publisher timestamp to an AME identifier and/or an AME timestamp. In some instances, the media identifier310credits the media segment for being presented to the media device. For example, the media identifier310may credit the media segment to having been presented to the media devices135,140,145based on mapping the publisher asset identifier and/or the publisher timestamp to the AME identifier and/or the AME timestamp.

In the illustrated example ofFIG.3, the AME media creditor120includes the data validator320to perform quality control on obtained and/or processed information (e.g., MMI). In some examples, the content publisher110does not send accurate MMI (e.g., either by accident or by intention) to the AME media creditor120. In some instances, the data validator320performs verifications to ensure that the content publisher110is sending accurate data. For example, the data validator320may access a media segment independently of receiving MMI corresponding to the media segment from the content publisher110. For example, the data validator320may inspect the MMI from the content publisher110corresponding to a media segment. The example data validator320may identify a source of the media segment by identifying a URL of the media segment. The example data validator320may obtain the URL by inspecting the MMI, by inspecting the network communication (e.g., a header of an HTTP request) that delivered the MMI, etc.

In some examples, the data validator320transmits a request directed to a URL to retrieve a media segment. The example data validator320may obtain and analyze the requested media segment and extract MMI from the requested media segment. For example, the data validator320may utilize a user identifier (e.g., an identifier for advertisers (IDFA)) when accessing the requested media segment so that the access to the requested media segment can be determined by locating the IDFA in the MMI sent by the content publisher110to the AME media creditor120. The example data validator320may compare (1) the extracted MMI from the retrieved media to (2) the obtained MMI from the content publisher110. The example data validator320may determine whether there are any differences between the extracted and the obtained MMI. In response to determining a difference, the example data validator320may determine that the MMI obtained from example content publisher110is not to be used for reporting. For example, the data validator320may generate and transmit a validation alert to the validation database170.

In some examples, the data validator320performs quality control validation of MMI by obtaining audit information from the media devices135,140,145ofFIG.1via the audit database165ofFIG.1that does not include the same amount, depth, type, etc. of information compared to the MMI obtained from the content publisher110. In some instances, the quality control information obtained from the media devices135,140,145via the audit database165is limited to one or fewer than the total number of parameters included in the MMI obtained from the content publisher110. The example data validator320may compare a parameter included in the quality control information to the same parameter included in the MMI to determine whether the remaining parameters included in the MMI have a higher probability of being correct.

For example, the data validator320may perform quality control validation of MMI based on calculating media presentation session duration by comparing media presentation session start and end indicators, media presentation start and end indicators, etc. For example, the data validator320may extract (1) a first media presentation session start indicator and end indicator and (2) a corresponding IP address and/or a MAC address of the media device135from the MMI obtained from the content publisher110. The example data validator320may calculate a first media presentation session duration by calculating a difference between the first start indicator and the first end indicator. The example data validator320may obtain a second media presentation session start indicator and end indicator from the media device135(e.g., the media device135transmits the second start and end indicators to the audit database165by executing an automated monitoring script) via the audit database165. The example data validator320may calculate a second media presentation session duration by calculating a difference between the second start indicator and the second end indicator.

The data validator320may compare (1) the first media presentation session duration based on MMI obtained from the example content publisher110to (2) the second media presentation session duration based on information obtained from the media device135. The example data validator320may determine whether there are any differences based on the comparison.

In response to determining a difference, the example data validator320may determine that the MMI obtained from the example content publisher110is not to be used for reporting. For example, the data validator320may generate and transmit a validation alert to the validation database170, where the validation alert includes an indicator that the MMI obtained from the example content publisher110has not been validated. In response to the first and the second media presentation session durations matching, the example data validator320may determine that the MMI obtained from the example content publisher110is to be used for reporting. For example, the data validator320may generate and transmit a validation alert to the validation database170, where the validation alert includes an indicator that the MMI obtained from the example content publisher110has been validated.

In some instances, the data validator320performs quality control validation of MMI by comparing the MMI to audience measurement data. For example, the data validator320may query the metering database160to transmit metering data and/or query the audit database165to transmit audit data to the data validator320. The example data validator320may query for audience measurement data of interest (e.g., metering data corresponding to the same media presented at the media devices135,140,145). The example data validator320may query for audience measurement data of interest based on one or more demographics of interest, a geographical area of interest, a device platform (e.g., a smartphone manufacturer, a tablet manufacturer model identifier, etc.), an asset id (e.g., a television show, a movie, a video game, etc.), etc.

In some examples, the data validator320compares (1) the MMI corresponding to a media segment to (2) the audience measurement data corresponding to the media segment. The example data validator320may determine whether there are any differences between the MMI and the audience measurement data. For example, if there is audience measurement data that is not included in the MMI, then the data validator320may determine that the content publisher110is underreporting MMI corresponding to media presentation at the media devices135,140,145. In another example, if there is MMI that is not included in the audience measurement data, then the data validator320may determine that the content publisher110is overreporting MMI corresponding to the media devices135,140,145. In response to determining a difference, the example data validator320may determine that the MMI obtained from example content publisher110is not to be used for reporting. For example, the data validator320may generate and transmit a validation alert to the validation database170.

Additionally or alternatively, the example data validator320may perform quality control validation of MMI obtained from the example content publisher110by obtaining information from a media device executing an automated monitoring script. For example, the AME may instruct a panelist to configure a media device associated with the panelist to execute an automated monitoring script. The media device may execute the automated monitoring script periodically (e.g., based on a timer) or on command (e.g., executed manually by a user, based on a query from the AME, based on a query from the example data validator320, etc.) to transmit viewing behavior (e.g., media identifiers, key logs, screen captures, etc.) to the example data validator320. The example data validator320may compare MMI obtained from the content publisher110to the viewing behavior from the media device. In response to determining a difference between the MMI and the viewing behavior, the example data validator320may determine that the MMI obtained from example content publisher110is not to be used for reporting. For example, the data validator320may generate and transmit a validation alert to the validation database170.

In some examples, the data validator320performs quality control validation of MMI obtained from the content publisher110by obtaining media identifiers (e.g., codes, signatures, watermarks, etc.) extracted by a device at a reference site (e.g., a location that determines baseline information to which subsequent information may be compared to). For example, a device at a reference site may extract media identifiers from media. The example data validator320may obtain the media identifiers for the media from the device at the reference site. The example data validator320may compare the media identifiers obtained from the device at the reference site to media identifiers based on the media obtained from the example content publisher110. In response to determining a difference between the media identifiers, the example data validator320may determine that the MMI obtained from example content publisher110is not to be used for reporting.

In the illustrated example ofFIG.3, the AME media creditor120includes the report generator330to generate and/or prepare reports. The example report generator330prepares media measurement reports indicative of presentation of media at a media device. For example, the report generator330may generate a report including MMI based on mapping (1) a publisher asset identifier to (2) an AME identifier and/or an AME timestamp. In some examples, the report generator330generates a report based on an output of one or more quality control validation operations. For example, the report generator330may generate a report indicating that MMI obtained from the content publisher110is not to be used for reporting. In some instances, the report generator330transmits the reports to the validation database170, an audience measurement entity central server, an operation analyzer, a reporting server, etc.

While an example manner of implementing the AME media creditor120ofFIG.1is illustrated inFIG.3, one or more of the elements, processes and/or devices illustrated inFIG.3may be combined, divided, re-arranged, omitted, eliminated, and/or implemented in any other way. Further, the example network interface300, the example media identifier310, the example data validator320, the example report generator330and/or, more generally, the example AME media creditor120ofFIG.3may be implemented by hardware, software, firmware, and/or any combination of hardware, software, and/or firmware. Thus, for example, any of the example network interface300, the example media identifier310, the example data validator320, the example report generator330and/or, more generally, the example AME media creditor120ofFIG.3could be implemented by one or more analog or digital circuit(s), logic circuits, programmable processor(s), application specific integrated circuit(s) (ASIC(s)), programmable logic device(s) (PLD(s)), and/or field programmable logic device(s) (FPLD(s)). When reading any of the apparatus or system claims of this patent to cover a purely software and/or firmware implementation, at least one of the example network interface300, the example media identifier310, the example data validator320, the example report generator330and/or, more generally, the example AME media creditor120ofFIG.3is/are hereby expressly defined to include a non-transitory computer readable storage device or storage disk such as a memory, a digital versatile disk (DVD), a compact disk (CD), a Blu-ray disk, etc. storing the software and/or firmware. Further still, the example AME media creditor120ofFIG.3may include one or more elements, processes, and/or devices in addition to, or instead of, those illustrated inFIG.3, and/or may include more than one of any or all of the illustrated elements, processes, and devices.

A flowchart representative of example machine readable instructions for implementing the example AME media analyzer115ofFIGS.1and/or2is shown inFIG.4. In this example, the machine readable instructions comprise a program for execution by a processor such as the processor712shown in the example processor platform700discussed below in connection withFIG.7. The program may be embodied in software stored on a non-transitory computer readable storage medium such as a CD-ROM, a floppy disk, a hard drive, a digital versatile disk (DVD), a Blu-ray disk, or a memory associated with the processor712, but the entire program and/or parts thereof could alternatively be executed by a device other than the processor712and/or embodied in firmware or dedicated hardware. Further, although the example program is described with reference to the flowchart illustrated inFIG.4, many other methods of implementing the example AME media analyzer115may alternatively be used. For example, the order of execution of the blocks may be changed, and/or some of the blocks described may be changed, eliminated, or combined. Additionally or alternatively, any or all of the blocks may be implemented by one or more hardware circuits (e.g., discrete and/or integrated analog and/or digital circuitry, a Field Programmable Gate Array (FPGA), an Application Specific Integrated circuit (ASIC), a comparator, an operational-amplifier (op-amp), a logic circuit, etc.) structured to perform the corresponding operation without executing software or firmware.

As mentioned above, the example method ofFIG.4may be implemented using coded instructions (e.g., computer and/or machine readable instructions) stored on a non-transitory computer and/or machine readable medium such as a hard disk drive, a flash memory, a read-only memory, a compact disk, a digital versatile disk, a cache, a random-access memory, and/or any other storage device or storage disk in which information is stored for any duration (e.g., for extended time periods, permanently, for brief instances, for temporarily buffering, and/or for caching of the information). As used herein, the term non-transitory computer readable medium is expressly defined to include any type of computer readable storage device and/or storage disk and to exclude propagating signals and to exclude transmission media. “Including” and “comprising” (and all forms and tenses thereof) are used herein to be open ended terms. Thus, whenever a claim lists anything following any form of “include” or “comprise” (e.g., comprises, includes, comprising, including, etc.), it is to be understood that additional elements, terms, etc. may be present without falling outside the scope of the corresponding claim. As used herein, when the phrase “at least” is used as the transition term in a preamble of a claim, it is open ended in the same manner as the term “comprising” and “including” are open ended.

FIG.4is a flowchart representative of example machine readable instructions which may be executed by the processor712ofFIG.7to implement the example AME media analyzer115ofFIGS.1and/or2to analyze and process media. The example program400ofFIG.4begins at block402when the example AME media analyzer115obtains media from a content publisher. For example, the communication receiver200may obtain a media feed from the media splitter125. At block404, the example AME media analyzer115selects a media segment of interest to process. For example, the decoder210may select a portion or a segment of the media feed to process.

At block406, the example AME media analyzer115determines whether to decode the media segment. For example, the decoder210may determine that there is embedded metadata in the media segment. If, at block406, the example AME media analyzer115determines not to decode the media segment, control proceeds to block410to determine a publisher asset identifier for the media segment. If, at block406, the example AME media analyzer115determines to decode the media segment, then, at block408, the AME media analyzer115decodes the media segment. For example, the decoder210may decode a code, a watermark, etc. from the media segment.

At block410, the example AME media analyzer115determines a publisher asset identifier for the media segment. For example, the data extractor220may determine a publisher asset identifier identifying the content publisher110as providing the media feed, identifying the media segment, etc. At block412, the example AME media analyzer115extracts an AME identifier from the media segment. For example, the data extractor220may extract the code, the watermark, etc. from the media feed. In another example, the decoder210may extract a signature from the media segment. At block414, the example AME media analyzer115extracts an AME timestamp. For example, the data extractor220may extract a timestamp corresponding to a time location in the media segment where the code, the signature, the watermark, etc. was extracted.

At block416, the example AME media analyzer115associates the publisher asset identifier with the AME identifier and the AME timestamp. For example, the associator230may associate or credit the publisher asset identifier with the AME identifier and the AME timestamp. At block418, the example AME media analyzer115generates a look-up table entry. For example, the associator230may generate a look-up table based on the association or crediting of the publisher asset identifier with the AME identifier and the AME timestamp.

At block420, the example AME media analyzer115determines whether there is another media segment of interest to process. For example, the decoder210may determine whether the media feed has ended, whether there is another media segment left to process, etc. If, at block420, the example AME media analyzer115determines that there is another media segment of interest to process, control returns to block404to select another media segment of interest to process. If, at block420, the example AME media analyzer115determines that there is not another media segment of interest to process, then, at block422, the AME media analyzer115generates a look-up table. For example, the associator230may generate a look-up table based on one or more look-up table entries. At block424, the example AME media analyzer115stores the look-up table in a database. For example, the communication transmitter240may transmit the look-up table to the media association database155.

Flowcharts representative of example machine readable instructions for implementing the example AME media creditor120ofFIGS.1and/or3are shown inFIGS.5-6. In these examples, the machine readable instructions comprise a program for execution by a processor such as the processor812shown in the example processor platform800discussed below in connection withFIG.8. The program may be embodied in software stored on a non-transitory computer readable storage medium such as a CD-ROM, a floppy disk, a hard drive, a digital versatile disk (DVD), a Blu-ray disk, or a memory associated with the processor812, but the entire program and/or parts thereof could alternatively be executed by a device other than the processor812and/or embodied in firmware or dedicated hardware. Further, although the example program is described with reference to the flowcharts illustrated inFIGS.5-6, many other methods of implementing the example AME media creditor120may alternatively be used. For example, the order of execution of the blocks may be changed, and/or some of the blocks described may be changed, eliminated, or combined. Additionally or alternatively, any or all of the blocks may be implemented by one or more hardware circuits (e.g., discrete and/or integrated analog and/or digital circuitry, a Field Programmable Gate Array (FPGA), an Application Specific Integrated circuit (ASIC), a comparator, an operational-amplifier (op-amp), a logic circuit, etc.) structured to perform the corresponding operation without executing software or firmware.

As mentioned above, the example methods ofFIGS.5-6may be implemented using coded instructions (e.g., computer and/or machine readable instructions) stored on a non-transitory computer and/or machine readable medium such as a hard disk drive, a flash memory, a read-only memory, a compact disk, a digital versatile disk, a cache, a random-access memory, and/or any other storage device or storage disk in which information is stored for any duration (e.g., for extended time periods, permanently, for brief instances, for temporarily buffering, and/or for caching of the information). Additionally or alternatively, the example methods ofFIGS.5-6may be implemented using coded instructions (e.g., computer and/or machine readable instructions) stored on a non-transitory computer and/or machine readable medium such as a hard disk drive, a flash memory, a read-only memory, a compact disk, a digital versatile disk, a cache, a random-access memory and/or any other storage device or storage disk in which information is stored for any duration (e.g., for extended time periods, permanently, for brief instances, for temporarily buffering, and/or for caching of the information).

FIG.5is a flowchart representative of example machine readable instructions which may be executed by the processor812ofFIG.8to implement the example AME media creditor120ofFIGS.1and/or3to credit media. The example program500ofFIG.5begins at block502when the example AME media creditor120obtains media monitoring information (MMI) corresponding to a media segment presented at a media device. For example, the network interface300may obtain MMI from the content publisher110via the communication processor130corresponding to a media segment presented at the media devices135,140,145.

At block504, the example AME media creditor120determines a publisher asset identifier from the MMI. For example, the media identifier310may determine a publisher asset identifier corresponding to the media segment presented at the media devices135,140,145. At block506, the example AME media creditor120determines a publisher timestamp from the MMI. For example, the media identifier310may determine a timestamp corresponding to the media segment as determined by the content publisher110. At block508, the example AME media creditor120determines an AME identifier and an AME timestamp. For example, the media identifier310may map the publisher asset identifier and the publisher timestamp to an AME identifier and an AME timestamp in a look-up table stored in the media association database155.

At block510, the example AME media creditor120identifies the media segment presented at the media device. For example, the media identifier310may identify the media segment presented at the media devices135,140,145based on the determining the AME identifier and the AME timestamp. At block512, the example AME media creditor120generates a report. For example, the report generator330may generate a report including crediting the identified media as being presented at the media devices135,140,145. At block514, the example AME media creditor120transmits the report. For example, the report generator330may transmit the report to an AME central server, the validation database170, etc.

FIG.6is a flowchart representative of example machine readable instructions which may be executed by the processor812ofFIG.8to implement the example AME media creditor120ofFIGS.1and/or3to audit and/or validate MMI. The example program600ofFIG.6begins at block602when the example AME media creditor120obtains MMI (MMI) corresponding to media presented at a media device. For example, the network interface300may obtain MMI corresponding to a media segment presented at the media devices135,140,145.

At block604, the example AME media creditor120determines a publisher asset identifier from the MMI. For example, the media identifier310may determine a publisher asset identifier for the media segment. At block606, the example AME media creditor120determines a publisher timestamp from the MMI. For example, the media identifier310may determine a timestamp corresponding to the media segment as determined by the content publisher110. At block608, the example AME media creditor120determines an AME identifier and an AME timestamp. For example, the media identifier310may map the publisher asset identifier and the publisher timestamp to an AME identifier and an AME timestamp in a look-up table stored in the media association database155.

At block610, the example AME media creditor120identifies the media segment presented at the media device. For example, the media identifier310may identify the media segment presented at the media devices135,140,145based on determining the AME identifier and the AME timestamp. At block612, the example AME media creditor120obtains MMI from a secondary source. For example, the data validator320may obtain audience measurement data such as metering data from the metering database160, audit data from the audit database165, etc.

At block614, the example AME media creditor120performs a quality control validation. For example, the data validator320may validate the MMI obtained from the content publisher110by comparing (1) a first media presentation session duration based on the MMI obtained from the content publisher110, and (2) a second media presentation session duration based on the MMI obtained from the audit database165. In another example, the data validator320may validate the MMI obtained from the content publisher110by comparing (1) a first media identifier based on the MMI obtained from the content publisher110, and (2) a second media identifier based on the panelist data, audit data, census data, etc. obtained from the metering database160, the audit database165, etc.

At block616, the example AME media creditor120generates a report. For example, the report generator330may generate a report including a validation of the MMI obtained from the content publisher110, a crediting of media to a media device, a mapping of a publisher asset identifier and/or a publisher timestamp to an AME identifier and/or an AME timestamp, etc. At block618, the example AME media creditor120transmits the report. For example, the report generator330may transmit the report to an AME central server, the validation database170, etc.

FIG.7is a block diagram of an example processor platform700capable of executing instructions to implement the method ofFIG.4and the example AME media analyzer115ofFIGS.1and/or2. The processor platform700can be, for example, a server, an industrial computer, or any other type of computing device.

The processor platform700of the illustrated example includes a processor712. The processor712of the illustrated example is hardware. For example, the processor712can be implemented by one or more integrated circuits, logic circuits, microprocessors or controllers from any desired family or manufacturer. The hardware processor may be a semiconductor based (e.g., silicon based) device. In this example, the processor712implements the example communication receiver200, the example decoder210, the example data extractor220, the example associator230, the example communication transmitter240and/or, more generally, the example AME media analyzer115ofFIGS.1and/or2.

The processor712of the illustrated example includes a local memory713(e.g., a cache). The processor712of the illustrated example is in communication with a main memory including a volatile memory714and a non-volatile memory716via a bus718. The volatile memory714may be implemented by Synchronous Dynamic Random Access Memory (SDRAM), Dynamic Random Access Memory (DRAM), RAMBUS Dynamic Random Access Memory (RDRAM), and/or any other type of random access memory device. The non-volatile memory716may be implemented by flash memory and/or any other desired type of memory device. Access to the main memory714,716is controlled by a memory controller.

The processor platform700of the illustrated example also includes an interface circuit720. The interface circuit720may be implemented by any type of interface standard, such as an Ethernet interface, a universal serial bus (USB), and/or a PCI express interface.

In the illustrated example, one or more input devices722are connected to the interface circuit720. The input device(s)722permit(s) a user to enter data and commands into the processor712. The input device(s) can be implemented by, for example, an audio sensor, a microphone, a camera (still or video), a keyboard, a button, a mouse, a touchscreen, a track-pad, a trackball, isopoint, and/or a voice recognition system.

One or more output devices724are also connected to the interface circuit720of the illustrated example. The output devices724can be implemented, for example, by display devices (e.g., a light emitting diode (LED), an organic light emitting diode (OLED), a liquid crystal display, a cathode ray tube display (CRT), a touchscreen, a tactile output device, a printer and/or speakers). The interface circuit720of the illustrated example, thus, typically includes a graphics driver card, a graphics driver chip, or a graphics driver processor.

The interface circuit720of the illustrated example also includes a communication device such as a transmitter, a receiver, a transceiver, a modem and/or network interface card to facilitate exchange of data with external machines (e.g., computing devices of any kind) via a network726(e.g., an Ethernet connection, a digital subscriber line (DSL), a telephone line, coaxial cable, a cellular telephone system, etc.).

The processor platform700of the illustrated example also includes one or more mass storage devices728for storing software and/or data. Examples of such mass storage devices728include floppy disk drives, hard drive disks, magnetic media, compact disk drives, Blu-ray disk drives, RAID systems, and digital versatile disk (DVD) drives. The example mass storage728may implement the example media association database155.

The coded instructions732ofFIG.4may be stored in the mass storage device728, in the volatile memory714, in the non-volatile memory716, and/or on a removable non-transitory computer readable storage medium such as a CD or DVD.

FIG.8is a block diagram of an example processor platform800capable of executing instructions to implement the methods ofFIGS.5-6and the example AME media creditor120ofFIGS.1and/or3. The processor platform800can be, for example, a server, an industrial computer, or any other type of computing device.

The processor platform800of the illustrated example includes a processor812. The processor812of the illustrated example is hardware. For example, the processor812can be implemented by one or more integrated circuits, logic circuits, microprocessors or controllers from any desired family or manufacturer. The hardware processor may be a semiconductor based (e.g., silicon based) device. In this example, the processor812implements the example network interface300, the example media identifier310, the example data validator320, the example report generator330and/or, more generally, the example AME media creditor120ofFIGS.1and/or3.

The processor812of the illustrated example includes a local memory813(e.g., a cache). The processor812of the illustrated example is in communication with a main memory including a volatile memory814and a non-volatile memory816via a bus818. The volatile memory814may be implemented by Synchronous Dynamic Random Access Memory (SDRAM), Dynamic Random Access Memory (DRAM), RAMBUS Dynamic Random Access Memory (RDRAM), and/or any other type of random access memory device. The non-volatile memory816may be implemented by flash memory and/or any other desired type of memory device. Access to the main memory814,816is controlled by a memory controller.

The processor platform800of the illustrated example also includes an interface circuit820. The interface circuit820may be implemented by any type of interface standard, such as an Ethernet interface, a universal serial bus (USB), and/or a PCI express interface.

In the illustrated example, one or more input devices822are connected to the interface circuit820. The input device(s)822permit(s) a user to enter data and commands into the processor812. The input device(s) can be implemented by, for example, an audio sensor, a microphone, a camera (still or video), a keyboard, a button, a mouse, a touchscreen, a track-pad, a trackball, isopoint, and/or a voice recognition system.

One or more output devices824are also connected to the interface circuit820of the illustrated example. The output devices824can be implemented, for example, by display devices (e.g., a light emitting diode (LED), an organic light emitting diode (OLED), a liquid crystal display, a cathode ray tube display (CRT), a touchscreen, a tactile output device, a printer and/or speakers). The interface circuit820of the illustrated example, thus, typically includes a graphics driver card, a graphics driver chip, or a graphics driver processor.

The interface circuit820of the illustrated example also includes a communication device such as a transmitter, a receiver, a transceiver, a modem and/or network interface card to facilitate exchange of data with external machines (e.g., computing devices of any kind) via a network826(e.g., an Ethernet connection, a digital subscriber line (DSL), a telephone line, coaxial cable, a cellular telephone system, etc.). The interface circuit820may implement the example communication receiver ofFIG.2and/or the example network interface300ofFIG.3.

The processor platform800of the illustrated example also includes one or more mass storage devices828for storing software and/or data. Examples of such mass storage devices828include floppy disk drives, hard drive disks, magnetic media, compact disk drives, Blu-ray disk drives, RAID systems, and digital versatile disk (DVD) drives. The example mass storage828may implement the example media association database155.

The coded instructions832ofFIGS.5-6may be stored in the mass storage device828, in the volatile memory814, in the non-volatile memory816, and/or on a removable non-transitory computer-readable storage medium such as a CD or DVD.

From the foregoing, it will be appreciated that the above disclosed methods, apparatus, and articles of manufacture credit presentation of media to a media device based on obtaining media monitoring information including a publisher asset identifier. Crediting the media to the media device based on the publisher asset identifier reduces complexity of media monitoring implementation at a content publisher. By implementing a multi-server approach, an audience measurement entity can perform media crediting by more accurately identifying the presented media. Moreover, by implementing the multi-server approach, the audience measurement entity can achieve greater device coverage by monitoring media accessed via a diverse range of media device types. In addition, the audience measurement entity can upgrade media monitoring systems more quickly due to media monitoring being conducted external to individual media devices. By implementing a multi-server approach, the AME can improve memory and processor utilization (e.g., increase available memory storage and/or calculation resources) due to shifting processing tasks from the AME to the content publisher and/or the media device.

Although certain example methods, apparatus and articles of manufacture have been disclosed herein, the scope of coverage of this patent is not limited thereto. On the contrary, this patent covers all methods, apparatus and articles of manufacture fairly falling within the scope of the claims of this patent.