Skip to content

App crashes when playing transcoded Live TV channels seemingly due to client-side timeout #4905

@elijahmathews

Description

@elijahmathews

This issue respects the following points:

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

Describe the bug

I recently got a HDHomeRun FLEX 4K, connected it to my home network, and configured my Jellyfin server to use the HDHR for live TV. For the most part everything is working as expected for all clients and all live TV channels, but on my Android TV device, it appears that I am not able to play streams that require transcoding, likely due to some sort of race condition or timeout on the client side. Furthermore, following this timeout issue, the app itself crashes with a NullPointerException.

Steps to reproduce:

  1. Open the Jellyfin app and select Live TV.
  2. Browse for a live TV channel that requires server-side transcoding in order to be played (e.g. MPEG-2 video).
  3. Attempt to play this channel.
  4. The app appears to negotiate with my receiver/TV for a bit on a new refresh rate/resolution/etc. (like it does for all media playback with my setup), with my TV's UI showing a black screen with a spinning icon.
  5. The app will then seems to crash, with my next view (after the black screen and spinning icon) being the Android TV home screen.

Expected Behavior:

  1. The Jellyfin Android TV client should be able to play channels that require server-side transcoding.
  2. A playback issue with a live TV channel should not result in the Jellyfin app crashing.

Additional Information:
I've ruled out this being a jellyfin-ffmpeg issue. Running jellyfin-ffmpeg manually on this same media stream appears to correctly transcode the stream without issue:

$ /usr/libexec/jellyfin-ffmpeg/ffmpeg -analyzeduration 3000000 -probesize 1G -fflags +igndts -i "http://192.168.1.10:8096/LiveTv/LiveStreamFiles/a814670e4cf44a1f92fd394b8fe04bae/stream.ts" -map_metadata -1 -map_chapters -1 -threads 0 -sn -codec:v:0 libx265 -tag:v:0 hvc1 -preset veryfast -crf 28 -maxrate 8000000 -bufsize 16000000 -profile:v:0 main -x265-params:0 no-scenecut=1:no-open-gop=1:no-info=1:subme=3:merange=25:rc-lookahead=10:me=star:ctu=32:max-tu-size=32:min-cu-size=16:rskip=2:rskip-edge-threshold=2:no-sao=1:no-strong-intra-smoothing=1 -force_key_frames:0 "expr:gte(t,n_forced*3)" -vf "setparams=color_primaries=bt709:color_trc=bt709:colorspace=bt709,scale=trunc(min(max(iw\,ih*a)\,min(4096\,4096*a))/2)*2:trunc(min(max(iw/a\,ih)\,min(4096/a\,4096))/2)*2,format=yuv420p" -flags -global_header -codec:a:0 copy -copyts -avoid_negative_ts disabled -max_muxing_queue_size 2048 -f hls -max_delay 5000000 -hls_time 3 -hls_segment_type mpegts -start_number 0 output_test.ts
ffmpeg version 7.1.1-Jellyfin Copyright (c) 2000-2025 the FFmpeg developers
  built with gcc 15 (GCC)
  configuration: --arch=x86_64 --optflags='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' --extra-ldflags='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' --prefix=/discard --bindir=/usr/libexec/jellyfin-ffmpeg --target-os=linux --extra-version=Jellyfin --disable-doc --disable-ffplay --disable-stripping --disable-shared --disable-libxcb --disable-sdl2 --disable-xlib --enable-lto --enable-gpl --enable-version3 --enable-static --enable-pic --enable-gmp --enable-gnutls --enable-chromaprint --enable-libfontconfig --enable-libharfbuzz --enable-libass --enable-libbluray --enable-libdrm --enable-libfreetype --enable-libfribidi --enable-libmp3lame --enable-libopenmpt --enable-libopus --enable-libtheora --enable-libvorbis --enable-libdav1d --enable-libwebp --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzvbi --enable-libzimg --enable-libshaderc --enable-libplacebo --enable-vulkan --enable-opencl --enable-vaapi --enable-amf --enable-libvpl --enable-ffnvcodec --enable-cuda --enable-cuda-llvm --enable-cuvid --enable-nvdec --enable-nvenc --enable-libfdk-aac --enable-libsvtav1
  libavutil      59. 39.100 / 59. 39.100
  libavcodec     61. 19.101 / 61. 19.101
  libavformat    61.  7.100 / 61.  7.100
  libavdevice    61.  3.100 / 61.  3.100
  libavfilter    10.  4.100 / 10.  4.100
  libswscale      8.  3.100 /  8.  3.100
  libswresample   5.  3.100 /  5.  3.100
  libpostproc    58.  3.100 / 58.  3.100
[mpeg2video @ 0x55f3cf932f40] Invalid frame dimensions 0x0.
    Last message repeated 5 times
Input #0, mpegts, from 'http://192.168.1.10:8096/LiveTv/LiveStreamFiles/a814670e4cf44a1f92fd394b8fe04bae/stream.ts':
  Duration: N/A, start: 55304.993744, bitrate: N/A
  Program 5 
  Stream #0:0[0x51]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p(tv, progressive), 1280x720 [SAR 1:1 DAR 16:9], 59.94 fps, 59.94 tbr, 90k tbn
      Side data:
        cpb: bitrate max/min/avg: 24000000/0/0 buffer size: 7995392 vbv_delay: N/A
  Stream #0:1[0x54](eng): Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, 5.1(side), fltp, 384 kb/s
  Stream #0:2[0x55](eng): Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, mono, fltp, 96 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (mpeg2video (native) -> hevc (libx265))
  Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
x265 [info]: HEVC encoder version 4.1+1-1d117be
x265 [info]: build info [Linux][GCC 15.0.1][64 bit] 8bit
x265 [info]: using cpu capabilities: MMX2 SSE2Fast LZCNT SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
x265 [info]: Main profile, Level-4 (High tier)
x265 [info]: Thread pool created using 4 threads
x265 [info]: Slices                              : 1
x265 [info]: frame threads / pool features       : 2 / wpp(23 rows)
x265 [info]: Coding QT: max CU size, min CU size : 32 / 16
x265 [info]: Residual QT: max TU size, max depth : 32 / 1 inter / 1 intra
x265 [info]: ME / range / subpel / merge         : star / 25 / 3 / 2
x265 [info]: Lookahead / bframes / badapt        : 10 / 4 / 0
x265 [info]: b-pyramid / weightp / weightb       : 1 / 1 / 0
x265 [info]: References / ref-limit  cu / depth  : 2 / on / on
x265 [info]: AQ: mode / str / qg-size / cu-tree  : 2 / 1.0 / 32 / 1
x265 [info]: Rate Control / qCompress            : CRF-28.0 / 0.60
x265 [info]: VBV/HRD buffer / max-rate / init    : 16000 / 8000 / 0.750
x265 [info]: tools: rd=2 psy-rd=2.00 early-skip rskip mode=2
x265 [info]: tools: rskip-edge-threshold=0.02 signhide tmvp fast-intra
x265 [info]: tools: lslices=4 deblock dhdr10-info
Output #0, hls, to 'output_test.ts':
  Metadata:
    encoder         : Lavf61.7.100
  Stream #0:0: Video: hevc (hvc1 / 0x31637668), yuv420p(tv, bt709, progressive), 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 59.94 fps, 90k tbn
      Metadata:
        encoder         : Lavc61.19.101 libx265
      Side data:
        cpb: bitrate max/min/avg: 8000000/0/0 buffer size: 16000000 vbv_delay: N/A
  Stream #0:1: Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, 5.1(side), fltp, 384 kb/s
