Update app.py
Browse files
app.py
CHANGED
@@ -12,10 +12,14 @@ from pydub.silence import detect_nonsilent
|
|
12 |
from pydub import AudioSegment
|
13 |
|
14 |
def strip_silence(audio: AudioSegment, silence_thresh=-40, min_silence_len=100):
|
15 |
-
|
16 |
-
|
|
|
|
|
17 |
return AudioSegment.silent(duration=0)
|
18 |
-
|
|
|
|
|
19 |
|
20 |
|
21 |
def get_silence(duration_ms=1000):
|
@@ -349,4 +353,4 @@ async def create_demo():
|
|
349 |
|
350 |
if __name__ == "__main__":
|
351 |
demo = asyncio.run(create_demo())
|
352 |
-
demo.launch()
|
|
|
12 |
from pydub import AudioSegment
|
13 |
|
14 |
def strip_silence(audio: AudioSegment, silence_thresh=-40, min_silence_len=100):
|
15 |
+
from pydub.silence import detect_nonsilent
|
16 |
+
nonsilent = detect_nonsilent(audio, min_silence_len=min_silence_len, silence_thresh=silence_thresh)
|
17 |
+
if not nonsilent:
|
18 |
+
# No speech found; return empty or silence
|
19 |
return AudioSegment.silent(duration=0)
|
20 |
+
start_trim = nonsilent[0][0]
|
21 |
+
end_trim = nonsilent[-1][1]
|
22 |
+
return audio[start_trim:end_trim]
|
23 |
|
24 |
|
25 |
def get_silence(duration_ms=1000):
|
|
|
353 |
|
354 |
if __name__ == "__main__":
|
355 |
demo = asyncio.run(create_demo())
|
356 |
+
demo.launch()
|