Patent Description:
Media, such as a television broadcast, may be encoded with watermarks that, when detected, are decoded to identify the media that was presented.

The figures are not to scale. In general, the same reference numbers will be used throughout the drawing(s) and accompanying written description to refer to the same or like parts.

Audience measurement entities desire knowledge on how users interact with media devices such as smartphones, tablets, laptops, smart televisions, etc. In particular, media monitoring companies 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..

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 watermarking techniques identify media by embedding one or more 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.

Audience measurement entities utilize watermarks to identify media. For example, one or more watermark decoder(s) at an audience measurement entity and/or one or more watermark decoder(s) of a media monitor can monitor media signals (e.g., received from a broadcast) to identify media that is being presented. A watermark decoder may be configured to detect and subsequently decode specific types of watermarks (e.g., watermark types utilized by the audience measurement entity, by a broadcaster, by a media provider, etc.). Therefore, a media monitor may include a plurality of different watermark decoders to decode respective watermark types. The watermark(s) that are detected and decoded correspond to a known type of watermark that is encoded by the audience measurement entity, media distributor, and/or other entity. The one or more watermarks encoded in the media signals can be detected in the media signals when the media signals are processed by a media monitor (e.g., based on microphone pickup of the media signals, wired pickup of the media signals, or another wireless pickup technique).

Watermarks are often encoded at regular intervals (e.g., every five seconds). A watermark decoder can thus determine an identified media presentation is still ongoing based on the presence of watermarks at the regular intervals. Some audience measurement entities may utilize a threshold time period to determine, with sufficient confidence, that a media presentation has concluded. A watermark decoder may be configured with a time-based threshold (e.g., fifty-seven seconds) within which a matching watermark (matching a previously detected watermark) must be detected to identify a media presentation as ongoing. For example, utilizing a fifty-seven second threshold, if a watermark is detected and decoded and then no matching watermark is decoded within the fifty-seven seconds, the watermark decoder determines that the media presentation corresponding to the previously detected watermark ended at the time of the previously detected watermark.

As watermarks are typically encoded in a manner that intentionally evades human perception (e.g., based on psychoacoustic limits and utilizing low amplitude sine waves), watermarks can have low signal strength (e.g., signal to noise ratio) and can therefore be difficult to decode. For example, in some sections of a media presentation, the audio characteristics of the media signal may reduce an overall signal to noise ratio associated with the watermark, preventing the watermark decoder from detecting and decoding the watermark with confidence.

When an audience measurement entity utilizes a threshold time period to determine a media presentation is ongoing, this threshold time period can be configured to represent an expected maximum gap between decodable watermarks (e.g., as determined empirically). However, the threshold cannot be extended too long, or else the audience measurement entity will be uncertain whether consecutive detected watermarks that are nearing the threshold time period represent one continuous presentation or perhaps an occurrence of a separate presentation (e.g., where a different presentation occurred in between, or no presentation occurred in between). Therefore, utilizing conventional techniques focused on decoding one type of watermark for media identification, an audience measurement entity may have difficulty reliably identifying media presentations when watermark signal strength (e.g., signal-to-noise ratio) is reduced.

Media signals can include more than one type of watermark. An audience measurement entity may coordinate with a media provider (e.g., a content creator) to embed a first type of watermark into the media signal. A media distributor and/or other media entity may additionally embed a second type of watermark into the media signal. The audience measurement entity and/or media monitor, when detecting and decoding watermarks in the media signal, may be able to detect and, in some examples, decode the second type watermark. However, the second type of watermark may not decode to the same identifier as the first type of watermark. For example, each of the first and second types of watermarks, despite representing the same media presentation, may correspond to different codes which are to be separately compared to separate reference databases specific to their respective watermark types. The first and second watermark types may be decoded using separate decoding techniques. Conventionally, a watermark decoder is configured to work with one type of watermark, while not utilizing other types of watermarks that may be present in media signals. Thus, media monitoring devices (e.g., media monitors) may include a plurality of watermark decoders corresponding to different types of watermarks embedded in the media signals. However, each watermark decoder may utilize an independent crediting chain, whereby watermarks of a first type create a first type of media presentation record, and watermarks of a second type create a second type of media presentation record, despite potentially representing the same media presentation.

Example methods, apparatus, systems and articles of manufacture (e.g., physical storage media) for associating different watermarks detected in media are disclosed herein. Example disclosed media measurement techniques utilize a plurality of watermarks of one or more types that are present in a media signal to identify one or more characteristics (e.g., a program name, a channel name, a station identifier, etc.) of the media conveyed by the media signal. In some examples, a watermark data structure is accessed that identifies watermarks of different types that correspond to the same media presentation. In some such examples, a media monitor accesses such a data structure that is generated by an audience measurement entity. For example, the audience measurement entity may generate the watermark data structure by observing media signals from a media measurement system (MMS), which serves as a monitoring location where a plurality of media signals can be observed and analyzed. In some such examples, the MMS detects and decodes watermarks in the media signals and associates watermarks that correspond to the same media presentation by indicating this correspondence in the watermark data structure. In some examples, the MMS utilizes metadata conveyed with the media signals (e.g., identification metadata) to associate different watermarks detected in the media signals.

In some example techniques disclosed herein, a media monitor or other media measurement apparatus utilizes an association technique to identify watermarks of different types that correspond to the same media presentation as the watermarks are detected. In some example association techniques described herein, by observing watermarks that are encoded within an alignment time threshold of each other, watermarks can be determined to correspond to the same media. For example, if a first watermark is observed at a regular interval (e.g., every four seconds), and a second watermark of a different type regularly occurs within a short period (e.g., the alignment time threshold) relative to the first watermark type, the first and second watermarks can be assumed to identify the same media. While conventional techniques typically focus on utilization of one type of watermark to generate media presentation records, techniques disclosed herein associate watermarks that are observed substantially simultaneously (e.g., within the alignment time threshold) such that multiple types of watermarks can be utilized to identify the media presentation as it persists, or when the same media presentation (e.g., having a same identifier, such as a channel identification) occurs again in the future. Some such example techniques disclosed herein utilize these associations to generate the watermark data structure.

Example media measurement techniques disclosed herein enhance the ability of a media monitor or other media measurement apparatus to generate precise media presentation records. For example, if a main watermark that is used to generate media presentation records has low signal strength during a portion of a media presentation, the media monitor can utilize (e.g., via the watermark data structure, via association, etc.) other watermarks that are detected in the signal to determine whether the media presentation is still ongoing. In some examples, by leveraging a plurality of watermark types that are frequently present in media signals, example techniques disclosed herein enable precise determination of when a media presentation concludes. Further, by leveraging the plurality of watermark types, example techniques disclosed herein can maintain continuity of an ongoing media presentation record based on a plurality of watermark types when a main type of watermark has low signal strength or is not observed.

These and other techniques, methods, apparatus, systems and articles of manufacture to associate different watermarks detected in media are disclosed in greater detail below.

<FIG> is a block diagram of an example environment <NUM> for associating different watermarks detected in media in accordance with the teachings of this disclosure. The example environment <NUM> includes an example media distributor <NUM>, an example media signal <NUM>, an example household <NUM>, an example media presentation device <NUM>, an example media monitor <NUM>, example media monitoring data <NUM>, an example audience measurement entity (AME) <NUM>, an example media measurement system (MMS) <NUM>, an example watermark data structure <NUM> and an example back office processing system <NUM>.

The media distributor <NUM> of the illustrated example of <FIG> is an entity for communicating media signals to a broad audience. For example, the media distributor <NUM> can receive a plurality of different media signals conveying media and utilize transmission technology (e.g., via antennas, via satellites, via cable, via the internet, etc.) to make the media signals available to a large audience. In some examples, the media distributor <NUM> utilizes a watermark encoder to embed symbols representative of identifying information into the media signals prior to communicating the media signal(s). In some examples, the media signal(s) already include embedded watermarks when they are received at the media distributor <NUM> (e.g., having been previously encoded by a content creator, by a media monitoring entity, by another media distributor, etc.).

The media signal <NUM> of the illustrated example of <FIG> is a signal conveying media that is intended for distribution to an audience. The media signal <NUM> is transmitted generally to a broad audience, whereby the MMS <NUM> the media presentation device <NUM>, and ultimately the media monitor <NUM> are able to receive the media signal <NUM>. The media signal <NUM> can be an audio signal conveying media (e.g., a radio broadcast, a podcast, etc.), an audiovisual signal conveying media (e.g., a television show, a movie, a commercial, etc.) or any other signal conveying media. For example, the media signal <NUM> can be a broadcast signal, a multicast signal, a unicast signal, a streaming signal, and/or any type of media signal. In some examples, a media signal is transmitted to the media distributor <NUM> by a content creator, a content distributor, or another entity and is then distributed as the media signal <NUM>. The media signal <NUM> of the illustrated example includes one or more watermarks of one or more watermark types. The media signal <NUM> can be conveyed wirelessly (e.g., via a network, via antennae, via Wi-Fi, etc.) or via a direct physical connection (e.g., cable, Ethernet etc.). In some examples, the media signal <NUM> is transmitted to the household <NUM>, but not to the AME <NUM>. The media signal <NUM> of the illustrated example is presented by the media presentation device <NUM> and received by the media monitor <NUM>. In some examples, the media signal <NUM> includes additional noise (e.g., reduced signal quality) after it is reproduced by the media presentation device <NUM>. The media signal <NUM> may be received by the media monitor <NUM> via a connection to a media presentation device (e.g., the media presentation device <NUM> of <FIG>), via a microphone, etc..

