Last active
March 17, 2023 02:11
-
-
Save ouor/12b3ee2aabcaa0459b5704ec9db7d567 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import speech_recognition as sr | |
import argparse | |
import os | |
from tqdm import tqdm | |
args = argparse.ArgumentParser() | |
args.add_argument('--audio-input-dir', '-i', type=str, dest='audio_input_dir', required=True) | |
args.add_argument('--txt-output-path', '-o', type=str, dest='txt_output_dir', required=False, default='') | |
args.add_argument('--lang', '-l', type=str, dest='lang', required=False, default='ko-KR') | |
args = args.parse_args() | |
if not os.path.exists(args.audio_input_dir): | |
raise Exception('audio_input_dir is not exist') | |
if args.txt_output_dir == '': | |
args.txt_output_dir = os.path.join(args.audio_input_dir, 'manifest.txt') | |
r = sr.Recognizer() | |
txt = open(args.txt_output_dir, 'w', encoding='utf-8') | |
for file in tqdm([i for i in os.listdir(args.audio_input_dir) if i.endswith('.wav')]): | |
audio_input = os.path.join(args.audio_input_dir, file) | |
with sr.AudioFile(audio_input) as source: | |
audio = r.record(source) | |
try: | |
response = r.recognize_google(audio, language=args.lang) | |
txt.write(f"{file}|{response}\n") | |
except sr.UnknownValueError: | |
print('UnknownValueError') | |
except sr.RequestError as e: | |
print('RequestError: {0}'.format(e)) | |
txt.close() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment