After upgrading, no videos are can't be played and I get Deserialization failed error on Android TV #6746

Closed
opened 2026-02-07 04:03:28 +03:00 by OVERLORD · 5 comments
Owner

Originally created by @luizkowalski on GitHub (Feb 17, 2025).

Description of the bug

After upgrade from 2025012005 to 2025021706, I keep getting the same error, and I can't play any media. The error says Deserialization failed and Field 'IsHearingImpaired' is required for type with serial name 'org.jellyfin.sdk.model.api.MediaStream', but it was missing at path: $.MediaSources[0].MediaStreams[0]

Reproduction steps

  1. Update to the latest version
  2. Open Jellyfin on Android TV
  3. Try to play a 1080p or 4k media

What is the current bug behavior?

Nothing. screen flickers and that's it

What is the expected correct behavior?

Video plays

Jellyfin Server version

10.10.0+

Specify commit id

No response

Specify unstable release number

No response

Specify version number

10.10.+

Specify the build version

2025021706

Environment

- OS: Ubuntu Server
- Linux Kernel: 6.11.0-14-generic
- Virtualization:
- Clients: Android TV (Sony Bravia)
- Browser:
- FFmpeg Version:
- Playback Method:
- Hardware Acceleration: Yes
- GPU Model: None (Zimaboard)
- Plugins:
- Reverse Proxy:
- Base URL: watch.homeserver.local
- Networking:
- Storage:

Jellyfin logs

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

***Stack Trace***: 

org.jellyfin.sdk.api.client.exception.InvalidContentException: Deserialization failed
	at org.jellyfin.sdk.api.operations.UserLibraryApi.getItem(UserLibraryApi.kt:347)
	at org.jellyfin.sdk.api.operations.UserLibraryApi$getItem$1.invokeSuspend(Unknown Source:15)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:101)
	at android.os.Handler.handleCallback(Handler.java:883)
	at android.os.Handler.dispatchMessage(Handler.java:100)
	at android.os.Looper.loop(Looper.java:214)
	at android.app.ActivityThread.main(ActivityThread.java:7356)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:932)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@ee98389, Dispatchers.Main.immediate]
Caused by: kotlinx.serialization.MissingFieldException: Field 'IsHearingImpaired' is required for type with serial name 'org.jellyfin.sdk.model.api.MediaStream', but it was missing at path: $.MediaSources[0].MediaStreams[0]
	at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:95)
	at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43)
	at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableElement(AbstractDecoder.kt:70)
	at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableElement(StreamingJsonDecoder.kt:168)
	at kotlinx.serialization.encoding.CompositeDecoder$DefaultImpls.decodeSerializableElement$default(Decoding.kt:538)
	at kotlinx.serialization.internal.CollectionLikeSerializer.readElement(CollectionSerializers.kt:80)
	at kotlinx.serialization.internal.AbstractCollectionSerializer.readElement$default(CollectionSerializers.kt:51)
	at kotlinx.serialization.internal.AbstractCollectionSerializer.merge(CollectionSerializers.kt:36)
	at kotlinx.serialization.internal.AbstractCollectionSerializer.deserialize(CollectionSerializers.kt:43)
	at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69)
	at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43)
	at kotlinx.serialization.encoding.AbstractDecoder.decodeNullableSerializableElement(AbstractDecoder.kt:78)
	at org.jellyfin.sdk.model.api.MediaSourceInfo$$serializer.deserialize(MediaSourceInfo.kt:17)
	at org.jellyfin.sdk.model.api.MediaSourceInfo$$serializer.deserialize(MediaSourceInfo.kt:17)
	at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69)
	at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43)
	at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableElement(AbstractDecoder.kt:70)
	at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableElement(StreamingJsonDecoder.kt:168)
	at kotlinx.serialization.encoding.CompositeDecoder$DefaultImpls.decodeSerializableElement$default(Decoding.kt:538)
	at kotlinx.serialization.internal.CollectionLikeSerializer.readElement(CollectionSerializers.kt:80)
	at kotlinx.serialization.internal.AbstractCollectionSerializer.readElement$default(CollectionSerializers.kt:51)
	at kotlinx.serialization.internal.AbstractCollectionSerializer.merge(CollectionSerializers.kt:36)
	at kotlinx.serialization.internal.AbstractCollectionSerializer.deserialize(CollectionSerializers.kt:43)
	at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69)
	at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43)
	at kotlinx.serialization.encoding.AbstractDecoder.decodeNullableSerializableElement(AbstractDecoder.kt:78)
	at org.jellyfin.sdk.model.api.BaseItemDto$$serializer.deserialize(BaseItemDto.kt:33)
	at org.jellyfin.sdk.model.api.BaseItemDto$$serializer.deserialize(BaseItemDto.kt:33)
	at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69)
	at kotlinx.serialization.json.Json.decodeFromString(Json.kt:165)
	at org.jellyfin.sdk.api.operations.UserLibraryApi.getItem(UserLibraryApi.kt:343)
	... 10 more
