mirror of
https://github.com/bbara04/Purefin.git
synced 2026-07-23 19:26:50 +00:00
refactor(playback): simplify transcoding fallback state
This commit is contained in:
@@ -7,7 +7,6 @@ package hu.bbara.purefin.core.data
|
||||
* transcoding fallback fields once when direct playback fails.
|
||||
*/
|
||||
data class PlaybackMediaItemTag(
|
||||
val playbackReportContext: PlaybackReportContext?,
|
||||
val playbackReportContext: PlaybackReportContext,
|
||||
val transcodingFallbackUrl: String?,
|
||||
val transcodingFallbackReportContext: PlaybackReportContext?,
|
||||
)
|
||||
|
||||
@@ -11,6 +11,7 @@ import androidx.media3.exoplayer.ExoPlayer
|
||||
import dagger.hilt.android.scopes.ViewModelScoped
|
||||
import hu.bbara.purefin.core.data.PlayableMediaRepository
|
||||
import hu.bbara.purefin.core.data.PlaybackMediaItemTag
|
||||
import hu.bbara.purefin.core.data.PlaybackMethod
|
||||
import hu.bbara.purefin.core.data.PlaybackReportContext
|
||||
import hu.bbara.purefin.core.player.model.MetadataState
|
||||
import hu.bbara.purefin.core.player.model.PlaybackProgressSnapshot
|
||||
@@ -509,10 +510,10 @@ class PlayerManager @Inject constructor(
|
||||
.setUri(fallbackUrl)
|
||||
.setTag(
|
||||
playbackTag.copy(
|
||||
playbackReportContext = playbackTag.transcodingFallbackReportContext
|
||||
?: playbackTag.playbackReportContext,
|
||||
playbackReportContext = playbackTag.playbackReportContext.copy(
|
||||
playMethod = PlaybackMethod.TRANSCODE
|
||||
),
|
||||
transcodingFallbackUrl = null,
|
||||
transcodingFallbackReportContext = null,
|
||||
)
|
||||
)
|
||||
.build()
|
||||
|
||||
@@ -10,7 +10,6 @@ import hu.bbara.purefin.core.data.LocalMediaRepository
|
||||
import hu.bbara.purefin.core.data.NetworkMonitor
|
||||
import hu.bbara.purefin.core.data.PlayableMediaRepository
|
||||
import hu.bbara.purefin.core.data.PlaybackMediaItemTag
|
||||
import hu.bbara.purefin.core.data.PlaybackMethod
|
||||
import hu.bbara.purefin.core.data.PlaybackReportContext
|
||||
import hu.bbara.purefin.core.data.UserSessionRepository
|
||||
import hu.bbara.purefin.core.download.MediaDownloadController
|
||||
@@ -267,9 +266,6 @@ class DefaultPlayableMediaRepository @Inject constructor(
|
||||
return PlaybackMediaItemTag(
|
||||
playbackReportContext = playbackReportContext,
|
||||
transcodingFallbackUrl = transcodingUrl,
|
||||
transcodingFallbackReportContext = transcodingUrl?.let {
|
||||
playbackReportContext.copy(playMethod = PlaybackMethod.TRANSCODE)
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user