The household <NUM> of the illustrated example of <FIG> is a household including the media presentation device <NUM> and the media monitor <NUM>. The household <NUM> represents any location at which media is presented and monitored, and does not necessarily need to be a household or residence (e.g., the household <NUM> may be a workplace, a vehicle, a public setting, etc.).

The media presentation device <NUM> of the illustrated example of <FIG> is a device that accesses the media signal <NUM> for presentation. In some examples, the media presentation device <NUM> is capable of directly presenting media (e.g., via a display), while in other examples, the media presentation device <NUM> presents the media on separate media presentation equipment (e.g., speakers, a display, etc.). Thus, as used herein, a "media presentation device" may or may not be able to present media without assistance from a second device. Media presentation devices are typically consumer electronics. For example, the media presentation device <NUM> of the illustrated example may be a television, which is capable of directly presenting media (e.g., via an integrated and/or connected display and speakers). In some examples, the media presentation device is a tablet, a smartphone, a desktop computer, a laptop computer, and/or any other type of media presentation device. The household <NUM> may include any type and/or number of media device(s) that access the media signal <NUM>. In some examples, the media presentation device <NUM> is connected (e.g., via a wireless connection and/or a wired connection) with the media monitor <NUM>.

The media monitor <NUM><NUM> of the illustrated example of <FIG> executes media measurement tasks. In some examples, the media monitor <NUM> processes audio of the media signal <NUM> presented by the media presentation device <NUM> (e.g., via a microphone). In some such examples, the media monitor <NUM> is a standalone device separate from the media presentation device. For example, the media monitor <NUM> may be wirelessly connected to the media presentation device <NUM> and/or removably connected (e.g., via connections such as HDMI, USB, Ethernet, or other connections) to the media presentation device <NUM>. In some examples, the media monitor <NUM> includes a microphone to pick up the media signal <NUM> and/or any other media signals presented in the vicinity of the media monitor <NUM>. In some examples, the media monitor <NUM> is installed in (e.g., integral to) the media presentation device <NUM>. For example, the media monitor <NUM> may include one or more hardware and/or software components embedded in the media presentation device <NUM>.

The media monitor <NUM> of the illustrated example may receive the watermark data structure <NUM> from the MMS <NUM>, or from another component of the AME <NUM> and utilize the watermark data structure <NUM> to associate watermarks of different watermark types having identifiers corresponding to same media presentations (e.g., a channel, a program name, etc.).

In some examples, the media monitor <NUM> does not receive the watermark data structure <NUM>, but instead utilizes a matching and/or association technique to associate different watermarks detected in media. The media monitor <NUM> of the illustrated example generates media monitoring data <NUM> and transmits the media monitor data <NUM> to the AME <NUM> (e.g., the back office processing system <NUM> of the AME <NUM>). Further detail of the structure of the media monitor <NUM> and the techniques performed by the media monitor <NUM> is described in connection with <FIG>.

The media monitoring data <NUM> of the illustrated example of <FIG> is data corresponding to media processed by the media monitor <NUM>. The media monitoring data <NUM> may include one or more media presentation records communicating media presented via a media presentation device (e.g., the media presentation device <NUM>). In some examples, the media monitoring data <NUM> includes identification information, such as a station name, a program name, a program genre, etc. The media monitoring data <NUM> of the illustrated example includes start and end times associated with media presentation records. The media presentation records can start when the media presentation device <NUM> transitions to an "on" state and/or when a new media presentation is encountered (e.g., as determined by decoding watermarks and/or utilizing other identification techniques). The media presentation records can conclude when the media presentation device <NUM> transitions to an "off" state and/or when a media presentation ends (e.g., based on encountering a new media presentation, based on a duration since a previous identifier exceeding a threshold, etc.). In some examples, the media monitor <NUM> transmits media monitoring data <NUM> that is unprocessed to the back office processing system <NUM>, where further analysis is performed. For example, the media monitoring data <NUM> can include recorded portions of the media signal <NUM>.

The AME <NUM> of the illustrated example of <FIG> is an entity responsible for collecting media monitoring information. The AME <NUM> collects media monitoring data such as the media monitoring data <NUM> from a plurality of monitors to determine, among other things, media consumption habits, advertising exposure, audience size, etc. The AME <NUM> includes the MMS <NUM> and the back office processing system <NUM>. In the illustrated example, the MMS <NUM> and the back office processing system <NUM> are separate locations, each operated and/or utilized by the AME <NUM>. In some examples, the MMS <NUM> and the back office processing system <NUM> are at a common location and/or share common components.

The MMS <NUM> of the illustrated example of <FIG> is a location that observes and/or collects data regarding media signals. The MMS <NUM> may include one or more receivers (e.g., set top boxes) to access media from the media distributor <NUM>. The MMS <NUM> of the illustrated example generates the watermark data structure <NUM> based on watermarks observed in broadcast signals (e.g., the media signal <NUM>). In some examples, the MMS <NUM> accesses metadata associated with the broadcast signals, and associates all watermarks detected during the time period of a media presentation (e.g., as indicated by the metadata) in the watermark data structure. In some examples, one or more people can manually associate watermarks that are observed at the same time at the MMS <NUM> and add them to the watermark data structure <NUM>. In some examples, the association techniques utilized by the media monitor <NUM> to generate watermark data structures can be employed on a larger scale at the MMS <NUM> to generate watermark data structures as media presentations occur. The MMS <NUM> can transmit the watermark data structure <NUM> to the media monitor <NUM> when it is requested by the media monitor <NUM>, at a regular interval, and/or at any other time.

The watermark data structure <NUM> of the illustrated example of <FIG> is used by the media monitor <NUM> to determine whether one or more watermark(s) detected in the media signal <NUM> correspond to other watermarks, and thus, correspond to a same media presentation record. The watermark data structure <NUM> is a data structure that holds information about watermarks. The watermark data structure <NUM> may be a look-up table, a matrix, and/or any data storage solution to store information pertaining to corresponding watermarks. The watermark data structure <NUM> may include, for example, watermark codes in a same row or column that correspond to a same media presentation. Thus, if a watermark code is received that is not of a watermark type being currently used to establish and modify media presentation records, the watermark data structure <NUM> can be queried to potentially associate the watermark code with one or more watermark codes that are currently in use for media presentation records. In some examples, the watermark data structure <NUM> is generated at the MMS <NUM> and communicated to the media monitor <NUM>. In some examples, the watermark data structure <NUM> is generated at the media monitor <NUM> as watermarks are detected.

The back office processing system <NUM> of the illustrated example of <FIG> is a facility of the AME <NUM> that processes media monitoring data. The back office processing system <NUM> of the illustrated example collects media monitoring data from a plurality of media monitors at a plurality of locations. The back office processing system <NUM> can additionally or alternatively access and/or analyze media monitoring data from the MMS <NUM>. In some examples, watermark association may be performed at the back office processing system <NUM> as opposed to at the media monitor <NUM>. For example, the media monitor <NUM> may transmit the media monitoring data <NUM> as raw data (e.g., microphone data) and/or partially processed data (e.g., watermark-specific data, extracted watermark codes, etc.) to the back office processing system <NUM>, which may then reference one or more watermark data structures to identify media presentations and generate media presentation records.

In operation, the media distributor <NUM> communicates the media signal <NUM> to the household <NUM>, where it is received and presented by the media presentation device <NUM>. The media monitor <NUM> processes the media presentation and generates media monitoring data <NUM> based on watermarks observed in the media signal <NUM>. The AME <NUM> additionally receives the media signal <NUM> at the MMS <NUM>, which can generate and transmit the watermark data structure <NUM> for use by the media monitor <NUM> when generating the media monitoring data <NUM>. The back office processing system <NUM> accesses the media monitoring data <NUM> to generate aggregate media monitoring data.

<FIG> is a block diagram of an example implementation of the media monitor <NUM> of <FIG> for associating different watermarks detected in media constructed in accordance with the teachings of this disclosure. The media monitor <NUM> receives the media signal <NUM> and may receive the watermark data structure <NUM>. The media monitor <NUM> outputs the media monitoring data <NUM>. The media monitor <NUM> includes example watermark detectors <NUM>, an example event generator <NUM>, an example watermark data structure modifier <NUM>, an example watermark data structure analyzer <NUM>, an example data store <NUM>, an example bridge timer <NUM>, an example media presentation identifier <NUM>, and an example monitoring data transmitter <NUM>.

The watermark detectors <NUM> of the illustrated example of <FIG> include one or more detectors to detect and/or decodes watermarks embedded in the media signal <NUM>. In some examples, to detect and/or decode watermarks in the media signal <NUM>, the watermark detectors <NUM> can convert the media signal <NUM> into a format enabling identification of watermark components (e.g., tones). For example, the watermark detectors <NUM> can convert the media signal <NUM> into a fast Fourier transform (FFT) representation, a discrete Fourier transform (DFT) representation, and/or any other frequency domain representation of the media signal <NUM>. In some examples, the watermark detectors <NUM> identify watermark components based on boosted (e.g., amplified) amplitude values of specific frequency ranges of the media signal <NUM>. In some examples, the watermark detectors <NUM> detect watermark symbols and are able to decode the watermark symbols.

The event generator <NUM> of the illustrated example of <FIG> sorts and/or aggregates watermarks as they are detected by the watermark detectors <NUM>. The event generator <NUM> of the illustrated example additionally or alternatively determines a master watermark type of the watermark types detected by the watermark detectors <NUM>. The event generator <NUM> communicates watermarks of the master watermark type to the media presentation identifier <NUM> to be used directly in establishing, modifying, and/or concluding media presentation records. Further, the event generator <NUM> communicates watermarks that are not of the master watermark type (e.g., not used to directly modify media presentation records) to the watermark data structure analyzer <NUM> to determine whether the watermarks are associated with master watermarks in the watermark data structure <NUM>. As used herein, the term "master watermark" refers to a watermark which is utilized as a primary watermark for creation of media presentation records. The event generator <NUM> can alter which watermark type is used as the master watermark type based on ones of the watermark detectors <NUM> that are available, as well as the types of watermarks being detected in the media signal <NUM>. In some examples, all watermarks detected by the watermark detectors <NUM> are processed through the event generator <NUM>. In some such examples, the event generator <NUM> sorts the watermarks by watermark type and then communicates them to the appropriate components of the media monitor (e.g., to the watermark data structure modifier <NUM>, the watermark data structure analyzer <NUM>, and/or the media presentation identifier <NUM>).

The watermark data structure modifier <NUM> of the illustrated example of <FIG> modifies the watermark data structure <NUM> based on watermarks detected by the watermark detectors <NUM>. For example, in response to one of the watermark detectors <NUM> decoding a watermark and the watermark data structure analyzer <NUM> determining that the watermark is not represented in the watermark data structure (e.g., is not associated with a master watermark), the watermark detectors <NUM> can determine whether the watermark satisfies one or more conditions (e.g., the alignment time threshold, the signal strength threshold, etc.) to be added to the watermark data structure. If the watermark is not already represented in the watermark data structure and satisfies these conditions, the watermark data structure modifier <NUM> of the illustrated example adds the watermark to the data structure in association with the other watermark that was detected with the watermark. In some examples, the watermark data structure modifier <NUM> adds watermarks to a same row or column of the watermark data structure for watermarks that correspond to the same media presentation. The watermark data structure modifier <NUM> can add the watermark to the watermark data structure in any other way that enables the watermark data structure analyzer <NUM> to determine that subsequent occurrences of the same watermark should be associated with the same master watermark.

In some examples, the watermark data structure modifier <NUM> of the illustrated example determines whether watermarks detected in the media signal <NUM> are within an alignment time threshold of a master watermark. For example, if a first watermark is detected a within one second of a second watermark, and the alignment time threshold is configured to be two seconds, the watermark data structure modifier <NUM> determines that the first watermark was within the alignment time threshold. A watermark being within the alignment time threshold of another can be one indicator that the watermarks correspond to the same media presentation. In some examples, the data structure modifier <NUM> determines whether a plurality of first and second watermarks are detected respectively within the alignment time threshold. For example, in order to determine that a first watermark corresponds to the same media presentation as a second watermark, the watermark data structure modifier <NUM> may be configured with a minimum matching occurrence threshold designating a number of the first watermarks that must be observed within the alignment time threshold of second watermarks. For example, if the matching occurrence threshold is set to three, then three of the first watermark must be observed within the alignment time threshold of one or more instances of the second watermark to satisfy the matching occurrence threshold.

Further, in some examples that are consistent with claim <NUM>, the watermark data structure modifier <NUM> determines whether watermarks that are not yet represented in the watermark data structure <NUM> satisfy a signal strength threshold to be associated in the watermark data structure <NUM>. In some examples, the watermark data structure modifier <NUM> additionally determines whether the signal strength of the watermark that is represented within the watermark data structure <NUM> satisfies the signal strength threshold to be utilized to associate the watermarks within an alignment time threshold of this watermark. For example, if a first watermark not represented in the watermark data structure <NUM>, and it is observed within the alignment time threshold of a second watermark that is in the watermark data structure, the watermark data structure modifier <NUM> may determine whether the second watermark satisfies the signal strength threshold in addition to the first watermark satisfying the signal strength threshold. The signal strength threshold can be configured to be a specific signal-to-noise ratio (SNR) or other value representing the strength of the watermark signal.

Thus, in some examples that are consistent with claim <NUM>, the watermark data structure modifier <NUM> determines if at least conditions (<NUM>) and (<NUM>) of the following conditions are satisfied before associating a first watermark with a second watermark in the watermark data structure: (<NUM>) the first is within an alignment time threshold of the second watermark, (<NUM>) a sufficient quantity of ones of the first watermark have been observed within the alignment time threshold of ones of the second watermark to satisfy a minimum matching occurrence threshold, (<NUM>) the first watermark satisfies a signal strength threshold, and/or (<NUM>) both the first watermark and the second watermark satisfy the signal strength threshold.

In some examples, the watermark data structure modifier <NUM> creates the watermark data structure <NUM>, as opposed to the media monitor <NUM> receiving the watermark data structure <NUM> and then modifying it. For example, if no watermark data structure is received or already exists, the watermark data structure modifier <NUM> can create the watermark data structure <NUM>. In some examples, the watermark data structure <NUM> is communicated from the media monitor to the AME <NUM> for use in an aggregate watermark data structure that can be pushed (e.g., communicated) to a plurality of other monitors, thus leveraging information from the monitors to create a crowd-sourced watermark data structure.

The watermark data structure analyzer <NUM> of the illustrated example of <FIG> determines whether a watermark detected by one of the watermark detectors <NUM> is in the watermark data structure. In some examples, the watermark data structure analyzer <NUM> receives a plurality of watermarks that are determined by the event generator <NUM> not to be master watermarks, and the watermark data structure analyzer <NUM> determines whether the non-master watermarks are represented in the watermark data structure. Further, in some examples, the watermark data structure analyzer <NUM> of the illustrated example may determine whether non-master watermarks are associated with a master watermark associated with a current media presentation record processed by the media presentation identifier <NUM>. For example, if the event generator <NUM> has designated a first type of watermark as a master watermark and forwarded detected watermarks of the first type to the media presentation identifier <NUM>, the watermark data structure analyzer <NUM> can analyze other detected watermarks (e.g., not of the first type) to determine whether the other watermarks are associated with the same media presentations as the watermarks detected of the first type. The watermark data structure analyzer <NUM> can search the watermark data structure for a code (e.g., a number) associated with the detected watermark to determine if the code is in the watermark data structure. In response to the detected watermark being found in the watermark data structure in association with a master watermark being utilized for media presentation records by the media presentation identifier <NUM>, the watermark data structure analyzer <NUM> communicates information indicating that the watermark is associated with the matching master watermark to the media presentation identifier <NUM>. In some examples, in response to the detected watermark being found in the watermark data structure, the watermark data structure analyzer <NUM> determines identification information (e.g., a station name, a program name, etc.) based on one or more watermarks associated with the detected watermark. In response to matching the detected watermark with another watermark in the watermark data structure, the watermark data structure analyzer <NUM> associates the detected watermark with the matching watermark from the watermark data structure.

In some examples, in response to finding the detected watermark in the watermark data structure, the watermark data structure analyzer <NUM> performs a data operation to indicate that the detected watermark is equivalent to its corresponding master watermark from the watermark data structure. For example, the watermark data structure analyzer <NUM> may transform the detected watermark to an instance of the master watermark, which may be more easily utilized by the media presentation identifier <NUM> and/or subsequently by the AME <NUM> for measuring media. In response to the detected watermark not being present in the watermark data structure <NUM>, the watermark data structure modifier <NUM> can initiate analyses to determine whether the detected watermark can be added to the watermark data structure.

In some examples, the watermark data structure analyzer <NUM> may additionally or alternatively query the MMS <NUM> to determine whether a watermark is included in a watermark data structure. In some such examples, one or more watermark data structure(s) are maintained at the MMS <NUM> and the association of non-master watermarks with master watermarks is performed at the MMS <NUM> in response to the query received from the media monitor <NUM>.

The data store <NUM> of the illustrated example of <FIG> is a storage location for watermark data structures and/or media monitoring data. The data store <NUM> may 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 data store <NUM><NUM> may additionally or alternatively be implemented by one or more double data rate (DDR) memories, such as DDR, DDR2, DDR3, mobile DDR (mDDR), etc. The data store <NUM> may additionally or alternatively be implemented by one or more mass storage devices such as hard disk drive(s), compact disk drive(s) digital versatile disk drive(s), etc. While in the illustrated example the data store <NUM> is illustrated as a single database, the data store <NUM> may be implemented by any number and/or type(s) of databases. Furthermore, the data stored in the data store <NUM> may be in any data format such as, for example, binary data, comma delimited data, tab delimited data, structured query language (SQL) structures, etc..

The bridge timer <NUM> is a timer to track a duration since a previous watermark corresponding to a media presentation. In some examples, the bridge timer <NUM> is configured with a bridge time threshold. The bridge time threshold represents a maximum duration between matching watermarks within which the matching watermarks are considered to correspond to the same media presentation record. For example, if the bridge time threshold is set to <NUM> seconds, and a first watermark is decoded and identified, a subsequent watermark corresponding to the same media presentation record (e.g., decoding to the same media identification information, corresponding to an associated watermark in the watermark data structure, etc.) as the first watermark must be identified within <NUM> seconds to be considered part of the same media presentation record. In some examples, the bridge timer <NUM> resets each time a new watermark is encountered. In some examples, the bridge timer <NUM> resets if either (a) a new watermark corresponding to a current media presentation record is detected or (b) a new watermark corresponding to a different (e.g., new) media presentation record is detected. In some examples, the bridge timer <NUM> is implemented as a standard count-up timer and does not reset with new watermark detections. In some such examples, the media presentation identifier <NUM> can utilize times from the bridge timer <NUM> to calculate elapsed times since prior detected watermarks and thereby conclude media presentations records when appropriate (e.g., in response to the elapsed times exceeding the bridge time threshold).

The media presentation identifier <NUM> of the illustrated example of <FIG> generates and modifies media presentation records. The media presentation identifier <NUM> accesses identification information that may be directly determined from a watermark and establishes new media presentation records, modifies current media presentation records, or concludes current media presentation records as appropriate. The media presentation identifier <NUM> accesses master watermarks from the event generator <NUM> and generates media presentation records based on the master watermarks. Thus, the master watermarks communicated by the event generator <NUM> can be utilized to directly establish or modify media presentation records.

The media presentation identifier <NUM> of the illustrated example additionally utilizes non-master watermarks to uphold the media presentation record based on watermarks that are determined to be associated with the master watermarks (e.g., as determined by the watermark data structure analyzer <NUM>). In some examples, the master watermark type which is utilized directly as a main watermark type for a media presentation record may be changed by the event generator <NUM>. For example, if event generator <NUM> determines that a different watermark type is more consistent and/or prevalent, it may designate this different watermark type as the new master watermark to be utilized to directly modify the media presentation records.

In some examples, when the media presentation identifier <NUM> does not currently have an open (e.g., ongoing) media presentation record, the media presentation identifier <NUM> can open a new media presentation record in response to the event generator <NUM> communicating a master watermark to the media presentation identifier <NUM>. In some such examples, subsequently, if an additional watermark is detected and/or decoded corresponding to the same identification information (e.g., either a master watermark communicated from the event generator or a non-master watermark matched with the master watermark by the watermark data structure analyzer <NUM>), the media presentation identifier <NUM> extends the media presentation record and/or indicates that the bridge timer <NUM> should be reset. However, if an additional watermark is detected corresponding to different identification information (e.g., a new media presentation), the prior media presentation record is ended with an end time corresponding to the last detected watermark, and a new media presentation record beginning at the newly detected watermark is established. The media presentation identifier <NUM> can access communications from the bridge timer <NUM> indicating that the bridge time threshold has been exceeded. In response to the bridge time threshold being exceeded, the media presentation identifier <NUM> concludes the prior media presentation record with an end time corresponding to the last detected watermark. The media presentation records generated by the media presentation identifier <NUM> include start times, end times, and/or durations along with identification information associated with media presentation sessions. The media presentation identifier <NUM> communicates media presentation records to the monitoring data transmitter <NUM>.

The monitoring data transmitter <NUM> of the illustrated example of <FIG> transmits media monitoring data to the AME <NUM>. Specifically, the monitoring data transmitter <NUM> of the illustrated example can transmit the media monitoring data to the back office processing system <NUM>. The media monitoring data can include one or more media presentation records generated by the media presentation identifier <NUM>. In some examples, the monitoring data transmitter <NUM> transmits the media monitoring data <NUM> to the back office processing system <NUM> at a regular interval. In some examples, the monitoring data transmitter <NUM> transmits the media monitoring data <NUM> in response to a request from a component of the AME <NUM>.

In operation, the media signal <NUM> is processed by the watermark detectors <NUM>, which decode watermarks present in the media signal <NUM>. The event generator <NUM> then aggregates the watermarks detected by the watermark detectors <NUM> and selects a master watermark type. The event generator <NUM> then communicates watermarks of the master watermark type to the media presentation identifier <NUM> and communicates watermarks not of the master watermark type to the watermark data structure analyzer <NUM>. The watermark data structure modifier <NUM> updates a watermark data structure if the watermark is not yet in the watermark data structure <NUM> and meets several criteria to be associated with another one of the watermarks. The watermark data structure analyzer <NUM> is utilized to determine whether ones of the detected watermarks correspond to other watermarks in the watermark data structure <NUM>, which is stored in the data store <NUM>. In some examples, in response to ones of the non-master watermarks being determined to be in represented in the watermark data structure as corresponding to a master watermark, this information is communicated to the media presentation identifier <NUM>. The bridge timer <NUM> tracks elapsed times since prior detected watermarks to enable the media presentation identifier <NUM> to accurately determine start and end times of presentations and generate media presentation records. The media presentation identifier <NUM> generates the media presentation records based on master watermarks from the event generator <NUM> and/or non-master watermarks associated with master watermarks, as determined by the watermark data structure analyzer <NUM>. Media presentation records are then included in media monitoring data that is transmitted by the monitoring data transmitter <NUM> to the AME <NUM>.

While an example manner of implementing the media monitor <NUM> of <FIG> is illustrated in <FIG>, one or more of the elements, processes and/or devices illustrated in <FIG> may be combined, divided, re-arranged, omitted, eliminated and/or implemented in any other way. Further, the example watermark detectors <NUM>, the example event generator <NUM>, the example watermark data structure modifier <NUM>, the example watermark data structure analyzer <NUM>, the example data store <NUM>, the example bridge timer <NUM>, the example media presentation identifier <NUM>, the example monitoring data transmitter <NUM> and/or, more generally, the example media monitor <NUM> of <FIG> may be implemented by hardware, software, firmware and/or any combination of hardware, software and/or firmware. Thus, for example, any of the example watermark detectors <NUM>, the example event generator <NUM>, the example watermark data structure modifier <NUM>, the example watermark data structure analyzer <NUM>, the example data store <NUM>, the example bridge timer <NUM>, the example media presentation identifier <NUM>, the example monitoring data transmitter <NUM> and/or, more generally, the example media monitor <NUM> of <FIG> could be implemented by one or more analog or digital circuit(s), logic circuits, programmable processor(s), programmable controller(s), graphics processing unit(s) (GPU(s)), digital signal processor(s) (DSP(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, watermark detectors <NUM>, the example event generator <NUM>, the example watermark data structure modifier <NUM>, the example watermark data structure analyzer <NUM>, the example data store <NUM>, the example bridge timer <NUM>, the example media presentation identifier <NUM>, the example monitoring data transmitter <NUM> and/or, more generally, the example media monitor <NUM> of <FIG> is/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. including the software and/or firmware. Further still, the example media monitor <NUM> of <FIG> may include one or more elements, processes and/or devices in addition to, or instead of, those illustrated in <FIG>, and/or may include more than one of any or all of the illustrated elements, processes and devices. As used herein, the phrase "in communication,'' including variations thereof, 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 additionally includes selective communication at periodic intervals, scheduled intervals, aperiodic intervals, and/or one-time events.

<FIG> is a block diagram of an example implementation of the MMS <NUM> of <FIG> for watermark data structure generation constructed in accordance with the teachings of this disclosure. The MMS <NUM> receives the media signal <NUM> and outputs the watermark data structure <NUM>. The MMS <NUM> includes an example media signal accessor <NUM>, an example watermark decoder <NUM>, an example watermark data structure generator <NUM>, an example MMS data store <NUM>, and an example watermark data structure transmitter <NUM>.

The example media signal accessor <NUM> of the illustrated example of <FIG> accesses the media signal <NUM>. The media signal accessor <NUM> may access a plurality of media signals available at a location of the MMS <NUM>. The media signal accessor <NUM> of the illustrated example includes one or more antennae, cables, network connections, and/or other transmission technologies to access broadcast signals. In some examples, the media signal accessor <NUM> is capable of receiving metadata associated with the broadcast signals. For example, the metadata may provide identification information (e.g., a station name, a program name, a program duration, etc.) for media presentations conveyed by the broadcast signals. In some examples, the media signal accessor <NUM> is positioned in an optimized location where many media signals can be obtained (e.g., near broadcasting facilities). In some examples, the media signal accessor <NUM> may be more than one facility, enabling collection of media signals from a variety of locations. In some such examples, there may be a plurality of media measurement systems distributed in different areas to increase the number of perceptible media signals.

The watermark decoder <NUM> of the illustrated example of <FIG> detects and/or decodes watermarks embedded in broadcast signals. In some examples, to detect and/or decode watermarks in the media signal <NUM>, the watermark decoder <NUM> can convert the media signal <NUM> into a format enabling identification of watermark components (e.g., tones). For example, the watermark decoder <NUM> can convert the media signal <NUM> into a frequency representation (e.g., a fast Fourier transform (FFT) representation, a discrete Fourier transform (DFT) representation), and/or any other representation of the media signal <NUM>. In some examples, the watermark decoder <NUM> identifies watermark components based on boosted (e.g., amplified) amplitude values of specific frequency ranges of the media signal accessor <NUM>. The watermark decoder <NUM> of the illustrated example may be configured to decode watermarks of multiple types and access identification information corresponding to the decoded watermarks (e.g., based on looking up codes from the decoded watermarks).

The watermark data structure generator <NUM> of the illustrated example of <FIG> generates and/or updates one or more watermark data structure(s) to associate watermarks of different watermark types observed in the media signal <NUM> when the watermarks correspond to a same media presentation. In some examples, the watermark data structure generator <NUM> utilizes an alignment time threshold, a signal threshold, and/or other criteria as previously described in association with the media monitor <NUM> to determine whether watermarks detected in the media signal <NUM> should be added to one or more watermark data structure(s). In some examples, the watermark data structure generator <NUM> utilizes metadata received with the media signal <NUM> to associate watermarks detected in the media signal <NUM> with media identification information. For example, if the media signal <NUM> includes metadata that indicates a media presentation from channel #<NUM> is being presented from <NUM>:<NUM>-<NUM>:00PM, the watermark data structure generator <NUM> can associate any watermarks detected during this time period in the watermark data structure. In some examples, the watermarks can be added, updated and/or removed based on input from a user. In some examples, the watermark data structure generator <NUM> can access channel programming information from another component of the MMS <NUM> and/or another component of the AME <NUM> to associate watermarks with identification information from the channel programming information. For example, if the watermark data structure generator <NUM> has knowledge that the media signal <NUM> represents a broadcast titled "Cleveland Evening News" for a given time period, all watermarks observed during the given time period can be associated with an "Cleveland Evening News" entry in the watermark data structure.

The MMS data store <NUM> of the illustrated example of <FIG> stores watermark data structures generated by the watermark data structure generator <NUM>. The MMS data store <NUM> may 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 nonvolatile memory (e.g., flash memory). The MMS data store <NUM> may additionally or alternatively be implemented by one or more double data rate (DDR) memories, such as DDR, DDR2, DDR3, mobile DDR (mDDR), etc. The MMS data store <NUM> may additionally or alternatively be implemented by one or more mass storage devices such as hard disk drive(s), compact disk drive(s) digital versatile disk drive(s), etc. While in the illustrated example the MMS data store <NUM> is illustrated as a single database, the MMS data store <NUM> may be implemented by any number and/or type(s) of databases. Furthermore, the data stored in the MMS data store <NUM> may be in any data format such as, for example, binary data, comma delimited data, tab delimited data, structured query language (SQL) structures, etc..

The watermark data structure transmitter <NUM> of the illustrated example of <FIG> transmits the watermark data structure <NUM> to the media monitor <NUM> and/or any other media monitoring devices. In some examples, the watermark data structure transmitter <NUM> regularly sends the watermark data structure <NUM> to the media monitor <NUM>. In some examples, the watermark data structure transmitter <NUM> sends the watermark data structure <NUM> to the media monitor <NUM> in response to a request for the watermark data structure <NUM> from the media monitor <NUM>.

In operation, the media signal accessor <NUM> accesses the media signal <NUM>, along with any metadata associated with the media signal <NUM>. The watermark decoder <NUM> detects and decodes watermarks in the media signal <NUM> and the watermark data structure generator <NUM> associates watermarks and adds them to a watermark data structure, which is stored in the MMS data store <NUM>. The watermark data structure transmitter <NUM> transmits the watermark data structure <NUM> to the media monitor <NUM> and/or any other media monitoring devices.

While an example manner of implementing the MMS <NUM> of <FIG> is illustrated in <FIG>, one or more of the elements, processes and/or devices illustrated in <FIG> may be combined, divided, re-arranged, omitted, eliminated and/or implemented in any other way. Further, the example media signal accessor <NUM>, the example watermark decoder <NUM>, the example watermark data structure generator <NUM>, the example MMS data store <NUM>, the example watermark data structure transmitter <NUM> and/or, more generally, the example MMS <NUM> of <FIG> may be implemented by hardware, software, firmware and/or any combination of hardware, software and/or firmware. Thus, for example, any of the example media signal accessor <NUM>, the example watermark decoder <NUM>, the example watermark data structure generator <NUM>, the example MMS data store <NUM>, the example watermark data structure transmitter <NUM> and/or, more generally, the example MMS <NUM> of <FIG> could be implemented by one or more analog or digital circuit(s), logic circuits, programmable processor(s), programmable controller(s), graphics processing unit(s) (GPU(s)), digital signal processor(s) (DSP(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 media signal accessor <NUM>, the example watermark decoder <NUM>, the example watermark data structure generator <NUM>, the example MMS data store <NUM>, the example watermark data structure transmitter <NUM> and/or, more generally, the example MMS <NUM> of <FIG> is/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. including the software and/or firmware. Further still, the example MMS <NUM> of <FIG> may include one or more elements, processes and/or devices in addition to, or instead of, those illustrated in <FIG>, and/or may include more than one of any or all of the illustrated elements, processes and devices. As used herein, the phrase "in communication," including variations thereof, 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 additionally includes selective communication at periodic intervals, scheduled intervals, aperiodic intervals, and/or one-time events.

Flowcharts representative of example hardware logic, machine readable instructions, hardware implemented state machines, and/or any combination thereof for implementing the media monitor <NUM> of <FIG> and <FIG> is shown in <FIG> and <FIG>. The machine readable instructions may be an executable program or portion of an executable program for execution by a computer processor such as the processor <NUM> shown in the example processor platform <NUM> discussed below in connection with <FIG>. 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 DVD, a Blu-ray disk, or a memory associated with the processor <NUM>, but the entire program and/or parts thereof could alternatively be executed by a device other than the processor <NUM> and/or embodied in firmware or dedicated hardware. Further, although the example program is described with reference to the flowcharts illustrated in <FIG> and <FIG>, many other methods of implementing the example media monitor <NUM> may 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, an FPGA, an 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 processes of <FIG> and <FIG> may be implemented using executable 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.

Example machine readable instructions <NUM> that may be executed by the media monitor <NUM> of <FIG> and <FIG> to measure media utilizing association of different watermarks are illustrated in <FIG>. With reference to the preceding figures and associated descriptions, the example machine readable instructions <NUM> of <FIG> begin with the media monitor <NUM> selecting a master watermark type (Block <NUM>). In some examples, the event generator <NUM> selects a master watermark type. For example, the event generator <NUM> can be configured with a list of preferred watermarks types to be used as master watermarks. In some examples, the event generator <NUM> selects a master watermark type based the types of available watermark detectors <NUM>. In some examples, the event generator <NUM> selects a master watermark type based on the watermarks detected by the watermark detectors <NUM>. In some examples, in response to select a master watermark type, the event generator <NUM> can transmit master watermarks to the media presentation identifier to inform media presentation records, and transmit non-master watermarks to the watermark data structure analyzer <NUM> for further analysis.

At block <NUM>, the example media monitor <NUM> detects a watermark. In some examples, the one of the watermark detectors <NUM> detects a watermark. In some examples, the one of the watermark detectors <NUM> further decodes the watermark.

At block <NUM>, the example media monitor <NUM> determines whether the detected watermark is a master watermark. In some examples, the event generator <NUM> determines whether the watermark is a master watermark. In response to the watermark being a master watermark, processing transfers to block <NUM>. Conversely, in response to the watermark not being a master watermark, processing transfers to block <NUM>.

At block <NUM>, the example media monitor <NUM> determines if the detected watermark is in the watermark data structure. In some examples, the watermark data structure analyzer <NUM> determines if the detected watermark is associated with a master watermark by determining if the watermark is represented in the watermark data structure. In response to the watermark being in the watermark data structure, processing transfers to block <NUM>. Conversely, in response to the watermark not being associated with a master watermark, processing transfers to block <NUM>.

At block <NUM>, the example media monitor <NUM> determines if there is an ongoing media presentation. In some examples, the media presentation identifier <NUM> determines whether there is an ongoing media presentation based on whether there is an open media presentation record. In some examples, the media presentation identifier <NUM> determines based on the bridge timer <NUM> whether a media presentation record should remain open (e.g., whether the media presentation is still ongoing) based on the bridge time threshold. In response to there being an ongoing media presentation, processing transfers to block <NUM>. Conversely, in response to there not being an ongoing media presentation, processing transfers to block <NUM>.

At block <NUM>, the example media monitor <NUM> determines if the watermark is within an alignment time threshold of a master watermark. In some examples, the watermark data structure modifier <NUM> determines whether the watermark is within an alignment time threshold of a master watermark by comparing an elapsed time between the detected watermark and the nearest (in time) master watermark to the alignment time threshold. In some examples, the watermark data structure modifier determines whether the watermark is within the alignment time threshold of any watermark, to associate the detected watermark with another watermark (even if the other watermark is not a master watermark), since the master watermark can be changed by the event generator <NUM>. In response to the watermark being within an alignment time threshold of a master watermark, processing transfers to block <NUM>. Conversely, in response to the watermark not being within an alignment time threshold of a master watermark, processing transfers to block <NUM>.

At block <NUM>, the example media monitor <NUM> determines whether the watermark satisfies the signal strength threshold. In some examples, the watermark data structure modifier <NUM> determines whether the detected watermark satisfies the signal strength threshold. In some examples, the watermark data structure modifier <NUM> additionally determines whether the associated master watermark (e.g., the watermark within the alignment time threshold of the detected watermark) satisfies the signal strength threshold. In response to the detected watermark satisfying the signal strength threshold, processing transfers to block <NUM>. Conversely, in response to the detected watermark not satisfying the signal strength threshold, processing transfers to block <NUM>.

At block <NUM>, the example media monitor <NUM> adds the detected watermark to the watermark data structure as associated with the master watermark. In some examples, the watermark data structure modifier <NUM> adds the watermark to the watermark data structure <NUM> as associated with the master watermark. For example, the watermark data structure modifier <NUM> can add the watermark to the watermark data structure in a same row or column as other watermarks corresponding to the same media. In some examples, the watermark data structure modifier <NUM> adds the detected watermark to the watermark data structure in association with a second watermark in response to the detected watermark being within the alignment time threshold of the second watermark (regardless of whether the second watermark is a master watermark).

At block <NUM>, the example media monitor <NUM> determines whether the detected watermark corresponds to a same media presentation as the ongoing media presentation. In some examples, the media presentation identifier <NUM> determines whether the detected watermark corresponds to the same media presentation as the ongoing media presentation. In response to the watermark corresponding to the same media presentation as the ongoing media presentation, processing transfers to block <NUM>. Conversely, in response to the watermark not corresponding to the same media presentation as the ongoing media presentation, processing transfers to block <NUM>.

At block <NUM>, the example media monitor <NUM> concludes the ongoing media presentation. In some examples, the media presentation identifier <NUM> concludes the ongoing media presentation by indicating that the time of the last detected watermark of the ongoing media presentation was the end time for the ongoing media presentation.

At block <NUM>, the example media monitor <NUM> establishes a new media presentation record. In some examples, the media presentation identifier <NUM> establishes a new media presentation record. The media presentation identifier <NUM> can establish the new media presentation record with a start time corresponding to the time of the detected watermark.

At block <NUM>, the example media monitor <NUM> starts the bridge timer <NUM>. In some examples, the media presentation identifier <NUM> communicates to the bridge timer <NUM> to start timing a duration since the prior detected watermark.

At block <NUM>, the example media monitor <NUM> associates the detected watermark with the ongoing media presentation record. For example, the media presentation identifier <NUM> can associate the detected watermark with the ongoing media presentation record by determining and indicating that the detected watermark corresponds to the same media as a master watermark being used to directly inform the ongoing media presentation record. In some examples, the media presentation identifier <NUM> associates the detected watermark with the master watermark corresponding to of the ongoing media presentation record.

At block <NUM>, the example media monitor <NUM> resets the bridge timer <NUM>. In some examples, the media presentation identifier <NUM> communicates to the bridge timer <NUM> to reset the bridge timer <NUM>.

At block <NUM>, the example media monitor <NUM> determines whether a new watermark has been detected. In some examples, the watermark detectors <NUM> determine whether a new watermark has been detected. In response to a new watermark being detected, processing transfers to block <NUM>. Conversely, in response to a new watermark not being detected, processing transfers to block <NUM>,.

At block <NUM>, the example media monitor <NUM> determines whether the bridge time has exceeded the bridge time threshold. In some examples, the bridge timer <NUM> determines whether the bridge time has exceeded the bridge time threshold. In response to the bridge time exceeding the bridge time threshold, processing transfers to block <NUM>. Conversely, in response to the bridge time not exceeding the bridge time threshold, processing transfers to block <NUM>.

At block <NUM>, the example media monitor <NUM> ends a current media presentation record at a time of the previous detected watermark. In some examples, the media presentation identifier <NUM> ends a current media presentation record at the time of the previous detected watermark.

At block <NUM>, the example media monitor <NUM> determines whether to continue monitoring. In response to continuing monitoring, processing transfers to block <NUM>. Conversely, in response to not continuing monitoring, processing transfers to block <NUM>.

At block <NUM>, the example media monitor <NUM> transmits monitoring data to the AME <NUM>. In some examples, the monitoring data transmitter <NUM> transmits monitoring data to the back office processing system <NUM> of the AME <NUM>.

Example machine readable instructions <NUM> that may be executed by the media monitor <NUM> of <FIG> and <FIG> to measure media by associating different watermarks using an existing watermark data structure are illustrated in <FIG>. With reference to the preceding figures and associated descriptions, the example machine readable instructions <NUM> of <FIG> begin with the example media monitor <NUM> selecting a master watermark type (Block <NUM>). In some examples, the event generator <NUM> selects a master watermark type. For example, the event generator <NUM> can be configured with a list of preferred watermarks types to be used as master watermarks. In some examples, the event generator <NUM> selects a master watermark type based the types of available watermark detectors <NUM>. In some examples, the event generator <NUM> selects a master watermark type based on the watermarks detected by the watermark detectors <NUM>. In some examples, in response to select a master watermark type, the event generator <NUM> can transmit master watermarks to the media presentation identifier to inform media presentation records, and transmit non-master watermarks to the watermark data structure analyzer <NUM> for further analysis.

At block <NUM>, the example media monitor <NUM> detects a watermark. In some examples, the watermark detectors <NUM> detect a watermark. In some examples, the watermark detectors <NUM> further decode the watermark.

At block <NUM>, the example media monitor <NUM> determines if the watermark is in the watermark data structure. In some examples, the watermark data structure analyzer <NUM> determines if the watermark is in the watermark data structure <NUM>. In some examples, the watermark data structure analyzer <NUM> determines if the detected watermark is associated with a master watermark in the watermark data structure <NUM>. In response to the watermark being in the watermark data structure, processing transfers to block <NUM>. Conversely, in response to the watermark not being in the watermark data structure, processing transfers to block <NUM>.

At block <NUM>, the example media monitor <NUM> determines if there is an ongoing media presentation. In some examples, the media presentation identifier <NUM> determines if there is an ongoing media presentation (e.g., an open media presentation record). In response to there being an ongoing media presentation, processing transfers to block <NUM>. Conversely, in response to there not being an ongoing media presentation, processing transfers to block <NUM>.

At block <NUM>, the example media monitor <NUM> determines whether the detected watermark corresponds to the ongoing media presentation. In some examples, the media presentation identifier <NUM> compares identification information for the detected watermark (e.g., from the event generator <NUM> and/or the watermark data structure analyzer <NUM>) with the ongoing media presentation (e.g., the open media presentation record). In response to the watermark corresponding to the ongoing media presentation, processing transfers to block <NUM>. Conversely, in response to the watermark not corresponding to the ongoing media presentation, processing transfers to block <NUM>.

At block <NUM>, the example media monitor <NUM> associates the detected watermark with the ongoing media presentation record. In some examples, the media presentation identifier <NUM> associates the detected watermark with the ongoing media presentation record. For example, the media presentation identifier <NUM> can associate the detected watermark with the ongoing media presentation record by determining and indicating that the detected watermark corresponds to the same media as a master watermark being used to directly inform the ongoing media presentation record. In some examples, the media presentation identifier <NUM> associates the detected watermark with the master watermark corresponding to the ongoing media presentation record.

At block <NUM>, the example media monitor <NUM> resets the bridge timer <NUM>. In some examples, the media presentation identifier <NUM> communicates to the bridge timer <NUM> to reset the bridge timer.

At block <NUM>, the example media monitor <NUM> ends a current media presentation at a time of a previous detected watermark. In some examples, the media presentation identifier <NUM> ends the current media presentation at the time of the previous detected watermark.

At block <NUM>, the example media monitor <NUM> establishes a new media presentation. In some examples, the media presentation identifier <NUM> establishes the new media presentation by opening a new media presentation record.

At block <NUM>, the example media monitor <NUM> determines if anew watermark has been detected. In some examples, the watermark detectors <NUM> determine if a new watermark has been detected. In response to a new watermark being detected, processing transfers to block <NUM>. Conversely, in response to a new watermark not being detected, processing transfers to block <NUM>.

At block <NUM>, the example media monitor <NUM> determines if the bridge time has exceeded the bridge time threshold. In some examples, the bridge timer <NUM> determines if the bridge time has exceeded the bridge time threshold. In response to the bridge time exceeding the bridge time threshold, processing transfers to block <NUM>. Conversely, in response to the bridge time not exceeding the bridge time threshold, processing transfers to block <NUM>.

A flowchart representative of example hardware logic, machine readable instructions, hardware implemented state machines, and/or any combination thereof for implementing the MMS <NUM> of <FIG> is shown in <FIG>. The machine readable instructions may be an executable program or portion of an executable program for execution by a computer processor such as the processor <NUM> shown in the example processor platform <NUM> discussed below in connection with <FIG>. 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 DVD, a Blu-ray disk, or a memory associated with the processor <NUM>, but the entire program and/or parts thereof could alternatively be executed by a device other than the processor <NUM> and/or embodied in firmware or dedicated hardware. Further, although the example program is described with reference to the flowchart illustrated in <FIG>, many other methods of implementing the example MMS <NUM> may 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, an FPGA, an 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 processes of <FIG> may be implemented using executable 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.

Example machine readable instructions <NUM> that may be executed by the MMS <NUM> of <FIG> and <FIG> to generate a watermark data structure are illustrated in <FIG>. With reference to the preceding figures and associated descriptions, the example machine readable instructions <NUM> of <FIG> begin with the example MMS <NUM> accessing a broadcast signal (Block <NUM>). In some examples, the media signal accessor <NUM> accesses the media signal <NUM>.

At block <NUM>, the example MMS <NUM> decodes watermarks in the media signal <NUM>. In some examples, the watermark decoder <NUM> detects and/or decodes watermarks in the media signal <NUM>.

At block <NUM>, the example MMS <NUM> determines if metadata is available for the media signal <NUM>. In some examples, the media signal accessor <NUM> determines if metadata is available for the media signal <NUM><NUM>. In response to metadata being available for the media signal <NUM>, processing transfers to block <NUM>. Conversely, in response to no metadata being available for the media signal <NUM>, processing transfers to block <NUM>.

At block <NUM>, the example MMS <NUM> associates aligned watermarks in the media signal <NUM> in the watermark data structure <NUM>. In some examples, the watermark data structure generator <NUM> associates aligned watermarks in the media signal <NUM> in the watermark data structure <NUM>.

At block <NUM>, the example MMS <NUM> associates watermarks in the media signal <NUM> with the metadata and adds the watermarks to the watermark data structure <NUM>. In some examples, the watermark data structure generator <NUM> associates watermarks in the media signal <NUM> with the metadata and adds the watermarks to the watermark data structure <NUM>.

At block <NUM>, the example MMS <NUM> determines if additional watermark(s) have been detected in the media signal <NUM>. In some examples, the watermark decoder <NUM> determines if additional watermark(s) have been detected in the media signal <NUM>. In response to additional watermark(s) being detected in the media signal <NUM>, processing transfers to block <NUM>. Conversely, in response to no additional watermark(s) being detected in the media signal <NUM>, processing transfers to block <NUM>.

At block <NUM>, the example MMS <NUM> determines if there are additional broadcast signals to analyze. In some examples, the media signal accessor <NUM> determines if there are additional broadcast signals to analyze. In response to determining there are additional broadcast signals to analyze, processing transfers to block <NUM>. Conversely, in response to determining there are no additional broadcast signals to analyze, processing transfers to block <NUM>.

At block <NUM>, the example MMS <NUM> communicates the watermark data structure to one or more media monitor(s). In some examples, the watermark data structure transmitter <NUM> communicates the watermark data structure <NUM> to the media monitor <NUM>.

<FIG> is a first schematic <NUM> depicting example media presentations and corresponding watermarks decoded during the media presentations. The schematic <NUM> includes an example horizontal axis <NUM> depicting time values, increasing from left to right, and an example vertical axis <NUM> divided into rows depicting media presentations and watermarks detected during the media presentations. An example top row <NUM> of the vertical axis <NUM> illustrates media identification information. For example, the top row <NUM> illustrates an example first media presentation <NUM> corresponding to channel #<NUM> and an example second media presentation <NUM> corresponding to channel #<NUM>. The subsequent rows of the table depict watermarks corresponding to an example first watermark type <NUM>, an example second watermark type <NUM>, and an example third watermark type <NUM>. In the illustrated example of <FIG>, the first watermark type <NUM> is selected (e.g., by the event generator <NUM>) as a master watermark type (e.g., it is in use for media presentation records). The second watermark type <NUM> and the third watermark type <NUM> are initially unassociated unless a watermark data structure is utilized to respectively associate the second watermark type <NUM> and the third watermark type <NUM> with the first watermark type <NUM>. In other examples, the event generator <NUM> may select any of the first, second, or third watermark types <NUM>, <NUM>, <NUM> to serve as the master watermark type.

At an example first time <NUM> in the schematic <NUM>, a first watermark code (<NUM>) of the first watermark type <NUM> is detected and decoded. As the first watermark type <NUM> is a master watermark type, the media monitor <NUM> and/or the MMS <NUM> can utilize this code to establish a media presentation record. In addition to the first watermark code of the first watermark type, a second watermark code (<NUM>) of the second watermark type <NUM> and a third watermark code (<NUM>) of the third watermark type <NUM> are detected within an alignment time threshold <NUM> of the first time <NUM>. Thus, if the media monitor <NUM> were operating utilizing association to generate a watermark data structure, the second watermark code (<NUM>) and the third watermark code (<NUM>) could be associated in the watermark data structure with the first watermark code (<NUM>) of the first watermark type <NUM>. In some examples, the watermark data structure may already include these codes, based on a prior association made at the media monitor <NUM> and/or a watermark data structure generated at the MMS <NUM>.

At an example second time <NUM> in the schematic <NUM>, the first watermark code of the first watermark type <NUM> is detected again, but the first watermark code of the first watermark type <NUM> is not detected within an example bridge time threshold <NUM> after the second time <NUM>. Thus, without associating different watermarks in the watermark data structure, the first media presentation <NUM> (e.g., associated with Channel #<NUM>) would be determined to have concluded at the second time <NUM>. However, the second watermark code of the second watermark type <NUM> and the third watermark code (<NUM>) of the third watermark type <NUM> are detected within the bridge time threshold <NUM>, thus enabling the bridge time to be reset (e.g., on the bridge timer <NUM>) and a more accurate end time of the first media presentation <NUM> to be determined. Thus, the accurate continuity of the first media presentation <NUM> is preserved.

At an example third time <NUM> in the schematic <NUM>, the second watermark code of the second watermark type <NUM> and the third watermark code of the third watermark type <NUM> are detected, but no watermarks of the first, second, or third watermark codes are detected within the bridge time threshold <NUM> after the third time <NUM>.

At an example fourth time <NUM> in the schematic <NUM>, a fourth watermark code (<NUM>) of the first watermark type <NUM> is observed, corresponding to the second media presentation <NUM>. No additional instances of the fourth watermark code of the first watermark type <NUM> (e.g., the master watermark) are observed within the bridge time threshold <NUM>. However, if the media monitor <NUM> utilizes association and/or an existing watermark data structure, a fifth watermark code (<NUM>) of the second watermark type <NUM> may be determined to be associated the with fourth watermark code (<NUM>) of the first watermark type <NUM>. When both the fourth watermark code (<NUM>) and the fifth watermark code (<NUM>) are associated with the second media presentation (<NUM>) in the watermark data structure, an accurate duration of the second media presentation can be determined, as opposed to terminating the media presentation record corresponding to the second media presentation <NUM> at the fourth time <NUM>.

<FIG> is a watermark data structure represented as an example table <NUM> of watermarks and corresponding to identification information associated with the media presentation sessions represented in <FIG>. The table includes a column for the first watermark type <NUM>, a column for the second watermark type <NUM>, and a column for the third watermark type <NUM>. In some examples, the table <NUM> is generated by the MMS <NUM> and is communicated to the media monitor <NUM>. In some examples, the table <NUM> is generated via association, whereby watermark codes are added to the table as they are observed and determined to satisfy a plurality of conditions (e.g., the alignment time threshold, the signal strength threshold, etc.). The table <NUM> includes rows for the first media presentation <NUM>, the second media presentation <NUM>, as well as an example third media presentation <NUM> and an example fourth media presentation <NUM>. The third media presentation <NUM> and the fourth media presentation <NUM> do not occur in the timeframe of the schematic <NUM> of <FIG>, but may have been observed previously by the media monitor <NUM> and/or observed by the MMS <NUM> if the watermark data structure was generated at the MMS <NUM>.

The table <NUM> is queried by the media monitor <NUM> when a non-master watermark is detected. For example, in response to receiving a non-master watermark from the event generator <NUM>, the watermark data structure analyzer <NUM> can query the watermark code against the table <NUM>. For example, at the third time <NUM>, the second watermark code (<NUM>) and the third watermark code (<NUM>) are detected. When the table <NUM> is queried for these values, the table <NUM> outputs that these values correspond to the first media presentation <NUM>. Thus, the media presentation identifier <NUM> can associate the second watermark code (<NUM>) and the third watermark code (<NUM>) with the first watermark code (<NUM>) and/or with the first media presentation <NUM>. Some of the watermark types list "N/A'' under some of the media presentations, indicating that these watermark types have not been observed for these media presentations. If a new watermark of these types is detected and satisfies various thresholds (e.g., the alignment time threshold, the signal strength threshold, etc.) indicating it is associated with a media presentation, a watermark code of the newly detected watermark can be added to the table <NUM>.

<FIG> is a second example schematic <NUM> depicting the example media presentations of <FIG>, but with alternate watermarks decoded during the media presentations. At an example fifth time <NUM>, the first watermark code (<NUM>) of the first watermark type <NUM> is detected. However, no other watermarks of the second watermark type <NUM> or the third watermark type <NUM> are detected within the alignment time threshold <NUM>. A subsequent instance of the first watermark code (<NUM>) is detected shortly after, at an example sixth time <NUM>. At the sixth time <NUM>, no watermarks of the second watermark type <NUM> or the third watermark type <NUM> are detected within the alignment time threshold <NUM>. If the media monitor <NUM> does not already have any other watermark types associated with the first watermark code (<NUM>) in the watermark data structure, the first media presentation <NUM> may be determined to have concluded at the sixth time <NUM>. Similarly, some conventional techniques for media measurement utilizing only one type of watermark to inform a media presentation record would inaccurately conclude a media presentation record at the sixth time <NUM>.

However, if the media monitor <NUM> accesses a watermark data structure indicating that the first watermark code (<NUM>) is associated with the second watermark code (<NUM>) and/or the third watermark code (<NUM>), the media presentation record is extended, since instances of the second watermark code (<NUM>) and the third watermark code (<NUM>) are detected within the bridge time threshold <NUM>.

At an example seventh time <NUM>, the fifth watermark code (<NUM>) of the second watermark type <NUM> is detected. As the second watermark type <NUM> is not currently the master watermark, the media monitor <NUM> requires a watermark data structure associating the fifth watermark code (<NUM>) of the second watermark type <NUM> with the fourth watermark code (<NUM>) of the first watermark type <NUM> and/or with the second media presentation <NUM> in order to establish a media presentation record for the second media presentation <NUM>. If the watermark data structure associating these codes does not exist, the media presentation record may not be established until an example eighth time <NUM>, when a first instance of the forth watermark code (<NUM>) is detected.

However, the event generator <NUM> can select the second watermark type <NUM> as the master watermark in response to receiving a plurality of watermarks of the second type (and few of the first and second watermark types <NUM>, <NUM>).

After the eighth time <NUM>, the fifth watermark code (<NUM>) is detected within the alignment time threshold <NUM> of the forth watermark code (<NUM>) and thus can be associated with the forth watermark code (<NUM>) in a watermark data structure, if the codes are not already associated in the watermark data structure. Following the eighth time <NUM>, instances of the fifth watermark code (<NUM>) are detected within the bridge time threshold <NUM>, thus enabling an accurate media presentation record for the second media presentation <NUM>.

<FIG> is a block diagram of an example processor platform <NUM> structured to execute the instructions of <FIG> to implement the media monitor <NUM> of <FIG> The processor platform <NUM> can be, for example, a server, a personal computer, a workstation, a self-learning machine (e.g., a neural network), a mobile device (e.g., a cell phone, a smart phone, a tablet such as an iPad™), a personal digital assistant (PDA), an Internet appliance, a DVD player, a CD player, a digital video recorder, a Blu-ray player, a gaming console, a personal video recorder, a set top box, a headset or other wearable device, or any other type of computing device.

For example, the processor <NUM> can be implemented by one or more integrated circuits, logic circuits, microprocessors, GPUs, DSPs, 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 processor implements the example watermark detectors <NUM>, the example event generator <NUM>, the example watermark data structure modifier <NUM>, the example watermark data structure analyzer <NUM>, the example data store <NUM>, the example bridge timer <NUM>, the example media presentation identifier <NUM>, the example monitoring data transmitter <NUM> and/or, more generally, the example media monitor <NUM>.

The processor <NUM> of the illustrated example is in communication with a main memory including a volatile memory <NUM> and anon-volatile memory <NUM> via a bus <NUM>.

The machine executable instructions <NUM>, <NUM>, <NUM> of <FIG> and <FIG> may be stored in the mass storage device <NUM>, in the volatile memory <NUM>, in the non-volatile memory <NUM>, and/or on a removable non-transitory computer readable storage medium such as a CD or DVD.

<FIG> is a block diagram of an example processor platform <NUM> structured to execute the instructions of <FIG> to implement the MMS <NUM> of <FIG> and <FIG>. The processor platform <NUM> can be, for example, a server, a personal computer, a workstation, a self-learning machine (e.g., a neural network), a mobile device (e.g., a cell phone, a smart phone, a tablet such as an iPad™), a personal digital assistant (PDA), an Internet appliance, a DVD player, a CD player, a digital video recorder, a Blu-ray player, a gaming console, a personal video recorder, a set top box, a headset or other wearable device, or any other type of computing device.

For example, the processor <NUM> can be implemented by one or more integrated circuits, logic circuits, microprocessors, GPUs, DSPs, 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 processor implements the example media signal accessor <NUM>, the example watermark decoder <NUM>, the example watermark data structure generator <NUM>, the example MMS data store <NUM>, the example watermark data structure transmitter <NUM> and/or, more generally, the example MMS <NUM>.

The machine executable instructions <NUM>, <NUM> of <FIG> may be stored in the mass storage device <NUM>, in the volatile memory <NUM>, in the non-volatile memory <NUM>, 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 example methods, apparatus and articles of manufacture have been disclosed that enable generation of accurate media monitoring data by associating different watermarks detected in media to expand the realm of watermarks that can be identified at a media monitoring device and/or location. By making use of a plurality of types of watermarks available in a media signal, media presentation records reflecting accurate start and stop times can be established. Example techniques disclosed herein enable association of watermarks of different watermark types that are detected within an alignment threshold time, thus aiding generation of a watermark data structure that can be subsequently used to identify media presentations. Example techniques disclosed herein enable generation of watermark data structures at a media monitoring system for use at one or more media monitors and/or media monitoring locations. The disclosed methods, apparatus and articles of manufacture improve the efficiency of using a computing device by enabling watermark identification via referencing a watermark data structure as opposed to potentially more computationally intensive identification processes. The disclosed methods, apparatus and articles of manufacture are accordingly directed to one or more improvement(s) in the functioning of a computer.

A media monitoring apparatus is disclosed. The example apparatus includes a watermark data structure analyzer to determine whether a first watermark detected in a media signal is represented in a watermark data structure, a watermark data structure modifier to, in response to the first watermark not being in the watermark data structure, modify the watermark data structure to associate the first watermark with a second watermark when the first watermark occurs within an alignment time threshold of the second watermark and the first watermark satisfies a signal strength threshold, a media presentation identifier to associate the first watermark with a first media presentation record associated with the second watermark in response to the first watermark being associated in the watermark data structure with the second watermark, and a monitoring data transmitter to transmit monitoring data including the first media presentation record to an audience measurement entity.

In some examples, the media presentation identifier is to terminate the first media presentation record in response to a time since detection of a previous watermark associated with the first media presentation record exceeding a threshold.

In some examples, the media presentation identifier is to reset a bridge timer in response to the media presentation identifier associating the first watermark with the first media presentation record, the bridge timer to track the time since detection of the previous watermark associated with the first media presentation record.

In some examples, the media presentation identifier to terminate the first media presentation record in response to the first watermark being associated with a second media presentation record.

In some examples, the media presentation identifier is to associate the first watermark with the first media presentation record in response to the first watermark matching the second watermark.

In some examples, the watermark data structure is received from a media measurement system.

Also disclosed herein is an example non-transitory computer readable storage medium comprising computer readable instructions that, when executed, cause a processor to at least determine whether a first watermark detected in a media signal is represented in a watermark data structure, associate the first watermark with a first media presentation record associated with a second watermark in response to the first watermark being associated in the watermark data structure with the second watermark, and transmit monitoring data including the first media presentation record to an audience measurement entity.

In some examples, the instructions, when executed, further cause the processor to terminate the first media presentation record in response to a time since detection of a previous watermark associated with the first media presentation record exceeding a threshold.

In some examples, the instructions, when executed, further cause the processor to reset a bridge timer in response to associating the first watermark with the first media presentation record, the bridge timer to track the time since detection of the previous watermark associated with the first media presentation record.

In some examples, the instructions, when executed, further cause the processor to terminate the first media presentation record in response to the first watermark being associated with a second media presentation record.

In some examples, the instructions, when executed, further cause the processor to, in response to the first watermark not being in the watermark data structure, modify the watermark data structure to associate the first watermark with the second watermark when the first watermark satisfies a signal strength threshold.

In some examples, the instructions, when executed, further cause the processor to associate the first watermark with the first media presentation record in response to the first watermark being within an alignment time threshold of the second watermark.

In some examples, the instructions, when executed, further cause the processor to associate the first watermark with the first media presentation record in response to the first watermark matching the second watermark.

Also disclosed herein is a method to monitor media. The example method includes determining whether a first watermark detected in a media signal is represented in a watermark data structure, associating the first watermark with a first media presentation record associated with a second watermark in response to the first watermark being associated in the watermark data structure with the second watermark, and transmitting monitoring data including the first media presentation record to an audience measurement entity.

According to the invention, the method further includes modifying the watermark data structure to associate the first watermark with the second watermark when the first watermark satisfies a signal strength threshold and the first watermark occurs within an alignment time threshold of the second watermark, in response to the first watermark not being in the watermark data structure.

In some examples, the method further includes terminating the first media presentation record in response to the first watermark being associated with a second media presentation record.

In some examples, the method further includes terminating the first media presentation record in response to a time since detection of a previous watermark associated with the first media presentation record exceeding a threshold.

Claim 1:
A media monitoring apparatus comprising:
a watermark data structure analyzer to:
determine whether a first watermark detected in a media signal is represented in a watermark data structure, the first watermark being a first watermark type representative of a first type of media presentation record useable to identify a media presentation; and
determine whether a second watermark detected in the media signal is represented in the watermark data structure, the second watermark being a second watermark type representative of a second type of media presentation record usable to identify the media presentation, the second type of media presentation record being different than the first type of the media presentation record;
a watermark data structure modifier to, in response to the first watermark not being in the watermark data structure and the second watermark being in the watermark data structure, modify the watermark data structure to associate the first watermark with the second watermark when the first watermark occurs within an alignment time threshold of the second watermark and the first watermark satisfies a signal strength threshold;
a media presentation identifier to associate the first watermark with a first media presentation record associated with the second watermark in response to the first watermark being associated with the second watermark; and
a monitoring data transmitter to transmit monitoring data including the first media presentation record to an audience measurement entity.