What app is this about, and its version: Navidrome, 0.59.0~ynh1 What YunoHost version are you running: 12.1.39 What type of hardware are you using: Raspberry Pi 3, 4+
Describe your issue
Hello,
Because of poor internet connexion (Yunohost hosted at home), I would like to use transcoding in Navidrome.
On Navridrome web interface : Settings → Transcoding :
Name : opus
Target Format : opus
Bitrate : 96
Command : ffmpeg -i %i -map 0:a -c:a libopus -b:a %bk -vbr on -f opus -
When transcoding is selection, the music simply do not play. It can try to load for a long time then error about ffmpeg PATH.
Your error message tells us exactly what’s going on:
exec: "\"ffmpeg": executable file not found in $PATH
Navidrome needs ffmpeg to transcode, but the service can’t find it.
Step 1 — Check if ffmpeg is installed:
which ffmpeg
If it returns nothing, install it:
sudo apt update && sudo apt install ffmpeg
If it still doesn’t work → Go Step 2
Step 2 — Tell Navidrome where to find ffmpeg:
Even with ffmpeg installed, the systemd service may run in a restricted environment where /usr/bin isn’t in the PATH. You need to explicitly set the path in Navidrome’s config file:
Thank you for your time.
I you check the link I posted, you can see that I already checked this kind of stuff.
ffmpeg is installed
ffmpeg path is the same as in navridrome.toml file
However you gave me some idea.
I set Navidrome logs in DEBUG mode.
I also mounted my data disk on “/media/disque_dur/Musique” instead of “/home/user/media/disque_dur/Musique”
I now have this log with but I am not sur what I can do with it.
I only can confirm that when I run ffmpeg command on the specific music file, with the same transcoding command, it works fine !
error="/usr/bin/ffmpeg exited with non-zero status code: 1"
Jan 31 10:51:04 HIDDEN_DOMAIN.fr navidrome[3389]: time="2026-01-31T10:51:04+01:00" level=debug msg="HTTP: GET http://HIDDEN_DOMAIN.fr/navidrome/rest/getCoverArt?u=jasmin&t=[REDACTED]&s=[REDACTED]&f=json&v=1.8.0&c=NavidromeUI&id=mf-YDB4W0KsuIEocY1ClXoz3X&_=2025-09-04T19%3A53%3A06%2B02%3A00&size=300" elapsedTime=120ms httpStatus=200 remoteAddr=192.168.1.1 requestId=HIDDEN_DOMAIN.fr/wgI3pDsVdr-000005 responseSize=17469 userAgent="Mozilla/5.0 (X11; Linux x86_64; rv:147.0) Gecko/20100101 Firefox/147.0"
Jan 31 10:51:05 HIDDEN_DOMAIN.fr navidrome[3389]: time="2026-01-31T10:51:05+01:00" level=error msg="Error sending transcoded file" error="/usr/bin/ffmpeg exited with non-zero status code: 1" id=YDB4W0KsuIEocY1ClXoz3X requestId=HIDDEN_DOMAIN.fr/wgI3pDsVdr-000006
Jan 31 10:51:05 HIDDEN_DOMAIN.fr navidrome[3389]: time="2026-01-31T10:51:05+01:00" level=debug msg="HTTP: GET http://HIDDEN_DOMAIN.fr/navidrome/rest/stream?u=jasmin&t=[REDACTED]&s=[REDACTED]&f=json&v=1.8.0&c=NavidromeUI&id=YDB4W0KsuIEocY1ClXoz3X&_=1769853086008" elapsedTime=548.7ms httpStatus=0 remoteAddr=192.168.1.1 requestId=HIDDEN_DOMAIN.fr/wgI3pDsVdr-000006 responseSize=0 userAgent="Mozilla/5.0 (X11; Linux x86_64; rv:147.0) Gecko/20100101 Firefox/147.0"
To debug further, could you check the DEBUG logs for the exact ffmpeg command Navidrome is trying to run? Look for a line like Executing ffmpeg command — that will show us exactly what’s being sent to ffmpeg.
I set the navridome’s debug mode on “trace” and have found something.
The “%i” in the transcoding command shoud be remplaced by the song but this is not the case.
I have searched but was not able to find any relevant command I can use instead the one a I shared above.
Jan 31 13:50:56 domaine.fr navidrome[14783]: %i: No such file or directory