# AudioSeal: Proactive Localized Watermarking AudioCraft provides the training code and models for AudioSeal, a method for speech localized watermarking [Proactive Detection of Voice Cloning with Localized Watermarking][arxiv], with state-of-the-art robustness and detector speed. It jointly trains a generator that embeds a watermark in the audio, and a detector that detects the watermarked fragments in longer audios, even in the presence of editing. ## Installation and setup Make sure to install audiocraft version `1.4.0a1` or later, and with the `[wm]` extra (see [README](../README.md)). Alternatively, you can just install audioseal yourself. To install AudioSeal, follow [Installation](https://github.com/facebookresearch/audioseal) guidelines in the AudioSeal repo. _NOTE_: Since we use AAC augmentation in our training loop, you need to install ffmpeg, or it will not work (See Section "Installation" in [README](../README.md)). Make sure you follow [steps for basic training setup](TRAINING.md) before starting. ## API Check the [Github repository](https://github.com/facebookresearch/audioseal) for more details. ## Training The [WatermarkSolver](../audiocraft/solvers/watermark.py) implements the AudioSeal's training pipeline. It joins the generator and detector that wrap `audioseal.AudioSealWM` and `audioseal.AudioSealDetector` respectively. For the training recipe, see [config/solver/watermark/robustness.yaml](../config/solver/watermark/robustness.yaml). For illustration, we use the three example audios in `datasets`, with datasourc definition in [dset/audio/example.yaml](../config/dset/audio/example.yaml) (Please read [DATASET](./DATASETS.md) to understand AudioCraft's dataset structure.) To run the Watermarking training pipeline locally: ```bash dora run solver=watermark/robustness dset=audio/example ``` you can override model / experiment parameters here directly like: ```bash dora run solver=watermark/robustness dset=audio/example sample_rate=24000 ``` If you want to run in debug mode: ```bash python3 -m pdb -c c -m dora run solver=watermark/robustness dset=audio/example ```