Really don't request HEVC if unsupported

(cherry picked from commit c7a4c89b74)
This commit is contained in:
Joseph Price 2024-08-10 17:39:53 +01:00 committed by Niels van Velzen
parent 2a122803c2
commit 36a307cd7f
2 changed files with 7 additions and 2 deletions

View File

@ -11,6 +11,7 @@ import org.jellyfin.androidtv.util.profile.ProfileHelper.max1080pProfileConditio
import org.jellyfin.androidtv.util.profile.ProfileHelper.maxAudioChannelsCodecProfile
import org.jellyfin.androidtv.util.profile.ProfileHelper.photoDirectPlayProfile
import org.jellyfin.androidtv.util.profile.ProfileHelper.subtitleProfile
import org.jellyfin.androidtv.util.profile.ProfileHelper.supportsHevc
import org.jellyfin.apiclient.model.dlna.CodecProfile
import org.jellyfin.apiclient.model.dlna.CodecType
import org.jellyfin.apiclient.model.dlna.DeviceProfile
@ -76,7 +77,7 @@ class ExoPlayerProfile(
this.context = EncodingContext.Streaming
container = Codec.Container.TS
videoCodec = buildList {
if (deviceHevcCodecProfile.ContainsCodec(Codec.Video.HEVC, Codec.Container.TS)) add(Codec.Video.HEVC)
if (supportsHevc) add(Codec.Video.HEVC)
add(Codec.Video.H264)
}.joinToString(",")
audioCodec = when (downMixAudio) {

View File

@ -63,13 +63,17 @@ object ProfileHelper {
}
}
val supportsHevc by lazy {
MediaTest.supportsHevc()
}
val deviceHevcCodecProfile by lazy {
CodecProfile().apply {
type = CodecType.Video
codec = Codec.Video.HEVC
conditions = when {
!MediaTest.supportsHevc() -> {
!supportsHevc -> {
// The following condition is a method to exclude all HEVC
Timber.i("*** Does NOT support HEVC")
arrayOf(