Mindket

IndiCodec

Newversion 1 · updated

Overview

Turns speech into two streams of compact tokens and back into 24 kHz audio at 1.09 kbps, with a focus on English and ten Indian languages. It suits speech researchers and text-to-speech builders.

IndiCodec is a kit in the Developer category, listed by Mindket. It is free. This is version 1, last updated on . Download it on this page, a zip of its files. Nothing in it runs by itself.

At a glance

You need
  • Python
  • torch and torchaudio 2.6.0, plus the other packages in the card's pip line
  • The NeuCodec package, added without its own dependencies, with the card's last install step
  • Disk space for one weights file of about 2.5 GB in F32
Runs in
  • Speech language model and text-to-speech pipelines
  • Audio in English or one of the ten Indian languages the card tested
  • A computer with Python and the pinned PyTorch and torchaudio versions
Start with
pip install -U huggingface_hub

About

What it is

IndiCodec is a neural speech codec. It turns speech into two streams of whole-number tokens, 75 per second in total, and decodes them back into 24 kHz audio. It is meant for building speech language models and text-to-speech systems. It learned mostly from English and ten Indian languages, and its card says it is strongest on the Indian ones. It builds on NeuCodec by Neuphonic and has 624M parameters in one file.

Who it suits

It suits speech researchers and developers who need compact speech tokens, especially for Indian languages. You need some Python and a PyTorch setup.

IndustryWho uses itHow they use itExample
Speech AISpeech language model researchersTurn speech into tokens a language model can learnPreparing Hindi and Tamil audio as token arrays
SoftwareText-to-speech developersDecode predicted tokens back into audioRebuilding a 24 kHz voice from two arrays
ResearchCodec researchersCompare low-bitrate codecs on Indian languagesScoring decoded clips against their originals
Language technologyTeams working on Indian languagesStore speech in a small token formKeeping Bengali recordings at 75 tokens per second

People who work with music should look elsewhere, since this codec handles speech only.

Where to use it

  • Speech language model and text-to-speech pipelines
  • Audio in English or one of the ten Indian languages the card tested
  • A computer with Python and the pinned PyTorch and torchaudio versions
Use caseWhoWhat they get back
Speech to tokensModel buildersA content array and an acoustic array
Tokens to speechText-to-speech developers24 kHz audio
Round trip testsResearchersA decoded copy to score against the original

How to set it up

  • Python
  • torch and torchaudio 2.6.0, plus the other packages in the card's pip line
  • The NeuCodec package, added without its own dependencies, with the card's last install step
  • Disk space for one weights file of about 2.5 GB in F32
  1. Install the Hugging Face hub package.
  2. Download the repository into a folder named IndiCodec and move into it.
  3. Install the packages the card lists.
  4. Run the card's extra install step for NeuCodec.
pip install -U huggingface_hub
hf download prakharkhatri/IndiCodec --local-dir IndiCodec && cd IndiCodec
pip install torch==2.6.0 torchaudio==2.6.0 safetensors soundfile transformers==4.51.* vector-quantize-pytorch==1.17.8 torchtune==0.5.0 torchao==0.9.0 local-attention einops librosa

How to use it

Load the model from its weights file, read an audio file, call encode to get the two token arrays, then call decode to get audio back. Whatever rate your recording has, the codec first converts it to 16 kHz. The output is 24 kHz.

import soundfile as sf
from indicodec import IndiCodec

codec = IndiCodec.load("model.safetensors")
wav, sr = sf.read("speech.wav")

content, acoustic = codec.encode(wav, sr)    # token arrays
audio = codec.decode(content, acoustic)      # 24 kHz
ToolWhat it does
IndiCodec.loadLoads all weights from model.safetensors
encodeTurns audio into a content array and an acoustic array
decodeRebuilds 24 kHz audio from the two arrays

Example

You read a short Hindi recording from a wav file. The encode call returns two arrays of whole-number tokens, 75 per second. The decode call turns them back into audio. In the card's tests, Indian-language words survive this round trip better than with Mimi, SNAC or NeuCodec.

For newcomers and experts

A codec squeezes sound into a small stream of numbers and rebuilds it later. Speech language models read such numbers the way text models read words. A first small step is to run the card's short Python example on one recording and listen to the result.

The content stream carries the words and comes from w2v-BERT 2.0 features. The acoustic stream carries voice and detail. Each is a single finite scalar quantization grid, with no learned codebook and no stack of residual codebooks. Content is coded first, and the acoustic grid codes what remains.

  1. Speech audio goes in at any rate
  2. Content and acoustic streams are quantized
  3. Two token arrays come out
  4. Decoder rebuilds 24 kHz audio

Good to know

  • License: Apache 2.0, and the card says commercial use is allowed.
  • Cost to run: none named. You need your own computer and no paid service.
  • Data it reaches: it downloads files from the Hugging Face Hub, and the card's last install step fetches the NeuCodec code from GitHub. Audio is processed on your machine.
  • Not for: music, since it is built for speech only.
  • Training data is under open licenses, and no audio ships with this release.
Indian-language character error after a round trip, lower is better
IndiCodec6.3 percent
NeuCodec8.9 percent
SNAC13.3 percent
Mimi14.3 percent

README and files

README

IndiCodec

Turns speech into two streams of compact tokens and back into 24 kHz audio at 1.09 kbps, with a focus on English and ten Indian languages. It suits speech researchers and text-to-speech builders.

Made by prakharkhatri on Hugging Face. These notes are Mindket's, written from its model page and model card; the model's own files and license are on Hugging Face.

About

What it is: IndiCodec is a neural speech codec. It turns speech into two streams of whole-number tokens, 75 per second in total, and decodes them back into 24 kHz audio. It is meant for building speech language models and text-to-speech systems. It learned mostly from English and ten Indian languages, and its card says it is strongest on the Indian ones. It builds on NeuCodec by Neuphonic and has 624M parameters in one file.

Who it suits: It suits speech researchers and developers who need compact speech tokens, especially for Indian languages. You need some Python and a PyTorch setup.

Industry | Who uses it | How they use it | Example
Speech AI | Speech language model researchers | Turn speech into tokens a language model can learn | Preparing Hindi and Tamil audio as token arrays
Software | Text-to-speech developers | Decode predicted tokens back into audio | Rebuilding a 24 kHz voice from two arrays
Research | Codec researchers | Compare low-bitrate codecs on Indian languages | Scoring decoded clips against their originals
Language technology | Teams working on Indian languages | Store speech in a small token form | Keeping Bengali recordings at 75 tokens per second

People who work with music should look elsewhere, since this codec handles speech only.

Where to use it:

  • Speech language model and text-to-speech pipelines
  • Audio in English or one of the ten Indian languages the card tested
  • A computer with Python and the pinned PyTorch and torchaudio versions
Use case | Who | What they get back
Speech to tokens | Model builders | A content array and an acoustic array
Tokens to speech | Text-to-speech developers | 24 kHz audio
Round trip tests | Researchers | A decoded copy to score against the original

How to set it up:

  • Python
  • torch and torchaudio 2.6.0, plus the other packages in the card's pip line
  • The NeuCodec package, added without its own dependencies, with the card's last install step
  • Disk space for one weights file of about 2.5 GB in F32
  1. Install the Hugging Face hub package.
  2. Download the repository into a folder named IndiCodec and move into it.
  3. Install the packages the card lists.
  4. Run the card's extra install step for NeuCodec.
pip install -U huggingface_hub
hf download prakharkhatri/IndiCodec --local-dir IndiCodec && cd IndiCodec
pip install torch==2.6.0 torchaudio==2.6.0 safetensors soundfile transformers==4.51.* vector-quantize-pytorch==1.17.8 torchtune==0.5.0 torchao==0.9.0 local-attention einops librosa

How to use it: Load the model from its weights file, read an audio file, call encode to get the two token arrays, then call decode to get audio back. Whatever rate your recording has, the codec first converts it to 16 kHz. The output is 24 kHz.

import soundfile as sf
from indicodec import IndiCodec

codec = IndiCodec.load("model.safetensors")
wav, sr = sf.read("speech.wav")

content, acoustic = codec.encode(wav, sr)    # token arrays
audio = codec.decode(content, acoustic)      # 24 kHz
Tool | What it does
IndiCodec.load | Loads all weights from model.safetensors
encode | Turns audio into a content array and an acoustic array
decode | Rebuilds 24 kHz audio from the two arrays

