ZhangXinWhut/SimWhisper-Codec

Official code for paper:"Speaking Clearly: A Simplified Whisper-Based Codec for Low-Bitrate Speech Coding"

Python

39

22 commits

updated Jan 28, 2026

See the code

README

πŸŽ™οΈ SimWhisper-Codec

Speaking Clearly: A Simplified Whisper-Based Codec for Low-Bitrate Speech Coding

SimWhisper-Codec Architecture

Demo paper Hugging Face

A semantic-first speech codec that achieves superior performance through architectural simplification rather than complex supervision.


✨ Highlights

  • πŸš€ low Bitrate: Only 1.1 kbps at 16 kHz sampling rate
  • πŸ”Š High Quality Speech Reconstruction: Achieving UTMOS 4.00 WER 2.75 (hubert-large-ls960-ft) sim 0.83 (wavlm_large_finetune) stoi 0.93 pesq-nb 3.29 pesq-wb 2.72 on librispeech-test-clean reconstruction (gt: WER 2.16 UTMOS 4.09)
  • 🌍 Strong Generalization: Trained only on LibriSpeech, yet performs well on out-of-domain data (LJSpeech, THCHS30)
  • 🧊 Frozen Encoder: No fine-tuning of Whisper encoder required
  • ⚑ Simple & Efficient: Architectural simplification over complex supervision

πŸ“Š Performance

In-Domain Evaluation (LibriSpeech test-clean)

ModelBitrateWER ↓PESQ-NB ↑PESQ-WB ↑STOI ↑SIM ↑UTMOS ↑
XCodec2.00.8 kbps2.613.042.430.920.824.13
XY-Tokenizer1.0 kbps2.463.102.500.920.854.03
BigCodec1.04 kbps2.923.272.680.930.844.11
SimWhisper-Codec1.1 kbps2.753.292.720.930.834.00

Out-of-Domain Generalization

Evaluation on Seed-TTS-Eval Dataset

ModelBitrateSEED-ZHSEED-EN
PESQ-NB ↑PESQ-WB ↑SIM ↑STOI ↑PESQ-NB ↑PESQ-WB ↑SIM ↑STOI ↑
XCodec2.00.8 kbps2.692.100.810.892.572.010.780.89
XY-Tokenizer1.0 kbps2.972.320.880.902.752.180.820.90
BigCodec1.04 kbps2.882.260.800.912.802.220.800.91
SimWhisper-Codec1.1 kbps3.302.380.820.912.882.290.800.91
DatasetLanguageSamplesPESQ-WB ↑PESQ-NB ↑STOI ↑
LJSpeechEnglish2,6202.793.300.94
THCHS-30Chinesetest set2.633.210.91

SimWhisper-Codec is trained exclusively on LibriSpeech, demonstrating strong cross-lingual generalization.

πŸš€ Quick Start

Installation

# Clone repository
git clone https://github.com/ZhangXinWhut/SimWhisper-Codec.git && cd SimWhisper-Codec

# Create and activate conda environment
conda create -n swcodec python=3.10 -y && conda activate swcodec

# Install dependencies
pip install -r requirements.txt

Available Models πŸ—‚οΈ

Model NameHugging FaceTraining Data
SimWhisper-CodecπŸ€—LibriSpeech

Download Model Weights

You need to download the SimWhisper-Codec model weights. You can find the weights in the SimWhisper-Codec Hugging Face repository.

mkdir -p ./weights && huggingface-cli download xxx123456/SimWhisper_Codec SimWhisperCodec.pt --local-dir ./weights/

Inference

python inference.py --input_dir /path/to/LibriSpeech/test-clean

The reconstructed audio files will be available in the output_wavs/ directory.

πŸ™ Acknowledgements

Our codebase builds upon the XY-Tokenizer. We thank the authors for their excellent work.

πŸ“ Citation

If you find this work useful in your research, please cite our paper:

