Well, my Seeburg 1000 project for Raspberry Pi is complete…for now.
I ended up getting a 320x240 TFT display HAT with a case. This would allow me to do nice graphics or display video if I wanted, but all I needed was a terminal display.
After a day or two of faffing about with Python, figuring out how to use “curses” and how to best interact with “mpc” (client for “mpd”), my home-brew Raspberry Pi “Seeburg 1000” is up and running.
Here it is, playing some Christmas music
A different angle
The four hard buttons on the case are set up to trigger the events I show on the display. There is no real need to stop or start, I just plug the thing in and it starts as soon as Raspbian boots.
I put some code in .bash_profile that checks if it’s the TTY connection (the TFT) and auto-launches the app on boot.
Here it is in-situ, next to the real Seeburg 1000 machine.
The box in the middle, with wires, is an A/B switch that chooses between the Fake and the Real machine output. The Real machine plays the real records, while the Fake machine plays mp3s ripped from those very same real records. Same-o-same-o, but it’s way cooler to listen to the Real machine.
That A/B box sends its output to a Bluetooth broadcast device with 300 foot range.
So I can take my handy Marshall Bluetooth speaker wherever I want and listen to my stale old background music.
Why did I go through so much trouble to re-invent the MP3 player? Because this weird niche case of the Seeburg music makes me want to have extra control over what happens when I press various buttons. And I like the idea of a standalone gadget with no network connection that closely emulates how the real machine functions–some day I might go as far as to modify the program to work with album sides only, since that’s all the control the real machine gives.
By its very nature, you cannot identify the songs on the records–the records are typically labeled with a date and a record number (position in the stack), but nothing more. The 15-20 tracks are a mystery; it’s a big game of “Name that tune” as one listens.
Occasionally there is a song with a bad scratch, or a song I detest, so I hit the “skip” button. I have written code so that it acts like the “thumbs down” button in Pandora and makes sure the song is never played again, while adding an entry to a “badsongs.txt” file, so I can go back and find them if they were simply songs that needed cleanup in Audacity.
Likewise, I love some of their bass lines, so when I hear one of those unnamed (and thus unfindable) songs, I hit the “like” and that makes an entry in the “goodsongs.txt” file.
(There are all kinds of other quirks, but I’ll stop rambling on about my weird niche hobby for now.)