Skip to content

Audio night mode crashes on 0.18.7 #4578

@Hello-World-Traveler

Description

@Hello-World-Traveler

This issue respects the following points:

  • This issue is not already reported on GitHub (I've searched it).
  • I agree to follow Jellyfin's Code of Conduct.
  • This report addresses only a single issue; If you encounter multiple issues, kindly create separate reports for each one.

Describe the bug

Clicking tune to channel crashes the app, No way of watching live TV on the app.

Logs


client: Jellyfin for Android TV
client_version: 0.18.7
client_repository: https://github.com/jellyfin/jellyfin-androidtv
type: crash_report
format: markdown

Logs

Stack Trace:

java.lang.RuntimeException: Cannot initialize effect engine for type: 0bed4300-ddd6-11db-8f34-0002a5d5c51b Error: -3
	at android.media.audiofx.AudioEffect.<init>(AudioEffect.java:521)
	at android.media.audiofx.AudioEffect.<init>(AudioEffect.java:488)
	at android.media.audiofx.AudioEffect.<init>(AudioEffect.java:462)
	at android.media.audiofx.Equalizer.<init>(Equalizer.java:139)
	at org.jellyfin.androidtv.ui.playback.VideoManager.enableAudioNightMode(VideoManager.java:628)
	at org.jellyfin.androidtv.ui.playback.VideoManager.<init>(VideoManager.java:93)
	at org.jellyfin.androidtv.ui.playback.CustomPlaybackOverlayFragment.onViewCreated(CustomPlaybackOverlayFragment.java:222)
	at androidx.fragment.app.Fragment.performViewCreated(Fragment.java:3152)
	at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:608)
	at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:286)
	at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:2214)
	at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:2115)
	at androidx.fragment.app.FragmentManager.execSingleAction(FragmentManager.java:2002)
	at androidx.fragment.app.BackStackRecord.commitNow(BackStackRecord.java:317)
	at org.jellyfin.androidtv.ui.browsing.DestinationFragmentView.activateHistoryEntry(DestinationFragmentView.kt:159)
	at org.jellyfin.androidtv.ui.browsing.DestinationFragmentView.navigate(DestinationFragmentView.kt:94)
	at org.jellyfin.androidtv.ui.browsing.MainActivity.handleNavigationAction(MainActivity.kt:118)
	at org.jellyfin.androidtv.ui.browsing.MainActivity.access$handleNavigationAction(MainActivity.kt:33)
	at org.jellyfin.androidtv.ui.browsing.MainActivity$onCreate$2.invokeSuspend(MainActivity.kt:66)
	at org.jellyfin.androidtv.ui.browsing.MainActivity$onCreate$2.invoke(Unknown Source:8)
	at org.jellyfin.androidtv.ui.browsing.MainActivity$onCreate$2.invoke(Unknown Source:4)
	at kotlinx.coroutines.flow.FlowKt__TransformKt$onEach$$inlined$unsafeTransform$1$2.emit(Emitters.kt:50)
	at kotlinx.coroutines.flow.FlowKt__ChannelsKt.emitAllImpl$FlowKt__ChannelsKt(Channels.kt:33)
	at kotlinx.coroutines.flow.FlowKt__ChannelsKt.access$emitAllImpl$FlowKt__ChannelsKt(Channels.kt:1)
	at kotlinx.coroutines.flow.FlowKt__ChannelsKt$emitAllImpl$1.invokeSuspend(Unknown Source:14)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
	at kotlinx.coroutines.EventLoop.processUnconfinedEvent(EventLoop.common.kt:65)
	at kotlinx.coroutines.internal.DispatchedContinuation.resumeWith(DispatchedContinuation.kt:343)
	at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:146)
	at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:120)
	at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:11)
	at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:70)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
	at android.os.Handler.handleCallback(Handler.java:967)
	at android.os.Handler.dispatchMessage(Handler.java:104)
	at android.os.Looper.loop(Looper.java:250)
	at android.app.ActivityThread.main(ActivityThread.java:7848)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1192)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@93fbb34, Dispatchers.Main.immediate]

Logcat:

04-10 12:46:01.914 D/ProfileInstaller( 3336): Skipping profile installation for org.jellyfin.androidtv
04-10 12:46:01.967 D/ItemRowAdapterHelperKt( 3336): Creating items from 0 existing and 13 new, adapter size is 0
04-10 12:46:01.977 V/io.ktor.client.plugins.defaultTransformers( 3336): Transformed with default transformers response body for http://IP:8096/Items/Latest?parentId=c248dc0b-ec4b-0ce8-fb01-231d1f12c5c1&fields=PrimaryImageAspectRatio&fields=Overview&fields=ChildCount&fields=SeriesPrimaryImage&imageTypeLimit=1&limit=50&groupItems=true to interface io.ktor.utils.io.ByteReadChannel (Kotlin reflection is not available)
04-10 12:46:01.996 V/io.ktor.client.plugins.defaultTransformers( 3336): Transformed with default transformers response body for http://IP:8096/Items/Latest?parentId=f137a2dd-21bb-c1b9-9aa5-c0f6bf02a805&fields=PrimaryImageAspectRatio&fields=Overview&fields=ChildCount&fields=SeriesPrimaryImage&imageTypeLimit=1&limit=50&groupItems=true to interface io.ktor.utils.io.ByteReadChannel (Kotlin reflection is not available)
04-10 12:46:02.002 V/io.ktor.client.plugins.defaultTransformers( 3336): Transformed with default transformers response body for http://IP:8096/Items/Latest?parentId=767bffe4-f11c-93ef-34b8-05451a696a4e&fields=PrimaryImageAspectRatio&fields=Overview&fields=ChildCount&fields=SeriesPrimaryImage&imageTypeLimit=1&limit=50&groupItems=true to interface io.ktor.utils.io.ByteReadChannel (Kotlin reflection is not available)
04-10 12:46:02.144 D/LeanbackChannelWorker( 3336): Updating channel content://android.media.tv/channel/10020681
04-10 12:46:02.170 D/ItemRowAdapterHelperKt( 3336): Creating items from 0 existing and 50 new, adapter size is 0
04-10 12:46:02.182 V/io.ktor.client.plugins.defaultTransformers( 3336): Transformed with default transformers response body for http://IP:8096/Items/Latest?parentId=e2c00f29-7a5f-80af-390f-52f72e782147&fields=PrimaryImageAspectRatio&fields=Overview&fields=ChildCount&fields=SeriesPrimaryImage&imageTypeLimit=1&limit=50&groupItems=true to interface io.ktor.utils.io.ByteReadChannel (Kotlin reflection is not available)
04-10 12:46:02.198 V/io.ktor.client.plugins.defaultTransformers( 3336): Transformed with default transformers response body for http://IP:8096/Shows/NextUp?limit=50&fields=PrimaryImageAspectRatio&fields=Overview&fields=ChildCount&imageTypeLimit=1&enableTotalRecordCount=true&disableFirstEpisode=false&enableResumable=false&enableRewatching=false to interface io.ktor.utils.io.ByteReadChannel (Kotlin reflection is not available)
04-10 12:46:02.249 D/LeanbackChannelWorker( 3336): Updating channel content://android.media.tv/channel/10020679
04-10 12:46:02.381 D/ItemRowAdapterHelperKt( 3336): Creating items from 0 existing and 49 new, adapter size is 0
04-10 12:46:02.582 D/ItemRowAdapterHelperKt( 3336): Creating items from 0 existing and 50 new, adapter size is 0
04-10 12:46:02.684 D/LeanbackChannelWorker( 3336): Updating channel content://android.media.tv/channel/10020682
04-10 12:46:03.075 D/ItemRowAdapterHelperKt( 3336): Creating items from 0 existing and 50 new, adapter size is 0
04-10 12:46:03.129 D/LeanbackChannelWorker( 3336): Updating channel content://android.media.tv/channel/10020683
04-10 12:46:03.362 D/ItemRowAdapterHelperKt( 3336): Creating items from 0 existing and 50 new, adapter size is 0
04-10 12:46:03.530 D/LeanbackChannelWorker( 3336): Updating channel content://android.media.tv/channel/10020680
04-10 12:46:03.552 D/NavigationRepositoryImpl( 3336): Navigating to Fragment(fragment=class org.jellyfin.androidtv.ui.itemdetail.FullDetailsFragment (Kotlin reflection is not available), arguments=Bundle[{ItemId=90-3cc4507bb3, ProgramInfo={"Name":"Alive Address","ServerId":"b10dce12a3c745c598aed21c892b6f18","Id":"90-3cc4507bb3","OfficialRating":"CTC","ChannelId":"60e0f336-b7c7-758a-cb47-e95300ca1543","ChannelName":"ABC NEWS","Overview":"Chris Bowen, Minister for Climate Change and Energy debates Ted O'Brien, the Shadow Minister in an Energy Policy Debate at the Alive, ahead of the May 3 Election.","RunTimeTicks":36000000000,"ChannelNumber":"24","IndexNumber":4,"ParentIndexNumber":2025,"Type":"Program","UserData":{"PlaybackPositionTicks":0,"PlayCount":0,"IsFavorite":false,"Played":false,"Key":"Program-Alive AddressEnergy Debate - Chris Bowen And Ted O'brien","ItemId":"00000000-0000-0000-0000-000000000000"},"PrimaryImageAspectRatio":1.77734375,"ImageTags":{"Primary":"77d4dfc9eb4ee0304e18bdf94d534736"},"BackdropImageTags":[],"ImageBlurHashes":{},"MediaType":"Video","EndDate":"2025-04-10T13:30:00+10:00","StartDate":"2025-04-10T12:30:00+10:00","EpisodeTitle":"Energy Debate - Chris Bowen And Ted O'brien","IsSeries":true,"IsNews":true}, ChannelId=60e0f336-b7c7-758a-cb47-e95300ca1543}]) (via navigate function)
04-10 12:46:03.723 I/org.jellyfin.sdk.api.sockets.DefaultSocketApi( 3336): Subscription count changed to 15
04-10 12:46:03.724 I/org.jellyfin.sdk.api.sockets.DefaultSocketApi( 3336): Subscription count changed to 14
04-10 12:46:03.727 I/org.jellyfin.sdk.api.ktor.KtorClient( 3336): GET http://IP:8096/Items/90-3cc4507bb3
04-10 12:46:03.731 V/io.ktor.client.plugins.HttpPlainText( 3336): Adding Accept-Charset=UTF-8 to http://IP:8096/Items/90-3cc4507bb3
04-10 12:46:03.752 W/RecyclerView( 3336): No adapter attached; skipping layout
04-10 12:46:03.763 V/io.ktor.client.plugins.HttpCallValidator( 3336): Validating response for request http://IP:8096/Items/90-3cc4507bb3
04-10 12:46:03.764 V/io.ktor.client.plugins.DefaultResponseValidation( 3336): Skipping default response validation for http://IP:8096/Items/90-3cc4507bb3
04-10 12:46:03.765 I/WM-WorkerWrapper( 3336): Worker result SUCCESS for Work [ id=cb61280c-6f51-4a78-805c-b6a9d9970731, tags={ org.jellyfin.androidtv.integration.LeanbackChannelWorker } ]
04-10 12:46:03.768 V/io.ktor.client.plugins.defaultTransformers( 3336): Transformed with default transformers response body for http://IP:8096/Items/90-3cc4507bb3 to interface io.ktor.utils.io.ByteReadChannel (Kotlin reflection is not available)
04-10 12:46:03.790 D/WM-Processor( 3336): Processor cb61280c-6f51-4a78-805c-b6a9d9970731 executed; reschedule = false
04-10 12:46:03.791 D/WM-SystemJobService( 3336): cb61280c-6f51-4a78-805c-b6a9d9970731 executed on JobScheduler
04-10 12:46:03.801 D/WM-GreedyScheduler( 3336): Cancelling work ID cb61280c-6f51-4a78-805c-b6a9d9970731
04-10 12:46:03.816 D/WM-SystemJobScheduler( 3336): Scheduling work ID cb61280c-6f51-4a78-805c-b6a9d9970731Job ID 4085
04-10 12:46:03.882 D/FullDetailsFragment( 3336): Item type: Program
04-10 12:46:03.882 D/WM-SystemJobService( 3336): onStopJob for WorkGenerationalId(workSpecId=cb61280c-6f51-4a78-805c-b6a9d9970731, generation=0)
04-10 12:46:04.470 D/FullDetailsFragment( 3336): current time 1744253164468 last playback event time null last refresh time 1744253163881
04-10 12:46:04.719 I/org.jellyfin.sdk.api.ktor.KtorClient( 3336): GET http://IP:8096/Items/60e0f336-b7c7-758a-cb47-e95300ca1543
04-10 12:46:04.724 V/io.ktor.client.plugins.HttpPlainText( 3336): Adding Accept-Charset=UTF-8 to http://IP:8096/Items/60e0f336-b7c7-758a-cb47-e95300ca1543
04-10 12:46:04.741 V/io.ktor.client.plugins.HttpCallValidator( 3336): Validating response for request http://IP:8096/Items/60e0f336-b7c7-758a-cb47-e95300ca1543
04-10 12:46:04.741 V/io.ktor.client.plugins.DefaultResponseValidation( 3336): Skipping default response validation for http://IP:8096/Items/60e0f336-b7c7-758a-cb47-e95300ca1543
04-10 12:46:04.744 V/io.ktor.client.plugins.defaultTransformers( 3336): Transformed with default transformers response body for http://IP:8096/Items/60e0f336-b7c7-758a-cb47-e95300ca1543 to interface io.ktor.utils.io.ByteReadChannel (Kotlin reflection is not available)
04-10 12:46:04.763 D/NavigationRepositoryImpl( 3336): Navigating to Fragment(fragment=class org.jellyfin.androidtv.ui.playback.CustomPlaybackOverlayFragment (Kotlin reflection is not available), arguments=Bundle[{Position=0}]) (via navigate function)
04-10 12:46:04.937 I/ExoPlayerImpl( 3336): Init c73749c [AndroidXMedia3/1.6.0] [TV4, Smart TV Pro, , 30]
04-10 12:46:04.939 I/DefaultRenderersFactory( 3336): Loaded FfmpegVideoRenderer.
04-10 12:46:04.940 I/DefaultRenderersFactory( 3336): Loaded FfmpegAudioRenderer.
04-10 12:46:04.944 E/AudioEffect( 3336): set(): AudioFlinger could not create effect 0bed4300-ddd6-11db-8f34-0002a5d5c51b / ec7178ec-e5e1-4432-a3f4-4657e6795210, status: -1
04-10 12:46:04.944 E/AudioEffects-JNI( 3336): AudioEffect initCheck failed -3
04-10 12:46:04.944 E/AudioEffect-JAVA( 3336): Error code -3 when initializing AudioEffect.
04-10 12:46:04.959 E/ACRA    ( 3336): ACRA caught a RuntimeException for org.jellyfin.androidtv
04-10 12:46:04.959 E/ACRA    ( 3336): java.lang.RuntimeException: Cannot initialize effect engine for type: 0bed4300-ddd6-11db-8f34-0002a5d5c51b Error: -3
04-10 12:46:04.959 E/ACRA    ( 3336): 	at android.media.audiofx.AudioEffect.<init>(AudioEffect.java:521)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at android.media.audiofx.AudioEffect.<init>(AudioEffect.java:488)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at android.media.audiofx.AudioEffect.<init>(AudioEffect.java:462)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at android.media.audiofx.Equalizer.<init>(Equalizer.java:139)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at org.jellyfin.androidtv.ui.playback.VideoManager.enableAudioNightMode(VideoManager.java:628)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at org.jellyfin.androidtv.ui.playback.VideoManager.<init>(VideoManager.java:93)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at org.jellyfin.androidtv.ui.playback.CustomPlaybackOverlayFragment.onViewCreated(CustomPlaybackOverlayFragment.java:222)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at androidx.fragment.app.Fragment.performViewCreated(Fragment.java:3152)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:608)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:286)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:2214)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:2115)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at androidx.fragment.app.FragmentManager.execSingleAction(FragmentManager.java:2002)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at androidx.fragment.app.BackStackRecord.commitNow(BackStackRecord.java:317)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at org.jellyfin.androidtv.ui.browsing.DestinationFragmentView.activateHistoryEntry(DestinationFragmentView.kt:159)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at org.jellyfin.androidtv.ui.browsing.DestinationFragmentView.navigate(DestinationFragmentView.kt:94)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at org.jellyfin.androidtv.ui.browsing.MainActivity.handleNavigationAction(MainActivity.kt:118)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at org.jellyfin.androidtv.ui.browsing.MainActivity.access$handleNavigationAction(MainActivity.kt:33)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at org.jellyfin.androidtv.ui.browsing.MainActivity$onCreate$2.invokeSuspend(MainActivity.kt:66)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at org.jellyfin.androidtv.ui.browsing.MainActivity$onCreate$2.invoke(Unknown Source:8)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at org.jellyfin.androidtv.ui.browsing.MainActivity$onCreate$2.invoke(Unknown Source:4)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at kotlinx.coroutines.flow.FlowKt__TransformKt$onEach$$inlined$unsafeTransform$1$2.emit(Emitters.kt:50)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at kotlinx.coroutines.flow.FlowKt__ChannelsKt.emitAllImpl$FlowKt__ChannelsKt(Channels.kt:33)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at kotlinx.coroutines.flow.FlowKt__ChannelsKt.access$emitAllImpl$FlowKt__ChannelsKt(Channels.kt:1)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at kotlinx.coroutines.flow.FlowKt__ChannelsKt$emitAllImpl$1.invokeSuspend(Unknown Source:14)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at kotlinx.coroutines.EventLoop.processUnconfinedEvent(EventLoop.common.kt:65)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at kotlinx.coroutines.internal.DispatchedContinuation.resumeWith(DispatchedContinuation.kt:343)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:146)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:120)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:11)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:70)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at android.os.Handler.handleCallback(Handler.java:967)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at android.os.Handler.dispatchMessage(Handler.java:104)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at android.os.Looper.loop(Looper.java:250)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at android.app.ActivityThread.main(ActivityThread.java:7848)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at java.lang.reflect.Method.invoke(Native Method)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
04-10 12:46:04.959 E/ACRA    ( 3336): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1192)
04-10 12:46:04.959 E/ACRA    ( 3336): 	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@93fbb34, Dispatchers.Main.immediate]
04-10 12:46:04.959 D/ACRA    ( 3336): Building report
04-10 12:46:04.960 D/ACRA    ( 3336): Starting collectors with priority FIRST
04-10 12:46:04.961 D/ACRA    ( 3336): Calling collector org.acra.collector.LogCatCollector
04-10 12:46:04.961 D/ACRA    ( 3336): Calling collector org.acra.collector.DropBoxCollector
04-10 12:46:04.961 D/ACRA    ( 3336): Collector org.acra.collector.DropBoxCollector completed
04-10 12:46:04.961 D/ACRA    ( 3336): Calling collector org.acra.collector.StacktraceCollector
04-10 12:46:04.962 D/ACRA    ( 3336): Collector org.acra.collector.StacktraceCollector completed
04-10 12:46:04.966 D/ACRA    ( 3336): Retrieving logcat output (buffer:default)...

App information

App version: 0.18.7 (180799)
Package name: org.jellyfin.androidtv
Build:

{"BOARD":"RTD2851M","BOOTLOADER":"unknown","BRAND":"","CPU_ABI":"armeabi-v7a","CPU_ABI2":"armeabi","DEVICE":"TV4","DISPLAY":"RP1A.200622.001 release-keys","FINGERPRINT":"\4K_GB\/TV4:11\/RP1A.200622.001\/AR07:user\/release-keys","HARDWARE":"rtd288o","HOST":"ub16-113-37","ID":"RP1A.200622.001","IS_DEBUGGABLE":false,"IS_EMULATOR":false,"MANUFACTURER":"","MODEL":"Smart TV Pro","PERMISSIONS_REVIEW_REQUIRED":true,"PRODUCT":"G03_4K_GB","RADIO":"unknown","SUPPORTED_32_BIT_ABIS":["armeabi-v7a","armeabi"],"SUPPORTED_64_BIT_ABIS":[],"SUPPORTED_ABIS":["armeabi-v7a","armeabi"],"TAGS":"release-keys","TIME":1692197777000,"TYPE":"user","UNKNOWN":"unknown","USER":"jenkins","VERSION":{"ACTIVE_CODENAMES":[],"BASE_OS":"","CODENAME":"REL","INCREMENTAL":"AR07","PREVIEW_SDK_FINGERPRINT":"REL","PREVIEW_SDK_INT":0,"RELEASE":"11","RELEASE_OR_CODENAME":"11","SDK":"30","SDK_INT":30,"SECURITY_PATCH":"2023-06-05"}}

Build config:

{"APPLICATION_ID":"org.jellyfin.androidtv","BUILD_TYPE":"release","DEBUG":false,"DEVELOPMENT":false,"VERSION_CODE":180799,"VERSION_NAME":"0.18.7"}

Device information

Android version: 11
Device brand: ``
Device product: 4K_GB
Device model: `Smart TV`

Application version

0.18.7

Where did you install the app from?

Sideloaded APK

Device information

Shield

Android version

Android 11

Jellyfin server version

10.10.7

Other sources

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions