SpotiFLAC-Mobile/lib/services
zarzet 81547013f9 fix: gate M4A to FLAC conversion on a codec probe in every branch
The SAF and local post-download branches used to rush an ffmpeg 'M4A to FLAC' remux whenever the output extension was .flac, which silently upscaled AAC or EAC3 streams into a lossless container. Each branch now mirrors the native worker by probing the primary audio codec before converting: lossless sources (and true FLAC-in-MP4 files) stay in their native container with the right extension, while genuine ALAC/WAV payloads still get remuxed.

Add an outputExt field to DownloadRequestPayload so the Go backend always knows the user-requested container, and use it together with _shouldRequestContainerConversion to pick the right behaviour for shouldPreserveNativeM4a and the Kotlin finalizer. Decryption descriptors no longer force M4A preservation on their own; the codec probe already makes that call correctly.
2026-05-11 00:52:02 +07:00
..
apk_downloader.dart refactor: code cleanup and improvements 2026-01-17 09:07:29 +07:00
app_state_database.dart refactor: enable strict analysis options and fix type safety across codebase 2026-03-27 19:28:42 +07:00
cover_cache_manager.dart feat: add resolve API with SongLink fallback, fix multi-artist tags (#288), and cleanup 2026-04-13 23:32:14 +07:00
csv_import_service.dart chore: update app dependency versions 2026-05-03 01:25:26 +07:00
download_request_payload.dart fix: gate M4A to FLAC conversion on a codec probe in every branch 2026-05-11 00:52:02 +07:00
downloaded_embedded_cover_resolver.dart perf: incremental download queue lookup updates, async cover cleanup, and native JSON decoding on iOS 2026-04-13 23:32:16 +07:00
ffmpeg_service.dart fix: force native FLAC muxer when decrypting to .flac output 2026-05-10 18:50:49 +07:00
history_database.dart feat: persist codec format and bitrate in download history 2026-05-10 23:18:32 +07:00
library_collections_database.dart feat: add Favorite Artists collection 2026-05-02 00:50:02 +07:00
library_database.dart feat: persist codec format and bitrate in download history 2026-05-10 23:18:32 +07:00
local_track_redownload_service.dart refactor: remove Qobuz built-in provider and delete qobuz.go 2026-04-18 23:32:16 +07:00
notification_service.dart fix: sync download progress notification states 2026-05-04 17:24:57 +07:00
platform_bridge.dart fix: avoid native worker binder payload limit 2026-05-08 01:06:48 +07:00
share_intent_service.dart fix: stabilize shared extension link handling 2026-04-13 23:35:02 +07:00
shell_navigation_service.dart refactor: route spotify URLs through extensions 2026-04-13 23:32:11 +07:00
update_checker.dart chore: remove redundant comments and boilerplate across codebase 2026-05-05 21:35:18 +07:00