jellyfin / jellyfin-tizen

Jellyfin Samsung TV Client
https://jellyfin.org
984 stars 77 forks source link

Unable to change audio track on dual audio tracks with mkv / HEVC videos #293

Open slickwarren opened 1 month ago

slickwarren commented 1 month ago

This issue respects the following points:

Description of the bug

I've noticed this issue for awhile but wasn't able to nail it down til recently. Direct streaming from jellyfin with a dual-audio track will let me select from the 2 tracks, however even though the request is sent through the browser and the response contains the correct audio ID, the track on the client stays on the 'first' track.

If I'm transcoding the same media, this issue doesn't show up on devices that don't support HEVC. Its only when I'm watching on a device that supports streaming directly in HEVC i.e. directly streaming the content that I see this issue.

Reproduction steps

  1. as a signed in user on a jellyfin web client, watch an HEVC video with native dual-track audio
  2. let the video play the default audio
  3. change the default audio to the 2nd option (dual audio will have exactly 2 options)

What is the current bug behavior?

if the video is transcoded, there is no issue on other devices. But if you're directly streaming the video to a device that supports direct hevc videos, the audio will not change / update on the client device.

What is the expected correct behavior?

user should be able to select their preferred audio track and the client should correctly output the selected track. t

Jellyfin Server version

10.9.11+

Specify commit id

No response

Specify unstable release number

No response

Specify version number

No response

Specify the build version

10.9.11

Environment

- OS: Linux 24.04
- Linux Kernel:Linux ubuntu 6.8.0-1010-raspi
- Virtualization: docker
- Clients: browser, samsung Tizen
- Browser: chrome  126.0.6450.0 firefox 130.0.1
- FFmpeg Version: jellyfin default ffmpeg version
- Playback Method: Direct Play
- Hardware Acceleration: none
- GPU Model: n/a
- Plugins: opensubtitles, the tvdb
- Reverse Proxy: n/a
- Base URL: IP address 
- Networking: host
- Storage: local

Jellyfin logs

