nastasiasnk commited on
Commit
dcee3e6
·
verified ·
1 Parent(s): 39a6ba3

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +43 -1
app.py CHANGED
@@ -1,3 +1,5 @@
 
 
1
  import streamlit as st
2
  from transformers import pipeline
3
 
@@ -6,4 +8,44 @@ text = st.text_area("some text")
6
 
7
  if text:
8
  out = pipe(text)
9
- st.json(out)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ """
3
  import streamlit as st
4
  from transformers import pipeline
5
 
 
8
 
9
  if text:
10
  out = pipe(text)
11
+ st.json(out)
12
+
13
+ """
14
+
15
+ import torch
16
+ import torchaudio
17
+ from einops import rearrange
18
+ from stable_audio_tools import get_pretrained_model
19
+ from stable_audio_tools.inference.generation import generate_diffusion_cond
20
+
21
+ device = "cuda" if torch.cuda.is_available() else "cpu"
22
+
23
+ # Download model
24
+ model, model_config = get_pretrained_model("stabilityai/stable-audio-open-1.0")
25
+ sample_rate = model_config["sample_rate"]
26
+ sample_size = model_config["sample_size"]
27
+
28
+ model = model.to(device)
29
+
30
+ # Set up text and timing conditioning
31
+ conditioning = [{
32
+ "prompt": "128 BPM tech house drum loop",
33
+ }]
34
+
35
+ # Generate stereo audio
36
+ output = generate_diffusion_cond(
37
+ model,
38
+ conditioning=conditioning,
39
+ sample_size=sample_size,
40
+ device=device
41
+ )
42
+
43
+ # Rearrange audio batch to a single sequence
44
+ output = rearrange(output, "b d n -> d (b n)")
45
+
46
+ # Peak normalize, clip, convert to int16, and save to file
47
+ output = output.to(torch.float32).div(torch.max(torch.abs(output))).clamp(-1, 1).mul(32767).to(torch.int16).cpu()
48
+ torchaudio.save("output.wav", output, sample_rate)
49
+
50
+
51
+