Movatterモバイル変換


[0]ホーム

URL:


HK40049657B - Watermark encoding apparatus, watermark encoding method and computer readable medium - Google Patents

Watermark encoding apparatus, watermark encoding method and computer readable medium
Download PDF

Info

Publication number
HK40049657B
HK40049657BHK62021039919.7AHK62021039919AHK40049657BHK 40049657 BHK40049657 BHK 40049657BHK 62021039919 AHK62021039919 AHK 62021039919AHK 40049657 BHK40049657 BHK 40049657B
Authority
HK
Hong Kong
Prior art keywords
symbols
watermark
timestamp
time stamp
subset
Prior art date
Application number
HK62021039919.7A
Other languages
Chinese (zh)
Other versions
HK40049657A (en
Inventor
V·库兹涅佐夫
亚历山大·托普齐
Original Assignee
尼尔森(美国)有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 尼尔森(美国)有限公司filedCritical尼尔森(美国)有限公司
Publication of HK40049657ApublicationCriticalpatent/HK40049657A/en
Publication of HK40049657BpublicationCriticalpatent/HK40049657B/en

Links

Description

Watermark encoding device, method and computer readable medium
Technical Field
The present invention relates generally to media watermarking and, more particularly, to a method and apparatus for extending the range of time stamps supported by watermarking.
Background
The watermark may be embedded or otherwise included in the medium to enable additional information to be carried with the medium. For example, an audio watermark may be embedded or otherwise included in the audio data/signal portion of a media stream, file, and/or signal to carry data such as media identification information, copyright protection information, and the like, using the media. Such watermarks can monitor the distribution and/or use of media, such as by detecting the presence of watermarks in television broadcasts, radio broadcasts, streaming multimedia, etc., to identify the particular media being presented to viewers, listeners, users, etc. Such information may be valuable to advertisers, content providers, etc.
Some watermarks also include a timestamp to represent time information associated with the watermarked media. For example, the timestamp may represent a broadcast time indicating when the media was played, an access time indicating when the media was accessed (e.g., downloaded, streamed, etc.), a creation time indicating when the media was created, and so forth. Such a timestamp may be used to associate the monitored media with a particular media broadcast, a particular media access, a particular media version, etc.
Disclosure of Invention
The invention relates to a watermark encoding device comprising: a time stamp period evaluator for determining which of a plurality of time stamp periods is represented by a time stamp of the watermark; a symbol exchanger that exchanges at least two symbols of the watermark when the time stamp is to represent a second time stamp period of the plurality of time stamp periods, and that does not exchange the at least two symbols of the watermark when the time stamp is to represent a first time stamp period of the plurality of time stamp periods, wherein the watermark includes a first set of symbols representing data and a second set of symbols representing the time stamp, the first set of symbols including a first subset of symbols and a second subset of symbols, each symbol in the second subset of symbols being determined by a respective symbol of the first subset of symbols based on the other symbol not included in the first subset of symbols and the second subset of symbols, and the at least two symbols to be exchanged are included in one of the first subset of symbols and the second subset of symbols and not included in both the first subset of symbols and the second subset of symbols; and a watermark embedder for embedding the watermark into a portion of the medium.
The invention also relates to a computer readable medium comprising computer readable instructions which, when executed, cause a processor to at least: determining which of the plurality of time stamp periods is to be represented by the time stamp of the watermark; exchanging at least two symbols of the watermark when the timestamp is to represent a second timestamp period of the plurality of timestamp periods, and not exchanging the at least two symbols of the watermark when the timestamp is to represent a first timestamp period of the plurality of timestamp periods, wherein the watermark comprises a first set of symbols representing data and a second set of symbols representing the timestamp, the first set of symbols comprising a first subset of symbols and a second subset of symbols, each symbol in the second subset of symbols being determined by a respective symbol of the first subset of symbols based on another symbol not comprised in the first subset of symbols and the second subset of symbols, and the at least two symbols to be exchanged are comprised in one of the first subset of symbols and the second subset of symbols not comprised in both the first subset of symbols and the second subset of symbols; and embedding the watermark in a portion of the medium.
The invention also relates to a watermark encoding method, comprising the following steps: determining, with the processor, which one of the plurality of time stamp periods is to be represented by a time stamp of the watermark; with the processor, exchanging at least two symbols of the watermark when the timestamp is to represent a second timestamp period of the plurality of timestamp periods, and not exchanging the at least two symbols of the watermark when the timestamp is to represent a first timestamp period of the plurality of timestamp periods, wherein the watermark comprises a first set of symbols representing data and a second set of symbols representing the timestamp, the first set of symbols comprising a first subset of symbols and a second subset of symbols, each symbol in the second subset of symbols being determined by a respective symbol of the first subset of symbols based on the other symbol not included in the first subset of symbols and the second subset of symbols, and the at least two symbols to be exchanged are included in one of the first subset of symbols and the second subset of symbols and not included in both the first subset of symbols and the second subset of symbols; and embedding, with the processor, the watermark in a portion of the medium.
Drawings
Fig. 1 is a block diagram of an exemplary use environment including an exemplary media monitoring system configured to extend the time range supported by watermarks in accordance with the teachings of the present invention.
Fig. 2 is a block diagram of an exemplary media watermark to be detected and processed by the exemplary media monitoring system of fig. 1.
Fig. 3 is a block diagram of an exemplary media provider including an exemplary watermark encoder configured to extend the time range supported by a watermark in accordance with the teachings of the present invention.
Fig. 4 is a block diagram of an exemplary implementation of the watermark encoder of fig. 3.
Fig. 5 is a block diagram of an exemplary watermark decoder for use in the exemplary media monitoring system of fig. 1, the exemplary watermark decoder configured to extend the time range supported by a watermark in accordance with the teachings of the present invention.
Fig. 6 is a flowchart representative of example computer readable instructions that may be executed to implement the example watermark encoder of fig. 3 and/or fig. 4.
Fig. 7 is a flowchart representative of example computer readable instructions that may be executed to implement the example watermark decoder of fig. 5.
Fig. 8 is a block diagram of an example processor platform configured to execute the example computer readable instructions of fig. 5 to implement the example watermark encoder of fig. 3 and/or fig. 4.
Fig. 9 is a block diagram of an example processor platform configured to execute the example computer readable instructions of fig. 7 to implement the example watermark decoder of fig. 5.
The figures are not drawn to scale. Wherever possible, the same reference numbers will be used throughout the drawings and the accompanying written description to refer to the same or like parts, elements, etc.
Detailed Description
Methods, apparatus, systems, and articles of manufacture (e.g., physical storage media) to extend the time range supported by watermarks are disclosed herein. An example watermark encoding device disclosed herein includes a time stamp period evaluator that determines which of a plurality of time stamp periods is to be represented by a time stamp of a watermark. The disclosed example watermark encoding device further includes a symbol exchanger that exchanges at least two symbols of the watermark when the timestamp is to represent a second one of the timestamp periods, and does not exchange the at least two symbols of the watermark when the timestamp is to represent a first one of the timestamp periods. The disclosed example watermark encoding device further includes a watermark embedder to embed the watermark in the first portion of the media.
In some disclosed examples, the timestamp has a timestamp range covering one timestamp period, and the watermark has a timestamp range covering multiple timestamp periods. For example, one time stamp period may correspond to a period of approximately 28 days. In some disclosed examples, the number of timestamp periods in the plurality of timestamp periods is two.
Additionally or alternatively, in some disclosed examples, the watermark includes a first set of symbols representing data and a second set of symbols representing time stamps, and the at least two symbols to be exchanged are included in the first set of symbols representing data. For example, the data may correspond to an identifier of a first portion of the medium. Additionally or alternatively, in some such disclosed examples, the first set of symbols includes a first subset of symbols and a second subset of symbols, wherein each symbol of the second subset of symbols is determined by a corresponding symbol of the first subset of symbols based on another symbol not included in the first subset of symbols and the second subset of symbols. In some such disclosed examples, at least two symbols to be exchanged are included in one of the first subset of symbols and the second subset of symbols, but not in both the first subset of symbols and the second subset of symbols.
An example watermark decoding device disclosed herein includes a watermark validator that determines whether a first symbol sequence of a watermark decoded from a first portion of a medium is valid. The disclosed example watermark decoding device also includes a symbol exchanger that exchanges at least two symbols of the watermark to determine a second symbol sequence when the first symbol sequence is invalid. The disclosed example watermark decoding device also includes a time stamp period decoder that associates the watermark with a first one of the plurality of time stamp periods when the first symbol sequence is valid, and that associates the watermark with a second one of the plurality of time stamp periods when the watermark verifier determines that the second symbol sequence is valid.
In some disclosed examples, the first symbol sequence includes a first set of symbols representing data and a second set of symbols representing time stamps. In some such disclosed examples, at least two symbols to be exchanged to determine the second symbol sequence are included in the first set of symbols representing data. In some such disclosed examples, the first set of symbols includes a first subset of symbols and a second subset of symbols, and the watermark validator is to determine that the first sequence of symbols is valid when each symbol in the second subset of symbols is associated with a corresponding symbol in the first subset of symbols based on another symbol not included in the first subset of symbols and the second subset of symbols. In some such disclosed examples, the watermark validator is to determine that the first symbol sequence is invalid when each symbol in the second subset of symbols is uncorrelated with a corresponding symbol in the first subset of symbols based on another symbol not included in the first subset of symbols and the second subset of symbols.
Additionally or alternatively, in some disclosed examples, the timestamp has a timestamp range covering one timestamp period, and the watermark has a timestamp range covering multiple timestamp periods. In some such disclosed examples, one time stamp period corresponds to a period of substantially 28 days. In some disclosed examples, the data corresponds to an identifier of the first portion of the medium. In some disclosed examples, the number of timestamp periods in the plurality of timestamp periods is two.
These and other exemplary methods, devices, systems, and articles of manufacture (e.g., physical storage media) for extending the range of time stamps supported by watermarks are disclosed in further detail below.
Media watermarking is a technique for identifying media such as television broadcasts, radio broadcasts, advertisements (television and/or radio), downloaded media, streaming media, pre-packaged media, and the like. Existing media watermarking techniques identify media by embedding one or more codes (e.g., one or more watermarks, such as media identification information and/or identifiers that can be mapped to the media identification information) into the audio and/or video components of the media. In some examples, the audio or video component is selected to have signal characteristics sufficient to conceal the watermark. As used herein, the terms "code" or "watermark" are used interchangeably and are defined to mean any identifying information (e.g., an identifier) that may be inserted or embedded in audio or video of a medium (e.g., a program or advertisement) for purposes of identifying the medium or for other purposes such as tuning (e.g., a packet identification header). "media" as used herein refers to audio and/or video (still or moving) content and/or advertisements. To identify the watermarked medium, the watermark(s) are detected/decoded and used to obtain data that can be mapped to the medium identification information.
Unlike media monitoring techniques that are based on codes and/or watermarks embedded or otherwise included in the monitored media, fingerprint or signature-based media monitoring techniques typically use one or more inherent characteristics of the monitored media during a monitoring time interval to generate a substantially unique agent for the media. Such agents are referred to as signatures or fingerprints and may take any form (e.g., a series of digital values, waveforms, etc.) that represent any aspect(s) of the media signal(s) (e.g., forming audio and/or video signals that the media being monitored presents). The signature may be a series of signatures that are collected continuously over a timer interval. In general, good signatures are repeatable when dealing with the same media presentation, but unique relative to other (e.g., different) presentations of other (e.g., different) media. Thus, the terms "fingerprint" and "signature" are used interchangeably herein and are defined herein to mean an agent that is used to identify a medium generated from one or more inherent characteristics of the medium.
Signature-based media monitoring generally involves determining (e.g., generating and/or collecting) a signature representative of a media signal (e.g., an audio signal and/or a video signal) output by a monitored media device, and comparing the monitored signature(s) to one or more reference signatures corresponding to known (e.g., reference) media sources. Various comparison criteria, such as cross-correlation values, hamming distances, etc., may be evaluated to determine whether the monitored signature matches a particular reference signature. When a match between one of the reference signatures and the monitored signature is found, the monitored media may be identified as corresponding to the particular reference media represented by the reference signature that matches the monitored signature. Because attributes such as the identifier of the medium, presentation time, broadcast channel, etc. are collected for the reference signature, these attributes can be associated with the monitored medium whose monitored signature matches the reference signature. Exemplary systems for code and/or signature based identification media are well known and are disclosed first in U.S. Pat. No. 5,481,294 to Thomas, the entire contents of which are incorporated herein by reference.
As described above, a watermark embedded in a medium may include a timestamp representing time information associated with the medium embedded with the watermark. For example, the timestamp may represent a broadcast time indicating when the media was broadcast, an access time indicating when the media was accessed (e.g., downloaded, streamed, etc.), a media creation time indicating when the media was created, and so forth. Such a timestamp may be used to associate the monitored media with a particular media broadcast, a particular media access, a particular media version, etc.
The time period supported by the watermark timestamp is typically related to the number of symbols used to represent the watermark payload of the timestamp. (a symbol may include one or more bits.) as such, a timestamp supporting a longer period of time may require a relatively large number of symbols, while a timestamp supporting a shorter period of time may require a smaller number of symbols. Thus, for a given payload size, a tradeoff is made between the number of data symbols carrying medium identification information (and/or other information) and the number of timestamp symbols, which affects the corresponding time period that can be represented by the timestamp. For example, critical band coding techniques (Critical Band Encoding Technology, CBET) of nielsen (usa) limited liability companies support a period of substantially (e.g., about) 28 days.
While the time period supported by the time stamp of the watermark may be sufficient for some purposes (e.g., monitoring the presentation of a live media broadcast), such a time period may not be sufficient for other purposes. For example, the popularity of digital video recorders, video-on-demand services, and other technologies increases the likelihood that a monitored media presentation may have time shifted (e.g., presented at a different time than the media broadcast, access, etc.). Furthermore, the storage capacity of such techniques continues to increase, resulting in a corresponding increase in duration, whereby the medium may be time shifted. However, if the media is time shifted due to the duration exceeding the time period supported by the time stamp of the watermark embedded in the media, the time represented by the time stamp becomes ambiguous because the number of cycles of the time stamp period that occur from the time represented by the time stamp and when the media is presented (and the time when the watermark is decoded from the media) is unknown. This is because the value of the timestamp toggles at the end of the timestamp period, so different times separated by multiples of the timestamp period will all have the same timestamp value (similar to different times separated by 12 hours period all having the same value on a typical digital alarm clock).
One solution to enable watermarking to support longer time shift durations is to increase the number of watermark symbols used to represent the watermark time stamp. However, if the watermark payload size remains unchanged, such a solution may require a corresponding reduction in the number of data symbols that the watermark can carry, or may require redesigning the watermark structure (and associated watermark encoder and decoder techniques) to increase the size of the watermark payload, thereby increasing the number of time stamp symbols without reducing the number of data symbols. In contrast, the example watermarking techniques disclosed herein provide a technical solution to the problem of extending the range of timestamps supported by watermarking, but without increasing the number of timestamp symbols, and thus without reducing the number of watermark data symbols or without redesigning the watermark structure. The disclosed exemplary watermarking technique implements this solution by exchanging data symbols of a watermark according to different symbol exchange configurations to represent different time stamp periods, wherein each time stamp period covers a respective period of time of the time stamp. For example, a swap configuration corresponding to an unsigned swap may be used to represent a first time stamp period covering a first time period of a time stamp (e.g., a first 28 day period), while a swap configuration corresponding to a swap of at least two data symbols of a watermark may be used to represent a second time stamp period covering a subsequent second time period of a time stamp (e.g., a subsequent second 28 day period). This solution extends the range supported by the watermark timestamp to a number of timestamp periods corresponding to the number of possibly different exchange configurations. For example, if there are two possible exchange configurations (e.g., no exchange with at least two designated symbols), the range of timestamps is extended to support two timestamp time periods. As disclosed in further detail below, a watermark decoder implemented in accordance with the teachings of the present invention may determine which symbol exchange configuration is applied to a detected watermark, and thereby determine which time stamp period is associated with the time stamp of the detected watermark.
Turning to the drawings, a block diagram of an exemplary use environment including an exemplary media monitoring system configured to extend the time range supported by watermarks in accordance with the teachings of the present invention is shown in FIG. 1. In the example of FIG. 1, the example media presentation environment 102 includes example team members 104, 106, an example media presentation device 110 that receives media from an example media source 112, and an example meter 114. The example meter 114 identifies the media presented by the example media presentation device 110 and reports media monitoring information to the example central apparatus 190 of the example audience measurement entity via the example gateway 140 and the example network 180. In some examples, the meter 114 is referred to as an audience measurement device. In the illustrated example, the meter includes an exemplary watermark decoder configured to extend the time range supported by the watermark in accordance with the teachings of the present invention. An example of such a watermark decoder is shown in fig. 5, which will be described in further detail below.
In the illustrated example of fig. 1, the exemplary media presentation environment 102 is a room of a home (e.g., a room in a residence of a group member, such as a "nielsen home" house). In the illustrated example of fig. 1, the exemplary panelists 104, 106 of the household have been statistically selected to develop media ratings data (e.g., television ratings data) for the population/demographics of interest. People become members of the team through, for example, a user interface presented on the media device (e.g., through the media presentation device 110, through a website, etc.). People may become panelists by way of additional or alternative means, such as by way of telephone interviews, completion of online surveys, and the like. Additionally or alternatively, the person may be contacted or recruited using any desired method (e.g., random selection, statistical selection, telephone solicitation, internet advertising, surveys, shopping mall advertising, product packaging, etc.). In some examples, an entire family may be registered as a panelist. That is, while the mother, father, son, and daughter may be identified individually as individual team members, their viewing activities typically occur in the house of the household.
In the illustrated example of fig. 1, one or more panelists 104, 106 in a household are registered with an audience measurement entity (e.g., by agreeing to become a panelist) and provided their demographic information to the audience measurement entity as part of the registration process to enable the demographic characteristics to be associated with a media campaign (e.g., television campaign, broadcast campaign, internet campaign, etc.). Demographic data includes, for example, age, gender, income level, education level, marital status, geographic location, race, etc. of the panelist. Although the example media presentation environment 102 is a home in the illustrated example of fig. 1, the example media presentation environment 102 may additionally or alternatively be any other type(s) of environment, such as a theater, restaurant, pub, retail location, arena, or the like.
In the illustrated example of fig. 1, the exemplary media presentation device 110 is a television. However, the example media presentation device 110 may correspond to any type of audio, video, and/or multimedia presentation device capable of presenting media audibly and/or visually. In some examples, the media presentation device 110 (e.g., a television) may transmit audio to another media presentation device (e.g., an audio/video receiver) for output by one or more speakers (e.g., surround sound speakers, a sound bar, etc.). As another example, the media presentation device 110 may correspond to a multi-media computer system, a personal digital assistant, a cellular/mobile smart phone, a radio, a home theater system, stored audio and/or video played back from a memory such as a digital video recorder or digital versatile disk, a web page, and/or any other communication device capable of presenting media to a viewer (e.g., team members 104, 106).
The media rendering device 110 receives media from a media source 112. The media source 112 may be any type of media provider such as, but not limited to, a wired media service provider, a Radio Frequency (RF) media provider, an internet-based provider (e.g., IPTV), a satellite media service provider, and the like, and/or any combination thereof. The medium may be a radio medium, a television medium, a pay-per-view medium, a movie, an Internet Protocol Television (IPTV), a satellite Television (TV), a web radio, a satellite radio, a digital television, a digital radio, a stored medium (e.g., compact Disc (CD), digital Versatile Disc (DVD), blu-ray disc, etc.), any other type(s) of broadcast, multicast and/or unicast medium, audio and/or video medium that is rendered (e.g., streamed) via the internet, video game, directional broadcast, satellite broadcast, video on demand, etc. For example, the media rendering device 110 may correspond to a television and/or display device supporting the National Television Standards Committee (NTSC) standard, the phase change line (PAL) standard, the electronic color system with memory (SECAM) standard, standards developed by the Advanced Television Systems Committee (ATSC), such as High Definition Television (HDTV), standards developed by the Digital Video Broadcasting (DVB) program, and the like. Advertisements, such as advertisements and/or previews of other programs being or to be provided by the media source 112, are also typically included in the media.
In the examples disclosed herein, the audience measurement entity provides the meter 114 to the panelists 104, 106 (or a panelist) such that the panelists 104, 106 can install the meter 114 by simply powering the meter 114 and placing the meter 114 in the media presentation environment 102 and/or in proximity to the media presentation device 110 (e.g., in proximity to a television). In some examples, more complex installation activities may be performed, such as securing the meter 114 to the media presentation device 110, electrically connecting the meter 114 to the media presentation device 110, and the like. The example meter 114 detects exposure to the medium and electronically stores monitoring information for the presented medium (e.g., a code detected with the presented medium, a signature of the presented medium, an identifier of a team member present at the time of presentation, a timestamp of the presentation time). The stored monitoring information is then transmitted back to the central device 190 via the gateway 140 and the network 180. Although the media monitoring information is transmitted by electronic transmission in the example shown in fig. 1, the media monitoring information may additionally or alternatively be transmitted in any other manner, such as by physical mailing meter 114, memory of physical mailing meter 114, and the like.
The meter 114 of the illustrated example combines audience measurement data with people meter data. For example, audience measurement data is determined by monitoring media output by the media presentation device 110 and/or other media presentation device(s), and audience identification data (also referred to as demographic data, person monitoring data, etc.) is determined from person monitoring data provided to the meter 114. Thus, the example meter 114 provides dual functionality as an audience meter and a personal meter, the audience meter collecting audience measurement data, and the personal meter collecting and/or correlating demographic information corresponding to the collected audience measurement data.
For example, the meter 114 of the illustrated example collects media identification information and/or data (e.g., signature(s), fingerprint(s), code(s), tuned channel identification information, contact time information, etc.) and personnel data (e.g., user identifiers, demographics associated with audience members, etc.). The media identification information and the personnel data may be combined to generate, for example, media contact data (e.g., ratings data) indicating the number and/or type of personnel exposed to the particular media(s) dispensed via the media presentation device 110. To extract the media identification data, the meter 114 of the illustrated example of FIG. 1 monitors the watermark (sometimes referred to as a code) contained in the presented media. In the examples disclosed herein, the watermark comprises a sequence of symbols, some of which carry portions of the medium identification information, which form the medium identification when connected into a first sequence of symbols, and other of which carry portions of the time stamp, which form the time stamp when connected into a second sequence of symbols. As disclosed in further detail below, the disclosed example watermark decoder included in the meter 114 is also capable of detecting an exchange configuration applied to the watermark symbols, and also associating a particular time stamp period with the watermark time stamp based on the exchange configuration applied to the watermark symbols.
Depending on the type(s) of metering to be performed by the meter 114, the meter 114 may be physically coupled to the media presentation device 110, or may be configured to capture audio emitted from outside by the media presentation device 110 (e.g., free field audio) such that direct physical coupling to the media presentation device 110 is not required. For example, the meter 114 of the illustrated example may employ non-invasive monitoring (e.g., viaConnection(s)>Connection, acoustic sensing via one or more microphones, and/or other acoustic sensor(s), etc.), and/or employ intrusive monitoring involving one or more physical connections (e.g., through a USB connection, a High Definition Media Interface (HDMI) connection, an ethernet cable connection, etc.) with the media presentation device 110.
In the examples disclosed herein, to monitor the media presented by the media presentation device 110, the meter 114 of the illustrated example senses audio (e.g., acoustic signals or environmental audio) output (e.g., emitted) by the media presentation device 110. For example, the meter 114 processes the signal obtained from the media rendering device 110 to detect the media and/or source identification signal (e.g., an audio watermark) embedded in the portion(s) (e.g., audio portion) of the media rendered by the media rendering device 110. For example, to sense the environmental audio output by the media presentation device 110, the meter 114 of the illustrated example includes an exemplary acoustic sensor (e.g., a microphone). In some examples, the meter 114 may process audio signals obtained from the media presentation device 110 via a direct cable connection to detect media and/or sources that identify an audio watermark embedded in such audio signals.
To generate contact data for the medium, the identity(s) of the medium contacted by the viewer is correlated with personnel data (e.g., presence information) collected by meter 114. The meter 114 of the illustrated example gathers input (e.g., audience identification data) representative of the identity of the audience member(s) (e.g., panelists 104, 106). In some examples, meters 114 collect audience identification data by periodically and/or aperiodically prompting audience members in the media presentation environment 102 to identify their own presence in the audience. In some examples, the meter 114 responds to a predetermined event (e.g., when the media presentation device 110 is turned on, a channel is changed, an infrared control signal is detected, etc.) by prompting the audience member(s) to self-confirm. The audience identification data and exposure data may then be compiled using demographic data collected from the audience members (e.g., panelists 104, 106) during registration to develop metrics reflecting, for example, the demographic composition of the audience. Demographic data includes, for example, age, gender, income level, education level, marital status, geographic location, race, etc. of the panelist.
In some examples, the meter 114 may be configured to communicate with the remote control via, for example, a remote control,An input device such as a cellular telephone receives the team member information. In such examples, the meter 114 prompts the audience member to indicate his presence by pressing an appropriate input key on the input device. The meter 114 of the illustrated example may also determine when to prompt the audience member to enter information into the meter 114. In some examples, the meter 114 of fig. 1 supports audio watermarking for personnel monitoring, which enables the meter 114 to detect the presence of a metering device in the vicinity of the media presentation device 110 (e.g., in the media presentation environment 102) that identifies panelists. For example, the sound sensor of meter 114 can sense exemplary audio output (e.g., transmitted) by an exemplary panelist-identifying metering device (e.g., wristband, cell phone, etc.) that is uniquely associated with a particular panelist. The audio output by the exemplary panelist-identifying metering device may include, for example, one or more audio watermarks to facilitate identification of the panelist-identifying metering device and/or the panelist 104 associated with the panelist-identifying metering device.
The meter 114 of the illustrated example communicates with a remotely located central facility 190 of an audience measurement entity. In the illustrated example of fig. 1, the example meter 114 communicates with a central device 190 through a gateway 140 and a network 180. The example meter 114 of fig. 1 transmits the media identification data and/or the audience identification data to the center device 190 periodically, aperiodically, and/or upon request by the center device 190.
The exemplary gateway 140 of the illustrated example of fig. 1 may be implemented by a router that enables meters 114 and/or other devices (e.g., the media presentation device 110) in a media presentation environment to communicate with a network 180 (e.g., the internet).
In some examples, the exemplary gateway 140 facilitates the transfer of media from the media source(s) 112 to the media presentation device 110 via the internet. In some examples, exemplary gateway 140 includes gateway functions, such as modem functions. In some other examples, the exemplary gateway 140 is implemented in two or more devices (e.g., routers, modems, switches, firewalls, etc.). The gateway 140 of the illustrated example may communicate with the network 126 via ethernet, digital Subscriber Line (DSL), telephone line, coaxial cable, USB connection, bluetooth connection, any wireless connection, etc.
In some examples, the exemplary gateway 140 hosts a Local Area Network (LAN) for the media presentation environment 102. In the illustrated example, the LAN is a Wireless Local Area Network (WLAN) and allows the meter 114, the media presentation device 110, etc. to send and/or receive data over the internet. Alternatively, gateway 140 may be coupled to such a LAN.
The network 180 of the illustrated example may be implemented by a Wide Area Network (WAN) such as the internet. However, in some examples, a local area network may additionally or alternatively be used. Further, the exemplary network 180 may be implemented using any type of public or private network, such as, but not limited to, the Internet, a telephone network, a Local Area Network (LAN), a cable network, and/or a wireless network, or any combination thereof.
The central device 190 of the illustrated example is implemented by one or more servers. The central device 190 processes and stores data received from the meter(s) 114. For example, the example central device of fig. 1 combines audience identification data and program identification data from multiple households to generate aggregated media monitoring information. The central facility 190 generates reports to advertisers, program producers, and/or other interested parties based on the compiled statistics. Such reports include inferences regarding audience size and demographic make-up of content, channels, and/or advertisements based on the demographics and behavior of the monitored panelists.
As described above, the meter 114 of the illustrated example provides a combination of media metering and personnel metering. The meter 114 of fig. 1 includes its own housing, processor, memory and/or software to perform the desired media monitoring and/or personnel monitoring functions. The example meter 114 of fig. 1 is a stationary device disposed on or near the media presentation device 110. To identify and/or confirm the presence of a panelist present in the media presentation environment 102, the example meter 114 of the illustrated example includes a display. For example, the display provides an identification of the panelists 104, 106 present in the media presentation environment 102. For example, in the illustrated example, the meter 114 displays indicia (e.g., lighted numerals 1, 2, 3, etc.) to identify and/or confirm the presence of the first team member 104, the second team member 106, etc. In the example shown, the meter 114 is fixed to the top of the media presentation device 110. However, the meter 114 may be secured to the media presentation device in any other orientation, such as on one side of the media presentation device 110, at the bottom of the media presentation device 110, and/or may not be secured to the media presentation device 110. For example, the meter 114 may be placed in a location near the media presentation device 110.
Fig. 2 illustrates an example watermark 200, and the example meter 114 of fig. 1 may be configured to detect the example watermark 200. The watermark 200 of the illustrated example is embedded or otherwise included in media to be presented by a media device(s), such as the exemplary media device 110. For example, the watermark 200 may be embedded in an audio portion of the medium (e.g., an audio data portion, an audio signal portion, etc.), a video portion of the medium (e.g., a video data portion, a video signal portion, etc.), or a combination thereof. The example watermark 200 of fig. 2 includes an example first set of symbols 205 and an example second set of symbols 210. In the illustrated example of fig. 2, the first set of symbols 205 are repeated in successive watermarks 200 embedded/included in the medium, while the second set of symbols 210 vary between successive watermarks 200 embedded/included in the medium.
In the exemplary watermark of fig. 2, the first set of symbols 205 carries media identification data (e.g., a media identifier) that identifies the media being watermarked by the watermark 200. For example, the media identification data carried by the first set of symbols 205 may include data identifying a broadcast station that provides the media, the name of the media (e.g., program name), the source of the media (e.g., website), and so forth. Thus, in the illustrated example of fig. 2, the first set of symbols 205 is also referred to as a first set of media identification symbols 205 (or simply media identification symbols 205 or media identification payloads 205). In some examples, the first set of symbols 205 includes any type of data, which may or may not include media identifying information. In such an example, the first set of symbols 205 may be referred to as data symbols 205 or data payloads 205 or data 205 of the watermark 200. In the illustrated example, the media identification data (e.g., the media identification symbol 205) carried by the first set of symbols 205 is repeated in the continuous watermark 200 embedded/included in the media.
In some examples, the first set of symbols 205 of the watermark 200 includes exemplary marker symbols 215A-215B that assist the watermark detector 145 in detecting the beginning of the watermark 200 in the watermarked medium, and exemplary data symbols 220A-220F that carry medium identification data. Also, in some examples, corresponding pairs of symbols in similar respective positions after the first marker 215A and the second marker 215B are correlated by an offset. For example, the value of data symbol 220D may correspond to the value of data symbol 220A incremented by an offset, the value of data symbol 220E may correspond to the value of data symbol 220B incremented by the same offset, and the value of data symbol 220F may also correspond to the value of data symbol 220C incremented by the same offset. In such an example, the symbol pairs 220A/D, 220B/E, and 220C/F are referred to as offset pairs or symbol offset pairs, and the offsets used to generate the symbol offset pairs form additional data symbols that may be used to carry media identification data.
For example, the watermark payload of the exemplary watermark 200 of fig. 2 has the following structure:
[M1 S1 S2 S3 M2 S4 S5 S6 T1 T2 T3 T4]
wherein the symbol [ S4S 5S 6] is related to the symbol [ S1S 2S 3] according to the following first relation system:
S4=(S1+S0)mod 16
S5= (s2+s0) mod 16, and
S6=(S3+S0)mod 16,
where "mod" represents the modulo operation. In this example, symbol S0 is another symbol represented by an offset between symbol S1S 2S 3 and symbol S4S 5S 6. In this example, the symbol [ S0S 1S 2S 3] is a data symbol representing a value of a media identifier such as a Source Identifier (SID).
In the exemplary watermark 200 of fig. 2, the second set of symbols 210 carries time stamp data (e.g., time stamps) identifying, for example, a broadcast time of the watermarked medium, an access time of the watermarked medium, a creation time of the watermarked medium, a particular elapsed time within the watermarked medium, etc. Thus, in the illustrated example of fig. 2, the second set of symbols 210 is also referred to as a second set of timestamp symbols 210 (or simply timestamp symbols 210, or timestamp payloads 210, or timestamps 210). Furthermore, the time stamp data carried by the second set of symbols 210 (e.g., time stamp symbols 210) is different in the continuous watermarks 200 embedded/included in the media (e.g., as the elapsed time of the watermarked media increases with each continuous watermark 200).
In the illustrated example of fig. 2, the watermark 200 is embedded/included in the medium at a repetition interval of T seconds (or in other words, at a repetition rate of 1/T seconds), wherein the first set of symbols 205 remain the same in the continuous watermark 200 and the second set of symbols 210 vary in the continuous watermark 200. For example, the repetition interval T may correspond to t=4.8 seconds. Since there are 12 symbols in the exemplary watermark 200 (e.g., 8 symbols in the first set of symbols 205 and 4 symbols in the second set of symbols 210), the duration of each watermark symbol is 4.8/12=0.4 seconds in the illustrated example. However, other values of the repetition interval T may be used in other examples.
In some examples, the watermark symbol included in watermark 200 can take one of a variety of possible symbol values. For example, if a symbol in the watermark 200 represents 4 bits of data, the symbol can take one of 16 different possible values. For example, each possible symbol value may correspond to a different signal amplitude, a different set of code frequencies, and so on. In some such examples, to detect watermark symbols embedded/included in the watermarked medium, the example meter 114 processes the monitored media data/signals output from the example media device 110 to determine a measured value (e.g., a signal-to-noise ratio (SNR) value) corresponding to each possible symbol value that the symbol may have. The meter 114 then selects the symbol value (possibly after averaging multiple samples of the media data/signal) corresponding to the best (e.g., strongest, largest, etc.) measurement value as the detected symbol value for that particular watermark symbol.
In the example shown, the meter 114 also decodes another symbol S0 using the relationship between the above-specified symbol [ S1S 2S 3] and symbol [ S4S 5S 6], and further determines whether the decoded symbol corresponds to a valid symbol sequence. For example, let [ A1A 2A 3A 4A 5A 6] represent the respective values of the watermark symbol [ S1S 2S 3S 4S 5S 6] detected by the meter 114. The detected watermark symbol [ A1 A2 A3 A4 A5 A6] is correlated with the original watermark symbol [ S1S 2S 3S 4S 5S 6] according to the following second relation system:
A1=S1+ε1
A2=S2+ε2
A3=S3+ε3
A4=S4+ε4
A5=S5+ε5
A6=S6+ε6
Where [ epsilon 1 epsilon 2 epsilon 3 epsilon 4 epsilon 5 epsilon 6] represents the corresponding error (e.g., caused by transmission errors, sensing errors, etc.) of [ A1 A2 A3 A4 A5 A6] with respect to the original watermark symbol [ S1S 2S 3S 4S 5S 6] and the addition operation is a modulo addition (e.g., modulo 16 addition in this example, but in other examples, the modulo addition would be based on the number of different values each symbol may have that corresponds to the number of bits that the symbol represents). To decode symbol S0 and further verify the decoded symbol, meter 114 attempts to find a single offset value that correlates [ A1A 2A 3] with [ A4A 5A 6] by modulo addition according to the first relationship given above. To this end, the meter 114 assumes that the value of the detected watermark symbol [ A1A 2A 3] is correct and corresponds to the original watermark symbol [ S1S 2S 3]. The meter 114 then evaluates the above first relationship system using different offset values in an attempt to find an offset value that when added to each of [ A1A 2A 3] by modulo addition yields [ A4A 5A 6]. If the meter 114 is able to find one such offset value, the offset value is set to the decoded value of S0, and the resulting sequence of decoded watermark data symbols [ S0S 1S 2S 3] is considered valid. If the meter 114 cannot find a single offset value that correlates each of [ A1A 2A 3] with [ A4A 5A 6] by modulo addition, the meter 114 determines that the decoded watermark symbol is invalid. (in some examples, if two of the three decoded symbol pairs are correlated with the same offset, the resulting decoded symbol would not be considered invalid, but would be indicated as having a lower reliability score.)
A block diagram of an exemplary media provider 300 for providing watermarked media according to the teachings of the present invention is shown in fig. 3. For example, the media provider 300 may correspond to any type of media provider, such as a television station, a cable network, a satellite network (e.g., television or broadcast), a radio station, a streaming media service (e.g., hulu)TM 、Etc.), etc. As such, the media distributed by the media provider 300 may correspond to any type of media, such as television programming, radio programming, multi-media (e.g., audio and/or video) content, and the like. In the illustrated example, the media provider 300 may distribute particular media (e.g., particular television programs, particular radio programs, particular movies, etc.) to recipients (e.g., television viewers, radio listeners, computer users, electronic device users, etc.) via one or more program broadcasts, distribution channels, etc. (e.g., one or more radio frequencies, cable and/or satellite television and/or radio channels, one or more networks carrying one or more digital transmission channels, etc.). The example media provider 300 may correspond to the media source 114 of FIG. 1.
In the illustrated example of fig. 3, the media provider 300 includes an exemplary media database 305 to store media (e.g., media content, media advertisements/commercials, etc.) to be distributed by the media provider 300. The media provider 300 may be implemented by any type or combination of one or more memories and/or storage devices. For example, the media provider 300 may be implemented by the mass storage device 828 and/or the volatile memory 814 in the exemplary processing system 800 of FIG. 8, as will be described in further detail below.
The example media provider 300 of fig. 3 also includes an example watermark encoder 310, which example watermark encoder 310 retrieves media stored in the media database 305 and encodes (e.g., embeds) a series of watermarks into the media. For example, the sequence of watermarks encoded in the medium by watermark encoder 310 may be a sequence of audio watermarks, such as watermark 200 of fig. 2, encoded in the audio portion(s) of the medium at successive time intervals (e.g., every 4.8 seconds or any other constant or varying time interval) using any suitable audio watermarking technique. Additionally or alternatively, the sequence of watermarks encoded in the media by watermark encoder 310 may be a sequence of video watermarks encoded in video portion(s) of the media content at successive time intervals using any suitable video watermarking technique. In some examples, the watermark may include or otherwise carry payload data (e.g., data payload 205) identifying the media, which data identifies, for example, the source of the media content (e.g., such as the particular media provider 300) and/or the media itself (e.g., the title of the media content, the episode number, etc.). In some examples, the watermark may include or otherwise carry timestamp payload data (e.g., timestamp payload 210) representing a timestamp associated with the watermark. As disclosed in further detail below, the watermark encoder 310 is also configured to extend the range of time stamps supported by the watermark in accordance with the teachings of the present invention.
A block diagram of an exemplary implementation of watermark encoder 310 of fig. 3 is shown in fig. 4. The exemplary watermark encoder 310 of fig. 4 is configured to extend the range of watermark timestamps (such as timestamp 210) included in a watermark (such as watermark 200) embedded in a medium. The example watermark encoder 310 of fig. 4 includes an example data generator 405 to generate or otherwise obtain (e.g., download, retrieve from memory, etc.) a payload 205 or data symbols of the data payload 205 for the identification medium of the watermark 200 described above. Thus, the data generator 405 is an example of a means for generating a payload or data payload of an identification medium of a watermark to be embedded in the medium. The example watermark encoder 310 of fig. 4 includes an example timestamp generator 410 to generate or otherwise obtain (e.g., from a clock, counter, or other timing source) the timestamp symbols of the timestamp payload 210 of the watermark 200 described above. Thus, the timestamp generator 410 is an example of a means for generating a timestamp payload of a watermark to be embedded in a medium.
In the illustrated example, watermark encoder 310 includes an exemplary time stamp period evaluator 415 and an exemplary code symbol exchanger 420 to extend the range of watermark time stamps 210. The timestamp period evaluator 415 of the illustrated example determines which of a set of timestamp periods is to be represented by the timestamp 210 generated by the timestamp generator 410. In the illustrated example, from the start reference time, a group of two or more time stamp periods may be defined as corresponding to two or more consecutive time periods of time stamp 210 that repeat after a number of time stamp time periods corresponding to the number of time stamp periods included in the group. For example, for a set of time stamp periods including two time stamp periods, the two time stamp periods correspond to alternating time periods of the time stamp 210. In the illustrated example, the time stamp period evaluator 415 compares the time represented by the time stamp 210 (e.g., the current time) with a starting reference time to determine which of the set of time stamp periods the time represented by the time stamp falls within. The identified time stamp period is then determined by the time stamp period evaluator 415 such that it is represented by the time stamp 210 and is thus associated with the watermark 200. Thus, the time stamp period evaluator 415 is an example of means for determining which of a plurality of time stamp periods is represented by the time stamp of the watermark.
By associating the timestamp 210 with a particular timestamp period of a set of timestamp periods, the time value represented by the timestamp 210 becomes the value of the timestamp 210 shifted by the plurality of timestamp periods represented by the particular timestamp period associated with the timestamp. For example, for a set of time stamp periods including two time stamp periods, when time stamp 210 represents (is associated with) a first time stamp period of the set, the time represented by time stamp 210 may be the value of time stamp 210, and when time stamp 210 represents (is associated with) a second time stamp period of the set, time stamp 210 may be the value of time stamp 210 offset by one time stamp period. In this way, the time range represented by the watermark (e.g., the time stamp range of the watermark) extends from the time stamp range of one time stamp period covered by one time stamp period to a plurality of time stamp periods covered by the set of time stamp periods. For example, for a set of time stamp periods including two time stamp periods, the time stamp range of the watermark extends from one time stamp period to two time stamp periods.
The code symbol exchanger 420 of the illustrated example is included in the watermark encoder 310 to encode the time stamp period to be represented by the time stamp 210 as the watermark 200 to be encoded in the medium. To this end, the encoding symbol exchanger 420 uses different exchange configurations to exchange symbols of the payload 205 or data payload 205 of the identification medium of the watermark 200 to encode different ones of a set of time stamp periods that may be represented by the time stamp 200 generated by the time stamp generator 410. In some examples, the encoding symbol exchanger 420 encodes a first one of the possible time stamp periods in the watermark 200 using a first exchange configuration that corresponds to symbols that do not exchange the data payload 205, encodes a second one of the possible time stamp periods in the watermark 200 using a second exchange configuration that corresponds to a first pair of symbols of the data payload 205, encodes a third one of the possible time stamp periods in the watermark 200 using a third exchange configuration that corresponds to a second pair of symbols of the data payload 205 that are different from the first pair of symbols, and so on. In some examples, the exchange configuration may specify more than two symbols to be exchanged (reordered) to represent a particular one of the possible timestamp periods. As such, the code symbol exchanger 420 is an example of a means for exchanging at least two symbols of a watermark when the timestamp 210 is to represent the second of the timestamp periods in the group, but not when the timestamp 210 is to represent the first of the timestamp periods in the group.
For example, for a set of two time stamp periods, a first one of the time stamp periods may be represented by not exchanging symbols of the data payload 205 of the watermark 200, while a second one of the time stamp periods may be represented by exchanging symbols 220A (S1) and 220B (S2) of the data payload 205 of the watermark 200. As another example, for a set of time stamp periods including two time stamp periods, a first one of the time stamp periods may be represented by not exchanging symbols of the data payload 205 of the watermark 200, while a second one of the time stamp periods may be represented by exchanging symbols 220A (S1) and 220C (S3) of the data payload 205 of the watermark 200. As another example, for a set of time stamp periods including two time stamp periods, a first one of the time stamp periods may be represented by not exchanging symbols of the data payload 205 of the watermark 200, and a second one of the time stamp periods may be represented by exchanging symbols 220B (S2) and 220C (S3) of the data payload 205 of the watermark 200. As yet another example, for a set of time stamp periods including two time stamp periods, a first time stamp period in the time stamp periods may be represented by exchanging symbols 220A (S1) and 220B (S2) of the data payload 205 of the watermark 200, and a second time stamp period in the time stamp periods may be represented by exchanging symbols 220B (S2) and 220C (S3) of the data payload 205 of the watermark 200. As yet another example, for a set of three time stamp periods, a first one of the time stamp periods may be represented by data that does not exchange symbols of the data payload 205 of the watermark 200, a second one of the time stamp periods may be represented by exchanging symbols 220A (S1) and 220B (S2) of the data payload 205 of the watermark 200, and a third one of the time stamp periods may be represented by exchanging symbols 220B (S2) and 220C (S3) of the data payload 205 of the watermark 200. Other combinations of exchange configurations may be used to represent different possible time stamp periods in a given set of time stamp periods. In some examples, the encoding symbol exchanger 420 is configured to perform a swap of symbols in the first subset of symbols [ S1S 2S 3] or a swap of symbols in the second subset of symbols [ S4S 5S 6] of the data payload 205, but does not allow the first subset of symbols and the second subset of symbols of the data payload 205 across the watermark 200 to swap symbols. For example, the code symbol exchanger 420 may not be allowed to exchange symbols S1 and S4, or exchange symbols S2 and S5, etc.
In some examples, the payload 205 of the identification medium of the watermark 200 or the allowed combination of symbols included in the data payload 205 is deleted (e.g., not allowed) to ensure that the resulting payload after the exchange by the encoding symbol exchanger 420 satisfies one or more conditions. For example, analyzing the payload that may result from the exchange may find that one or more resulting combinations of exchanged symbols do not meet Hamming distance requirements, and thus such symbol combinations may be deleted as possible medium identifiers, information values, etc. In some such examples, the data generator 405 is configured to block the generation of combinations of symbols that have been deleted.
The example watermark encoder 310 of fig. 4 also includes an example watermark embedder 425, the example watermark embedder 425 embedding the watermark 200 (e.g., after any symbol exchange performed by the encoding symbol exchanger 420) in a medium (e.g., obtained from the medium database 305). For example, watermark embedder 425 may embed watermark 200 into the audio portion/signal, and/or the video portion/signal of the medium using any suitable watermark embedding technique. Thus, watermark embedder 425 is an example of a means for embedding a watermark in a first portion of a medium (e.g., after any symbol exchange).
An example watermark decoder 500 that may be included in the example meter 114 of fig. 1 to decode a watermark embedded in a medium is shown in fig. 5. The watermark decoder 500 of the illustrated example is configured to extend the range of watermark timestamps (such as timestamp 210) included in a watermark (such as watermark 200) embedded in a monitored medium. The example watermark decoder 500 includes an example symbol decoder 505 to decode the symbols of a watermark detected in a monitored medium. For example, the symbol decoder 505 may use any suitable watermark detection technique to decode the symbols of the watermark 200 detected as embedded in the audio portion/signal and/or video portion/signal of the medium. The symbols detected by the symbol decoder 500 of the illustrated example include the detected symbol [ A1A 2A 3A 4A 5A 6] of the watermark payload 205 described above, as well as the detected symbol [ T1T 2T 3T 4] version of the timestamp payload 210 of the watermark 200. Thus, the watermark decoder 500 is an example of a means for decoding the sign of a watermark embedded in a monitored medium.
Watermark decoder 500 also includes an exemplary watermark validator 510 to validate the decoded sequence watermark symbols obtained by symbol decoder 505. In some examples, watermark verifier 510 is configured to verify a sequence of decoded symbols corresponding to data payload 205 of watermark 200. In some such examples, to validate the sequence of decoded symbols corresponding to the data payload 205, the watermark validator 510 attempts to find a single offset value that correlates [ A1 A2 A3] with [ A4 A5 A6] by modulo addition according to the first relationship system described above. As described above, the single offset value corresponds to another symbol S0. As described above, to perform such verification, watermark verifier 510 assumes that the value of the decoded watermark symbol [ A1 A2 A3] obtained by symbol decoder 505 is correct and corresponds to the original watermark symbol [ S1S 2S 3]. Watermark verifier 510 then evaluates the first relationship system described above with different possible offset values in an attempt to obtain a value of A4 A5 A6 when found and when added to each of A1 A2 A3 by modulo addition. If watermark verifier 510 is able to find one such offset value, the offset value is set to the decoded value of S0, and the resulting sequence of decoded watermark data symbols S0S 1S 2S 3 is considered valid. Otherwise, watermark verifier 510 determines that the sequence of decoded watermark symbols obtained by symbol decoder 505 is invalid. Thus, watermark verifier 510 is an example of means for determining whether a given symbol sequence of a watermark decoded from a medium is valid.
In the illustrated example, watermark decoder 500 includes an exemplary decoding symbol exchanger 515, an exemplary timestamp period decoder 520, and an exemplary watermark reporter 525 to extend the range of watermark timestamps 210. As described above, the sign of the watermark 200 may have been exchanged by the watermark encoder 310 to encode a particular time stamp period to be represented by the time stamp 210 of the watermark 200. The example decoded symbol exchanger 515 will exchange the symbols of the decoded watermark according to different possible symbol exchange configurations that the watermark encoder 310 may employ in the event that the watermark verifier 510 determines that a given sequence of decoded watermark symbols is invalid. For example, if watermark verifier 510 determines that the sequence of decoded symbols corresponding to data payload 205 is valid without any exchange (e.g., corresponding to the first exchange configuration), then decoded symbol exchanger 515 does not perform any exchange on the decoded symbols and decoded timestamp 210 is determined to represent the timestamp period corresponding to the first exchange configuration (e.g., no exchange). However, if watermark verifier 510 determines that the sequence of decoded symbols corresponding to data payload 205 is invalid without any exchange (e.g., corresponding to the first exchange configuration), then decoded symbol exchanger 515 exchanges two or more decoded symbols of data payload 205 in accordance with the second exchange configuration that watermark encoder 310 may employ. Watermark verifier 510 then attempts to verify the resulting exchange sequence of decoded watermark data symbols. If the resulting exchange sequence of decoded watermark data symbols is valid, then the decoding timestamp 210 is determined to represent a particular timestamp period corresponding to the second exchange configuration. However, if the resulting exchange sequence of decoded watermark data symbols is invalid, the decoded symbol exchanger 515 may continue to exchange decoded symbols of the data payload 205 in accordance with other exchange configurations that may be employed by the watermark encoder 310 to determine that any of those exchange configurations resulted in a valid sequence of decoded symbols of the data payload 210 for the watermark 200. As such, the decoded symbol exchanger 515 is an example of a means for exchanging at least two symbols of a watermark to determine a second symbol sequence when the first symbol sequence is invalid. In some examples, if no possible exchange configuration results in a valid sequence of decoded symbols for the data payload 210, the watermark verifier 510 determines that the decoded watermark symbols should be discarded as invalid.
The time stamp period decoder 520 of the illustrated example is included in the watermark decoder 500 to decode a particular time stamp period represented by the time stamp 210, the time stamp 210 being decoded by the symbol decoder 505 for the detected watermark 200. In the illustrated example, the timestamp period decoder 520 determines that the detected watermark 200 is associated with a particular timestamp period of a set of possible timestamp periods corresponding to a particular symbol exchange configuration that produced a valid sequence of decoded symbols of the data payload 210 of the watermark 200. For example, if it is determined that the decoded symbol sequence obtained for the data payload 210 is valid without any exchange, the timestamp period decoder 520 determines that the detected watermark 200 is associated with a first timestamp period corresponding to a first exchange configuration that specifies no symbol exchange. However, when symbols are swapped by the decoding symbol exchanger 515 according to a second swap configuration of possible swap configurations that the watermark encoder 310 may use, if the decoded symbol sequence obtained for the data payload 210 is determined to be valid, the timestamp period decoder 520 determines that the detected watermark 200 is associated with a second timestamp period corresponding to the second swap configuration. Likewise, when symbols are swapped by the decoding symbol exchanger 515 according to a third swap configuration of possible swap configurations that the watermark encoder 310 may use, if the decoded symbol sequence obtained for the data payload 210 is determined to be valid, the timestamp period decoder 520 determines that the detected watermark 200 is associated with a third timestamp period corresponding to the third swap configuration, and so on. Thus, the time stamp period decoder 520 is an example of an apparatus for: associating the watermark with a first one of the plurality of time stamp periods when the first sequence of decoded watermark symbols is valid, and associating the watermark with a second one of the plurality of time stamp periods when the first sequence of symbols is invalid and when the second sequence of decoded watermark symbols (including the swapped symbols relative to the first sequence) is determined to be valid.
A watermark reporter 525 of the illustrated example is included in the watermark decoder 500 to report the final version of the watermark 200 decoded from the monitored media. For example, watermark reporter 525 reports the data payload 205 of the decoded watermark 200 as a sequence of decoded symbols using any exchange performed to produce a valid sequence determined by watermark verifier 510. Watermark reporter 525 of the illustrated example reports the time stamp payload 210 of watermark 200 as a time value represented by the decoded symbols of time stamp 210, which is adjusted, if appropriate, by a plurality of time stamp time periods corresponding to the time stamp periods encoded in watermark 200, as described above. For example, when timestamp period decoder 520 determines that timestamp 210 represents a first timestamp period (associated with) of the set of possible timestamp periods, watermark reporter 525 may report the time represented by decoded timestamp 210 as the value of timestamp 210, and when timestamp period decoder 520 determines that timestamp 210 represents a second timestamp period of the set, may report the time represented by decoded timestamp 210 as the value of timestamp 210 offset by one timestamp period. As such, watermark reporter 525 is an example of means for constructing final watermark data from watermark symbols decoded from detected watermarks and exchanged according to a particular exchange configuration corresponding to a particular time stamp period represented by a time stamp of the watermark. Watermark reporter 525 then reports the decoded watermark 200 to central device 190, as described above.
Although an example manner of implementing watermark encoder 310 and watermark decoder 500 is shown in fig. 3-5, one or more of the elements, processes, and/or devices shown in fig. 3-5 may be combined, separated, rearranged, omitted, eliminated, and/or implemented in any other way. Further, the example data generator 405, the example timestamp generator 410, the example timestamp period evaluator 415, the example code symbol exchanger 420, the example watermark embedder 425, the example symbol decoder 505, the example watermark verifier 510, the example decoding symbol exchanger 515, the example timestamp period decoder 520, the example watermark reporter 525, and/or more generally the example watermark encoder 310 and the example watermark decoder 500 of fig. 3-5 may be implemented by hardware, software, firmware, and/or any combination of hardware, software, and/or firmware. Thus, for example, any of the example data generator 405, the example timestamp generator 410, the example timestamp period evaluator 415, the example encoding symbol exchanger 420, the example watermark embedder 425, the example symbol decoder 505, the example watermark validator 510, the example decoding symbol exchanger 515, the example timestamp period decoder 520, the example watermark reporter 525, and/or more generally the example watermark encoder 310 and the example watermark decoder 500 may be implemented by one or more analog or digital circuits, logic circuit(s), programmable processor(s), programmable controller(s), graphics Processing Unit (GPU) digital signal processor (DSP(s), application specific integrated circuit (ASIC(s), programmable Logic Device (PLD) and/or field programmable logic device(s). When reading any of the apparatus claims or system claims of this patent to cover a purely software and/or firmware implementation, at least one of the example watermark encoder 310, the example watermark decoder 500, the example data generator 405, the example timestamp generator 410, the example timestamp period evaluator 415, the example encoding symbol exchanger 420, the example watermark embedder 425, the example symbol decoder 505, the example watermark verifier 510, the example decoding symbol exchanger 515, the example timestamp period decoder 520, and/or the example watermark reporter 525 is thereby 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 software and/or firmware. Still further, the example watermark encoder 310 and/or the example watermark decoder 500 may include one or more elements, processes and/or devices in addition to or in place of the elements, processes and/or devices shown in fig. 3-5, and/or may include more than one of any or all of the elements, processes and devices shown. 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 regular intervals, predetermined intervals, aperiodic intervals, and/or disposable events.
Flowcharts representative of example hardware logic, machine readable instructions, hardware implemented state machines, and/or any combination thereof for implementing the example watermark encoder 310 and the example watermark decoder 500 are shown in fig. 6-7. In these examples, the machine-readable instructions may be one or more executable programs or portion(s) of executable programs that are executed by a computer processor (e.g., processor 812 shown in the example processor platform 800 and/or processor 912 shown in the example processor platform 900 discussed below in connection with fig. 8-9). One or more programs, or portion(s) of the program, may be presented in software stored on a non-transitory computer readable storage medium, such as a CD-ROM, floppy disk, hard drive, DVD, blu-ray discTM Or memory associated with processor 812 and/or processor 912, the entire program(s) and/or portions thereof could alternatively be executed by a device other than processor 812 and/or processor 912 and/or embodied in firmware or dedicated hardware (e.g., implemented by ASIC, PLD, FPLD, discrete logic, etc.). Further, although the example program(s) are described with reference to the flowcharts shown in fig. 6-7, many other methods of implementing the example watermark encoder 310 and the example watermark decoder 500 may alternatively be used. For example, with reference to the flowcharts shown in fig. 6-7, the order of execution of the blocks may be changed, and/or some of the blocks described may be changed, eliminated, combined, and/or sub-divided into multiple blocks. Additionally or alternatively, any or all of the blocks may be configured to perform the corresponding operations One or more hardware circuits (e.g., discrete and/or integrated analog and/or digital circuits, field Programmable Gate Arrays (FPGAs), ASICs, comparators, operational amplifiers (op-amps), logic circuitry, etc.) implemented without the need to execute software or firmware.
As described above, the example processes of fig. 6-7 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 (e.g., hard disk drive, flash memory, read-only memory, optical disk, digital versatile disk, cache, random access memory, and/or any other storage device or storage disk) in which information is stored for any duration (e.g., long time period, permanently, brief instances, 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. Furthermore, as used herein, the terms "computer-readable" and "machine-readable" are considered equivalent unless otherwise indicated.
"comprising" and "including" (and all forms and tenses thereof) are used herein as open-ended terms. Thus, whenever a claim recites any element, term, etc., after any form of "comprising" or "including" (e.g., including, comprising, having, containing, etc.), it is to be understood that additional elements, terms, etc., may be present without departing from the scope of the corresponding claim. As used herein, when the phrase "at least" is used as a transitional term in the preamble of a claim, it is open-ended in the same manner that the terms "comprising" and "including" are open-ended. When the term "and/or" is used, for example, in the form of, for example, A, B and/or C, it refers to any combination or subset of A, B, C, such as (1) a alone, (2) B alone, (3) C alone, (4) a and B, (5) a and C, (6) B and C, and (7) a and B and C.
An example program 600 is shown in fig. 6, and the example program 600 may be executed to implement the example watermark encoder 310 of fig. 3 and/or fig. 4. Referring to the preceding figures and the associated written description, the example program 600 of fig. 6 begins execution at block 605, where the example watermark embedder 425 of the watermark encoder 310 obtains the watermarked medium from, for example, the example medium database 305, as described above. At block 610, the example data generator 405 of the watermark encoder 310 obtains the data symbols of the data payload 205 of the watermark 200 to be embedded in the medium, as described above. Also, at block 610, as described above, the example timestamp generator 410 of the watermark encoder 310 obtains the timestamp symbols of the timestamp payload 210 of the watermark 200 to be embedded in the media. At block 615, as described above, the example timestamp period evaluator 415 of the watermark encoder 310 determines which one of a set of timestamp periods is to be represented by the timestamp 210 obtained at block 610.
At block 620, the example encoding symbol exchanger 420 of the watermark encoder 310 determines whether to encode a particular time stamp period to be represented by the time stamp 210 in the watermark 200 according to a symbol exchange configuration involving exchanging at least two symbols of the watermark 200 as described above. If the particular time stamp period corresponds to a symbol exchange configuration involving symbol exchange (at block 620), the encoded symbol exchanger 420 exchanges the watermark symbols according to the exchange configuration, as described above. At block 630, watermark embedder 425 embeds watermark 200 in the medium, as described above.
An example program 700 is shown in fig. 7, and the example program 700 may be executed to implement the example watermark decoder 500 of fig. 5. Referring to the preceding figures and associated written description, the example program 700 of fig. 7 may begin execution at block 705 where the example symbol decoder 505 of the watermark decoder 500 accesses a monitored medium. At block 710, the symbol decoder 505 detects the watermark 200 embedded in the monitored media. At block 715, the example decoded symbol exchanger 515 of the watermark decoder 500 initializes the exchange configuration of decoded symbols to be applied to the detected watermark 200 to a first exchange configuration corresponding to no symbol exchange. At block 715, the example timestamp period decoder 520 of the watermark decoder 500 initializes the timestamp period associated with the timestamp of the watermark 200 to an initial timestamp period corresponding to a first exchange configuration (e.g., no exchange). In some examples, at block 715, the timestamp period decoder 520 sets the initial timestamp period to one of a set of possible timestamp periods corresponding to the current time, and the decoding symbol exchanger 515 sets the initial exchange configuration performed on the decoded watermark symbol to a particular exchange configuration for representing the initialization timestamp period.
At block 720, the symbol decoder 505 decodes the detected symbols of the watermark 200, including decoded data symbols for the data payload 205 of the watermark 200 and decoded time stamp symbols for the time stamp payload of the watermark 200. At block 725, the example watermark verifier 510 determines whether the sequence of decoded data symbols for the data payload 205 is valid, as described above. If the sequence of decoded data symbols is invalid (block 725), then at block 730, the decoded symbol exchanger 515 exchanges at least two symbols of the decoded data payload 205 according to another exchange configuration corresponding to another possible time stamp period represented by the decoded time stamp 210, as described above. Blocks 725 and 730 are repeated until watermark verifier 510 determines that the particular exchange configuration produces a valid sequence of decoded data symbols for data payload 205, as described above. At block 735, the timestamp period decoder 520 associates the detected watermark 200 with a particular timestamp period corresponding to a particular exchange configuration that produced a valid sequence of decoded data symbols for the data payload 205, as described above. At block 740, as described above, the example watermark reporter 525 of the watermark decoder 500 reports a final version of the detected watermark 200 that includes a final sequence of decoded data symbols for the data payload 205 (e.g., symbols having an exchange according to an exchange configuration to be determined to be valid), and the timestamp payload 210 adjusted according to a particular timestamp period determined to be associated with the detected watermark 200.
FIG. 8 is a diagram of an instruction configured to execute the instruction of FIG. 6A block diagram of an example processor platform 800 implementing the example watermark encoder 310 of fig. 3 and/or 4. The processor platform 800 may be, for example, a server, personal computer, workstation, self-learning machine (e.g., neural network), mobile device (e.g., cell phone, smart phone, tablet (e.g., iPad)TM ) Personal Digital Assistant (PDA), internet appliance, DVD player, CD player, digital video recorder, blu-ray player, game console, personal video recorder, set top box, digital camera, headset or other wearable device, or any other type of computing device.
The processor platform 800 of the illustrated example includes a processor 812. The processor 812 of the illustrated example is hardware. For example, the processor 812 may be implemented as one or more integrated circuits, logic circuits, microprocessors or controllers from any desired home or manufacturer. The hardware processor 812 may be a semiconductor-based (e.g., silicon-based) device. In this example, the processor 812 implements the example data generator 405, the example timestamp generator 410, the example timestamp period evaluator 415, the example code symbol exchanger 420, and/or the example watermark embedder 425.
The processor 812 of the illustrated example includes a local memory 813 (e.g., a cache). The processor 812 of the illustrated example communicates with a main memory including volatile memory 814 and non-volatile memory 816 via a link 818. Link 818 may be implemented by a bus, one or more point-to-point connections, or the like, or a combination thereof. The volatile memory 814 may be implemented by: synchronous dynamic random access memory (Synchronous Dynamic Random Access Memory, SDRAM), dynamic random access memory (Dynamic Random Access Memory, DRAM),dynamic random access memory (+)>) And/or any other type of random access memory device. The non-volatile memory 816 may be implemented by: flash memory and/or any other desired classA type of memory device. Access to the main memory 814, 816 is controlled by a memory controller.
The processor platform 800 in the illustrated example also includes interface circuitry 820. The interface circuit 820 may be implemented by any type of interface standard, such as an Ethernet interface, universal Serial Bus (USB), a USB interface, or a combination thereof,An interface, a Near Field Communication (NFC) interface, and/or a PCI-E interface.
In the example shown, one or more input devices 822 are connected to the interface circuit 820. Input device(s) 822 allows a user to input data and/or commands into processor 812. The input device(s) may be implemented by, for example, an audio sensor, a microphone, a camera (still or video), a keyboard, buttons, a mouse, a touch screen, a touch pad, a track ball, track bar (e.g., isopoint), a voice recognition system, and/or any other human-machine interface. Also, many systems, such as processor platform 800, may allow a user to control a computer system and provide data to the computer using physical gestures (e.g., without limitation, hand or body movements, facial expressions, and facial recognition).
One or more output devices 824 are also connected to the interface circuit 820 of the illustrated example. The output device 824 may be implemented, for example, by: display devices (e.g., light Emitting Diode (LED) displays, organic Light Emitting Diode (OLED) displays, liquid Crystal Displays (LCDs), cathode Ray Tube (CRT) displays, in-situ switch (IPS) displays, touch screens, etc.), haptic output devices, printers, and/or speaker(s). Thus, the interface circuit 820 of the illustrated example generally includes a graphics driver card, a graphics driver chip, or a graphics driver processor.
The interface circuit 820 of the illustrated example also includes a communication device, such as a transmitter, receiver, transceiver, modem, residential gateway, wireless access point, and/or network interface, to facilitate data exchange with external machines (e.g., any kind of computing device) via a network 826. The communication may be via, for example, an ethernet connection, a DSL connection, a telephone line connection, a coaxial cable system, a satellite system, a line-of-site wireless system, a cellular telephone system, etc.
The processor platform 800 of the illustrated example also includes one or more mass storage devices 828 for storing software and/or data. Examples of such mass storage devices 828 include floppy disk drives, hard disk drives, optical disk drives, blu-ray disc drives, redundant Array of Independent Disks (RAID) systems, and Digital Versatile Disk (DVD) drives.
Machine-executable instructions 832 corresponding to the instructions of fig. 6 may be stored in mass storage device 828, in volatile memory 814, in non-volatile memory 816, in local memory 813, and/or on a removable non-transitory computer-readable storage medium 836, such as a CD or DVD.
Fig. 9 is a block diagram of an example processor platform 900 configured to execute the instructions of fig. 7 to implement the example watermark decoder 500 of fig. 5. The processor platform 900 may be, for example, a server, personal computer, workstation, self-learning machine (e.g., neural network), mobile device (e.g., cell phone, smart phone, tablet (e.g., iPad)TM ) A PDA, an internet appliance, a DVD player, a CD player, a digital video recorder, a blu-ray player, a game console, a personal video recorder, a set top box, a digital camera, a headset or other wearable device, or any other type of computing device.
The processor platform 900 of the illustrated example includes a processor 912. The processor 912 of the illustrated example is hardware. For example, the processor 912 may be implemented as one or more integrated circuits, logic circuits, microprocessors or controllers from any desired home or manufacturer. The hardware processor 912 may be a semiconductor-based (e.g., silicon-based) device. In this example, processor 912 implements exemplary symbol decoder 505, exemplary watermark validator 510, exemplary decoding symbol exchanger 515, exemplary time stamp period decoder 520, and/or exemplary watermark reporter 525.
The processor 912 of the illustrated example includes local memory 913 (e.g., a cache). The processor 912 of the illustrated example communicates with a main memory including volatile memory 914 and non-volatile memory 916 via a link 918. Link 918 may be implemented by a bus, one or more point-to-point connections, or the like, or a combination thereof. The volatile memory 914 may be implemented by: SDRAM, DRAM,And/or any other type of random access memory device. The non-volatile memory 916 may be implemented by: flash memory and/or any other desired type of storage device. Access to the main memory 914, 916 is controlled by a memory controller.
The processor platform 900 of the illustrated example also includes interface circuitry 920. The interface circuit 920 may be implemented by any type of interface standard, such as an Ethernet interface, a USB interface, or the like,An interface, an NFC interface and/or a PCI-E interface.
In the illustrated example, one or more input devices 922 are connected to the interface circuit 920. Input device(s) 922 allow a user to input data and/or commands into processor 912. The input device(s) may be implemented by, for example, an audio sensor, a microphone, a camera (still or video), a keyboard, buttons, a mouse, a touch screen, a touch pad, a track ball, track bar (e.g., isopoint), a voice recognition system, and/or any other human-machine interface. Also, many systems, such as processor platform 900, may allow a user to control a computer system and provide data to the computer using physical gestures (e.g., without limitation, hand or body movements, facial expressions, and facial recognition).
One or more output devices 924 are also connected to the interface circuit 820 of the illustrated example. The output device 924 may be implemented, for example, by: display devices (e.g., LED display, OLED display, LCD display, CRT display, IPS display, touch screen, etc.), haptic output devices, printers, and/or speaker(s). Thus, the interface circuit 920 of the illustrated example generally includes a graphics driver card, a graphics driver chip, or a graphics driver processor.
The interface circuit 920 in the illustrated example also includes communication devices, such as a transmitter, receiver, transceiver, modem, residential gateway, wireless access point, and/or network interface to facilitate data exchange with external machines (e.g., any kind of computing device) via a network 926. The communication may be via, for example, an ethernet connection, a DSL connection, a telephone line connection, a coaxial cable system, a satellite system, a line-of-site wireless system, a cellular telephone system, etc.
The processor platform 900 of the illustrated example also includes one or more mass storage devices 928 for storing software and/or data. Examples of such mass storage devices 928 include floppy disk drives, hard disk drives, optical disk drives, blu-ray disc drives, RAID systems, and DVD drives.
Machine-executable instructions 932 corresponding to the instructions of fig. 7 may be stored in mass storage device 928, in volatile memory 914, in non-volatile memory 916, in local memory 913, and/or on a removable non-transitory computer-readable storage medium 936 such as a CD or DVD.
From the foregoing, it will be appreciated that example methods, apparatus and articles of manufacture have been disclosed to extend the time range supported by a media watermark. The example watermarking techniques disclosed herein provide a technical solution to the problem of extending the range of timestamps supported by the watermark, but do not require changing the number of timestamp symbols or reconstructing the watermark. The disclosed exemplary watermarking technique implements this solution by exchanging data symbols of the watermark according to different symbol exchange configurations to encode different possible time stamp periods to be represented by the watermark time stamp.
Although certain example methods, apparatus and articles of manufacture have been disclosed herein, the scope of coverage of this patent is not limited thereto. On the contrary, this patent covers all methods, apparatus and articles of manufacture fairly falling within the scope of the appended claims either literally or under the doctrine of equivalents.

Claims (15)

1. A watermark encoding apparatus comprising:
A time stamp period evaluator for determining which of a plurality of time stamp periods is represented by a time stamp of the watermark;
a symbol exchanger that exchanges at least two symbols of the watermark when the time stamp is to represent a second time stamp period of the plurality of time stamp periods, and that does not exchange the at least two symbols of the watermark when the time stamp is to represent a first time stamp period of the plurality of time stamp periods, wherein the watermark includes a first set of symbols representing data and a second set of symbols representing the time stamp, the first set of symbols including a first subset of symbols and a second subset of symbols, each symbol in the second subset of symbols being determined by a respective symbol of the first subset of symbols based on the other symbol not included in the first subset of symbols and the second subset of symbols, and the at least two symbols to be exchanged are included in one of the first subset of symbols and the second subset of symbols and not included in both the first subset of symbols and the second subset of symbols; and
A watermark embedder for embedding the watermark into a portion of a medium.
2. The device of claim 1, wherein the timestamp has a timestamp range covering one timestamp period and the watermark has a timestamp range covering the plurality of timestamp periods.
3. The device of claim 2, wherein one time stamp period corresponds to a period of 28 days.
4. The apparatus of claim 1, wherein the data corresponds to an identifier of the portion of the medium.
5. The apparatus of any of claims 1-4, wherein a number of timestamp periods of the plurality of timestamp periods is two.
6. A computer readable medium comprising computer readable instructions that, when executed, cause a processor to at least:
determining which of the plurality of time stamp periods is to be represented by the time stamp of the watermark;
exchanging at least two symbols of the watermark when the timestamp is to represent a second timestamp period of the plurality of timestamp periods, and not exchanging the at least two symbols of the watermark when the timestamp is to represent a first timestamp period of the plurality of timestamp periods, wherein the watermark comprises a first set of symbols representing data and a second set of symbols representing the timestamp, the first set of symbols comprising a first subset of symbols and a second subset of symbols, each symbol in the second subset of symbols being determined by a respective symbol of the first subset of symbols based on another symbol not comprised in the first subset of symbols and the second subset of symbols, and the at least two symbols to be exchanged are comprised in one of the first subset of symbols and the second subset of symbols not comprised in both the first subset of symbols and the second subset of symbols; and
The watermark is embedded in a portion of the medium.
7. The computer-readable medium of claim 6, wherein the timestamp has a timestamp range covering one timestamp period and the watermark has a timestamp range covering the plurality of timestamp periods.
8. The computer readable medium of claim 7, wherein one time stamp period corresponds to a period of 28 days.
9. The computer-readable medium of claim 6, wherein the data corresponds to an identifier of the portion of the medium.
10. The computer readable medium of any of claims 6 to 9, wherein the number of timestamp periods in the plurality of timestamp periods is two.
11. A watermark encoding method comprising:
determining, with the processor, which one of the plurality of time stamp periods is to be represented by a time stamp of the watermark;
with the processor, exchanging at least two symbols of the watermark when the timestamp is to represent a second timestamp period of the plurality of timestamp periods, and not exchanging the at least two symbols of the watermark when the timestamp is to represent a first timestamp period of the plurality of timestamp periods, wherein the watermark comprises a first set of symbols representing data and a second set of symbols representing the timestamp, the first set of symbols comprising a first subset of symbols and a second subset of symbols, each symbol in the second subset of symbols being determined by a respective symbol of the first subset of symbols based on the other symbol not included in the first subset of symbols and the second subset of symbols, and the at least two symbols to be exchanged are included in one of the first subset of symbols and the second subset of symbols and not included in both the first subset of symbols and the second subset of symbols; and
The watermark is embedded in a portion of the medium using the processor.
12. The method of claim 11, wherein the timestamp has a timestamp range covering one timestamp period and the watermark has a timestamp range covering the plurality of timestamp periods.
13. The method of claim 12, wherein one time stamp period corresponds to a period of 28 days.
14. The method of claim 11, wherein the data corresponds to an identifier of the portion of the medium.
15. The method of any of claims 11-14, wherein a number of timestamp periods of the plurality of timestamp periods is two.
HK62021039919.7A2018-07-022019-07-01Watermark encoding apparatus, watermark encoding method and computer readable mediumHK40049657B (en)

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
US16/025,8002018-07-02

Publications (2)

Publication NumberPublication Date
HK40049657A HK40049657A (en)2021-12-17
HK40049657Btrue HK40049657B (en)2024-01-05

Family

ID=

Similar Documents

PublicationPublication DateTitle
CN112640474B (en) Watermark encoding device, method and computer readable medium
US7483975B2 (en)Systems and methods for gathering data concerning usage of media data
US11451884B2 (en)Methods and apparatus to extend a timestamp range supported by a watermark
US20180192124A1 (en)Methods and apparatus to measure audience composition and recruit audience measurement panelists
US11704695B2 (en)Methods and apparatus for wireless communication with an audience measurement device
CN114175603A (en)Method and apparatus for identifying user presence with respect to a meter
TW202106036A (en)Use of steganographically-encoded data as basis to disambiguate fingerprint-based channel-multi-match
CN114402625A (en)Method and apparatus for classifying all other tuning data
US20240185375A1 (en)Methods and apparatus to extend a timestamp range supported by a watermark without breaking backwards compatability
US12271449B2 (en)Methods and apparatus to credit unidentified media
US20200143430A1 (en)Tapping media connections for monitoring media devices
CA3231732A1 (en)Methods and apparatus to improve detection of audio signatures
HK40049657B (en)Watermark encoding apparatus, watermark encoding method and computer readable medium
HK40049657A (en)Watermark encoding apparatus, watermark encoding method and computer readable medium
HK40050346A (en)Methods and apparatus to extend a timestamp range supported by a watermark
HK40070070A (en)Methods and apparatus to identify user presence to a meter, and storage medium
HK40072409A (en)Methods and apparatus to classify all other tuning data
HK1248945B (en)Methods and apparatus to perform audio sensor selection in an audience measurement device

[8]ページ先頭

©2009-2025 Movatter.jp