jellyfin-androidtv
jellyfin-androidtv copied to clipboard
Player error: "Invalid zero channel mask"
Describe the bug
- Try to play a dual-audio media file (see ffprobe output)
- "Player error encountered. Will re-try", and then "Too many errors. Giving up" toasts appear
The error is inconsistent, e.g. sometimes the file will play at first (after maybe one error message), but when I try to change the audio track to the second one, the player crashes in the same manner.
I am able to watch this item after first changing to my preferred audio and subtitle tracks via Jellyfin Web, then restarting the AndroidTV app and playing the episode.
Logs
(logcat, since I don't seem to have any androidtv logs on my Jellyfin dashboard)
09-15 01:13:42.279 16237 16237 D jellyfin-apiclient: Adding request to queue: http://***.***.***.***:8096/Shows/eb555a92-dc75-d710-ed03-375a4dccac18/Episodes?Fields=MediaSources%2CMediaStreams%2CPath%2CChapters%2COverview%2CPrimaryImageAspectRatio%2CChildCount&UserId=2d175700-4ca2-4c6a-8a54-241cf2bb2390&SeasonId=01e0b569-aa9b-8d01-8200-d0eeaf7fa3c1&IsMissing=false&IsVirtualUnaired=false&format=json
09-15 01:13:42.284 16237 16326 D TrafficStats: tagSocket(6) with statsTag=0x85bc0e79, statsUid=-1
09-15 01:13:42.342 16237 16237 I jellyfin-apiclient: Response received from: http://***.***.***.***:8096/Shows/eb555a92-dc75-d710-ed03-375a4dccac18/Episodes?Fields=MediaSources%2CMediaStreams%2CPath%2CChapters%2COverview%2CPrimaryImageAspectRatio%2CChildCount&UserId=2d175700-4ca2-4c6a-8a54-241cf2bb2390&SeasonId=01e0b569-aa9b-8d01-8200-d0eeaf7fa3c1&IsMissing=false&IsVirtualUnaired=false&format=json
09-15 01:13:42.381 16237 16237 D NavigationRepositoryImpl: Navigating to Fragment(fragment=class org.jellyfin.androidtv.ui.playback.CustomPlaybackOverlayFragment (Kotlin reflection is not available), arguments=Bundle[{Position=0}]) (via navigate function)
09-15 01:13:42.390 16237 16237 I PlaybackController: ** Available display refresh rates:
09-15 01:13:42.390 16237 16237 D PlaybackController: display mode 1188 - [email protected]
09-15 01:13:42.391 16237 16237 D PlaybackController: display mode 1358 - [email protected]
09-15 01:13:42.391 16237 16237 D PlaybackController: display mode 1359 - [email protected]
09-15 01:13:42.392 16237 16237 D PlaybackController: display mode 1360 - [email protected]
09-15 01:13:42.392 16237 16237 D PlaybackController: display mode 1361 - [email protected]
09-15 01:13:42.392 16237 16237 D PlaybackController: display mode 1362 - [email protected]
09-15 01:13:42.393 16237 16237 D PlaybackController: display mode 1363 - [email protected]
09-15 01:13:42.394 16237 16237 D PlaybackController: display mode 1364 - [email protected]
09-15 01:13:42.394 16237 16237 D PlaybackController: display mode 1365 - [email protected]
09-15 01:13:42.395 16237 16237 D PlaybackController: display mode 1366 - [email protected]
09-15 01:13:42.395 16237 16237 D PlaybackController: display mode 1367 - [email protected]
09-15 01:13:42.395 16237 16237 D PlaybackController: display mode 1368 - [email protected]
09-15 01:13:42.396 16237 16237 D PlaybackController: display mode 1369 - [email protected]
09-15 01:13:42.397 16237 16237 D PlaybackController: display mode 1370 - [email protected]
09-15 01:13:42.397 16237 16237 D PlaybackController: display mode 1371 - [email protected]
09-15 01:13:42.398 16237 16237 D PlaybackController: display mode 1372 - [email protected]
09-15 01:13:42.398 16237 16237 D PlaybackController: display mode 1373 - [email protected]
09-15 01:13:42.398 16237 16237 D PlaybackController: display mode 1374 - [email protected]
09-15 01:13:42.399 16237 16237 D PlaybackController: display mode 1375 - [email protected]
09-15 01:13:42.399 16237 16237 D PlaybackController: display mode 1376 - [email protected]
09-15 01:13:42.400 16237 16237 D PlaybackController: display mode 1377 - [email protected]
09-15 01:13:42.401 16237 16237 D PlaybackController: display mode 1378 - [email protected]
09-15 01:13:42.401 16237 16237 D PlaybackController: display mode 1379 - [email protected]
09-15 01:13:42.402 16237 16237 D PlaybackController: display mode 1380 - [email protected]
09-15 01:13:42.402 16237 16237 D PlaybackController: display mode 1381 - [email protected]
09-15 01:13:42.402 16237 16237 D PlaybackController: display mode 1382 - [email protected]
09-15 01:13:42.403 16237 16237 D PlaybackController: display mode 1383 - [email protected]
09-15 01:13:42.404 16237 16237 D PlaybackController: display mode 1384 - [email protected]
09-15 01:13:42.405 16237 16237 D PlaybackController: display mode 1385 - [email protected]
09-15 01:13:42.447 16237 16237 I ExoPlayerImpl: Init d3117a7 [ExoPlayerLib/2.19.1] [wade, Dynalink TV Box, askey, 33]
09-15 01:13:42.455 16237 16237 I DefaultRenderersFactory: Loaded FfmpegAudioRenderer.
09-15 01:13:42.462 3419 3449 I EffectsFactory: EffectCreate() create_effect
09-15 01:13:42.472 3419 3449 I EffectsFactory: EffectCreate() create_effect
09-15 01:13:42.472 3419 3449 E EffectDP: DP_reset(0xf2f000f0): null DynamicsProcessing
09-15 01:13:42.473 3419 3449 E EffectDP: DP_reset(0xf2f000f0): null DynamicsProcessing
09-15 01:13:42.473 3419 3449 E EffectDP: DP_reset(0xf2f000f0): null DynamicsProcessing
09-15 01:13:42.474 3419 3449 E EffectDP: DP_reset(0xf2f000f0): null DynamicsProcessing
09-15 01:13:42.498 16237 16237 D PlaybackController: Play called from state: IDLE with pos: 0 and sub index: null
09-15 01:13:42.498 16237 16237 D PlaybackController: Max bitrate is: 120000000
09-15 01:13:42.505 16237 16237 D jellyfin-apiclient: Adding request to queue: http://***.***.***.***:8096/Items/534939b3-e1ad-a702-ae88-62c63dbfa213/PlaybackInfo?format=json
09-15 01:13:42.511 16237 16237 W AudioManager: Use of stream types is deprecated for operations other than volume control
09-15 01:13:42.511 16237 16237 W AudioManager: See the documentation of requestAudioFocus() for what to use instead with android.media.AudioAttributes to qualify your playback use case
09-15 01:13:42.512 3673 17662 I MediaFocusControl: requestAudioFocus() from uid/pid 10072/16237 AA=USAGE_MEDIA/CONTENT_TYPE_MUSIC clientId=android.media.AudioManager@836c2org.jellyfin.androidtv.ui.playback.CustomPlaybackOverlayFragment$6@6f4ea68 callingPack=org.jellyfin.androidtv req=1 flags=0x0 sdk=33
09-15 01:13:42.513 3673 17662 I AudioService.FadeOutManager: unfadeOutUid() uid:10072
09-15 01:13:42.545 16237 16237 I jellyfin-apiclient: Response received from: http://***.***.***.***:8096/Items/534939b3-e1ad-a702-ae88-62c63dbfa213/PlaybackInfo?format=json
09-15 01:13:42.547 16237 16237 I PlaybackController: VLC would direct stream
09-15 01:13:42.549 16237 16237 D jellyfin-apiclient: Adding request to queue: http://***.***.***.***:8096/Items/534939b3-e1ad-a702-ae88-62c63dbfa213/PlaybackInfo?format=json
09-15 01:13:42.591 3439 4689 E MesonHwc: checkLayerValidate fb:245 has no buffer
09-15 01:13:42.595 16237 16237 I jellyfin-apiclient: Response received from: http://***.***.***.***:8096/Items/534939b3-e1ad-a702-ae88-62c63dbfa213/PlaybackInfo?format=json
09-15 01:13:42.597 16237 16237 I PlaybackController: Internal player would transcode
09-15 01:13:42.598 16237 16237 I PlaybackController: Explicit deinterlacing will NOT be used
09-15 01:13:42.598 16237 16237 I PlaybackController: User preferred player is: EXOPLAYER
09-15 01:13:42.599 16237 16237 I PlaybackController: Will use internal player
09-15 01:13:42.610 16237 16237 I VideoManager: Network buffer set to 600
09-15 01:13:42.613 16237 16237 D VideoManager: Surface attached
09-15 01:13:42.615 16237 16237 D PlaybackController: default audio index set to 1
09-15 01:13:42.615 16237 16237 D PlaybackController: default audio index set to 1 remote default 1
09-15 01:13:42.616 16237 16237 D PlaybackController: default sub index set to 3 remote default 3
09-15 01:13:42.616 16237 16237 D PlaybackController: stream started with burnt in subs
09-15 01:13:42.616 16237 16237 I PlaybackController: Playing back in native mode.
09-15 01:13:42.617 16237 16237 D PlaybackController: trying to find display mode for video: [email protected]
09-15 01:13:42.618 16237 16237 D PlaybackController: considering display mode: 1188 - [email protected]
09-15 01:13:42.618 16237 16237 D PlaybackController: considering display mode: 1358 - [email protected]
09-15 01:13:42.619 16237 16237 D PlaybackController: considering display mode: 1359 - [email protected]
09-15 01:13:42.619 16237 16237 D PlaybackController: considering display mode: 1360 - [email protected]
09-15 01:13:42.619 16237 16237 D PlaybackController: considering display mode: 1361 - [email protected]
09-15 01:13:42.620 16237 16237 D PlaybackController: considering display mode: 1362 - [email protected]
09-15 01:13:42.620 16237 16237 D PlaybackController: considering display mode: 1363 - [email protected]
09-15 01:13:42.621 16237 16237 D PlaybackController: considering display mode: 1364 - [email protected]
09-15 01:13:42.621 16237 16237 D PlaybackController: considering display mode: 1365 - [email protected]
09-15 01:13:42.622 16237 16237 D PlaybackController: considering display mode: 1366 - [email protected]
09-15 01:13:42.622 16237 16237 D PlaybackController: considering display mode: 1367 - [email protected]
09-15 01:13:42.622 16237 16237 D PlaybackController: considering display mode: 1368 - [email protected]
09-15 01:13:42.623 16237 16237 D PlaybackController: considering display mode: 1369 - [email protected]
09-15 01:13:42.623 16237 16237 D PlaybackController: considering display mode: 1370 - [email protected]
09-15 01:13:42.624 16237 16237 D PlaybackController: qualifying display mode: 1370 - [email protected]
09-15 01:13:42.624 16237 16237 D PlaybackController: preferring mode: 1370 - [email protected]
09-15 01:13:42.625 16237 16237 D PlaybackController: considering display mode: 1371 - [email protected]
09-15 01:13:42.625 16237 16237 D PlaybackController: considering display mode: 1372 - [email protected]
09-15 01:13:42.626 16237 16237 D PlaybackController: considering display mode: 1373 - [email protected]
09-15 01:13:42.626 16237 16237 D PlaybackController: considering display mode: 1374 - [email protected]
09-15 01:13:42.626 16237 16237 D PlaybackController: considering display mode: 1375 - [email protected]
09-15 01:13:42.627 16237 16237 D PlaybackController: qualifying display mode: 1375 - [email protected]
09-15 01:13:42.627 16237 16237 D PlaybackController: preferring mode: 1375 - [email protected]
09-15 01:13:42.628 16237 16237 D PlaybackController: considering display mode: 1376 - [email protected]
09-15 01:13:42.628 16237 16237 D PlaybackController: considering display mode: 1377 - [email protected]
09-15 01:13:42.629 16237 16237 D PlaybackController: qualifying display mode: 1377 - [email protected]
09-15 01:13:42.629 16237 16237 D PlaybackController: considering display mode: 1378 - [email protected]
09-15 01:13:42.630 16237 16237 D PlaybackController: considering display mode: 1379 - [email protected]
09-15 01:13:42.630 16237 16237 D PlaybackController: considering display mode: 1380 - [email protected]
09-15 01:13:42.631 16237 16237 D PlaybackController: considering display mode: 1381 - [email protected]
09-15 01:13:42.631 16237 16237 D PlaybackController: considering display mode: 1382 - [email protected]
09-15 01:13:42.631 16237 16237 D PlaybackController: considering display mode: 1383 - [email protected]
09-15 01:13:42.632 16237 16237 D PlaybackController: considering display mode: 1384 - [email protected]
09-15 01:13:42.632 16237 16237 D PlaybackController: considering display mode: 1385 - [email protected]
09-15 01:13:42.633 16237 16237 I PlaybackController: *** Best refresh mode is: 1375 - 3840x2160/23.976025
09-15 01:13:42.633 16237 16237 I PlaybackController: Display is already in best mode
09-15 01:13:42.634 16237 16237 D VideoManager: Setting playback speed: 1.000000
09-15 01:13:42.638 16237 16237 I VideoManager: Video path set to: http://***.***.***.***:8096/videos/534939b3-e1ad-a702-ae88-62c63dbfa213/master.m3u8?DeviceId=63e627b541a97d74c30156174ca8f68df51a9a7b&MediaSourceId=534939b3e1ada702ae8862c63dbfa213&VideoCodec=hevc,h264,hevc&AudioCodec=ac3&AudioStreamIndex=1&SubtitleStreamIndex=3&VideoBitrate=119360000&AudioBitrate=640000&AudioSampleRate=48000&MaxFramerate=23.976025&PlaySessionId=03425b813b554e4c9142accd382e7731&api_key=8c35eb457eb1447790e1169a521948a5&SubtitleMethod=Encode&RequireAvc=false&Tag=66353cd0318d3b9c1e7a071c03b4c572&SegmentContainer=ts&BreakOnNonKeyFrames=False&hevc-level=150&hevc-videobitdepth=10&hevc-profile=main10&hevc-audiochannels=6&aac-audiochannels=8&TranscodeReasons=SubtitleCodecNotSupported
09-15 01:13:42.641 16237 16237 D VideoManager: Caught player timeline change - reason: PLAYLIST_CHANGED
09-15 01:13:42.642 16237 16237 D VideoManager: Player is buffering
09-15 01:13:42.643 16237 16237 D jellyfin-apiclient: Adding request to queue: http://***.***.***.***:8096/Sessions/Playing
09-15 01:13:42.643 16237 16237 I ReportingHelper: Playback of Phantom of Falsehood started.
09-15 01:13:42.646 16237 945 D TrafficStats: tagSocket(120) with statsTag=0xffffffff, statsUid=-1
09-15 01:13:42.675 3439 4689 E MesonHwc: checkLayerValidate fb:245 has no buffer
09-15 01:13:42.716 3439 4689 E MesonHwc: checkLayerValidate fb:245 has no buffer
09-15 01:13:42.719 16237 16237 I jellyfin-apiclient: Response received from: http://***.***.***.***:8096/Sessions/Playing
09-15 01:13:42.759 3439 4689 E MesonHwc: checkLayerValidate fb:758 has no buffer
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: Playback error
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: com.google.android.exoplayer2.ExoPlaybackException: Unexpected runtime error
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:668)
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: at android.os.Handler.dispatchMessage(Handler.java:102)
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: at android.os.Looper.loopOnce(Looper.java:201)
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: at android.os.Looper.loop(Looper.java:288)
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: at android.os.HandlerThread.run(HandlerThread.java:67)
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: Caused by: java.lang.IllegalArgumentException: Invalid zero channel mask
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: at android.media.AudioFormat$Builder.setChannelMask(AudioFormat.java:1223)
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: at com.google.android.exoplayer2.audio.AudioCapabilities$Api29.getMaxSupportedChannelCountForPassthrough(AudioCapabilities.java:419)
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: at com.google.android.exoplayer2.audio.AudioCapabilities.getMaxSupportedChannelCountForPassthrough(AudioCapabilities.java:302)
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: at com.google.android.exoplayer2.audio.AudioCapabilities.getEncodingAndChannelConfigForPassthrough(AudioCapabilities.java:240)
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: at com.google.android.exoplayer2.audio.AudioCapabilities.isPassthroughPlaybackSupported(AudioCapabilities.java:199)
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: at com.google.android.exoplayer2.audio.DefaultAudioSink.getFormatSupport(DefaultAudioSink.java:620)
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: at com.google.android.exoplayer2.audio.DefaultAudioSink.supportsFormat(DefaultAudioSink.java:599)
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: at com.google.android.exoplayer2.audio.MediaCodecAudioRenderer.supportsFormat(MediaCodecAudioRenderer.java:300)
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.supportsFormat(MediaCodecRenderer.java:459)
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: at com.google.android.exoplayer2.trackselection.MappingTrackSelector.findRenderer(MappingTrackSelector.java:513)
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: at com.google.android.exoplayer2.trackselection.MappingTrackSelector.selectTracks(MappingTrackSelector.java:380)
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: at com.google.android.exoplayer2.MediaPeriodHolder.selectTracks(MediaPeriodHolder.java:246)
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: at com.google.android.exoplayer2.MediaPeriodHolder.handlePrepared(MediaPeriodHolder.java:194)
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: at com.google.android.exoplayer2.ExoPlayerImplInternal.handlePeriodPrepared(ExoPlayerImplInternal.java:2327)
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:541)
09-15 01:13:42.772 16237 944 E ExoPlayerImplInternal: ... 4 more
09-15 01:13:42.799 3439 4689 E MesonHwc: checkLayerValidate fb:758 has no buffer
09-15 01:13:42.803 16237 16237 D VideoManager: Caught player timeline change - reason: SOURCE_UPDATE
09-15 01:13:42.805 16237 16237 D VideoManager: Caught player timeline change - reason: SOURCE_UPDATE
09-15 01:13:42.806 16237 16237 E VideoManager: ***** Got error from player
09-15 01:13:42.806 16237 16237 E PlaybackController: Playback error - Failed to load video
09-15 01:13:42.810 16237 16237 I PlaybackController: Player error encountered - retrying
09-15 01:13:42.810 16237 16237 D PlaybackController: stop called at 0
09-15 01:13:42.835 3853 4090 W Parcel : Expecting binder but got null!
09-15 01:13:42.839 3673 21728 D CoreBackPreview: Window{753df7b u0 Toast}: Setting back callback OnBackInvokedCallbackInfo{mCallback=android.window.IOnBackInvokedCallback$Stub$Proxy@b88bdf1, mPriority=0}
09-15 01:13:42.842 3439 4689 E MesonHwc: checkLayerValidate fb:758 has no buffer
09-15 01:13:42.850 3853 4090 E OpenGLRenderer: Unable to match the desired swap behavior.
09-15 01:13:42.884 3439 4689 E MesonHwc: checkLayerValidate fb:758 has no buffer
09-15 01:13:42.925 3439 4689 E MesonHwc: checkLayerValidate fb:758 has no buffer
09-15 01:13:42.961 16237 16237 I jellyfin-apiclient: ReportPlaybackStopped: Item 534939b3-e1ad-a702-ae88-62c63dbfa213, Ticks: 0
09-15 01:13:42.961 16237 16237 D jellyfin-apiclient: Adding request to queue: http://***.***.***.***:8096/Sessions/Playing/Stopped
09-15 01:13:42.962 16237 16237 D PlaybackController: Play called from state: IDLE with pos: 0 and sub index: null
09-15 01:13:42.962 16237 16237 D PlaybackController: Max bitrate is: 120000000
09-15 01:13:42.966 3439 4689 E MesonHwc: checkLayerValidate fb:758 has no buffer
09-15 01:13:42.972 16237 16237 D jellyfin-apiclient: Adding request to queue: http://***.***.***.***:8096/Items/534939b3-e1ad-a702-ae88-62c63dbfa213/PlaybackInfo?format=json
09-15 01:13:42.986 16237 16237 I jellyfin-apiclient: Response received from: http://***.***.***.***:8096/Sessions/Playing/Stopped
09-15 01:13:42.986 16237 16237 I jellyfin-apiclient: Response received from: http://***.***.***.***:8096/Items/534939b3-e1ad-a702-ae88-62c63dbfa213/PlaybackInfo?format=json
09-15 01:13:42.988 16237 16237 I PlaybackController: VLC would direct stream
09-15 01:13:42.990 16237 16237 D jellyfin-apiclient: Adding request to queue: http://***.***.***.***:8096/Items/534939b3-e1ad-a702-ae88-62c63dbfa213/PlaybackInfo?format=json
09-15 01:13:43.008 3439 4689 E MesonHwc: checkLayerValidate fb:758 has no buffer
09-15 01:13:43.012 5401 5462 D LoungeService: New command:
09-15 01:13:43.012 5401 5462 D LoungeService: 16
09-15 01:13:43.012 5401 5462 D LoungeService: [[8,["noop"]]
09-15 01:13:43.012 5401 5462 D LoungeService: ]
09-15 01:13:43.014 5401 5462 D JsonPathTypeAdapter: CommandItem: Path not found: $[1][1].key
09-15 01:13:43.015 5401 5462 D JsonPathTypeAdapter: CommandItem: Path not found: $[1][1]
09-15 01:13:43.015 5401 5462 D JsonPathTypeAdapter: CommandItem: Path not found: $[1][1]
09-15 01:13:43.016 5401 5462 D JsonPathTypeAdapter: CommandItem: Path not found: $[1][1]
09-15 01:13:43.016 5401 5462 D JsonPathTypeAdapter: CommandItem: Path not found: $[1][1]
09-15 01:13:43.017 5401 5462 D JsonPathTypeAdapter: CommandItem: Path not found: $[1][1]
09-15 01:13:43.018 5401 5401 D RemoteController: Is remote connected: false, command type: 11
09-15 01:13:43.023 16237 16237 D LegacyMediaManager: Removed event listener. Total listeners: 3
09-15 01:13:43.029 16237 16237 I jellyfin-apiclient: Response received from: http://***.***.***.***:8096/Items/534939b3-e1ad-a702-ae88-62c63dbfa213/PlaybackInfo?format=json
09-15 01:13:43.031 16237 16237 I PlaybackController: Internal player would transcode
09-15 01:13:43.031 16237 16237 I PlaybackController: Explicit deinterlacing will NOT be used
(the relevant stack trace and other messages then repeat as the playback is retried)
FFmpeg logs
No response
Media info of the file
ffprobe version 5.1.3 Copyright (c) 2007-2022 the FFmpeg developers
built with gcc 12.2.0 (GCC)
configuration: --disable-static --prefix=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-full-5.1.3 --target_os=linux --arch=x86_64 --pkg-config=pkg-config --enable-gpl --enable-version3 --disable-nonfree --enable-shared --enable-pic --disable-small --enable-runtime-cpudetect --enable-gray --enable-swscale-alpha --enable-hardcoded-tables --enable-safe-bitstream-reader --enable-pthreads --disable-w32threads --disable-os2threads --enable-network --enable-pixelutils --datadir=/nix/store/r7br7jvdnfms3l8f9bqvlhy06w84kpnp-ffmpeg-full-5.1.3-data/share/ffmpeg --enable-ffmpeg --enable-ffplay --enable-ffprobe --bindir=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-full-5.1.3-bin/bin --enable-avcodec --enable-avdevice --enable-avfilter --enable-avformat --enable-avutil --enable-postproc --enable-swresample --enable-swscale --libdir=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-full-5.1.3-lib/lib --incdir=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-full-5.1.3-dev/include --enable-doc --enable-htmlpages --enable-manpages --mandir=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-full-5.1.3-man/share/man --enable-podpages --enable-txtpages --docdir=/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-ffmpeg-full-5.1.3-doc/share/doc/ffmpeg --enable-alsa --enable-bzlib --enable-libcelt --enable-cuda --enable-cuda-llvm --enable-libdav1d --disable-libfdk-aac --disable-libflite --enable-fontconfig --enable-libfreetype --enable-frei0r --enable-libfribidi --enable-libgme --enable-gnutls --enable-libgsm --enable-ladspa --enable-libmp3lame --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libdc1394 --enable-libdrm --enable-iconv --enable-libjack --enable-libmfx --enable-libmodplug --enable-libmysofa --enable-libopus --enable-libplacebo --enable-librsvg --enable-libsrt --enable-libssh --disable-libtensorflow --enable-libtheora --enable-libv4l2 --enable-v4l2-m2m --enable-vaapi --enable-vdpau --enable-libvorbis --enable-libvmaf --enable-libvpx --enable-libwebp --enable-xlib --enable-libxcb --enable-libxcb-shm --enable-libxcb-xfixes --enable-libxcb-shape --enable-libxml2 --enable-lzma --enable-cuvid --enable-nvdec --enable-nvenc --enable-openal --enable-opencl --enable-libopencore-amrnb --disable-opengl --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-libpulse --enable-librav1e --enable-libsvtav1 --disable-librtmp --enable-sdl2 --enable-libsoxr --enable-libspeex --enable-libvidstab --enable-libvo-amrwbenc --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzmq --enable-libzimg --enable-zlib --enable-vulkan --enable-libglslang --enable-libsmbclient --disable-debug --enable-optimizations --disable-extra-warnings --disable-stripping
libavutil 57. 28.100 / 57. 28.100
libavcodec 59. 37.100 / 59. 37.100
libavformat 59. 27.100 / 59. 27.100
libavdevice 59. 7.100 / 59. 7.100
libavfilter 8. 44.100 / 8. 44.100
libswscale 6. 7.100 / 6. 7.100
libswresample 4. 7.100 / 4. 7.100
libpostproc 56. 6.100 / 56. 6.100
Input #0, matroska,webm:
Metadata:
encoder : libebml v1.4.2 + libmatroska v1.6.4
creation_time : 2021-04-03T17:30:40.000000Z
Duration: 00:24:28.06, start: 0.000000, bitrate: 4159 kb/s
Chapters:
Chapter #0:0: start 0.000000, end 209.042156
Metadata:
title : Prologue
Chapter #0:1: start 209.042156, end 298.965333
Metadata:
title : Opening
Chapter #0:2: start 298.965333, end 720.010956
Metadata:
title : Part A
Chapter #0:3: start 720.010956, end 1325.991333
Metadata:
title : Part B
Chapter #0:4: start 1325.991333, end 1415.914489
Metadata:
title : Ending
Chapter #0:5: start 1415.914489, end 1468.064000
Metadata:
title : Part C
Stream #0:0(jpn): Video: hevc (Main 10), yuv420p10le(tv), 1920x1080 [SAR 1:1 DAR 16:9], 23.98 fps, 23.98 tbr, 1k tbn (default)
Metadata:
title : H.265/HEVC Video (10bit)
BPS-eng : 3260620
DURATION-eng : 00:24:27.967000000
NUMBER_OF_FRAMES-eng: 35196
NUMBER_OF_BYTES-eng: 598310414
_STATISTICS_WRITING_APP-eng: mkvmerge v55.0.0 ('Waiting For Space') 64-bit
_STATISTICS_WRITING_DATE_UTC-eng: 2021-04-03 17:30:40
_STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
Stream #0:1(eng): Audio: ac3, 48000 Hz, 5.1(side), fltp, 640 kb/s (default)
Metadata:
title : English: 5.1 Surround (AC3 640Kbps)
BPS-eng : 640000
DURATION-eng : 00:24:28.064000000
NUMBER_OF_FRAMES-eng: 45877
NUMBER_OF_BYTES-eng: 117445120
_STATISTICS_WRITING_APP-eng: mkvmerge v55.0.0 ('Waiting For Space') 64-bit
_STATISTICS_WRITING_DATE_UTC-eng: 2021-04-03 17:30:40
_STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
Stream #0:2(jpn): Audio: ac3, 48000 Hz, stereo, fltp, 256 kb/s
Metadata:
title : Japanese: Dolby Surround (AC3 256Kbps)
BPS-eng : 256000
DURATION-eng : 00:24:28.064000000
NUMBER_OF_FRAMES-eng: 45877
NUMBER_OF_BYTES-eng: 46978048
_STATISTICS_WRITING_APP-eng: mkvmerge v55.0.0 ('Waiting For Space') 64-bit
_STATISTICS_WRITING_DATE_UTC-eng: 2021-04-03 17:30:40
_STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
Stream #0:3(eng): Subtitle: ass (default)
Metadata:
title : English Signs & Songs (Official Subs)
BPS-eng : 70
DURATION-eng : 00:01:27.420000000
NUMBER_OF_FRAMES-eng: 9
NUMBER_OF_BYTES-eng: 767
_STATISTICS_WRITING_APP-eng: mkvmerge v55.0.0 ('Waiting For Space') 64-bit
_STATISTICS_WRITING_DATE_UTC-eng: 2021-04-03 17:30:40
_STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
Stream #0:4(eng): Subtitle: ass
Metadata:
title : English Subtitles (Official Subs)
BPS-eng : 76
DURATION-eng : 00:23:56.600000000
NUMBER_OF_FRAMES-eng: 269
NUMBER_OF_BYTES-eng: 13794
_STATISTICS_WRITING_APP-eng: mkvmerge v55.0.0 ('Waiting For Space') 64-bit
_STATISTICS_WRITING_DATE_UTC-eng: 2021-04-03 17:30:40
_STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
Stream #0:5: Attachment: ttf
Metadata:
filename : jesaya free.ttf
mimetype : application/x-truetype-font
Unsupported codec with id 98304 for input stream 5
Application version
0.16.0-beta.3
Device information
Dynalink TV Box (wade)
Android version
LineageOS 20 (https://forum.xda-developers.com/t/official-unofficial-lineageos-20-for-amlogic-gxl-gxm-g12-sm1-ne-family-devices.4534935/)
Jellyfin server version
10.8.10
The app tries to transcode your media but it fails to play. Can you look if there are any issues with the transcode in the ffmpeg logs?
The player seems to crash before ffmpeg launches at all. There is no FFmpeg.transcode-...
log file produced. The main Jellyfin log shows the following:
Log file
[2023-09-16 20:10:02.346 +00:00] [DBG] [160] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:02.346 +00:00] [DBG] [160] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:02.545 +00:00] [DBG] [280] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:02.545 +00:00] [DBG] [280] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:02.548 +00:00] [DBG] [280] Jellyfin.Api.Controllers.MediaInfoController: GetPostedPlaybackInfo profile: DeviceProfile { Name: "AndroidTV-libVLC", Id: null, Identification: null, FriendlyName: null, Manufacturer: null, ManufacturerUrl: null, ModelName: null, ModelDescription: null, ModelNumber: null, ModelUrl: null, SerialNumber: null, EnableAlbumArtInDidl: False, EnableSingleAlbumArtLimit: False, EnableSingleSubtitleLimit: False, SupportedMediaTypes: "Audio,Photo,Video", UserId: null, AlbumArtPn: null, MaxAlbumArtWidth: 0, MaxAlbumArtHeight: 0, MaxIconWidth: null, MaxIconHeight: null, MaxStreamingBitrate: 20000000, MaxStaticBitrate: 100000000, MusicStreamingTranscodingBitrate: 128000, MaxStaticMusicBitrate: 8000000, SonyAggregationFlags: null, ProtocolInfo: null, TimelineOffsetSeconds: 0, RequiresPlainVideoItems: False, RequiresPlainFolders: False, EnableMSMediaReceiverRegistrar: False, IgnoreTranscodeByteRangeRequests: False, XmlRootAttributes: [], DirectPlayProfiles: [DirectPlayProfile { Container: "m4v,3gp,ts,mpegts,mov,xvid,vob,mkv,wmv,asf,ogm,ogv,m2v,avi,mpg,mpeg,mp4,webm,wtv", AudioCodec: "aac,mp3,mp2,ac3,eac3,wma,wmav2,dca,dts,pcm,pcm_s16le,pcm_s24le,opus,flac,truehd", VideoCodec: null, Type: Video }, DirectPlayProfile { Container: "flac,aac,mp3,mpa,wav,wma,mp2,ogg,oga,webma,ape", AudioCodec: null, VideoCodec: null, Type: Audio }, DirectPlayProfile { Container: "jpg,jpeg,png,gif,webp", AudioCodec: null, VideoCodec: null, Type: Photo }], TranscodingProfiles: [TranscodingProfile { Container: "mkv", Type: Video, VideoCodec: "h264", AudioCodec: "aac,mp3", Protocol: "", EstimateContentLength: False, EnableMpegtsM2TsMode: False, TranscodeSeekInfo: Auto, CopyTimestamps: True, Context: Streaming, EnableSubtitlesInManifest: False, MaxAudioChannels: null, MinSegments: 0, SegmentLength: 0, BreakOnNonKeyFrames: False, Conditions: [] }, TranscodingProfile { Container: "mp3", Type: Audio, VideoCodec: "", AudioCodec: "mp3", Protocol: "", EstimateContentLength: False, EnableMpegtsM2TsMode: False, TranscodeSeekInfo: Auto, CopyTimestamps: False, Context: Streaming, EnableSubtitlesInManifest: False, MaxAudioChannels: null, MinSegments: 0, SegmentLength: 0, BreakOnNonKeyFrames: False, Conditions: [] }], ContainerProfiles: [ContainerProfile { Type: Video, Conditions: [ProfileCondition { Condition: NotEquals, Property: VideoCodecTag, Value: "xvid", IsRequired: False }], Container: "avi" }], CodecProfiles: [CodecProfile { Type: Video, Conditions: [ProfileCondition { Condition: NotEquals, Property: VideoProfile, Value: "none", IsRequired: False }], ApplyConditions: [], Codec: "hevc", Container: null }, CodecProfile { Type: Video, Conditions: [ProfileCondition { Condition: EqualsAny, Property: VideoProfile, Value: "high|main|baseline|constrained baseline", IsRequired: False }, ProfileCondition { Condition: LessThanEqual, Property: VideoLevel, Value: "51", IsRequired: False }], ApplyConditions: [], Codec: "h264", Container: null }, CodecProfile { Type: VideoAudio, Conditions: [ProfileCondition { Condition: LessThanEqual, Property: AudioChannels, Value: "8", IsRequired: False }], ApplyConditions: [], Codec: null, Container: null }], ResponseProfiles: [], SubtitleProfiles: [SubtitleProfile { Format: "srt", Method: External, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "srt", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "subrip", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "ass", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "ssa", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "pgs", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "pgssub", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "dvdsub", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "vtt", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "sub", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "smi", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "idx", Method: Embed, DidlMode: null, Language: null, Container: null }] }
[2023-09-16 20:10:02.549 +00:00] [INF] [280] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for "justinas". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[2023-09-16 20:10:02.549 +00:00] [DBG] [280] Jellyfin.Api.Helpers.MediaInfoHelper: Profile: "AndroidTV-libVLC", Path: "<...>", isEligibleForDirectPlay: True, isEligibleForDirectStream: False
[2023-09-16 20:10:02.549 +00:00] [DBG] [280] Jellyfin.Api.Helpers.MediaInfoHelper: DirectPlay Result for Profile: "AndroidTV-libVLC", Path: "<...>", PlayMethod: DirectPlay, AudioStreamIndex: 1, SubtitleStreamIndex: 3, Reasons: 0
[2023-09-16 20:10:02.549 +00:00] [INF] [280] Jellyfin.Api.Helpers.MediaInfoHelper: StreamBuilder.BuildVideoItem( Profile="AndroidTV-libVLC", Path="<...>?MediaSourceId=534939b3e1ada702ae8862c63dbfa213&Static=true&VideoCodec=hevc&AudioCodec=ac3&AudioStreamIndex=1&SubtitleStreamIndex=3&api_key=<token>&SubtitleMethod=Embed&Tag=66353cd0318d3b9c1e7a071c03b4c572"
[2023-09-16 20:10:02.580 +00:00] [DBG] [156] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:02.580 +00:00] [DBG] [156] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:02.581 +00:00] [DBG] [156] Jellyfin.Api.Controllers.MediaInfoController: GetPostedPlaybackInfo profile: DeviceProfile { Name: "AndroidTV-ExoPlayer", Id: null, Identification: null, FriendlyName: null, Manufacturer: null, ManufacturerUrl: null, ModelName: null, ModelDescription: null, ModelNumber: null, ModelUrl: null, SerialNumber: null, EnableAlbumArtInDidl: False, EnableSingleAlbumArtLimit: False, EnableSingleSubtitleLimit: False, SupportedMediaTypes: "Audio,Photo,Video", UserId: null, AlbumArtPn: null, MaxAlbumArtWidth: 0, MaxAlbumArtHeight: 0, MaxIconWidth: null, MaxIconHeight: null, MaxStreamingBitrate: 20000000, MaxStaticBitrate: 100000000, MusicStreamingTranscodingBitrate: 128000, MaxStaticMusicBitrate: 8000000, SonyAggregationFlags: null, ProtocolInfo: null, TimelineOffsetSeconds: 0, RequiresPlainVideoItems: False, RequiresPlainFolders: False, EnableMSMediaReceiverRegistrar: False, IgnoreTranscodeByteRangeRequests: False, XmlRootAttributes: [], DirectPlayProfiles: [DirectPlayProfile { Container: "m4v,mov,xvid,vob,mkv,wmv,asf,ogm,ogv,mp4,webm", AudioCodec: "aac,mp3,mp2,aac_latm,alac,ac3,eac3,dca,dts,mlp,truehd,pcm_alaw,pcm_mulaw", VideoCodec: "h264,hevc,vp8,vp9,mpeg,mpeg2video,av1", Type: Video }, DirectPlayProfile { Container: "aac,mp3,mp2,aac_latm,alac,ac3,eac3,dca,dts,mlp,truehd,pcm_alaw,pcm_mulaw,mpa,flac,wav,wma,ogg,oga,webma,ape,opus", AudioCodec: null, VideoCodec: null, Type: Audio }, DirectPlayProfile { Container: "jpg,jpeg,png,gif,webp", AudioCodec: null, VideoCodec: null, Type: Photo }], TranscodingProfiles: [TranscodingProfile { Container: "ts", Type: Video, VideoCodec: "hevc,h264", AudioCodec: "aac,mp3,mp2,aac_latm,alac,ac3,eac3,dts,mlp,pcm_alaw,pcm_mulaw", Protocol: "hls", EstimateContentLength: False, EnableMpegtsM2TsMode: False, TranscodeSeekInfo: Auto, CopyTimestamps: False, Context: Streaming, EnableSubtitlesInManifest: False, MaxAudioChannels: null, MinSegments: 0, SegmentLength: 0, BreakOnNonKeyFrames: False, Conditions: [] }, TranscodingProfile { Container: "mp3", Type: Audio, VideoCodec: "", AudioCodec: "mp3", Protocol: "", EstimateContentLength: False, EnableMpegtsM2TsMode: False, TranscodeSeekInfo: Auto, CopyTimestamps: False, Context: Streaming, EnableSubtitlesInManifest: False, MaxAudioChannels: null, MinSegments: 0, SegmentLength: 0, BreakOnNonKeyFrames: False, Conditions: [] }], ContainerProfiles: [], CodecProfiles: [CodecProfile { Type: Video, Conditions: [ProfileCondition { Condition: EqualsAny, Property: VideoProfile, Value: "high|main|baseline|constrained baseline", IsRequired: False }, ProfileCondition { Condition: LessThanEqual, Property: VideoLevel, Value: "51", IsRequired: False }], ApplyConditions: [], Codec: "h264", Container: null }, CodecProfile { Type: Video, Conditions: [ProfileCondition { Condition: LessThanEqual, Property: RefFrames, Value: "12", IsRequired: False }], ApplyConditions: [ProfileCondition { Condition: GreaterThanEqual, Property: Width, Value: "1200", IsRequired: False }], Codec: "h264", Container: null }, CodecProfile { Type: Video, Conditions: [ProfileCondition { Condition: LessThanEqual, Property: RefFrames, Value: "4", IsRequired: False }], ApplyConditions: [ProfileCondition { Condition: GreaterThanEqual, Property: Width, Value: "1900", IsRequired: False }], Codec: "h264", Container: null }, CodecProfile { Type: Video, Conditions: [ProfileCondition { Condition: NotEquals, Property: VideoProfile, Value: "none", IsRequired: False }], ApplyConditions: [], Codec: "hevc", Container: null }, CodecProfile { Type: Video, Conditions: [ProfileCondition { Condition: Equals, Property: VideoProfile, Value: "none", IsRequired: False }], ApplyConditions: [], Codec: "av1", Container: null }, CodecProfile { Type: VideoAudio, Conditions: [ProfileCondition { Condition: LessThanEqual, Property: AudioChannels, Value: "8", IsRequired: False }], ApplyConditions: [], Codec: null, Container: null }], ResponseProfiles: [], SubtitleProfiles: [SubtitleProfile { Format: "srt", Method: External, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "subrip", Method: External, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "ass", Method: Encode, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "ssa", Method: Encode, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "pgs", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "pgssub", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "dvbsub", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "dvdsub", Method: Encode, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "vtt", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "sub", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "idx", Method: Embed, DidlMode: null, Language: null, Container: null }] }
[2023-09-16 20:10:02.583 +00:00] [INF] [156] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for "justinas". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[2023-09-16 20:10:02.583 +00:00] [DBG] [156] Jellyfin.Api.Helpers.MediaInfoHelper: Profile: "AndroidTV-ExoPlayer", Path: "<...>", isEligibleForDirectPlay: True, isEligibleForDirectStream: False
[2023-09-16 20:10:02.583 +00:00] [DBG] [156] Jellyfin.Api.Helpers.MediaInfoHelper: Not eligible for DirectPlay due to unsupported subtitles
[2023-09-16 20:10:02.583 +00:00] [DBG] [156] Jellyfin.Api.Helpers.MediaInfoHelper: DirectPlay Result for Profile: "AndroidTV-ExoPlayer", Path: "<...>", PlayMethod: null, AudioStreamIndex: 1, SubtitleStreamIndex: 3, Reasons: SubtitleCodecNotSupported
[2023-09-16 20:10:02.583 +00:00] [DBG] [156] Jellyfin.Api.Helpers.MediaInfoHelper: Transcode Result for Profile: "AndroidTV-ExoPlayer", Path: "<...>", PlayMethod: Transcode, AudioStreamIndex: 1, SubtitleStreamIndex: 3, Reasons: SubtitleCodecNotSupported
[2023-09-16 20:10:02.583 +00:00] [INF] [156] Jellyfin.Api.Helpers.MediaInfoHelper: StreamBuilder.BuildVideoItem( Profile="AndroidTV-ExoPlayer", Path="<...>", AudioStreamIndex=null, SubtitleStreamIndex=null ) => ( PlayMethod=Transcode, TranscodeReason=SubtitleCodecNotSupported ) "media:/videos/534939b3-e1ad-a702-ae88-62c63dbfa213/master.m3u8?MediaSourceId=534939b3e1ada702ae8862c63dbfa213&VideoCodec=hevc,h264,hevc&AudioCodec=ac3&AudioStreamIndex=1&SubtitleStreamIndex=3&VideoBitrate=119360000&AudioBitrate=640000&AudioSampleRate=48000&MaxFramerate=23.976025&api_key=<token>&SubtitleMethod=Encode&RequireAvc=false&Tag=66353cd0318d3b9c1e7a071c03b4c572&SegmentContainer=ts&BreakOnNonKeyFrames=False&hevc-level=150&hevc-videobitdepth=10&hevc-profile=main10&hevc-audiochannels=6&aac-audiochannels=8&TranscodeReasons=SubtitleCodecNotSupported"
[2023-09-16 20:10:02.645 +00:00] [DBG] [153] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:02.650 +00:00] [DBG] [153] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:02.651 +00:00] [DBG] [156] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:02.651 +00:00] [DBG] [156] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:02.662 +00:00] [DBG] [280] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:02.663 +00:00] [DBG] [280] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:02.964 +00:00] [DBG] [280] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:02.965 +00:00] [DBG] [280] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:02.965 +00:00] [DBG] [280] Jellyfin.Api.Controllers.PlaystateController: ReportPlaybackStopped PlaySessionId: "d01a9cc9b80f49e88041049a0c798f1e"
[2023-09-16 20:10:02.968 +00:00] [INF] [280] Emby.Server.Implementations.Session.SessionManager: Playback stopped reported by app "Android TV" "0.16.0-beta.3" playing "<...>". Stopped at "297222" ms
[2023-09-16 20:10:02.971 +00:00] [DBG] [156] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:02.971 +00:00] [DBG] [156] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:02.974 +00:00] [DBG] [156] Jellyfin.Api.Controllers.MediaInfoController: GetPostedPlaybackInfo profile: DeviceProfile { Name: "AndroidTV-libVLC", Id: null, Identification: null, FriendlyName: null, Manufacturer: null, ManufacturerUrl: null, ModelName: null, ModelDescription: null, ModelNumber: null, ModelUrl: null, SerialNumber: null, EnableAlbumArtInDidl: False, EnableSingleAlbumArtLimit: False, EnableSingleSubtitleLimit: False, SupportedMediaTypes: "Audio,Photo,Video", UserId: null, AlbumArtPn: null, MaxAlbumArtWidth: 0, MaxAlbumArtHeight: 0, MaxIconWidth: null, MaxIconHeight: null, MaxStreamingBitrate: 20000000, MaxStaticBitrate: 100000000, MusicStreamingTranscodingBitrate: 128000, MaxStaticMusicBitrate: 8000000, SonyAggregationFlags: null, ProtocolInfo: null, TimelineOffsetSeconds: 0, RequiresPlainVideoItems: False, RequiresPlainFolders: False, EnableMSMediaReceiverRegistrar: False, IgnoreTranscodeByteRangeRequests: False, XmlRootAttributes: [], DirectPlayProfiles: [DirectPlayProfile { Container: "m4v,3gp,ts,mpegts,mov,xvid,vob,mkv,wmv,asf,ogm,ogv,m2v,avi,mpg,mpeg,mp4,webm,wtv", AudioCodec: "aac,mp3,mp2,ac3,eac3,wma,wmav2,dca,dts,pcm,pcm_s16le,pcm_s24le,opus,flac,truehd", VideoCodec: null, Type: Video }, DirectPlayProfile { Container: "flac,aac,mp3,mpa,wav,wma,mp2,ogg,oga,webma,ape", AudioCodec: null, VideoCodec: null, Type: Audio }, DirectPlayProfile { Container: "jpg,jpeg,png,gif,webp", AudioCodec: null, VideoCodec: null, Type: Photo }], TranscodingProfiles: [TranscodingProfile { Container: "mkv", Type: Video, VideoCodec: "h264", AudioCodec: "aac,mp3", Protocol: "", EstimateContentLength: False, EnableMpegtsM2TsMode: False, TranscodeSeekInfo: Auto, CopyTimestamps: True, Context: Streaming, EnableSubtitlesInManifest: False, MaxAudioChannels: null, MinSegments: 0, SegmentLength: 0, BreakOnNonKeyFrames: False, Conditions: [] }, TranscodingProfile { Container: "mp3", Type: Audio, VideoCodec: "", AudioCodec: "mp3", Protocol: "", EstimateContentLength: False, EnableMpegtsM2TsMode: False, TranscodeSeekInfo: Auto, CopyTimestamps: False, Context: Streaming, EnableSubtitlesInManifest: False, MaxAudioChannels: null, MinSegments: 0, SegmentLength: 0, BreakOnNonKeyFrames: False, Conditions: [] }], ContainerProfiles: [ContainerProfile { Type: Video, Conditions: [ProfileCondition { Condition: NotEquals, Property: VideoCodecTag, Value: "xvid", IsRequired: False }], Container: "avi" }], CodecProfiles: [CodecProfile { Type: Video, Conditions: [ProfileCondition { Condition: NotEquals, Property: VideoProfile, Value: "none", IsRequired: False }], ApplyConditions: [], Codec: "hevc", Container: null }, CodecProfile { Type: Video, Conditions: [ProfileCondition { Condition: EqualsAny, Property: VideoProfile, Value: "high|main|baseline|constrained baseline", IsRequired: False }, ProfileCondition { Condition: LessThanEqual, Property: VideoLevel, Value: "51", IsRequired: False }], ApplyConditions: [], Codec: "h264", Container: null }, CodecProfile { Type: VideoAudio, Conditions: [ProfileCondition { Condition: LessThanEqual, Property: AudioChannels, Value: "8", IsRequired: False }], ApplyConditions: [], Codec: null, Container: null }], ResponseProfiles: [], SubtitleProfiles: [SubtitleProfile { Format: "srt", Method: External, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "srt", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "subrip", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "ass", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "ssa", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "pgs", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "pgssub", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "dvdsub", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "vtt", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "sub", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "smi", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "idx", Method: Embed, DidlMode: null, Language: null, Container: null }] }
[2023-09-16 20:10:02.981 +00:00] [INF] [156] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for "justinas". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[2023-09-16 20:10:02.981 +00:00] [DBG] [156] Jellyfin.Api.Helpers.MediaInfoHelper: Profile: "AndroidTV-libVLC", Path: "<...>", isEligibleForDirectPlay: True, isEligibleForDirectStream: False
[2023-09-16 20:10:02.981 +00:00] [DBG] [156] Jellyfin.Api.Helpers.MediaInfoHelper: DirectPlay Result for Profile: "AndroidTV-libVLC", Path: "<...>", PlayMethod: DirectPlay, AudioStreamIndex: 1, SubtitleStreamIndex: 3, Reasons: 0
[2023-09-16 20:10:02.981 +00:00] [INF] [156] Jellyfin.Api.Helpers.MediaInfoHelper: StreamBuilder.BuildVideoItem( Profile="AndroidTV-libVLC", Path="<...>?MediaSourceId=534939b3e1ada702ae8862c63dbfa213&Static=true&VideoCodec=hevc&AudioCodec=ac3&AudioStreamIndex=1&SubtitleStreamIndex=3&api_key=<token>&SubtitleMethod=Embed&Tag=66353cd0318d3b9c1e7a071c03b4c572"
[2023-09-16 20:10:03.021 +00:00] [DBG] [280] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.021 +00:00] [DBG] [280] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.022 +00:00] [DBG] [280] Jellyfin.Api.Controllers.MediaInfoController: GetPostedPlaybackInfo profile: DeviceProfile { Name: "AndroidTV-ExoPlayer", Id: null, Identification: null, FriendlyName: null, Manufacturer: null, ManufacturerUrl: null, ModelName: null, ModelDescription: null, ModelNumber: null, ModelUrl: null, SerialNumber: null, EnableAlbumArtInDidl: False, EnableSingleAlbumArtLimit: False, EnableSingleSubtitleLimit: False, SupportedMediaTypes: "Audio,Photo,Video", UserId: null, AlbumArtPn: null, MaxAlbumArtWidth: 0, MaxAlbumArtHeight: 0, MaxIconWidth: null, MaxIconHeight: null, MaxStreamingBitrate: 20000000, MaxStaticBitrate: 100000000, MusicStreamingTranscodingBitrate: 128000, MaxStaticMusicBitrate: 8000000, SonyAggregationFlags: null, ProtocolInfo: null, TimelineOffsetSeconds: 0, RequiresPlainVideoItems: False, RequiresPlainFolders: False, EnableMSMediaReceiverRegistrar: False, IgnoreTranscodeByteRangeRequests: False, XmlRootAttributes: [], DirectPlayProfiles: [DirectPlayProfile { Container: "m4v,mov,xvid,vob,mkv,wmv,asf,ogm,ogv,mp4,webm", AudioCodec: "aac,mp3,mp2,aac_latm,alac,ac3,eac3,dca,dts,mlp,truehd,pcm_alaw,pcm_mulaw", VideoCodec: "h264,hevc,vp8,vp9,mpeg,mpeg2video,av1", Type: Video }, DirectPlayProfile { Container: "aac,mp3,mp2,aac_latm,alac,ac3,eac3,dca,dts,mlp,truehd,pcm_alaw,pcm_mulaw,mpa,flac,wav,wma,ogg,oga,webma,ape,opus", AudioCodec: null, VideoCodec: null, Type: Audio }, DirectPlayProfile { Container: "jpg,jpeg,png,gif,webp", AudioCodec: null, VideoCodec: null, Type: Photo }], TranscodingProfiles: [TranscodingProfile { Container: "ts", Type: Video, VideoCodec: "hevc,h264", AudioCodec: "aac,mp3,mp2,aac_latm,alac,ac3,eac3,dts,mlp,pcm_alaw,pcm_mulaw", Protocol: "hls", EstimateContentLength: False, EnableMpegtsM2TsMode: False, TranscodeSeekInfo: Auto, CopyTimestamps: False, Context: Streaming, EnableSubtitlesInManifest: False, MaxAudioChannels: null, MinSegments: 0, SegmentLength: 0, BreakOnNonKeyFrames: False, Conditions: [] }, TranscodingProfile { Container: "mp3", Type: Audio, VideoCodec: "", AudioCodec: "mp3", Protocol: "", EstimateContentLength: False, EnableMpegtsM2TsMode: False, TranscodeSeekInfo: Auto, CopyTimestamps: False, Context: Streaming, EnableSubtitlesInManifest: False, MaxAudioChannels: null, MinSegments: 0, SegmentLength: 0, BreakOnNonKeyFrames: False, Conditions: [] }], ContainerProfiles: [], CodecProfiles: [CodecProfile { Type: Video, Conditions: [ProfileCondition { Condition: EqualsAny, Property: VideoProfile, Value: "high|main|baseline|constrained baseline", IsRequired: False }, ProfileCondition { Condition: LessThanEqual, Property: VideoLevel, Value: "51", IsRequired: False }], ApplyConditions: [], Codec: "h264", Container: null }, CodecProfile { Type: Video, Conditions: [ProfileCondition { Condition: LessThanEqual, Property: RefFrames, Value: "12", IsRequired: False }], ApplyConditions: [ProfileCondition { Condition: GreaterThanEqual, Property: Width, Value: "1200", IsRequired: False }], Codec: "h264", Container: null }, CodecProfile { Type: Video, Conditions: [ProfileCondition { Condition: LessThanEqual, Property: RefFrames, Value: "4", IsRequired: False }], ApplyConditions: [ProfileCondition { Condition: GreaterThanEqual, Property: Width, Value: "1900", IsRequired: False }], Codec: "h264", Container: null }, CodecProfile { Type: Video, Conditions: [ProfileCondition { Condition: NotEquals, Property: VideoProfile, Value: "none", IsRequired: False }], ApplyConditions: [], Codec: "hevc", Container: null }, CodecProfile { Type: Video, Conditions: [ProfileCondition { Condition: Equals, Property: VideoProfile, Value: "none", IsRequired: False }], ApplyConditions: [], Codec: "av1", Container: null }, CodecProfile { Type: VideoAudio, Conditions: [ProfileCondition { Condition: LessThanEqual, Property: AudioChannels, Value: "8", IsRequired: False }], ApplyConditions: [], Codec: null, Container: null }], ResponseProfiles: [], SubtitleProfiles: [SubtitleProfile { Format: "srt", Method: External, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "subrip", Method: External, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "ass", Method: Encode, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "ssa", Method: Encode, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "pgs", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "pgssub", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "dvbsub", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "dvdsub", Method: Encode, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "vtt", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "sub", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "idx", Method: Embed, DidlMode: null, Language: null, Container: null }] }
[2023-09-16 20:10:03.024 +00:00] [INF] [280] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for "justinas". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[2023-09-16 20:10:03.024 +00:00] [DBG] [280] Jellyfin.Api.Helpers.MediaInfoHelper: Profile: "AndroidTV-ExoPlayer", Path: "<...>", isEligibleForDirectPlay: True, isEligibleForDirectStream: False
[2023-09-16 20:10:03.024 +00:00] [DBG] [280] Jellyfin.Api.Helpers.MediaInfoHelper: Not eligible for DirectPlay due to unsupported subtitles
[2023-09-16 20:10:03.024 +00:00] [DBG] [280] Jellyfin.Api.Helpers.MediaInfoHelper: DirectPlay Result for Profile: "AndroidTV-ExoPlayer", Path: "<...>", PlayMethod: null, AudioStreamIndex: 1, SubtitleStreamIndex: 3, Reasons: SubtitleCodecNotSupported
[2023-09-16 20:10:03.024 +00:00] [DBG] [280] Jellyfin.Api.Helpers.MediaInfoHelper: Transcode Result for Profile: "AndroidTV-ExoPlayer", Path: "<...>", PlayMethod: Transcode, AudioStreamIndex: 1, SubtitleStreamIndex: 3, Reasons: SubtitleCodecNotSupported
[2023-09-16 20:10:03.024 +00:00] [INF] [280] Jellyfin.Api.Helpers.MediaInfoHelper: StreamBuilder.BuildVideoItem( Profile="AndroidTV-ExoPlayer", Path="<...>", AudioStreamIndex=null, SubtitleStreamIndex=null ) => ( PlayMethod=Transcode, TranscodeReason=SubtitleCodecNotSupported ) "media:/videos/534939b3-e1ad-a702-ae88-62c63dbfa213/master.m3u8?MediaSourceId=534939b3e1ada702ae8862c63dbfa213&VideoCodec=hevc,h264,hevc&AudioCodec=ac3&AudioStreamIndex=1&SubtitleStreamIndex=3&VideoBitrate=119360000&AudioBitrate=640000&AudioSampleRate=48000&MaxFramerate=23.976025&api_key=<token>&SubtitleMethod=Encode&RequireAvc=false&Tag=66353cd0318d3b9c1e7a071c03b4c572&SegmentContainer=ts&BreakOnNonKeyFrames=False&hevc-level=150&hevc-videobitdepth=10&hevc-profile=main10&hevc-audiochannels=6&aac-audiochannels=8&TranscodeReasons=SubtitleCodecNotSupported"
[2023-09-16 20:10:03.091 +00:00] [DBG] [280] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.091 +00:00] [DBG] [280] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.092 +00:00] [DBG] [190] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.092 +00:00] [DBG] [190] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.102 +00:00] [DBG] [280] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.102 +00:00] [DBG] [280] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.361 +00:00] [DBG] [280] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.361 +00:00] [DBG] [280] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.361 +00:00] [DBG] [280] Jellyfin.Api.Controllers.PlaystateController: ReportPlaybackStopped PlaySessionId: "eeeb104109874169b552bb799cbe66ff"
[2023-09-16 20:10:03.364 +00:00] [INF] [280] Emby.Server.Implementations.Session.SessionManager: Playback stopped reported by app "Android TV" "0.16.0-beta.3" playing "<...>". Stopped at "297222" ms
[2023-09-16 20:10:03.364 +00:00] [DBG] [87] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.364 +00:00] [DBG] [87] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.366 +00:00] [DBG] [87] Jellyfin.Api.Controllers.MediaInfoController: GetPostedPlaybackInfo profile: DeviceProfile { Name: "AndroidTV-libVLC", Id: null, Identification: null, FriendlyName: null, Manufacturer: null, ManufacturerUrl: null, ModelName: null, ModelDescription: null, ModelNumber: null, ModelUrl: null, SerialNumber: null, EnableAlbumArtInDidl: False, EnableSingleAlbumArtLimit: False, EnableSingleSubtitleLimit: False, SupportedMediaTypes: "Audio,Photo,Video", UserId: null, AlbumArtPn: null, MaxAlbumArtWidth: 0, MaxAlbumArtHeight: 0, MaxIconWidth: null, MaxIconHeight: null, MaxStreamingBitrate: 20000000, MaxStaticBitrate: 100000000, MusicStreamingTranscodingBitrate: 128000, MaxStaticMusicBitrate: 8000000, SonyAggregationFlags: null, ProtocolInfo: null, TimelineOffsetSeconds: 0, RequiresPlainVideoItems: False, RequiresPlainFolders: False, EnableMSMediaReceiverRegistrar: False, IgnoreTranscodeByteRangeRequests: False, XmlRootAttributes: [], DirectPlayProfiles: [DirectPlayProfile { Container: "m4v,3gp,ts,mpegts,mov,xvid,vob,mkv,wmv,asf,ogm,ogv,m2v,avi,mpg,mpeg,mp4,webm,wtv", AudioCodec: "aac,mp3,mp2,ac3,eac3,wma,wmav2,dca,dts,pcm,pcm_s16le,pcm_s24le,opus,flac,truehd", VideoCodec: null, Type: Video }, DirectPlayProfile { Container: "flac,aac,mp3,mpa,wav,wma,mp2,ogg,oga,webma,ape", AudioCodec: null, VideoCodec: null, Type: Audio }, DirectPlayProfile { Container: "jpg,jpeg,png,gif,webp", AudioCodec: null, VideoCodec: null, Type: Photo }], TranscodingProfiles: [TranscodingProfile { Container: "mkv", Type: Video, VideoCodec: "h264", AudioCodec: "aac,mp3", Protocol: "", EstimateContentLength: False, EnableMpegtsM2TsMode: False, TranscodeSeekInfo: Auto, CopyTimestamps: True, Context: Streaming, EnableSubtitlesInManifest: False, MaxAudioChannels: null, MinSegments: 0, SegmentLength: 0, BreakOnNonKeyFrames: False, Conditions: [] }, TranscodingProfile { Container: "mp3", Type: Audio, VideoCodec: "", AudioCodec: "mp3", Protocol: "", EstimateContentLength: False, EnableMpegtsM2TsMode: False, TranscodeSeekInfo: Auto, CopyTimestamps: False, Context: Streaming, EnableSubtitlesInManifest: False, MaxAudioChannels: null, MinSegments: 0, SegmentLength: 0, BreakOnNonKeyFrames: False, Conditions: [] }], ContainerProfiles: [ContainerProfile { Type: Video, Conditions: [ProfileCondition { Condition: NotEquals, Property: VideoCodecTag, Value: "xvid", IsRequired: False }], Container: "avi" }], CodecProfiles: [CodecProfile { Type: Video, Conditions: [ProfileCondition { Condition: NotEquals, Property: VideoProfile, Value: "none", IsRequired: False }], ApplyConditions: [], Codec: "hevc", Container: null }, CodecProfile { Type: Video, Conditions: [ProfileCondition { Condition: EqualsAny, Property: VideoProfile, Value: "high|main|baseline|constrained baseline", IsRequired: False }, ProfileCondition { Condition: LessThanEqual, Property: VideoLevel, Value: "51", IsRequired: False }], ApplyConditions: [], Codec: "h264", Container: null }, CodecProfile { Type: VideoAudio, Conditions: [ProfileCondition { Condition: LessThanEqual, Property: AudioChannels, Value: "8", IsRequired: False }], ApplyConditions: [], Codec: null, Container: null }], ResponseProfiles: [], SubtitleProfiles: [SubtitleProfile { Format: "srt", Method: External, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "srt", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "subrip", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "ass", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "ssa", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "pgs", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "pgssub", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "dvdsub", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "vtt", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "sub", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "smi", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "idx", Method: Embed, DidlMode: null, Language: null, Container: null }] }
[2023-09-16 20:10:03.373 +00:00] [INF] [87] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for "justinas". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[2023-09-16 20:10:03.373 +00:00] [DBG] [87] Jellyfin.Api.Helpers.MediaInfoHelper: Profile: "AndroidTV-libVLC", Path: "<...>", isEligibleForDirectPlay: True, isEligibleForDirectStream: False
[2023-09-16 20:10:03.373 +00:00] [DBG] [87] Jellyfin.Api.Helpers.MediaInfoHelper: DirectPlay Result for Profile: "AndroidTV-libVLC", Path: "<...>", PlayMethod: DirectPlay, AudioStreamIndex: 1, SubtitleStreamIndex: 3, Reasons: 0
[2023-09-16 20:10:03.373 +00:00] [INF] [87] Jellyfin.Api.Helpers.MediaInfoHelper: StreamBuilder.BuildVideoItem( Profile="AndroidTV-libVLC", Path="<...>?MediaSourceId=534939b3e1ada702ae8862c63dbfa213&Static=true&VideoCodec=hevc&AudioCodec=ac3&AudioStreamIndex=1&SubtitleStreamIndex=3&api_key=<token>&SubtitleMethod=Embed&Tag=66353cd0318d3b9c1e7a071c03b4c572"
[2023-09-16 20:10:03.393 +00:00] [DBG] [87] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.393 +00:00] [DBG] [87] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.394 +00:00] [DBG] [87] Jellyfin.Api.Controllers.MediaInfoController: GetPostedPlaybackInfo profile: DeviceProfile { Name: "AndroidTV-ExoPlayer", Id: null, Identification: null, FriendlyName: null, Manufacturer: null, ManufacturerUrl: null, ModelName: null, ModelDescription: null, ModelNumber: null, ModelUrl: null, SerialNumber: null, EnableAlbumArtInDidl: False, EnableSingleAlbumArtLimit: False, EnableSingleSubtitleLimit: False, SupportedMediaTypes: "Audio,Photo,Video", UserId: null, AlbumArtPn: null, MaxAlbumArtWidth: 0, MaxAlbumArtHeight: 0, MaxIconWidth: null, MaxIconHeight: null, MaxStreamingBitrate: 20000000, MaxStaticBitrate: 100000000, MusicStreamingTranscodingBitrate: 128000, MaxStaticMusicBitrate: 8000000, SonyAggregationFlags: null, ProtocolInfo: null, TimelineOffsetSeconds: 0, RequiresPlainVideoItems: False, RequiresPlainFolders: False, EnableMSMediaReceiverRegistrar: False, IgnoreTranscodeByteRangeRequests: False, XmlRootAttributes: [], DirectPlayProfiles: [DirectPlayProfile { Container: "m4v,mov,xvid,vob,mkv,wmv,asf,ogm,ogv,mp4,webm", AudioCodec: "aac,mp3,mp2,aac_latm,alac,ac3,eac3,dca,dts,mlp,truehd,pcm_alaw,pcm_mulaw", VideoCodec: "h264,hevc,vp8,vp9,mpeg,mpeg2video,av1", Type: Video }, DirectPlayProfile { Container: "aac,mp3,mp2,aac_latm,alac,ac3,eac3,dca,dts,mlp,truehd,pcm_alaw,pcm_mulaw,mpa,flac,wav,wma,ogg,oga,webma,ape,opus", AudioCodec: null, VideoCodec: null, Type: Audio }, DirectPlayProfile { Container: "jpg,jpeg,png,gif,webp", AudioCodec: null, VideoCodec: null, Type: Photo }], TranscodingProfiles: [TranscodingProfile { Container: "ts", Type: Video, VideoCodec: "hevc,h264", AudioCodec: "aac,mp3,mp2,aac_latm,alac,ac3,eac3,dts,mlp,pcm_alaw,pcm_mulaw", Protocol: "hls", EstimateContentLength: False, EnableMpegtsM2TsMode: False, TranscodeSeekInfo: Auto, CopyTimestamps: False, Context: Streaming, EnableSubtitlesInManifest: False, MaxAudioChannels: null, MinSegments: 0, SegmentLength: 0, BreakOnNonKeyFrames: False, Conditions: [] }, TranscodingProfile { Container: "mp3", Type: Audio, VideoCodec: "", AudioCodec: "mp3", Protocol: "", EstimateContentLength: False, EnableMpegtsM2TsMode: False, TranscodeSeekInfo: Auto, CopyTimestamps: False, Context: Streaming, EnableSubtitlesInManifest: False, MaxAudioChannels: null, MinSegments: 0, SegmentLength: 0, BreakOnNonKeyFrames: False, Conditions: [] }], ContainerProfiles: [], CodecProfiles: [CodecProfile { Type: Video, Conditions: [ProfileCondition { Condition: EqualsAny, Property: VideoProfile, Value: "high|main|baseline|constrained baseline", IsRequired: False }, ProfileCondition { Condition: LessThanEqual, Property: VideoLevel, Value: "51", IsRequired: False }], ApplyConditions: [], Codec: "h264", Container: null }, CodecProfile { Type: Video, Conditions: [ProfileCondition { Condition: LessThanEqual, Property: RefFrames, Value: "12", IsRequired: False }], ApplyConditions: [ProfileCondition { Condition: GreaterThanEqual, Property: Width, Value: "1200", IsRequired: False }], Codec: "h264", Container: null }, CodecProfile { Type: Video, Conditions: [ProfileCondition { Condition: LessThanEqual, Property: RefFrames, Value: "4", IsRequired: False }], ApplyConditions: [ProfileCondition { Condition: GreaterThanEqual, Property: Width, Value: "1900", IsRequired: False }], Codec: "h264", Container: null }, CodecProfile { Type: Video, Conditions: [ProfileCondition { Condition: NotEquals, Property: VideoProfile, Value: "none", IsRequired: False }], ApplyConditions: [], Codec: "hevc", Container: null }, CodecProfile { Type: Video, Conditions: [ProfileCondition { Condition: Equals, Property: VideoProfile, Value: "none", IsRequired: False }], ApplyConditions: [], Codec: "av1", Container: null }, CodecProfile { Type: VideoAudio, Conditions: [ProfileCondition { Condition: LessThanEqual, Property: AudioChannels, Value: "8", IsRequired: False }], ApplyConditions: [], Codec: null, Container: null }], ResponseProfiles: [], SubtitleProfiles: [SubtitleProfile { Format: "srt", Method: External, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "subrip", Method: External, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "ass", Method: Encode, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "ssa", Method: Encode, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "pgs", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "pgssub", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "dvbsub", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "dvdsub", Method: Encode, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "vtt", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "sub", Method: Embed, DidlMode: null, Language: null, Container: null }, SubtitleProfile { Format: "idx", Method: Embed, DidlMode: null, Language: null, Container: null }] }
[2023-09-16 20:10:03.394 +00:00] [INF] [87] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for "justinas". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[2023-09-16 20:10:03.394 +00:00] [DBG] [87] Jellyfin.Api.Helpers.MediaInfoHelper: Profile: "AndroidTV-ExoPlayer", Path: "<...>", isEligibleForDirectPlay: True, isEligibleForDirectStream: False
[2023-09-16 20:10:03.394 +00:00] [DBG] [87] Jellyfin.Api.Helpers.MediaInfoHelper: Not eligible for DirectPlay due to unsupported subtitles
[2023-09-16 20:10:03.394 +00:00] [DBG] [87] Jellyfin.Api.Helpers.MediaInfoHelper: DirectPlay Result for Profile: "AndroidTV-ExoPlayer", Path: "<...>", PlayMethod: null, AudioStreamIndex: 1, SubtitleStreamIndex: 3, Reasons: SubtitleCodecNotSupported
[2023-09-16 20:10:03.395 +00:00] [DBG] [87] Jellyfin.Api.Helpers.MediaInfoHelper: Transcode Result for Profile: "AndroidTV-ExoPlayer", Path: "<...>", PlayMethod: Transcode, AudioStreamIndex: 1, SubtitleStreamIndex: 3, Reasons: SubtitleCodecNotSupported
[2023-09-16 20:10:03.395 +00:00] [INF] [87] Jellyfin.Api.Helpers.MediaInfoHelper: StreamBuilder.BuildVideoItem( Profile="AndroidTV-ExoPlayer", Path="<...>", AudioStreamIndex=null, SubtitleStreamIndex=null ) => ( PlayMethod=Transcode, TranscodeReason=SubtitleCodecNotSupported ) "media:/videos/534939b3-e1ad-a702-ae88-62c63dbfa213/master.m3u8?MediaSourceId=534939b3e1ada702ae8862c63dbfa213&VideoCodec=hevc,h264,hevc&AudioCodec=ac3&AudioStreamIndex=1&SubtitleStreamIndex=3&VideoBitrate=119360000&AudioBitrate=640000&AudioSampleRate=48000&MaxFramerate=23.976025&api_key=<token>&SubtitleMethod=Encode&RequireAvc=false&Tag=66353cd0318d3b9c1e7a071c03b4c572&SegmentContainer=ts&BreakOnNonKeyFrames=False&hevc-level=150&hevc-videobitdepth=10&hevc-profile=main10&hevc-audiochannels=6&aac-audiochannels=8&TranscodeReasons=SubtitleCodecNotSupported"
[2023-09-16 20:10:03.437 +00:00] [DBG] [280] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.437 +00:00] [DBG] [280] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.438 +00:00] [DBG] [87] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.439 +00:00] [DBG] [87] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.445 +00:00] [DBG] [153] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.445 +00:00] [DBG] [153] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.721 +00:00] [DBG] [153] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.721 +00:00] [DBG] [153] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.722 +00:00] [DBG] [153] Jellyfin.Api.Controllers.PlaystateController: ReportPlaybackStopped PlaySessionId: "986307ebdae946a48684e2971ed47e4a"
[2023-09-16 20:10:03.725 +00:00] [INF] [153] Emby.Server.Implementations.Session.SessionManager: Playback stopped reported by app "Android TV" "0.16.0-beta.3" playing "<...>". Stopped at "297222" ms
[2023-09-16 20:10:03.730 +00:00] [DBG] [188] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.731 +00:00] [DBG] [188] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.789 +00:00] [DBG] [153] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.789 +00:00] [DBG] [153] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.799 +00:00] [DBG] [153] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.799 +00:00] [DBG] [153] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:03.829 +00:00] [DBG] [153] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was not authenticated.
[2023-09-16 20:10:04.526 +00:00] [DBG] [156] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:04.526 +00:00] [DBG] [156] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:04.624 +00:00] [DBG] [156] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:04.624 +00:00] [DBG] [156] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:04.630 +00:00] [DBG] [188] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:04.630 +00:00] [DBG] [188] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:04.654 +00:00] [DBG] [188] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was not authenticated.
[2023-09-16 20:10:05.760 +00:00] [DBG] [153] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-09-16 20:10:05.760 +00:00] [DBG] [153] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
Transcoding does work for this media file in general, as I am able to watch in Jellyfin-Web with subtitle burn-in.
Not eligible for DirectPlay due to unsupported subtitles
Subtitle: ass
That's why it's needing to transcode
I have the same error. To test out if it's server side I tried to open the same URL the app tried to open according to the log and it works playing. So it's not a server side issue or an issue with the media file itself. At least in my case. I tried it with multiple different files and the error is the same.
If I change the audio track I want to play in jellyfin web before playing in on the android app it plays the correct audio track but it still throws the same error. The app then tries again with different parameters but the same audio track. Then it works. The difference is that on the first try it's a hls stream while on the 2nd try it's a mkv container that is remuxed on the fly.
This is the URL that is tried first. It's a hls stream and causes the invalid zero channel mask
exception.
https://[redacted]/videos/1f474990-4253-ea58-af6f-50f44101c862/master.m3u8?DeviceId=[redacted]&MediaSourceId=1f4749904253ea58af6f50f44101c862&VideoCodec=hevc,h264,hevc&AudioCodec=ac3&AudioStreamIndex=0&VideoBitrate=15074937&AudioBitrate=384000&AudioSampleRate=48000&MaxFramerate=23.976025&PlaySessionId=[redacted]&api_key=[redacted]&SubtitleMethod=Encode&RequireAvc=false&Tag=5e716dd22b927a14892a876e6122cc9b&SegmentContainer=ts&BreakOnNonKeyFrames=False&hevc-level=120&hevc-videobitdepth=10&hevc-profile=main10&hevc-audiochannels=6&aac-audiochannels=8&TranscodeReasons=AudioIsExternal,%20VideoProfileNotSupported'
This is the URL that is tried next and works.
https://[redacted]/videos/1f474990-4253-ea58-af6f-50f44101c862/stream?DeviceId=[redacted]&MediaSourceId=1f4749904253ea58af6f50f44101c862&AudioStreamIndex=0&PlaySessionId=[redacted]&api_key=[redacted]&SubtitleMethod=Encode&RequireAvc=false&Tag=5e716dd22b927a14892a876e6122cc9b&TranscodeReasons=AudioIsExternal,%20VideoProfileNotSupported'
Both URLs can be played flawlessly via mpv.
Application version
0.15.12
Device information
Chromcast HD
Android version
12 (Build: STTK.230808.004)
Jellyfin server version
10.8.11
I am having exactly the same error on version 0.16.1. Playing the same file from the browser or from mobile client works just fine... only android TV client app is affected.
My jellyfin server version 10.8.13.
This issue has gone 120 days without comment. To avoid abandoned issues, it will be closed in 21 days if there are no new comments.
If you're the original submitter of this issue, please comment confirming if this issue still affects you in the latest release or master branch, or close the issue if it has been fixed. If you're another user also affected by this bug, please comment confirming so. Either action will remove the stale label.
This bot exists to prevent issues from becoming stale and forgotten. Jellyfin is always moving forward, and bugs are often fixed as side effects of other changes. We therefore ask that bug report authors remain vigilant about their issues to ensure they are closed if fixed, or re-confirmed - perhaps with fresh logs or reproduction examples - regularly. If you have any questions you can reach us on Matrix or Social Media.