Spaces:
Build error
Build error
File size: 1,179 Bytes
4ee33aa |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
from pydub.silence import split_on_silence
from pydub import AudioSegment
from pydub.exceptions import CouldntDecodeError
import os
# out_path = 'ttts/datasets/cliped_datasets'
def process_file_vad(paths):
audio_path,out_path = paths
min_duration=4
max_duration=20
out_prefix = os.path.splitext(os.path.basename(audio_path))[0]
if os.path.exists(os.path.join(out_path, out_prefix)):
return
try:
audio = AudioSegment.from_file(audio_path)
except:
print(audio_path)
return 0
segments = split_on_silence(audio, min_silence_len=600, silence_thresh=-40, seek_step=100, keep_silence=50)
for i in range(0,len(segments)):
if segments[i].duration_seconds<min_duration or segments[i].duration_seconds > max_duration:
continue
if os.path.exists(os.path.join(out_path, out_prefix, str(i)+'.wav')):
return 0
clip_path = os.path.join(out_path, out_prefix,str(i)+'.wav')
if not os.path.exists(os.path.join(out_path, out_prefix)):
os.makedirs(os.path.join(out_path, out_prefix),exist_ok=True)
segments[i].export(clip_path, format='wav')
return 0 |