fearflixai / bgm.py
LittleLirow's picture
Upload 121 files
a37d72d
raw
history blame
1.01 kB
import gradio as gr
from audioldm import text_to_audio, build_model
model_id="haoheliu/AudioLDM-S-Full"
audioldm = None
current_model_name = None
def text2audio(text, duration, guidance_scale, random_seed, n_candidates, model_name="audioldm-m-text-ft"):
global audioldm, current_model_name
if audioldm is None or model_name != current_model_name:
audioldm=build_model(model_name=model_name)
current_model_name = model_name
# print(text, length, guidance_scale)
waveform = text_to_audio(
latent_diffusion=audioldm,
text=text,
seed=random_seed,
duration=duration,
guidance_scale=guidance_scale,
n_candidate_gen_per_text=int(n_candidates),
) # [bs, 1, samples]
waveform = [
gr.make_waveform((16000, wave[0]), bg_image="bg.png") for wave in waveform
]
# waveform = [(16000, np.random.randn(16000)), (16000, np.random.randn(16000))]
if(len(waveform) == 1):
waveform = waveform[0]
return waveform