Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: Jukebox control does not work #2771

Open
3 tasks done
julienlag opened this issue Jan 7, 2024 · 32 comments
Open
3 tasks done

[Bug]: Jukebox control does not work #2771

julienlag opened this issue Jan 7, 2024 · 32 comments
Labels
bug triage New bug reports that need to be evaluated

Comments

@julienlag
Copy link

I confirm that:

  • I have searched the existing open AND closed issues to see if an issue already exists for the bug I've encountered
  • I'm using the latest version (your issue may have been fixed already)

Version

0.50.2 (823bef5)

Current Behavior

From Ultrasonic (Android), turning Jukebox on ends the stream immediately. See attached relevant excerpt from navidrome log. Running manually the mpv command reported on line 26 of the log works as expected.
No luck either using DSub in Jukebox mode...

Expected Behavior

Jukebox mode should work correctly

Steps To Reproduce

I followed official installation/setup instructions carefully

Environment

- OS: Ubuntu 22.04 LTS
- Client: Ultrasonic 4.8.0

How Navidrome is installed?

Binary (from downloads page)

Configuration

MusicFolder = "/home/myuser/Music"
Port = "5533"
EnableSharing = true
Jukebox.Enabled = true
LogLevel = 'DEBUG'

Relevant log output

Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="API: New request /rest/jukeboxControl.view" client=Ultrasonic requestId=myservice/jyZW2Y56yH-008442 username=myuser version=1.16.0                   
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="processing GetDevice"                                                                                                                              
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="processing action: set"                                                                                                                            
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=warning msg="API: Failed response" endpoint=/rest/jukeboxControl.view error=10 message="missing parameter id, err: required 'id' parameter is missing" requestId=myservice/jyZW2Y56yH-008442 username=myuser
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="HTTP: GET http://music.myservice.example.org/rest/jukeboxControl.view?action=set&u=myuser&c=Ultrasonic&f=json&v=1.16.0&t=[REDACTED]&s=[REDACTED]" elapsedTime=1.2ms httpStatus=200 remoteAddr=93.176.178.229 requestId=myservice/jyZW2Y56yH-008442 responseSize=229 userAgent=okhttp/4.11.0
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="API: New request /rest/jukeboxControl.view" client=Ultrasonic requestId=myservice/jyZW2Y56yH-008443 username=myuser version=1.16.0
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="processing GetDevice"
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="processing action: set"
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="processing Clear action on: Name: auto, Gain: 1.0000, Loaded track: %!s(<nil>)" requestId=myservice/jyZW2Y56yH-008443 username=myuser
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="processing Add action" requestId=myservice/jyZW2Y56yH-008443 username=myuser
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="Found mediafile: /home/myuser/Music/Adam_Rogers/Apparition/01_-_Labyrinth.XXnofavXX.mp3" requestId=myservice/jyZW2Y56yH-008443 username=myuser
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="Found mediafile: /home/myuser/Music/Adam_Rogers/Apparition/02_-_Tyranny_Of_Fixed_Numbers.XXnofavXX.mp3" requestId=myservice/jyZW2Y56yH-008443 username=myuser
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="Found mediafile: /home/myuser/Music/Adam_Rogers/Apparition/03_-_Persephone.XXnofavXX.mp3" requestId=myservice/jyZW2Y56yH-008443 username=myuser
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="Found mediafile: /home/myuser/Music/Adam_Rogers/Apparition/04_-_Continuance.XXnofavXX.mp3" requestId=myservice/jyZW2Y56yH-008443 username=myuser
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="Found mediafile: /home/myuser/Music/Adam_Rogers/Apparition/05_-_The_Maya.XXnofavXX.mp3" requestId=myservice/jyZW2Y56yH-008443 username=myuser
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="Found mediafile: /home/myuser/Music/Adam_Rogers/Apparition/06_-_Appartitions.XXnofavXX.mp3" requestId=myservice/jyZW2Y56yH-008443 username=myuser
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="Found mediafile: /home/myuser/Music/Adam_Rogers/Apparition/07_-_Amphora.XXnofavXX.mp3" requestId=myservice/jyZW2Y56yH-008443 username=myuser
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="Found mediafile: /home/myuser/Music/Adam_Rogers/Apparition/08_-_Moment_In_Time.XXnofavXX.mp3" requestId=myservice/jyZW2Y56yH-008443 username=myuser
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="API: Successful response" endpoint=/rest/jukeboxControl.view requestId=myservice/jyZW2Y56yH-008443 status=OK username=myuser
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="HTTP: GET http://music.myservice.example.org/rest/jukeboxControl.view?action=set&id=17c9b39d4574a8cfc6b03996c9531e93&id=b34ca99e3b2b06f93399771994a2d2b7&id=6845f2b389b5d6610062c7cbae7b3b64&id=15c86553a443789d8fe8cbe07ac50c7b&id=e33d5be0800c6f727f609e0ffc59daee&id=023c0e83d1126dffe6912ca957dcca14&id=8bfe1f6a67adad9d1a232307b92a5574&id=501653dcea91d0d879fca48afe30eccd&u=myuser&c=Ultrasonic&f=json&v=1.16.0&t=[REDACTED]&s=[REDACTED]" elapsedTime=9.8ms httpStatus=200 remoteAddr=93.176.178.229 requestId=myservice/jyZW2Y56yH-008443 responseSize=204 userAgent=okhttp/4.11.0
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="API: New request /rest/jukeboxControl.view" client=Ultrasonic requestId=myservice/jyZW2Y56yH-008444 username=myuser version=1.16.0
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="processing GetDevice"
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="processing action: skip"
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="processing Skip action" index=0 offset=49 requestId=myservice/jyZW2Y56yH-008444 username=myuser
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="loading track" mediatype=audio/mpeg trackname=/home/myuser/Music/Adam_Rogers/Apparition/01_-_Labyrinth.XXnofavXX.mp3
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="Executing mpv command" cmd="[/usr/bin/mpv --audio-device=auto --no-audio-display --pause /home/myuser/Music/Adam_Rogers/Apparition/01_-_Labyrinth.XXnofavXX.mp3 --input-ipc-server=/tmp/mpv-ctrl-9e3cf8d488e57b9c2a79914704d8885c.socket]"
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="file found" retries=1 waittime=100257
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="got the mpv error: property unavailable error, retry ..."
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=error msg="could not set the position in track" error="mpv error: property unavailable" offset=49
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=error msg="error setting position" error="mpv error: property unavailable" requestId=myservice/jyZW2Y56yH-008444 username=myuser
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="got the mpv error: property unavailable error, retry ..."
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=warning msg="API: Failed response" endpoint=/rest/jukeboxControl.view error=0 message="Internal Server Error: mpv error: property unavailable" requestId=myservice/jyZW2Y56yH-008444 username=myuser
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=debug msg="HTTP: GET http://music.myservice.example.org/rest/jukeboxControl.view?action=skip&index=0&offset=49&u=myuser&c=Ultrasonic&f=json&v=1.16.0&t=[REDACTED]&s=[REDACTED]" elapsedTime=117.9ms httpStatus=200 remoteAddr=93.176.178.229 requestId=myservice/jyZW2Y56yH-008444 responseSize=221 userAgent=okhttp/4.11.0
Jan 07 17:52:16 myservice navidrome[130066]: time="2024-01-07T17:52:16+01:00" level=info msg="Hitting end-of-stream, signalling on channel"

Anything else?

No response

Code of Conduct

  • I agree to follow Navidrome's Code of Conduct
@julienlag julienlag added bug triage New bug reports that need to be evaluated labels Jan 7, 2024
@cyberfarer
Copy link

Confirming the same issue. I have updated the default Ubuntu 0.32.0-1ubuntu1 to 0.36.0+fruit~ubuntu2004 without any change.

@Pollinopops
Copy link

Pollinopops commented Jan 16, 2024

Same issue here on a raspberry pi 3b+ running OSMC
The command starting MPV works when typed manually in the terminal but fails when initated by navidrome with the error : "got the mpv error: property unavailable error, retry ..."

Navidrome is installed from the official binary and run as a systemd service. I thought it could be related to that but I get the same error if I start Navidrome manually.

@deluan
Copy link
Member

deluan commented Jan 21, 2024

I cannot reproduce this error here with DSub. For Ultrasonic, there is another issue that prevents it to work properly with Navidrome: https://gitlab.com/ultrasonic/ultrasonic/-/issues/1266

I'll release a new version in the next couple of days, with the change mentioned in the Ultrasonic's issue, but not sure if this will have any effect on this issue here.

If you don't want to wait for the release and want to test right away, you can use the latest development build: https://nightly.link/navidrome/navidrome/workflows/pipeline/master

@Pollinopops
Copy link

Tried with the latest nightly and I still get the same error using DSub and Ultrasonic.

@cyberfarer
Copy link

Tried with DSUB and get the same error. Is it possibly restricted to Ubuntu?

@julienlag
Copy link
Author

thanks @deluan for looking into this! Unfortunately this hasn't solved the issue for me (neither with Ultrasonic nor DSub).
Server version: [0.50.1-SNAPSHOT] (2b33ef72)
Output from journalctl -f -u navidrome.service |grep level=error upon pressing "Play" on Ultrasonic with Jukebox function 'on':


Jan 21 20:54:23 myservice navidrome[2315877]: time="2024-01-21T20:54:23+01:00" level=error msg="Could not set the position in track" error="mpv error: property unavailable" offset=4 track="Name: file.mp3, Socket: /tmp/mpv-ctrl-78a46eb2fb2b3094e09ce01b380a6ab0.socket"
Jan 21 20:54:23 myservice navidrome[2315877]: time="2024-01-21T20:54:23+01:00" level=error msg="error setting position" error="mpv error: property unavailable" requestId=myservice/19pB3ypxxD-001499 username=username
Jan 21 20:54:23 egon navidrome[2315877]: time="2024-01-21T20:54:23+01:00" level=error msg="Error sending quit command to mpv-ipc socket" error="trying to send command on closed mpv client"
[multiple identical messages]
Jan 21 20:54:25 egon navidrome[2315877]: time="2024-01-21T20:54:25+01:00" level=error msg="Problem getting paused status" error="trying to send command on closed mpv client" track="Name: file.mp3, Socket: /tmp/mpv-ctrl-b08c6e5b0946f2e44035c3b9b47cd6d9.socket"
Jan 21 20:54:25 egon navidrome[2315877]: time="2024-01-21T20:54:25+01:00" level=error msg="Error sending quit command to mpv-ipc socket" error="trying to send command on closed mpv client"
[multiple identical messages]

With DSub:

Jan 21 20:49:56 myservice navidrome[2315877]: time="2024-01-21T20:49:56+01:00" level=error msg="Error sending quit command to mpv-ipc socket" error="trying to send command on closed mpv client"
[multiple identical messages]
Jan 21 20:50:00 myservice navidrome[2315877]: time="2024-01-21T20:50:00+01:00" level=error msg="Problem getting paused status" error="trying to send command on closed mpv client" track="Name: file.mp3, Socket: /tmp/mpv-ctrl-9aea46747499e3dd3619df4ec41f3ec0.socket"
Jan 21 20:50:00 myservice navidrome[2315877]: time="2024-01-21T20:50:00+01:00" level=error msg="Error sending quit command to mpv-ipc socket" error="trying to send command on closed mpv client"
[multiple identical messages]

Please let me know if you need further info. I'm also open to using another Jukebox-compatible client if it works :-)

@fyfrey
Copy link
Contributor

fyfrey commented Jan 31, 2024

I also got the above errors.
Looking at the code, shouldn't

be a continue instead of break? Maybe add some (exponential) back off / pause until the next IPC request as well?

@deluan
Copy link
Member

deluan commented Jan 31, 2024

I have to admit I don't understand the whole of the Jukebox code, and I don't use it myself, but maybe @ms140569 can chime in?

@ms140569
Copy link
Contributor

ms140569 commented Feb 1, 2024

@julienlag which version of mpv is running on your box?
I'm on my way to FOSDEM but will look into this once I'm back.

@julienlag
Copy link
Author

here, @ms140569 :

mpv --version
mpv 0.34.1 Copyright © 2000-2021 mpv/MPlayer/mplayer2 projects
 built on UNKNOWN