@misc{zhang2025speakingclearlysimplifiedwhisperbased,
      title={Speaking Clearly: A Simplified Whisper-Based Codec for Low-Bitrate Speech Coding}, 
      author={Xin Zhang and Lin Li and Xiangni Lu and Jianquan Liu and Kong Aik Lee},
      year={2025},
      eprint={2510.20504},
      archivePrefix={arXiv},
      primaryClass={cs.SD},
      url={https://arxiv.org/abs/2510.20504}, 
}

πŸ“œ License

This project is licensed under the Apache 2.0 License.

acoustic
autoencoder
codec
semantic
speech-reconstruction
speech-representation
speech-tokenizer

ZhangXinWhut/SimWhisper-Codec

Official code for paper:"Speaking Clearly: A Simplified Whisper-Based Codec for Low-Bitrate Speech Coding"

Python

39

22 commits

updated Jan 28, 2026

See the code

README

πŸŽ™οΈ SimWhisper-Codec

Speaking Clearly: A Simplified Whisper-Based Codec for Low-Bitrate Speech Coding

SimWhisper-Codec Architecture

Demo paper Hugging Face

A semantic-first speech codec that achieves superior performance through architectural simplification rather than complex supervision.


✨ Highlights

  • πŸš€ low Bitrate: Only 1.1 kbps at 16 kHz sampling rate
  • πŸ”Š High Quality Speech Reconstruction: Achieving UTMOS 4.00 WER 2.75 (hubert-large-ls960-ft) sim 0.83 (wavlm_large_finetune) stoi 0.93 pesq-nb 3.29 pesq-wb 2.72 on librispeech-test-clean reconstruction (gt: WER 2.16 UTMOS 4.09)
  • 🌍 Strong Generalization: Trained only on LibriSpeech, yet performs well on out-of-domain data (LJSpeech, THCHS30)
  • 🧊 Frozen Encoder: No fine-tuning of Whisper encoder required
  • ⚑ Simple & Efficient: Architectural simplification over complex supervision

πŸ“Š Performance

In-Domain Evaluation (LibriSpeech test-clean)

ModelBitrateWER ↓PESQ-NB ↑PESQ-WB ↑STOI ↑SIM ↑UTMOS ↑
XCodec2.00.8 kbps2.613.042.430.920.824.13
XY-Tokenizer1.0 kbps2.463.102.500.920.854.03
BigCodec1.04 kbps2.923.272.680.930.844.11
SimWhisper-Codec1.1 kbps2.753.292.720.930.834.00

Out-of-Domain Generalization

Evaluation on Seed-TTS-Eval Dataset

ModelBitrateSEED-ZHSEED-EN
PESQ-NB ↑PESQ-WB ↑SIM ↑STOI ↑PESQ-NB ↑PESQ-WB ↑SIM ↑STOI ↑
XCodec2.00.8 kbps2.692.100.810.892.572.010.780.89
XY-Tokenizer1.0 kbps2.972.320.880.902.752.180.820.90
BigCodec1.04 kbps2.882.260.800.912.802.220.800.91
SimWhisper-Codec1.1 kbps3.302.380.820.912.882.290.800.91
DatasetLanguageSamplesPESQ-WB ↑PESQ-NB ↑STOI ↑
LJSpeechEnglish2,6202.793.300.94
THCHS-30Chinesetest set2.633.210.91

SimWhisper-Codec is trained exclusively on LibriSpeech, demonstrating strong cross-lingual generalization.

πŸš€ Quick Start

Installation

# Clone repository
git clone https://github.com/ZhangXinWhut/SimWhisper-Codec.git && cd SimWhisper-Codec

# Create and activate conda environment
conda create -n swcodec python=3.10 -y && conda activate swcodec

# Install dependencies
pip install -r requirements.txt

Available Models πŸ—‚οΈ

Model NameHugging FaceTraining Data
SimWhisper-CodecπŸ€—LibriSpeech

Download Model Weights

You need to download the SimWhisper-Codec model weights. You can find the weights in the SimWhisper-Codec Hugging Face repository.

mkdir -p ./weights && huggingface-cli download xxx123456/SimWhisper_Codec SimWhisperCodec.pt --local-dir ./weights/

Inference

python inference.py --input_dir /path/to/LibriSpeech/test-clean

The reconstructed audio files will be available in the output_wavs/ directory.

πŸ™ Acknowledgements

Our codebase builds upon the XY-Tokenizer. We thank the authors for their excellent work.

πŸ“ Citation

If you find this work useful in your research, please cite our paper:

@misc{zhang2025speakingclearlysimplifiedwhisperbased,
      title={Speaking Clearly: A Simplified Whisper-Based Codec for Low-Bitrate Speech Coding}, 
      author={Xin Zhang and Lin Li and Xiangni Lu and Jianquan Liu and Kong Aik Lee},
      year={2025},
      eprint={2510.20504},
      archivePrefix={arXiv},
      primaryClass={cs.SD},
      url={https://arxiv.org/abs/2510.20504}, 
}

πŸ“œ License

This project is licensed under the Apache 2.0 License.

acoustic
autoencoder
codec
semantic
speech-reconstruction
speech-representation
speech-tokenizer

Significant stargazers

innnky

971 followers Β· starred Oct 2025