jellyfin / jellyfin-androidtv

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

java.lang.OutOfMemoryError shortly after starting on AOSP 13 #2338

Closed stintel closed 1 year ago

stintel commented 1 year ago

Describe the bug

  1. Start Jellyfin on AOSP13 (Khadas VIM3 reference board)
  2. Wait until Jellyfin crashes with java.lang.OutOfMemoryError

This happens with 0.15.0-beta.4 debug build. Also happened with 0.15.0-beta.3 release build.

Memory info before starting Jellyfin:

console:/ # free -m
                total        used        free      shared     buffers
Mem:             3771        2004        1767           3           8
-/+ buffers/cache:           1995        1776
Swap:             255           0         255

Logs

44c46cb4fd64565ba2c75471a9c5a40.log

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

Logs

Stack Trace:

java.lang.OutOfMemoryError: Failed to allocate a 4194320 byte allocation with 2378104 free bytes and 2322KB until OOM, target footprint 16777216, growth limit 16777216
        at io.ktor.utils.io.core.StringsKt.readBytes(Strings.kt:174)
        at io.ktor.utils.io.core.StringsKt.readBytes$default(Strings.kt:171)
        at io.ktor.client.call.SavedCallKt.save(SavedCall.kt:60)
        at io.ktor.client.call.SavedCallKt$save$1.invokeSuspend(Unknown Source:13)
        at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
        at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
        at android.os.Handler.handleCallback(Handler.java:942)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loopOnce(Looper.java:201)
        at android.os.Looper.loop(Looper.java:288)
        at android.app.ActivityThread.main(ActivityThread.java:7898)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:578)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:946)
        Suppressed: kotlinx.coroutines.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@91fc35a, Dispatchers.Main.immediate]

Logcat:

12-11 14:42:09.048 D/StrictMode( 1881):         at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:235)
12-11 14:42:09.048 D/StrictMode( 1881):         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
12-11 14:42:09.048 D/StrictMode( 1881):         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
12-11 14:42:09.048 D/StrictMode( 1881):         at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:421)
12-11 14:42:09.048 D/StrictMode( 1881):         at java.lang.Thread.run(Thread.java:1012)
12-11 14:42:09.048 D/StrictMode( 1881):         at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultPriorityThreadFactory$1.run(GlideExecutor.java:380)
12-11 14:42:09.328 I/jellyfin-apiclient( 1881): Response received from: http://192.168.0.53:8096/Users/b1f462a6-a60e-4812-af0f-ba8564ce7a24/Items/Latest?ParentId=f137a2dd-21bb-c1b9-9aa5-c0f6bf02a805&Fields=PrimaryImageAspectRatio%2COverview%2CChildCount&Limit=50&GroupItems=true&format=json
12-11 14:42:09.384 I/OpenGLRenderer( 1881): Davey! duration=1218ms; Flags=0, FrameTimelineVsyncId=28701, IntendedVsync=118283422395, Vsync=118783365435, InputEventId=0, HandleInputStart=118800195971, AnimationStart=118800207346, PerformTraversalsStart=118806841512, DrawStart=119459471887, FrameDeadline=118316753829, FrameInterval=118799833804, FrameStartTime=16664768, SyncQueued=119472629512, SyncStart=119472703137, IssueDrawCommandsStart=119473295554, SwapBuffers=119490835554, FrameCompleted=119501762763, DequeueBufferDuration=26625, QueueBufferDuration=311584, GpuCompleted=119501762763, SwapBuffersCompleted=119493494179, DisplayPresentTime=0, CommandSubmissionCompleted=119490835554,
12-11 14:42:09.473 D/ItemRowAdapterHelperKt( 1881): Creating items from 0 existing and 50 new, adapter size is 0
12-11 14:42:09.533 I/jellyfin-apiclient( 1881): Response received from: http://192.168.0.53:8096/Users/b1f462a6-a60e-4812-af0f-ba8564ce7a24/Items/Latest?ParentId=e2c00f29-7a5f-80af-390f-52f72e782147&Fields=PrimaryImageAspectRatio%2COverview%2CChildCount&Limit=50&GroupItems=true&format=json
12-11 14:42:09.537 D/ItemRowAdapterHelperKt( 1881): Creating items from 0 existing and 4 new, adapter size is 0
12-11 14:42:09.541 I/jellyfin-apiclient( 1881): Response received from: http://192.168.0.53:8096/Users/b1f462a6-a60e-4812-af0f-ba8564ce7a24/Items/Latest?ParentId=294916a5-31c0-c9f3-0908-b3422bb16212&Fields=PrimaryImageAspectRatio%2COverview%2CChildCount&Limit=50&GroupItems=true&format=json
12-11 14:42:09.543 I/jellyfin-apiclient( 1881): Response received from: http://192.168.0.53:8096/Users/b1f462a6-a60e-4812-af0f-ba8564ce7a24/Items/Latest?ParentId=a656b907-eb3a-7353-2e40-e44b968d0225&Fields=PrimaryImageAspectRatio%2COverview%2CChildCount&Limit=50&GroupItems=true&format=json
12-11 14:42:09.579 D/ItemRowAdapterHelperKt( 1881): Creating items from 0 existing and 12 new, adapter size is 0
12-11 14:42:09.600 I/jellyfin-apiclient( 1881): Response received from: http://192.168.0.53:8096/Users/b1f462a6-a60e-4812-af0f-ba8564ce7a24/Items/Latest?ParentId=7e64e319-657a-9516-ec78-490da03edccb&Fields=PrimaryImageAspectRatio%2COverview%2CChildCount&Limit=50&GroupItems=true&format=json
12-11 14:42:09.652 D/ItemRowAdapterHelperKt( 1881): Creating items from 0 existing and 20 new, adapter size is 0
12-11 14:42:09.846 I/Choreographer( 1881): Skipped 70 frames!  The application may be doing too much work on its main thread.
12-11 14:42:10.089 I/OpenGLRenderer( 1881): Davey! duration=1398ms; Flags=0, FrameTimelineVsyncId=28955, IntendedVsync=118816813739, Vsync=119983490859, InputEventId=0, HandleInputStart=119996057846, AnimationStart=119996066721, PerformTraversalsStart=119997770013, DrawStart=120169527429, FrameDeadline=118850147221, FrameInterval=119995828429, FrameStartTime=16666816, SyncQueued=120178964888, SyncStart=120179044930, IssueDrawCommandsStart=120179616680, SwapBuffers=120204642388, FrameCompleted=120215537846, DequeueBufferDuration=26666, QueueBufferDuration=321625, GpuCompleted=120215537846, SwapBuffersCompleted=120208744346, DisplayPresentTime=0, CommandSubmissionCompleted=120204642388,
12-11 14:42:10.090 D/TrafficStats( 1881): tagSocket(80) with statsTag=0xffffffff, statsUid=-1
12-11 14:42:10.100 D/TrafficStats( 1881): tagSocket(93) with statsTag=0xffffffff, statsUid=-1
12-11 14:42:10.133 D/TrafficStats( 1881): tagSocket(102) with statsTag=0xffffffff, statsUid=-1
12-11 14:42:10.136 D/TrafficStats( 1881): tagSocket(100) with statsTag=0xffffffff, statsUid=-1
12-11 14:42:10.407 I/androidtv.debug( 1881): Background young concurrent copying GC freed 54216(2221KB) AllocSpace objects, 6(792KB) LOS objects, 12% free, 12MB/14MB, paused 422us,149us total 198.357ms
12-11 14:42:10.736 I/androidtv.debug( 1881): Clamp target GC heap from 18MB to 16MB
12-11 14:42:10.744 D/StrictMode( 1881): StrictMode policy violation: android.os.strictmode.LeakedClosableViolation: A resource was acquired at attached stack trace but never released. See java.io.Closeable for information on avoiding resource leaks.
12-11 14:42:10.744 D/StrictMode( 1881):         at android.os.StrictMode$AndroidCloseGuardReporter.report(StrictMode.java:1990)
12-11 14:42:10.744 D/StrictMode( 1881):         at dalvik.system.CloseGuard.warnIfOpen(CloseGuard.java:336)
12-11 14:42:10.744 D/StrictMode( 1881):         at java.util.zip.Inflater.finalize(Inflater.java:407)
12-11 14:42:10.744 D/StrictMode( 1881):         at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:319)
12-11 14:42:10.744 D/StrictMode( 1881):         at java.lang.Daemons$FinalizerDaemon.runInternal(Daemons.java:306)
12-11 14:42:10.744 D/StrictMode( 1881):         at java.lang.Daemons$Daemon.run(Daemons.java:140)
12-11 14:42:10.744 D/StrictMode( 1881):         at java.lang.Thread.run(Thread.java:1012)
12-11 14:42:10.744 D/StrictMode( 1881): Caused by: java.lang.Throwable: Explicit termination method 'end' not called
12-11 14:42:10.744 D/StrictMode( 1881):         at dalvik.system.CloseGuard.openWithCallSite(CloseGuard.java:288)
12-11 14:42:10.744 D/StrictMode( 1881):         at dalvik.system.CloseGuard.open(CloseGuard.java:257)
12-11 14:42:10.744 D/StrictMode( 1881):         at java.util.zip.Inflater.<init>(Inflater.java:122)
12-11 14:42:10.744 D/StrictMode( 1881):         at com.android.okhttp.okio.GzipSource.<init>(GzipSource.java:64)
12-11 14:42:10.744 D/StrictMode( 1881):         at com.android.okhttp.internal.http.HttpEngine.unzip(HttpEngine.java:484)
12-11 14:42:10.744 D/StrictMode( 1881):         at com.android.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:661)
12-11 14:42:10.744 D/StrictMode( 1881):         at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:475)
12-11 14:42:10.744 D/StrictMode( 1881):         at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:411)
12-11 14:42:10.744 D/StrictMode( 1881):         at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:248)
12-11 14:42:10.744 D/StrictMode( 1881):         at com.bumptech.glide.load.data.HttpUrlFetcher.loadDataWithRedirects(HttpUrlFetcher.java:95)
12-11 14:42:10.744 D/StrictMode( 1881):         at com.bumptech.glide.load.data.HttpUrlFetcher.loadData(HttpUrlFetcher.java:58)
12-11 14:42:10.744 D/StrictMode( 1881):         at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)
12-11 14:42:10.744 D/StrictMode( 1881):         at com.bumptech.glide.load.engine.SourceGenerator.startNextLoad(SourceGenerator.java:95)
12-11 14:42:10.744 D/StrictMode( 1881):         at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:88)
12-11 14:42:10.744 D/StrictMode( 1881):         at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:311)
12-11 14:42:10.744 D/StrictMode( 1881):         at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:280)
12-11 14:42:10.744 D/StrictMode( 1881):         at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:235)
12-11 14:42:10.744 D/StrictMode( 1881):         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
12-11 14:42:10.744 D/StrictMode( 1881):         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
12-11 14:42:10.744 D/StrictMode( 1881):         at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:421)
12-11 14:42:10.744 D/StrictMode( 1881):         at java.lang.Thread.run(Thread.java:1012)
12-11 14:42:10.744 D/StrictMode( 1881):         at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultPriorityThreadFactory$1.run(GlideExecutor.java:380)
12-11 14:42:11.135 I/androidtv.debug( 1881): Starting a blocking GC Alloc
12-11 14:42:11.135 I/androidtv.debug( 1881): Starting a blocking GC Alloc
12-11 14:42:11.153 I/androidtv.debug( 1881): Alloc young concurrent copying GC freed 7791(400KB) AllocSpace objects, 0(0B) LOS objects, 8% free, 14MB/16MB, paused 88us,82us total 17.327ms
12-11 14:42:11.153 I/androidtv.debug( 1881): Forcing collection of SoftReferences for 4096KB allocation
12-11 14:42:11.153 I/androidtv.debug( 1881): Starting a blocking GC Alloc
12-11 14:42:11.205 I/androidtv.debug( 1881): Clamp target GC heap from 19MB to 16MB
12-11 14:42:11.205 I/androidtv.debug( 1881): Alloc concurrent copying GC freed 15603(853KB) AllocSpace objects, 0(0B) LOS objects, 14% free, 13MB/16MB, paused 81us,94us total 52.198ms
12-11 14:42:11.205 I/perfetto_hprof( 1881): preparing to dump heap for 1881
12-11 14:42:11.218 I/perfetto_hprof( 2114): registered data source android.java_hprof.oom
12-11 14:42:11.718 I/perfetto_hprof( 2114): timeout waiting for data source start (no active session?)
12-11 14:42:11.728 W/androidtv.debug( 1881): Throwing OutOfMemoryError "Failed to allocate a 4194316 byte allocation with 2351584 free bytes and 2296KB until OOM, target footprint 16777216, growth limit 16777216" (VmSize 16114348 kB)
12-11 14:42:11.729 I/androidtv.debug( 1881): Starting a blocking GC Alloc
12-11 14:42:11.729 I/androidtv.debug( 1881): Starting a blocking GC Alloc
12-11 14:42:11.744 I/androidtv.debug( 1881): Alloc young concurrent copying GC freed 4(16KB) AllocSpace objects, 0(0B) LOS objects, 13% free, 13MB/16MB, paused 172us,139us total 15.079ms
12-11 14:42:11.744 I/androidtv.debug( 1881): Forcing collection of SoftReferences for 4096KB allocation
12-11 14:42:11.744 I/androidtv.debug( 1881): Starting a blocking GC Alloc
12-11 14:42:11.815 I/androidtv.debug( 1881): Clamp target GC heap from 19MB to 16MB
12-11 14:42:11.815 I/androidtv.debug( 1881): Alloc concurrent copying GC freed 836(41KB) AllocSpace objects, 0(0B) LOS objects, 14% free, 13MB/16MB, paused 117us,100us total 70.819ms
12-11 14:42:11.815 W/androidtv.debug( 1881): Throwing OutOfMemoryError "Failed to allocate a 4194320 byte allocation with 2378104 free bytes and 2322KB until OOM, target footprint 16777216, growth limit 16777216" (VmSize 16114348 kB)
12-11 14:42:11.827 E/ACRA    ( 1881): ACRA caught a OutOfMemoryError for org.jellyfin.androidtv.debug
12-11 14:42:11.827 E/ACRA    ( 1881): java.lang.OutOfMemoryError: Failed to allocate a 4194320 byte allocation with 2378104 free bytes and 2322KB until OOM, target footprint 16777216, growth limit 16777216
12-11 14:42:11.827 E/ACRA    ( 1881):   at io.ktor.utils.io.core.StringsKt.readBytes(Strings.kt:174)
12-11 14:42:11.827 E/ACRA    ( 1881):   at io.ktor.utils.io.core.StringsKt.readBytes$default(Strings.kt:171)
12-11 14:42:11.827 E/ACRA    ( 1881):   at io.ktor.client.call.SavedCallKt.save(SavedCall.kt:60)
12-11 14:42:11.827 E/ACRA    ( 1881):   at io.ktor.client.call.SavedCallKt$save$1.invokeSuspend(Unknown Source:13)
12-11 14:42:11.827 E/ACRA    ( 1881):   at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
12-11 14:42:11.827 E/ACRA    ( 1881):   at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
12-11 14:42:11.827 E/ACRA    ( 1881):   at android.os.Handler.handleCallback(Handler.java:942)
12-11 14:42:11.827 E/ACRA    ( 1881):   at android.os.Handler.dispatchMessage(Handler.java:99)
12-11 14:42:11.827 E/ACRA    ( 1881):   at android.os.Looper.loopOnce(Looper.java:201)
12-11 14:42:11.827 E/ACRA    ( 1881):   at android.os.Looper.loop(Looper.java:288)
12-11 14:42:11.827 E/ACRA    ( 1881):   at android.app.ActivityThread.main(ActivityThread.java:7898)
12-11 14:42:11.827 E/ACRA    ( 1881):   at java.lang.reflect.Method.invoke(Native Method)
12-11 14:42:11.827 E/ACRA    ( 1881):   at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:578)
12-11 14:42:11.827 E/ACRA    ( 1881):   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:946)
12-11 14:42:11.827 E/ACRA    ( 1881):   Suppressed: kotlinx.coroutines.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@91fc35a, Dispatchers.Main.immediate]
12-11 14:42:11.827 D/ACRA    ( 1881): Building report
12-11 14:42:11.829 D/ACRA    ( 1881): Starting collectors with priority FIRST
12-11 14:42:11.829 D/ACRA    ( 1881): Calling collector org.acra.collector.DropBoxCollector
12-11 14:42:11.829 D/ACRA    ( 1881): Calling collector org.acra.collector.LogCatCollector
12-11 14:42:11.830 D/ACRA    ( 1881): Collector org.acra.collector.DropBoxCollector completed
12-11 14:42:11.830 D/ACRA    ( 1881): Calling collector org.acra.collector.StacktraceCollector
12-11 14:42:11.832 D/ACRA    ( 1881): Collector org.acra.collector.StacktraceCollector completed
12-11 14:42:11.834 D/ACRA    ( 1881): Retrieving logcat output (buffer:default)...

App information

App version: 0.15.0-beta.4 (150004) Package name: org.jellyfin.androidtv.debug Build:

{"BOARD":"vim3","BOOTLOADER":"unknown","BRAND":"Android","CPU_ABI":"arm64-v8a","CPU_ABI2":"","DEVICE":"vim3","DISPLAY":"yukawa-userdebug UpsideDownCake AOSP.MASTER eng.stijn.20221205.203853 test-keys","FINGERPRINT":"Android\/yukawa\/vim3:UpsideDownCake\/AOSP.MASTER\/eng.stijn.20221205.203853:userdebug\/test-keys","HARDWARE":"yukawa","HOST":"aosp-builder","ID":"AOSP.MASTER","IS_DEBUGGABLE":true,"IS_EMULATOR":false,"MANUFACTURER":"SEI Robotics","MODEL":"ATV on yukawa","ODM_SKU":"unknown","PERMISSIONS_REVIEW_REQUIRED":true,"PRODUCT":"yukawa","RADIO":"unknown","SKU":"unknown","SOC_MANUFACTURER":"unknown","SOC_MODEL":"unknown","SUPPORTED_32_BIT_ABIS":["armeabi-v7a","armeabi"],"SUPPORTED_64_BIT_ABIS":["arm64-v8a"],"SUPPORTED_ABIS":["arm64-v8a","armeabi-v7a","armeabi"],"TAGS":"test-keys","TIME":1670272555000,"TYPE":"userdebug","UNKNOWN":"unknown","USER":"stijn","VERSION":{"ACTIVE_CODENAMES":["UpsideDownCake"],"BASE_OS":"","CODENAME":"UpsideDownCake","INCREMENTAL":"eng.stijn.20221205.203853","KNOWN_CODENAMES":"{HoneycombMr1, HoneycombMr2, Lollipop, Kitkat, Tiramisu, Gingerbread, Cupcake, IceCreamSandwichMr1, JellyBean, IceCreamSandwich, LollipopMr1, M, N, O, P, Q, R, S, Sv2, Base, NMr1, OMr1, JellyBeanMr1, JellyBeanMr2, Donut, Froyo, GingerbreadMr1, EclairMr1, UpsideDownCake, Honeycomb, Eclair01, KitkatWatch, Base11, Eclair}","MEDIA_PERFORMANCE_CLASS":0,"PREVIEW_SDK_FINGERPRINT":"f021330409f78a141b1389f3d7b594e5","PREVIEW_SDK_INT":1,"RELEASE":"13","RELEASE_OR_CODENAME":"UpsideDownCake","RELEASE_OR_PREVIEW_DISPLAY":"13","SDK":"33","SDK_INT":33,"SECURITY_PATCH":"2022-11-05"}}

Build config:

{"APPLICATION_ID":"org.jellyfin.androidtv.debug","BUILD_TYPE":"debug","DEBUG":true,"DEVELOPMENT":false,"VERSION_CODE":150004,"VERSION_NAME":"0.15.0-beta.4"}

Device information

Android version: 13 Device brand: Android Device product: yukawa Device model: ATV on yukawa

Crash information

Start time: 2022-12-11T14:41:12.200+00:00 Crash time: 2022-12-11T14:42:11.878+00:00

Application version

0.15.0-beta.4

Where did you install the app from?

Sideloaded APK

Device information

Khadas VIM3

Android version

AOSP 13

Jellyfin server version

10.8.8

nielsvanvelzen commented 1 year ago

Does this issue also happen in the first beta's or did it start in the third?

stintel commented 1 year ago

Does this issue also happen in the first beta's or did it start in the third?

First of all, thanks for the quick response!

I've only recently started experimenting with AOSP and Jellyfin for Android TV. 0.15.0-beta.3 was the version available at that time. I've just tested 0.15.0-beta.1, and the same thing happens there.

Version 0.14.5 does not have this problem, but crashes as soon as I try to play some video. In this case, no crash log is uploaded to the server. Checking logcat also shows a bunch of OutOfMemoryError. Let me know if it's useful to get a logcat snippet from this version, or any other things that can be useful.

nielsvanvelzen commented 1 year ago

In 0.15 we've migrated more code to use our new SDK which is rewritten from scratch. So that's probably why the issue starts in the first 0.15 beta.

If I understand the exception in the issue description correctly, it appears that the app only gets 16mb of memory to work with. This is far too little. I have no clue as to why that happens, we even specify in the Android manifest that we need a large heap.

stintel commented 1 year ago

If I understand the exception in the issue description correctly, it appears that the app only gets 16mb of memory to work with. This is far too little. I have no clue as to why that happens, we even specify in the Android manifest that we need a large heap.

Very new to Android development but I drew a similar conclusion. I'll do some more digging, maybe try earlier AOSP builds to see in which version this starts happening. It's working fine on the "official" Khadas Android TV build, but that's using Android 9, which is ancient and full of unpatched security bugs, hence my attempt at AOSP.

Update: same problem with AOSP 12. AOSP 11 doesn't seem to support the VIM3. It does support the VIM3L, and I have one of those as well, but didn't manage to install my AOSP 11 build on it yet. To be continued ...

jellyfin-bot commented 1 year ago

This issue has gone 120 days without comment. To avoid abandoned issues, it will be closed in 21 days if there are no new comments.

If you're the original submitter of this issue, please comment confirming if this issue still affects you in the latest release or master branch, or close the issue if it has been fixed. If you're another user also affected by this bug, please comment confirming so. Either action will remove the stale label.

This bot exists to prevent issues from becoming stale and forgotten. Jellyfin is always moving forward, and bugs are often fixed as side effects of other changes. We therefore ask that bug report authors remain vigilant about their issues to ensure they are closed if fixed, or re-confirmed - perhaps with fresh logs or reproduction examples - regularly. If you have any questions you can reach us on Matrix or Social Media.