FFmpeg library versions:
   libavutil       56.70.100
   libavcodec      58.134.100
   libavformat     58.76.100
   libswscale      5.9.100
   libavfilter     7.110.100
   libswresample   3.9.100
FFmpeg version: 4.4.2-0ubuntu0.22.04.1

@julienlag
Copy link
Author

@ms140569 upgraded mpv to version 0.37.0, the problem unfortunately remains... :-(

@cyberfarer
Copy link

cyberfarer commented Feb 4, 2024 via email

@cyberfarer
Copy link

cyberfarer commented Feb 4, 2024 via email

@dweymouth
Copy link
Contributor

Yeah this just looks like needing to quote the filename in the cmd string when Navidrome calls out to mpv

@cyberfarer
Copy link

Yeah this just looks like needing to quote the filename in the cmd string when Navidrome calls out to mpv

This may be correct. When I run the command manually with quotations around the string it does work. I will give it a try. Although, honestly, at this time I use bluetooth and it all works quite nicely.

@deluan
Copy link
Member

deluan commented Feb 16, 2024

Yeah this just looks like needing to quote the filename in the cmd string when Navidrome calls out to mpv

I don't know what is the issue, but I'm pretty sure that is not the case. This is just how array of strings are displayed in the logs. I an assure you that the filename is only one argument and is not split by spaces. This is the same way it works for ffmpeg for both importing and transcoding.

The quotes in @cyberfarer command is for bash/zsh to consider the filename one argument, but it is not necessary when calling it out with Go's exec.Command

I just checked my Linux test instance and I am able to play songs with spaces in the path without issues. See the log:

DEBU[0054] Executing mpv command        cmd="[/usr/bin/mpv --audio-device=auto --no-audio-display --pause music/My latin way/VOODOOCUTS - My latin way - 01 Mi amor.mp3 --input-ipc-server=/tmp/mpv-ctrl-9078e11172ab0d743d3bc20fd3cf33c4.socket]"

@mpdevivo
Copy link

I found my way here after posting about my jukebox trouble on Reddit ( https://www.reddit.com/r/navidrome/comments/1ar4sc8/error_with_jukebox_mode_and_music_files_with/ )

For me, the quotes seem to have fixed the error when calling MPV to play a file.

@cyberfarer
Copy link

cyberfarer commented Feb 16, 2024 via email

@thulard
Copy link

thulard commented Feb 16, 2024

I also got the above errors. Looking at the code, shouldn't


be a continue instead of break? Maybe add some (exponential) back off / pause until the next IPC request as well?

I'm also running navidrome 0.51.0 with mpv 0.32.0 on a Raspberry Pi 4 Model B Rev 1.5 and I'm getting the same errors
I tried to follow the log and code, I arrived to the same conclusion.

Executing the mpv command doesn't raise any error and the track is then unpause.

Looking at the Start function, on device.go, the function is calling getStatus()

func (pd *playbackDevice) Start(ctx context.Context) (DeviceStatus, error) {

getStatus() call the pd.ActiveTrack.Position() function.

func (pd *playbackDevice) getStatus() DeviceStatus {

Position() on track.go is the one returning the "mpv error: property unavailable" but never retry due to the break.

func (t *MpvTrack) Position() int {

From the player point of view (DSub), the song never progress and stay at 0:00.
Hope this feedback is helpful

@deluan
Copy link
Member

deluan commented Feb 17, 2024

@mpdevivo

I found my way here after posting about my jukebox trouble on Reddit ( https://www.reddit.com/r/navidrome/comments/1ar4sc8/error_with_jukebox_mode_and_music_files_with/ )

For me, the quotes seem to have fixed the error when calling MPV to play a file.

If you need to call mpv (or any other command for that matter) from the command line, so then yes, you need to put quotes around filepaths with spaces. But that's NOT the case, as Navidrome is NOT using the shell to execute the command. The fact that you see the command in the logs without quotes does NOT means the filepath is split when calling mpv. This is just the way Navidrome logs array of strings, and the fact that it looks like a valid command line, it is not meant to be.

So no, that's not the issue. And you can see in my previous comment that I am able to play files with spaces on a Linux machine without this issue. What we have here is something else.

But that's not your fault, the log format is really misleading. Maybe a better way to represent the command to be executed is something like this:

Executing mpv command cmd="['/usr/bin/mpv','--audio-device=alsa/sysdefault:CARD=sndrpihifiberry', '--no-audio-display', '--pause', '/media/volumio/MP3/Various/00s Miscellaneous/01 Tubthumper.mp3', '--input-ipc-server=/tmp/mpv-ctrl-7dcd7ec4fc01af918a1752c863c73709.socket']"

This is the actual command being launched by Navidrome. I'll probably change the logs to this format above to stop the confusion.

Do you mean by manually running the command or did
you amend the code?

@cyberfarer there's nothing to amend in the code regarding quotes, this is not the issue.

@thulard Thanks for the detailed analysis. Hopefully @ms140569 will be able to get back to this sooner than later.

@mpdevivo
Copy link

mpdevivo commented Feb 17, 2024

@cyberfarer, yes I ran it manually in a command window. I found the error in the logs, extracted the command and ran it in a command window, receiving an error. When I added the quotes it worked.

@deluan , thank you for the explanation!

@MrRobinhq
Copy link

I experience the same issue with playing files; trying to cast internet radio via DSub gives me a different error:

Feb 21 17:19:33 raspberrypi navidrome[11380]: time="2024-02-21T17:19:33Z" level=error msg="internal error: current song index out of bounds" idx=0 length=0

Streaming internet radio with mpg123 works just fine.

@Hydronicx
Copy link

@ms140569 Have you had the time to look at this?

@barolo
Copy link

barolo commented Apr 22, 2024

I experience the same issue with playing files; trying to cast internet radio via DSub gives me a different error:

Feb 21 17:19:33 raspberrypi navidrome[11380]: time="2024-02-21T17:19:33Z" level=error msg="internal error: current song index out of bounds" idx=0 length=0

Streaming internet radio with mpg123 works just fine.

Can confirm the problem with radios, I have only aac and flac streams and none of them work.
Latest MPV.
Normal, local jukebox mode [via DSUB] is also wonky, you have to pause/unpause to get it to play.
Ultrasonic seems to behave better when Jukebox is set as default in config.

@nickolay
Copy link

nickolay commented May 1, 2024

I was also hitting "Hitting end-of-stream, signalling on channel" on Linux (Raspbian 11) with navidrome 0.52.0 (92a98cd) and mpv 0.37, using iSub as the client.

When starting navidrome from the command-line, jukebox worked fine:

	cd /var/lib/navidrome; /opt/navidrome/navidrome --configfile "/var/lib/navidrome/navidrome.toml"

...so I figured it was due to extra security options in the systemd unit. I commented out those and it works now as a service as well:

# DevicePolicy=closed
# NoNewPrivileges=yes
# PrivateTmp=yes
# PrivateUsers=yes
# ProtectControlGroups=yes
# ProtectKernelModules=yes
# ProtectKernelTunables=yes
# RestrictAddressFamilies=AF_UNIX AF_INET AF_INET6
# RestrictNamespaces=yes
# RestrictRealtime=yes
# SystemCallFilter=~@clock @debug @module @mount @obsolete @reboot @setuid @swap
# ReadWritePaths=/var/lib/navidrome
# ...
# ProtectSystem=full

Didn't have the time to debug this further; I ran under with User=nickolay, Group=nickolay, MusicFolder="/home/nickolay/Music. (I didn't have success with play:Sub even after iSub started working, anyone else got it working?)

The failing logs were:

level=debug msg="Executing mpv command" cmd="[/usr/bin/mpv --audio-device=auto --no-audio-display --pause /home/nickolay/Music/children-songs/xxx-xxxxxxx-xxxxx.mp3 --input-ipc-server=/tmp/mpv-ctrl-ed38f1d6-3810-48dd-bb10-b35897ece8a1.socket]"
level=debug msg="Socket found" retries=2 waitTime=201ms
level=debug msg="Setting position" offset=0 track="Name: /home/nickolay/Music/children-songs/xxx-xxxxxxx-xxxxx.mp3, Socket: /tmp/mpv-ctrl-ed38f1d6-3810-48dd-bb10-b35897ece8a1.socket"
level=debug msg="Got mpv error, retrying..." error="mpv error: property unavailable" retries=1
level=debug msg="No position difference, skipping operation" track="Name: /home/nickolay/Music/children-songs/xxx-xxxxxxx-xxxxx.mp3, Socket: /tmp/mpv-ctrl-ed38f1d6-3810-48dd-bb10-b35897ece8a1.socket"
level=info msg="Hitting end-of-stream, signalling on channel"
level=error msg="Error getting position in track" error="trying to send command on closed mpv client" track="Name: /home/nickolay/Music/children-songs/xxx-xxxxxxx-xxxxx.mp3, Socket: /tmp/mpv-ctrl-ed38f1d6-3810-48dd-bb10-b35897ece8a1.socket"
level=debug msg="Checking if track is playing" track="Name: /home/nickolay/Music/children-songs/xxx-xxxxxxx-xxxxx.mp3, Socket: /tmp/mpv-ctrl-ed38f1d6-3810-48dd-bb10-b35897ece8a1.socket"
level=error msg="Problem getting paused status" error="trying to send command on closed mpv client" track="Name: /home/nickolay/Music/children-songs/xxx-xxxxxxx-xxxxx.mp3, Socket: /tmp/mpv-ctrl-ed38f1d6-3810-48dd-bb10-b35897ece8a1.socket"
level=debug msg="API: Successful response" endpoint=/rest/jukeboxControl.view requestId=argon/yBUWuPtrnN-000013 status=OK

@julienlag
Copy link
Author

julienlag commented May 11, 2024 via email

@ms140569
Copy link
Contributor

@julienlag Have you added your user to the "audio" group? Here's my service file which works on rpi4:

`[Unit]
Description=Navidrome Music Server and Streamer compatible with Subsonic/Airsonic
After=remote-fs.target network.target
AssertPathExists=/var/lib/navidrome

[Install]
WantedBy=multi-user.target

[Service]
User=schmidtm
Group=schmidtm
Type=simple
ExecStart=/home/schmidtm/prj/navidrome/fork/navidrome/navidrome --configfile "/var/lib/navidrome/navidrome.toml"
WorkingDirectory=/var/lib/navidrome
Restart=on-failure`

@cyberfarer
Copy link

cyberfarer commented May 12, 2024 via email

@julienlag
Copy link
Author

@julienlag Have you added your user to the "audio" group? Here's my service file which works on rpi4:

`[Unit] Description=Navidrome Music Server and Streamer compatible with Subsonic/Airsonic After=remote-fs.target network.target AssertPathExists=/var/lib/navidrome

[Install] WantedBy=multi-user.target

[Service] User=schmidtm Group=schmidtm Type=simple ExecStart=/home/schmidtm/prj/navidrome/fork/navidrome/navidrome --configfile "/var/lib/navidrome/navidrome.toml" WorkingDirectory=/var/lib/navidrome Restart=on-failure`

thanks, but none of this worked for me

@ms140569
Copy link
Contributor

ms140569 commented May 12, 2024

@cyberfarer @julienlag

Are you both trying to play static files? I'm loosing the overview which one is facing which problem. We might deal with multiple problems. I know this is already going on for some time, but could you guys please paste the relevant/last part of the logfile showing the error? Bear with me, Matthias.

@julienlag
Copy link
Author

@cyberfarer @julienlag

Are you both trying to play static files? I'm loosing the overview which one is facing which problem. We might deal with multiple problems. I know this is already going on for some time, but could you guys please paste the relevant/last part of the logfile showing the error? Bear with me, Matthias.

thanks @ms140569 for looking into this. You're right, this thread is getting difficult to follow
In summary: I'm the original issue poster, you can find my report above. Since the original report I have upgraded MPV to v.0.38.0 and navidrome to v0.52.5, tried all suggestions made by others in this thread, without success (i.e. I'm seeing the same MPV-related error messages in the log as originally reported). Happy to provide more details

@cyberfarer
Copy link

cyberfarer commented May 14, 2024 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug triage New bug reports that need to be evaluated
Projects
None yet
Development

No branches or pull requests