Example: You read a short Hindi recording from a wav file. The encode call returns two arrays of whole-number tokens, 75 per second. The decode call turns them back into audio. In the card's tests, Indian-language words survive this round trip better than with Mimi, SNAC or NeuCodec.

For newcomers and experts: A codec squeezes sound into a small stream of numbers and rebuilds it later. Speech language models read such numbers the way text models read words. A first small step is to run the card's short Python example on one recording and listen to the result.

The content stream carries the words and comes from w2v-BERT 2.0 features. The acoustic stream carries voice and detail. Each is a single finite scalar quantization grid, with no learned codebook and no stack of residual codebooks. Content is coded first, and the acoustic grid codes what remains.

Speech audio goes in at any rate
Content and acoustic streams are quantized
Two token arrays come out
Decoder rebuilds 24 kHz audio

Good to know:

  • License: Apache 2.0, and the card says commercial use is allowed.
  • Cost to run: none named. You need your own computer and no paid service.
  • Data it reaches: it downloads files from the Hugging Face Hub, and the card's last install step fetches the NeuCodec code from GitHub. Audio is processed on your machine.
  • Not for: music, since it is built for speech only.
  • Training data is under open licenses, and no audio ships with this release.
Title: Indian-language character error after a round trip, lower is better
IndiCodec: 6.3 percent
NeuCodec: 8.9 percent
SNAC: 13.3 percent
Mimi: 14.3 percent

On Hugging Face, 13 November 2026

  • Task: audio to audio
  • Parameters: 624M
  • Weights: about 2.5 GB in F32; about 312 MB at 4-bit (estimate)
  • Formats: Safetensors
  • Downloads in the last 30 days: 81
  • Likes: 7
  • License: apache-2.0
  • Languages: en, hi, bn, gu, kn, ml, mr, or
  • Tags: safetensors, indicodec, audio, speech, audio-codec, speech-tokenizer, speech-language-models, audio-to-audio

Links

Get the model

Download its files with Hugging Face's command line:

pip install -U huggingface_hub
hf download prakharkhatri/IndiCodec

Then follow the usage in its model card. Nothing in this kit runs by itself.

Files
README.md  6 KB

1 file, 6 KB, downloaded as a zip.

What’s new

  • Version 1 · 2026-11-13

Compare with similar

Listed Hugging Face models in the same category that share the most tags with this one.

ProductDownloads, last 30 daysLikesParametersLicenseLast change
IndiCodec This page817624Mapache-2.0
RubatoCodecShares speech-tokenizer · audio-to-audio · speech67018246Mapache-2.0
MuLaCover by HeartMuLaShares audio-to-audio · audio · safetensors678494.4Bcc-by-nc-4.0
parakeet-tdt-0.6b-v3Shares speech · audio · safetensors529,5941,272627Mcc-by-4.0
Parakeet RNNT 1.1BShares speech · audio · safetensors8,7091891.1Bcc-by-4.0
VoxLockShares speech · audio · safetensors2,2534627.3Mapache-2.0
Numbers as Mindket last read them, from 2026-11-12 to 2026-11-13.

Reviews

No ratings yet

Write a review

No reviews yet.

More from Mindket

See all from Mindket

anaksor-ocr

Sokheng · Kit

Reads Khmer and English text from documents, receipts and photos of signs, using a detector for text lines and a recogniser for each line. Suits developers who…

New

Qwen2.5-7B-Instruct as GGUF files in eight quantization sizes, to chat with locally through llama.cpp. For people who want a capable 7.6B model on their own co…

New

ACE-Step 1.5 XL SFT

ACE-Step · Kit

Generates music from text with a 4B diffusion decoder, 50 steps and guidance control, aiming for higher audio quality than the base. For creators with a GPU of…

New

Similar in Developer

See all in Developer

Claude Code Skills & Plugins

alirezarezvani · Skill

Adds 411 ready-made skills for Claude Code and other coding agents, grouped by role from engineering and product to marketing, finance and compliance. Installs…

New29.8k

buzz

block · Kit

Self-hostable workspace where people and AI agents share the same rooms, built on a Nostr relay that logs every action as a signed event. For teams that want t…

New37.3k

plannotator

backnotprop · Kit

Opens your AI coding agent's plans, specs and code changes in a browser so you can annotate or comment on them and send the feedback straight back to the agent.

New10.5k