SuperCodec: A Neural Speech Codec with Selective Back-Projection Network

July 31, 2024 · View on GitHub

githubio arXiv GitHub Repo stars GitHub

Updates

  • Code release. (Jul. 27, 2024)
  • Online demo at Github See here. (Aug. 13, 2023)
  • Supports 16-48 kHz at variable bitrates. (Jul. 27, 2024)

In this paper, we present SuperCodec, a neural speech codec that replaces the standard feedforward up- and downsampling layers with Selective Up-sampling Back Projection (SUBP) and Selective Down-sampling Back Projection (SDBP) modules. Our proposed method efficiently preserves the information, on the one hand, and attains rich features from lower to higher layers of the network, on the other. Additionally, we propose a selective feature fusion block in the SUBP and SDBP to consolidate the input feature maps

inference
Supercodec

Pre-requisites

  1. Clone this repo: git clone https://github.com/exercise-book-yq/Supercodec.git

  2. CD into this repo: cd Supercodec

  3. Install python requirements: pip install -r requirements.txt

Training Example

# train
python train.py --config config_v1.json

Inference Example

# inference
python inferece.py --checkpoint_file [generator checkpoint file path]

Additional Experiments

Objective evaluation testing on our test set from VCTK at 16 kHz sampling rate. We compare our proposed method with existing various codecs trained with the same configuration.

ModelBitrateViSQOLSTOI(%)WARP-Q(↓)
Supercodec1 kbps3.11884.802.219
TiCodec1 kbps2.49080.212.578
HiFiCodec1 kbps2.06075.192.840
EnCodec1 kbps2.20276.532.687

Objective evaluation testing on our test set from VCTK at 24 kHz sampling rate. We compare our proposed method with existing various codecs trained with the same configuration.

ModelBitrateViSQOLSTOI(%)WARP-Q(↓)
Supercodec1.5 kbps3.32285.612.147
TiCodec1.5 kbps2.63979.032.539
HiFiCodec1.5 kbps2.02676.802.761
EnCodec1.5 kbps2.20279.812.569

All models are non-causal and trained on LibriTTS.

References