[hls @ 0x55f3cf941ec0] Opening 'output_test0.ts' for writing=N/A speed=1.06x     
[hls @ 0x55f3cf941ec0] Opening 'output_test.ts.tmp' for writing
[hls @ 0x55f3cf941ec0] Opening 'output_test1.ts' for writing=N/A speed=1.38x    
[hls @ 0x55f3cf941ec0] Opening 'output_test.ts.tmp' for writing
[hls @ 0x55f3cf941ec0] Opening 'output_test2.ts' for writing=N/A speed=1.26x    
[hls @ 0x55f3cf941ec0] Opening 'output_test.ts.tmp' for writing
[hls @ 0x55f3cf941ec0] Opening 'output_test3.ts' for writing=N/A speed=1.18x    
[hls @ 0x55f3cf941ec0] Opening 'output_test.ts.tmp' for writing
[hls @ 0x55f3cf941ec0] Opening 'output_test4.ts' for writing=N/A speed=1.14x    
[hls @ 0x55f3cf941ec0] Opening 'output_test.ts.tmp' for writing
(and so on and so forth)

Media info of the file

ffprobe version 7.1.1-Jellyfin Copyright (c) 2007-2025 the FFmpeg developers
  built with gcc 15 (GCC)
  configuration: --arch=x86_64 --optflags='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' --extra-ldflags='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' --prefix=/discard --bindir=/usr/libexec/jellyfin-ffmpeg --target-os=linux --extra-version=Jellyfin --disable-doc --disable-ffplay --disable-stripping --disable-shared --disable-libxcb --disable-sdl2 --disable-xlib --enable-lto --enable-gpl --enable-version3 --enable-static --enable-pic --enable-gmp --enable-gnutls --enable-chromaprint --enable-libfontconfig --enable-libharfbuzz --enable-libass --enable-libbluray --enable-libdrm --enable-libfreetype --enable-libfribidi --enable-libmp3lame --enable-libopenmpt --enable-libopus --enable-libtheora --enable-libvorbis --enable-libdav1d --enable-libwebp --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzvbi --enable-libzimg --enable-libshaderc --enable-libplacebo --enable-vulkan --enable-opencl --enable-vaapi --enable-amf --enable-libvpl --enable-ffnvcodec --enable-cuda --enable-cuda-llvm --enable-cuvid --enable-nvdec --enable-nvenc --enable-libfdk-aac --enable-libsvtav1
  libavutil      59. 39.100 / 59. 39.100
  libavcodec     61. 19.101 / 61. 19.101
  libavformat    61.  7.100 / 61.  7.100
  libavdevice    61.  3.100 / 61.  3.100
  libavfilter    10.  4.100 / 10.  4.100
  libswscale      8.  3.100 /  8.  3.100
  libswresample   5.  3.100 /  5.  3.100
  libpostproc    58.  3.100 / 58.  3.100
[mpeg2video @ 0x5644a50f6380] Invalid frame dimensions 0x0.
    Last message repeated 34 times
Input #0, mpegts, from 'http://192.168.1.10:8096/LiveTv/LiveStreamFiles/a814670e4cf44a1f92fd394b8fe04bae/stream.ts':
  Duration: N/A, start: 56468.993744, bitrate: N/A
  Program 5 
  Stream #0:0[0x51]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p(tv, progressive), 1280x720 [SAR 1:1 DAR 16:9], 59.94 fps, 59.94 tbr, 90k tbn
      Side data:
        cpb: bitrate max/min/avg: 24000000/0/0 buffer size: 7995392 vbv_delay: N/A
  Stream #0:1[0x54](eng): Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, 5.1(side), fltp, 384 kb/s
  Stream #0:2[0x55](eng): Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, mono, fltp, 96 kb/s

Client logs


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

Logs

Stack Trace:

java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setText(int)' on a null object reference
	at org.jellyfin.androidtv.ui.browsing.BrowseViewFragment.lambda$setupQueries$0$org-jellyfin-androidtv-ui-browsing-BrowseViewFragment(BrowseViewFragment.java:171)
	at org.jellyfin.androidtv.ui.browsing.BrowseViewFragment$$ExternalSyntheticLambda0.invoke(D8$$SyntheticClass:0)
	at org.jellyfin.androidtv.ui.browsing.BrowseViewFragmentHelperKt$getLiveTvRecordingsAndTimers$1.invokeSuspend(BrowseViewFragmentHelper.kt:40)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
	at android.os.Handler.handleCallback(Handler.java:958)
	at android.os.Handler.dispatchMessage(Handler.java:99)
	at android.os.Looper.loopOnce(Looper.java:205)
	at android.os.Looper.loop(Looper.java:294)
	at android.app.ActivityThread.main(ActivityThread.java:8177)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:552)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:971)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@e097613, Dispatchers.Main.immediate]

Logcat:

09-05 10:19:11.804 V/io.ktor.client.plugins.HttpCallValidator(22573): Validating response for request http://192.168.1.10:8096/LiveTv/Channels/836e0bae-21a9-8b41-984c-ac2ac458cf31
09-05 10:19:11.804 V/io.ktor.client.plugins.DefaultResponseValidation(22573): Skipping default response validation for http://192.168.1.10:8096/LiveTv/Channels/836e0bae-21a9-8b41-984c-ac2ac458cf31
09-05 10:19:11.805 V/io.ktor.client.plugins.defaultTransformers(22573): Transformed with default transformers response body for http://192.168.1.10:8096/LiveTv/Channels/836e0bae-21a9-8b41-984c-ac2ac458cf31 to interface io.ktor.utils.io.ByteReadChannel (Kotlin reflection is not available)
09-05 10:19:11.805 D/TrafficStats(22573): tagSocket(120) with statsTag=0xffffffff, statsUid=-1
09-05 10:19:11.809 I/jellyfin-apiclient(22573): Response received from: http://192.168.1.10:8096/Items/836e0bae-21a9-8b41-984c-ac2ac458cf31/PlaybackInfo?format=json
09-05 10:19:11.814 D/jellyfin-apiclient(22573): Adding request to queue: http://192.168.1.10:8096/LiveStreams/Open?format=json
09-05 10:19:11.814 W/ExoPlayerImplInternal(22573): Ignoring messages sent after release.
09-05 10:19:11.814 W/ExoPlayerImplInternal(22573): Ignoring messages sent after release.
09-05 10:19:11.814 W/ExoPlayerImplInternal(22573): Ignoring messages sent after release.
09-05 10:19:11.814 W/ExoPlayerImplInternal(22573): Ignoring messages sent after release.
09-05 10:19:11.815 V/io.ktor.client.plugins.HttpCallValidator(22573): Processing exception kotlinx.coroutines.JobCancellationException: Job was cancelled; job=SupervisorJobImpl{Cancelling}@178790d for request http://192.168.1.10:8096/LiveTv/Channels/836e0bae-21a9-8b41-984c-ac2ac458cf31
09-05 10:19:11.816 I/jellyfin-apiclient(22573): Response received from: http://192.168.1.10:8096/Items/836e0bae-21a9-8b41-984c-ac2ac458cf31/PlaybackInfo?format=json
09-05 10:19:11.820 D/jellyfin-apiclient(22573): Adding request to queue: http://192.168.1.10:8096/LiveStreams/Open?format=json
09-05 10:19:11.821 V/io.ktor.client.plugins.HttpCallValidator(22573): Validating response for request http://192.168.1.10:8096/LiveTv/Recordings?limit=40&enableImages=true&fields=Overview&fields=PrimaryImageAspectRatio&fields=ChildCount&enableTotalRecordCount=true
09-05 10:19:11.821 V/io.ktor.client.plugins.DefaultResponseValidation(22573): Skipping default response validation for http://192.168.1.10:8096/LiveTv/Recordings?limit=40&enableImages=true&fields=Overview&fields=PrimaryImageAspectRatio&fields=ChildCount&enableTotalRecordCount=true
09-05 10:19:11.822 V/io.ktor.client.plugins.defaultTransformers(22573): Transformed with default transformers response body for http://192.168.1.10:8096/LiveTv/Recordings?limit=40&enableImages=true&fields=Overview&fields=PrimaryImageAspectRatio&fields=ChildCount&enableTotalRecordCount=true to interface io.ktor.utils.io.ByteReadChannel (Kotlin reflection is not available)
09-05 10:19:11.822 I/org.jellyfin.sdk.api.ktor.KtorClient(22573): GET http://192.168.1.10:8096/LiveTv/Timers
09-05 10:19:11.824 V/io.ktor.client.plugins.HttpPlainText(22573): Adding Accept-Charset=UTF-8 to http://192.168.1.10:8096/LiveTv/Timers
09-05 10:19:11.851 E/OpenGLRenderer(22573): Unable to match the desired swap behavior.
09-05 10:19:11.865 V/io.ktor.client.plugins.HttpCallValidator(22573): Validating response for request http://192.168.1.10:8096/LiveTv/Timers
09-05 10:19:11.866 V/io.ktor.client.plugins.DefaultResponseValidation(22573): Skipping default response validation for http://192.168.1.10:8096/LiveTv/Timers
09-05 10:19:11.867 V/io.ktor.client.plugins.defaultTransformers(22573): Transformed with default transformers response body for http://192.168.1.10:8096/LiveTv/Timers to interface io.ktor.utils.io.ByteReadChannel (Kotlin reflection is not available)
09-05 10:19:11.867 V/io.ktor.client.plugins.HttpCallValidator(22573): Validating response for request http://192.168.1.10:8096/UserViews?includeHidden=false
09-05 10:19:11.867 V/io.ktor.client.plugins.DefaultResponseValidation(22573): Skipping default response validation for http://192.168.1.10:8096/UserViews?includeHidden=false
09-05 10:19:11.868 V/io.ktor.client.plugins.HttpCallValidator(22573): Validating response for request http://192.168.1.10:8096/UserItems/Resume?limit=50&fields=PrimaryImageAspectRatio&fields=Overview&fields=ItemCounts&fields=DisplayPreferencesId&fields=ChildCount&mediaTypes=Video&imageTypeLimit=1&excludeItemTypes=AudioBook&enableTotalRecordCount=false&enableImages=true&excludeActiveSessions=false
09-05 10:19:11.868 V/io.ktor.client.plugins.DefaultResponseValidation(22573): Skipping default response validation for http://192.168.1.10:8096/UserItems/Resume?limit=50&fields=PrimaryImageAspectRatio&fields=Overview&fields=ItemCounts&fields=DisplayPreferencesId&fields=ChildCount&mediaTypes=Video&imageTypeLimit=1&excludeItemTypes=AudioBook&enableTotalRecordCount=false&enableImages=true&excludeActiveSessions=false
09-05 10:19:11.869 V/io.ktor.client.plugins.defaultTransformers(22573): Transformed with default transformers response body for http://192.168.1.10:8096/UserItems/Resume?limit=50&fields=PrimaryImageAspectRatio&fields=Overview&fields=ItemCounts&fields=DisplayPreferencesId&fields=ChildCount&mediaTypes=Video&imageTypeLimit=1&excludeItemTypes=AudioBook&enableTotalRecordCount=false&enableImages=true&excludeActiveSessions=false to interface io.ktor.utils.io.ByteReadChannel (Kotlin reflection is not available)
09-05 10:19:11.870 V/io.ktor.client.plugins.HttpCallValidator(22573): Validating response for request http://192.168.1.10:8096/UserItems/Resume?limit=50&fields=PrimaryImageAspectRatio&fields=Overview&fields=ItemCounts&fields=DisplayPreferencesId&fields=ChildCount&mediaTypes=Audio&imageTypeLimit=1&excludeItemTypes=AudioBook&enableTotalRecordCount=false&enableImages=true&excludeActiveSessions=false
09-05 10:19:11.870 V/io.ktor.client.plugins.DefaultResponseValidation(22573): Skipping default response validation for http://192.168.1.10:8096/UserItems/Resume?limit=50&fields=PrimaryImageAspectRatio&fields=Overview&fields=ItemCounts&fields=DisplayPreferencesId&fields=ChildCount&mediaTypes=Audio&imageTypeLimit=1&excludeItemTypes=AudioBook&enableTotalRecordCount=false&enableImages=true&excludeActiveSessions=false
09-05 10:19:11.871 V/io.ktor.client.plugins.defaultTransformers(22573): Transformed with default transformers response body for http://192.168.1.10:8096/UserItems/Resume?limit=50&fields=PrimaryImageAspectRatio&fields=Overview&fields=ItemCounts&fields=DisplayPreferencesId&fields=ChildCount&mediaTypes=Audio&imageTypeLimit=1&excludeItemTypes=AudioBook&enableTotalRecordCount=false&enableImages=true&excludeActiveSessions=false to interface io.ktor.utils.io.ByteReadChannel (Kotlin reflection is not available)
09-05 10:19:11.871 D/ItemRowAdapterHelperKt(22573): Creating items from 0 existing and 0 new, adapter size is 0
09-05 10:19:11.872 V/io.ktor.client.plugins.HttpCallValidator(22573): Validating response for request http://192.168.1.10:8096/Shows/NextUp?limit=50&fields=PrimaryImageAspectRatio&fields=Overview&fields=ChildCount&imageTypeLimit=1&enableTotalRecordCount=true&disableFirstEpisode=false&enableResumable=false&enableRewatching=false
09-05 10:19:11.872 V/io.ktor.client.plugins.DefaultResponseValidation(22573): Skipping default response validation for http://192.168.1.10:8096/Shows/NextUp?limit=50&fields=PrimaryImageAspectRatio&fields=Overview&fields=ChildCount&imageTypeLimit=1&enableTotalRecordCount=true&disableFirstEpisode=false&enableResumable=false&enableRewatching=false
09-05 10:19:11.873 V/io.ktor.client.plugins.defaultTransformers(22573): Transformed with default transformers response body for http://192.168.1.10:8096/Shows/NextUp?limit=50&fields=PrimaryImageAspectRatio&fields=Overview&fields=ChildCount&imageTypeLimit=1&enableTotalRecordCount=true&disableFirstEpisode=false&enableResumable=false&enableRewatching=false to interface io.ktor.utils.io.ByteReadChannel (Kotlin reflection is not available)
09-05 10:19:11.873 V/io.ktor.client.plugins.HttpCallValidator(22573): Validating response for request http://192.168.1.10:8096/Items/Latest?parentId=7e64e319-657a-9516-ec78-490da03edccb&fields=PrimaryImageAspectRatio&fields=Overview&fields=ChildCount&fields=SeriesPrimaryImage&imageTypeLimit=1&limit=50&groupItems=true
09-05 10:19:11.873 V/io.ktor.client.plugins.DefaultResponseValidation(22573): Skipping default response validation for http://192.168.1.10:8096/Items/Latest?parentId=7e64e319-657a-9516-ec78-490da03edccb&fields=PrimaryImageAspectRatio&fields=Overview&fields=ChildCount&fields=SeriesPrimaryImage&imageTypeLimit=1&limit=50&groupItems=true
09-05 10:19:11.874 V/io.ktor.client.plugins.defaultTransformers(22573): Transformed with default transformers response body for http://192.168.1.10:8096/Items/Latest?parentId=7e64e319-657a-9516-ec78-490da03edccb&fields=PrimaryImageAspectRatio&fields=Overview&fields=ChildCount&fields=SeriesPrimaryImage&imageTypeLimit=1&limit=50&groupItems=true to interface io.ktor.utils.io.ByteReadChannel (Kotlin reflection is not available)
09-05 10:19:11.875 D/ItemRowAdapterHelperKt(22573): Creating items from 0 existing and 0 new, adapter size is 0
09-05 10:19:11.875 V/io.ktor.client.plugins.HttpCallValidator(22573): Validating response for request http://192.168.1.10:8096/Items/Latest?parentId=f137a2dd-21bb-c1b9-9aa5-c0f6bf02a805&fields=PrimaryImageAspectRatio&fields=Overview&fields=ChildCount&fields=SeriesPrimaryImage&imageTypeLimit=1&limit=50&groupItems=true
09-05 10:19:11.875 V/io.ktor.client.plugins.DefaultResponseValidation(22573): Skipping default response validation for http://192.168.1.10:8096/Items/Latest?parentId=f137a2dd-21bb-c1b9-9aa5-c0f6bf02a805&fields=PrimaryImageAspectRatio&fields=Overview&fields=ChildCount&fields=SeriesPrimaryImage&imageTypeLimit=1&limit=50&groupItems=true
09-05 10:19:11.876 V/io.ktor.client.plugins.HttpCallValidator(22573): Validating response for request http://192.168.1.10:8096/Items/Latest?parentId=a656b907-eb3a-7353-2e40-e44b968d0225&fields=PrimaryImageAspectRatio&fields=Overview&fields=ChildCount&fields=SeriesPrimaryImage&imageTypeLimit=1&limit=50&groupItems=true
09-05 10:19:11.876 V/io.ktor.client.plugins.DefaultResponseValidation(22573): Skipping default response validation for http://192.168.1.10:8096/Items/Latest?parentId=a656b907-eb3a-7353-2e40-e44b968d0225&fields=PrimaryImageAspectRatio&fields=Overview&fields=ChildCount&fields=SeriesPrimaryImage&imageTypeLimit=1&limit=50&groupItems=true
09-05 10:19:11.877 V/io.ktor.client.plugins.defaultTransformers(22573): Transformed with default transformers response body for http://192.168.1.10:8096/Items/Latest?parentId=a656b907-eb3a-7353-2e40-e44b968d0225&fields=PrimaryImageAspectRatio&fields=Overview&fields=ChildCount&fields=SeriesPrimaryImage&imageTypeLimit=1&limit=50&groupItems=true to interface io.ktor.utils.io.ByteReadChannel (Kotlin reflection is not available)
09-05 10:19:11.884 D/ItemRowAdapterHelperKt(22573): Creating items from 0 existing and 2 new, adapter size is 0
09-05 10:19:11.885 I/jellyfin-apiclient(22573): Response received from: http://192.168.1.10:8096/LiveStreams/Open?format=json
09-05 10:19:11.892 I/jellyfin-apiclient(22573): Response received from: http://192.168.1.10:8096/LiveStreams/Open?format=json
09-05 10:19:11.895 V/io.ktor.client.plugins.HttpCallValidator(22573): Validating response for request http://192.168.1.10:8096/LiveTv/Timers
09-05 10:19:11.896 V/io.ktor.client.plugins.DefaultResponseValidation(22573): Skipping default response validation for http://192.168.1.10:8096/LiveTv/Timers
09-05 10:19:11.898 V/io.ktor.client.plugins.defaultTransformers(22573): Transformed with default transformers response body for http://192.168.1.10:8096/LiveTv/Timers to interface io.ktor.utils.io.ByteReadChannel (Kotlin reflection is not available)
09-05 10:19:11.900 I/org.jellyfin.sdk.api.ktor.KtorClient(22573): GET http://192.168.1.10:8096/LiveTv/Programs/Recommended?limit=150&isAiring=true&imageTypeLimit=1&fields=Overview&fields=PrimaryImageAspectRatio&fields=ChannelInfo&fields=ChildCount&enableTotalRecordCount=false
09-05 10:19:11.901 V/io.ktor.client.plugins.HttpPlainText(22573): Adding Accept-Charset=UTF-8 to http://192.168.1.10:8096/LiveTv/Programs/Recommended?limit=150&isAiring=true&imageTypeLimit=1&fields=Overview&fields=PrimaryImageAspectRatio&fields=ChannelInfo&fields=ChildCount&enableTotalRecordCount=false
09-05 10:19:11.902 I/org.jellyfin.sdk.api.ktor.KtorClient(22573): GET http://192.168.1.10:8096/LiveTv/Programs/Recommended?limit=150&isAiring=false&hasAired=false&imageTypeLimit=1&fields=Overview&fields=PrimaryImageAspectRatio&fields=ChannelInfo&fields=ChildCount&enableTotalRecordCount=false
09-05 10:19:11.903 V/io.ktor.client.plugins.HttpPlainText(22573): Adding Accept-Charset=UTF-8 to http://192.168.1.10:8096/LiveTv/Programs/Recommended?limit=150&isAiring=false&hasAired=false&imageTypeLimit=1&fields=Overview&fields=PrimaryImageAspectRatio&fields=ChannelInfo&fields=ChildCount&enableTotalRecordCount=false
09-05 10:19:11.905 I/org.jellyfin.sdk.api.ktor.KtorClient(22573): GET http://192.168.1.10:8096/LiveTv/Channels?startIndex=0&limit=40&isFavorite=true&enableFavoriteSorting=false&addCurrentProgram=true
09-05 10:19:11.907 V/io.ktor.client.plugins.HttpPlainText(22573): Adding Accept-Charset=UTF-8 to http://192.168.1.10:8096/LiveTv/Channels?startIndex=0&limit=40&isFavorite=true&enableFavoriteSorting=false&addCurrentProgram=true
09-05 10:19:11.909 I/org.jellyfin.sdk.api.ktor.KtorClient(22573): GET http://192.168.1.10:8096/LiveTv/Channels?startIndex=0&limit=40&isFavorite=false&enableFavoriteSorting=false&addCurrentProgram=true
09-05 10:19:11.910 V/io.ktor.client.plugins.HttpPlainText(22573): Adding Accept-Charset=UTF-8 to http://192.168.1.10:8096/LiveTv/Channels?startIndex=0&limit=40&isFavorite=false&enableFavoriteSorting=false&addCurrentProgram=true
09-05 10:19:11.912 I/org.jellyfin.sdk.api.ktor.KtorClient(22573): GET http://192.168.1.10:8096/LiveTv/Programs/Recommended?limit=150&isAiring=true&imageTypeLimit=1&fields=Overview&fields=PrimaryImageAspectRatio&fields=ChannelInfo&fields=ChildCount&enableTotalRecordCount=false
09-05 10:19:11.913 V/io.ktor.client.plugins.HttpPlainText(22573): Adding Accept-Charset=UTF-8 to http://192.168.1.10:8096/LiveTv/Programs/Recommended?limit=150&isAiring=true&imageTypeLimit=1&fields=Overview&fields=PrimaryImageAspectRatio&fields=ChannelInfo&fields=ChildCount&enableTotalRecordCount=false
09-05 10:19:11.915 I/org.jellyfin.sdk.api.ktor.KtorClient(22573): GET http://192.168.1.10:8096/LiveTv/Programs/Recommended?limit=150&isAiring=false&hasAired=false&imageTypeLimit=1&fields=Overview&fields=PrimaryImageAspectRatio&fields=ChannelInfo&fields=ChildCount&enableTotalRecordCount=false
09-05 10:19:11.917 V/io.ktor.client.plugins.HttpPlainText(22573): Adding Accept-Charset=UTF-8 to http://192.168.1.10:8096/LiveTv/Programs/Recommended?limit=150&isAiring=false&hasAired=false&imageTypeLimit=1&fields=Overview&fields=PrimaryImageAspectRatio&fields=ChannelInfo&fields=ChildCount&enableTotalRecordCount=false
09-05 10:19:11.918 I/org.jellyfin.sdk.api.ktor.KtorClient(22573): GET http://192.168.1.10:8096/LiveTv/Channels?startIndex=0&limit=40&isFavorite=true&enableFavoriteSorting=false&addCurrentProgram=true
09-05 10:19:11.919 V/io.ktor.client.plugins.HttpPlainText(22573): Adding Accept-Charset=UTF-8 to http://192.168.1.10:8096/LiveTv/Channels?startIndex=0&limit=40&isFavorite=true&enableFavoriteSorting=false&addCurrentProgram=true
09-05 10:19:11.921 I/org.jellyfin.sdk.api.ktor.KtorClient(22573): GET http://192.168.1.10:8096/LiveTv/Channels?startIndex=0&limit=40&isFavorite=false&enableFavoriteSorting=false&addCurrentProgram=true
09-05 10:19:11.922 V/io.ktor.client.plugins.HttpPlainText(22573): Adding Accept-Charset=UTF-8 to http://192.168.1.10:8096/LiveTv/Channels?startIndex=0&limit=40&isFavorite=false&enableFavoriteSorting=false&addCurrentProgram=true
09-05 10:19:11.945 W/View    (22573): requestLayout() improperly called by android.widget.TextView{a62ee42 V.ED..... ......ID 80,27-951,85 #7f0b02e8 app:id/title} during layout: running second layout pass
09-05 10:19:11.945 W/View    (22573): requestLayout() improperly called by android.widget.LinearLayout{9c3be53 V.E...... ......ID 80,89-997,116 #7f0b01ab app:id/infoRow} during layout: running second layout pass
09-05 10:19:11.950 I/org.jellyfin.sdk.api.ktor.KtorClient(22573): GET http://192.168.1.10:8096/LiveTv/Programs/Recommended?limit=150&isAiring=true&imageTypeLimit=1&fields=Overview&fields=PrimaryImageAspectRatio&fields=ChannelInfo&fields=ChildCount&enableTotalRecordCount=false
09-05 10:19:11.952 V/io.ktor.client.plugins.HttpPlainText(22573): Adding Accept-Charset=UTF-8 to http://192.168.1.10:8096/LiveTv/Programs/Recommended?limit=150&isAiring=true&imageTypeLimit=1&fields=Overview&fields=PrimaryImageAspectRatio&fields=ChannelInfo&fields=ChildCount&enableTotalRecordCount=false
09-05 10:19:11.954 I/org.jellyfin.sdk.api.ktor.KtorClient(22573): GET http://192.168.1.10:8096/LiveTv/Programs/Recommended?limit=150&isAiring=false&hasAired=false&imageTypeLimit=1&fields=Overview&fields=PrimaryImageAspectRatio&fields=ChannelInfo&fields=ChildCount&enableTotalRecordCount=false
09-05 10:19:11.955 V/io.ktor.client.plugins.HttpPlainText(22573): Adding Accept-Charset=UTF-8 to http://192.168.1.10:8096/LiveTv/Programs/Recommended?limit=150&isAiring=false&hasAired=false&imageTypeLimit=1&fields=Overview&fields=PrimaryImageAspectRatio&fields=ChannelInfo&fields=ChildCount&enableTotalRecordCount=false
09-05 10:19:11.957 I/org.jellyfin.sdk.api.ktor.KtorClient(22573): GET http://192.168.1.10:8096/LiveTv/Channels?startIndex=0&limit=40&isFavorite=true&enableFavoriteSorting=false&addCurrentProgram=true
09-05 10:19:11.959 V/io.ktor.client.plugins.HttpPlainText(22573): Adding Accept-Charset=UTF-8 to http://192.168.1.10:8096/LiveTv/Channels?startIndex=0&limit=40&isFavorite=true&enableFavoriteSorting=false&addCurrentProgram=true
09-05 10:19:11.961 I/org.jellyfin.sdk.api.ktor.KtorClient(22573): GET http://192.168.1.10:8096/LiveTv/Channels?startIndex=0&limit=40&isFavorite=false&enableFavoriteSorting=false&addCurrentProgram=true
09-05 10:19:11.963 V/io.ktor.client.plugins.HttpPlainText(22573): Adding Accept-Charset=UTF-8 to http://192.168.1.10:8096/LiveTv/Channels?startIndex=0&limit=40&isFavorite=false&enableFavoriteSorting=false&addCurrentProgram=true
09-05 10:19:11.968 E/ACRA    (22573): ACRA caught a NullPointerException for org.jellyfin.androidtv
09-05 10:19:11.968 E/ACRA    (22573): java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setText(int)' on a null object reference
09-05 10:19:11.968 E/ACRA    (22573): 	at org.jellyfin.androidtv.ui.browsing.BrowseViewFragment.lambda$setupQueries$0$org-jellyfin-androidtv-ui-browsing-BrowseViewFragment(BrowseViewFragment.java:171)
09-05 10:19:11.968 E/ACRA    (22573): 	at org.jellyfin.androidtv.ui.browsing.BrowseViewFragment$$ExternalSyntheticLambda0.invoke(D8$$SyntheticClass:0)
09-05 10:19:11.968 E/ACRA    (22573): 	at org.jellyfin.androidtv.ui.browsing.BrowseViewFragmentHelperKt$getLiveTvRecordingsAndTimers$1.invokeSuspend(BrowseViewFragmentHelper.kt:40)
09-05 10:19:11.968 E/ACRA    (22573): 	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
09-05 10:19:11.968 E/ACRA    (22573): 	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
09-05 10:19:11.968 E/ACRA    (22573): 	at android.os.Handler.handleCallback(Handler.java:958)
09-05 10:19:11.968 E/ACRA    (22573): 	at android.os.Handler.dispatchMessage(Handler.java:99)
09-05 10:19:11.968 E/ACRA    (22573): 	at android.os.Looper.loopOnce(Looper.java:205)
09-05 10:19:11.968 E/ACRA    (22573): 	at android.os.Looper.loop(Looper.java:294)
09-05 10:19:11.968 E/ACRA    (22573): 	at android.app.ActivityThread.main(ActivityThread.java:8177)
09-05 10:19:11.968 E/ACRA    (22573): 	at java.lang.reflect.Method.invoke(Native Method)
09-05 10:19:11.968 E/ACRA    (22573): 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:552)
09-05 10:19:11.968 E/ACRA    (22573): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:971)
09-05 10:19:11.968 E/ACRA    (22573): 	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@e097613, Dispatchers.Main.immediate]
09-05 10:19:11.968 D/ACRA    (22573): Building report
09-05 10:19:11.969 D/ACRA    (22573): Starting collectors with priority FIRST
09-05 10:19:11.971 D/ACRA    (22573): Calling collector org.acra.collector.StacktraceCollector
09-05 10:19:11.971 D/ACRA    (22573): Calling collector org.acra.collector.LogCatCollector
09-05 10:19:11.971 D/ACRA    (22573): Calling collector org.acra.collector.DropBoxCollector
09-05 10:19:11.972 D/ACRA    (22573): Collector org.acra.collector.StacktraceCollector completed
09-05 10:19:11.972 D/ACRA    (22573): Collector org.acra.collector.DropBoxCollector completed
09-05 10:19:11.980 D/ACRA    (22573): Retrieving logcat output (buffer:default)...

App information

App version: 0.18.11 (181199)
Package name: org.jellyfin.androidtv
Build:

{"BOARD":"sabrina","BOOTLOADER":"01.01.250121.051205","BRAND":"google","CPU_ABI":"armeabi-v7a","CPU_ABI2":"armeabi","DEVICE":"sabrina","DISPLAY":"UTTC.241218.008.H1.13427172","FINGERPRINT":"google\/sabrina_prod_stable\/sabrina:14\/UTTC.241218.008.H1\/13427172:user\/release-keys","HARDWARE":"amlogic","HOST":"4445ea20d68b","ID":"UTTC.241218.008.H1","IS_DEBUGGABLE":false,"IS_EMULATOR":false,"MANUFACTURER":"Google","MODEL":"Chromecast","ODM_SKU":"US","PERMISSIONS_REVIEW_REQUIRED":true,"PRODUCT":"sabrina_prod_stable","RADIO":"unknown","SKU":"US","SOC_MANUFACTURER":"Amlogic","SOC_MODEL":"AMLS905D3","SUPPORTED_32_BIT_ABIS":["armeabi-v7a","armeabi"],"SUPPORTED_64_BIT_ABIS":[],"SUPPORTED_ABIS":["armeabi-v7a","armeabi"],"TAGS":"release-keys","TIME":1745990466000,"TYPE":"user","UNKNOWN":"unknown","USER":"android-build","VERSION":{"ACTIVE_CODENAMES":[],"BASE_OS":"","CODENAME":"REL","INCREMENTAL":"13427172","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":"REL","PREVIEW_SDK_INT":0,"RELEASE":"14","RELEASE_OR_CODENAME":"14","RELEASE_OR_PREVIEW_DISPLAY":"14","SDK":"34","SDK_INT":34,"SECURITY_PATCH":"2025-01-01"}}

