~scriptsaifacebookaudiocraftdemos
3 itemsDownload ./*

..
ana-custom.py
anamusicapi3.py
grokmusicgenapi.txt


demosana-custom.py
2 KB• 5•  2 months ago•  DownloadRawClose
2 months ago•  5

{}
from einops import rearrange
import torch

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


#!pip install audiocraft
#pip install git+https://github.com/facebookresearch/audiocraft.git
import torch
import torchaudio
from audiocraft.models import MusicGen
from audiocraft.data.audio import audio_write
from audiocraft.utils.notebook import display_audio

#version='facebook/musicgen-melody'
version='facebook/musicgen-small'

print("Loading model", version)

#get the pre-trained model
model = MusicGen.get_pretrained(version, device='cuda')

#def predict_full(model, model_path, decoder, text, melody, duration, topk, topp, temperature, cfg_coef, progress=gr.Progress()):


#The pre trained models are:
#facebook/musicgen-small: 300M model, text to music only - 🤗 Hub
#facebook/musicgen-medium: 1.5B model, text to music only - 🤗 Hub
#facebook/musicgen-melody: 1.5B model, text to music and text+melody to music - 🤗 Hub
#facebook/musicgen-large: 3.3B model, text to music only - 🤗 Hub
    
model.set_generation_params(duration=90)  # generate N seconds.
wav = model.generate_unconditional(4)    # generates 4 unconditional audio samples for each description

#Give the descriptions Text to music 
descriptions = ['chillstep, calm synth, droplets', 
                'new wave 80s chillstep, strong emotion', 
                'darkest depths of space, feeling uneasy', 
               'uplifting, orchestral, drums, classic, instrumental',]
   
# Epic orchestral music, large orchestras and grand sweeping melody, atmosphere
# ambient theme, a swelling violin until the beat rushes into urgency
# a slow orchestral buildup where there is an epic choir near the end
# orchestral, classic, instrumental
   
#Generate the music
wav = model.generate(descriptions,progress=True)  

#display the audio
#display_audio(wav, 32000)

#write audio(s)
for idx, one_wav in enumerate(wav):
    # Will save under {idx}.wav, with loudness normalization at -14 db LUFS.
    audio_write(f'{idx}', one_wav.cpu(), model.sample_rate, strategy="loudness", loudness_compressor=True)

Top
©twily.info 2013 - 2025
twily at twily dot info



2 335 223 visits
... ^ v