To silence patterns via OSC is a feature I really like. I think I have configured all the stuff properly and I can send /hush to Tidal so that it stops playing (or /silence 1, etc.).
However, I have to send two /hush OSC messages quickly after each other so that the hush has an effect. Just sending one has no effect.
I use TouchOSC to send OSC messages and so far I can inspect everything, it sends OSC messages reliably. And it also does not matter whether I send the OSC to localhost or from another machine to Tidal. It does not react on only one /hush.
Does someone has a hint how to dig into the details? Is there an option so that Tidal logs messages in a verbose style so that I can inspect where the single /hush might be swallowed?
Is this unique to /hush, or does sending /silence 1 also require sending two messages in quick succession?
There aren't really any options for extra logging here, but another thing to try is sending a message that's not implemented (such as /hsuh or something). Tidal should print a message saying that the message isn't supported or something.
And I do get it not every time I send /foohush. So some messages are swallowed somewhere before. Later today I'll inspect with Wireshark (running out of time ).
Any other ideas why not all /foohush propagate to the warning message?
Definitely check with wire shark whether there’s something happening with the network.
I’m terms of the Tidal side, are you doing anything strange with how you’re configuring Tidal in your boot script? I can’t think of how it could get this specific behavior, but it might be worth trying to reproduce by sending messages to a Tidal instance running with the default BootTidal.hs.
I never experienced time spans of 2 seconds until a reaction of the system showed up that lead to the timeout branch mentioned above. I see two options: either the timeout value is interpreted not as seconds, or the recvMessagesTimeout function returns Nothing before the timeout expires (my basic haskell knowledge tells me that this can't be the case since recvPacket in hosc package returns IO Packet).
I struggle reading through the fmap in recvMessagesTimeout. Maybe something is wrong there? Or the timeout interpretation