cropped-wordpressjukeboxarch5.pngConvergence Jukebox 2 is open source Python based software that has been written to emulate a “retro” style jukebox. The type of jukebox that was popular in bars, restaurants and recreation areas during the 1950’s and 60’s. The initial release version of Convergence Jukebox runs on a Windows based computer with Python 2.7 installed. The Convergence Jukebox source code is distributed from its GitHub page to encourage others to further modify the software, adapt it to other platforms and to add features.

Written from scratch over the past five years by Brad Fortner of Convergence Communications, Convergence Jukebox plays properly formed ID3 tagged mp3 media. On May 16, 2017 Convergence Jukebox 2 was released which built upon original source code but switched from a Tkinter based GUI to one constructed using Kivy.

The Jukebox can be controlled for “personal” use by your computer keyboard but is better operated with a USB keypad such as a Pi Engineering USB keypad. Its output resolution is modifiable allowing it to connect to inexpensive computer, laptop or TV displays with its “retro look and feel”. It can even be connected to bill, coin or card acceptors such as a WeaveFuture Coin Acceptor via USB for “pay to play” situations.

Convergence Jukebox 2 is written in Python allowing it to be cross platform. It is licensed with a GNU V3 General Public License that guarantees end users (individuals, organizations, companies) the freedoms to run, study, share (copy), and modify the software. It’s perfectly suited as a Jukebox software base for the Maker community as it can be easily modified and adapted.

Convergence Jukebox Inspiration

The inspiration for Convergence Jukebox 2 came from the Arcade Jukebox 8 developed by Mark Schwarty. http://www.arcadejukebox.net. “I actually used Arcade 8 Jukebox at home for some time and really thought it was great,” explained Brad Fortner developer of Convergence Jukebox. “Eventually I discovered that the Arcade Jukebox 8 had some undocumented features that I couldn’t figure out. With no documentation I tried contacting the developer Mark Schwarty but based on his lack of updates it was obvious he had stopped developing it. I did eventually write some additional functionality on top of Arcade 8 Jukebox using Autohotkey which made better use of its keyboard functions.”

“I was surprised to find out how Arcade 8 Jukebox was constructed with Director, ” Fortner went on to say. “Arcade 8 Jukebox is actually a compiled Macromedia Director movie which is a proprietary language. I even tried to decompile Arcade 8 so I could learn more about it but that was to no avail. In the end I decided it would be best to build my own Jukebox from scratch. It derives it’s name Convergence Jukebox from my consultancy, Convergence Communications.”

“The limitations I found in trying to improve Arcade 8 was the main reason I chose to use and learn Python,” Fortner continued. “Python is an open and readily available language that’s relatively easy to learn. It’s also the reason I decided to release Convergence Jukebox 2 under the GNU Public Licence. That means no matter what I decide to do with it the code, it will remain open for makers, developers, hobbyists and/or Companies to add to it. My hope is that when I lose interest in it, the code will have taken on a life of its own and anyone who wants to work with Convergence Jukebox won’t experience the same limitations I did when trying to modify Mark Schwarty’s Arcade 8 Jukebox. I’ve peppered the source code with links that will help developers understand on what I based my code choices on and I’ve done my best to write the code to Python’s PEP8 style guide that standardizes the format of the code so Python programmers can easily build upon the code base.” Fortner concluded.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s