Mikkeli Matlock b07b363454 Implement modular GUI architecture with embedded matplotlib
Major refactor from popup-based to persistent PyQt5 interface:
- Extract plotting logic from AudioFile class into separate PlottingEngine
- Create AudioVisualizationWidget with embedded matplotlib canvas
- Add AnalysisResultsManager as bridge between processing and GUI
- Replace simple drag-drop widget with professional splitter layout
- Preserve legacy batch processing mode with execution guard

Features:
- Drag-and-drop audio analysis (.mp3/.wav/.flac support)
- File list with metadata display (BPM, amplitudes, track info)
- Persistent visualization area (no more matplotlib popups)
- Multi-file support with click-to-view functionality
- Threading-ready architecture for future background processing

Technical improvements:
- Clean separation of concerns (analysis/visualization/GUI)
- Qt signal-slot communication pattern
- Modular component design ready for multithreading
- Proper import guards prevent legacy code interference

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-21 22:43:11 +09:00
2024-04-10 20:25:44 +09:00
2024-04-10 20:14:02 +09:00

uj-mastering-master

Utility providing metrics to evaluate masterings.
Now boosted by Claude Code.

dependencies

librosa, numpy, matplotlib, mutagen

usage

Command Line Analysis

  1. Edit files.txt to include paths to your audio files (MP3/WAV supported)
    • Use ; or # to comment out files
    • One file path per line
  2. Run: python master_core.py
    • Generates colorized power magnitude graphs for each file
    • Displays BPM and song metadata
    • Graphs show RMS power over time with adaptive scaling

GUI Mode (Experimental)

Run: python main.py

  • Opens drag-and-drop interface
  • Currently displays dropped file paths
  • Analysis integration coming soon

Output

  • Interactive matplotlib graphs showing power levels over time
  • Color-coded visualization (autumn colormap)
  • Automatic headroom detection and scaling
  • Console output with BPM and metadata information
S
Description
Mastering helper
Readme GPL-3.0 478 KiB
Languages
Python 100%