fvbarros commited on
Commit
8b98250
·
verified ·
1 Parent(s): a641009

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +21 -8
app.py CHANGED
@@ -1,19 +1,32 @@
1
  import gradio as gr
2
- from audiocraft.models import AudioGen
3
  from audiocraft.data.audio import audio_write
4
  import torchaudio
5
  import tempfile
6
- import os
7
 
8
- model = AudioGen.get_pretrained('facebook/audiogen-medium')
9
- model.set_generation_params(duration=5)
 
10
 
11
- def generate_audio(prompt):
12
- wav = model.generate([prompt])[0]
 
 
 
 
 
 
 
 
 
 
13
  with tempfile.NamedTemporaryFile(delete=False, suffix=".wav") as fp:
14
- audio_write(fp.name, wav.cpu(), model.sample_rate)
15
  return fp.name
16
 
17
- demo = gr.Interface(fn=generate_audio, inputs=gr.Text(label="Prompt de áudio"), outputs=gr.Audio(type="filepath"))
 
18
 
 
 
19
  demo.launch()
 
1
  import gradio as gr
2
+ from audiocraft.models import MusicGen, AudioGen
3
  from audiocraft.data.audio import audio_write
4
  import torchaudio
5
  import tempfile
 
6
 
7
+ # Carregar modelos
8
+ musicgen = MusicGen.get_pretrained('facebook/musicgen-small')
9
+ audiogen = AudioGen.get_pretrained('facebook/audiogen-medium')
10
 
11
+ # Definir duração padrão
12
+ musicgen.set_generation_params(duration=5)
13
+ audiogen.set_generation_params(duration=5)
14
+
15
+ def generate_music(prompt):
16
+ wav = musicgen.generate([prompt])[0]
17
+ with tempfile.NamedTemporaryFile(delete=False, suffix=".wav") as fp:
18
+ audio_write(fp.name, wav.cpu(), musicgen.sample_rate)
19
+ return fp.name
20
+
21
+ def generate_sound_effect(prompt):
22
+ wav = audiogen.generate([prompt])[0]
23
  with tempfile.NamedTemporaryFile(delete=False, suffix=".wav") as fp:
24
+ audio_write(fp.name, wav.cpu(), audiogen.sample_rate)
25
  return fp.name
26
 
27
+ music_interface = gr.Interface(fn=generate_music, inputs=gr.Text(label="Prompt para música"), outputs=gr.Audio(type="filepath"), title="🎵 MusicGen")
28
+ sound_interface = gr.Interface(fn=generate_sound_effect, inputs=gr.Text(label="Prompt para efeito sonoro"), outputs=gr.Audio(type="filepath"), title="🔊 AudioGen")
29
 
30
+ # Interface combinada
31
+ demo = gr.TabbedInterface([music_interface, sound_interface], ["MusicGen", "AudioGen"])
32
  demo.launch()