Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -62,7 +62,20 @@ def gen_tts(text, description):
|
|
62 |
do_sample=True,
|
63 |
temperature=1.0,
|
64 |
)
|
|
|
|
|
65 |
audio_arr = generation.cpu().numpy().squeeze()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
66 |
return SAMPLE_RATE, audio_arr # Return sample rate and audio array
|
67 |
except Exception as e:
|
68 |
print(f"Error in TTS generation: {str(e)}")
|
@@ -90,4 +103,4 @@ with gr.Blocks() as block:
|
|
90 |
|
91 |
# Launch the interface
|
92 |
block.queue()
|
93 |
-
block.launch()
|
|
|
62 |
do_sample=True,
|
63 |
temperature=1.0,
|
64 |
)
|
65 |
+
|
66 |
+
# Extract the generated audio
|
67 |
audio_arr = generation.cpu().numpy().squeeze()
|
68 |
+
|
69 |
+
# Check for NaN or Inf values and handle them
|
70 |
+
if np.any(np.isnan(audio_arr)) or np.any(np.isinf(audio_arr)):
|
71 |
+
raise ValueError("Generated audio contains invalid values (NaN or Inf).")
|
72 |
+
|
73 |
+
# Normalize the audio array to the range [-1, 1]
|
74 |
+
audio_arr = audio_arr / np.max(np.abs(audio_arr))
|
75 |
+
|
76 |
+
# Convert the audio to 16-bit PCM (int16 format)
|
77 |
+
audio_arr = (audio_arr * np.iinfo(np.int16).max).astype(np.int16)
|
78 |
+
|
79 |
return SAMPLE_RATE, audio_arr # Return sample rate and audio array
|
80 |
except Exception as e:
|
81 |
print(f"Error in TTS generation: {str(e)}")
|
|
|
103 |
|
104 |
# Launch the interface
|
105 |
block.queue()
|
106 |
+
block.launch()
|