[GH-ISSUE #29] [Bug]: Crashing during playing of Live TV #23

Closed
opened 2026-03-23 20:34:50 +00:00 by mirror · 16 comments
Owner

Originally created by @bashman83 on GitHub (Nov 20, 2024).
Original GitHub issue: https://github.com/tubearchivist/tubearchivist-jf-plugin/issues/29

I've read the documentation

Operating System

Synology Linux & Docker

Your Bug Report

Describe the bug Jellyfin crashes when playing Live TV through Jellyfin. When unchecking of playback synchronization, everything works correctly. Have also tried through a docker version & have the same error.

Steps To Reproduce

Expected behavior

Relevant Jellyfin log output

[2024-11-20 13:57:21.371 +13:00] [INF] [35] MediaBrowser.MediaEncoding.Transcoding.TranscodeManager: "/var/packages/ffmpeg7/target/bin/ffmpeg" "-analyzeduration 3000000 -probesize 1G  -i \"http://localhost:9981/stream/channelid/299055571?ticket=6f698787678b00295ad8fbfbeefbcb8d0d79772b\" -map_metadata -1 -map_chapters -1 -threads 0 -sn -codec:v:0 libx264 -preset superfast -crf 23 -maxrate 66419477 -bufsize 132838954 -profile:v:0 high -level 51 -x264opts:0 subme=0:me_range=16:rc_lookahead=10:me=hex:open_gop=0 -force_key_frames:0 \"expr:gte(t,n_forced*3)\" -sc_threshold:v:0 0 -vf \"setparams=color_primaries=bt709:color_trc=bt709:colorspace=bt709,yadif=0:-1:0,format=yuv420p\" -codec:a:0 libfdk_aac -ab 384000 -copyts -avoid_negative_ts disabled -max_muxing_queue_size 2048 -f hls -max_delay 5000000 -hls_time 3 -hls_segment_type fmp4 -hls_fmp4_init_filename \"768b5a1f7286eade0593833f30c1303f-1.mp4\" -start_number 0 -hls_base_url \"hls/768b5a1f7286eade0593833f30c1303f/\" -hls_segment_filename \"/volume1/@appdata/jellyfin/cache/transcodes/768b5a1f7286eade0593833f30c1303f%d.mp4\" -hls_playlist_type event -hls_list_size 0 -y \"/volume1/@appdata/jellyfin/cache/transcodes/768b5a1f7286eade0593833f30c1303f.m3u8\""
[2024-11-20 13:57:32.480 +13:00] [FTL] [35] Main: Unhandled Exception
System.ArgumentException: Guid can't be empty (Parameter 'id')
   at Emby.Server.Implementations.Library.LibraryManager.GetItemById(Guid id)
   at Jellyfin.Plugin.TubeArchivistMetadata.Plugin.OnPlaybackProgress(Object sender, PlaybackProgressEventArgs eventArgs)
   at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_1(Object state)
   at System.Threading.QueueUserWorkItemCallback.Execute()
   at System.Threading.ThreadPoolWorkQueue.Dispatch()
   at System.Threading.PortableThreadPool.WorkerThread.WorkerThreadStart()
[2024-11-20 13:57:32.482 +13:00] [FTL] [27] Main: Unhandled Exception
System.ArgumentException: Guid can't be empty (Parameter 'id')
   at Emby.Server.Implementations.Library.LibraryManager.GetItemById(Guid id)
   at Jellyfin.Plugin.TubeArchivistMetadata.Plugin.OnPlaybackProgress(Object sender, PlaybackProgressEventArgs eventArgs)
   at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_1(Object state)
   at System.Threading.QueueUserWorkItemCallback.Execute()
   at System.Threading.ThreadPoolWorkQueue.Dispatch()
   at System.Threading.PortableThreadPool.WorkerThread.WorkerThreadStart()

Anything else?

No response

Originally created by @bashman83 on GitHub (Nov 20, 2024). Original GitHub issue: https://github.com/tubearchivist/tubearchivist-jf-plugin/issues/29 ### I've read the documentation - [X] I'm running the latest version of tubearchivist-jf-plugin. - [X] I have read the [how to open an issue](https://github.com/tubearchivist/tubearchivist/blob/master/CONTRIBUTING.md#how-to-open-an-issue) guide, particularly the [bug report](https://github.com/tubearchivist/tubearchivist/blob/master/CONTRIBUTING.md#bug-report) section. ### Operating System Synology Linux & Docker ### Your Bug Report ## Describe the bug Jellyfin crashes when playing Live TV through Jellyfin. When unchecking of playback synchronization, everything works correctly. Have also tried through a docker version & have the same error. ## Steps To Reproduce ## Expected behavior ### Relevant Jellyfin log output ```shell [2024-11-20 13:57:21.371 +13:00] [INF] [35] MediaBrowser.MediaEncoding.Transcoding.TranscodeManager: "/var/packages/ffmpeg7/target/bin/ffmpeg" "-analyzeduration 3000000 -probesize 1G -i \"http://localhost:9981/stream/channelid/299055571?ticket=6f698787678b00295ad8fbfbeefbcb8d0d79772b\" -map_metadata -1 -map_chapters -1 -threads 0 -sn -codec:v:0 libx264 -preset superfast -crf 23 -maxrate 66419477 -bufsize 132838954 -profile:v:0 high -level 51 -x264opts:0 subme=0:me_range=16:rc_lookahead=10:me=hex:open_gop=0 -force_key_frames:0 \"expr:gte(t,n_forced*3)\" -sc_threshold:v:0 0 -vf \"setparams=color_primaries=bt709:color_trc=bt709:colorspace=bt709,yadif=0:-1:0,format=yuv420p\" -codec:a:0 libfdk_aac -ab 384000 -copyts -avoid_negative_ts disabled -max_muxing_queue_size 2048 -f hls -max_delay 5000000 -hls_time 3 -hls_segment_type fmp4 -hls_fmp4_init_filename \"768b5a1f7286eade0593833f30c1303f-1.mp4\" -start_number 0 -hls_base_url \"hls/768b5a1f7286eade0593833f30c1303f/\" -hls_segment_filename \"/volume1/@appdata/jellyfin/cache/transcodes/768b5a1f7286eade0593833f30c1303f%d.mp4\" -hls_playlist_type event -hls_list_size 0 -y \"/volume1/@appdata/jellyfin/cache/transcodes/768b5a1f7286eade0593833f30c1303f.m3u8\"" [2024-11-20 13:57:32.480 +13:00] [FTL] [35] Main: Unhandled Exception System.ArgumentException: Guid can't be empty (Parameter 'id') at Emby.Server.Implementations.Library.LibraryManager.GetItemById(Guid id) at Jellyfin.Plugin.TubeArchivistMetadata.Plugin.OnPlaybackProgress(Object sender, PlaybackProgressEventArgs eventArgs) at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_1(Object state) at System.Threading.QueueUserWorkItemCallback.Execute() at System.Threading.ThreadPoolWorkQueue.Dispatch() at System.Threading.PortableThreadPool.WorkerThread.WorkerThreadStart() [2024-11-20 13:57:32.482 +13:00] [FTL] [27] Main: Unhandled Exception System.ArgumentException: Guid can't be empty (Parameter 'id') at Emby.Server.Implementations.Library.LibraryManager.GetItemById(Guid id) at Jellyfin.Plugin.TubeArchivistMetadata.Plugin.OnPlaybackProgress(Object sender, PlaybackProgressEventArgs eventArgs) at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_1(Object state) at System.Threading.QueueUserWorkItemCallback.Execute() at System.Threading.ThreadPoolWorkQueue.Dispatch() at System.Threading.PortableThreadPool.WorkerThread.WorkerThreadStart() ``` ### Anything else? _No response_
Author
Owner

@joshand commented on GitHub (Dec 23, 2024):

I observed the same issue. However, I was able to stop the crash from happening when I disabled all of the Playback synchronization options. I'm guessing it was specifically "Synchronize Jellyfin playback progress to TubeArchivist", but I've not tested individually. Perhaps Jellyfin is trying to send progress of a Live TV session back to TA?

<!-- gh-comment-id:2559132483 --> @joshand commented on GitHub (Dec 23, 2024): I observed the same issue. However, I was able to stop the crash from happening when I disabled all of the Playback synchronization options. I'm guessing it was specifically "Synchronize Jellyfin playback progress to TubeArchivist", but I've not tested individually. Perhaps Jellyfin is trying to send progress of a Live TV session back to TA?
Author
Owner

@DarkFighterLuke commented on GitHub (Jan 8, 2025):

Hi @bashman83 , can you provide me a live tv to use for example in order to test this behavior?

<!-- gh-comment-id:2578774488 --> @DarkFighterLuke commented on GitHub (Jan 8, 2025): Hi @bashman83 , can you provide me a live tv to use for example in order to test this behavior?
Author
Owner

@bashman83 commented on GitHub (Jan 9, 2025):

Hi?@DarkFighterLuke I was using the TVHeadend plugin when this error occurred.
So this has some local Digital TV broadcasts, as well as some IPTV channels provided by @matthuisman

<!-- gh-comment-id:2579324976 --> @bashman83 commented on GitHub (Jan 9, 2025): Hi?@DarkFighterLuke I was using the TVHeadend plugin when this error occurred. So this has some local Digital TV broadcasts, as well as some IPTV channels provided by @matthuisman
Author
Owner

@DarkFighterLuke commented on GitHub (Jan 9, 2025):

I haven't a TVHeadend setup up and running at the moment, I am trying to configure one, but some help from you would be appreciate. Did you followed this guide without any other steps to setup TVHeadend with Jellyfin?

<!-- gh-comment-id:2580019496 --> @DarkFighterLuke commented on GitHub (Jan 9, 2025): I haven't a TVHeadend setup up and running at the moment, I am trying to configure one, but some help from you would be appreciate. Did you followed [this](https://jellyfin.org/docs/general/server/plugins/tvheadend/) guide without any other steps to setup TVHeadend with Jellyfin?
Author
Owner

@DarkFighterLuke commented on GitHub (Jan 9, 2025):

Moreover, what are your Jellyfin and TubeArchivist plugin versions?

<!-- gh-comment-id:2580165378 --> @DarkFighterLuke commented on GitHub (Jan 9, 2025): Moreover, what are your Jellyfin and TubeArchivist plugin versions?
Author
Owner

@bashman83 commented on GitHub (Jan 9, 2025):

Both Jellyfin & TA-JF are at the newest versions available. So 10.10.3 & 1.3.4.0
As mentioned above, this is only an issue when using the playback synchronisation. When that isn't ticked it all works perfectly fine.

<!-- gh-comment-id:2581213897 --> @bashman83 commented on GitHub (Jan 9, 2025): Both Jellyfin & TA-JF are at the newest versions available. So 10.10.3 & 1.3.4.0 As mentioned above, this is only an issue when using the playback synchronisation. When that isn't ticked it all works perfectly fine.
Author
Owner

@Jurrer commented on GitHub (Mar 17, 2025):

I'm not sure if it will help but from the logs I noticed this plugin tries to synchronize to -> TA every played video.
For example, while watching Anime from a different library it's sending requests to sync the watching status to TA
Of course it is returning an error saying that the video cannot be found. It's harmless in this case but maybe it's related

<!-- gh-comment-id:2730565927 --> @Jurrer commented on GitHub (Mar 17, 2025): I'm not sure if it will help but from the logs I noticed this plugin tries to synchronize to -> TA every played video. For example, while watching Anime from a different library it's sending requests to sync the watching status to TA Of course it is returning an error saying that the video cannot be found. It's harmless in this case but maybe it's related
Author
Owner

@DarkFighterLuke commented on GitHub (Mar 17, 2025):

@Jurrer you're right, I've already find out the reason, but unfortunately I have no time to fix it quickly at the moment. Maybe in some days I will release a fix.

<!-- gh-comment-id:2730762240 --> @DarkFighterLuke commented on GitHub (Mar 17, 2025): @Jurrer you're right, I've already find out the reason, but unfortunately I have no time to fix it quickly at the moment. Maybe in some days I will release a fix.
Author
Owner

@DarkFighterLuke commented on GitHub (Jul 13, 2025):

I think that this bug has been fixed, can you confirm that?

<!-- gh-comment-id:3067033260 --> @DarkFighterLuke commented on GitHub (Jul 13, 2025): I think that this bug has been fixed, can you confirm that?
Author
Owner

@bashman83 commented on GitHub (Aug 8, 2025):

I think that this bug has been fixed, can you confirm that?

I'm still getting this error during Live TV. Although I haven't used it as much as I did previously. However, when I watch music videos or when I have other home videos, in Jellyfin, they also crash JF during playback. I will try to track down the error in the long in the next day or two, but from memory it all looked exactly the same.

<!-- gh-comment-id:3166447325 --> @bashman83 commented on GitHub (Aug 8, 2025): > I think that this bug has been fixed, can you confirm that? I'm still getting this error during Live TV. Although I haven't used it as much as I did previously. However, when I watch music videos or when I have other home videos, in Jellyfin, they also crash JF during playback. I will try to track down the error in the long in the next day or two, but from memory it all looked exactly the same.
Author
Owner

@ngthunter commented on GitHub (Aug 9, 2025):

Same for me, JF crashes whenever I watch a movie as long as sync to TA is on

<!-- gh-comment-id:3172018276 --> @ngthunter commented on GitHub (Aug 9, 2025): Same for me, JF crashes whenever I watch a movie as long as sync to TA is on
Author
Owner

@klix commented on GitHub (Aug 10, 2025):

I believe the already merged PR https://github.com/tubearchivist/tubearchivist-jf-plugin/pull/54 would fix this.

<!-- gh-comment-id:3172690556 --> @klix commented on GitHub (Aug 10, 2025): I believe the already merged PR https://github.com/tubearchivist/tubearchivist-jf-plugin/pull/54 would fix this.
Author
Owner

@fernandeusto commented on GitHub (Aug 16, 2025):

Hi, I just wanted to confirm that I'm also experiencing this issue.

Whenever I play any media from a library other than TubeArchivist, Jellyfin crashes with the following error:

[22:25:14] [INF] [25] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for Fernando. EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[22:25:15] [FTL] [26] Main: Unhandled Exception
System.ArgumentException: Guid can't be empty (Parameter 'id')
   at Emby.Server.Implementations.Library.LibraryManager.GetItemById(Guid id)
   at Jellyfin.Plugin.TubeArchivistMetadata.Plugin.OnPlaybackProgress(Object sender, PlaybackProgressEventArgs eventArgs)
   at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_1(Object state)
   at System.Threading.QueueUserWorkItemCallback.Execute()
   at System.Threading.ThreadPoolWorkQueue.Dispatch()
   at System.Threading.PortableThreadPool.WorkerThread.WorkerThreadStart()
Unhandled exception. System.ArgumentException: Guid can't be empty (Parameter 'id')
   at Emby.Server.Implementations.Library.LibraryManager.GetItemById(Guid id)
   at Jellyfin.Plugin.TubeArchivistMetadata.Plugin.OnPlaybackProgress(Object sender, PlaybackProgressEventArgs eventArgs)
   at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_1(Object state)
   at System.Threading.QueueUserWorkItemCallback.Execute()
   at System.Threading.ThreadPoolWorkQueue.Dispatch()
   at System.Threading.PortableThreadPool.WorkerThread.WorkerThreadStart()
Container stopped

It seems like the plugin is trying to handle playback progress for all media, even when it's not related to TubeArchivist, and crashes when the item doesn't have a valid GUID.

And only "Synchronize Jellyfin playback progress to TubeArchivist" have checked.

Disabling playback sync avoids the crash, but that defeats the purpose of having the plugin installed. I hope this can be addressed soon—maybe by filtering playback events to only process TubeArchivist items?

Thanks for your work!

<!-- gh-comment-id:3193899953 --> @fernandeusto commented on GitHub (Aug 16, 2025): Hi, I just wanted to confirm that I'm also experiencing this issue. Whenever I play any media from a library **other than TubeArchivist**, Jellyfin crashes with the following error: ``` [22:25:14] [INF] [25] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for Fernando. EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True [22:25:15] [FTL] [26] Main: Unhandled Exception System.ArgumentException: Guid can't be empty (Parameter 'id') at Emby.Server.Implementations.Library.LibraryManager.GetItemById(Guid id) at Jellyfin.Plugin.TubeArchivistMetadata.Plugin.OnPlaybackProgress(Object sender, PlaybackProgressEventArgs eventArgs) at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_1(Object state) at System.Threading.QueueUserWorkItemCallback.Execute() at System.Threading.ThreadPoolWorkQueue.Dispatch() at System.Threading.PortableThreadPool.WorkerThread.WorkerThreadStart() Unhandled exception. System.ArgumentException: Guid can't be empty (Parameter 'id') at Emby.Server.Implementations.Library.LibraryManager.GetItemById(Guid id) at Jellyfin.Plugin.TubeArchivistMetadata.Plugin.OnPlaybackProgress(Object sender, PlaybackProgressEventArgs eventArgs) at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_1(Object state) at System.Threading.QueueUserWorkItemCallback.Execute() at System.Threading.ThreadPoolWorkQueue.Dispatch() at System.Threading.PortableThreadPool.WorkerThread.WorkerThreadStart() Container stopped ``` It seems like the plugin is trying to handle playback progress for **all media**, even when it's not related to TubeArchivist, and crashes when the item doesn't have a valid GUID. And only "Synchronize Jellyfin playback progress to TubeArchivist" have checked. Disabling playback sync avoids the crash, but that defeats the purpose of having the plugin installed. I hope this can be addressed soon—maybe by filtering playback events to only process TubeArchivist items? Thanks for your work!
Author
Owner

@mattkduran commented on GitHub (Oct 18, 2025):

@bashman83 I have a potential fix for this on PR 62 and PR 63 if you want to try a build for it. Let me know if you're not able to build, I might be able to add the DLL here and you can load the plugin manually that way.

<!-- gh-comment-id:3418670813 --> @mattkduran commented on GitHub (Oct 18, 2025): @bashman83 I have a potential fix for this on [PR 62](https://github.com/tubearchivist/tubearchivist-jf-plugin/pull/62) and [PR 63](https://github.com/tubearchivist/tubearchivist-jf-plugin/pull/63) if you want to try a build for it. Let me know if you're not able to build, I might be able to add the DLL here and you can load the plugin manually that way.
Author
Owner

@bashman83 commented on GitHub (Oct 19, 2025):

@bashman83 I have a potential fix for this on PR 62 and PR 63 if you want to try a build for it. Let me know if you're not able to build, I might be able to add the DLL here and you can load the plugin manually that way.

While I'd love to try this one for you, I have no knowledge or idea of how to build these to test them

<!-- gh-comment-id:3419297970 --> @bashman83 commented on GitHub (Oct 19, 2025): > [@bashman83](https://github.com/bashman83) I have a potential fix for this on [PR 62](https://github.com/tubearchivist/tubearchivist-jf-plugin/pull/62) and [PR 63](https://github.com/tubearchivist/tubearchivist-jf-plugin/pull/63) if you want to try a build for it. Let me know if you're not able to build, I might be able to add the DLL here and you can load the plugin manually that way. While I'd love to try this one for you, I have no knowledge or idea of how to build these to test them
Author
Owner

@DarkFighterLuke commented on GitHub (Oct 23, 2025):

Hi, the new version 1.4.0 should have fixed this bug.

I'll close this issue.

<!-- gh-comment-id:3439034156 --> @DarkFighterLuke commented on GitHub (Oct 23, 2025): Hi, the new version 1.4.0 should have fixed this bug. I'll close this issue.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
tubearchivist/archived-tubearchivist-jf-plugin#23
No description provided.