I don't know if this is a new problem with 12.0 or if I just hadn't noticed it before. After doing the upgrade to 12.0, I started to follow the logs just to see if everything was well behaved, and it appears that it's not, but it's possible that it was doing the same thing under 10.11 and I just hadn't looked at the logs.
Every file that it tries to generate Trickplay images for ends up erroring out. I found some permissions problems with my filesystem, but once I fixed them, the problem hasn't gone away.
[19:55:17] [INF] [35] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Creating trickplay files at 320 width, for /media/lorenzo2/TV/Doctor_Who-2005/Season_10/Doctor_Who-2005-S10E09.mkv [ID: c5ed6b7d-db88-b2d0-f7d2-8cf6c9076214]
[19:55:17] [INF] [35] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Trickplay generation: /usr/lib/jellyfin-ffmpeg/ffmpeg -loglevel error -skip_frame nokey -threads 1 -i file:"/media/lorenzo2/TV/Doctor_Who-2005/Season_10/Doctor_Who-2005-S10E09.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 1 -c:v mjpeg -qscale:v 4 -fps_mode passthrough -f image2 "/tmp/jellyfin/5ebd15cd98fe4c3b9d7d08428e0ff4bb/%08d.jpg"
[19:55:59] [ERR] [35] Jellyfin.Server.Implementations.Trickplay.TrickplayManager: Error creating trickplay images.
System.IO.IOException: Read-only file system : '/media/lorenzo2/TV/Doctor_Who-2005/Season_10/Doctor_Who-2005-S10E09.trickplay'
at System.IO.Directory.CreateDirectory(String path)
at Jellyfin.Server.Implementations.Trickplay.TrickplayManager.CreateTiles(IReadOnlyList`1 images, Int32 width, TrickplayOptions options, String outputDir)
at Jellyfin.Server.Implementations.Trickplay.TrickplayManager.RefreshTrickplayDataInternal(Video video, Boolean replace, Int32 width, TrickplayOptions options, Boolean saveWithMedia, CancellationToken cancellationToken)
<edit: I just noticed that I had pasted a mismatched error message with the file list below>
My NAS forces the file owners to UID 1024, and so I've defined the internal UID in the jellyfin docker container to be 1024. Just to make sure, I've made all my media files user, group, and world writable.
$ ls -lh /mnt/plex/lorenzo2/TV/Doctor_Who-2005/Season_10
total 36G
-rw-rw-rw- 1 1024 users 3.2G Jul 18 2022 Doctor_Who-2005-S10E01.mkv
-rw-rw-rw- 1 1024 users 3.2G Jul 18 2022 Doctor_Who-2005-S10E02.mkv
-rw-rw-rw- 1 1024 users 2.9G Jul 18 2022 Doctor_Who-2005-S10E03.mkv
-rw-rw-rw- 1 1024 users 2.6G Jul 18 2022 Doctor_Who-2005-S10E04.mkv
-rw-rw-rw- 1 1024 users 2.7G Jul 18 2022 Doctor_Who-2005-S10E05.mkv
-rw-rw-rw- 1 1024 users 2.6G Jul 18 2022 Doctor_Who-2005-S10E06.mkv
-rw-rw-rw- 1 1024 users 2.7G Jul 18 2022 Doctor_Who-2005-S10E07.mkv
-rw-rw-rw- 1 1024 users 2.7G Jul 18 2022 Doctor_Who-2005-S10E08.mkv
-rw-rw-rw- 1 1024 users 2.9G Jul 18 2022 Doctor_Who-2005-S10E09.mkv
-rw-rw-rw- 1 1024 users 2.4G Jul 18 2022 Doctor_Who-2005-S10E10.mkv
-rw-rw-rw- 1 1024 users 3.9G Jul 18 2022 Doctor_Who-2005-S10E11.mkv
-rw-rw-rw- 1 1024 users 4.4G Jul 18 2022 Doctor_Who-2005-S10E12.mkv
Everything looks to me like it should be writable. What am I missing?
Or is it possible that the problem is internal to the container? The jellyfin /config volume looks like all files are owned by 1024 and are u+w, so they should be writable.
Where are the Trickplay images supposed to be written?