AWT2 at a glance
The watermark is highly robust. Read details below or proceed to the examples section.
AWT2 algorithm implements so called "blind watermarking" approach, in a sense that the original (non-watermarked) audio stream is not needed to extract the watermark from the watermarked stream. The watermark is extracted directly from the watermarked audio stream or its fragment.
AWT2 is an uncompressed domain watermarking solution. AWT2 command-line (CLI) encoder and decoder operate with wave PCM (.wav) audio files of almost any format - mono/stereo, with sampling rates from 8 to 192 KHz, and amplitude resolutions of 8/16/24/32 bits. Additional audio formats (such as MP3, OGG, AMR, etc.) are supported by the decoder via external tool, FFmpeg (ffmpeg.org).
AWT2 can operate in 'normal' and 'high capacity' mode. AWT2 support single-layer and dual-layer watermarking in the sense that two independent watermarks can be embedded into the same audio stream at different stages of audio content distribution.
Supported watermarking payload size is from 1 to 120 bytes (subject to limitations in different AWT2 packages). Recommended watermarking payload size ensuring uncompromising robustness is up to 20 bytes in ‘normal mode’ and up to 50 bytes in ‘high capacity’ mode.
The algorithm can be applied to all kinds of audio data. Typical examples: music (pop, jazz, classics, rock), speech recordings, instrument samples, audio books, phone recordings, etc.
Each particular copy of AWT2 binaries with particular Serial Number (SN) contains a unique numeric identifier that is used during encoding to scramble watermark payload. This security feature prevents one AWT2 user (with one SN) from extracting watermarks from watermarked files created by another AWT2 user (with another SN number).
AWT2 comes with an optional AWT2 Watermark Listener - an Android application that lets you use your portable Android device (phone, tablet) to detect digital watermarks in the audio content processed with AWT2 technology. Details...
AWT2 has an advanced cross-platform SDK supporting live streams encodin and decoding.
AWT2 is a fully cross-platform solution able to run on all existing platforms having a C compiler.
Watermark robustness and aural (im)perceptibility
AWT2 demonstrates very high robustness to almost all kinds of audio conversions. Here are some typical examples:
A quick example: the watermark survives even transcoding with low-bitrate MP3 codec, then time-stretching and transducing of the signal via air (i.e. reproducing it with a loudspeaker and recording with a microphone).
In 'high capacity' operating mode the algorithm uses extended frequency range to embed watermarks. This results in 3 times higher data rate, but leads to reduced robustness against conversions with sample rates lower than 16 KHz or extreme lossy transcoding.
It is worth underlining the ability of the decoder to detect and successfully extract watermarks even from aggressively time-stretched audio streams. It's not a secret that time-stretching of 1-2% is often used on radio stations in order to free more air time for advertisements. AWT2 decoder can cope with time-stretching of up to 50%.
With default parameters, the proposed watermarking algorithm demonstrates practically undistinguishable watermarking which is transparent to an average listener with audio equipment of any quality on majority of audio content. For the sake of truth it should be noted that (like with any other real world technology) there are examples of very specific audio samples that may reveal some watermarking artifacts compared to original non-watermarked audio, however in these specific cases such effects are rather minor and may be noticeable only to experienced listener. Depending on the target needs, the user may adjust encoding parameters parameters (namely, watermarking “density”, “aggressiveness” and “modulation gain”) to achieve optimal aural transparency and robustness.
How the watermarking algorithm works
...no, it is not another spread spectrum or echo hiding technique...
A high-level description of the patented watermarking algorithm implemented in AWT2 is described in the AWT2 User Guide (PDF) available upon request.
Examples below demonstrate robustness and imperceptibility of AWT2 watermarks. You may want to request the demo package of AWT2 (that includes AWT2 encoder, decoder, convenient GUI tool and documentation) if you want to try and decode the files.
Here are several source audio signals (WAV PCM, 44.1 Khz, 16 bit) that are used in this demonstration:
These are audio recordings of different types: music (pop, electronic, classics) and speech.
All of the above source files have been encoded using AWT2 encoder, and the watermark 0xABCDEF12 (4 bytes) has been embedded into each of them (in 'normal' operating mode). The encoding was done by running the encoder in command line (or, alternatively, you can use AWT2 GUI):
awt2_enc source.wav output.wav 0xABCDEF12
With these parameters the watermarking data rate is approximately 15 bits per second, that results in embedding of 28 copies of the watermarking payload per one minute of audio.
Below is a table of input and output (watermarked) files together with their distorted copies (transcoded, air transduced, etc). You can download and listen to them in order to:
To decode the watermark from any of the watermarked files, run:
awt2_dec <file.wav> 4
Below is a table containing all input and output files. You can download the wave files or just listen to them in place using embedded audio player.
(*) Transcoded files were created by encoding to MP3 using Lame encoder at 32 Kbps and then decoding back to wave.
You can use AWT2 decoder to make sure that the watermark is still detecteable in this stretched audio.