Skip to content

PyFolk-Devs/FLAC-Converter-Pro

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

🎵 FLAC Converter Pro (PyQt6 + FFmpeg)

A modern cross-platform GUI application to convert FLAC audio files into OPUS, AAC, or MP3 with best quality, metadata preservation, and a clean desktop UI.

Built using Python + PyQt6 + FFmpeg.


✨ Features

  • 🎧 Convert FLAC → OPUS / AAC / MP3
  • 🔊 Best quality presets
    • OPUS (160 kbps VBR)
    • AAC (256 kbps)
    • MP3 (V0 – highest quality)
  • 🖼️ Album art handling
    • Embed artwork for AAC / MP3
    • Auto-extract cover.jpg for OPUS
  • ⚠️ Smart warning: OPUS does not support embedded album art
  • 📑 Preserve metadata & lyrics
  • 📂 Drag & drop files or folders
  • 📊 Progress bar + ETA (time remaining)
  • ⏸ Pause / Resume FFmpeg process
  • 🖥️ Live FFmpeg log window
  • 👁️ Show / Hide FFmpeg log toggle
  • 🌙 Dark mode toggle
  • 🧠 Auto-download FFmpeg (Windows / Linux / macOS)
  • 🎨 Clean, modern UI buttons

🚀 Supported Formats

Output Format Quality Album Art
OPUS Best (VBR) ❌ Not supported (cover.jpg extracted)
AAC (M4A) 256 kbps ✅ Embedded
MP3 V0 (Highest) ✅ Embedded

🛠️ Requirements

  • Python 3.9+
  • Internet connection (only for first-time FFmpeg auto-download)

Python dependencies

pip install PyQt6

FFmpeg is automatically downloaded if not found on your system.

▶️ How to Run

python app.py
  • Select output format (OPUS / AAC / MP3)

  • Drag & drop FLAC files or folders

  • Choose output directory

  • Click Start Conversion

🧠 Technical Notes

  • OPUS strictly disables video streams (-vn) to avoid container errors

  • AAC & MP3 support embedded MJPEG album art

  • Uses QProcess for non-blocking FFmpeg execution

  • Safe stream mapping (-map 0:a, -map 0:v?)

  • Cross-platform FFmpeg binaries:

  • Windows: gyan.dev

  • Linux: johnvansickle.com

  • macOS: evermeet.cx

🧩 Future Enhancements (Planned)

  • 📁 Per-album output folders

  • 💾 Remember last user settings

  • 🟢 Per-file success / error indicators

  • 🧱 Windows .exe build (PyInstaller)

  • 🎵 Batch queue reordering

👨‍💻 Developed By Aryan Singh Negi

📄 License

This project is open-source and available under the MIT License.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages