SpotiFLAC v3.1.2
What's New
Added
-
New Languages: Added Spanish (es) and Portuguese (pt) translations
- Spanish: Credits 125 (@credits125)
- Portuguese: Pedro Marcondes (@justapedro)
- Russian: Владислав (@odinokiy_kot)
-
Quick Search Provider Switcher (#76): Dropdown menu in search bar for instant provider switching
- Tap the search icon to reveal a dropdown menu with all available search providers
- Shows default provider (Deezer based on metadata source setting) at the top
- Lists all enabled extensions with custom search capability
- Displays extension icons when available
- Checkmark indicates currently selected provider
- Search hint text updates immediately when switching providers
- Re-triggers search automatically if there's existing text in the search bar
- Eliminates need to navigate to Settings > Extensions > Search Provider
-
Extension Button Setting Type (#74): New setting type for extension actions
- Extensions can define
buttontype in manifest settings - Triggers JavaScript function when tapped (e.g., start OAuth flow)
- Useful for authentication, manual sync, or any custom action
- Extensions can define
-
Genre & Label Metadata (#75): Downloaded tracks now include genre and record label information
- Fetches genre and label from Deezer album API for each track
- Embeds GENRE, ORGANIZATION (label), and COPYRIGHT tags into FLAC files
- Works automatically when Deezer track ID is available (via ISRC matching)
- Supports all download services (Tidal, Qobuz, Amazon) and extension downloads
-
MP3 Quality Option (#69): Optional MP3 download format with FLAC-to-MP3 conversion
- New "Enable MP3 Option" toggle in Settings > Download > Audio Quality
- When enabled, MP3 (320kbps) appears as a quality option alongside FLAC options
- Available in both the quality picker dialog and default quality settings
- Works with all services (Tidal, Qobuz, Amazon) and extensions
-
MP3 Metadata Embedding: Full metadata support for MP3 files
- Cover art embedded using ID3v2 tags
- Synced lyrics embedded (fetched from lrclib.net)
- All metadata preserved: title, artist, album, album artist, track/disc number, date, ISRC
- Automatic tag conversion from Vorbis comments (FLAC) to ID3v2 (MP3)
-
Dominant Color Header: Album, Playlist, Downloaded Album, and Track Metadata screens now feature dynamic header backgrounds
- Extracts dominant color from cover art using
palette_generator - Creates a gradient from dominant color to theme surface color
- Smooth 500ms color transition animation
- Extracts dominant color from cover art using
-
Larger Cover Art: Cover images on detail screens are now 50% of screen width (previously 140px fixed)
- More prominent album artwork display
- Larger shadow and rounded corners (20px radius)
- Higher resolution cover caching
-
Sticky Title: Title appears in AppBar when scrolling past the info card
- Smooth fade-in animation (200ms) when scrolling down
- Title hidden when header is expanded (shows in info card instead)
- AppBar uses theme color (surface) for clean, native look
- Works on Album, Playlist, Downloaded Album, Track Metadata, and Artist screens
-
Artist Name in Album Screen: Album info card now displays artist name below album title
- Extracted from first track's artist metadata
- Styled with
onSurfaceVariantcolor for visual hierarchy
-
Disc Separation for Multi-Disc Albums (#70): Downloaded albums with multiple discs now display tracks grouped by disc
- Visual disc separator header showing "Disc 1", "Disc 2", etc.
- Tracks sorted by disc number first, then by track number
- Single-disc albums display normally without separators
- Fixes confusion when albums have duplicate track numbers across discs
-
Album Grouping in Recents (#70): Downloads now show as albums instead of individual tracks in the Recent section
- Prevents flooding the recents list when downloading full albums
- Groups tracks by album name and artist
- Tapping navigates directly to the downloaded album screen
- Shows the most recent download time for each album
Changed
-
FFmpeg FLAC-to-MP3 Conversion: Improved conversion process
- MP3 files now saved in the same folder as FLAC (no separate MP3 subfolder)
- Original FLAC file automatically deleted after successful conversion
- New
embedMetadataToMp3()method for MP3-specific tag embedding
-
Sticky Header Theme Integration: AppBar background uses
colorScheme.surfaceinstead of dominant color when collapsed- Dark theme: Black background with white text
- Light theme: White background with black text
- Matches modern app behavior for better readability
Fixed
-
MP3 Quality Display in Track Metadata: Fixed incorrect quality display for MP3 files
- MP3 files now show "320kbps" instead of FLAC's bit depth/sample rate
- History no longer stores FLAC audio specs for converted MP3 files
- Both File Info badges and metadata grid show correct MP3 quality
-
Empty Catch Blocks: Fixed analyzer warnings for empty catch blocks
download_queue_provider.dart: Added comments explaining why polling errors are silently ignoredtrack_provider.dart: Added comments explaining why availability check errors are silently ignoredffmpeg_service.dart: Added proper error logging for temp file cleanup failures
-
Russian Plural Forms: Fixed ICU syntax warnings in Russian localization
- Removed redundant
=1clauses that were overridingoneplural category - Affected 10 plural strings including track counts and delete confirmations
- Plurals now correctly handle Russian grammar (1 трек, 2 трека, 5 треков)
- Removed redundant
Dependencies
- Added
palette_generator: ^0.3.3+4for cover art color extraction
Downloads
Android
- arm64:
SpotiFLAC-v3.1.2-arm64.apk(recommended for modern devices) - arm32:
SpotiFLAC-v3.1.2-arm32.apk(older devices)
iOS
- iOS:
SpotiFLAC-v3.1.2-ios-unsigned.ipa(sideload required)
Installation
Android: Enable "Install from unknown sources" and install the APK
iOS: Use AltStore, Sideloadly, or similar tools to sideload the IPA