[2024-09-23 02:00:00.639 +00:00] [INF] [81] Emby.Server.Implementations.MediaEncoder.EncodingManager: Stopping chapter extraction for "The Natural Friends" because a chapter was found with a position greater than the runtime.
[2024-09-23 02:00:00.805 +00:00] [INF] [81] Emby.Server.Implementations.ScheduledTasks.TaskManager: "Extract Chapter Images" Completed after 0 minute(s) and 0 seconds
[2024-09-23 02:00:01.000 +00:00] [INF] [73] Emby.Server.Implementations.ScheduledTasks.TaskManager: Daily trigger for "Extract Chapter Images" set to fire at 2024-09-24 02:00:00.000 +00:00, which is 23:59:59.0000240 from now.
[2024-09-23 03:00:01.000 +00:00] [INF] [69] Emby.Server.Implementations.ScheduledTasks.TaskManager: Daily trigger for "Generate Trickplay Images" set to fire at 2024-09-24 03:00:00.000 +00:00, which is 23:59:58.9997304 from now.
[2024-09-23 03:00:02.133 +00:00] [WRN] [11] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Media source "5c854764aa343a2a7f0420630776d8f4" not found at "/media/usb-drive/tvshows/Mob Psycho 100/Mob Psycho 100 III/Extras/[DB]Mob Psycho 100 III Creditless Ending Scenes_-_03_(Dual Audio_10bit_BD1080p_x265).mkv" for item 5c854764-aa34-3a2a-7f04-20630776d8f4
[2024-09-23 03:00:02.133 +00:00] [WRN] [11] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Media source "b42a7431de741465a97636db7d58debc" not found at "/media/usb-drive/tvshows/Mob Psycho 100/Mob Psycho 100/Extras/[DB]Mob Psycho Mini_-_02_(10bit_BD1080p_x265).mkv" for item b42a7431-de74-1465-a976-36db7d58debc
[2024-09-23 03:00:02.134 +00:00] [WRN] [11] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Media source "82081b6b4123b3e638df1ce13414f759" not found at "/media/usb-drive/tvshows/Mob Psycho 100/Mob Psycho 100 III/Extras/[DB]Mob Psycho 100 III Creditless Ending Scenes_-_01_(Dual Audio_10bit_BD1080p_x265).mkv" for item 82081b6b-4123-b3e6-38df-1ce13414f759
[2024-09-23 03:00:02.135 +00:00] [WRN] [11] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Media source "e48a11833d72f5bce460c55f38f42215" not found at "/media/usb-drive/tvshows/Mob Psycho 100/Mob Psycho 100/Extras/[DB]Mob Psycho Mini_-_03_(10bit_BD1080p_x265).mkv" for item e48a1183-3d72-f5bc-e460-c55f38f42215
[2024-09-23 03:00:02.149 +00:00] [WRN] [11] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Media source "089c83a56dd3e8b001b86b6ef7b4e0be" not found at "/media/usb-drive/tvshows/Mob Psycho 100/Mob Psycho 100/Extras/[DB]Mob Psycho Mini_-_06_(10bit_BD1080p_x265).mkv" for item 089c83a5-6dd3-e8b0-01b8-6b6ef7b4e0be
[2024-09-23 03:00:02.152 +00:00] [WRN] [11] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Media source "36c21083860e6c19702e97d00c297eb9" not found at "/media/usb-drive/tvshows/Mob Psycho 100/Mob Psycho 100 III/Extras/[DB]Mob Psycho 100 III Creditless Ending Scenes_-_02_(Dual Audio_10bit_BD1080p_x265).mkv" for item 36c21083-860e-6c19-702e-97d00c297eb9
[2024-09-23 03:00:02.154 +00:00] [WRN] [11] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Media source "11796479e1f56b96e889aee2ad11e737" not found at "/media/usb-drive/tvshows/Mob Psycho 100/Mob Psycho 100 III/Extras/[DB]Mob Psycho 100 III Creditless Ending Scenes_-_05_(Dual Audio_10bit_BD1080p_x265).mkv" for item 11796479-e1f5-6b96-e889-aee2ad11e737
[2024-09-23 03:00:02.155 +00:00] [WRN] [11] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Media source "5bf364d63b9ed019b324586084cd60f4" not found at "/media/usb-drive/tvshows/Mob Psycho 100/Mob Psycho 100/Extras/[DB]Mob Psycho 100_-_NCED_(10bit_BD1080p_x265).mkv" for item 5bf364d6-3b9e-d019-b324-586084cd60f4
[2024-09-23 03:00:02.155 +00:00] [WRN] [11] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Media source "3f4519f2bcbaf3c415de48951154ee86" not found at "/media/usb-drive/tvshows/Mob Psycho 100/Mob Psycho 100 III/Extras/[DB]Mob Psycho 100 III Creditless Ending Scenes_-_04_(Dual Audio_10bit_BD1080p_x265).mkv" for item 3f4519f2-bcba-f3c4-15de-48951154ee86
[2024-09-23 03:00:02.156 +00:00] [WRN] [11] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Media source "6dd425ea3fa98cb3ea58798e1c6f120e" not found at "/media/usb-drive/tvshows/Mob Psycho 100/Mob Psycho 100 III/Extras/[DB]Mob Psycho 100 III_-_NCED_(10bit_BD1080p_x265).mkv" for item 6dd425ea-3fa9-8cb3-ea58-798e1c6f120e
[2024-09-23 03:00:02.157 +00:00] [WRN] [11] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Media source "ca0339469d74bc50aaae7878c47f1cc5" not found at "/media/usb-drive/tvshows/Mob Psycho 100/Mob Psycho 100/Extras/[DB]Mob Psycho Mini_-_04_(10bit_BD1080p_x265).mkv" for item ca033946-9d74-bc50-aaae-7878c47f1cc5
[2024-09-23 03:00:02.157 +00:00] [WRN] [11] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Media source "f14cc5e1b9c5bfc550fdf26a2bb7991f" not found at "/media/usb-drive/tvshows/Mob Psycho 100/Mob Psycho 100/Extras/[DB]Mob Psycho 100_-_OP_(10bit_BD1080p_x265).mkv" for item f14cc5e1-b9c5-bfc5-50fd-f26a2bb7991f
[2024-09-23 03:00:02.158 +00:00] [WRN] [11] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Media source "6ecddba5ca18c4e5262fcfee3edce42a" not found at "/media/usb-drive/tvshows/Mob Psycho 100/Mob Psycho 100/Extras/[DB]Mob Psycho 100 Reigen - Shirarezaru Kiseki no Reinouryokusha Creditless Ending_-_SP_(10bit_BD1080p_x265).mkv" for item 6ecddba5-ca18-c4e5-262f-cfee3edce42a
[2024-09-23 03:00:02.159 +00:00] [WRN] [11] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Media source "5fe662e4f16e9cc28118062bb3bee62c" not found at "/media/usb-drive/tvshows/Mob Psycho 100/Mob Psycho 100/Extras/[DB]Mob Psycho 100 Reigen - Shirarezaru Kiseki no Reinouryokusha_-_SP_(10bit_BD1080p_x265).mkv" for item 5fe662e4-f16e-9cc2-8118-062bb3bee62c
[2024-09-23 03:00:02.159 +00:00] [WRN] [11] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Media source "7355042765e4370f864c2e1cb1a055ae" not found at "/media/usb-drive/tvshows/Mob Psycho 100/Mob Psycho 100/Extras/[DB]Mob Psycho Mini_-_05_(10bit_BD1080p_x265).mkv" for item 73550427-65e4-370f-864c-2e1cb1a055ae
[2024-09-23 03:00:02.161 +00:00] [WRN] [11] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Media source "4dc51ba640fddf874d646462e03eed31" not found at "/media/usb-drive/tvshows/Mob Psycho 100/Mob Psycho 100 III/Extras/[DB]Mob Psycho 100 III_-_OP_(10bit_BD1080p_x265).mkv" for item 4dc51ba6-40fd-df87-4d64-6462e03eed31
[2024-09-23 03:00:02.168 +00:00] [WRN] [11] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Media source "a3b5c379e164286eae0a517424b165a5" not found at "/media/usb-drive/tvshows/Mob Psycho 100/Mob Psycho 100/Extras/[DB]Mob Psycho Mini_-_01_(10bit_BD1080p_x265).mkv" for item a3b5c379-e164-286e-ae0a-517424b165a5
[2024-09-23 03:00:02.177 +00:00] [WRN] [11] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Media source "97da4c6f2d03ecbdf95a04f94562bc07" not found at "/media/usb-drive/tvshows/demonslayer/Kimetsu no Yaiba Yuukaku-hen [BD]/Extras/[DB]Kimetsu no Yaiba Yuukaku-hen_-_NCED01_(10bit_BD1080p_x265).mkv" for item 97da4c6f-2d03-ecbd-f95a-04f94562bc07
[2024-09-23 03:00:02.177 +00:00] [WRN] [11] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Media source "e361e1a9c69fbc37061689f6def10690" not found at "/media/usb-drive/tvshows/demonslayer/Kimetsu no Yaiba Yuukaku-hen [BD]/Extras/[DB]Kimetsu no Yaiba Yuukaku-hen_-_NCOP01_(10bit_BD1080p_x265).mkv" for item e361e1a9-c69f-bc37-0616-89f6def10690
[2024-09-23 03:00:02.629 +00:00] [INF] [11] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Creating trickplay files at 320 width, for "/media/usb-drive/tvshows/interview-with-the-vampire/season1/Interview.With.The.Vampire.S01E01.WEB.x264-TORRENTGALAXY[TGx]/Interview.With.The.Vampire.S01E01.WEB.x264-TORRENTGALAXY.mkv" [ID: b182d251-6461-bde8-4238-5c0a9f27aacd]
[2024-09-23 03:00:02.639 +00:00] [INF] [11] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Trickplay generation: "/usr/lib/jellyfin-ffmpeg/ffmpeg -loglevel error -noautorotate -i file:\"/media/usb-drive/tvshows/interview-with-the-vampire/season1/Interview.With.The.Vampire.S01E01.WEB.x264-TORRENTGALAXY[TGx]/Interview.With.The.Vampire.S01E01.WEB.x264-TORRENTGALAXY.mkv\" -an -sn -vf \"fps=0.10000000149011612,setparams=color_primaries=bt709:color_trc=bt709:colorspace=bt709,scale=trunc(min(max(iw\,ih*(a*sar))\,320)/2)*2:trunc(ow/(a*sar)/2)*2,format=yuv420p\" -threads 4 -c:v mjpeg -qscale:v 8 -f image2 \"/cache/temp/43cc17826e6b433e92cbd202b2e2f7aa/%08d.jpg\""
[2024-09-23 03:01:21.657 +00:00] [INF] [11] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Finished creation of trickplay files for "/media/usb-drive/tvshows/interview-with-the-vampire/season1/Interview.With.The.Vampire.S01E01.WEB.x264-TORRENTGALAXY[TGx]/Interview.With.The.Vampire.S01E01.WEB.x264-TORRENTGALAXY.mkv"
[2024-09-23 03:01:21.666 +00:00] [INF] [11] Emby.Server.Implementations.ScheduledTasks.TaskManager: "Generate Trickplay Images" Completed after 1 minute(s) and 21 seconds
[2024-09-23 04:20:36.176 +00:00] [INF] [1] Main: Jellyfin version: "10.9.11"
[2024-09-23 04:20:36.215 +00:00] [INF] [1] Main: Environment Variables: ["[JELLYFIN_CACHE_DIR, /cache]", "[JELLYFIN_LOG_DIR, /config/log]", "[JELLYFIN_PublishedServerUrl, 192.168.1.200]", "[JELLYFIN_DATA_DIR, /config]", "[JELLYFIN_CONFIG_DIR, /config/config]", "[JELLYFIN_FFMPEG, /usr/lib/jellyfin-ffmpeg/ffmpeg]", "[JELLYFIN_WEB_DIR, /jellyfin/jellyfin-web]"]
[2024-09-23 04:20:36.219 +00:00] [INF] [1] Main: Arguments: ["/jellyfin/jellyfin.dll"]
[2024-09-23 04:20:36.220 +00:00] [INF] [1] Main: Operating system: "Debian GNU/Linux 12 (bookworm)"
[2024-09-23 04:20:36.221 +00:00] [INF] [1] Main: Architecture: Arm64
[2024-09-23 04:20:36.223 +00:00] [INF] [1] Main: 64-Bit Process: True
[2024-09-23 04:20:36.223 +00:00] [INF] [1] Main: User Interactive: True
[2024-09-23 04:20:36.223 +00:00] [INF] [1] Main: Processor count: 4
[2024-09-23 04:20:36.224 +00:00] [INF] [1] Main: Program data path: "/config"
[2024-09-23 04:20:36.224 +00:00] [INF] [1] Main: Log directory path: "/config/log"
[2024-09-23 04:20:36.224 +00:00] [INF] [1] Main: Config directory path: "/config/config"
[2024-09-23 04:20:36.225 +00:00] [INF] [1] Main: Cache path: "/cache"
[2024-09-23 04:20:36.226 +00:00] [INF] [1] Main: Web resources path: "/jellyfin/jellyfin-web"
[2024-09-23 04:20:36.226 +00:00] [INF] [1] Main: Application directory: "/jellyfin/"
[2024-09-23 04:20:36.517 +00:00] [INF] [1] Emby.Server.Implementations.AppBase.BaseConfigurationManager: Setting cache path: "/cache"
[2024-09-23 04:20:36.680 +00:00] [INF] [1] Emby.Server.Implementations.ApplicationHost: Loading assemblies
[2024-09-23 04:20:36.709 +00:00] [ERR] [1] Emby.Server.Implementations.Plugins.PluginManager: Failed to load assembly "/config/plugins/Intro Skipper_0.1.7.0/ConfusedPolarBear.Plugin.IntroSkipper.dll". This error occurs when a plugin references an incompatible version of one of the shared libraries. Disabling plugin
System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types.
Could not load type 'MediaBrowser.Controller.Plugins.IServerEntryPoint' from assembly 'MediaBrowser.Controller, Version=10.9.11.0, Culture=neutral, PublicKeyToken=null'.
Could not load type 'MediaBrowser.Controller.Plugins.IServerEntryPoint' from assembly 'MediaBrowser.Controller, Version=10.9.11.0, Culture=neutral, PublicKeyToken=null'.
   at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)
   at System.Reflection.RuntimeModule.GetTypes()
   at Emby.Server.Implementations.Plugins.PluginManager.LoadAssemblies()+MoveNext()
System.TypeLoadException: Could not load type 'MediaBrowser.Controller.Plugins.IServerEntryPoint' from assembly 'MediaBrowser.Controller, Version=10.9.11.0, Culture=neutral, PublicKeyToken=null'.
System.TypeLoadException: Could not load type 'MediaBrowser.Controller.Plugins.IServerEntryPoint' from assembly 'MediaBrowser.Controller, Version=10.9.11.0, Culture=neutral, PublicKeyToken=null'.
[2024-09-23 04:20:36.733 +00:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly "Jellyfin.Plugin.OpenSubtitles, Version=20.0.0.0, Culture=neutral, PublicKeyToken=null" from "/config/plugins/Open Subtitles_20.0.0.0/Jellyfin.Plugin.OpenSubtitles.dll"
[2024-09-23 04:20:36.742 +00:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly "Jellyfin.Plugin.Tvdb, Version=15.0.0.0, Culture=neutral, PublicKeyToken=null" from "/config/plugins/TheTVDB_15.0.0.0/Jellyfin.Plugin.Tvdb.dll"
[2024-09-23 04:20:36.753 +00:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly "Tvdb.Sdk, Version=4.7.10.0, Culture=neutral, PublicKeyToken=null" from "/config/plugins/TheTVDB_15.0.0.0/Tvdb.Sdk.dll"
[2024-09-23 04:20:36.843 +00:00] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Defined LAN subnets: ["127.0.0.1/8", "10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16"]
[2024-09-23 04:20:36.844 +00:00] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Defined LAN exclusions: []
[2024-09-23 04:20:36.844 +00:00] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Used LAN subnets: ["127.0.0.1/8", "10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16"]
[2024-09-23 04:20:36.846 +00:00] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Filtered interface addresses: ["127.0.0.1", "172.17.0.1"]
[2024-09-23 04:20:36.846 +00:00] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Bind Addresses ["0.0.0.0"]
[2024-09-23 04:20:36.847 +00:00] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Remote IP filter is "Allowlist"
[2024-09-23 04:20:36.847 +00:00] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Filtered subnets: []
[2024-09-23 04:20:41.787 +00:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: "Open Subtitles" "20.0.0.0"
[2024-09-23 04:20:41.789 +00:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: "TheTVDB" "15.0.0.0"
[2024-09-23 04:20:41.790 +00:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: "TMDb" "10.9.11.0"
[2024-09-23 04:20:41.791 +00:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: "Studio Images" "10.9.11.0"
[2024-09-23 04:20:41.791 +00:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: "OMDb" "10.9.11.0"
[2024-09-23 04:20:41.817 +00:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: "MusicBrainz" "10.9.11.0"
[2024-09-23 04:20:41.818 +00:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: "AudioDB" "10.9.11.0"
[2024-09-23 04:20:41.944 +00:00] [WRN] [1] Microsoft.AspNetCore.DataProtection.Repositories.EphemeralXmlRepository: Using an in-memory repository. Keys will not be persisted to storage.
[2024-09-23 04:20:41.945 +00:00] [WRN] [1] Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager: Neither user profile nor HKLM registry available. Using an ephemeral key repository. Protected data will be unavailable when application exits.
[2024-09-23 04:20:42.010 +00:00] [INF] [1] Main: Kestrel is listening on "0.0.0.0"
[2024-09-23 04:20:42.037 +00:00] [WRN] [1] Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager: No XML encryptor configured. Key {c3c17226-823e-4d92-914d-f65a234e4cb8} may be persisted to storage in unencrypted form.
[2024-09-23 04:20:43.089 +00:00] [WRN] [1] Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware: The WebRootPath was not found: "/wwwroot". Static files may be unavailable.
[2024-09-23 04:20:43.156 +00:00] [INF] [1] Emby.Server.Implementations.IO.LibraryMonitor: Skipping realtime monitor for "/media/movies" because the path does not exist
[2024-09-23 04:20:43.157 +00:00] [INF] [1] Emby.Server.Implementations.ApplicationHost: Running startup tasks
[2024-09-23 04:20:43.165 +00:00] [INF] [14] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory "/media/tvshows"
[2024-09-23 04:20:43.187 +00:00] [INF] [1] Emby.Server.Implementations.ScheduledTasks.TaskManager: Daily trigger for "Generate Trickplay Images" set to fire at 2024-09-24 03:00:00.000 +00:00, which is 22:39:16.8123661 from now.
[2024-09-23 04:20:43.195 +00:00] [INF] [1] Emby.Server.Implementations.ScheduledTasks.TaskManager: Daily trigger for "Extract Chapter Images" set to fire at 2024-09-24 02:00:00.000 +00:00, which is 21:39:16.8049766 from now.
[2024-09-23 04:20:43.304 +00:00] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Found ffmpeg version "6.0.1"
[2024-09-23 04:20:43.391 +00:00] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Available "decoders": ["libdav1d", "av1", "av1_rkmpp", "h264", "h264_rkmpp", "hevc", "hevc_rkmpp", "mpeg1_rkmpp", "mpeg2video", "mpeg2_rkmpp", "mpeg4", "mpeg4_rkmpp", "msmpeg4", "vp8", "vp8_rkmpp", "libvpx", "vp9", "vp9_rkmpp", "libvpx-vp9", "aac", "ac3", "dca", "flac", "mp3", "truehd"]
[2024-09-23 04:20:43.419 +00:00] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Available "encoders": ["libsvtav1", "libx264", "h264_v4l2m2m", "h264_rkmpp", "libx265", "hevc_rkmpp", "mpeg4", "msmpeg4", "libvpx", "libvpx-vp9", "aac", "libfdk_aac", "ac3", "alac", "dca", "flac", "libmp3lame", "libopus", "truehd", "libvorbis", "srt"]
[2024-09-23 04:20:43.449 +00:00] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Available filters: ["overlay_opencl", "overlay_rkrga", "scale_opencl", "scale_rkrga", "tonemap_opencl", "vpp_rkrga", "zscale", "alphasrc"]
[2024-09-23 04:20:43.474 +00:00] [WRN] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Filter: "scale_cuda" with option "Output format (default \"same\")" is not available
[2024-09-23 04:20:43.495 +00:00] [WRN] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Filter: "tonemap_cuda" with option "GPU accelerated HDR to SDR tonemapping" is not available
[2024-09-23 04:20:43.564 +00:00] [WRN] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Filter: "overlay_vaapi" with option "Action to take when encountering EOF from secondary input" is not available
[2024-09-23 04:20:43.587 +00:00] [WRN] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Filter: "overlay_vulkan" with option "Action to take when encountering EOF from secondary input" is not available
[2024-09-23 04:20:43.612 +00:00] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Available hwaccel types: ["drm", "opencl", "rkmpp"]
[2024-09-23 04:20:43.911 +00:00] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: FFmpeg: "/usr/lib/jellyfin-ffmpeg/ffmpeg"
[2024-09-23 04:20:43.912 +00:00] [INF] [1] Emby.Server.Implementations.ApplicationHost: ServerId: "395450ee48a74eb88a823b7a7a1fc40d"
[2024-09-23 04:20:43.913 +00:00] [INF] [1] Emby.Server.Implementations.ApplicationHost: Core startup complete
[2024-09-23 04:20:43.913 +00:00] [INF] [1] Main: Startup complete 0:00:08.0564022
[2024-09-23 04:20:46.221 +00:00] [INF] [14] Emby.Server.Implementations.ScheduledTasks.TaskManager: "Clean up collections and playlists" Completed after 0 minute(s) and 0 seconds
[2024-09-23 04:21:10.654 +00:00] [ERR] [8] Emby.Server.Implementations.Updates.InstallationManager: An error occurred while accessing the plugin manifest: "https://repo.jellyfin.org/files/plugin/manifest.json"
System.Net.Http.HttpRequestException: The SSL connection could not be established, see inner exception.
 ---> System.IO.IOException: Unable to read data from the transport connection: Connection reset by peer.
 ---> System.Net.Sockets.SocketException (104): Connection reset by peer
   at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.CreateException(SocketError error, Boolean forAsyncThrow)
   at System.Net.Sockets.Socket.ReceiveAsync(Memory`1 buffer, SocketFlags socketFlags, Boolean fromNetworkStream, CancellationToken cancellationToken)
   at System.Net.Sockets.NetworkStream.ReadAsync(Memory`1 buffer, CancellationToken cancellationToken)
   at System.Net.Security.SslStream.EnsureFullTlsFrameAsync[TIOAdapter](CancellationToken cancellationToken, Int32 estimatedSize)
   at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.ExecutionContextCallback(Object s)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.MoveNext()
   at System.Net.Sockets.SocketAsyncEventArgs.TransferCompletionCallbackCore(Int32 bytesTransferred, Memory`1 socketAddress, SocketFlags receivedFlags, SocketError socketError)
   at System.Net.Sockets.SocketAsyncEngine.System.Threading.IThreadPoolWorkItem.Execute()
   at System.Threading.ThreadPoolWorkQueue.Dispatch()
   at System.Threading.PortableThreadPool.WorkerThread.WorkerThreadStart()
--- End of stack trace from previous location ---

   --- End of inner exception stack trace ---
   at System.Net.Security.SslStream.EnsureFullTlsFrameAsync[TIOAdapter](CancellationToken cancellationToken, Int32 estimatedSize)
   at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token)
   at System.Net.Security.SslStream.ReceiveHandshakeFrameAsync[TIOAdapter](CancellationToken cancellationToken)
   at System.Net.Security.SslStream.ForceAuthenticationAsync[TIOAdapter](Boolean receiveFirst, Byte[] reAuthenticationData, CancellationToken cancellationToken)
   at System.Net.Http.ConnectHelper.EstablishSslConnectionAsync(SslClientAuthenticationOptions sslOptions, HttpRequestMessage request, Boolean async, Stream stream, CancellationToken cancellationToken)
   --- End of inner exception stack trace ---
   at System.Net.Http.ConnectHelper.EstablishSslConnectionAsync(SslClientAuthenticationOptions sslOptions, HttpRequestMessage request, Boolean async, Stream stream, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem)
   at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
   at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at Microsoft.Extensions.Http.Logging.LoggingHttpMessageHandler.<SendCoreAsync>g__Core|5_0(HttpRequestMessage request, Boolean useAsync, CancellationToken cancellationToken)
   at Microsoft.Extensions.Http.Logging.LoggingScopeHttpMessageHandler.<SendCoreAsync>g__Core|5_0(HttpRequestMessage request, Boolean useAsync, CancellationToken cancellationToken)
   at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
   at System.Net.Http.Json.HttpClientJsonExtensions.<FromJsonAsyncCore>g__Core|12_0[TValue,TJsonOptions](HttpClient client, Task`1 responseTask, Boolean usingResponseHeadersRead, CancellationTokenSource linkedCTS, Func`4 deserializeMethod, TJsonOptions jsonOptions, CancellationToken cancellationToken)
   at Emby.Server.Implementations.Updates.InstallationManager.GetPackages(String manifestName, String manifest, Boolean filterIncompatible, CancellationToken cancellationToken)
[2024-09-23 04:21:11.026 +00:00] [INF] [14] Emby.Server.Implementations.ScheduledTasks.TaskManager: "Update Plugins" Completed after 0 minute(s) and 24 seconds
[2024-09-23 04:22:22.913 +00:00] [INF] [11] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory "/media/usb-drive/movies"
[2024-09-23 04:22:25.924 +00:00] [INF] [13] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory "/media/usb-drive/tvshows"
[2024-09-23 04:22:26.563 +00:00] [INF] [8] Emby.Server.Implementations.HttpServer.WebSocketManager: WS "192.168.1.3" request
[2024-09-23 04:28:34.244 +00:00] [INF] [33] Emby.Server.Implementations.HttpServer.WebSocketManager: WS "192.168.1.12" request
[2024-09-23 04:32:25.743 +00:00] [INF] [37] Emby.Server.Implementations.ApplicationHost: App needs to be restarted.
[2024-09-23 04:33:45.547 +00:00] [INF] [42] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for "slickwarren". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[2024-09-23 04:33:46.812 +00:00] [INF] [42] MediaBrowser.MediaEncoding.Attachments.AttachmentExtractor: "/usr/lib/jellyfin-ffmpeg/ffmpeg" "-dump_attachment:t \"\" -y  -i file:\"/media/usb-drive/tvshows/demonslayer/Kimetsu no Yaiba Season 3 Entertainment District Arc/[DB]Kimetsu no Yaiba Yuukaku-hen_-_01_(Dual Audio_10bit_BD1080p_x265).mkv\" -t 0 -f null null"
[2024-09-23 04:33:47.047 +00:00] [INF] [39] MediaBrowser.MediaEncoding.Attachments.AttachmentExtractor: ffmpeg attachment extraction completed for "file:\"/media/usb-drive/tvshows/demonslayer/Kimetsu no Yaiba Season 3 Entertainment District Arc/[DB]Kimetsu no Yaiba Yuukaku-hen_-_01_(Dual Audio_10bit_BD1080p_x265).mkv\"" to "/cache/attachments/c5f3f0a35eec9a940ba155a9227041d1"
[2024-09-23 04:33:47.053 +00:00] [INF] [39] MediaBrowser.MediaEncoding.Transcoding.TranscodeManager: "/usr/lib/jellyfin-ffmpeg/ffmpeg" "-analyzeduration 200M -probesize 1G -f matroska -noautorotate -canvas_size 1920x1080 -i file:\"/media/usb-drive/tvshows/demonslayer/Kimetsu no Yaiba Season 3 Entertainment District Arc/[DB]Kimetsu no Yaiba Yuukaku-hen_-_01_(Dual Audio_10bit_BD1080p_x265).mkv\" -map_metadata -1 -map_chapters -1 -threads 4 -map 0:0 -map 0:2 -map -0:0 -codec:v:0 libx264 -preset veryfast -crf 42 -maxrate 9495970 -bufsize 18991940 -profile:v:0 high -level 51 -x264opts:0 subme=0:me_range=4:rc_lookahead=10:me=dia:no_chroma_me:8x8dct=0:partitions=none -force_key_frames:0 \"expr:gte(t,n_forced*3)\" -sc_threshold:v:0 0 -filter_complex \"[0:3]scale=-1:1080:fast_bilinear,scale,crop,pad=max(1920\,iw):max(1080\,ih):(ow-iw)/2:(oh-ih)/2:black@0,crop=1920:1080[sub];[0:0]setparams=color_primaries=bt709:color_trc=bt709:colorspace=bt709,scale=trunc(min(max(iw\,ih*a)\,min(1920\,1080*a))/2)*2:trunc(min(max(iw/a\,ih)\,min(1920/a\,1080))/2)*2,format=yuv420p[main];[main][sub]overlay=eof_action=pass:repeatlast=0\" -start_at_zero -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_segment_filename \"/cache/transcodes/ebe6828b42c5aee8ddc0041912ca2a1c%d.ts\" -hls_playlist_type vod -hls_list_size 0 -y \"/cache/transcodes/ebe6828b42c5aee8ddc0041912ca2a1c.m3u8\""
[2024-09-23 04:33:56.197 +00:00] [INF] [39] MediaBrowser.Controller.MediaEncoding.TranscodingJob: Stopping ffmpeg process with q command for "/cache/transcodes/ebe6828b42c5aee8ddc0041912ca2a1c.m3u8"
[2024-09-23 04:33:56.508 +00:00] [INF] [39] MediaBrowser.MediaEncoding.Transcoding.TranscodeManager: FFmpeg exited with code 0
[2024-09-23 04:33:56.512 +00:00] [INF] [39] MediaBrowser.MediaEncoding.Transcoding.TranscodeManager: "/usr/lib/jellyfin-ffmpeg/ffmpeg" "-analyzeduration 200M -probesize 1G -ss 00:35:51.000 -f matroska -noautorotate -canvas_size 1920x1080 -i file:\"/media/usb-drive/tvshows/demonslayer/Kimetsu no Yaiba Season 3 Entertainment District Arc/[DB]Kimetsu no Yaiba Yuukaku-hen_-_01_(Dual Audio_10bit_BD1080p_x265).mkv\" -map_metadata -1 -map_chapters -1 -threads 4 -map 0:0 -map 0:2 -map -0:0 -codec:v:0 libx264 -preset veryfast -crf 42 -maxrate 9495970 -bufsize 18991940 -profile:v:0 high -level 51 -x264opts:0 subme=0:me_range=4:rc_lookahead=10:me=dia:no_chroma_me:8x8dct=0:partitions=none -force_key_frames:0 \"expr:gte(t,n_forced*3)\" -sc_threshold:v:0 0 -filter_complex \"[0:3]scale=-1:1080:fast_bilinear,scale,crop,pad=max(1920\,iw):max(1080\,ih):(ow-iw)/2:(oh-ih)/2:black@0,crop=1920:1080[sub];[0:0]setparams=color_primaries=bt709:color_trc=bt709:colorspace=bt709,scale=trunc(min(max(iw\,ih*a)\,min(1920\,1080*a))/2)*2:trunc(min(max(iw/a\,ih)\,min(1920/a\,1080))/2)*2,format=yuv420p[main];[main][sub]overlay=eof_action=pass:repeatlast=0\" -start_at_zero -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 717 -hls_segment_filename \"/cache/transcodes/ebe6828b42c5aee8ddc0041912ca2a1c%d.ts\" -hls_playlist_type vod -hls_list_size 0 -y \"/cache/transcodes/ebe6828b42c5aee8ddc0041912ca2a1c.m3u8\""
[2024-09-23 04:34:22.449 +00:00] [INF] [41] MediaBrowser.Controller.MediaEncoding.TranscodingJob: Stopping ffmpeg process with q command for "/cache/transcodes/ebe6828b42c5aee8ddc0041912ca2a1c.m3u8"
[2024-09-23 04:34:22.732 +00:00] [INF] [41] MediaBrowser.MediaEncoding.Transcoding.TranscodeManager: FFmpeg exited with code 0
[2024-09-23 04:34:22.734 +00:00] [INF] [41] MediaBrowser.MediaEncoding.Transcoding.TranscodeManager: Deleting partial stream file(s) "/cache/transcodes/ebe6828b42c5aee8ddc0041912ca2a1c.m3u8"
[2024-09-23 04:34:24.241 +00:00] [INF] [26] Emby.Server.Implementations.Session.SessionManager: Playback stopped reported by app "Jellyfin for Tizen" "0.1.0" playing "Sound Hashira Tengen Uzui". Stopped at "2157791" ms
[2024-09-23 04:36:01.498 +00:00] [INF] [38] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for "slickwarren". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[2024-09-23 04:36:27.900 +00:00] [INF] [14] Emby.Server.Implementations.Session.SessionManager: Playback stopped reported by app "Jellyfin for Tizen" "0.1.0" playing "Sound Hashira Tengen Uzui". Stopped at "2154121" ms
[2024-09-23 04:36:41.241 +00:00] [INF] [35] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for "slickwarren". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[2024-09-23 04:37:25.431 +00:00] [INF] [13] Emby.Server.Implementations.HttpServer.WebSocketManager: WS "192.168.1.12" closed
[2024-09-23 04:37:26.245 +00:00] [INF] [11] Emby.Server.Implementations.HttpServer.WebSocketManager: WS "192.168.1.12" request

FFmpeg logs

No response

Client / Browser logs

No response

Relevant screenshots or videos

No response

Additional information

was in the main repo, but it was moved to the 'wrong repo' column so I assume they wanted it opened here. No response

dmitrylyzo commented 1 month ago
  1. Do you mean "DirectPlay" when you say "Direct streaming"?
  2. What TV model?
  3. Please provide mediainfo of the file.
slickwarren commented 1 month ago
  1. yes
  2. Samsung - 65" Class S90D Series video mediainfo

Video Title: 1080p HEVC SDR Codec: HEVC AVC: No Profile: Main 10 Level: 120 Resolution: 1920x1080 Aspect ratio: 16:9 Anamorphic: No Interlaced: No Framerate: 23.976025 Bitrate: 2698 kbps Bit depth: 10 bit Video range: SDR Video range type: SDR Color space: bt709 Color transfer: bt709 Color primaries: bt709 Pixel format: yuv420p10le Ref frames: 1


audio 1

Audio Title: Stereo - English - AAC - Default Language: eng Codec: AAC AVC: No Profile: LC Layout: stereo Channels: 2 ch Bitrate: 128 kbps Sample rate: 44100 Hz Default: Yes Forced: No External: No


audio 2

Audio Title: Stereo - Japanese - AAC Language: jpn Codec: AAC AVC: No Profile: LC Layout: stereo Channels: 2 ch Bitrate: 128 kbps Sample rate: 44100 Hz Default: No Forced: No External: No

nestmadt2h commented 1 month ago

The same thing happens to me and I have Windows 10 Pro with dedicated graphics. Testla P4 works fine on other devices but on Samsung it seems to only send direct playback, because it doesn't change the language when selecting it.

I tried in the start interface and it doesn't work and within the playback it doesn't work either.

I recently installed the latest version of Tizen and it still doesn't work.

Samsung Qled QN55Q60DAKXZL

slickwarren commented 1 month ago

yeah it is specific to samsung; I updated codecs on my laptop so that I could test if this works outside of my samsung tv app, and yes the laptop is able to direct stream and I'm able to select either option and it plays correctly for dual-audio videos.

irwing-reza commented 3 weeks ago

Same issue is happening but only on TVs with version 8 of tizen.

psychodracon commented 1 week ago

Same thing happened to me on Samsung S90C, is there any workaround other then enforcing video transcoding?

psychodracon commented 1 week ago

Small update, i've tried marking other audio track as default but it seems that it is not working, jellyfin is playing first audio track when transcoding is not happnening. When i enforce different quality so that transocding will kick in then selected audio track is beign played.

dmitrylyzo commented 1 week ago

If anyone wants to test: https://github.com/jellyfin/jellyfin-web/pull/6317 This will force Jellyfin to remux if secondary audio is selected.

Also, could anyone test the MP4 with dual audio without mentioned PR? Does it switch tracks?

psychodracon commented 1 week ago

If anyone wants to test: jellyfin/jellyfin-web#6317 This will force Jellyfin to remux if secondary audio is selected.

Also, could anyone test the MP4 with dual audio without mentioned PR? Does it switch tracks?

Seems to fix issue on tizen 8 with only first audio track being played without transcoding.

slickwarren commented 1 week ago

I wasn't able to test the mp4 use case but I can confirm the PR is fixing the issue.

petjkalv commented 2 days ago

If anyone wants to test: jellyfin/jellyfin-web#6317 This will force Jellyfin to remux if secondary audio is selected.

Also, could anyone test the MP4 with dual audio without mentioned PR? Does it switch tracks?

I'm sorry, I'm new to this, but how do I get this fix? Should I somehow edit the .wgt file with your added code?