mirror of
https://github.com/jellyfin/jellyfin.git
synced 2026-05-04 18:09:12 +03:00
[Issue]: Generated Trickplay images do not get shown in the preview scrub #5870
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @nevaran on GitHub (May 27, 2024).
Please describe your bug
After jellyscrub has been supposedly replaced by the integrated trickplay in the latest major release of JF, upon updating to the latest and uninstalling jellyscrub (I also had to delete manually from the plugins folder), all checked media had a blank preview (see screenshots) and it would feel laggy when scrobbing through it to check if there is some, somewhere.
Deleting the library folder in the jellyfin server folder and re-generating trickplay did not fix the issue. The files are physically there and seem to have generated properly.
In the web player when trying to view console logs, there are a few errors popping up, one being the "image not found" for trickplay. My guess is the new version generates trickplay images in the wrong directory from where the player requests them at.
Reproduction Steps
Delete library folder from any generated trickplay images.
Set trickplay settingas as per screenshot.
Generate trickplay.
Play media when finished and check.
Jellyfin Version
10.9.0
if other:
10.9.3, 10.9.2
Environment
Jellyfin logs
FFmpeg logs
No response
Please attach any browser or client logs here
main.jellyfin.bundle.js?87a2af1fdac0722c6136:2 HLS Error: Type: otherError Details: internalException Fatal: false
(anonymous) @ main.jellyfin.bundle.js?87a2af1fdac0722c6136:2
o.emit @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.emit @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.trigger @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
v.onerror @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
error (async)
t @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
r._handleFragmentLoadProgress @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
(anonymous) @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
(anonymous) @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
Promise.then (async)
r._doFragLoad @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
r._loadFragForPlayback @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
r.loadFragment @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
r.loadFragment @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
r.doTickIdle @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
r.doTick @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.tick @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
r.completeInitSegmentLoad @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
(anonymous) @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
Promise.then (async)
r._loadInitSegment @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
r.loadFragment @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
r.doTickIdle @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
r.doTick @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.tick @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
r.onLevelLoaded @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
o.emit @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.emit @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.trigger @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.handlePlaylistLoaded @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.handleTrackOrLevelPlaylist @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
onSuccess @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.readystatechange @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
XMLHttpRequest.send (async)
e.openAndSendXhr @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
(anonymous) @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
Promise.then (async)
e.loadInternal @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.load @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.load @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.onLevelLoading @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
o.emit @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.emit @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.trigger @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
r.loadPlaylist @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
set @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
set @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
set @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
r.startLoad @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
(anonymous) @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.startLoad @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
r.filterAndSortMediaOptions @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
r.onManifestLoaded @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
o.emit @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.emit @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.trigger @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.handleMasterPlaylist @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
onSuccess @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.readystatechange @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
XMLHttpRequest.send (async)
e.openAndSendXhr @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
(anonymous) @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
Promise.then (async)
e.loadInternal @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.load @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.load @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.onManifestLoading @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
o.emit @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.emit @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.trigger @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
e.loadSource @ node_modules.hls.js.970a5cb5618e7282c138.chunk.js:1
(anonymous) @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
d @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
(anonymous) @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
(anonymous) @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
M @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
o @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
Promise.then (async)
M @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
o @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
(anonymous) @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
(anonymous) @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
(anonymous) @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
Promise.then (async)
(anonymous) @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
value @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
(anonymous) @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
d @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
(anonymous) @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
(anonymous) @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
M @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
o @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
(anonymous) @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
(anonymous) @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
(anonymous) @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
(anonymous) @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
Promise.then (async)
(anonymous) @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
Promise.then (async)
value @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
(anonymous) @ main.jellyfin.bundle.js?87a2af1fdac0722c6136:2
d @ main.jellyfin.bundle.js?87a2af1fdac0722c6136:2
(anonymous) @ main.jellyfin.bundle.js?87a2af1fdac0722c6136:2
(anonymous) @ main.jellyfin.bundle.js?87a2af1fdac0722c6136:2
F @ main.jellyfin.bundle.js?87a2af1fdac0722c6136:2
a @ main.jellyfin.bundle.js?87a2af1fdac0722c6136:2
Promise.then (async)
F @ main.jellyfin.bundle.js?87a2af1fdac0722c6136:2
a @ main.jellyfin.bundle.js?87a2af1fdac0722c6136:2
(anonymous) @ main.jellyfin.bundle.js?87a2af1fdac0722c6136:2
(anonymous) @ main.jellyfin.bundle.js?87a2af1fdac0722c6136:2
(anonymous) @ main.jellyfin.bundle.js?87a2af1fdac0722c6136:2
Promise.then (async)
(anonymous) @ main.jellyfin.bundle.js?87a2af1fdac0722c6136:2
Promise.then (async)
(anonymous) @ main.jellyfin.bundle.js?87a2af1fdac0722c6136:2
(anonymous) @ main.jellyfin.bundle.js?87a2af1fdac0722c6136:2
Promise.then (async)
oe @ main.jellyfin.bundle.js?87a2af1fdac0722c6136:2
(anonymous) @ main.jellyfin.bundle.js?87a2af1fdac0722c6136:2
Promise.then (async)
re @ main.jellyfin.bundle.js?87a2af1fdac0722c6136:2
(anonymous) @ main.jellyfin.bundle.js?87a2af1fdac0722c6136:2
Promise.then (async)
(anonymous) @ main.jellyfin.bundle.js?87a2af1fdac0722c6136:2
Promise.then (async)
r.play @ main.jellyfin.bundle.js?87a2af1fdac0722c6136:2
S @ 39435.69c90e515266013a522e.chunk.js:1
T @ 39435.69c90e515266013a522e.chunk.js:1
b @ 50777.a74047e8105ceeab87e9.chunk.js:2
node_modules.jellyfin-apiclient.bundle.js?87a2af1fdac0722c6136:2 Requesting url without automatic networking: https://DNS/Sessions/Playing
node_modules.jellyfin-apiclient.bundle.js?87a2af1fdac0722c6136:2 Requesting https://DNS/System/Configuration/encoding
node_modules.@jellyfin.libass-wasm.83cb3fa930a5537f2bd3.chunk.js:1 WebAssembly support detected: yes
node_modules.@jellyfin.libass-wasm.83cb3fa930a5537f2bd3.chunk.js:1 Canvas2D: Multiple readback operations using getImageData are faster with the willReadFrequently attribute set to true. See: https://html.spec.whatwg.org/multipage/canvas.html#concept-canvas-will-read-frequently
i.createCanvas @ node_modules.@jellyfin.libass-wasm.83cb3fa930a5537f2bd3.chunk.js:1
i.init @ node_modules.@jellyfin.libass-wasm.83cb3fa930a5537f2bd3.chunk.js:1
e.exports.e.exports @ node_modules.@jellyfin.libass-wasm.83cb3fa930a5537f2bd3.chunk.js:1
(anonymous) @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
Promise.then (async)
(anonymous) @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
Promise.then (async)
value @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
value @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
value @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
value @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
value @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
(anonymous) @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
Promise.then (async)
(anonymous) @ htmlVideoPlayer-plugin.f87c183ee5ae587347d1.chunk.js:2
node_modules.@jellyfin.libass-wasm.83cb3fa930a5537f2bd3.chunk.js:1 resetting prerender cache
2node_modules.@jellyfin.libass-wasm.83cb3fa930a5537f2bd3.chunk.js:1 worker busy, requesting to seek
subtitles-octopus-worker.js:1 warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available.
node_modules.jellyfin-apiclient.bundle.js?87a2af1fdac0722c6136:2 Requesting url without automatic networking: https://DNS/Sessions/Playing/Progress
25node_modules.@jellyfin.libass-wasm.83cb3fa930a5537f2bd3.chunk.js:1 worker busy, requesting to seek
subtitles-octopus-worker.js:1 jso: setting total libass memory limits to: glyph=40 MiB, bitmap cache=40 MiB
1.jpg:1
Image (async)
(anonymous) @ playback-video.7265567fbee96eeab2ec.chunk.js:1
$e.updateBubbleHtml @ playback-video.7265567fbee96eeab2ec.chunk.js:1
(anonymous) @ 66161.7a633fb7b947bf426a30.chunk.js:1
requestAnimationFrame (async)
y @ 66161.7a633fb7b947bf426a30.chunk.js:1
(anonymous) @ 66161.7a633fb7b947bf426a30.chunk.js:1
node_modules.jellyfin-apiclient.bundle.js?87a2af1fdac0722c6136:2 Requesting url without automatic networking: https://DNS/Sessions/Playing/Stopped
14node_modules.jellyfin-apiclient.bundle.js?87a2af1fdac0722c6136:2 Sending web socket message: KeepAlive
Please attach any screenshots here
Code of Conduct
@jellyfin-bot commented on GitHub (May 27, 2024):
Hi, it seems like your issue report has the following item(s) that need to be addressed:
This is an automated message, currently under testing. Please file an issue here if you encounter any problems.
@nevaran commented on GitHub (May 27, 2024):
Noticing the web client logs, it seems that its trying to pickup trickplay folders from the 320, which doesnt exist (the set resolution is 220).
Going to the server folder and copying that folder and renaming it to 320 seems to have made trickplay working.
So the only issue is requesting the wrong resolution set on the server?...
@gnattu commented on GitHub (May 27, 2024):
You need to do a replace all metadata scan with replace current images checked after changing those settings.
@nevaran commented on GitHub (May 27, 2024):
I did that, multiple times. This does not work since if setting resolution to anything other than 320 breaks trickplay from loading since the player still tries to load the "320" folder, instead of whatever is set and generated in there
@gnattu commented on GitHub (May 27, 2024):
Let's try with incognito tab, will that load for you?
@nevaran commented on GitHub (May 27, 2024):
Neither incognito nor in the JF Player program it would load with resolution other than 320. Im just setting the trickplay to be at 320 for now until theres a fix for it I suppose.
@jellyfin-bot commented on GitHub (Sep 25, 2024):
This issue has gone 120 days without an update and will be closed within 21 days if there is no new activity. To prevent this issue from being closed, please confirm the issue has not already been fixed by providing updated examples or logs.
If you have any questions you can use one of several ways to contact us.
@nevaran commented on GitHub (Sep 25, 2024):
Has this been fixed yet?
@gnattu commented on GitHub (Sep 25, 2024):
I think 10.10's enhanced trickplay can fully fix this. If you have time you can test the unstable build.
@enter-a-random-username commented on GitHub (Sep 25, 2024):
I have no issue with 10.10 and trickplay except some unrelated cleanup stuff.
@nevaran commented on GitHub (Sep 25, 2024):
Unless theres a windows build for it since I dont have time to also figure out how to build it and stuff
@felix920506 commented on GitHub (Sep 25, 2024):
Unstable windows builds can be found here
https://jellyfin.org/downloads/windows
Select unstable on the top of the page
@jellyfin-bot commented on GitHub (Jan 25, 2025):
This issue has gone 120 days without an update and will be closed within 21 days if there is no new activity. To prevent this issue from being closed, please confirm the issue has not already been fixed by providing updated examples or logs.
If you have any questions you can use one of several ways to contact us.
@jellyfin-bot commented on GitHub (Feb 15, 2025):
This issue was closed due to inactivity.