MioCodec 25Hz 24kHz

ProviderAratako
Categoryaudio-to-audio
Licensemit
Downloads45
Stars0

Overview

MioCodec 25Hz 24kHz is a specialized audio-to-audio model designed for high-fidelity signal processing and efficient compression. Operating at a 24kHz sampling rate with a 25Hz frame rate, it balances audio transparency with low-latency throughput, making it suitable for real-time communication and voice synthesis pipelines. Unlike general-purpose audio models, MioCodec focuses on maintaining structural integrity during encoding and decoding, providing developers with a lightweight tool for audio representation. It is released under the MIT license, ensuring seamless integration into both open-source and commercial production environments without restrictive licensing overhead.

Highlights

  • High-fidelity 24kHz sampling for clear audio reproduction
  • Efficient 25Hz frame rate optimizes processing latency
  • MIT license allows flexible commercial and open-source deployment
  • Specialized audio-to-audio architecture for streamlined signal workflows

Usage

Install
# Install Hugging Face transformers
pip install transformers torch
SDK Usage
# Load model with transformers
from transformers import AutoModel, AutoTokenizer

model = AutoModel.from_pretrained("Aratako/MioCodec-25Hz-24kHz")
tokenizer = AutoTokenizer.from_pretrained("Aratako/MioCodec-25Hz-24kHz")

Hugging Face Download

We recommend downloading the model via the Hugging Face CLI or Hub SDK.

Guidance:Before downloading, install huggingface_hub with:

Guidance
pip install -U huggingface_hub

CLI Download

Download the full repository

Download the full repository
huggingface-cli download Aratako/MioCodec-25Hz-24kHz

Download a single file to a local folder (e.g. config.json into ./dir)

Download a single file to a local folder (e.g. config.json into ./dir)
huggingface-cli download Aratako/MioCodec-25Hz-24kHz config.json --local-dir ./dir

See the official docs for more CLI options

SDK Download

SDK Download
# 模型下载
from huggingface_hub import snapshot_download
model_dir = snapshot_download('Aratako/MioCodec-25Hz-24kHz')

Git Download

Make sure git-lfs is installed first

Git Download
git lfs install
git clone https://huggingface.co/Aratako/MioCodec-25Hz-24kHz

To skip LFS large-file downloads, use:

Skip LFS
GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/Aratako/MioCodec-25Hz-24kHz

Model files are hosted on the Hugging Face Hub — download directly via HF CLI / SDK / Git, not through this site.

PyTorch / Transformers Usage

Install Transformers

Install Transformers
pip install -U transformers torch

Load the model and run inference

Load the model and run inference
from transformers import AutoModelForCausalLM, AutoTokenizer

model = AutoModelForCausalLM.from_pretrained('Aratako/MioCodec-25Hz-24kHz')
tokenizer = AutoTokenizer.from_pretrained('Aratako/MioCodec-25Hz-24kHz')

Model Download

We recommend downloading the model via the ModelScope CLI or SDK.

Guidance:Before downloading, install ModelScope with:

Guidance
pip install modelscope

CLI Download

Download the full repository

Download the full repository
modelscope download --model Aratako/MioCodec-25Hz-24kHz

Download a single file to a local folder (e.g. README.md into ./dir)

Download a single file to a local folder (e.g. README.md into ./dir)
modelscope download --model Aratako/MioCodec-25Hz-24kHz README.md --local_dir ./dir

See the docs for more CLI options

SDK Download

SDK Download
# 模型下载
from modelscope import snapshot_download
model_dir = snapshot_download('Aratako/MioCodec-25Hz-24kHz')

Git Download

Make sure git-lfs is installed first

Git Download
git lfs install
git clone https://www.modelscope.cn/Aratako/MioCodec-25Hz-24kHz.git

To skip LFS large-file downloads, use:

Skip LFS
GIT_LFS_SKIP_SMUDGE=1 git clone https://www.modelscope.cn/Aratako/MioCodec-25Hz-24kHz.git

ModelScope 模型页直接下载模型文件;无需将模型文件放在本站服务器。

Notebook Quickstart

Install the ModelScope library

Install the ModelScope library
pip install "modelscope[audio,cv,nlp,multi-modal,science]" -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html

Load the model and run inference

Load the model and run inference
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks

p = pipeline('text-generation', 'Aratako/MioCodec-25Hz-24kHz')

Full Documentation

来源: HuggingFace

---
license: mit
language:

  • en

  • ja

  • nl

  • fr

  • de

  • it

  • pl

  • pt

  • es

  • ko

  • zh

tags:
  • speech

  • audio

  • tokenizer

datasets:
  • sarulab-speech/mls_sidon

  • mythicinfinity/Libriheavy-HQ

  • nvidia/hifitts-2

  • amphion/Emilia-Dataset

pipeline_tag: audio-to-audio
---

MioCodec-25Hz-24kHz: Lightweight Neural Audio Codec for Efficient Spoken Language Modeling

