def preprocess(self, x): if self.type == "file": return processing_utils.decode_base64_to_file(x) elif self.type == "bytes": return processing_utils.decode_base64_to_binary(x) else: raise ValueError("Unknown type: " + self.type + ". Please choose from: 'file', 'bytes'.")
def preprocess(self, x): """ By default, no pre-processing is applied to a microphone input file """ file_obj = processing_utils.decode_base64_to_file(x) if self.preprocessing == "mfcc": return processing_utils.generate_mfcc_features_from_audio_file(file_obj.name) _, signal = scipy.io.wavfile.read(file_obj.name) return signal
def preprocess(self, x): name, data, is_local_example = x["name"], x["data"], x["is_local_example"] if self.type == "file": if is_local_example: return open(name) else: return processing_utils.decode_base64_to_file(data) elif self.type == "bytes": if is_local_example: with open(name, "rb") as file_data: return file_data.read() return processing_utils.decode_base64_to_binary(data) else: raise ValueError("Unknown type: " + str(self.type) + ". Please choose from: 'file', 'bytes'.")
def save_flagged_file(self, dir, label, data): file = processing_utils.decode_base64_to_file(data) old_file_name = file.name output_dir = os.path.join(dir, label) if os.path.exists(output_dir): file_index = len(os.listdir(output_dir)) else: os.mkdir(output_dir) file_index = 0 new_file_name = str(file_index) if "." in old_file_name: uploaded_format = old_file_name.split(".")[-1].lower() new_file_name += "." + uploaded_format shutil.move(old_file_name, os.path.join(dir, label, new_file_name)) return label + "/" + new_file_name
def get_interpretation_neighbors(self, x): file_obj = processing_utils.decode_base64_to_file(x) x = scipy.io.wavfile.read(file_obj.name) sample_rate, data = x leave_one_out_sets = [] duration = data.shape[0] boundaries = np.linspace(0, duration, self.interpretation_segments + 1).tolist() boundaries = [round(boundary) for boundary in boundaries] for index in range(len(boundaries) - 1): leave_one_out_data = np.copy(data) start, stop = boundaries[index], boundaries[index + 1] leave_one_out_data[start:stop] = 0 file = tempfile.NamedTemporaryFile() scipy.io.wavfile.write(file, sample_rate, leave_one_out_data) out_data = processing_utils.encode_file_to_base64(file.name, type="audio", ext="wav") leave_one_out_sets.append(out_data) return leave_one_out_sets, {}, True
def save_flagged_file(self, dir, label, data, encryption_key): if data is None: return None file = processing_utils.decode_base64_to_file(data, encryption_key) label = "".join( [char for char in label if char.isalnum() or char in "._- "]) old_file_name = file.name output_dir = os.path.join(dir, label) if os.path.exists(output_dir): file_index = len(os.listdir(output_dir)) else: os.makedirs(output_dir) file_index = 0 new_file_name = str(file_index) if "." in old_file_name: uploaded_format = old_file_name.split(".")[-1].lower() new_file_name += "." + uploaded_format file.close() shutil.move(old_file_name, os.path.join(dir, label, new_file_name)) return label + "/" + new_file_name
def deserialize(self, x): return processing_utils.decode_base64_to_file(x).name