import base64 import os.path import audiosegment_wrapper as AudioSegment def save_audio(filename, base64_string): decoded = None orig_filename = filename[:-4]+"_orig" with open("latestBase64","wb") as f: f.write(base64_string) try: decoded = base64.b64decode(base64_string) except TypeError: return b"ERROR_INVALID_ENCODING_64" #if os.path.isfile(filename): # return b"ERROR_FILE_EXISTS" with open(orig_filename,"wb") as f: f.write(decoded) seg = AudioSegment.from_file(orig_filename) seg = seg.resample(sample_rate_Hz=32000, sample_width=2, channels=1) seg.export(filename,format="wav") return b"SUCCESS" def save_audio_chain(file_str_tupels): completeAudio = None for fname, base64_string in file_str_tupels: print("Filename: {}".format(fname)) decoded = None orig_filename = fname[:-4]+"_orig" try: decoded = base64.b64decode(base64_string) except TypeError: return b"ERROR_INVALID_ENCODING_64" with open(orig_filename,"wb") as f: f.write(decoded) if completeAudio == None: completeAudio = AudioSegment.from_file(orig_filename) else: completeAudio += AudioSegment.from_file(orig_filename) if not completeAudio: return b"ERROR_AUDIO_CONCAT_FAILED" else: completeAudio = completeAudio.resample(sample_rate_Hz=32000, sample_width=2, channels=1) completeAudio.export(file_str_tupels[0][0],format="wav") return b"SUCCESS" def save_transcript(filename, transcript): if os.path.isfile(filename): pass with open(filename + "_transcript","w") as f: f.write(transcript) def get_transcript(filename): if os.path.isfile(filename): with open(filename + "_transcript","r") as f: return f.read() def filelist(): return "" def fileinfo(filename): return "" def copy_to_output(filename): return ""