Jovo Audio Converter - ((install))
self.status_label.config(text=f"Done! Saved to out_path", fg="green") messagebox.showinfo("Success", f"Conversion complete!\nout_path")
self.input_file = tk.StringVar() self.output_format = tk.StringVar(value="mp3") self.bitrate = tk.StringVar(value="192k") self.output_dir = tk.StringVar()
SUPPORTED_FORMATS = ['mp3', 'wav', 'ogg', 'flac', 'm4a'] jovo audio converter
# Load audio print(f"Loading input_path...") try: audio = AudioSegment.from_file(input_path, format=input_ext) except Exception as e: print(f"Error loading file: e") return False
self.create_widgets()
files = [f for f in os.listdir(input_dir) if f.split('.')[-1].lower() in SUPPORTED_FORMATS] if not files: print("No supported audio files found.") return
# Export print(f"Converting to output_format.upper()...") try: if output_format == "mp3": audio.export(output_path, format="mp3", bitrate=bitrate) elif output_format == "wav": audio.export(output_path, format="wav") elif output_format == "ogg": audio.export(output_path, format="ogg", bitrate=bitrate) elif output_format == "flac": audio.export(output_path, format="flac") elif output_format == "m4a": audio.export(output_path, format="ipod", bitrate=bitrate) print(f"Saved: output_path") return True except Exception as e: print(f"Export failed: e") return False def batch_convert(input_dir, output_format, bitrate="192k", output_dir=None): if not os.path.isdir(input_dir): print(f"Error: 'input_dir' is not a directory.") return self.status_label.config(text=f"Done! Saved to out_path"
except Exception as e: self.status_label.config(text="Conversion failed", fg="red") messagebox.showerror("Error", str(e))
