YAML Metadata Warning:empty or missing yaml metadata in repo card
Check out the documentation for more information.
Feature-Aligned Speech Watermarking for Robustness to Reconstruction Distortions
Official implementation of the ICME 2026 paper.
Authors
Haiyun Li, Shuhai Peng, Zhisheng Zhang, Jingran Xie, Xiaofeng Xie, Hanyang Peng, and Zhiyong Wu
Contact
Demo
Abstract
Audio watermarking aims to embed identifiable information into audio while remaining imperceptible. Existing methods adopt high-fidelity, low-energy designs to preserve perceptual quality, but the resulting watermarks lack robustness under suppression by speech reconstruction models. Improving robustness is challenging due to the inherent robustness-fidelity trade-off in existing designs, where increasing watermark energy improves robustness but reduces fidelity.
To address this problem, we propose a feature-aligned watermarking method that aligns the watermark with the original speech feature distribution, allowing higher watermark energy to improve robustness while preserving imperceptibility. We use a pretrained speech codec to generate a pseudo-speech watermark and fuse it into the spectrogram of the input audio, with VAD loss and perceptual losses guiding embedding within voiced regions. Experiments show that our method maintains imperceptibility comparable to existing approaches while substantially improving robustness under both seen and unseen speech reconstruction models.
Highlights
- Feature-aligned watermark design for improved robustness under reconstruction-based suppression
- Pseudo-speech watermark generation with a pretrained speech codec
- Voiced-region embedding guided by VAD and perceptual objectives
Requirements
- Python 3.11 or later
- Install dependencies with:
pip install -r requirements.txt
Quick Start
Embed a watermark
python -m main embed \
--input ./example.wav \
--output ./outputs/watermarked.wav \
--message 1111001110101001 \
--device cpu
Decode a watermark
python -m main decode \
--input ./outputs/watermarked.wav \
--label 1111001110101001 \
--device cpu
Repository Structure
main.pyβ command-line entry pointinferencer.pyβ end-to-end embedding and detection pipelinebase.pyβ model loading, checkpoint handling, and device setupmodels.pyβ watermarking model componentsutil.pyβ helper utilities for message generation and serializationspeechtokenizer/β external dependency with pretrained codec componentsweight.pthβ released checkpointexample.wavβ sample audio for quick testingoutputs/β generated output files
License
This project is released under the Apache 2.0 License.