Spaces:
Sleeping
Sleeping
File size: 844 Bytes
5f6b40b 9583919 5f6b40b 9583919 5f6b40b 9583919 5f6b40b 9583919 5f6b40b 9583919 5f6b40b 9583919 5f6b40b 9583919 | 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 30 31 32 33 34 35 36 37 38 | from pathlib import Path
import argbind
import audiotools as at
import tqdm
@argbind.bind(without_prefix=True)
def split_long_audio_file(file: str = None, max_chunk_size_s: int = 60 * 10):
file = Path(file)
output_dir = file.parent / file.stem
output_dir.mkdir()
sig = at.AudioSignal(file)
# split into chunks
for i, sig in tqdm.tqdm(
enumerate(
sig.windows(
window_duration=max_chunk_size_s,
hop_duration=max_chunk_size_s / 2,
preprocess=True,
)
)
):
sig.write(output_dir / f"{i}.wav")
print(f"wrote {len(list(output_dir.glob('*.wav')))} files to {output_dir}")
return output_dir
if __name__ == "__main__":
args = argbind.parse_args()
with argbind.scope(args):
split_long_audio_file()
|