chong.zhang commited on
Commit
8ae3c92
·
1 Parent(s): 6487b24
Files changed (2) hide show
  1. app.py +6 -18
  2. requirements.txt +1 -1
app.py CHANGED
@@ -101,7 +101,7 @@ default_prompts = [
101
  "Create an emotional, introspective folk song with acoustic guitar and soft vocals."
102
  ]
103
 
104
- def cut_audio(audio_file, cut_seconds=5):
105
  audio, sr = torchaudio.load(audio_file)
106
  num_samples = cut_seconds * sr
107
  cutted_audio = audio[:, :num_samples]
@@ -109,7 +109,7 @@ def cut_audio(audio_file, cut_seconds=5):
109
  torchaudio.save(output_path, cutted_audio, sr)
110
  return output_path
111
 
112
- def run_text2music(text, model_name, chorus,
113
  output_sample_rate, max_generate_audio_seconds):
114
  args = get_args(
115
  task='text-to-music', text=text, audio=None,
@@ -118,10 +118,10 @@ def run_text2music(text, model_name, chorus,
118
  max_generate_audio_seconds=max_generate_audio_seconds)
119
  return music_generation(args)
120
 
121
- def run_continuation(text, audio, model_name, chorus,
122
  output_sample_rate, max_generate_audio_seconds):
123
  args = get_args(
124
- task='continuation', text=text, audio=cut_audio(audio, cut_seconds=5),
125
  model_name=model_name, chorus=chorus,
126
  output_sample_rate=output_sample_rate,
127
  max_generate_audio_seconds=max_generate_audio_seconds)
@@ -158,7 +158,7 @@ def main():
158
 
159
  with gr.Row():
160
  button = gr.Button("Text to Music")
161
- button.click(run_text2music,
162
  inputs=[text_input, model_name,
163
  chorus,
164
  output_sample_rate,
@@ -166,24 +166,12 @@ def main():
166
  outputs=music_output)
167
 
168
  generate_button = gr.Button("Music Continuation")
169
- generate_button.click(run_continuation,
170
  inputs=[text_input, audio_input, model_name,
171
  chorus,
172
  output_sample_rate,
173
  max_generate_audio_seconds],
174
  outputs=music_output)
175
-
176
- # with gr.Column():
177
- # default_prompt_buttons = []
178
- # for prompt in default_prompts:
179
- # button = gr.Button(value=prompt)
180
- # button.click(run_text2music,
181
- # inputs=[text_input, model_name,
182
- # chorus,
183
- # output_sample_rate,
184
- # max_generate_audio_seconds],
185
- # outputs=music_output)
186
- # default_prompt_buttons.append(button)
187
  demo.launch()
188
 
189
  if __name__ == '__main__':
 
101
  "Create an emotional, introspective folk song with acoustic guitar and soft vocals."
102
  ]
103
 
104
+ def trim_audio(audio_file, cut_seconds=5):
105
  audio, sr = torchaudio.load(audio_file)
106
  num_samples = cut_seconds * sr
107
  cutted_audio = audio[:, :num_samples]
 
109
  torchaudio.save(output_path, cutted_audio, sr)
110
  return output_path
111
 
112
+ def demo_inspiremusic_t2m(text, model_name, chorus,
113
  output_sample_rate, max_generate_audio_seconds):
114
  args = get_args(
115
  task='text-to-music', text=text, audio=None,
 
118
  max_generate_audio_seconds=max_generate_audio_seconds)
119
  return music_generation(args)
120
 
121
+ def demo_inspiremusic_con(text, audio, model_name, chorus,
122
  output_sample_rate, max_generate_audio_seconds):
123
  args = get_args(
124
+ task='continuation', text=text, audio=trim_audio(audio, cut_seconds=5),
125
  model_name=model_name, chorus=chorus,
126
  output_sample_rate=output_sample_rate,
127
  max_generate_audio_seconds=max_generate_audio_seconds)
 
158
 
159
  with gr.Row():
160
  button = gr.Button("Text to Music")
161
+ button.click(demo_inspiremusic_t2m,
162
  inputs=[text_input, model_name,
163
  chorus,
164
  output_sample_rate,
 
166
  outputs=music_output)
167
 
168
  generate_button = gr.Button("Music Continuation")
169
+ generate_button.click(demo_inspiremusic_con,
170
  inputs=[text_input, audio_input, model_name,
171
  chorus,
172
  output_sample_rate,
173
  max_generate_audio_seconds],
174
  outputs=music_output)
 
 
 
 
 
 
 
 
 
 
 
 
175
  demo.launch()
176
 
177
  if __name__ == '__main__':
requirements.txt CHANGED
@@ -20,7 +20,7 @@ rich==13.7.1
20
  soundfile==0.12.1
21
  tensorboard==2.14.0
22
  torch==2.0.1
23
- torchaudio==2.0.2
24
  uvicorn==0.30.0
25
  wget==3.2
26
  WeTextProcessing==1.0.3
 
20
  soundfile==0.12.1
21
  tensorboard==2.14.0
22
  torch==2.0.1
23
+ torchaudio==2.0.1
24
  uvicorn==0.30.0
25
  wget==3.2
26
  WeTextProcessing==1.0.3