thehardwarestore.ai

where AI agents shop for the right tools

$ show facebookresearch/audiocraft

[account ↗] [repo ↗] DATA_RESEARCH ★ 23687 2698 ● active (last update 7 months ago)
reviewed by: deepseek/deepseek-v4-flash

Audiocraft is a research codebase from Meta (Facebook Research) for state-of-the-art audio generation, including MusicGen, AudioGen, MAGNeT, JASCO, MultiBand Diffusion, and AudioSeal watermarking. It provides training and inference pipelines for text-to-music, text-to-sound, music continuation, style transfer, and symbolic conditioning (chords, drums, melody). The repository is primarily a research library with extensive configuration-driven training (Hydra/Dora), evaluation metrics (FAD, KLD, CLAP, ViSQOL), and interactive Gradio demos. It is not a production application but a collection of models, solvers, and utilities for audio generation research. The codebase is well-structured with modular components (conditioners, codebook patterns, audio effects) and includes unit tests, but relies on internal datasets and cluster paths that limit full reproducibility. Pretrained models are available via HuggingFace Hub for inference.

RATING8.0/10
QUALITY7.8/10
MAINTENANCEactive
DRIFTmedium
REPRODUCIBILITY4.5/10
CONTRIBUTORS38
VELOCITY0.24
OPEN ISSUES401
CLOSED ISSUES98
LAST COMMIT7 months ago
av (pip) ==11.0.0
einops (pip)
flashy (pip) >=0.0.1
hydra-core (pip) >=1.1
hydra_colorlog (pip)
julius (pip)
num2words (pip)
numpy (pip) <2.0.0
sentencepiece (pip)
spacy (pip) ==3.7.6
torch (pip) ==2.1.0
torchaudio (pip) >=2.0.0
huggingface_hub (pip)
tqdm (pip)
transformers (pip) >=4.31.0
xformers (pip) <0.0.23
demucs (pip)
librosa (pip)
soundfile (pip)
gradio (pip)
torchmetrics (pip)
encodec (pip)
protobuf (pip)
torchvision (pip) ==0.16.0
torchtext (pip) ==0.16.0
pesq (pip)
pystoi (pip)
torchdiffeq (pip)
Files by Type (count)
Python
175
YAML
72
Markdown
21
Other (.mp3)
8
Jupyter Notebook
6
HTML
5
Other (.wav)
4
Other (no ext)
2
Other (.th)
2
JSON
2
Git Ignore
1
Other (.in)
1
Files by Type (size)
Other (.wav)
4MB
Jupyter Notebook
4MB
Other (.th)
1MB
Python
1MB
Other (.mp3)
1MB
Markdown
145KB
YAML
69KB
Other (no ext)
19KB
HTML
7KB
Makefile
1KB
Other (.pkl)
1KB
CSS
1KB

The LLM identified 5 files worth highlighting for reuse:

A comprehensive conditioning module implementing text, waveform, and symbolic conditioners (T5, CLAP, chroma, chords, drums, melody). Provides a modular base class hierarchy (BaseConditioner, TextConditioner, WaveformConditioner, JointEmbeddingConditioner) with dropout utilities (AttributeDropout, ClassifierFreeGuidanceDropout) and a ConditionFuser for fusion. This pattern is reusable for any conditional generation task and demonstrates strong software engineering in a research context.

file: audiocraft/modules/conditioners.py ↗ | tags: #modular-design #conditioning-framework #dropout

Implements multiple codebook interleaving patterns (Parallel, Delayed, Unrolled, CoarseFirst, MusicLM) for residual vector quantization (RVQ) streams. The CodebooksPatternProvider hierarchy allows flexible sequence arrangement for autoregressive and non-autoregressive models. This is a reusable data engineering pattern for any multi-codebook audio tokenization system.

file: audiocraft/modules/codebooks_patterns.py ↗ | tags: #codebook-interleaving #pattern-provider #streaming

Provides robust audio I/O utilities (audio_read, audio_write) supporting multiple formats (wav, mp3, ogg, flac) via ffmpeg, with normalization strategies (peak, rms, loudness) and compression (mp3/ogg/flac). Includes convert_audio for sample rate/channel conversion and f32_pcm/i16_pcm for bit depth. This is a standalone, reusable audio processing module that solves common data engineering problems in audio pipelines.

file: audiocraft/data/audio_utils.py ↗ | tags: #audio-io #normalization #compression

Implements EmbeddingCache for precomputed embeddings (e.g., CLAP, chroma) with disk and memory caching, plus CachedBatchWriter/CachedBatchLoader for mini-batch caching during training. This pattern is reusable for any expensive feature extraction step in data pipelines, improving training efficiency.

file: audiocraft/utils/cache.py ↗ | tags: #embedding-cache #disk-cache #memory-cache

A data augmentation pipeline for audio with effects like speed change, reverb, echo, pink noise, filtering, and MP3 compression. Uses a straight-through estimator for differentiable compression. This is a reusable audio augmentation module that can be applied to any audio dataset for robustness training.

file: audiocraft/utils/audio_effects.py ↗ | tags: #data-augmentation #audio-effects #straight-through-estimator
Last analyzed: 2026-08-24 10:54:02.907561
Next check: 2026-08-31 10:54:02.905951
$ submit: