jellyfin / jellyfin-androidtv

Android TV Client for Jellyfin
https://jellyfin.org
GNU General Public License v2.0
2.74k stars 466 forks source link

4k hdr/dv content playback is wonky #2270

Closed krutburken closed 1 year ago

krutburken commented 1 year ago

Describe the bug

Having some problems with 4k hdr content on 0.15.0-beta1 that were not present on 0.14.5. Most common problems are crash on play, or crash when stopping playback (pressing back button). I'll see if I can test some more and be a bit more specific.

Log is from a crash on playback.

Logs


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

Logs

Stack Trace:

java.lang.RuntimeException: Unable to start activity ComponentInfo{org.jellyfin.androidtv/org.jellyfin.androidtv.ui.browsing.MainActivity}: java.lang.NullPointerException
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3432)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3596)
    at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85)
    at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
    at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2067)
    at android.os.Handler.dispatchMessage(Handler.java:106)
    at android.os.Looper.loop(Looper.java:223)
    at android.app.ActivityThread.main(ActivityThread.java:7668)
    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:947)
Caused by: java.lang.NullPointerException
    at org.jellyfin.androidtv.data.querying.StdItemQuery.<init>(StdItemQuery.kt:23)
    at org.jellyfin.androidtv.ui.browsing.BrowseGridFragment.setupQueries(BrowseGridFragment.java:568)
    at org.jellyfin.androidtv.ui.browsing.BrowseGridFragment.onCreate(BrowseGridFragment.java:177)
    at androidx.fragment.app.Fragment.performCreate(Fragment.java:3090)
    at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:475)
    at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:257)
    at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:121)
    at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1433)
    at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2977)
    at androidx.fragment.app.FragmentManager.dispatchCreate(FragmentManager.java:2884)
    at androidx.fragment.app.FragmentController.dispatchCreate(FragmentController.java:252)
    at androidx.fragment.app.FragmentActivity.onCreate(FragmentActivity.java:220)
    at org.jellyfin.androidtv.ui.browsing.MainActivity.onCreate(MainActivity.kt:36)
    at android.app.Activity.performCreate(Activity.java:8000)
    at android.app.Activity.performCreate(Activity.java:7984)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1309)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3405)
    ... 11 more

Logcat:

--------- beginning of main
11-16 20:35:56.317 D/VideoManager(16108): Surface attached
11-16 20:35:56.328 D/PlaybackController(16108): default audio index set to 3
11-16 20:35:56.328 D/PlaybackController(16108): default audio index set to 3 remote default 3
11-16 20:35:56.328 D/PlaybackController(16108): default sub index set to 0 remote default 0
11-16 20:35:56.328 I/PlaybackController(16108): Playing back in native mode.
11-16 20:35:56.329 D/VideoManager(16108): Setting playback speed: 1.000000
11-16 20:35:56.345 I/ViewTarget(16108): Glide treats LayoutParams.WRAP_CONTENT as a request for an image the size of this device's screen dimensions. If you want to load the original image and are ok with the corresponding memory cost and OOMs (depending on the input size), use override(Target.SIZE_ORIGINAL). Otherwise, use LayoutParams.MATCH_PARENT, set layout_width and layout_height to fixed dimension, or use .override() with fixed dimensions.
11-16 20:35:56.350 I/VideoManager(16108): Video path set to: https://my.cool.server/Videos/0013a7ee-e5b2-2b45-e2bc-bf3b558ed1cc/stream.mkv?api_key=bfaf9ab29d74491fa98abed8045bd4e9&DeviceId=632cca64f4ea714b0f588807c86d67e736a73145&MediaSourceId=0013a7eee5b22b45e2bcbf3b558ed1cc&Tag=4d190900ccb854fa07aa4afd4b031f71&Static=true
11-16 20:35:56.362 D/VideoManager(16108): Caught player timeline change - reason: PLAYLIST_CHANGED
11-16 20:35:56.363 D/VideoManager(16108): Player is buffering
11-16 20:35:56.394 D/jellyfin-apiclient(16108): Adding request to queue: https://my.cool.server/Sessions/Playing
11-16 20:35:56.394 I/ReportingHelper(16108): Playback of Resident Evil: Welcome to Raccoon City started.
11-16 20:35:56.400 D/VideoManager(16108): Caught player timeline change - reason: SOURCE_UPDATE
11-16 20:35:56.544 E/Surface (16108): freeAllBuffers: 1 buffers were freed while being dequeued!
11-16 20:35:56.549 D/ACRA    (16108): onActivityStopped class org.jellyfin.androidtv.ui.browsing.MainActivity
11-16 20:35:56.550 D/ACRA    (16108): onActivitySaveInstanceState class org.jellyfin.androidtv.ui.browsing.MainActivity
11-16 20:35:56.653 D/VideoManager(16108): Caught player timeline change - reason: SOURCE_UPDATE
11-16 20:35:56.654 D/MediaCodecInfo(16108): NoSupport [codec.profileLevel, dvhe.07.06, video/dolby-vision] [OMX.Nvidia.DOVI.decode, video/dolby-vision] [sif, SHIELD Android TV, NVIDIA, 30]
11-16 20:35:56.654 D/MediaCodecInfo(16108): NoSupport [codec.profileLevel, dvhe.07.06, video/dolby-vision] [OMX.Nvidia.DOVI.decode, video/dolby-vision] [sif, SHIELD Android TV, NVIDIA, 30]
11-16 20:35:56.662 I/android_os_HwBinder(16108): HwBinder: Starting thread pool for getting: vendor.nvidia.hardware.cpl.service_common@1.0::INvCplHalCommonService/default
11-16 20:35:56.664 D/VideoManager(16108): Tracks changed
11-16 20:35:56.688 I/OMXClient(16108): IOmx service obtained
11-16 20:35:56.740 I/android_os_HwBinder(16108): HwBinder: Starting thread pool for getting: vendor.nvidia.hardware.cpl.service_common@1.0::INvCplHalCommonService/default
11-16 20:35:56.742 I/chatty  (16108): uid=10107(org.jellyfin.androidtv) identical 1 line
11-16 20:35:56.744 I/android_os_HwBinder(16108): HwBinder: Starting thread pool for getting: vendor.nvidia.hardware.cpl.service_common@1.0::INvCplHalCommonService/default
11-16 20:35:56.745 D/SurfaceUtils(16108): connecting to surface 0xb9407e08, reason connectToSurface
11-16 20:35:56.745 I/MediaCodec(16108): [OMX.Nvidia.DOVI.decode] setting surface generation to 16494593
11-16 20:35:56.745 D/SurfaceUtils(16108): disconnecting from surface 0xb9407e08, reason connectToSurface(reconnect)
11-16 20:35:56.745 D/SurfaceUtils(16108): connecting to surface 0xb9407e08, reason connectToSurface(reconnect)
11-16 20:35:56.752 I/ACodec  (16108): Enable timestamp filtering for Video Decoder
11-16 20:35:56.753 I/ACodec  (16108): Setting Dolby Vision Specific attributes to Video Decoder
11-16 20:35:56.774 I/ACodec  (16108): Get OMX_IndexConfigScale: 0x10000/0x10000
11-16 20:35:56.774 I/ACodec  (16108): Scaled Width is 3840, height is 2160
11-16 20:35:56.801 D/SurfaceUtils(16108): set up nativeWindow 0xb9407e08 for 3840x2160, color 0x106, rotation 0, usage 0x2900
11-16 20:35:56.847 I/ACodec  (16108): Get OMX_IndexConfigScale: 0x10000/0x10000
11-16 20:35:56.847 I/ACodec  (16108): Scaled Width is 3840, height is 2160
11-16 20:35:56.848 D/SurfaceUtils(16108): set up nativeWindow 0xb9407e08 for 3840x2160, color 0x18b, rotation 0, usage 0x2900
11-16 20:35:56.924 I/jellyfin-apiclient(16108): Response received from: https://my.cool.server/Sessions/Playing
11-16 20:35:56.991 I/org.jellyfin.sdk.api.sockets.OkHttpWebsocketSession(16108): Receiving (raw) message {"MessageType":"UserDataChanged","MessageId":"1f40849a8a584c7688f90f2a12ccd4a9","Data":{"UserId":"11e69615e9fa400ebe8e0e5b638b314c","UserDataList":[{"PlaybackPositionTicks":0,"PlayCount":92,"IsFavorite":false,"LastPlayedDate":"2022-11-16T19:35:56.615022Z","Played":false,"Key":"460458","ItemId":"0013a7eee5b22b45e2bcbf3b558ed1cc"},{"UnplayedItemCount":1,"PlaybackPositionTicks":0,"PlayCount":0,"IsFavorite":false,"Played":false,"Key":"4c7507ea-d692-0945-268b-a3cd4d9e2aa8","ItemId":"4c7507ead6920945268ba3cd4d9e2aa8"}]}}
11-16 20:35:57.365 I/lyfin.androidt(16108): Background young concurrent copying GC freed 202593(14MB) AllocSpace objects, 20(724KB) LOS objects, 22% free, 40MB/52MB, paused 6.405ms total 320.840ms
11-16 20:35:58.690 E/lyfin.androidt(16353): Not starting debugger since process cannot load the jdwp agent.
11-16 20:35:58.983 W/lyfin.androidt(16353): JIT profile information will not be recorded: profile file does not exist.
11-16 20:35:58.983 I/chatty  (16353): uid=10107(org.jellyfin.androidtv) identical 1 line
11-16 20:35:58.984 W/lyfin.androidt(16353): JIT profile information will not be recorded: profile file does not exist.
11-16 20:35:59.001 D/NetworkSecurityConfig(16353): No Network Security Config specified, using platform default
11-16 20:35:59.001 D/NetworkSecurityConfig(16353): No Network Security Config specified, using platform default
11-16 20:35:59.121 D/ACRA    (16353): ACRA processName='org.jellyfin.androidtv'
11-16 20:35:59.129 I/ACRA    (16353): ACRA is enabled for org.jellyfin.androidtv, initializing...
11-16 20:35:59.129 D/ACRA    (16353): SimplePluginLoader loading services from plugin classes : [Ljava.lang.Class;@70c9614
11-16 20:35:59.129 D/ACRA    (16353): ServicePluginLoader loading services from ServiceLoader : java.util.ServiceLoader[org.acra.collector.Collector]
11-16 20:35:59.219 D/ACRA    (16353): Loaded Collector of type org.acra.collector.ConfigurationCollector
11-16 20:35:59.219 D/ACRA    (16353): Loaded Collector of type org.acra.collector.CustomDataCollector
11-16 20:35:59.219 D/ACRA    (16353): Loaded Collector of type org.acra.collector.DeviceFeaturesCollector
11-16 20:35:59.219 D/ACRA    (16353): Loaded Collector of type org.acra.collector.DeviceIdCollector
11-16 20:35:59.219 D/ACRA    (16353): Loaded Collector of type org.acra.collector.DisplayManagerCollector
11-16 20:35:59.232 D/ACRA    (16353): Loaded Collector of type org.acra.collector.DropBoxCollector
11-16 20:35:59.232 D/ACRA    (16353): Loaded Collector of type org.acra.collector.LogCatCollector
11-16 20:35:59.232 D/ACRA    (16353): Loaded Collector of type org.acra.collector.LogFileCollector
11-16 20:35:59.232 D/ACRA    (16353): Loaded Collector of type org.acra.collector.MediaCodecListCollector
11-16 20:35:59.232 D/ACRA    (16353): Loaded Collector of type org.acra.collector.MemoryInfoCollector
11-16 20:35:59.232 D/ACRA    (16353): Loaded Collector of type org.acra.collector.PackageManagerCollector
11-16 20:35:59.232 D/ACRA    (16353): Loaded Collector of type org.acra.collector.ReflectionCollector
11-16 20:35:59.232 D/ACRA    (16353): Loaded Collector of type org.acra.collector.SettingsCollector
11-16 20:35:59.232 D/ACRA    (16353): Loaded Collector of type org.acra.collector.SharedPreferencesCollector
11-16 20:35:59.232 D/ACRA    (16353): Loaded Collector of type org.acra.collector.SimpleValuesCollector
11-16 20:35:59.232 D/ACRA    (16353): Loaded Collector of type org.acra.collector.StacktraceCollector
11-16 20:35:59.232 D/ACRA    (16353): Loaded Collector of type org.acra.collector.ThreadCollector
11-16 20:35:59.506 D/ACRA    (16353): Loaded Collector of type org.acra.collector.TimeCollector
11-16 20:35:59.509 D/ACRA    (16353): SimplePluginLoader loading services from plugin classes : [Ljava.lang.Class;@70c9614
11-16 20:35:59.509 D/ACRA    (16353): ServicePluginLoader loading services from ServiceLoader : java.util.ServiceLoader[org.acra.scheduler.SenderSchedulerFactory]
11-16 20:35:59.509 D/ACRA    (16353): SimplePluginLoader loading services from plugin classes : [Ljava.lang.Class;@70c9614
11-16 20:35:59.510 D/ACRA    (16353): ServicePluginLoader loading services from ServiceLoader : java.util.ServiceLoader[org.acra.config.ReportingAdministrator]
11-16 20:35:59.559 I/LogInitializer(16353): Debug tree planted
11-16 20:35:59.573 W/lyfin.androidt(16353): Accessing hidden field Ljava/util/Collections$SynchronizedCollection;->mutex:Ljava/lang/Object; (greylist-max-o, reflection, denied)
11-16 20:35:59.574 W/lyfin.androidt(16353): Accessing hidden method Ljava/util/Collections$SynchronizedSet;-><init>(Ljava/util/Set;Ljava/lang/Object;)V (greylist-max-o, reflection, denied)
11-16 20:35:59.574 W/lyfin.androidt(16353): Accessing hidden method Ljava/util/Collections$SynchronizedCollection;-><init>(Ljava/util/Collection;Ljava/lang/Object;)V (greylist-max-o, reflection, denied)
11-16 20:35:59.581 I/MigrationContext(16353): Requested migration from 6 to 6. Found 3 migrations in total.
11-16 20:35:59.581 I/ProcessLifecycleInitializer$create(16353): Registering 2 ActivityLifecycleCallbacks
11-16 20:35:59.581 D/WM-WrkMgrInitializer(16353): Initializing WorkManager with default configuration.
11-16 20:35:59.590 I/TetheringManager(16353): registerTetheringEventCallback:org.jellyfin.androidtv
11-16 20:35:59.592 D/SessionRepositoryImpl(16353): Restoring session
11-16 20:35:59.607 D/SessionRepositoryImpl(16353): Updating current session. userId=11e69615-e9fa-400e-be8e-0e5b638b314c apiBindingSuccess=true
11-16 20:35:59.609 I/org.jellyfin.sdk.api.client.KtorClient(16353): GET https://my.cool.server/Users/Me
11-16 20:35:59.615 D/ACRA    (16353): ACRA processName='org.jellyfin.androidtv'
11-16 20:35:59.635 W/AuthenticatedUserCallbacks(16353): Activity org.jellyfin.androidtv.ui.browsing.MainActivity started without a session, bouncing to StartupActivity
11-16 20:35:59.643 I/AppThemeCallbacks(16353): Applying theme: MUTED_PURPLE
11-16 20:35:59.659 D/ACRA    (16353): onActivityCreated class org.jellyfin.androidtv.ui.browsing.MainActivity
11-16 20:35:59.683 I/org.jellyfin.sdk.api.client.KtorClient(16353): GET https://my.cool.server/DisplayPreferences/ec27261a0c809aa017c1c9e0d02c31ac?userId=11e69615-e9fa-400e-be8e-0e5b638b314c&client=jellyfin-androidtv
11-16 20:35:59.880 D/BrowseGridFragment(16353): numCardsScreen <0>
11-16 20:35:59.880 D/AndroidRuntime(16353): Shutting down VM
--------- beginning of crash
11-16 20:35:59.881 E/AndroidRuntime(16353): FATAL EXCEPTION: main
11-16 20:35:59.881 E/AndroidRuntime(16353): Process: org.jellyfin.androidtv, PID: 16353
11-16 20:35:59.881 E/AndroidRuntime(16353): java.lang.RuntimeException: Unable to start activity ComponentInfo{org.jellyfin.androidtv/org.jellyfin.androidtv.ui.browsing.MainActivity}: java.lang.NullPointerException
11-16 20:35:59.881 E/AndroidRuntime(16353):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3432)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3596)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2067)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at android.os.Handler.dispatchMessage(Handler.java:106)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at android.os.Looper.loop(Looper.java:223)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at android.app.ActivityThread.main(ActivityThread.java:7668)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at java.lang.reflect.Method.invoke(Native Method)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
11-16 20:35:59.881 E/AndroidRuntime(16353): Caused by: java.lang.NullPointerException
11-16 20:35:59.881 E/AndroidRuntime(16353):     at org.jellyfin.androidtv.data.querying.StdItemQuery.<init>(StdItemQuery.kt:23)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at org.jellyfin.androidtv.ui.browsing.BrowseGridFragment.setupQueries(BrowseGridFragment.java:568)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at org.jellyfin.androidtv.ui.browsing.BrowseGridFragment.onCreate(BrowseGridFragment.java:177)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at androidx.fragment.app.Fragment.performCreate(Fragment.java:3090)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:475)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:257)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:121)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1433)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2977)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at androidx.fragment.app.FragmentManager.dispatchCreate(FragmentManager.java:2884)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at androidx.fragment.app.FragmentController.dispatchCreate(FragmentController.java:252)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at androidx.fragment.app.FragmentActivity.onCreate(FragmentActivity.java:220)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at org.jellyfin.androidtv.ui.browsing.MainActivity.onCreate(MainActivity.kt:36)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at android.app.Activity.performCreate(Activity.java:8000)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at android.app.Activity.performCreate(Activity.java:7984)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1309)
11-16 20:35:59.881 E/AndroidRuntime(16353):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3405)
11-16 20:35:59.881 E/AndroidRuntime(16353):     ... 11 more
11-16 20:35:59.881 E/ACRA    (16353): ACRA caught a RuntimeException for org.jellyfin.androidtv
11-16 20:35:59.881 E/ACRA    (16353): java.lang.RuntimeException: Unable to start activity ComponentInfo{org.jellyfin.androidtv/org.jellyfin.androidtv.ui.browsing.MainActivity}: java.lang.NullPointerException
11-16 20:35:59.881 E/ACRA    (16353):   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3432)
11-16 20:35:59.881 E/ACRA    (16353):   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3596)
11-16 20:35:59.881 E/ACRA    (16353):   at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85)
11-16 20:35:59.881 E/ACRA    (16353):   at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
11-16 20:35:59.881 E/ACRA    (16353):   at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
11-16 20:35:59.881 E/ACRA    (16353):   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2067)
11-16 20:35:59.881 E/ACRA    (16353):   at android.os.Handler.dispatchMessage(Handler.java:106)
11-16 20:35:59.881 E/ACRA    (16353):   at android.os.Looper.loop(Looper.java:223)
11-16 20:35:59.881 E/ACRA    (16353):   at android.app.ActivityThread.main(ActivityThread.java:7668)
11-16 20:35:59.881 E/ACRA    (16353):   at java.lang.reflect.Method.invoke(Native Method)
11-16 20:35:59.881 E/ACRA    (16353):   at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
11-16 20:35:59.881 E/ACRA    (16353):   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
11-16 20:35:59.881 E/ACRA    (16353): Caused by: java.lang.NullPointerException
11-16 20:35:59.881 E/ACRA    (16353):   at org.jellyfin.androidtv.data.querying.StdItemQuery.<init>(StdItemQuery.kt:23)
11-16 20:35:59.881 E/ACRA    (16353):   at org.jellyfin.androidtv.ui.browsing.BrowseGridFragment.setupQueries(BrowseGridFragment.java:568)
11-16 20:35:59.881 E/ACRA    (16353):   at org.jellyfin.androidtv.ui.browsing.BrowseGridFragment.onCreate(BrowseGridFragment.java:177)
11-16 20:35:59.881 E/ACRA    (16353):   at androidx.fragment.app.Fragment.performCreate(Fragment.java:3090)
11-16 20:35:59.881 E/ACRA    (16353):   at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:475)
11-16 20:35:59.881 E/ACRA    (16353):   at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:257)
11-16 20:35:59.881 E/ACRA    (16353):   at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:121)
11-16 20:35:59.881 E/ACRA    (16353):   at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1433)
11-16 20:35:59.881 E/ACRA    (16353):   at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2977)
11-16 20:35:59.881 E/ACRA    (16353):   at androidx.fragment.app.FragmentManager.dispatchCreate(FragmentManager.java:2884)
11-16 20:35:59.881 E/ACRA    (16353):   at androidx.fragment.app.FragmentController.dispatchCreate(FragmentController.java:252)
11-16 20:35:59.881 E/ACRA    (16353):   at androidx.fragment.app.FragmentActivity.onCreate(FragmentActivity.java:220)
11-16 20:35:59.881 E/ACRA    (16353):   at org.jellyfin.androidtv.ui.browsing.MainActivity.onCreate(MainActivity.kt:36)
11-16 20:35:59.881 E/ACRA    (16353):   at android.app.Activity.performCreate(Activity.java:8000)
11-16 20:35:59.881 E/ACRA    (16353):   at android.app.Activity.performCreate(Activity.java:7984)
11-16 20:35:59.881 E/ACRA    (16353):   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1309)
11-16 20:35:59.881 E/ACRA    (16353):   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3405)
11-16 20:35:59.881 E/ACRA    (16353):   ... 11 more
11-16 20:35:59.881 D/ACRA    (16353): Building report
11-16 20:35:59.881 D/ACRA    (16353): Starting collectors with priority FIRST
11-16 20:35:59.882 D/ACRA    (16353): Calling collector org.acra.collector.DropBoxCollector
11-16 20:35:59.882 D/ACRA    (16353): Calling collector org.acra.collector.LogCatCollector
11-16 20:35:59.882 D/ACRA    (16353): Collector org.acra.collector.DropBoxCollector completed
11-16 20:35:59.882 D/ACRA    (16353): Calling collector org.acra.collector.StacktraceCollector
11-16 20:35:59.882 D/ACRA    (16353): Collector org.acra.collector.StacktraceCollector completed
11-16 20:35:59.894 D/ACRA    (16353): Retrieving logcat output (buffer:default)...

App information

App version: 0.15.0-beta.1 (150001)
Package name: org.jellyfin.androidtv
Build:

{"BOARD":"sif","BOOTLOADER":"32.00.2019.50-t210-69ebfcbe","BRAND":"NVIDIA","CPU_ABI":"armeabi-v7a","CPU_ABI2":"armeabi","DEVICE":"sif","DISPLAY":"RQ1A.210105.003.7825199_3167.5736","FINGERPRINT":"NVIDIA\/sif\/sif:11\/RQ1A.210105.003\/7825199_3167.5736:user\/release-keys","HARDWARE":"sif","HOST":"mobile-u64-5306-d6000","ID":"RQ1A.210105.003","IS_DEBUGGABLE":false,"IS_EMULATOR":false,"MANUFACTURER":"NVIDIA","MODEL":"SHIELD Android TV","PERMISSIONS_REVIEW_REQUIRED":true,"PRODUCT":"sif","RADIO":"unknown","SUPPORTED_32_BIT_ABIS":["armeabi-v7a","armeabi"],"SUPPORTED_64_BIT_ABIS":[],"SUPPORTED_ABIS":["armeabi-v7a","armeabi"],"TAGS":"release-keys","TIME":1665975946000,"TYPE":"user","UNKNOWN":"unknown","USER":"NVIDIA","VERSION":{"ACTIVE_CODENAMES":[],"BASE_OS":"","CODENAME":"REL","INCREMENTAL":"7825199_3167.5736","PREVIEW_SDK_FINGERPRINT":"REL","PREVIEW_SDK_INT":0,"RELEASE":"11","RELEASE_OR_CODENAME":"11","SDK":"30","SDK_INT":30,"SECURITY_PATCH":"2022-04-05"}}

Build config:

{"APPLICATION_ID":"org.jellyfin.androidtv","BUILD_TYPE":"release","DEBUG":false,"DEVELOPMENT":false,"VERSION_CODE":150001,"VERSION_NAME":"0.15.0-beta.1"}

Device information

Android version: 11
Device brand: NVIDIA
Device product: sif
Device model: SHIELD Android TV

Crash information

Start time: 2022-11-16T20:35:59.509+01:00
Crash time: 2022-11-16T20:36:00.147+01:00

Application version

0.15.0-beta1

Where did you install the app from?

Google Play

Device information

Shield TV

Android version

11

Jellyfin server version

10.8.7

krutburken commented 1 year ago

A quick update. It seems to be an incompatibility with the Nvidia Shield device in particular. I've tried it on a Google TV and my Philips TV with ATV where 4KHDR appears to work fine. Did a factory reset on my shield but HDR playback is still broken and crashes the app in various ways

krutburken commented 1 year ago

Has anything changed here since beta1? 4k/hdr playback seems to work fine on beta4.

nielsvanvelzen commented 1 year ago

There's been a lot of crash fixes since the first beta. I'm closing this one as solved.

Turiok commented 1 year ago

Hi, I have the same crash with 0.15.6. I'm not using 4K or HDR. But I'm encoding all my videos in HEVC. It's often when I start the video. After several starting. It works

Log --- client: Jellyfin for Android TV client_version: 0.15.6 client_repository: https://github.com/jellyfin/jellyfin-androidtv type: crash_report format: markdown --- ### Logs ***Stack Trace***: ```log java.lang.RuntimeException: Unable to start activity ComponentInfo{org.jellyfin.androidtv/org.jellyfin.androidtv.ui.browsing.MainActivity}: java.lang.NullPointerException at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2914) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3049) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1809) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:193) at android.app.ActivityThread.main(ActivityThread.java:6680) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) Caused by: java.lang.NullPointerException at org.jellyfin.androidtv.data.querying.StdItemQuery.(StdItemQuery.kt:23) at org.jellyfin.androidtv.ui.browsing.BrowseGridFragment.setupQueries(BrowseGridFragment.java:547) at org.jellyfin.androidtv.ui.browsing.BrowseGridFragment.onCreate(BrowseGridFragment.java:177) at androidx.fragment.app.Fragment.performCreate(Fragment.java:3090) at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:475) at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:257) at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:121) at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1433) at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2977) at androidx.fragment.app.FragmentManager.dispatchCreate(FragmentManager.java:2884) at androidx.fragment.app.FragmentController.dispatchCreate(FragmentController.java:252) at androidx.fragment.app.FragmentActivity.onCreate(FragmentActivity.java:220) at org.jellyfin.androidtv.ui.browsing.MainActivity.onCreate(MainActivity.kt:40) at android.app.Activity.performCreate(Activity.java:7144) at android.app.Activity.performCreate(Activity.java:7135) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1271) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2894) ... 11 more ``` ***Logcat***: ```log 04-11 20:54:28.391 D/ACRA (19814): Loaded Collector of type org.acra.collector.ThreadCollector 04-11 20:54:28.406 D/ACRA (19814): Loaded Collector of type org.acra.collector.TimeCollector 04-11 20:54:28.411 D/ACRA (19814): SimplePluginLoader loading services from plugin classes : [Ljava.lang.Class;@1ecdcaf 04-11 20:54:28.411 D/ACRA (19814): ServicePluginLoader loading services from ServiceLoader : java.util.ServiceLoader[org.acra.scheduler.SenderSchedulerFactory] 04-11 20:54:28.412 D/ACRA (19814): SimplePluginLoader loading services from plugin classes : [Ljava.lang.Class;@1ecdcaf 04-11 20:54:28.412 D/ACRA (19814): ServicePluginLoader loading services from ServiceLoader : java.util.ServiceLoader[org.acra.config.ReportingAdministrator] 04-11 20:54:28.418 D/WM-WrkMgrInitializer(19814): Initializing WorkManager with default configuration. 04-11 20:54:28.432 I/LogInitializer(19814): Debug tree planted 04-11 20:54:28.452 I/MigrationContext(19814): Requested migration from 2 to 2. Found 1 migrations in total. 04-11 20:54:28.468 W/lyfin.androidt(19814): Accessing hidden field Ljava/util/Collections$SynchronizedCollection;->mutex:Ljava/lang/Object; (dark greylist, reflection) 04-11 20:54:28.471 W/lyfin.androidt(19814): Accessing hidden method Ljava/util/Collections$SynchronizedSet;->(Ljava/util/Set;Ljava/lang/Object;)V (dark greylist, reflection) 04-11 20:54:28.471 W/lyfin.androidt(19814): Accessing hidden method Ljava/util/Collections$SynchronizedCollection;->(Ljava/util/Collection;Ljava/lang/Object;)V (dark greylist, reflection) 04-11 20:54:28.481 D/SessionRepositoryImpl(19814): Restoring session 04-11 20:54:28.501 D/SessionRepositoryImpl(19814): Updating current session. userId=deb445a7-b5ef-4679-b137-b4be3df587fa apiBindingSuccess=true 04-11 20:54:28.507 I/org.jellyfin.sdk.api.client.KtorClient(19814): GET https://jellyfin.dcrest.duckdns.org/Users/Me 04-11 20:54:28.518 I/ProcessLifecycleInitializer$create(19814): Registering 0 ActivityLifecycleCallbacks 04-11 20:54:28.525 D/ACRA (19814): ACRA processName='org.jellyfin.androidtv' 04-11 20:54:28.542 D/NetworkSecurityConfig(19814): No Network Security Config specified, using platform default 04-11 20:54:28.565 I/MigrationContext(19814): Requested migration from 6 to 6. Found 3 migrations in total. 04-11 20:54:28.566 I/ActivityThemeExtensionsKt(19814): Applying theme DARK 04-11 20:54:28.576 D/ACRA (19814): onActivityCreated class org.jellyfin.androidtv.ui.browsing.MainActivity 04-11 20:54:28.623 I/org.jellyfin.sdk.api.client.KtorClient(19814): GET https://jellyfin.dcrest.duckdns.org/DisplayPreferences/ca0de50d2c11073f53df7c82dc3fe2a4?userId=deb445a7-b5ef-4679-b137-b4be3df587fa&client=jellyfin-androidtv 04-11 20:54:28.862 D/BrowseGridFragment(19814): numCardsScreen <0> 04-11 20:54:28.865 D/AndroidRuntime(19814): Shutting down VM 04-11 20:54:28.865 E/AndroidRuntime(19814): FATAL EXCEPTION: main 04-11 20:54:28.865 E/AndroidRuntime(19814): Process: org.jellyfin.androidtv, PID: 19814 04-11 20:54:28.865 E/AndroidRuntime(19814): java.lang.RuntimeException: Unable to start activity ComponentInfo{org.jellyfin.androidtv/org.jellyfin.androidtv.ui.browsing.MainActivity}: java.lang.NullPointerException 04-11 20:54:28.865 E/AndroidRuntime(19814): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2914) 04-11 20:54:28.865 E/AndroidRuntime(19814): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3049) 04-11 20:54:28.865 E/AndroidRuntime(19814): at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78) 04-11 20:54:28.865 E/AndroidRuntime(19814): at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108) 04-11 20:54:28.865 E/AndroidRuntime(19814): at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68) 04-11 20:54:28.865 E/AndroidRuntime(19814): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1809) 04-11 20:54:28.865 E/AndroidRuntime(19814): at android.os.Handler.dispatchMessage(Handler.java:106) 04-11 20:54:28.865 E/AndroidRuntime(19814): at android.os.Looper.loop(Looper.java:193) 04-11 20:54:28.865 E/AndroidRuntime(19814): at android.app.ActivityThread.main(ActivityThread.java:6680) 04-11 20:54:28.865 E/AndroidRuntime(19814): at java.lang.reflect.Method.invoke(Native Method) 04-11 20:54:28.865 E/AndroidRuntime(19814): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) 04-11 20:54:28.865 E/AndroidRuntime(19814): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) 04-11 20:54:28.865 E/AndroidRuntime(19814): Caused by: java.lang.NullPointerException 04-11 20:54:28.865 E/AndroidRuntime(19814): at org.jellyfin.androidtv.data.querying.StdItemQuery.(StdItemQuery.kt:23) 04-11 20:54:28.865 E/AndroidRuntime(19814): at org.jellyfin.androidtv.ui.browsing.BrowseGridFragment.setupQueries(BrowseGridFragment.java:547) 04-11 20:54:28.865 E/AndroidRuntime(19814): at org.jellyfin.androidtv.ui.browsing.BrowseGridFragment.onCreate(BrowseGridFragment.java:177) 04-11 20:54:28.865 E/AndroidRuntime(19814): at androidx.fragment.app.Fragment.performCreate(Fragment.java:3090) 04-11 20:54:28.865 E/AndroidRuntime(19814): at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:475) 04-11 20:54:28.865 E/AndroidRuntime(19814): at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:257) 04-11 20:54:28.865 E/AndroidRuntime(19814): at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:121) 04-11 20:54:28.865 E/AndroidRuntime(19814): at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1433) 04-11 20:54:28.865 E/AndroidRuntime(19814): at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2977) 04-11 20:54:28.865 E/AndroidRuntime(19814): at androidx.fragment.app.FragmentManager.dispatchCreate(FragmentManager.java:2884) 04-11 20:54:28.865 E/AndroidRuntime(19814): at androidx.fragment.app.FragmentController.dispatchCreate(FragmentController.java:252) 04-11 20:54:28.865 E/AndroidRuntime(19814): at androidx.fragment.app.FragmentActivity.onCreate(FragmentActivity.java:220) 04-11 20:54:28.865 E/AndroidRuntime(19814): at org.jellyfin.androidtv.ui.browsing.MainActivity.onCreate(MainActivity.kt:40) 04-11 20:54:28.865 E/AndroidRuntime(19814): at android.app.Activity.performCreate(Activity.java:7144) 04-11 20:54:28.865 E/AndroidRuntime(19814): at android.app.Activity.performCreate(Activity.java:7135) 04-11 20:54:28.865 E/AndroidRuntime(19814): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1271) 04-11 20:54:28.865 E/AndroidRuntime(19814): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2894) 04-11 20:54:28.865 E/AndroidRuntime(19814): ... 11 more 04-11 20:54:28.866 E/ACRA (19814): ACRA caught a RuntimeException for org.jellyfin.androidtv 04-11 20:54:28.866 E/ACRA (19814): java.lang.RuntimeException: Unable to start activity ComponentInfo{org.jellyfin.androidtv/org.jellyfin.androidtv.ui.browsing.MainActivity}: java.lang.NullPointerException 04-11 20:54:28.866 E/ACRA (19814): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2914) 04-11 20:54:28.866 E/ACRA (19814): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3049) 04-11 20:54:28.866 E/ACRA (19814): at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78) 04-11 20:54:28.866 E/ACRA (19814): at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108) 04-11 20:54:28.866 E/ACRA (19814): at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68) 04-11 20:54:28.866 E/ACRA (19814): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1809) 04-11 20:54:28.866 E/ACRA (19814): at android.os.Handler.dispatchMessage(Handler.java:106) 04-11 20:54:28.866 E/ACRA (19814): at android.os.Looper.loop(Looper.java:193) 04-11 20:54:28.866 E/ACRA (19814): at android.app.ActivityThread.main(ActivityThread.java:6680) 04-11 20:54:28.866 E/ACRA (19814): at java.lang.reflect.Method.invoke(Native Method) 04-11 20:54:28.866 E/ACRA (19814): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) 04-11 20:54:28.866 E/ACRA (19814): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) 04-11 20:54:28.866 E/ACRA (19814): Caused by: java.lang.NullPointerException 04-11 20:54:28.866 E/ACRA (19814): at org.jellyfin.androidtv.data.querying.StdItemQuery.(StdItemQuery.kt:23) 04-11 20:54:28.866 E/ACRA (19814): at org.jellyfin.androidtv.ui.browsing.BrowseGridFragment.setupQueries(BrowseGridFragment.java:547) 04-11 20:54:28.866 E/ACRA (19814): at org.jellyfin.androidtv.ui.browsing.BrowseGridFragment.onCreate(BrowseGridFragment.java:177) 04-11 20:54:28.866 E/ACRA (19814): at androidx.fragment.app.Fragment.performCreate(Fragment.java:3090) 04-11 20:54:28.866 E/ACRA (19814): at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:475) 04-11 20:54:28.866 E/ACRA (19814): at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:257) 04-11 20:54:28.866 E/ACRA (19814): at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:121) 04-11 20:54:28.866 E/ACRA (19814): at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1433) 04-11 20:54:28.866 E/ACRA (19814): at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2977) 04-11 20:54:28.866 E/ACRA (19814): at androidx.fragment.app.FragmentManager.dispatchCreate(FragmentManager.java:2884) 04-11 20:54:28.866 E/ACRA (19814): at androidx.fragment.app.FragmentController.dispatchCreate(FragmentController.java:252) 04-11 20:54:28.866 E/ACRA (19814): at androidx.fragment.app.FragmentActivity.onCreate(FragmentActivity.java:220) 04-11 20:54:28.866 E/ACRA (19814): at org.jellyfin.androidtv.ui.browsing.MainActivity.onCreate(MainActivity.kt:40) 04-11 20:54:28.866 E/ACRA (19814): at android.app.Activity.performCreate(Activity.java:7144) 04-11 20:54:28.866 E/ACRA (19814): at android.app.Activity.performCreate(Activity.java:7135) 04-11 20:54:28.866 E/ACRA (19814): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1271) 04-11 20:54:28.866 E/ACRA (19814): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2894) 04-11 20:54:28.866 E/ACRA (19814): ... 11 more 04-11 20:54:28.866 D/ACRA (19814): Building report 04-11 20:54:28.868 D/ACRA (19814): Starting collectors with priority FIRST 04-11 20:54:28.869 D/ACRA (19814): Calling collector org.acra.collector.DropBoxCollector 04-11 20:54:28.869 D/ACRA (19814): Collector org.acra.collector.DropBoxCollector completed 04-11 20:54:28.869 D/ACRA (19814): Calling collector org.acra.collector.LogCatCollector 04-11 20:54:28.870 D/ACRA (19814): Calling collector org.acra.collector.StacktraceCollector 04-11 20:54:28.871 D/ACRA (19814): Collector org.acra.collector.StacktraceCollector completed 04-11 20:54:28.873 D/ACRA (19814): Retrieving logcat output (buffer:default)... ``` ### App information ***App version***: `0.15.6` (`150699`) ***Package name***: `org.jellyfin.androidtv` ***Build***: ```json {"BOARD":"once","BOOTLOADER":"unknown","BRAND":"Xiaomi","CPU_ABI":"armeabi-v7a","CPU_ABI2":"armeabi","DEVICE":"once","DISPLAY":"PI.3934 release-keys","FINGERPRINT":"Xiaomi\/once\/once:9\/PI\/3934:user\/release-keys","HARDWARE":"amlogic","HOST":"c5-mitv-bsp-build07.bj","ID":"PI","IS_DEBUGGABLE":false,"IS_EMULATOR":false,"MANUFACTURER":"Xiaomi","MODEL":"MIBOX3","PERMISSIONS_REVIEW_REQUIRED":false,"PRODUCT":"once","RADIO":"unknown","SUPPORTED_32_BIT_ABIS":["armeabi-v7a","armeabi"],"SUPPORTED_64_BIT_ABIS":[],"SUPPORTED_ABIS":["armeabi-v7a","armeabi"],"TAGS":"release-keys","TIME":1632823636000,"TYPE":"user","UNKNOWN":"unknown","USER":"jenkins","VERSION":{"ACTIVE_CODENAMES":[],"BASE_OS":"","CODENAME":"REL","FIRST_SDK_INT":23,"INCREMENTAL":"3934","PREVIEW_SDK_INT":0,"RELEASE":"9","RESOURCES_SDK_INT":28,"SDK":"28","SDK_INT":28,"SECURITY_PATCH":"2021-07-05"}} ``` ***Build config***: ```json {"APPLICATION_ID":"org.jellyfin.androidtv","BUILD_TYPE":"release","DEBUG":false,"DEVELOPMENT":false,"VERSION_CODE":150699,"VERSION_NAME":"0.15.6"} ``` ### Device information ***Android version***: `9` ***Device brand***: `Xiaomi` ***Device product***: `once` ***Device model***: `MIBOX3` ### Crash information ***Start time***: `2023-04-11T20:54:28.411+02:00` ***Crash time***: `2023-04-11T20:54:28.928+02:00`