# AudioCraft / MusicGen — générer de la musique en local

AudioCraft et MusicGen de Meta : générer de la musique depuis un texte, en local. Code MIT mais modèles CC-BY-NC 4.0 non commercial : ce qu'il faut savoir.

URL canonique : https://www.osfria.fr/audiocraft.html

---

OSIALab · Audio & musique

## AudioCraft / MusicGen — générer de la musique en local

AudioCraft est la suite de génération audio de Meta Research. Son modèle phare, **MusicGen**, compose de la musique originale à partir d'une description textuelle — **sur votre machine**, sans abonnement ni cloud. Point clé : le code est libre, mais les modèles sont sous licence **non commerciale**.

### Fiabilité & transparence

🟠 **Utilisable, mais projet ralenti/en pause**

- **Maintenance** : projet de recherche Meta, dernières mises à jour significatives du changelog courant 2024 ; les releases sont irrégulières et certaines fonctions expérimentales peuvent régresser entre versions — rythme typique d'un lab de recherche, pas d'un produit maintenu.
- **Adoption** : outil de référence pour la génération musicale open source locale ; installable via pip, modèles disponibles sur Hugging Face ; utilisé dans des démos artistiques et travaux de recherche.
- **Sécurité** : génération 100 % locale, aucun réseau sollicité ; aucune faille majeure connue — vérifiez la licence en vigueur sur la model card avant tout projet, les conditions des modèles pouvant évoluer.
- **Verdict** : excellent pour l'exploration et le prototypage musical en local, dans un cadre non commercial (licence CC-BY-NC 4.0 des poids) ; adapté à la création expérimentale, pas à la production en continu.

> Page informative, sans valeur de conseil. Ici, la distinction **licence du code** / **licence des modèles** est déterminante : les poids MusicGen sont en **CC-BY-NC 4.0** (non commercial). Lisez les points de vigilance avant tout projet.

### À quoi ça sert

AudioCraft réunit plusieurs modèles de génération audio de Meta : **MusicGen** (musique à partir de texte), **AudioGen** (bruitages et sons d'ambiance) et **EnCodec** (le codec neuronal qui sert de base à la génération). MusicGen est le plus utilisé : on décrit un style en quelques mots — « ballade piano mélancolique, tempo lent » — et il produit un extrait musical original. C'est un outil de prototypage, d'illustration sonore et de création expérimentale.

### Ce qui fait sa force

- **Du texte à la musique, en une description.** MusicGen génère un extrait cohérent à partir d'un prompt en langage naturel, sans connaissance musicale préalable.
- **Conditionnement par une mélodie.** Le modèle `melody` peut s'inspirer d'une mélodie de référence pour en proposer un arrangement — un vrai plus pour explorer des variations.
- **Plusieurs tailles de modèle.** De `small` (~300 Mo, rapide) à `large` (~3,3 Go, meilleure qualité), on ajuste au matériel disponible.
- **Une suite cohérente.** Musique (MusicGen), ambiances et effets (AudioGen), compression (EnCodec) partagent la même base de code — pratique pour aller au-delà de la seule mélodie.
- **100 % local.** La génération se fait sur votre poste ; aucun prompt ni aucune création ne part vers un service tiers.

### Pour qui

Pour les créatifs, développeurs et musiciens qui veulent expérimenter la génération musicale par IA sans service en ligne — **à condition de rester dans un cadre non commercial**, du fait de la licence des modèles (voir plus bas). Un GPU est recommandé pour des temps de génération raisonnables ; Python et pip sont nécessaires.

### Installation

#### Prérequis

Python 3.9+, `pip` et PyTorch. GPU NVIDIA recommandé (≈ 8 Go de VRAM pour les modèles medium/large). Fonctionne sur CPU, mais lentement.

#### Installer AudioCraft

```
pip install audiocraft
```

#### Générer un extrait avec MusicGen

```
from audiocraft.models import MusicGen
from audiocraft.data.audio import audio_write

model = MusicGen.get_pretrained("facebook/musicgen-small")
model.set_generation_params(duration=8)   # durée en secondes

descriptions = ["une melodie de piano relaxante, tempo lent, style classique"]
wav = model.generate(descriptions)

audio_write("sortie", wav[0].cpu(), model.sample_rate, strategy="loudness")
```

#### Générer à partir d'une mélodie de référence

```
from audiocraft.models import MusicGen
from audiocraft.data.audio import audio_read, audio_write

model = MusicGen.get_pretrained("facebook/musicgen-melody")
model.set_generation_params(duration=8)

melody, sr = audio_read("ma_melodie.wav")
wav = model.generate_with_chroma(
    ["arrangement jazz inspire de cette melodie"],
    melody.unsqueeze(0), sr,
)
audio_write("sortie", wav[0].cpu(), model.sample_rate, strategy="loudness")
```

#### Modèles disponibles

```
# facebook/musicgen-small   ~300 Mo  — rapide, utilisable sur CPU
# facebook/musicgen-medium  ~1,5 Go  — meilleure qualité
# facebook/musicgen-large   ~3,3 Go  — qualité maximale
# facebook/musicgen-melody           — conditionné par une mélodie
# Tous ces poids sont sous CC-BY-NC 4.0 (non commercial).
```

### Points de vigilance

AudioCraft tourne en local : rien ne part en ligne. Le point déterminant ici est la **licence des modèles**, distincte de celle du code, à laquelle s'ajoute la question du statut juridique d'une œuvre générée.

| Point d'attention | Niveau | Ce qu'il faut savoir |
| --- | --- | --- |
| Modèles en licence NON commerciale | 🔴 bloquant pour un usage pro | Le **code AudioCraft est sous MIT**, mais les **poids MusicGen / AudioGen sont sous CC-BY-NC 4.0** : *non commercial*. Utiliser la musique générée dans un produit, une publicité, une vidéo monétisée ou toute activité commerciale n'est pas couvert par cette licence. Pour un usage commercial, il faut une autre source de modèles ou un accord spécifique. |
| Bibliothèque de recherche — développement irrégulier | 🟡 cadre à surveiller | AudioCraft est un projet de recherche Meta, pas un produit maintenu au rythme d'un logiciel grand public. Les mises à jour arrivent par à-coups, et certaines fonctions expérimentales peuvent régresser ou disparaître entre deux versions. Vérifiez la compatibilité de votre environnement à chaque mise à jour majeure. |
| Exigences GPU élevées | 🟡 matériel conseillé | Les modèles medium et large demandent environ 8 Go de VRAM. Sur CPU, la génération est lente (plusieurs minutes par extrait de quelques secondes) — réservez le mode CPU à l'exploration ou aux petits modèles. |
| Statut juridique de l'œuvre générée | 🟡 cadre encore mouvant | La protection par le droit d'auteur d'une musique produite par IA reste discutée : en France, seule une œuvre de l'esprit humain est protégée. Avant d'exploiter une création, prenez un avis adapté à votre situation. |
| Mention de l'origine IA | 🟡 bonne pratique & obligation émergente | Signalez qu'une musique est générée par IA lorsque vous la diffusez — transparence attendue, et obligation qui se dessine au niveau européen (AI Act). |

### Sécurité

- **Installez depuis PyPI officiel et Hugging Face officiel.** Les poids sont téléchargés au premier lancement depuis Hugging Face.
- **Vérifiez la licence en vigueur sur la model card** avant tout projet : les conditions des modèles peuvent évoluer.
- **Vos créations restent locales** ; gérez-les comme n'importe quel fichier de travail.

### Aller plus loin

- [Demucs](https://www.osfria.fr/demucs.html) — à l'inverse, séparer les pistes d'un morceau existant.
- [Bark](https://www.osfria.fr/bark.html) — générer voix et audio expressif en local.
- [FFmpeg](https://www.osfria.fr/ffmpeg.html) — convertir et assembler les fichiers audio produits.
- [OSIALab](https://www.osfria.fr/osialab.html) — tous les outils audio et musique.

### Sources

- Code source & licence (MIT) : [github.com/facebookresearch/audiocraft](https://github.com/facebookresearch/audiocraft)
- Modèle & licence des poids (CC-BY-NC 4.0) : [huggingface.co/facebook/musicgen-large](https://huggingface.co/facebook/musicgen-large)
