"Smartifying" my hi-fi system
blog.rgsilva.com
blog.rgsilva.com
Great work OP!
It was a very fascinating read, too. I enjoyed how descriptive he was throughout (not exactly implementing the same thing though, haha.)
Besides that it contains a wealth of information on related and dervative topics for future reference. Great stuff, the world needs more of this.
So you can run Spotify on your desktop, and control it from Spotify on your work laptop.
When multiple Spotify clients connect to the same Connect session, they collaboratively control the music that plays on the clients that are acting as speakers.
It's the state of the art when it comes to built in remote control systems among the various music services. Other music services do have similar capabilities, but Spotify's is for now, unrivaled.
Here, the author wants to do this thing, so they do it. They're not shaving yaks, they're doing the thing they set out to do.
- Reverse engineering and fixing a streaming app
- Bypassing anti-cheat software
- Reverse engineering and fine-tuning Asustor NAS fans
- Reverse engineering Asustor's NAS firmware
- Reverse engineering my NAS fan speed sensor (sort of)
- Reverse engineering Positivo's smart home app
- I got bored, so I hacked my TV
(speaking of yak shaving, do you know of the Yakalo¹, a cross breed between a yak and a bison?)
I think they mean the physical skip buttons on the device. By presenting it as a USB device the skip buttons can work on device.
Except that: "My main next steps, in no particular order, would be... Detecting track navigation: if you go to the previous or next tracks, emit a signal to somewhere. This would allow triggering a track change on the stream source, such as Spotify."
What was wrong with plugging the laptop into the hi-fi system via the 3.5mm port or a USB DAC? Maybe I don't understand just how dumb this hi-fi system is..
[Honest question, thanks HN!]
For those who want to hack a little less, I’ve found that a HiFiBerry[1] on a Pi works excellently for me[2].
[1]: https://www.hifiberry.com/
[2]: https://blog.yossarian.net/2022/11/07/Modernizing-my-1980s-s...
In the latter case, Voicemeeter makes it possible to fill the house with near-perfectly synchronised sound.
In the former, I can throw and control files from my mobile, using Bubbleupnp.
Both good. But there is a big part of me that wants the amp to work on its own. Smart is most definitely not always the answer. Being unable to fiddle with a thing from your main devices can be a big QOL win. And frankly, one afternoon screaming at an Echo Dot was enough. Invasive, demanding, awkward, restrictive.
I feel that in many cases the big wins from modern tech came over a decade ago for me.
I've dropped my interest in most smart / streaming devices - too much choice, too much distraction and advertising. Smart lightbulbs, I will make an exception for - far easier than fitting old style dimmers.
I wish there was some equivalent still available.
The only issue I've had with mopidy in general was getting it to work with Spotify. The API changed recently, and doesn't seem to work anymore via raspotify. I set up Tidal instead, and was good to go in ten minutes.
Also, you can send the output to snapcast and have multiple devices in separate rooms playing music synchronously.
There are various web-interfaces, or just use MPD to control the mopidy server.
I really want to start some sort of hackathon, like the "stupid shit no one needs and terrible ideas" hackathon. I love this kind of hacking entirely for the fun of it, and this reminds me to write up my bubble drone. We'll done OP!
Employers laptop -> (if newer laptop with no 3.5mm audio, cheap USB DAC) -> 3.5mm analog -> hifi analog input -> your ears
I wouldn't waste money on an expensive DAC. As I mentioned above... 320Kbps lossy audio. No point in a crazy DAC. No point in going through hoops to use your existing DAC.
Can confirm yak shave as commented by another. Full yak shave. I looked it up.
Or you can just buy one of these: https://www.wiimhome.com/wiimpro/overview (review: https://www.theverge.com/2023/2/8/23571271/wiim-mini-multi-r... )
It is going to let you stream everything on virtually any service, it has AirPlay, Spotify, Bluetooth, whatever... and it will output analog using the internal DAC or you can choose to hook up an external DAC if you like.
It's cheap, there is a simpler version, and a more feature rich version.
Or if you walk in to a HiFi store you'll probably walk out with one of these https://www.bluesound.com/products/node/ (but IMHO the WiiM is better).
And if you really want to go and put something OSS together then there are Raspberry Pi equivalents.
I am very into good speakers and a good traditional amp and keeping my DAC separate and my streamer separate from that... but it doesn't have to be hacked together (though knock yourself out if you so desire) and it doesn't have to be "audiophile" expensive either. Every good stereo that served you well for many decades can continue to serve you well with a cheap external streamer.
The only place where audiophile tendencies might kick in if you really want your lossless 96/24 playback (why? you can't hear it!) and you read up and discover that actually your digital path was capped somewhere along the line (probably an older TOSLINK component at 48/20)... but still, no-one has to do this, no-one will hear the difference.
I love the pure hack value and I'm sure some of the lessons learned will prove useful since the author mentioned working on USB things in their day job, but I'm sure there's an easier way to control Spotify on one PC from another device. I think they used to even have a remote control device.
It's also good for listening to radio station streams. I've got another Echo whose microphone is on. I can ask Alexa on that or in the Alexa app on my phone or tablet to e.g. "listen to KUOW FM on Dot".
My Denon A/V receiver predates voice control support (its from 2012 or so), but it does have a network connection with a few control options (TELNET, HTTP). I've got a program running on an RPi that can use the receiver's HTTP interface to get the current input/volume/mute settings, and to change inputs, set volume, and mute/unmute.
Apple's "Shortcuts" app on Mac/tablet/phone supports a "run script over SSH" action. I've used that to make a bunch of shortcuts: "Denon Dot", "Denon TV", "Denon Game" to select some sources; "Denon Status" to get the current settings (which the shortcut speaks); "Denon Mute" and "Denon Unmute" to mute/unmute; "Denon Up" and "Denon Down" to slightly adjust the volume; "Denon Set 30", "Denon Set 35", "Denon Set 40", ... to set specific volume levels.
Saying the name of a Shortcut to Siri invokes that Shortcut.
So putting it all together, A couple voice commands to Siri on any of my Apple devices will switch the receiver to the Dot and set the volume, so it is ready for streaming radio or for Spotify, and if it is radio I want a voice command to Alexa will start that.
This has covered pretty much all my "smart" A/V needs, so I can probably happily keep using my existing receiver for quite a while.
also my research says you can get an airport express gen 2, which has a 3.5mm audio plug. you can use airplay 2 to stream media to it and whatever speakers you have plugged into it.
just bought a pair on ebay for ~$30 per
Spotify max bitrate is 320Kbps compressed lossy audio.
If the physical buttons on your player induce euphoria with every touch and this feeling in no way is lost to hedonic adaptation... This project could be defended in the court of hackernews.
It sounds like you learned a lot during this. That is good. I am glad for you. I have done similar things. They made similar levels of sense(arguably approaching none).
Not for nothing, if you actually care about the 'fidelity' part of hi-fi... Meh... I'm glad you had fun bro. I wish I could waste such time without endless guilt. Maybe in another life.
I don't know enough about the subject of this particular article to say if this is the case here, but personally I think doing something that's a poorer version of a cheaper off-the-shelf solution is a bit of a waste of time, but if they're doing something different, that's really interesting to me.