![GitHub](https://github.com/Aratako/MioCodec)

MioCodec-25Hz-24kHz is a lightweight and fast neural audio codec designed for efficient spoken language modeling. Based on the Kanade-Tokenizer implementation, this model features an integrated wave decoder (iSTFTHead) that directly synthesizes waveforms without requiring an external vocoder.

For higher audio fidelity at 44.1 kHz, see MioCodec-25Hz-44.1kHz.

🌟 Overview

MioCodec decomposes speech into two distinct components:

1. Content Tokens: Discrete representations that primarily capture linguistic information and phonetic content ("what" is being said) at a low frame rate (25 Hz).
2. Global Embeddings: A continuous vector representing broad acoustic characteristics ("how")—including speaker identity, recording environment, and microphone traits.

By disentangling these elements, MioCodec is ideal for Spoken Language Modeling.

Key features

  • Lightweight & Fast: Integrated wave decoder (iSTFTHead) enables direct waveform synthesis without an external vocoder.
  • Ultra-Low Bitrate: Achieves high-fidelity reconstruction at only 341 bps.
  • End-to-End Design: Single model architecture from audio input to waveform output.

📊 Model Comparison

| Model | Token Rate | Vocab Size | Bit Rate | Sample Rate | SSL Encoder | Vocoder | Parameters | Highlights |
| :--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :--- |
| MioCodec-25Hz-24kHz | 25 Hz | 12,800 | 341 bps | 24 kHz | WavLM-base+ | - (iSTFTHead) | 132M | Lightweight, fast inference |
| MioCodec-25Hz-44.1kHz | 25 Hz | 12,800 | 341 bps | 44.1 kHz | WavLM-base+ | MioVocoder (Jointly Tuned) | 118M (w/o vocoder) | High-quality, high sample rate |
| kanade-25hz | 25 Hz | 12,800 | 341 bps | 24 kHz | WavLM-base+ | Vocos 24kHz | 118M (w/o vocoder) | Original 25Hz model |
| kanade-12.5hz | 12.5 Hz | 12,800 | 171 bps | 24 kHz | WavLM-base+ | Vocos 24kHz | 120M (w/o vocoder) | Original 12.5Hz model |

🚀 Quick Start

Installation

bash
# Install via pip
pip install git+https://github.com/Aratako/MioCodec

Or using uv

uv add git+https://github.com/Aratako/MioCodec

Basic Inference

Basic usage for encoding and decoding audio:

python
from miocodec import MioCodecModel, load_audio
import soundfile as sf

1. Load model

model = MioCodecModel.from_pretrained("Aratako/MioCodec-25Hz-24kHz").eval().cuda()

2. Load audio

waveform = load_audio("input.wav", sample_rate=model.config.sample_rate).cuda()

3. Encode Audio

features = model.encode(waveform)

4. Decode to Waveform (directly, no vocoder needed)

resynth = model.decode( content_token_indices=features.content_token_indices, global_embedding=features.global_embedding, )

5. Save

sf.write("output.wav", resynth.cpu().numpy(), model.config.sample_rate)

Voice Conversion (Zero-shot)

MioCodec allows you to swap speaker identities by combining the content tokens of a source with the global embedding of a reference.

python
source = load_audio("source_content.wav", sample_rate=model.config.sample_rate).cuda()
reference = load_audio("target_speaker.wav", sample_rate=model.config.sample_rate).cuda()

Perform conversion

vc_wave = model.voice_conversion(source, reference) sf.write("converted.wav", vc_wave.cpu().numpy(), model.config.sample_rate)

🏗️ Training Methodology

MioCodec-25Hz-24kHz was trained in two phases with an integrated wave decoder that directly synthesizes waveforms via iSTFT.

Phase 1: Feature Alignment

The model is trained to minimize both Multi-Resolution Mel-spectrogram loss and SSL feature reconstruction loss (using WavLM-base+). The wave decoder directly generates waveforms, and losses are computed on the reconstructed audio.

  • Multi-Resolution Mel Spectrogram Loss: Using window lengths of [32, 64, 128, 256, 512, 1024, 2048].
  • SSL Feature Reconstruction Loss: Using WavLM-base+ features.

Phase 2: Adversarial Refinement

Building upon Phase 1, adversarial training is introduced to improve perceptual quality. The training objectives include:

  • Multi-Resolution Mel Spectrogram Loss: Using window lengths of [32, 64, 128, 256, 512, 1024, 2048].
  • SSL Feature Reconstruction Loss: Using WavLM-base+ features.
  • Multi-Period Discriminator (MPD): Using periods of [2, 3, 5, 7, 11, 17, 23].
  • Multi-Scale STFT Discriminator (MS-STFTD): Using FFT sizes of [118, 190, 310, 502, 814, 1314, 2128, 3444].
  • RMS Loss: To stabilize energy and volume.

📚 Training Data

The training datasets are listed below:

| Language | Approx. Hours | Dataset |
| :--- | :--- | :--- |
| Japanese | ~22,500h | Various public HF datasets |
| English | ~500h | Libriheavy-HQ |
| English | ~4,000h | MLS-Sidon |
| English | ~9,000h | HiFiTTS-2 |
| English | ~27,000h | Emilia-YODAS |
| German | ~1,950h | MLS-Sidon |
| German | ~5,600h | Emilia-YODAS |
| Dutch | ~1,550h | MLS-Sidon |
| French | ~1,050h | MLS-Sidon |
| French | ~7,400h | Emilia-YODAS |
| Spanish | ~900h | MLS-Sidon |
| Italian | ~240h | MLS-Sidon |
| Portuguese | ~160h | MLS-Sidon |
| Polish | ~100h | MLS-Sidon |
| Korean | ~7,300h | Emilia-YODAS |
| Chinese | ~300h | Emilia-YODAS |

📜 Acknowledgements

  • Decoder Design: Inspired by XCodec2.

🖊️ Citation

bibtex
@misc{miocodec-25hz-24khz,
  author = {Chihiro Arata},
  title = {MioCodec: High-Fidelity Neural Audio Codec for Efficient Spoken Language Modeling},
  year = {2026},
  publisher = {Hugging Face},
  journal = {Hugging Face repository},
  howpublished = {\url{https://huggingface.co/Aratako/MioCodec-25Hz-24kHz}}
}
Join our Telegram