← Zurück zur Bibliothek
Audio-KI Anbieter: Meta AI

AudioCraft

AudioCraft ist Meta AIs leistungsstarkes Open-Source-Framework für Audiogenerierung, das im August 2023 als einheitliches Toolkit für Musik, Soundeffekte und allgemeine Audiosynthese veröffentlicht wurde. Die Suite umfasst drei Hauptmodelle: MusicGen für steuerbare Musikgenerierung aus Text-Prompts oder melodischer Konditionierung, AudioGen für Umgebungsgeräusche und Soundeffekte, und EnCodec für hochauflösende neurale Audiokompression bei sehr niedrigen Bitraten. Aufgebaut auf Transformer- und Diffusions-Architekturen mit State-of-the-Art-Audioqualität, ermöglicht AudioCraft Entwicklern, Musikern und Sound-Designern die Generierung professioneller Audioinhalte mit einfachen Textbeschreibungen oder Referenz-Audio. Das Framework unterstützt Stereo-Ausgabe, Langform-Generierung bis zu mehreren Minuten und Fine-Tuning auf benutzerdefinierten Datensätzen, was es ideal für Spiele-Audio, Filmproduktion, Musikerstellung, Podcast-Enhancement und Barrierefreiheits-Anwendungen macht, die synthetische Audiogenerierung erfordern.

AudioCraft
audiogenerierung musiksynthese soundeffekte neural-codec open-source text-zu-audio

Überblick

AudioCraft repräsentiert Meta AIs umfassenden Ansatz für generatives Audio und bietet Forschern, Entwicklern und Kreativen professionelle Tools zur Synthese von Musik, Soundeffekten und allgemeinem Audio aus textuellen Beschreibungen oder Referenz-Audio. Im August 2023 als Open-Source-Projekt veröffentlicht, konsolidiert AudioCraft modernste Forschung in der Audiogenerierung in einem einheitlichen, zugänglichen Framework, das hochwertige Audiosynthese demokratisiert, die zuvor nur Professionellen mit teuren Sample-Libraries und Produktions-Tools zur Verfügung stand.

Die AudioCraft-Suite besteht aus drei komplementären Modellen, die zusammenarbeiten: MusicGen generiert Musik in verschiedenen Stilen aus Text-Prompts oder melodischer Konditionierung und ist in der Lage, kohärente Kompositionen mit Instrumentation, Rhythmus und harmonischer Struktur zu produzieren; AudioGen spezialisiert sich auf Umgebungsgeräusche und Soundeffekte, von realistischem Ambient-Rauschen bis zu spezifischen Audio-Events wie Schritten oder Donner; und EnCodec, ein neuraler Audio-Codec, der Audio auf extrem niedrige Bitraten (1,5-12 kbps) komprimiert und dabei die Wahrnehmungsqualität beibehält und als Grundlage für effiziente Audiogenerierung dient.

Was AudioCraft auszeichnet, ist der Fokus auf Steuerbarkeit und Qualität. MusicGen unterstützt sowohl reine Text-Generierung als auch melodische Konditionierung, bei der Benutzer eine Referenzmelodie bereitstellen, der das Modell folgt, während der angegebene Stil angewendet wird. AudioGen produziert hochauflösende Soundeffekte mit präziser Kontrolle über Dauer und Eigenschaften. Alle Modelle sind vollständig Open-Source unter der MIT-Lizenz, was kommerzielle Nutzung, Fine-Tuning auf benutzerdefinierten Datensätzen und Integration in Produktionsanwendungen ohne Lizenzierungsbeschränkungen ermöglicht.

Hauptmerkmale

  • MusicGen: Text-zu-Musik-Generierung mit melodischer Konditionierung
  • AudioGen: Umgebungsgeräusche und Soundeffekt-Synthese
  • EnCodec: Hochwertige neurale Audiokompression bei 1,5-12 kbps
  • Stereo-Audio-Ausgabe bei 32kHz oder 48kHz Sample-Rate
  • Langform-Generierung bis zu mehreren Minuten
  • Steuerbare Dauer, Stil und Instrumentation
  • Melodische Konditionierung für konsistente musikalische Themen
  • Fine-Tuning-Unterstützung für benutzerdefinierte Audio-Datensätze
  • Echtzeit-Generierungsfähigkeiten auf modernen GPUs
  • Open-Source-MIT-Lizenz für kommerzielle Nutzung
  • Integration mit Hugging Face Transformers
  • Gradio-Web-Interface für interaktive Experimente

Anwendungsfälle

  • Videospiel-Hintergrundmusik und adaptive Soundtracks
  • Film- und Videoproduktions-Soundeffekte
  • Podcast-Intro/Outro-Musik und Übergänge
  • YouTube-Video-Hintergrundmusik ohne Urheberrechtsprobleme
  • Spiele-Audio: Schritte, Ambienzen, UI-Sounds
  • Werbe- und Marketing-Audio-Branding
  • Musik-Prototyping und Kompositions-Ideenfindung
  • E-Learning-Content-Audio-Enhancement
  • Audio-Library-Erstellung für Content-Ersteller
  • Barrierefreiheit: Audio-Beschreibungen und Soundscapes
  • Musiktherapie und Wellness-Anwendungen
  • Schnelles Audio-Prototyping für kreative Projekte

Technische Spezifikationen

AudioCrafts Modelle basieren auf Transformer-Architekturen mit variierenden Parameterzahlen: MusicGen reicht von 300M bis 3,3B Parametern über kleine, mittlere und große Varianten hinweg und tauscht Qualität gegen Generierungsgeschwindigkeit. AudioGen verwendet eine ähnliche Architektur, die für kürzere, präzisere Sound-Events optimiert ist. EnCodec arbeitet bei 24kHz oder 48kHz mit residualer Vektor-Quantisierung (RVQ), die hochkomprimierte diskrete Repräsentationen erzeugt. Die Generierungsgeschwindigkeit auf einer NVIDIA A100 GPU reicht von 1x Echtzeit (1 Sekunde Audio pro Sekunde generieren) für kleine Modelle bis 0,1x Echtzeit für große Modelle. Speicheranforderungen variieren von 8GB VRAM für kleine Modelle bis 24GB+ für große Stereo-Modelle. Die Modelle generieren Audio standardmäßig bei 32kHz Sample-Rate mit optionalem 48kHz für höhere Fidelity-Anwendungen. Alle Komponenten sind in PyTorch implementiert mit Unterstützung für FP16-Inferenz für verbesserte Performance auf modernen GPUs.

Modellvarianten

MusicGen ist in drei Größen verfügbar: Small (300M Parameter) für schnelles Prototyping, Medium (1,5B) für Balance zwischen Qualität und Geschwindigkeit, und Large (3,3B) für maximale Qualität. Jede Variante unterstützt sowohl Mono- als auch Stereo-Generierung. Melodie-konditionierte Varianten akzeptieren Referenz-Audio zur Führung der musikalischen Struktur bei gleichzeitiger Anwendung des Stils aus Text-Prompts. AudioGen bietet ein einzelnes optimiertes Modell fokussiert auf Soundeffekte und Umgebungs-Audio. EnCodec bietet mehrere Bitraten-Konfigurationen von 1,5kbps (extreme Kompression) bis 12kbps (hohe Fidelity), was Benutzern erlaubt, Dateigröße gegen Audioqualität basierend auf Anwendungsanforderungen zu tauschen.

Preise und Lizenzierung

AudioCraft ist vollständig kostenlos und Open-Source unter der MIT-Lizenz, was unbegrenzte kommerzielle Nutzung, Modifikation und Distribution ohne Lizenzgebühren oder Attributionsanforderungen erlaubt. Benutzer können auf ihrer eigenen Infrastruktur selbst hosten und eliminieren dadurch pro-Generierungs-Kosten. Cloud-Anbieter bieten gehostete Endpunkte: Hugging Face Inference API berechnet etwa 0,50-1,00$ pro GPU-Stunde, Replicate berechnet ungefähr 0,0002-0,0008$ pro Sekunde generierten Audios abhängig von Modellgröße und Qualität. Für Produktions-Workloads, die 50+ Minuten täglich generieren, bietet Self-Hosting auf AWS p3.2xlarge (~3$/Stunde), GCP T4 (~0,35$/Stunde) oder RunPod RTX 4090 (~0,40$/Stunde) bessere Wirtschaftlichkeit als Pay-per-Generation-Cloud-APIs.

Code-Beispiel: Musik- und Soundeffekt-Generierung

Setzen Sie AudioCraft für Produktions-Audiogenerierungs-Workflows ein mit MusicGen für adaptive Musik und AudioGen für dynamische Soundeffekte. Dieses Beispiel demonstriert sowohl textbasierte als auch melodie-konditionierte Generierung für Spiele-Audio und Videoproduktion.

import torch
import torchaudio
from audiocraft.models import MusicGen, AudioGen
from audiocraft.data.audio import audio_write
from pathlib import Path
import numpy as np

class AudioCraftGenerator:
    """
    Produktions-Audio-Generator mit AudioCraft (MusicGen + AudioGen)
    """
    
    def __init__(self, music_model="facebook/musicgen-medium", device="cuda"):
        self.device = device
        print(f"Lade MusicGen-Modell: {music_model}")
        self.music_model = MusicGen.get_pretrained(music_model, device=device)
        
        print("Lade AudioGen-Modell...")
        self.audio_model = AudioGen.get_pretrained("facebook/audiogen-medium", device=device)
        
        self.output_dir = Path("audiocraft_output")
        self.output_dir.mkdir(parents=True, exist_ok=True)
        
        print("Modelle erfolgreich geladen\n")
    
    def generate_music(
        self,
        prompt: str,
        duration: float = 10.0,
        melody_path: str = None,
        temperature: float = 1.0,
        top_k: int = 250,
        top_p: float = 0.0,
        cfg_coef: float = 3.0
    ) -> Path:
        """
        Musik aus Text-Prompt mit optionaler Melodie-Konditionierung generieren
        
        Args:
            prompt: Textbeschreibung der gewünschten Musik
            duration: Länge in Sekunden (bis 300)
            melody_path: Optionaler Pfad zu Melodie-Referenz-Audio
            temperature: Sampling-Temperatur (höher = zufälliger)
            top_k: Top-k Sampling-Parameter
            top_p: Top-p (Nucleus) Sampling-Parameter
            cfg_coef: Classifier-free Guidance-Koeffizient (höher = stärkere Prompt-Befolgung)
        
        Returns:
            Pfad zur generierten Audiodatei
        """
        print(f"Generiere Musik: '{prompt}'")
        print(f"Dauer: {duration}s, CFG: {cfg_coef}")
        
        # Generierungsparameter setzen
        self.music_model.set_generation_params(
            duration=duration,
            temperature=temperature,
            top_k=top_k,
            top_p=top_p,
            cfg_coef=cfg_coef
        )
        
        # Mit oder ohne Melodie-Konditionierung generieren
        if melody_path:
            print(f"Verwende Melodie-Konditionierung von: {melody_path}")
            melody, sr = torchaudio.load(melody_path)
            
            # Resamplen wenn nötig
            if sr != self.music_model.sample_rate:
                resampler = torchaudio.transforms.Resample(sr, self.music_model.sample_rate)
                melody = resampler(melody)
            
            # Mit Melodie-Konditionierung generieren
            output = self.music_model.generate_with_chroma(
                descriptions=[prompt],
                melody_wavs=melody[None],
                melody_sample_rate=self.music_model.sample_rate
            )
        else:
            # Nur aus Text generieren
            output = self.music_model.generate([prompt])
        
        # Audio speichern
        filename = f"musik_{prompt[:30].replace(' ', '_')}"
        output_path = self.output_dir / filename
        
        audio_write(
            str(output_path),
            output[0].cpu(),
            self.music_model.sample_rate,
            strategy="loudness",
            loudness_compressor=True
        )
        
        print(f"Musik generiert: {output_path}.wav\n")
        return Path(f"{output_path}.wav")
    
    def generate_sound_effect(
        self,
        prompt: str,
        duration: float = 5.0,
        temperature: float = 1.0,
        cfg_coef: float = 3.0
    ) -> Path:
        """
        Soundeffekte mit AudioGen generieren
        
        Args:
            prompt: Beschreibung des Soundeffekts
            duration: Länge in Sekunden
            temperature: Sampling-Temperatur
            cfg_coef: Guidance-Stärke
        
        Returns:
            Pfad zum generierten Soundeffekt
        """
        print(f"Generiere Soundeffekt: '{prompt}'")
        print(f"Dauer: {duration}s")
        
        # Generierungsparameter setzen
        self.audio_model.set_generation_params(
            duration=duration,
            temperature=temperature,
            cfg_coef=cfg_coef
        )
        
        # Soundeffekt generieren
        output = self.audio_model.generate([prompt])
        
        # Audio speichern
        filename = f"sfx_{prompt[:30].replace(' ', '_')}"
        output_path = self.output_dir / filename
        
        audio_write(
            str(output_path),
            output[0].cpu(),
            self.audio_model.sample_rate,
            strategy="loudness"
        )
        
        print(f"Soundeffekt generiert: {output_path}.wav\n")
        return Path(f"{output_path}.wav")

# Beispiel 1: Spiele-Hintergrundmusik
generator = AudioCraftGenerator(music_model="facebook/musicgen-medium")

# Adaptive Spiele-Musik generieren
generator.generate_music(
    prompt="Epische orchestrale Kampfmusik mit intensiven Trommeln und Blechbläsern, heroisches Thema, schnelles Tempo",
    duration=90.0,
    cfg_coef=4.0  # Starke Prompt-Befolgung
)

generator.generate_music(
    prompt="Friedliche Ambient-Musik für Erkundung, sanftes Klavier und Streicher, ruhige Atmosphäre",
    duration=120.0,
    cfg_coef=3.5
)

# Beispiel 2: Soundeffekte-Library
sfx_prompts = [
    "Schritte auf Holzboden, gleichmäßiges Tempo",
    "Tür knarrt langsam auf",
    "Schwertschwung und Metall klirrt",
    "Zauberspruch mit Funken",
    "Explosion mit fallendem Schutt",
    "Münzen-Pickup-Sound, hell und klar",
    "UI-Button-Klick, zufriedenstellendes Feedback",
    "Donner und starker Regen",
    "Feuer knistert",
    "Wasser plätschert"
]

for prompt in sfx_prompts:
    generator.generate_sound_effect(prompt, duration=3.0)

print(f"\nAlle Audiogenerierung abgeschlossen!")
print(f"Ausgabe-Verzeichnis: {generator.output_dir}")

Professionelle Integrations-Services von 21medien

Der Einsatz von AudioCraft für professionelle Audioproduktion erfordert Expertise in Modell-Fine-Tuning, Audio-Nachbearbeitung und Produktions-Pipeline-Integration. 21medien bietet umfassende Services, um Spiele-Studios, Filmproduzenten und Content-Erstellern zu helfen, AudioCrafts Musik- und Sound-Generierungsfähigkeiten für skalierbare Audio-Content-Erstellung zu nutzen.

Unsere Services umfassen: AudioCraft Self-Hosting-Infrastruktur mit GPU-optimiertem Deployment für kosteneffektive Hochvolumen-Audiogenerierung, Custom Model Fine-Tuning auf Ihren proprietären Audio-Datensätzen zur Erstellung markenspezifischer musikalischer Stile und Sound-Signaturen, Audio-Pipeline-Automatisierung zur Integration von AudioCraft mit Game-Engines (Unity, Unreal), DAWs (Ableton, Logic Pro) und Content-Management-Systemen, Qualitätsverbesserungs-Nachbearbeitung einschließlich Mastering, Format-Konvertierung und adaptiver Audio-Implementierung für interaktive Anwendungen, Adaptive Audio-System-Entwicklung zur Erstellung dynamischer Musiksysteme, die auf Gameplay oder Narrative-Events reagieren, Performance-Optimierung mit Implementierung von Batch-Generierung, Caching-Strategien und GPU-Orchestrierung zur Maximierung des Durchsatzes, und Trainingsprogramme für Audio-Designer und Komponisten zu Prompt-Engineering, melodischer Konditionierung und iterativen Verfeinerungstechniken speziell für AudioCraft.

Ob Sie eine komplette Spiele-Audio-Produktions-Pipeline, ein Film-Soundeffekte-Library-Generierungssystem oder eine benutzerdefinierte Musiksynthese-Integration benötigen - unser Team von Audio-Ingenieuren und KI-Spezialisten steht bereit. Vereinbaren Sie ein kostenloses Beratungsgespräch über unsere Kontaktseite, um Ihre Audio-KI-Anforderungen zu besprechen und zu erkunden, wie AudioCraft Ihren Audio-Produktions-Workflow transformieren kann.

Ressourcen und Links

Offizielle Website: https://audiocraft.metademolab.com/ | GitHub: https://github.com/facebookresearch/audiocraft | Dokumentation: https://github.com/facebookresearch/audiocraft/blob/main/docs/MUSICGEN.md | Demo: https://huggingface.co/spaces/facebook/MusicGen | Research Paper: https://arxiv.org/abs/2306.05284