Caused by: kotlinx.serialization.MissingFieldException: Field 'IsHearingImpaired' is required for type with serial name 'org.jellyfin.sdk.model.api.MediaStream', but it was missing
	at kotlinx.serialization.internal.PluginExceptionsKt.throwArrayMissingFieldException(PluginExceptions.kt:39)
	at org.jellyfin.sdk.model.api.MediaStream.<init>(MediaStream.kt:19)
	at org.jellyfin.sdk.model.api.MediaStream$$serializer.deserialize(MediaStream.kt:19)
	at org.jellyfin.sdk.model.api.MediaStream$$serializer.deserialize(MediaStream.kt:19)
	at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69)
	... 40 more

  
***Logcat***: 

02-17 13:10:50.056 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at org.jellyfin.sdk.model.api.MediaSourceInfo$$serializer.deserialize(MediaSourceInfo.kt:17)
02-17 13:10:50.056 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at org.jellyfin.sdk.model.api.MediaSourceInfo$$serializer.deserialize(MediaSourceInfo.kt:17)
02-17 13:10:50.056 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69)
02-17 13:10:50.056 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43)
02-17 13:10:50.056 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableElement(AbstractDecoder.kt:70)
02-17 13:10:50.056 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableElement(StreamingJsonDecoder.kt:168)
02-17 13:10:50.056 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at kotlinx.serialization.encoding.CompositeDecoder$DefaultImpls.decodeSerializableElement$default(Decoding.kt:538)
02-17 13:10:50.056 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at kotlinx.serialization.internal.CollectionLikeSerializer.readElement(CollectionSerializers.kt:80)
02-17 13:10:50.056 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at kotlinx.serialization.internal.AbstractCollectionSerializer.readElement$default(CollectionSerializers.kt:51)
02-17 13:10:50.056 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at kotlinx.serialization.internal.AbstractCollectionSerializer.merge(CollectionSerializers.kt:36)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at kotlinx.serialization.internal.AbstractCollectionSerializer.deserialize(CollectionSerializers.kt:43)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at kotlinx.serialization.encoding.AbstractDecoder.decodeNullableSerializableElement(AbstractDecoder.kt:78)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at org.jellyfin.sdk.model.api.BaseItemDto$$serializer.deserialize(BaseItemDto.kt:33)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at org.jellyfin.sdk.model.api.BaseItemDto$$serializer.deserialize(BaseItemDto.kt:33)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at kotlinx.serialization.json.Json.decodeFromString(Json.kt:165)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at org.jellyfin.sdk.api.operations.UserLibraryApi.getItem(UserLibraryApi.kt:343)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at org.jellyfin.sdk.api.operations.UserLibraryApi$getItem$1.invokeSuspend(Unknown Source:15)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:101)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at android.os.Handler.handleCallback(Handler.java:883)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at android.os.Handler.dispatchMessage(Handler.java:100)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at android.os.Looper.loop(Looper.java:214)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at android.app.ActivityThread.main(ActivityThread.java:7356)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at java.lang.reflect.Method.invoke(Native Method)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:932)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): Caused by: kotlinx.serialization.MissingFieldException: Field 'IsHearingImpaired' is required for type with serial name 'org.jellyfin.sdk.model.api.MediaStream', but it was missing
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at kotlinx.serialization.internal.PluginExceptionsKt.throwArrayMissingFieldException(PluginExceptions.kt:39)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at org.jellyfin.sdk.model.api.MediaStream.<init>(MediaStream.kt:19)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at org.jellyfin.sdk.model.api.MediaStream$$serializer.deserialize(MediaStream.kt:19)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at org.jellyfin.sdk.model.api.MediaStream$$serializer.deserialize(MediaStream.kt:19)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69)
02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): 	... 40 more
02-17 13:10:50.062 E/ACRA    (27882): ACRA caught a InvalidContentException for org.jellyfin.androidtv
02-17 13:10:50.062 E/ACRA    (27882): org.jellyfin.sdk.api.client.exception.InvalidContentException: Deserialization failed
02-17 13:10:50.062 E/ACRA    (27882): 	at org.jellyfin.sdk.api.operations.UserLibraryApi.getItem(UserLibraryApi.kt:347)
02-17 13:10:50.062 E/ACRA    (27882): 	at org.jellyfin.sdk.api.operations.UserLibraryApi$getItem$1.invokeSuspend(Unknown Source:15)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:101)
02-17 13:10:50.062 E/ACRA    (27882): 	at android.os.Handler.handleCallback(Handler.java:883)
02-17 13:10:50.062 E/ACRA    (27882): 	at android.os.Handler.dispatchMessage(Handler.java:100)
02-17 13:10:50.062 E/ACRA    (27882): 	at android.os.Looper.loop(Looper.java:214)
02-17 13:10:50.062 E/ACRA    (27882): 	at android.app.ActivityThread.main(ActivityThread.java:7356)
02-17 13:10:50.062 E/ACRA    (27882): 	at java.lang.reflect.Method.invoke(Native Method)
02-17 13:10:50.062 E/ACRA    (27882): 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
02-17 13:10:50.062 E/ACRA    (27882): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:932)
02-17 13:10:50.062 E/ACRA    (27882): 	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@ee98389, Dispatchers.Main.immediate]
02-17 13:10:50.062 E/ACRA    (27882): Caused by: kotlinx.serialization.MissingFieldException: Field 'IsHearingImpaired' is required for type with serial name 'org.jellyfin.sdk.model.api.MediaStream', but it was missing at path: $.MediaSources[0].MediaStreams[0]
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:95)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableElement(AbstractDecoder.kt:70)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableElement(StreamingJsonDecoder.kt:168)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.encoding.CompositeDecoder$DefaultImpls.decodeSerializableElement$default(Decoding.kt:538)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.internal.CollectionLikeSerializer.readElement(CollectionSerializers.kt:80)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.internal.AbstractCollectionSerializer.readElement$default(CollectionSerializers.kt:51)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.internal.AbstractCollectionSerializer.merge(CollectionSerializers.kt:36)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.internal.AbstractCollectionSerializer.deserialize(CollectionSerializers.kt:43)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.encoding.AbstractDecoder.decodeNullableSerializableElement(AbstractDecoder.kt:78)
02-17 13:10:50.062 E/ACRA    (27882): 	at org.jellyfin.sdk.model.api.MediaSourceInfo$$serializer.deserialize(MediaSourceInfo.kt:17)
02-17 13:10:50.062 E/ACRA    (27882): 	at org.jellyfin.sdk.model.api.MediaSourceInfo$$serializer.deserialize(MediaSourceInfo.kt:17)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableElement(AbstractDecoder.kt:70)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableElement(StreamingJsonDecoder.kt:168)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.encoding.CompositeDecoder$DefaultImpls.decodeSerializableElement$default(Decoding.kt:538)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.internal.CollectionLikeSerializer.readElement(CollectionSerializers.kt:80)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.internal.AbstractCollectionSerializer.readElement$default(CollectionSerializers.kt:51)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.internal.AbstractCollectionSerializer.merge(CollectionSerializers.kt:36)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.internal.AbstractCollectionSerializer.deserialize(CollectionSerializers.kt:43)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.encoding.AbstractDecoder.decodeNullableSerializableElement(AbstractDecoder.kt:78)
02-17 13:10:50.062 E/ACRA    (27882): 	at org.jellyfin.sdk.model.api.BaseItemDto$$serializer.deserialize(BaseItemDto.kt:33)
02-17 13:10:50.062 E/ACRA    (27882): 	at org.jellyfin.sdk.model.api.BaseItemDto$$serializer.deserialize(BaseItemDto.kt:33)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.json.Json.decodeFromString(Json.kt:165)
02-17 13:10:50.062 E/ACRA    (27882): 	at org.jellyfin.sdk.api.operations.UserLibraryApi.getItem(UserLibraryApi.kt:343)
02-17 13:10:50.062 E/ACRA    (27882): 	... 10 more
02-17 13:10:50.062 E/ACRA    (27882): Caused by: kotlinx.serialization.MissingFieldException: Field 'IsHearingImpaired' is required for type with serial name 'org.jellyfin.sdk.model.api.MediaStream', but it was missing
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.internal.PluginExceptionsKt.throwArrayMissingFieldException(PluginExceptions.kt:39)
02-17 13:10:50.062 E/ACRA    (27882): 	at org.jellyfin.sdk.model.api.MediaStream.<init>(MediaStream.kt:19)
02-17 13:10:50.062 E/ACRA    (27882): 	at org.jellyfin.sdk.model.api.MediaStream$$serializer.deserialize(MediaStream.kt:19)
02-17 13:10:50.062 E/ACRA    (27882): 	at org.jellyfin.sdk.model.api.MediaStream$$serializer.deserialize(MediaStream.kt:19)
02-17 13:10:50.062 E/ACRA    (27882): 	at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69)
02-17 13:10:50.062 E/ACRA    (27882): 	... 40 more
02-17 13:10:50.062 D/ACRA    (27882): Building report
02-17 13:10:50.063 D/ACRA    (27882): Starting collectors with priority FIRST
02-17 13:10:50.064 D/ACRA    (27882): Calling collector org.acra.collector.DropBoxCollector
02-17 13:10:50.064 D/ACRA    (27882): Collector org.acra.collector.DropBoxCollector completed
02-17 13:10:50.065 D/ACRA    (27882): Calling collector org.acra.collector.StacktraceCollector
02-17 13:10:50.065 D/ACRA    (27882): Calling collector org.acra.collector.LogCatCollector
02-17 13:10:50.067 D/ACRA    (27882): Collector org.acra.collector.StacktraceCollector completed
02-17 13:10:50.072 D/ACRA    (27882): Retrieving logcat output (buffer:default)...
02-17 13:10:50.108 E/libc    (29013): Access denied finding property "persist.vendor.system.svp.dbg.loglevel"

  

### App information

***App version***: `0.18.4` (`180499`)  
***Package name***: `org.jellyfin.androidtv`  
***Build***: 

{"BOARD":"mt5895","BOOTLOADER":"unknown","BRAND":"Sony","CPU_ABI":"armeabi-v7a","CPU_ABI2":"armeabi","DEVICE":"BRAVIA_VH1","DISPLAY":"BRAVIA_VH1_EU-user 10 QTG3.200305.006.S415 623201 release-keys","FINGERPRINT":"Sony\/BRAVIA_VH1_EU\/BRAVIA_VH1:10\/QTG3.200305.006.S415\/623201:user\/release-keys","HARDWARE":"mt5895","HOST":"BuildHost676","ID":"QTG3.200305.006.S415","IS_DEBUGGABLE":false,"IS_EMULATOR":false,"MANUFACTURER":"Sony","MODEL":"BRAVIA VH1","PERMISSIONS_REVIEW_REQUIRED":true,"PRODUCT":"BRAVIA_VH1_EU","RADIO":"unknown","SUPPORTED_32_BIT_ABIS":["armeabi-v7a","armeabi"],"SUPPORTED_64_BIT_ABIS":[],"SUPPORTED_ABIS":["armeabi-v7a","armeabi"],"TAGS":"release-keys","TIME":1731352896000,"TYPE":"user","UNKNOWN":"unknown","USER":"root","VERSION":{"ACTIVE_CODENAMES":[],"BASE_OS":"","CODENAME":"REL","FIRST_SDK_INT":28,"INCREMENTAL":"623201","PREVIEW_SDK_FINGERPRINT":"REL","PREVIEW_SDK_INT":0,"RELEASE":"10","RESOURCES_SDK_INT":29,"SDK":"29","SDK_INT":29,"SECURITY_PATCH":"2024-09-01"}}
  
