Project Description

In case you're a music lover and collector, you may know the pain of ripping your music collection to audio files. In the meantime, I found a ripping software, that supports most, if not all, features I want from a CD ripper: - supports ripping to flac and a lot of other formats - supports Musicbrainz to get metadata - supports accuraterip to ensure the rip is exact and accurate

The software I'm talking about is whipper, but I want to automate some of the tasks required to create a rip of my disc - and for this I want to create a web-interface and maybe an API with a couple of features: - show the search results from the musicbrainz database, so you can easily pick the right release you have - support adding new releases or discs to musicbrainz, this is what I'm doing a lot while ripping CDs - support to scan the barcode on the disc for lookup, and allow to support other databases if musicbrainz does not know the CD - while storage on network shares is easy - support for arbitrary commands to import the data into your colleciton, like beets.

So in the end, I want my wife to be able to do accurate CD rips with correct metadata attached to the files, by just pulling out her smartphone and using a web-application.

I plan to do this using Flask, as I already have some beginner level experience with it. Udev can tell me, when a new disc is inserted, so this should be a good starting point.

Looking for hackers with the skills:

Nothing? Add some keywords!

This project is part of:

Hack Week 20


  • about 3 years ago: mkubecek liked this project.
  • about 3 years ago: MMoese originated this project.

  • Comments

    • alarrosa
      about 3 years ago by alarrosa | Reply

      Have you used Picard? Once you have your flac files ripped with whipper (or any other app) you can use picard to lookup information from the CD on /dev/cdrom or scan your barcode with your phone and an android app developed by one of Picard's developers (note that picard and the phone have to be on the same network and port 8000 should be accessible). Picard automatically adds all correct tags from MusicBrainz and can move/rename the files to the right location in your collection at the same time.

      I mention that because Picard is also written in Python so maybe you can use some of its classes in your backend.

      Just in case it helps, some time ago I wrote some documentation on how I use picard and how I have it configured as part of my music manager application here.

    Similar Projects

    This project is one of its kind!