Yes, we have lossless audio formats that can preserve and reproduce audio without any loss. No, enthusiasts who collect CDs are not going to give up their discs no matter how much that technology exists. And so we come to the Chad Boughton channel, who decided to take his Klipsch speaker and connect it to an ultra-slim external DVD reader, using a Raspberry Pi as an interface.

Transforming an External Optical Drive into a Standalone CD Player
Transforming an external optical drive into a standalone CD player

Lost in one of many threads dedicated to audiophile hardware, I found a curious comment: “The best audiophile optical disc player is nothing more than an old DVD player.” And from a certain point of view… the idea is not that crazy. A player with optical/Toslink or digital/coaxial output is more than enough to connect to a good alternative DAC and extract audio. So, why not do the same with external optical drives for PCs? At this point someone might say “Just use a computer”, but Chad Boughton followed another path:

An Ultra-Slim CD Player, ft. Raspberry Pi

The story begins with a Klipsch The Three speaker (technically a “tabletop stereo”), which includes WiFi, Bluetooth, auxiliary analog inputs, and most importantly, a “Digital In” for audio via USB. But Chad wanted something more: a CD player thin enough to be installed on the bottom of the speaker. After looking for solutions on eBay, he remembered he had an external DVD writer still in its original box. Its size was perfect, however...

Transforming an External Optical Drive into a Standalone CD Player
The top of the reader

... there is no way to extract audio directly from those units. In an era, CD readers had physical buttons to play audio, but their digital-to-analog conversion is nothing compared to more modern systems. Keeping the idea of an ultra-slim system as the main goal, Chad took a Raspberry Pi 3, removed its USB and Ethernet ports, and connected the writer to the PCB. Another USB cable comes out of the unit and goes to the “Digital In” input of the speaker.

Transforming an External Optical Drive into a Standalone CD Player
The connections, a closer look. Chad still has to explain his software configuration process.

Obviously, an element is missing from the whole equation: software. Chad said he will publish a guide later, but in relaxed terms, he set up an operating system with the bare minimum to detect the writer, set the speaker as audio output, and run VLC, using its console commands. That's not all: he also connected an infrared sensor to the Raspberry Pi's GPIO, and mapped the remote control commands that come with the speaker to commands for play, pause, and track change.

In short, it's a work in progress, but it's much more elegant than it seems, and it achieves “bit perfect” playback without spending thousands of dollars.

Source: Hackaday