def run(self): dejavu.shared.UITEXTLOGGER = self.updated dejavu.shared.DATABASE_FILE = self.outputFilePath lpf = self.spinBox_4.value() hpf = self.spinBox_5.value() # self.updated.emit("lpf:" + str(lpf) + ", hpf:" + str(hpf)) af = "" if lpf != 0 or hpf != 0: af = "-af " if lpf != 0: af += ("lowpass="******",lowpass="******",lowpass="******",lowpass="******"," af += ("highpass="******",highpass="******",highpass="******",highpass="******" " cmd48k = shlex.split("./ffmpeg -i " + self.inputFilePath.replace(" ", "\\ ") + " -ar 48000 " + af + "-c:a pcm_s16le temp48k.wav -y") cmd44k = shlex.split("./ffmpeg -i " + self.inputFilePath.replace(" ", "\\ ") + " -ar 44100 " + af + "-c:a pcm_s16le temp44k.wav -y") cmd16k = shlex.split("./ffmpeg -i " + self.inputFilePath.replace(" ", "\\ ") + " -ar 16000 " + af + "-c:a pcm_s16le temp16k.wav -y") cmd8k = shlex.split("./ffmpeg -i " + self.inputFilePath.replace(" ", "\\ ") + " -ar 8000 " + af + "-c:a pcm_s16le temp8k.wav -y") # cmd = shlex.split("./ffmpeg -i " + self.inputFilePath + " -af \"pan=2.1|c0=c0|c1=c1|c2=c2\" temp.wav -y") # command = "-i " + self.inputFilePath + " -af \"pan=2.1c0|c1=c1|c2=c2\" temp.wav" # self.updated.emit("./ffmpeg -i " + self.inputFilePath.replace(" ", "\\ ") + " -ar 8000 " + af + "-c:a pcm_s16le temp8k.wav -y") # # do some functionality djv = Dejavu({}) # djv.uitextappend = self.updated #clear DB djv.empty_db() totalProcesses = 0 if self.checkBox.isChecked(): totalProcesses += 1 if self.checkBox_2.isChecked(): totalProcesses += 1 if self.checkBox_3.isChecked(): totalProcesses += 1 if self.checkBox_4.isChecked(): totalProcesses += 1 totalProcessedPercentage = 0 self.updatedWithPercentage.emit( "Start converting " + self.inputFilePath, totalProcessedPercentage) #48KHz if self.checkBox.isChecked(): self.updated.emit("Converting " + self.inputFilePath + " to 48KHz 16bit PCM") try: subprocess.check_output(cmd48k) except subprocess.CalledProcessError as e: self.updated.emit("Error, " + e.output) self.pushButton.setEnabled(True) return totalProcessedPercentage += (50 / totalProcesses) self.updatedWithPercentage.emit( "Finished converting 48KHz for " + self.inputFilePath, totalProcessedPercentage) djv.fingerprint_file("temp48k.wav") totalProcessedPercentage += (50 / totalProcesses) self.updatedWithPercentage.emit( "Finished finger print generation for 48KHz for " + self.inputFilePath, totalProcessedPercentage) #44.1KHz if self.checkBox_2.isChecked(): self.updated.emit("Converting " + self.inputFilePath + " to 44.1KHz 16bit PCM") try: subprocess.check_output(cmd44k) except subprocess.CalledProcessError as e: self.updated.emit("Error, " + e.output) self.pushButton.setEnabled(True) return totalProcessedPercentage += (50 / totalProcesses) self.updatedWithPercentage.emit( "Finished converting 44.1KHz for " + self.inputFilePath, totalProcessedPercentage) djv.fingerprint_file("temp44k.wav") totalProcessedPercentage += (50 / totalProcesses) self.updatedWithPercentage.emit( "Finished finger print generation for 44.1KHz for " + self.inputFilePath, totalProcessedPercentage) #16KHz if self.checkBox_3.isChecked(): self.updated.emit("Converting " + self.inputFilePath + " to 16KHz 16bit PCM") try: subprocess.check_output(cmd16k) except subprocess.CalledProcessError as e: self.updated.emit("Error, " + e.output) self.pushButton.setEnabled(True) return totalProcessedPercentage += (50 / totalProcesses) self.updatedWithPercentage.emit( "Finished converting 16KHz for " + self.inputFilePath, totalProcessedPercentage) djv.fingerprint_file("temp16k.wav") totalProcessedPercentage += (50 / totalProcesses) self.updatedWithPercentage.emit( "Finished finger print generation for 16KHz for " + self.inputFilePath, totalProcessedPercentage) #8KHz if self.checkBox_4.isChecked(): self.updated.emit("Converting " + self.inputFilePath + " to 8KHz 16bit PCM") try: subprocess.check_output(cmd8k) except subprocess.CalledProcessError as e: self.updated.emit("Error, " + e.output) self.pushButton.setEnabled(True) return totalProcessedPercentage += (50 / totalProcesses) self.updatedWithPercentage.emit( "Finished converting 8KHz for " + self.inputFilePath, totalProcessedPercentage) djv.fingerprint_file("temp8k.wav") totalProcessedPercentage += (50 / totalProcesses) self.updatedWithPercentage.emit( "Finished finger print generation for 8KHz for " + self.inputFilePath, totalProcessedPercentage) totalProcessedPercentage = 100 self.updatedWithPercentage.emit( "Finished finger prints generation for " + self.inputFilePath, totalProcessedPercentage) self.pushButton.setEnabled(True)