The Jellyfin user needs write access to the directory and execute (traverse) access to every parent directory. Check with namei -l /path/to/recordings.
On Linux the packaged systemd service may be sandboxed, so it can read your media folders but not write to them. Allow the directory with sudo systemctl edit jellyfin.service and add:
[Service] +ReadWritePaths=/path/to/recordings+
then run sudo systemctl daemon-reload && sudo systemctl restart jellyfin. In Docker, make sure the directory is mounted read-write.