The present disclosure relates to audio encoding and decoding for determining characteristics of media data. More specifically, the present disclosure relates to techniques for embedding data into audio and reading the embedded data for audience measurement purposes, and for correction of errors therein.
There has been considerable interest in monitoring the use of mobile terminals, such as smart phones, tablets, laptops, etc. for audience measurement and/or marketing purposes. In the area of media exposure monitoring, ancillary audio codes have shown themselves to be particularly effective in assisting media measurement entities to determine and establish media exposure data. One technique for encoding and detecting ancillary audio codes is based on Critical Band Encoding Technology (CBET), pioneered by Arbitron Inc., which is currently being used in conjunction with a special-purpose Personal People Meters (PPM™) to detect codes via ambient encoded audio.
Conventional CBET encoding and decoding is based on multiple layers, where message code symbols are encoded into separate parallel encoding layers, resulting in tens of thousands of possible codes that may be used to identify and/or characterize media. While such configurations have proven to be advantageous, thousands of codes may not be sufficient to identify and/or characterize larger media collections, which may number in the millions or billions. Accordingly, techniques are needed to be able to include much larger amounts of code data within audio. Also, techniques are needed to be able to merge or “fold” encoding layers so that more efficient coding may be enabled. Furthermore, techniques for error correction are needed to ensure that merged layer are properly encoded and/or decoded.
An example method is disclosed for decoding audio data acoustically embedded with a message structure comprising a sequence of message symbols coexisting within two encoded layers along the time base of the audio data, each message symbol comprising a combination of substantially single-frequency components and a predefined symbol interval within a time base of the audio data, where the method comprises the steps of detecting the substantially single-frequency components of the message symbols; and detecting the message symbols based on the detected substantially single-frequency components thereof, wherein the detection is based at least in part on a synchronization of the message symbols between the two encoded layers. The method may further comprise the step of performing error correction on at least some of the detected message symbols, wherein the error correction comprises a Reed-Solomon error correction or a convolutional code error correction.
An example decoder is disclosed that is configured to decode audio data acoustically embedded with a message structure comprising a sequence of message symbols coexisting within two encoded layers along the time base of the audio data, each message symbol comprising a combination of substantially single-frequency components and a predefined symbol interval within a time base of the audio data. The example decoder comprises a first decoder portion for detecting the substantially single-frequency components of the message symbols, and a second decoder portion for detecting the message symbols based on the detected substantially single-frequency components thereof, wherein the detection is based at least in part on a synchronization of the message symbols between the two encoded layers. The decoder may further comprise a decoder portion configured to perform error correction on at least some of the detected message symbols, wherein the error correction comprises a Reed-Solomon error correction or a convolutional code error correction.
Examples are illustrated in the figures of the accompanying drawings, in which like references indicate similar elements and in which:
A mobile terminal as used herein comprises at least one wireless communications transceiver. Non-limiting examples of the transceivers include a GSM (Global System for Mobile Communications) transceiver, a GPRS (General Packet Radio Service) transceiver, an EDGE (Enhanced Data rates for Global Evolution) transceiver, a UMTS (Universal Mobile Telecommunications System) transceiver, a WCDMA (wideband code division multiple access) transceiver, a PDC (Personal Digital Cellular) transceiver, a PHS (Personal Handy-phone System) transceiver, and a WLAN (Wireless LAN, wireless local area network) transceiver. The transceiver may be such that it is configured to co-operate with a predetermined communications network (infrastructure), such as the transceivers listed above. The network may further connect to other networks and provide versatile switching means for establishing circuit switched and/or packet switched connections between the two end points. Additionally, the device may include a wireless transceiver such as a Bluetooth adapter meant for peer-to-peer communication and piconet/scatternet use. Furthermore, the terminal may include interface(s) for wired connections and associated communication relative to external entities, such as an USB (Universal Serial Bus) interface or a Firewire interface.
Turning to
The audio data then enters encoder 121 from communications interface 120. In encoder 121, in one mode of operation the audio data is encoded with multiple messages that share substantially single-frequency components. In another, the audio data as received by encoder 121 has a message encoded therein and encoder 121 encodes one or more additional messages in the audio data. The encoded audio data is then communicated via a communication interface 122. The communication interface 122 can come in any of multiple forms such as radio broadcasts, television broadcasts, DVDs, MP3s, compact discs, streaming music, streaming video, network data, mini-discs, multimedia presentations, personal address systems or the like. Decoder 123 then receives the communicated encoded audio data. Decoder 123 may be embodied as part of a receiver, a personal people meter, a computer device, or portable processing device, discussed in further detail below.
Decoder 123 is configured to detect encoded messages. As a result of the ability to retrieve the encoded messages, decoder 123 can therefore possess a myriad of functionality such as the relaying of information, e.g. providing the performing artist's name or providing audience estimating information, or controlling access, e.g. an encryption key scheme, or data transport, e.g. using the encoded messages as an alternate communications channel. Decoder 123 can possess the ability to reproduce the audio data but this is not essential. For example, a decoder 123 used for gathering audience estimate data can receive the audio data in acoustic form, in electrical form or otherwise from a separate receiver. In the case of an encryption key scheme, the reproduction of the audio data for an encryption key holder is the objective.
Operation 132 may be configured to assign a plurality of substantially single-frequency code components to each of the message symbols. When the message is encoded, each symbol of the message is represented in the audio data by its corresponding plurality of substantially single-frequency code components. Each of such code components preferably occupies only a narrow frequency band so that it may be distinguished from other such components as well as noise with a sufficiently low probability of error. It is recognized that the ability of an encoder or decoder to establish or resolve data in the frequency domain is limited, so that the substantially single-frequency components are represented by data within some finite or narrow frequency band. Moreover, there are circumstances in which is advantageous to regard data within a plurality of frequency bands as corresponding to a substantially single-frequency component. This technique is useful where, for example, the component may be found in any of several adjacent bands due to frequency drift, variations in the speed of a tape or disk drive, or even as the result of an incidental or intentional frequency variation inherent in the design of a system.
Once block 130 prepares symbols for encoding, they may be arranged as messages that may be separately or simultaneously embedded into audio using multiple layers. Some example processes for embedding such messages is described in U.S. Pat. No. 6,845,360, titled “Encoding Multiple Messages In Audio Data and Detecting Same,” which is assigned to the assignee of the present application and is incorporated by reference in its entirety herein. In some examples, several message parameters may be selected singly or in combination in order to ensure that the first and second messages can be separately decoded. Block 135 represents multiple operations which serve to determine parameters of the message to be encoded either to distinguish it from a message previously encoded in the audio data or from one or more further messages also being encoded therein at the same time. One such parameter is the symbol interval, selected in operation 138 of
Operation 137 of
In one example, decoder 213 may be configured as software tangibly embodied in memory 208, which may communicate with other software in memory 208 and CPU 201, as well as audio circuitry 206, and serves to decode ancillary data embedded in audio signals in order to detect exposure to media. Examples of techniques for encoding and decoding such ancillary data are disclosed in U.S. Pat. No. 6,871,180, titled “Decoding of Information in Audio Signals,” issued Mar. 22, 2005, and are incorporated by reference in its entirety herein. Other suitable techniques for encoding data in audio data are disclosed in U.S. Pat. No. 7,640,141 to Ronald S. Kolessar and U.S. Pat. No. 5,764,763 to James M. Jensen, et al., which are incorporated by reference in their entirety herein. Other appropriate encoding techniques are disclosed in U.S. Pat. No. 5,579,124 to Aijala, et al., U.S. Pat. Nos. 5,574,962, 5,581,800 and 5,787,334 to Fardeau, et al., and U.S. Pat. No. 5,450,490 to Jensen, et al., each of which is assigned to the assignee of the present application and all of which are incorporated herein by reference in their entirety.
An audio signal which may be encoded with a plurality of code symbols may be received via data communication through RF interface 205 via audio circuitry 206, or through any other data interface allowing for the receipt of audio/visual data in digital form. Audio signals may also be received via microphone 222. Furthermore, encoded audio signals may be reproduced on device 200 through digital files stored in memory 208 and executed through one or more applications (214) stored in memory 208 such as a media player that is linked to audio circuitry 206. From the following description in connection with the accompanying drawings, it will be appreciated that decoder 213 is capable of detecting codes in addition to those arranged in the formats disclosed hereinabove. Memory 208 may also include high-speed random access memory (RAM) and may also include non-volatile memory, such as one or more magnetic disk storage devices, flash memory devices, or other non-volatile solid-state memory devices. Access to memory 208 by other components of the device 200, such as processor 203, decoder 213 and peripherals interface 204, may be controlled by the memory controller 202. Peripherals interface 204 couples the input and output peripherals of the device to the processor 203 and memory 208. The one or more processors 203 run or execute various software programs and/or sets of instructions stored in memory 208 to perform various functions for the device 200 and to process data. In some examples, the peripherals interface 204, processor(s) 203, decoder 213 and memory controller 202 may be implemented on a single chip, such as a chip 201. In some other examples, they may be implemented on separate chips.
The RF (radio frequency) circuitry 205 receives and sends RF signals, also known as electromagnetic signals. The RF circuitry 205 converts electrical signals to/from electromagnetic signals and communicates with communications networks and other communications devices via the electromagnetic signals. The RF circuitry 205 may include well-known circuitry for performing these functions, including but not limited to an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a CODEC chipset, a subscriber identity module (SIM) card, memory, and so forth. RF circuitry 205 may communicate with networks, such as the Internet, also referred to as the World Wide Web (WWW), an intranet and/or a wireless network, such as a cellular telephone network, a wireless local area network (LAN) and/or a metropolitan area network (MAN), and other devices by wireless communication. The wireless communication may use any of a plurality of communications standards, protocols and technologies, including but not limited to Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), high-speed downlink packet access (HSDPA), wideband code division multiple access (W-CDMA), code division multiple access (CDMA), time division multiple access (TDMA), Bluetooth, Wireless Fidelity (Wi-Fi) (e.g., IEEE 802.11a, IEEE 802.11b, IEEE 802.11g and/or IEEE 802.11n), voice over Internet Protocol (VoIP), Wi-MAX, a protocol for email (e.g., Internet message access protocol (IMAP) and/or post office protocol (POP)), instant messaging (e.g., extensible messaging and presence protocol (XMPP), Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (SIMPLE), and/or Instant Messaging and Presence Service (IMPS)), and/or Short Message Service (SMS)), or any other suitable communication protocol, including communication protocols not yet developed as of the filing date of this document.
Audio circuitry 206, speaker 221, and microphone 222 provide an audio interface between a user and the device 200. Audio circuitry 206 may receive audio data from the peripherals interface 204, converts the audio data to an electrical signal, and transmits the electrical signal to speaker 221. The speaker 221 converts the electrical signal to human-audible sound waves. Audio circuitry 206 also receives electrical signals converted by the microphone 221 from sound waves, which may include encoded audio, described above. The audio circuitry 206 converts the electrical signal to audio data and transmits the audio data to the peripherals interface 204 for processing. Audio data may be retrieved from and/or transmitted to memory 208 and/or the RF circuitry 205 by peripherals interface 204. In some examples, audio circuitry 206 also includes a headset jack for providing an interface between the audio circuitry 206 and removable audio input/output peripherals, such as output-only headphones or a headset with both output (e.g., a headphone for one or both ears) and input (e.g., a microphone).
I/O subsystem 211 couples input/output peripherals on the device 200, such as touch screen 215 and other input/control devices 217, to the peripherals interface 204. The I/O subsystem 211 may include a display controller 218 and one or more input controllers 220 for other input or control devices. The one or more input controllers 220 receive/send electrical signals from/to other input or control devices 217. The other input/control devices 217 may include physical buttons (e.g., push buttons, rocker buttons, etc.), dials, slider switches, joysticks, click wheels, and so forth. In some other examples, input controller(s) 220 may be coupled to any (or none) of the following: a keyboard, infrared port, USB port, and a pointer device such as a mouse, an up/down button for volume control of the speaker 221 and/or the microphone 222. Touch screen 215 may also be used to implement virtual or soft buttons and one or more soft keyboards.
Touch screen 215 provides an input interface and an output interface between the device and a user. The display controller 218 receives and/or sends electrical signals from/to the touch screen 215. Touch screen 215 displays visual output to the user. The visual output may include graphics, text, icons, video, and any combination thereof (collectively termed “graphics”). In some examples, some or all of the visual output may correspond to user-interface objects. Touch screen 215 has a touch-sensitive surface, sensor or set of sensors that accepts input from the user based on haptic and/or tactile contact. Touch screen 215 and display controller 218 (along with any associated modules and/or sets of instructions in memory 208) detect contact (and any movement or breaking of the contact) on the touch screen 215 and converts the detected contact into interaction with user-interface objects (e.g., one or more soft keys, icons, web pages or images) that are displayed on the touch screen. In an example, a point of contact between a touch screen 215 and the user corresponds to a finger of the user. Touch screen 215 may use LCD (liquid crystal display) technology, or LPD (light emitting polymer display) technology, although other display technologies may be used in other examples. Touch screen 215 and display controller 218 may detect contact and any movement or breaking thereof using any of a plurality of touch sensing technologies now known or later developed, including but not limited to capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays or other elements for determining one or more points of contact with a touch screen 215.
Device 200 may also include one or more sensors 216 such as optical sensors that comprise charge-coupled device (CCD) or complementary metal-oxide semiconductor (CMOS) phototransistors. The optical sensor may capture still images or video, where the sensor is operated in conjunction with touch screen display 215. Device 200 may also include one or more accelerometers 207, which may be operatively coupled to peripherals interface 204. Alternately, the accelerometer 207 may be coupled to an input controller 214 in the I/O subsystem 211. The accelerometer is preferably configured to output accelerometer data in the x, y, and z axes.
In some examples, the software components stored in memory 208 may include an operating system 209, a communication module 210, a text/graphics module 211, a Global Positioning System (GPS) module 212, audio decoder 213 and applications 214. Operating system 209 (e.g., Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS, or an embedded operating system such as VxWorks) includes various software components and/or drivers for controlling and managing general system tasks (e.g., memory management, storage device control, power management, etc.) and facilitates communication between various hardware and software components. Communication module 210 facilitates communication with other devices over one or more external ports and also includes various software components for handling data received by the RF circuitry 205. An external port (e.g., Universal Serial Bus (USB), Firewire, etc.) may be provided and adapted for coupling directly to other devices or indirectly over a network (e.g., the Internet, wireless LAN, etc.
Text/graphics module 211 includes various known software components for rendering and displaying graphics on the touch screen 215, including components for changing the intensity of graphics that are displayed. As used herein, the term “graphics” includes any object that can be displayed to a user, including without limitation text, web pages, icons (such as user-interface objects including soft keys), digital images, videos, animations and the like. Additionally, soft keyboards may be provided for entering text in various applications requiring text input. GPS module 212 determines the location of the device and provides this information for use in various applications. Applications 214 may include various modules, including address books/contact list, email, instant messaging, video conferencing, media player, widgets, instant messaging, camera/image management, and the like. Examples of other applications include word processing applications, JAVA-enabled applications, encryption, digital rights management, voice recognition, and voice replication.
Returning briefly to the example of
Turning to
Media layer 303 may be configured to provide application layer 304 with audio, video, animation and graphics capabilities. As with the other layers comprising the stack of
Core services layer 302 comprises fundamental system services that all applications use, and also provides interfaces that use object-oriented abstractions for working with network protocols and for providing control over protocols stack and provide simplified use of lower-level constructs such as BSD sockets. Functions of core services layer 302 provide simplified tasks such as communicating with FTP and HTTP servers or resolving DNS hosts. Core OS layer 301 is the deepest layer of the architecture of
Turning to
During one example mode of operation, which will be discussed in greater detail below, the audio portion of media played using media player 401 is stored and/or forwarded to decoder application 402. Using one or more techniques described herein below, decoder 402 processes the audio portion to detect if ancillary codes are present within the audio. If present, the ancillary codes are read, stored, and ultimately transmitted to a remote or central location (114) where the codes may be further processed to determine characteristics (e.g., identification, origin, etc.) of the media and further determine media exposure for a user associated with a device (200) for audience measurement purposes.
With regard to encoding/decoding audio,
When utilizing a multi-layered message, a plurality of layers may be present in an encoded data stream, and each layer may be used to convey different data. Turning to
The second layer 502 of message 500 is illustrated having a similar configuration to layer 501, where each symbol set includes two synchronization symbols 509, 511, a larger number of data symbols 510, 512, and time code symbols 513. The third layer 503 includes two synchronization symbols 514, 516, and a larger number of data symbols 515, 517. The data symbols in each symbol set for the layers (501-503) should preferably have a predefined order and be indexed (e.g., 1, 2, 3). The code components of each symbol in any of the symbol sets should preferably have selected frequencies that are different from the code components of every other symbol in the same symbol set. In some examples, none of the code component frequencies used in representing the symbols of a message in one layer (e.g., Layer1501) is used to represent any symbol of another layer (e.g., Layer2502). In other examples, some of the code component frequencies used in representing symbols of messages in one layer (e.g., Layer3503) may be used in representing symbols of messages in another layer (e.g., Layer1501). However, in some examples, it is preferable that “shared” layers have differing formats (e.g., Layer3503, Layer1501) in order to assist the decoder in separately decoding the data contained therein.
Sequences of data symbols within a given layer are preferably configured so that each sequence is paired with the other and is separated by a predetermined offset. Thus, as an example, if data 905 contains code 1, 2, 3 having an offset of “2”, data 507 in layer 501 would be 3, 4, 5. Since the same information is represented by two different data symbols that are separated in time and have different frequency components (frequency content), the message may be diverse in both time and frequency. Such a configuration is particularly advantageous where interference would otherwise render data symbols undetectable. In some examples, each of the symbols in a layer have a duration (e.g., 0.2-0.8 sec) that matches other layers (e.g., Layer1501, Layer2502). In other examples, the symbol duration may be different (e.g., Layer 2502, Layer 3503). During a decoding process, the decoder detects the layers and reports any predetermined segment that contains a code.
The merged layer may be thought of as a process for encoding different layers of information at different point in the total audio chain such that multiple different message elements can be distinguished through detection observations. In certain (non-merged) applications, different code layers for audio are encoded at different physical locations (e.g., national broadcaster, local broadcaster, commercial distribution center, etc.) at different times. Since the encoding sites/locations may be widely separated in both time and location, the encoding of the layers is inherently asynchronous: messages on different layers have no set time relationship. By merging or “folding” the layers, multiple layers of information are permitted to exist; instead of using multiple different layers encoded at different points in the total audio chain to convey different message attributes (e.g., station identification), multiple different layers of information are combined in a time synchronous manner to create a message attribute or unified information set in one layer. Also, since the merged layer provides a more diverse platform for inserting codes, the numbers of different codes that may be used expand from tens of thousands of codes to billions. Such a configuration is particularly advantageous for use in non-linear media measurement and “on-demand” media.
In some examples, the merged or “folded” layers may comprise one layer similar to Layer 3503 of
In the simplified example of
Turning to
For received audio signals in the time domain, decoder 350 transforms such signals to the frequency domain by means of function 356. Function 356 preferably is performed by a digital processor implementing a fast Fourier transform (FFT) although a direct cosine transform, a chirp transform or a Winograd transform algorithm (WFTA) may be employed in the alternative. Any other time-to-frequency-domain transformation function providing the necessary resolution may be employed in place of these. It will be appreciated that in certain implementations, function 356 may also be carried out by filters, by an application specific integrated circuit, or any other suitable device or combination of devices. Function 356 may also be implemented by one or more devices which also implement one or more of the remaining functions illustrated in
The frequency domain-converted audio signals are processed in a symbol values derivation function 360, to produce a stream of symbol values for each code symbol included in the received audio signal. The produced symbol values may represent, for example, signal energy, power, sound pressure level, amplitude, etc., measured instantaneously or over a period of time, on an absolute or relative scale, and may be expressed as a single value or as multiple values. Where the symbols are encoded as groups of single frequency components each having a predetermined frequency, the symbol values preferably represent either single frequency component values or one or more values based on single frequency component values. Function 360 may be carried out by a digital processor, which advantageously carries out some or all of the other functions of decoder 350. However, the function 360 may also be carried out by an application specific integrated circuit, or by any other suitable device or combination of devices, and may be implemented by apparatus apart from the means which implement the remaining functions of the decoder 350.
The stream of symbol values produced by the function 360 are accumulated over time in an appropriate storage device on a symbol-by-symbol basis, as indicated by function 366. In particular, function 366 is advantageous for use in decoding encoded symbols which repeat periodically, by periodically accumulating symbol values for the various possible symbols. For example, if a given symbol is expected to recur every X seconds, the function 366 may serve to store a stream of symbol values for a period of nX seconds (n>1), and add to the stored values of one or more symbol value streams of nX seconds duration, so that peak symbol values accumulate over time, improving the signal-to-noise ratio of the stored values. Function 366 may be carried out by a digital processor (or a DSP) which advantageously carries out some or all of the other functions of the decoder. However, the function 366 may also be carried out using a memory device separate from such a processor, or by an application specific integrated circuit, or by any other suitable device or combination of devices, and may be implemented by apparatus apart from the means which implements the remaining functions of the decoder 350.
The accumulated symbol values stored by the function 366 are then examined by the function 370 to detect the presence of an encoded message and output the detected message at an output 376. Function 370 can be carried out by matching the stored accumulated values or a processed version of such values, against stored patterns, whether by correlation or by another pattern matching technique. However, function 370 advantageously is carried out by examining peak accumulated symbol values, checksums and their relative timing, to reconstruct their encoded message from independent or merged layers. This function may be carried out after the first stream of symbol values has been stored by the function 366 and/or after each subsequent stream has been added thereto, so that the message is detected once the signal-to-noise ratios of the stored, accumulated streams of symbol values reveal a valid message pattern using the checksums.
In order to separate the various components, a processor on device 200 repeatedly carries out FFTs on audio signal samples falling within successive, predetermined intervals. The intervals may overlap, although this is not required. In some examples, ten overlapping FFT's are carried out during each second of decoder operation. Accordingly, the energy of each symbol period falls within five FFT periods. The FFT's are preferably windowed, although this may be omitted in order to simplify the decoder. The samples are stored and, when a sufficient number are thus available, a new FFT is performed, as indicated by steps 434 and 438.
In this example, the frequency component values are produced on a relative basis. That is, each component value is represented as a signal-to-noise ratio (SNR), produced as follows. The energy within each frequency bin of the FFT in which a frequency component of any symbol can fall provides the numerator of each corresponding SNR Its denominator is determined as an average of adjacent bin values. For example, the average of seven of the eight surrounding bin energy values may be used, the largest value of the eight being ignored in order to avoid the influence of a possible large bin energy value which could result, for example, from an audio signal component in the neighborhood of the code frequency component. Also, given that a large energy value could also appear in the code component bin, for example, due to noise or an audio signal component, the SNR is appropriately limited. In this example, if SNR>6.0, then SNR is limited to 6.0, although a different maximum value may be selected. The ten SNR's of each FFT and corresponding to each symbol which may be present, are combined to form symbol SNR's which are stored in a circular symbol SNR buffer, as indicated in step 442. In certain examples, the ten SNR's for a symbol are simply added, although other ways of combining the SNR's may be employed. The symbol SNR's for each of the twelve symbols, markers and checksums are stored in the symbol SNR buffer as separate sequences, one symbol SNR for each FFT for the sequence of FFT's. After the values produced in the FFT's have been stored in the symbol SNR buffer, new symbol SNR's are combined with the previously stored values, as described below.
When the symbol SNR buffer is filled, this is detected in a step 446. In some examples, the stored SNR's are adjusted to reduce the influence of noise in a step 452, although this step may be optional. In this optional step, a noise value is obtained for each symbol (row) in the buffer by obtaining the average of all stored symbol SNR's in the respective row each time the buffer is filled. Then, to compensate for the effects of noise, this average or “noise” value is subtracted from each of the stored symbol SNR values in the corresponding row. In this manner, a “symbol” appearing only briefly, and thus not a valid detection, may be averaged out over time.
After the symbol SNR's have been adjusted by subtracting the noise level, the decoder attempts to recover the message by examining the pattern of maximum SNR values in the buffer in a step 456. In some examples, the maximum SNR values for each symbol are located in a process of successively combining groups of five adjacent SNR's, by weighting the values in the sequence in proportion to the sequential weighting (6 10 10 10 6) and then adding the weighted SNR's to produce a comparison SNR centered in the time period of the third SNR in the sequence. This process is carried out progressively throughout the five FFT periods of each symbol. For example, a first group of five SNR's for a specific symbol in FFT time periods (e.g., 1-5) are weighted and added to produce a comparison SNR for a specific FFT period (e.g., 3). Then a further comparison SNR is produced using the SNR's from successive FFT periods (e.g., 2-6), and so on until comparison values have been obtained centered on all FFT periods. However, other means may be employed for recovering the message. For example, either more or less than five SNR's may be combined, they may be combined without weighing, or they may be combined in a non-linear fashion.
After the comparison SNR values have been obtained, the decoder algorithm examines the comparison SNR values for a message pattern. In some preferred examples, the synchronization (“marker”) code symbols are located first. Once this information is obtained, the decoder attempts to detect the peaks of the data symbols. The use of a predetermined offset between each data symbol in the first segment and the corresponding data symbol in the second segment provides a check on the validity of the detected message. That is, if both markers are detected and the same offset is observed between each data symbol in the first segment and its corresponding data symbol in the second segment, it is highly likely that a valid message has been received. If this is the case, the message is logged, and the SNR buffer is cleared 466. It is understood by those skilled in the art that decoder operation may be modified depending on the structure of the message, its timing, its signal path, the mode of its detection, etc., without departing from the scope of the teachings of this disclosure. For example, in place of storing SNR's, FFT results may be stored directly for detecting a message.
Steps employed in the decoding process illustrated in
Since each five symbol message repeats every 2½ seconds, each symbol repeats at intervals of 2½ seconds or every 25 FFT's. In order to compensate for the effects of burst errors and the like, the SNR's R1 through R150 are combined by adding corresponding values of the repeating messages to obtain 25 combined SNR values SNRn, n=1, 2 . . . 25, as follows:
Accordingly, if a burst error should result in the loss of a signal interval i, only one of the six message intervals will have been lost, and the essential characteristics of the combined SNR values are likely to be unaffected by this event. Once the combined SNR values have been determined, the decoder detects the position of the marker symbol's peak as indicated by the combined SNR values and derives the data symbol sequence based on the marker's position and the peak values of the data symbols. Once the message has thus been formed, as indicated in steps 582 and 583, the message is logged. However, unlike the example of
As in the decoder of
In a further variation which is especially useful in audience measurement applications, a relatively large number of message intervals are separately stored to permit a retrospective analysis of their contents to detect a media content change. In another example, multiple buffers are employed, each accumulating data for a different number of intervals for use in the decoding method of
In another example, the checksums and offsets described above may be used as “soft metrics” to decode merged messages and correct any existing errors. Specifically, a multi-step process is used to calculate the soft metric of each symbol. First, the bin SNR is calculated for a given period of time as described above. Next, the bin SNRs are added to form symbol SNR for a given period of time. Symbol SNRs are then added across multiple periods of time that correspond to a message symbol interval, with weighting to compensate for the effects of the FFT window, and noise subtraction for that symbol within other portions of the message. Each weighted symbol SNR is taken from the previous step in each message position, and divided by the sum of all other weighted symbol SNRs for that message position. These results are then preferably scaled (or optionally squared), resulting in a “ratio of ratios,” which is represents a “score” or value of how strong each symbol is relative to its neighbors within the same message position. Applying these soft metrics, the decoder may find any cases that violate the encoded message structure in
As an example, using Reed-Solomon error correction (15,9) the system can correct (15−9)/2=3 symbol errors. Using additional passes in the example, and considering the symbols with the lowest “soft metrics,” up to 6 symbol errors may be corrected. Generally speaking, in coding theory, Reed-Solomon (RS) codes are non-binary cyclic error-correcting codes for detecting and correcting multiple random symbol errors. By adding t check symbols to the data, a RS code can detect any combination of up to t erroneous symbols, or correct up to t/2 symbols. As an erasure code, RS code can correct up to t known erasures, or it can detect and correct combinations of errors and erasures. Furthermore, RS codes are suitable as multiple-burst bit-error correcting codes, since a sequence of b+1 consecutive bit errors can affect at most two symbols of size b. The choice of t is up to the designer of the code, and may be selected within wide limits.
Turning to
It is understood by those skilled in the art that other error correction techniques are applicable as well. One such technique involves the use of a convolutional encoder/decoder, which may be incorporated as part of any of the audio encoders/decoders described herein.
Continuing with the example, a decoding process is illustrated in
Turning to
In another example, multiple instances of the decoder may be initialized multiple times using different memory areas. In such a case, the decoder application would be responsible for keeping track of which memory pointers are used in subsequent calls to initialize and retrieve code from the proper decoder.
In the foregoing Detailed Description, it can be seen that various features are grouped together in a single embodiment for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting an intention that the claimed embodiments require more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive subject matter lies in less than all features of a single disclosed embodiment. Thus the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separate embodiment.
Although certain example methods, apparatus and articles of manufacture have been disclosed herein, the scope of coverage of this patent is not limited thereto. On the contrary, this patent covers all methods, apparatus and articles of manufacture fairly falling within the scope of the claims of this patent.
Number | Name | Date | Kind |
---|---|---|---|
4230990 | Lert, Jr. et al. | Oct 1980 | A |
4647974 | Butler et al. | Mar 1987 | A |
4677466 | Lert, Jr. et al. | Jun 1987 | A |
4697209 | Kiewit et al. | Sep 1987 | A |
4745468 | Von Kohorn | May 1988 | A |
4876592 | Von Kohorn | Oct 1989 | A |
4876736 | Kiewit | Oct 1989 | A |
4926255 | Von Kohorn | May 1990 | A |
4973952 | Malec et al. | Nov 1990 | A |
5019899 | Boles et al. | May 1991 | A |
5023929 | Call | Jun 1991 | A |
5034807 | Von Kohorn | Jul 1991 | A |
5057915 | Von Kohorn | Oct 1991 | A |
5081680 | Bennett | Jan 1992 | A |
5128752 | Von Kohorn | Jul 1992 | A |
5157489 | Lowe | Oct 1992 | A |
5227874 | Von Kohorn | Jul 1993 | A |
5245665 | Lewis et al. | Sep 1993 | A |
5249044 | Von Kohorn | Sep 1993 | A |
5283734 | Von Kohorn | Feb 1994 | A |
5331544 | Lu et al. | Jul 1994 | A |
5401946 | Weinblatt | Mar 1995 | A |
5425100 | Thomas et al. | Jun 1995 | A |
5450490 | Jensen et al. | Sep 1995 | A |
5481294 | Thomas et al. | Jan 1996 | A |
5512933 | Wheatley et al. | Apr 1996 | A |
5524195 | Clanton, III et al. | Jun 1996 | A |
5543856 | Rosser et al. | Aug 1996 | A |
5574962 | Fardeau et al. | Nov 1996 | A |
5579124 | Aijala et al. | Nov 1996 | A |
5581800 | Fardeau et al. | Dec 1996 | A |
5594934 | Lu et al. | Jan 1997 | A |
5629739 | Dougherty | May 1997 | A |
5659366 | Kerman | Aug 1997 | A |
5666293 | Metz et al. | Sep 1997 | A |
5682196 | Freeman | Oct 1997 | A |
5719634 | Keery et al. | Feb 1998 | A |
5719880 | Leung | Feb 1998 | A |
5734413 | Lappington et al. | Mar 1998 | A |
5740035 | Cohen et al. | Apr 1998 | A |
5764763 | Jensen et al. | Jun 1998 | A |
5787334 | Fardeau et al. | Jul 1998 | A |
5815671 | Morrison | Sep 1998 | A |
5841978 | Rhoads | Nov 1998 | A |
5848155 | Cox | Dec 1998 | A |
5850249 | Massetti et al. | Dec 1998 | A |
5872588 | Aras et al. | Feb 1999 | A |
5880789 | Inaba | Mar 1999 | A |
5893067 | Bender et al. | Apr 1999 | A |
5918223 | Blum et al. | Jun 1999 | A |
5930369 | Cox et al. | Jul 1999 | A |
5933789 | Byun et al. | Aug 1999 | A |
5956716 | Kenner et al. | Sep 1999 | A |
5956743 | Bruce et al. | Sep 1999 | A |
5966120 | Arazi et al. | Oct 1999 | A |
5974396 | Anderson et al. | Oct 1999 | A |
5987855 | Dey et al. | Nov 1999 | A |
6034722 | Viney et al. | Mar 2000 | A |
6035177 | Moses et al. | Mar 2000 | A |
6049830 | Saib | Apr 2000 | A |
6055573 | Gardenswartz et al. | Apr 2000 | A |
6154209 | Naughton et al. | Nov 2000 | A |
6208735 | Cox et al. | Mar 2001 | B1 |
6216129 | Eldering | Apr 2001 | B1 |
6286036 | Rhoads | Sep 2001 | B1 |
6286140 | Ivanyi | Sep 2001 | B1 |
6298348 | Eldering | Oct 2001 | B1 |
6308327 | Liu et al. | Oct 2001 | B1 |
6331876 | Koster et al. | Dec 2001 | B1 |
6335736 | Wagner et al. | Jan 2002 | B1 |
6363159 | Rhoads | Mar 2002 | B1 |
6389055 | August et al. | May 2002 | B1 |
6400827 | Rhoads | Jun 2002 | B1 |
6411725 | Rhoads | Jun 2002 | B1 |
6421445 | Jensen et al. | Jul 2002 | B1 |
6487564 | Asai et al. | Nov 2002 | B1 |
6505160 | Levy et al. | Jan 2003 | B1 |
6512836 | Xie et al. | Jan 2003 | B1 |
6513014 | Walker et al. | Jan 2003 | B1 |
6522771 | Rhoads | Feb 2003 | B2 |
6539095 | Rhoads | Mar 2003 | B1 |
6546556 | Kataoka et al. | Apr 2003 | B1 |
6553178 | Abecassis | Apr 2003 | B2 |
6642966 | Limaye | Nov 2003 | B1 |
6647269 | Hendrey et al. | Nov 2003 | B2 |
6651253 | Dudkiewicz et al. | Nov 2003 | B2 |
6654480 | Rhoads | Nov 2003 | B2 |
6665873 | Van Gestel et al. | Dec 2003 | B1 |
6675383 | Wheeler et al. | Jan 2004 | B1 |
6683966 | Tian et al. | Jan 2004 | B1 |
6687663 | McGrath et al. | Feb 2004 | B1 |
6710815 | Billmaier et al. | Mar 2004 | B1 |
6714683 | Tian et al. | Mar 2004 | B1 |
6741684 | Kaars | May 2004 | B2 |
6748362 | Meyer et al. | Jun 2004 | B1 |
6750985 | Rhoads | Jun 2004 | B2 |
6766523 | Herley | Jul 2004 | B2 |
6795972 | Rovira | Sep 2004 | B2 |
6804379 | Rhoads | Oct 2004 | B2 |
6829368 | Meyer et al. | Dec 2004 | B2 |
6845360 | Jensen et al. | Jan 2005 | B2 |
6853634 | Davies et al. | Feb 2005 | B1 |
6871180 | Neuhauser et al. | Mar 2005 | B1 |
6871323 | Wagner et al. | Mar 2005 | B2 |
6873688 | Aarnio | Mar 2005 | B1 |
6941275 | Swierczek | Sep 2005 | B1 |
6956575 | Nakazawa et al. | Oct 2005 | B2 |
6965601 | Nakano et al. | Nov 2005 | B1 |
6968315 | Nakisa | Nov 2005 | B1 |
6968564 | Srinivasan | Nov 2005 | B1 |
6970886 | Conwell et al. | Nov 2005 | B1 |
6996213 | De Jong | Feb 2006 | B1 |
7003731 | Rhoads et al. | Feb 2006 | B1 |
7006555 | Srinivasan | Feb 2006 | B1 |
7050603 | Rhoads et al. | May 2006 | B2 |
7051086 | Rhoads et al. | May 2006 | B2 |
7058697 | Rhoads | Jun 2006 | B2 |
7082434 | Gosselin | Jul 2006 | B2 |
7095871 | Jones et al. | Aug 2006 | B2 |
7143949 | Hannigan | Dec 2006 | B1 |
7158943 | Van der Riet | Jan 2007 | B2 |
7171018 | Rhoads et al. | Jan 2007 | B2 |
7174293 | Kenyon et al. | Feb 2007 | B2 |
7185201 | Rhoads et al. | Feb 2007 | B2 |
7194752 | Kenyon et al. | Mar 2007 | B1 |
7197156 | Levy | Mar 2007 | B1 |
7215280 | Percy et al. | May 2007 | B1 |
7221405 | Basson et al. | May 2007 | B2 |
7227972 | Brundage et al. | Jun 2007 | B2 |
7254249 | Rhoads et al. | Aug 2007 | B2 |
7269564 | Milsted et al. | Sep 2007 | B1 |
7273978 | Uhle | Sep 2007 | B2 |
7317716 | Boni et al. | Jan 2008 | B1 |
7328153 | Wells et al. | Feb 2008 | B2 |
7346512 | Li-Chun Wang et al. | Mar 2008 | B2 |
7356700 | Noridomi et al. | Apr 2008 | B2 |
7363278 | Schmelzer et al. | Apr 2008 | B2 |
7369678 | Rhoads | May 2008 | B2 |
7421723 | Harkness et al. | Sep 2008 | B2 |
7440674 | Plotnick et al. | Oct 2008 | B2 |
7443292 | Jensen et al. | Oct 2008 | B2 |
7463143 | Forr et al. | Dec 2008 | B2 |
7519658 | Anglin et al. | Apr 2009 | B1 |
7592908 | Zhang et al. | Sep 2009 | B2 |
7623823 | Zito et al. | Nov 2009 | B2 |
7640141 | Kolessar et al. | Dec 2009 | B2 |
7761602 | Knight et al. | Jul 2010 | B1 |
RE42627 | Neuhauser et al. | Aug 2011 | E |
8229159 | Tourapis et al. | Jul 2012 | B2 |
8255763 | Yang et al. | Aug 2012 | B1 |
8369972 | Topchy et al. | Feb 2013 | B2 |
8768713 | Chaoui et al. | Jul 2014 | B2 |
8924995 | Ramaswamy et al. | Dec 2014 | B2 |
9015563 | Lynch et al. | Apr 2015 | B2 |
20010044899 | Levy | Nov 2001 | A1 |
20010056573 | Kovac et al. | Dec 2001 | A1 |
20020032734 | Rhoads | Mar 2002 | A1 |
20020033842 | Zetts | Mar 2002 | A1 |
20020053078 | Holtz et al. | May 2002 | A1 |
20020056094 | Dureau | May 2002 | A1 |
20020059218 | August et al. | May 2002 | A1 |
20020062382 | Rhoads et al. | May 2002 | A1 |
20020091991 | Castro | Jul 2002 | A1 |
20020102993 | Hendrey et al. | Aug 2002 | A1 |
20020108125 | Joao | Aug 2002 | A1 |
20020111934 | Narayan | Aug 2002 | A1 |
20020112002 | Abato | Aug 2002 | A1 |
20020124246 | Kaminsky et al. | Sep 2002 | A1 |
20020138851 | Lord et al. | Sep 2002 | A1 |
20020144262 | Plotnick et al. | Oct 2002 | A1 |
20020144273 | Reto | Oct 2002 | A1 |
20020162118 | Levy et al. | Oct 2002 | A1 |
20020174425 | Markel et al. | Nov 2002 | A1 |
20020194592 | Tsuchida et al. | Dec 2002 | A1 |
20030021441 | Levy et al. | Jan 2003 | A1 |
20030039465 | Bjorgan et al. | Feb 2003 | A1 |
20030088674 | Ullman et al. | May 2003 | A1 |
20030105870 | Baum | Jun 2003 | A1 |
20030108200 | Sako | Jun 2003 | A1 |
20030115598 | Pantoja | Jun 2003 | A1 |
20030177488 | Smith et al. | Sep 2003 | A1 |
20030185232 | Moore et al. | Oct 2003 | A1 |
20030229900 | Reisman | Dec 2003 | A1 |
20040004630 | Kalva et al. | Jan 2004 | A1 |
20040006696 | Shin et al. | Jan 2004 | A1 |
20040024588 | Watson et al. | Feb 2004 | A1 |
20040031058 | Reisman | Feb 2004 | A1 |
20040037271 | Liscano et al. | Feb 2004 | A1 |
20040038692 | Muzaffar | Feb 2004 | A1 |
20040059918 | Xu | Mar 2004 | A1 |
20040059933 | Levy | Mar 2004 | A1 |
20040064319 | Neuhauser et al. | Apr 2004 | A1 |
20040073916 | Petrovic et al. | Apr 2004 | A1 |
20040073951 | Bae et al. | Apr 2004 | A1 |
20040102961 | Jensen et al. | May 2004 | A1 |
20040120417 | Lynch et al. | Jun 2004 | A1 |
20040125125 | Levy | Jul 2004 | A1 |
20040128514 | Rhoads | Jul 2004 | A1 |
20040137929 | Jones et al. | Jul 2004 | A1 |
20040143844 | Brant et al. | Jul 2004 | A1 |
20040146161 | De Jong | Jul 2004 | A1 |
20040163020 | Sidman | Aug 2004 | A1 |
20040184369 | Herre et al. | Sep 2004 | A1 |
20040199387 | Wang et al. | Oct 2004 | A1 |
20040267533 | Hannigan et al. | Dec 2004 | A1 |
20050028189 | Heine et al. | Feb 2005 | A1 |
20050033758 | Baxter | Feb 2005 | A1 |
20050036653 | Brundage et al. | Feb 2005 | A1 |
20050058319 | Rhoads et al. | Mar 2005 | A1 |
20050086682 | Burges et al. | Apr 2005 | A1 |
20050144004 | Bennett et al. | Jun 2005 | A1 |
20050192933 | Rhoads et al. | Sep 2005 | A1 |
20050216346 | Kusumoto et al. | Sep 2005 | A1 |
20050234728 | Tachibana et al. | Oct 2005 | A1 |
20050234731 | Sirivara et al. | Oct 2005 | A1 |
20050234774 | Dupree | Oct 2005 | A1 |
20050262351 | Levy | Nov 2005 | A1 |
20050271246 | Sharma et al. | Dec 2005 | A1 |
20060059277 | Zito et al. | Mar 2006 | A1 |
20060083403 | Zhang et al. | Apr 2006 | A1 |
20060089912 | Spagna et al. | Apr 2006 | A1 |
20060095401 | Krikorian et al. | May 2006 | A1 |
20060107195 | Ramaswamy et al. | May 2006 | A1 |
20060107302 | Zdepski | May 2006 | A1 |
20060110005 | Tapson | May 2006 | A1 |
20060136564 | Ambrose | Jun 2006 | A1 |
20060167747 | Goodman et al. | Jul 2006 | A1 |
20060168613 | Wood et al. | Jul 2006 | A1 |
20060212710 | Baum et al. | Sep 2006 | A1 |
20060221173 | Duncan | Oct 2006 | A1 |
20060224798 | Klein et al. | Oct 2006 | A1 |
20060280246 | Alattar et al. | Dec 2006 | A1 |
20070006250 | Croy et al. | Jan 2007 | A1 |
20070016918 | Alcorn et al. | Jan 2007 | A1 |
20070055987 | Lu et al. | Mar 2007 | A1 |
20070061577 | Van De Kerkhof et al. | Mar 2007 | A1 |
20070064937 | Van Leest et al. | Mar 2007 | A1 |
20070070429 | Hein et al. | Mar 2007 | A1 |
20070104335 | Shi et al. | May 2007 | A1 |
20070110089 | Essafi et al. | May 2007 | A1 |
20070118375 | Kenyon et al. | May 2007 | A1 |
20070124771 | Shvadron | May 2007 | A1 |
20070127717 | Herre et al. | Jun 2007 | A1 |
20070129952 | Kenyon et al. | Jun 2007 | A1 |
20070143778 | Covell et al. | Jun 2007 | A1 |
20070149114 | Danilenko | Jun 2007 | A1 |
20070162927 | Ramaswamy et al. | Jul 2007 | A1 |
20070198738 | Angiolillo et al. | Aug 2007 | A1 |
20070201835 | Rhoads | Aug 2007 | A1 |
20070226760 | Neuhauser et al. | Sep 2007 | A1 |
20070240234 | Watson | Oct 2007 | A1 |
20070242826 | Rassool | Oct 2007 | A1 |
20070250716 | Brunk et al. | Oct 2007 | A1 |
20070274523 | Rhoads | Nov 2007 | A1 |
20070276925 | La Joie et al. | Nov 2007 | A1 |
20070276926 | La Joie et al. | Nov 2007 | A1 |
20070288476 | Flanagan, III et al. | Dec 2007 | A1 |
20070294057 | Crystal et al. | Dec 2007 | A1 |
20070294132 | Zhang et al. | Dec 2007 | A1 |
20070294705 | Gopalakrishnan et al. | Dec 2007 | A1 |
20070294706 | Neuhauser et al. | Dec 2007 | A1 |
20080019560 | Rhoads | Jan 2008 | A1 |
20080022114 | Moskowitz | Jan 2008 | A1 |
20080027734 | Zhao et al. | Jan 2008 | A1 |
20080028223 | Rhoads | Jan 2008 | A1 |
20080028474 | Horne et al. | Jan 2008 | A1 |
20080040354 | Ray et al. | Feb 2008 | A1 |
20080059160 | Saunders et al. | Mar 2008 | A1 |
20080065507 | Morrison et al. | Mar 2008 | A1 |
20080077956 | Morrison et al. | Mar 2008 | A1 |
20080082510 | Wang et al. | Apr 2008 | A1 |
20080082922 | Biniak et al. | Apr 2008 | A1 |
20080083003 | Biniak et al. | Apr 2008 | A1 |
20080133223 | Son et al. | Jun 2008 | A1 |
20080137749 | Tian et al. | Jun 2008 | A1 |
20080139182 | Levy et al. | Jun 2008 | A1 |
20080140573 | Levy et al. | Jun 2008 | A1 |
20080168503 | Sparrell | Jul 2008 | A1 |
20080209219 | Rhein | Aug 2008 | A1 |
20080209491 | Hasek | Aug 2008 | A1 |
20080215333 | Tewfik et al. | Sep 2008 | A1 |
20080219496 | Tewfik et al. | Sep 2008 | A1 |
20080235077 | Harkness et al. | Sep 2008 | A1 |
20090031134 | Levy | Jan 2009 | A1 |
20090070408 | White | Mar 2009 | A1 |
20090070587 | Srinivasan | Mar 2009 | A1 |
20090119723 | Tinsman | May 2009 | A1 |
20090125310 | Lee et al. | May 2009 | A1 |
20090150553 | Collart et al. | Jun 2009 | A1 |
20090193052 | FitzGerald et al. | Jul 2009 | A1 |
20090259325 | Topchy et al. | Oct 2009 | A1 |
20090265214 | Jobs et al. | Oct 2009 | A1 |
20090307061 | Monighetti et al. | Dec 2009 | A1 |
20090307084 | Monighetti et al. | Dec 2009 | A1 |
20100008500 | Lisanke et al. | Jan 2010 | A1 |
20100135638 | Mio | Jun 2010 | A1 |
20100166120 | Baum et al. | Jul 2010 | A1 |
20100223062 | Srinivasan et al. | Sep 2010 | A1 |
20100268573 | Jain et al. | Oct 2010 | A1 |
20110224992 | Chaoui et al. | Sep 2011 | A1 |
20120239407 | Lynch et al. | Sep 2012 | A1 |
20130096706 | Srinivasan et al. | Apr 2013 | A1 |
20130144631 | Miyasaka et al. | Jun 2013 | A1 |
20140189724 | Harkness et al. | Jul 2014 | A1 |
20150039320 | Neuhauser et al. | Feb 2015 | A1 |
20150039321 | Neuhauser et al. | Feb 2015 | A1 |
20150039322 | Lynch et al. | Feb 2015 | A1 |
20150039972 | Lynch et al. | Feb 2015 | A1 |
Number | Date | Country |
---|---|---|
9298201 | Apr 2002 | AU |
0112901 | Jun 2003 | BR |
0309598 | Feb 2005 | CA |
1149366 | May 1997 | CN |
1372682 | Oct 2002 | CN |
2483104 | Nov 2003 | CN |
1592906 | Mar 2005 | CN |
1647160 | Jul 2005 | CN |
101243688 | Aug 2008 | CN |
0769749 | Apr 1997 | EP |
1267572 | Dec 2002 | EP |
1349370 | Oct 2003 | EP |
1406403 | Apr 2004 | EP |
1307833 | Jun 2006 | EP |
1703460 | Sep 2006 | EP |
1745464 | Oct 2007 | EP |
1704695 | Feb 2008 | EP |
1504445 | Aug 2008 | EP |
2487858 | Aug 2012 | EP |
2001040322 | Aug 2002 | JP |
2002247610 | Aug 2002 | JP |
2003208187 | Jul 2003 | JP |
2003536113 | Dec 2003 | JP |
2006154851 | Jun 2006 | JP |
2007318745 | Dec 2007 | JP |
9527349 | Oct 1995 | WO |
9702672 | Jan 1997 | WO |
0004662 | Jan 2000 | WO |
0019699 | Apr 2000 | WO |
0119088 | Mar 2001 | WO |
0124027 | Apr 2001 | WO |
0131497 | May 2001 | WO |
0140963 | Jun 2001 | WO |
0153922 | Jul 2001 | WO |
0175743 | Oct 2001 | WO |
0191109 | Nov 2001 | WO |
0205517 | Jan 2002 | WO |
0211123 | Feb 2002 | WO |
0215081 | Feb 2002 | WO |
0217591 | Feb 2002 | WO |
0219625 | Mar 2002 | WO |
0227600 | Apr 2002 | WO |
0237381 | May 2002 | WO |
0245034 | Jun 2002 | WO |
0265318 | Aug 2002 | WO |
02061652 | Aug 2002 | WO |
02065305 | Aug 2002 | WO |
02069121 | Sep 2002 | WO |
03009277 | Jan 2003 | WO |
03091990 | Nov 2003 | WO |
03094499 | Nov 2003 | WO |
03096337 | Nov 2003 | WO |
2004010352 | Jan 2004 | WO |
2004040416 | May 2004 | WO |
2004040475 | May 2004 | WO |
2005025217 | Mar 2005 | WO |
2005064885 | Jul 2005 | WO |
2005101243 | Oct 2005 | WO |
2005111998 | Nov 2005 | WO |
2006012241 | Feb 2006 | WO |
2006025797 | Mar 2006 | WO |
2007056531 | May 2007 | WO |
2007056532 | May 2007 | WO |
2008042953 | Apr 2008 | WO |
2008044664 | Apr 2008 | WO |
2008045950 | Apr 2008 | WO |
2008110002 | Sep 2008 | WO |
2008110790 | Sep 2008 | WO |
2009011206 | Jan 2009 | WO |
2009061651 | May 2009 | WO |
2009064561 | May 2009 | WO |
2010048458 | Apr 2010 | WO |
Entry |
---|
Arbitron, “Critical Band Encoding Technology Audio Encoding System From Arbitron ,” Feb. 2008, 27 pages. |
United States Patent and Trademark Office, “Non-Final Office Action,” issued in connection with U.S. Appl. No. 14/023,226, Jul. 31, 2014, 15 pages. |
United States Patent and Trademark Office, “Notice of Allowance,” issued in connection with U.S. Appl. No. 14/023,226, Dec. 23, 2014, 23 pages. |
Patent Cooperation Treaty, “International Search Report and Written Opinion,” issued in connection with Application No. PCT/US2014/049202, Nov. 12, 2014, 9 pages. |
Fink et al., “Social- and Interactive- Television Applications Based on Real-Time Ambient-Audio Identification,” EuroITV, 2006 (10 pages). |
United States Patent and Trademark Office, “Non-Final Office Action,” issued in connection with U.S. Appl. No. 12/464,811, Aug. 31, 2012, 46 pages. |
United States Patent and Trademark Office, “Non-Final Office Action,” issued in connection with U.S. Appl. No. 12/464,811, Apr. 1, 2013, 23 pages. |
United States Patent and Trademark Office, “Final Office Action,” issued in connection with U.S. Appl. No. 12/464,811, Dec. 17, 2013, 41 pages. |
United States Patent and Trademark Office, “Non-Final Office Action,” issued in connection with U.S. Appl. No. 13/955,438, May 22, 2015, 27 pages. |
United States Patent and Trademark Office, “Non-Final Office Action,” issued in connection with U.S. Appl. No. 14/023,221, Jun. 29, 2015, 66 pages. |
United States Patent and Trademark Office, “Non-Final Office Action,” issued in connection with U.S. Appl. No. 12/464,811, Jul. 6, 2015, 52 pages. |
United States Patent and Trademark Office, “Non-Final Office Action,” issued in connection with U.S. Appl. No. 13/955,245, Aug. 20, 2015, 26 pages. |
European Patent Office, “Communication pursuant to Article 94(3) EPC”, issued in connection with European Patent Application No. 09 748 892.8, mailed Dec. 21, 2015, (7 pages). |
United States Patent and Trademark Office, “Final Office Action,” issued in connection with U.S Appl. No. 14/023,221, mailed Dec. 3, 2015, (11 pages). |
United States Patent and Trademark Office, “Final Office Action,” issued in connection with U.S Appl. No. 13/955,438, mailed Dec. 4, 2015, (13 pages). |
International Bureau, “International Preliminary Report on Patentability”, issued in connection with PCT patent application No. PCT/US2014/049202, mailed Feb. 11, 2016 (5 pages). |
United States Patent and Trademark Office, “Final Office Action”, issued in connection with U.S Appl. No. 13/955,245, mailed Feb. 26, 2016 (11 pages). |
United States Patent and Trademark Office, “Final Office Action,” issued in connection with U.S. Appl. No. 12/464,811, Mar. 10, 2016 (14 pages). |
Number | Date | Country | |
---|---|---|---|
20150221312 A1 | Aug 2015 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 14023226 | Sep 2013 | US |
Child | 14685984 | US | |
Parent | 13955438 | Jul 2013 | US |
Child | 14023226 | US |