| from pathlib import Path |
| import subprocess |
| from subprocess import CompletedProcess |
|
|
|
|
| def cmd(command: str, check=True, capture_output=False) -> CompletedProcess: |
| print(command) |
| if capture_output: |
| ret = subprocess.run(command, shell=True, check=check, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, |
| universal_newlines=True) |
| else: |
| ret = subprocess.run(command, shell=True, check=check) |
| print(ret.stdout) |
| return ret |
|
|
| def to_wav(folder: Path): |
| for file in folder.glob("*.mp3"): |
| |
| wav_path = folder / f'{file.stem}.wav' |
| if not wav_path.exists(): |
| command = f"ffmpeg -i {file} -ac 1 -ar 16000 {wav_path}" |
| |
| cmd(command) |
|
|
|
|
|
|
| if __name__ == '__main__': |
| to_wav(Path("/Users/jeqin/work/test/audios/short_audios")) |
|
|