Open dpo opened 1 year ago
FWIW, in the log file, the one named "Office" is the older Connect:Amp (this one]. The one named "Living Room" is a new Connect:Amp (this one].
Here's an additional clue: if I run the executable directly from the command line with no specific options, I can connect to the older Amp from macOS. If I try to connect from iOS, it fails, and subsequently, trying to connect from macOS also fails (as happens when run as a service). However, trying to quit the program with C-c or exit
does not work. The program hangs at
^C[10:52:59.860351] Stop:1148 terminate update thread ...
[10:52:59.860365] Stop:1153 flush renderers ...
Here's a log with debug information turned on in hopes something in there may be useful: https://gist.github.com/dpo/533db2a30ca044261ea69268a80b281f
Isn't there more in the log? Best is to compress and attach it
There's nothing else in the first log. The second log keeps getting added to, but as I mentioned, when I try C-c or exit
, the program hangs.
But there is not even a playback session in that log
That's because I can't get connected. I can play from the Mac if I don't try to connect from iOS first.
Is there any additional info I can post to help?
So if you launch manually the app, don't get any iOS to connect can you type exit on the bridge command line and does it exit. Then can you confirm that after one such successful connection, you cannot exit anymore.
It's likely a player that is stuck in a infinite wait loop and I have a few ideas where but I'd need to be more precise to not waste too much time
Here are the results of the experiments you asked:
exit
. Result: the app exits normally. Log: https://gist.github.com/dpo/9a484730d56c0d55be62c5507a7477f0exit
. Result: connection OK, playback OK, app exits normally. Log: https://gist.github.com/dpo/d047b8641140ecb7d9ebf7c1471639b5launchctl unload
to stop the service. I restarted it but was not able to connect either. I eventually stopped it.exit
at the command line fails to exit. Log file: https://gist.github.com/dpo/1b2e1e9ef0989ebf8e4f5e8bd606cf53.I don't believe anything changed on my system between yesterday and today. There were no OS updates.
I hope the above is helpful. If you would like me to run more experiments, please let me know.
Thank you.
Do you have some kind of firewall running on that Mac? The failure to connect and exit both point toward the same cause : the RTSP server is listening on a socket that is blocked from being accessed. It prevents iPhone or iPad to access and it also prevents the exit to happen because exiting requires an access to that same server.
Ok - I've changed the way I wait for incoming connection, using a busy loop instead. There are pros and cons in doing that, but at least it should be more foolproof in term of system locking app because of obscure accept() failure.
Anyway, can you give a try to 1.0.17?
I downloaded 1.0.17 but it gets killed immediately upon launch by the OS:
~/bin ❯ ./airupnp-macos-arm64-static ✘ KILL 17:52:49
zsh: killed ./airupnp-macos-arm64-static
can you try the x86 version?
YEAH! Amazing! So far so good. I can play from both macOS and iOS. I can switch back and forth, and typing exit
closes the program normally. Thank you!!!
I'll keep using it and report back if there are any more issues. Thank you so much!
You're welcome. I don't know why the arm64 has an issue, it's my usual build system
Bad news. I'm back to the same place. This morning, I could not connect from either macOS or iOS. I unloaded and reloaded the service. I can connect from macOS, but not from iOS. The behavior is the same if I launch from the command line. However, typing exit
exits cleanly.
As in my original message, a failed connection from iOS makes it impossible to connect from macOS afterwards.
Perhaps it has something to do with going to and waking from sleep?
Log: https://gist.github.com/dpo/b2797102be125fa1dcc922a6c958b332
It's not a log
Apologies. Here's a log: https://gist.github.com/dpo/f6552c6bf8b5f1b684d6f28fc4f7878e
Today I could connect from macOS, but not from iOS. The playbacks in the log file are from macOS. There was no successful connection from iOS. Please let me know what else I can provide to make debugging easier.
I just tested the latest releases (both arm4 and x86_64). They both work fine on the Mac. I'm still unable to connect to my older Sonos Amp from iOS, but at least attempting to connect no longer blocks access for the Mac.
Hi. First of all, many thanks for developing this bridge, which is a life saver!
I'm on a M1 Mac running macOS 12.6.3. I have
airupnp-macos-arm64-static
from themaster
branch running vialaunchctl
. When I first load the service, my Sonos Connect:Amp (an older model) becomes available, and I can connect to it from macOS without any problem.However, if I try to connect to it from my iPhone or iPad via AirPlay, two things happen: 1) the connection is never established 2) I can no longer connect to it from macOS either afterwards.
I monitored the log file, but no messages are logged as the iPhone/iPad is trying to connect, or as macOS tries to connect afterwards.
Using
launchctl unload ... / launchctl load ...
again refreshes everything and the Connect:Amp becomes available again from macOS.It used to be (at least in my case) that running your bridge would make the Sonos Connect:Amp available to iOS devices via AirPlay.
I should mention that I recently changed router, and that may be the issue.
What would be your recommendations to try and debug this situation?
For what it's worth, here's my log file: https://gist.github.com/dpo/a69d32b5a50b13315f9c571c0e06e6c7
Thanks in advance!