From 46beee00bb12c707fb74cd2b529d3d38b70f94df Mon Sep 17 00:00:00 2001 From: Ray <154766448+damontecres@users.noreply.github.com> Date: Wed, 1 Apr 2026 01:05:24 -0400 Subject: [PATCH] Fix supported audio types (#1173) ## Description Fixes the list of supported audio types when playing music. This fixes allows for playback of audio formats like ALAC, PCM/WAV, Vorbis, etc. ### Related issues Fixes #1168 ### Testing Emulator ## Screenshots N/A ## AI or LLM usage None --- .../damontecres/wholphin/services/MusicService.kt | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/github/damontecres/wholphin/services/MusicService.kt b/app/src/main/java/com/github/damontecres/wholphin/services/MusicService.kt index 002be20e..0fb0c774 100644 --- a/app/src/main/java/com/github/damontecres/wholphin/services/MusicService.kt +++ b/app/src/main/java/com/github/damontecres/wholphin/services/MusicService.kt @@ -30,7 +30,7 @@ import com.github.damontecres.wholphin.util.BlockingList import com.github.damontecres.wholphin.util.LoadingState import com.github.damontecres.wholphin.util.PlaybackItemState import com.github.damontecres.wholphin.util.TrackActivityPlaybackListener -import com.github.damontecres.wholphin.util.profile.Codec +import com.github.damontecres.wholphin.util.profile.supportedAudioCodecs import dagger.hilt.android.qualifiers.ApplicationContext import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers @@ -83,6 +83,8 @@ class MusicService private val _state = MutableStateFlow(MusicServiceState.EMPTY) val state: StateFlow = _state + private val audioFormats by lazy { listOf(*supportedAudioCodecs) } + val player: Player by lazy { ExoPlayer .Builder(context) @@ -286,14 +288,9 @@ class MusicService val url = api.universalAudioApi.getUniversalAudioStreamUrl( itemId = audio.id, - container = - listOf( - Codec.Audio.OPUS, - Codec.Audio.MP3, - Codec.Audio.AAC, - Codec.Audio.FLAC, - ), + container = audioFormats, ) + Timber.i("url=%s", url) val imageUrl = audio.data.albumId?.let { albumId -> imageUrlService.getItemImageUrl(