***Build config***: 

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

### Device information

***Android version***: `10`  
***Device brand***: `Sony`  
***Device product***: `BRAVIA_VH1_EU`  
***Device model***: `BRAVIA VH1`  

### Crash information

***Start time***: `2025-02-17T13:09:36.451+01:00`  
***Crash time***: `2025-02-17T13:10:50.140+01:00`

FFmpeg logs


Client / Browser logs

No response

Relevant screenshots or videos

No response

Additional information

No response

Originally created by @luizkowalski on GitHub (Feb 17, 2025). ### Description of the bug After upgrade from `2025012005` to `2025021706`, I keep getting the same error, and I can't play any media. The error says `Deserialization failed` and `Field 'IsHearingImpaired' is required for type with serial name 'org.jellyfin.sdk.model.api.MediaStream', but it was missing at path: $.MediaSources[0].MediaStreams[0]` ### Reproduction steps 1. Update to the latest version 2. Open Jellyfin on Android TV 3. Try to play a 1080p or 4k media ### What is the current _bug_ behavior? Nothing. screen flickers and that's it ### What is the expected _correct_ behavior? Video plays ### Jellyfin Server version 10.10.0+ ### Specify commit id _No response_ ### Specify unstable release number _No response_ ### Specify version number 10.10.+ ### Specify the build version 2025021706 ### Environment ```markdown - OS: Ubuntu Server - Linux Kernel: 6.11.0-14-generic - Virtualization: - Clients: Android TV (Sony Bravia) - Browser: - FFmpeg Version: - Playback Method: - Hardware Acceleration: Yes - GPU Model: None (Zimaboard) - Plugins: - Reverse Proxy: - Base URL: watch.homeserver.local - Networking: - Storage: ``` ### Jellyfin logs ```shell --- client: Jellyfin for Android TV client_version: 0.18.4 client_repository: https://github.com/jellyfin/jellyfin-androidtv type: crash_report format: markdown --- ### Logs ***Stack Trace***: org.jellyfin.sdk.api.client.exception.InvalidContentException: Deserialization failed at org.jellyfin.sdk.api.operations.UserLibraryApi.getItem(UserLibraryApi.kt:347) at org.jellyfin.sdk.api.operations.UserLibraryApi$getItem$1.invokeSuspend(Unknown Source:15) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:101) at android.os.Handler.handleCallback(Handler.java:883) at android.os.Handler.dispatchMessage(Handler.java:100) at android.os.Looper.loop(Looper.java:214) at android.app.ActivityThread.main(ActivityThread.java:7356) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:932) Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@ee98389, Dispatchers.Main.immediate] Caused by: kotlinx.serialization.MissingFieldException: Field 'IsHearingImpaired' is required for type with serial name 'org.jellyfin.sdk.model.api.MediaStream', but it was missing at path: $.MediaSources[0].MediaStreams[0] at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:95) at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43) at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableElement(AbstractDecoder.kt:70) at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableElement(StreamingJsonDecoder.kt:168) at kotlinx.serialization.encoding.CompositeDecoder$DefaultImpls.decodeSerializableElement$default(Decoding.kt:538) at kotlinx.serialization.internal.CollectionLikeSerializer.readElement(CollectionSerializers.kt:80) at kotlinx.serialization.internal.AbstractCollectionSerializer.readElement$default(CollectionSerializers.kt:51) at kotlinx.serialization.internal.AbstractCollectionSerializer.merge(CollectionSerializers.kt:36) at kotlinx.serialization.internal.AbstractCollectionSerializer.deserialize(CollectionSerializers.kt:43) at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69) at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43) at kotlinx.serialization.encoding.AbstractDecoder.decodeNullableSerializableElement(AbstractDecoder.kt:78) at org.jellyfin.sdk.model.api.MediaSourceInfo$$serializer.deserialize(MediaSourceInfo.kt:17) at org.jellyfin.sdk.model.api.MediaSourceInfo$$serializer.deserialize(MediaSourceInfo.kt:17) at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69) at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43) at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableElement(AbstractDecoder.kt:70) at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableElement(StreamingJsonDecoder.kt:168) at kotlinx.serialization.encoding.CompositeDecoder$DefaultImpls.decodeSerializableElement$default(Decoding.kt:538) at kotlinx.serialization.internal.CollectionLikeSerializer.readElement(CollectionSerializers.kt:80) at kotlinx.serialization.internal.AbstractCollectionSerializer.readElement$default(CollectionSerializers.kt:51) at kotlinx.serialization.internal.AbstractCollectionSerializer.merge(CollectionSerializers.kt:36) at kotlinx.serialization.internal.AbstractCollectionSerializer.deserialize(CollectionSerializers.kt:43) at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69) at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43) at kotlinx.serialization.encoding.AbstractDecoder.decodeNullableSerializableElement(AbstractDecoder.kt:78) at org.jellyfin.sdk.model.api.BaseItemDto$$serializer.deserialize(BaseItemDto.kt:33) at org.jellyfin.sdk.model.api.BaseItemDto$$serializer.deserialize(BaseItemDto.kt:33) at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69) at kotlinx.serialization.json.Json.decodeFromString(Json.kt:165) at org.jellyfin.sdk.api.operations.UserLibraryApi.getItem(UserLibraryApi.kt:343) ... 10 more Caused by: kotlinx.serialization.MissingFieldException: Field 'IsHearingImpaired' is required for type with serial name 'org.jellyfin.sdk.model.api.MediaStream', but it was missing at kotlinx.serialization.internal.PluginExceptionsKt.throwArrayMissingFieldException(PluginExceptions.kt:39) at org.jellyfin.sdk.model.api.MediaStream.<init>(MediaStream.kt:19) at org.jellyfin.sdk.model.api.MediaStream$$serializer.deserialize(MediaStream.kt:19) at org.jellyfin.sdk.model.api.MediaStream$$serializer.deserialize(MediaStream.kt:19) at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69) ... 40 more ***Logcat***: 02-17 13:10:50.056 E/org.jellyfin.sdk.api.client.RawResponse(27882): at org.jellyfin.sdk.model.api.MediaSourceInfo$$serializer.deserialize(MediaSourceInfo.kt:17) 02-17 13:10:50.056 E/org.jellyfin.sdk.api.client.RawResponse(27882): at org.jellyfin.sdk.model.api.MediaSourceInfo$$serializer.deserialize(MediaSourceInfo.kt:17) 02-17 13:10:50.056 E/org.jellyfin.sdk.api.client.RawResponse(27882): at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69) 02-17 13:10:50.056 E/org.jellyfin.sdk.api.client.RawResponse(27882): at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43) 02-17 13:10:50.056 E/org.jellyfin.sdk.api.client.RawResponse(27882): at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableElement(AbstractDecoder.kt:70) 02-17 13:10:50.056 E/org.jellyfin.sdk.api.client.RawResponse(27882): at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableElement(StreamingJsonDecoder.kt:168) 02-17 13:10:50.056 E/org.jellyfin.sdk.api.client.RawResponse(27882): at kotlinx.serialization.encoding.CompositeDecoder$DefaultImpls.decodeSerializableElement$default(Decoding.kt:538) 02-17 13:10:50.056 E/org.jellyfin.sdk.api.client.RawResponse(27882): at kotlinx.serialization.internal.CollectionLikeSerializer.readElement(CollectionSerializers.kt:80) 02-17 13:10:50.056 E/org.jellyfin.sdk.api.client.RawResponse(27882): at kotlinx.serialization.internal.AbstractCollectionSerializer.readElement$default(CollectionSerializers.kt:51) 02-17 13:10:50.056 E/org.jellyfin.sdk.api.client.RawResponse(27882): at kotlinx.serialization.internal.AbstractCollectionSerializer.merge(CollectionSerializers.kt:36) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at kotlinx.serialization.internal.AbstractCollectionSerializer.deserialize(CollectionSerializers.kt:43) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at kotlinx.serialization.encoding.AbstractDecoder.decodeNullableSerializableElement(AbstractDecoder.kt:78) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at org.jellyfin.sdk.model.api.BaseItemDto$$serializer.deserialize(BaseItemDto.kt:33) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at org.jellyfin.sdk.model.api.BaseItemDto$$serializer.deserialize(BaseItemDto.kt:33) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at kotlinx.serialization.json.Json.decodeFromString(Json.kt:165) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at org.jellyfin.sdk.api.operations.UserLibraryApi.getItem(UserLibraryApi.kt:343) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at org.jellyfin.sdk.api.operations.UserLibraryApi$getItem$1.invokeSuspend(Unknown Source:15) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:101) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at android.os.Handler.handleCallback(Handler.java:883) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at android.os.Handler.dispatchMessage(Handler.java:100) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at android.os.Looper.loop(Looper.java:214) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at android.app.ActivityThread.main(ActivityThread.java:7356) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at java.lang.reflect.Method.invoke(Native Method) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:932) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): Caused by: kotlinx.serialization.MissingFieldException: Field 'IsHearingImpaired' is required for type with serial name 'org.jellyfin.sdk.model.api.MediaStream', but it was missing 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at kotlinx.serialization.internal.PluginExceptionsKt.throwArrayMissingFieldException(PluginExceptions.kt:39) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at org.jellyfin.sdk.model.api.MediaStream.<init>(MediaStream.kt:19) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at org.jellyfin.sdk.model.api.MediaStream$$serializer.deserialize(MediaStream.kt:19) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at org.jellyfin.sdk.model.api.MediaStream$$serializer.deserialize(MediaStream.kt:19) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69) 02-17 13:10:50.057 E/org.jellyfin.sdk.api.client.RawResponse(27882): ... 40 more 02-17 13:10:50.062 E/ACRA (27882): ACRA caught a InvalidContentException for org.jellyfin.androidtv 02-17 13:10:50.062 E/ACRA (27882): org.jellyfin.sdk.api.client.exception.InvalidContentException: Deserialization failed 02-17 13:10:50.062 E/ACRA (27882): at org.jellyfin.sdk.api.operations.UserLibraryApi.getItem(UserLibraryApi.kt:347) 02-17 13:10:50.062 E/ACRA (27882): at org.jellyfin.sdk.api.operations.UserLibraryApi$getItem$1.invokeSuspend(Unknown Source:15) 02-17 13:10:50.062 E/ACRA (27882): at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:101) 02-17 13:10:50.062 E/ACRA (27882): at android.os.Handler.handleCallback(Handler.java:883) 02-17 13:10:50.062 E/ACRA (27882): at android.os.Handler.dispatchMessage(Handler.java:100) 02-17 13:10:50.062 E/ACRA (27882): at android.os.Looper.loop(Looper.java:214) 02-17 13:10:50.062 E/ACRA (27882): at android.app.ActivityThread.main(ActivityThread.java:7356) 02-17 13:10:50.062 E/ACRA (27882): at java.lang.reflect.Method.invoke(Native Method) 02-17 13:10:50.062 E/ACRA (27882): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492) 02-17 13:10:50.062 E/ACRA (27882): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:932) 02-17 13:10:50.062 E/ACRA (27882): Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@ee98389, Dispatchers.Main.immediate] 02-17 13:10:50.062 E/ACRA (27882): Caused by: kotlinx.serialization.MissingFieldException: Field 'IsHearingImpaired' is required for type with serial name 'org.jellyfin.sdk.model.api.MediaStream', but it was missing at path: $.MediaSources[0].MediaStreams[0] 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:95) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableElement(AbstractDecoder.kt:70) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableElement(StreamingJsonDecoder.kt:168) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.encoding.CompositeDecoder$DefaultImpls.decodeSerializableElement$default(Decoding.kt:538) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.internal.CollectionLikeSerializer.readElement(CollectionSerializers.kt:80) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.internal.AbstractCollectionSerializer.readElement$default(CollectionSerializers.kt:51) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.internal.AbstractCollectionSerializer.merge(CollectionSerializers.kt:36) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.internal.AbstractCollectionSerializer.deserialize(CollectionSerializers.kt:43) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.encoding.AbstractDecoder.decodeNullableSerializableElement(AbstractDecoder.kt:78) 02-17 13:10:50.062 E/ACRA (27882): at org.jellyfin.sdk.model.api.MediaSourceInfo$$serializer.deserialize(MediaSourceInfo.kt:17) 02-17 13:10:50.062 E/ACRA (27882): at org.jellyfin.sdk.model.api.MediaSourceInfo$$serializer.deserialize(MediaSourceInfo.kt:17) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableElement(AbstractDecoder.kt:70) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableElement(StreamingJsonDecoder.kt:168) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.encoding.CompositeDecoder$DefaultImpls.decodeSerializableElement$default(Decoding.kt:538) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.internal.CollectionLikeSerializer.readElement(CollectionSerializers.kt:80) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.internal.AbstractCollectionSerializer.readElement$default(CollectionSerializers.kt:51) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.internal.AbstractCollectionSerializer.merge(CollectionSerializers.kt:36) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.internal.AbstractCollectionSerializer.deserialize(CollectionSerializers.kt:43) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.encoding.AbstractDecoder.decodeNullableSerializableElement(AbstractDecoder.kt:78) 02-17 13:10:50.062 E/ACRA (27882): at org.jellyfin.sdk.model.api.BaseItemDto$$serializer.deserialize(BaseItemDto.kt:33) 02-17 13:10:50.062 E/ACRA (27882): at org.jellyfin.sdk.model.api.BaseItemDto$$serializer.deserialize(BaseItemDto.kt:33) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.json.Json.decodeFromString(Json.kt:165) 02-17 13:10:50.062 E/ACRA (27882): at org.jellyfin.sdk.api.operations.UserLibraryApi.getItem(UserLibraryApi.kt:343) 02-17 13:10:50.062 E/ACRA (27882): ... 10 more 02-17 13:10:50.062 E/ACRA (27882): Caused by: kotlinx.serialization.MissingFieldException: Field 'IsHearingImpaired' is required for type with serial name 'org.jellyfin.sdk.model.api.MediaStream', but it was missing 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.internal.PluginExceptionsKt.throwArrayMissingFieldException(PluginExceptions.kt:39) 02-17 13:10:50.062 E/ACRA (27882): at org.jellyfin.sdk.model.api.MediaStream.<init>(MediaStream.kt:19) 02-17 13:10:50.062 E/ACRA (27882): at org.jellyfin.sdk.model.api.MediaStream$$serializer.deserialize(MediaStream.kt:19) 02-17 13:10:50.062 E/ACRA (27882): at org.jellyfin.sdk.model.api.MediaStream$$serializer.deserialize(MediaStream.kt:19) 02-17 13:10:50.062 E/ACRA (27882): at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:69) 02-17 13:10:50.062 E/ACRA (27882): ... 40 more 02-17 13:10:50.062 D/ACRA (27882): Building report 02-17 13:10:50.063 D/ACRA (27882): Starting collectors with priority FIRST 02-17 13:10:50.064 D/ACRA (27882): Calling collector org.acra.collector.DropBoxCollector 02-17 13:10:50.064 D/ACRA (27882): Collector org.acra.collector.DropBoxCollector completed 02-17 13:10:50.065 D/ACRA (27882): Calling collector org.acra.collector.StacktraceCollector 02-17 13:10:50.065 D/ACRA (27882): Calling collector org.acra.collector.LogCatCollector 02-17 13:10:50.067 D/ACRA (27882): Collector org.acra.collector.StacktraceCollector completed 02-17 13:10:50.072 D/ACRA (27882): Retrieving logcat output (buffer:default)... 02-17 13:10:50.108 E/libc (29013): Access denied finding property "persist.vendor.system.svp.dbg.loglevel" ### App information ***App version***: `0.18.4` (`180499`) ***Package name***: `org.jellyfin.androidtv` ***Build***: {"BOARD":"mt5895","BOOTLOADER":"unknown","BRAND":"Sony","CPU_ABI":"armeabi-v7a","CPU_ABI2":"armeabi","DEVICE":"BRAVIA_VH1","DISPLAY":"BRAVIA_VH1_EU-user 10 QTG3.200305.006.S415 623201 release-keys","FINGERPRINT":"Sony\/BRAVIA_VH1_EU\/BRAVIA_VH1:10\/QTG3.200305.006.S415\/623201:user\/release-keys","HARDWARE":"mt5895","HOST":"BuildHost676","ID":"QTG3.200305.006.S415","IS_DEBUGGABLE":false,"IS_EMULATOR":false,"MANUFACTURER":"Sony","MODEL":"BRAVIA VH1","PERMISSIONS_REVIEW_REQUIRED":true,"PRODUCT":"BRAVIA_VH1_EU","RADIO":"unknown","SUPPORTED_32_BIT_ABIS":["armeabi-v7a","armeabi"],"SUPPORTED_64_BIT_ABIS":[],"SUPPORTED_ABIS":["armeabi-v7a","armeabi"],"TAGS":"release-keys","TIME":1731352896000,"TYPE":"user","UNKNOWN":"unknown","USER":"root","VERSION":{"ACTIVE_CODENAMES":[],"BASE_OS":"","CODENAME":"REL","FIRST_SDK_INT":28,"INCREMENTAL":"623201","PREVIEW_SDK_FINGERPRINT":"REL","PREVIEW_SDK_INT":0,"RELEASE":"10","RESOURCES_SDK_INT":29,"SDK":"29","SDK_INT":29,"SECURITY_PATCH":"2024-09-01"}} ***Build config***: {"APPLICATION_ID":"org.jellyfin.androidtv","BUILD_TYPE":"release","DEBUG":false,"DEVELOPMENT":false,"VERSION_CODE":180499,"VERSION_NAME":"0.18.4"} ### Device information ***Android version***: `10` ***Device brand***: `Sony` ***Device product***: `BRAVIA_VH1_EU` ***Device model***: `BRAVIA VH1` ### Crash information ***Start time***: `2025-02-17T13:09:36.451+01:00` ***Crash time***: `2025-02-17T13:10:50.140+01:00` ``` ### FFmpeg logs ```shell ``` ### Client / Browser logs _No response_ ### Relevant screenshots or videos _No response_ ### Additional information _No response_
OVERLORD added the bugconfirmedEFjellyfin.db labels 2026-02-07 04:03:28 +03:00
Author
Owner

@nielsvanvelzen commented on GitHub (Feb 17, 2025):

A breaking API change was made in the master branch that made the IsHearingImpaired property in MediaStream nullable. It was not like that in previous versions so clients expect a value to be set (true or false, but never null). This should be fixed server-side by always providing a value for the property.

@nielsvanvelzen commented on GitHub (Feb 17, 2025): A breaking API change was made in the master branch that made the `IsHearingImpaired` property in `MediaStream` nullable. It was not like that in previous versions so clients expect a value to be set (`true` or `false`, but never `null`). This should be fixed server-side by always providing a value for the property.
Author
Owner

@luizkowalski commented on GitHub (Feb 17, 2025):

hey, niels! thank you so much for the context! basically there's nothing I can do other than stay on the former known-to-work version for now?

@luizkowalski commented on GitHub (Feb 17, 2025): hey, niels! thank you so much for the context! basically there's nothing I can do other than stay on the former known-to-work version for now?
Author
Owner

@nielsvanvelzen commented on GitHub (Feb 17, 2025):

Simply said yes, the master branch is also called "unstable" and the Android TV app does not support those unstable releases. I start testing new version once they are in beta. The recommended server version to use right now is 10.10.6.

@nielsvanvelzen commented on GitHub (Feb 17, 2025): Simply said yes, the master branch is also called "unstable" and the Android TV app does not support those unstable releases. I start testing new version once they are in beta. The recommended server version to use right now is 10.10.6.
Author
Owner

@luizkowalski commented on GitHub (Feb 17, 2025):

makes total sense, will be rolling back to stable version. I did not know that 2025021706 and such are unstable but looking back now, it is kinda obvious hahaha

@luizkowalski commented on GitHub (Feb 17, 2025): makes total sense, will be rolling back to stable version. I did not know that `2025021706` and such are unstable but looking back now, it is kinda obvious hahaha
Author
Owner

@humitos commented on GitHub (Feb 27, 2025):

I just want to mention that I experienced the same issue. I upgraded the server to 2025022405 and that fixed the issue 👍🏼

@humitos commented on GitHub (Feb 27, 2025): I just want to mention that I experienced the same issue. I upgraded the server to [`2025022405`](https://hub.docker.com/layers/jellyfin/jellyfin/2025022405/images/sha256-00e3934a6f63b3410964b911dc951c5551f9145797a59287a001996e39ddd83e) and that fixed the issue 👍🏼
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/jellyfin#6746