-
-
Notifications
You must be signed in to change notification settings - Fork 52
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
Windows: TLS versions above 1.2 not supported by shipped libmpv-2 #520
Comments
Hmm, that is weird. My guess just based on the description here would be some kind of firewall issue. But unfortunately there isn't a way for you to get logs on Windows right now unless you build from source, because for some reason Windows doesn't allow a console to be attached to a program once it's "packaged" as a GUI app, and Supersonic logs to the console. I really need to set it up to log to a file instead on Windows. I'll ping you here once I've done that and you can test with the latest Github Actions build |
I've added logging to a file for Windows. If you download and run the build here https://github.com/dweymouth/supersonic/actions/runs/12611691028 it should generate a |
Thanks for the work on this! Unfortunately it looks like the logs are missing playback info:
I've been trying to avoid having to set up the dev env myself but I think that's probably the best course for now. Let me see if I can poke around there. Also let me check if there's any logs on the server that might be interesting, since I haven't done that yet. |
Oh, that's what's happening
What's really weird to me about this though: I'm able to connect to the server and populate metadata. How come there are two different TLS specs in use here? |
MPV vs the Go http client I guess? The stream urls are passed directly to MPV for playback. Are you able to invoke mpv from the command line with one of the stream URLs? |
I realized with some semi-recent refactoring, I stopped logging playback errors, so a commit is incoming to add them back |
One possibility - maybe the version of libmpv-2.dll which is packaged with Supersonic is too old (admittedly it is old, I pulled it from a different project and haven't changed it in 2 years since I started Supersonic). If you're able to find an updated libmpv-2.dll or mpv-2.dll, possibly from mpv's sourceforge page(?) (rename to libmpv-2.dll if required) and drop it in, maybe it would solve it? |
Oh, is that where it's from? I noticed that the windows build action is pulling a pretty recent version of openssl and mpv from mingw, is there a way we could just pull the dll from there? Should be at Let me do a quick test |
IIRC, the one from mingw isn't statically built, and depends on a few dozen other little DLLS, which are all present in the mingw installation, but would all need to be distributed together when packaging. Especially since portable mode is supported, having a single monolithic DLL was preferable. |
Ok, so I've unblocked myself in the mean time by allowing TLS 1.2 on my Navidrome server and everything is working. When I have more time later I'm happy to try to take a stab at getting a new libmpv compiled, though I have to admit C toolchains on windows aren't my forte |
Supersonic: v0.13.2
Windows: 11 23H2 22631.4602
Navidrome: 0.54.3 (734eb30a)
I use supersonic on a few different platforms with my own Navidrome instance. It works just fine on Linux and MacOS, but for some reason I'm unable to start playback on Windows 11. Pressing the play button will change the play icon to pause for a few seconds, but then it will revert to the play icon and no song will start.
What makes this even weirder is that I just tried the Navidrome demo server and playback works. I've verified that it's not related to file formats; I can play mp3s from the demo server but not my own server. I've also played around with selecting different engines in the output selector (sdl vs openal) and turning off server transcoding with no luck.
Is there any way I can collect logs or get more info? Launching the installed version from Powershell / cmd doesn't seem to be giving me any output.
The text was updated successfully, but these errors were encountered: