This commit introduces a suite of new options for customizing the appearance of the spectrogram, controlled through a dedicated "Spectrogram Bar Style" section in the UI.
New UI Controls: Added a new accordion with sliders and radio buttons to control:
- Number of frequency bars (Bar Count)
- Spacing between bars/blocks
- Bar style ('Solid Bars' or 'Stacked Blocks')
- Symmetry/Mirror mode ('Off', 'Horizontal', or 'Vertical')
Vertical Mirror Mode: Implemented a new rendering mode where the spectrogram emanates from the vertical center of the screen, expanding left and right.
Stacked Block Style: Added an alternative bar style where each bar is rendered as a series of discrete, stacked blocks, with a configurable block count.
Fix: Improve spectrogram rendering stability and accuracy
Replaced manual time scaling with librosa.time_to_frames to prevent the visualization from freezing at the end of the video. Added a safety check for empty spectrograms to avoid crashes with very short audio clips.
This major refactoring introduces a powerful new feature allowing users to assign specific sets of images to designated groups of tracks. This transforms the application from a linear visualizer into a tool capable of creating dynamic, context-aware videos with thematic sections.
The implementation required a complete overhaul of the UI for image uploads and a fundamental rewrite of the backend logic for track processing and image distribution.
Dynamic Group Management:
The single image uploader has been replaced with a dynamic interface for defining up to 10 distinct image groups.
Users can now click "+ Add Image Group" and "- Remove Last Group" buttons to manage the number of visible group definitions.
This is simulated by managing the visibility of a pre-defined maximum number of groups, providing a seamless user experience.
Group Definition:
Each group consists of a Textbox for defining track ranges (e.g., "1-4, 7, 10-13") and a dedicated Files uploader for that group's specific…
feat(core): Implement multi-audio file processing and complex numbering
This major update refactors the application to support processing multiple audio files into a single, continuous spectrogram video. The previous single-file workflow has been replaced with a robust batch processing pipeline.
This introduces a more powerful and flexible user experience, allowing for the creation of long-form videos from multiple sources, such as album tracks or podcast segments.
Key Changes:
Multi-File Upload:
The Gradio UI has been updated from `gr.Audio` to `gr.Files`, enabling users to upload and process multiple audio files in a single job.
Audio Processing Pipeline:
The backend now concatenates all uploaded audio files into a single, temporary WAV file.
It automatically handles resampling to a consistent sample rate if the source files differ.
Complex Title Numbering Logic:
Implemented a sophisticated system for numbering tracks and files based on the context of the upload:
1. **Single File with CUE:** Tracks are numbered sequentially (e.g., `01.`, `02.`).
2.…
feat: Add dynamic image backgrounds and spectrogram opacity
This commit introduces a major feature allowing users to add image backgrounds to the generated spectrogram video. It also enhances the visualizer by making it semi-transparent when a background is present.
feat: Add custom resolution and improve audio quality
This commit introduces two significant user-facing enhancements: the ability to customize the output video dimensions and a major improvement in audio fidelity for transcoded files.