Build config:

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

Device information

Android version: 14
Device brand: google
Device product: sabrina_prod_stable
Device model: Chromecast

Crash information

Start time: 2025-09-05T10:19:05.191-04:00
Crash time: 2025-09-05T10:19:12.057-04:00

FFmpeg logs

{"Protocol":1,"Id":"native_83b31f2b2d33151fc1333f5a793018f3_7d651b6e63153861d67f37784e548d61","Path":"http://192.168.1.10:8096/LiveTv/LiveStreamFiles/a814670e4cf44a1f92fd394b8fe04bae/stream.ts","EncoderPath":null,"EncoderProtocol":null,"Type":0,"Container":"ts","Size":null,"Name":null,"IsRemote":false,"ETag":null,"RunTimeTicks":null,"ReadAtNativeFramerate":false,"IgnoreDts":true,"IgnoreIndex":false,"GenPtsInput":false,"SupportsTranscoding":true,"SupportsDirectStream":true,"SupportsDirectPlay":false,"IsInfiniteStream":true,"UseMostCompatibleTranscodingProfile":true,"RequiresOpening":true,"OpenToken":null,"RequiresClosing":true,"LiveStreamId":"e2329f4997b378e64ccf8fa396deb76e_af999c25a00715699361240d4c6c7a53_native_83b31f2b2d33151fc1333f5a793018f3_7d651b6e63153861d67f37784e548d61","BufferMs":0,"RequiresLooping":false,"SupportsProbing":true,"VideoType":null,"IsoType":null,"Video3DFormat":null,"MediaStreams":[{"Codec":"mpeg2video","CodecTag":null,"Language":null,"ColorRange":"tv","ColorSpace":null,"ColorTransfer":null,"ColorPrimaries":null,"DvVersionMajor":null,"DvVersionMinor":null,"DvProfile":null,"DvLevel":null,"RpuPresentFlag":null,"ElPresentFlag":null,"BlPresentFlag":null,"DvBlSignalCompatibilityId":null,"Rotation":null,"Comment":null,"TimeBase":"1/90000","CodecTimeBase":null,"Title":null,"VideoRange":1,"VideoRangeType":1,"VideoDoViTitle":null,"AudioSpatialFormat":0,"LocalizedUndefined":null,"LocalizedDefault":null,"LocalizedForced":null,"LocalizedExternal":null,"LocalizedHearingImpaired":null,"DisplayTitle":"720p MPEG2VIDEO SDR","NalLengthSize":null,"IsInterlaced":false,"IsAVC":null,"ChannelLayout":null,"BitRate":8000000,"BitDepth":8,"RefFrames":1,"PacketLength":null,"Channels":null,"SampleRate":null,"IsDefault":false,"IsForced":false,"IsHearingImpaired":false,"Height":720,"Width":1280,"AverageFrameRate":59.94006,"RealFrameRate":59.94006,"ReferenceFrameRate":59.94006,"Profile":"Main","Type":1,"AspectRatio":"16:9","Index":-1,"Score":null,"IsExternal":false,"DeliveryMethod":null,"DeliveryUrl":null,"IsExternalUrl":null,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Path":null,"PixelFormat":"yuv420p","Level":4,"IsAnamorphic":false},{"Codec":"ac3","CodecTag":"AC-3","Language":null,"ColorRange":null,"ColorSpace":null,"ColorTransfer":null,"ColorPrimaries":null,"DvVersionMajor":null,"DvVersionMinor":null,"DvProfile":null,"DvLevel":null,"RpuPresentFlag":null,"ElPresentFlag":null,"BlPresentFlag":null,"DvBlSignalCompatibilityId":null,"Rotation":null,"Comment":null,"TimeBase":"1/90000","CodecTimeBase":null,"Title":null,"VideoRange":0,"VideoRangeType":0,"VideoDoViTitle":null,"AudioSpatialFormat":0,"LocalizedUndefined":null,"LocalizedDefault":"Default","LocalizedForced":null,"LocalizedExternal":"External","LocalizedHearingImpaired":null,"DisplayTitle":"Dolby Digital - 5.1","NalLengthSize":null,"IsInterlaced":false,"IsAVC":false,"ChannelLayout":"5.1","BitRate":384000,"BitDepth":null,"RefFrames":null,"PacketLength":null,"Channels":6,"SampleRate":48000,"IsDefault":false,"IsForced":false,"IsHearingImpaired":false,"Height":null,"Width":null,"AverageFrameRate":null,"RealFrameRate":null,"ReferenceFrameRate":null,"Profile":null,"Type":0,"AspectRatio":null,"Index":-1,"Score":null,"IsExternal":false,"DeliveryMethod":null,"DeliveryUrl":null,"IsExternalUrl":null,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Path":null,"PixelFormat":null,"Level":0,"IsAnamorphic":null}],"MediaAttachments":[],"Formats":[],"Bitrate":8384000,"FallbackMaxStreamingBitrate":30000000,"Timestamp":null,"RequiredHttpHeaders":{},"TranscodingUrl":null,"TranscodingSubProtocol":0,"TranscodingContainer":null,"AnalyzeDurationMs":3000,"DefaultAudioStreamIndex":null,"DefaultSubtitleStreamIndex":null,"HasSegments":false}

/usr/libexec/jellyfin-ffmpeg/ffmpeg -analyzeduration 3000000 -probesize 1G -fflags +igndts  -i "http://192.168.1.10:8096/LiveTv/LiveStreamFiles/a814670e4cf44a1f92fd394b8fe04bae/stream.ts" -map_metadata -1 -map_chapters -1 -threads 0 -sn -codec:v:0 libx265 -tag:v:0 hvc1 -preset veryfast -crf 28 -maxrate 8000000 -bufsize 16000000 -profile:v:0 main -x265-params:0 no-scenecut=1:no-open-gop=1:no-info=1:subme=3:merange=25:rc-lookahead=10:me=star:ctu=32:max-tu-size=32:min-cu-size=16:rskip=2:rskip-edge-threshold=2:no-sao=1:no-strong-intra-smoothing=1 -force_key_frames:0 "expr:gte(t,n_forced*3)" -vf "setparams=color_primaries=bt709:color_trc=bt709:colorspace=bt709,scale=trunc(min(max(iw\,ih*a)\,min(4096\,4096*a))/2)*2:trunc(min(max(iw/a\,ih)\,min(4096/a\,4096))/2)*2,format=yuv420p" -flags -global_header -codec:a:0 copy -copyts -avoid_negative_ts disabled -max_muxing_queue_size 2048 -f hls -max_delay 5000000 -hls_time 3 -hls_segment_type mpegts -start_number 0 -hls_base_url "hls/8a56dc53d2ce7e97c95c570ea09dd08d/" -hls_segment_filename "/var/lib/jellyfin/transcodes/8a56dc53d2ce7e97c95c570ea09dd08d%d.ts" -hls_playlist_type event -hls_list_size 0 -y "/var/lib/jellyfin/transcodes/8a56dc53d2ce7e97c95c570ea09dd08d.m3u8"


ffmpeg version 7.1.1-Jellyfin Copyright (c) 2000-2025 the FFmpeg developers
  built with gcc 15 (GCC)
  configuration: --arch=x86_64 --optflags='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' --extra-ldflags='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' --prefix=/discard --bindir=/usr/libexec/jellyfin-ffmpeg --target-os=linux --extra-version=Jellyfin --disable-doc --disable-ffplay --disable-stripping --disable-shared --disable-libxcb --disable-sdl2 --disable-xlib --enable-lto --enable-gpl --enable-version3 --enable-static --enable-pic --enable-gmp --enable-gnutls --enable-chromaprint --enable-libfontconfig --enable-libharfbuzz --enable-libass --enable-libbluray --enable-libdrm --enable-libfreetype --enable-libfribidi --enable-libmp3lame --enable-libopenmpt --enable-libopus --enable-libtheora --enable-libvorbis --enable-libdav1d --enable-libwebp --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzvbi --enable-libzimg --enable-libshaderc --enable-libplacebo --enable-vulkan --enable-opencl --enable-vaapi --enable-amf --enable-libvpl --enable-ffnvcodec --enable-cuda --enable-cuda-llvm --enable-cuvid --enable-nvdec --enable-nvenc --enable-libfdk-aac --enable-libsvtav1
  libavutil      59. 39.100 / 59. 39.100
  libavcodec     61. 19.101 / 61. 19.101
  libavformat    61.  7.100 / 61.  7.100
  libavdevice    61.  3.100 / 61.  3.100
  libavfilter    10.  4.100 / 10.  4.100
  libswscale      8.  3.100 /  8.  3.100
  libswresample   5.  3.100 /  5.  3.100
  libpostproc    58.  3.100 / 58.  3.100
[mpeg2video @ 0x55995c22f040] Invalid frame dimensions 0x0.
    Last message repeated 37 times
Input #0, mpegts, from 'http://192.168.1.10:8096/LiveTv/LiveStreamFiles/a814670e4cf44a1f92fd394b8fe04bae/stream.ts':
  Duration: N/A, start: 45441.473744, bitrate: N/A
  Program 5 
  Stream #0:0[0x51]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p(tv, progressive), 1280x720 [SAR 1:1 DAR 16:9], 59.94 fps, 59.94 tbr, 90k tbn
      Side data:
        cpb: bitrate max/min/avg: 24000000/0/0 buffer size: 7995392 vbv_delay: N/A
  Stream #0:1[0x54](eng): Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, 5.1(side), fltp, 384 kb/s
  Stream #0:2[0x55](eng): Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, mono, fltp, 96 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (mpeg2video (native) -> hevc (libx265))
  Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
x265 [info]: HEVC encoder version 4.1+1-1d117be
x265 [info]: build info [Linux][GCC 15.0.1][64 bit] 8bit
x265 [info]: using cpu capabilities: MMX2 SSE2Fast LZCNT SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
x265 [info]: Main profile, Level-4 (High tier)
x265 [info]: Thread pool created using 4 threads
x265 [info]: Slices                              : 1
x265 [info]: frame threads / pool features       : 2 / wpp(23 rows)
x265 [info]: Coding QT: max CU size, min CU size : 32 / 16
x265 [info]: Residual QT: max TU size, max depth : 32 / 1 inter / 1 intra
x265 [info]: ME / range / subpel / merge         : star / 25 / 3 / 2
x265 [info]: Lookahead / bframes / badapt        : 10 / 4 / 0
x265 [info]: b-pyramid / weightp / weightb       : 1 / 1 / 0
x265 [info]: References / ref-limit  cu / depth  : 2 / on / on
x265 [info]: AQ: mode / str / qg-size / cu-tree  : 2 / 1.0 / 32 / 1
x265 [info]: Rate Control / qCompress            : CRF-28.0 / 0.60
x265 [info]: VBV/HRD buffer / max-rate / init    : 16000 / 8000 / 0.750
x265 [info]: tools: rd=2 psy-rd=2.00 early-skip rskip mode=2
x265 [info]: tools: rskip-edge-threshold=0.02 signhide tmvp fast-intra
x265 [info]: tools: lslices=4 deblock dhdr10-info
Output #0, hls, to '/var/lib/jellyfin/transcodes/8a56dc53d2ce7e97c95c570ea09dd08d.m3u8':
  Metadata:
    encoder         : Lavf61.7.100
  Stream #0:0: Video: hevc (hvc1 / 0x31637668), yuv420p(tv, bt709, progressive), 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 59.94 fps, 90k tbn
      Metadata:
        encoder         : Lavc61.19.101 libx265
      Side data:
        cpb: bitrate max/min/avg: 8000000/0/0 buffer size: 16000000 vbv_delay: N/A
  Stream #0:1: Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, 5.1(side), fltp, 384 kb/s


[q] command received. Exiting.

[hls @ 0x55995c2382c0] Opening '/var/lib/jellyfin/transcodes/8a56dc53d2ce7e97c95c570ea09dd08d0.ts' for writing
[hls @ 0x55995c2382c0] Opening '/var/lib/jellyfin/transcodes/8a56dc53d2ce7e97c95c570ea09dd08d.m3u8.tmp' for writing
[out#0/hls @ 0x55995c233b80] video:64KiB audio:74KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: unknown
frame=   73 fps=0.0 q=39.0 Lsize=N/A time=00:00:00.00 bitrate=N/A dup=1 drop=0 speed=   0x    
x265 [info]: frame I:      1, Avg QP:29.93  kb/s: 19778.78
x265 [info]: frame P:     15, Avg QP:34.60  kb/s: 515.80  
x265 [info]: frame B:     57, Avg QP:38.76  kb/s: 69.07   
x265 [info]: Weighted P-Frames: Y:0.0% UV:0.0%

encoded 73 frames in 0.81s (90.43 fps), 430.86 kb/s, Avg QP:37.78

Application version

0.18.11

Where did you install the app from?

Google Play Store

Device information

Chromecast with Google TV (4K)

Android version

Android 14

Jellyfin server version

10.10.7-1.fc42

Other sources

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingplaybackIssue related to media playback

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions