/RpiPythonCDPlayer

a simple cd player written in python made with raspberry pi in mind

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

Raspberry Pi CD Player (in python)

A simple and very lightweight cd player written in python (using vlc) made for raspberry pi (in my case Rpi 3b+, but it uses ~1.5% Cpu) with 1602 lcd and six buttons. I highly recommend using it inside a venv!

Why i made it?

Some time ago i made an amplifier using tpa3116 (i will put the shematic someday) to replace my cheap Panasonic. As i was suprised with change of quality event with same speakers i thought that it would also be nice if i made an cd player (i mostly play music from my cd collection). For ~1.5 year i was using either Volumio and Raudio. Why either? Each one has some problems, so i was changing from time to time. On Volumio cd playback is behind a paywall, nanomesher cd plugin runs cd drive too fast (its very loud). Raudio on the other hand tends to lag and interrupt cd playback. So i thought that maybe i would be able to make one. Yes, without a web interface, but lcd and buttons are even better for me.

Plan for nearest future

  • add webui
  • make display refresh only if something changed

Dependencies

Alpine linux

Recently I switched from raspbian to Alpine to reduce boot time. Tools like this really make it simpler to setup. However I was still struggling with gpio permision problems ( solution ), and needed to compile lgpio from source (script), but libiso9660 and libcdio-utils installation wasn't nessesary. Also idk why but I needed to change vlc.Instance() to vlc.Instance('--aout=alsa', '--alsa-audio-device=plughw:0,0'), because otherways it would play audio to dummy. Apart from that, everything works as it should.