add waveform and bg_color params
Browse files
app.py
CHANGED
@@ -6,7 +6,7 @@ import io
|
|
6 |
import librosa
|
7 |
import tempfile
|
8 |
|
9 |
-
def extract_waveform_animation(audio_file, window_seconds=5):
|
10 |
y, sr = librosa.load(audio_file, sr=None)
|
11 |
duration = librosa.get_duration(y=y, sr=sr)
|
12 |
FPS = 1
|
@@ -18,7 +18,8 @@ def extract_waveform_animation(audio_file, window_seconds=5):
|
|
18 |
first_window = y[:window_length]
|
19 |
x_vals = np.linspace(0, duration, num=len(y))
|
20 |
ax.set_axis_off()
|
21 |
-
|
|
|
22 |
|
23 |
def init():
|
24 |
ax.set_xlim(0, window_seconds)
|
@@ -53,7 +54,9 @@ iface = gr.Interface(
|
|
53 |
fn=extract_waveform_animation,
|
54 |
inputs=[
|
55 |
gr.Audio(type="filepath"),
|
56 |
-
gr.Slider(1, 10, value=5, step=1, label="Window Size (seconds)")
|
|
|
|
|
57 |
],
|
58 |
outputs=gr.Image(),
|
59 |
description="Scroll through audio waveform with a moving window."
|
|
|
6 |
import librosa
|
7 |
import tempfile
|
8 |
|
9 |
+
def extract_waveform_animation(audio_file, window_seconds=5, waveform_color="blue", bg_color="#00FFFF00"):
|
10 |
y, sr = librosa.load(audio_file, sr=None)
|
11 |
duration = librosa.get_duration(y=y, sr=sr)
|
12 |
FPS = 1
|
|
|
18 |
first_window = y[:window_length]
|
19 |
x_vals = np.linspace(0, duration, num=len(y))
|
20 |
ax.set_axis_off()
|
21 |
+
ax.set_facecolor(waveform_color)
|
22 |
+
fig.set_facecolor(bg_color)
|
23 |
|
24 |
def init():
|
25 |
ax.set_xlim(0, window_seconds)
|
|
|
54 |
fn=extract_waveform_animation,
|
55 |
inputs=[
|
56 |
gr.Audio(type="filepath"),
|
57 |
+
gr.Slider(1, 10, value=5, step=1, label="Window Size (seconds)"),
|
58 |
+
gr.ColorPicker(value="blue", label="Waveform Color"),
|
59 |
+
gr.ColorPicker(value="#00FFFF00", label="Background Color")
|
60 |
],
|
61 |
outputs=gr.Image(),
|
62 |
description="Scroll through audio waveform with a moving window."
|