Roon Extension: CD Ripper v0.4.0

I think this is a great idea!

I have this feature already built into the SonicOrbiter software on my NAS, where my Roon Core is also running. The CD/DVD drive, which is USB connected to the NAS, copies the CD into the same folder that the Roon Core is monitoring. The ripped CD then shows up immediately in Roon. If I need to change any meta data or album art once the ripped CD shows up, I use Bliss, which is also running on the Roon Core NAS.

It all works great, so for those who don’t already have this feature in their set up, I can highly recommend it!!

1 Like

I noticed this software has been discontinued. IT sounded like a very easy setup especially right from the NAS itself. We just installed Roon for a client and looking for a proper solution to rip new CD for him and go right to the path in the NAS.

Hi David. I believe that Audiostore (in the UK) and Small Green Computer (in the USA) are maintaining this software for their devices. I’m currently running version 2.6 on my Audiostore (formerly Vortexbox) appliance. Martin at Audiostore (+44 (0) 7585 808778) can probably help you out with this. Let me know how you get on. Hope that helps!

The first release of the CD Ripper is available now!

All details can be found in the first post of this thread, please read it completely including the Important notes!!

2 Likes

I have the latest extension manager running in docker station on QNAP nas but this does not show up. I take its not supported using QNAP container station?

@CrystalGipsy, same problem here on my Synology DiskStation. CD-ripper is not visible in the Extension Manager. I think it has something to do with the installation of the Extension manager as Docker container on the NAS. In the first post of this thread I find:

“Installation
Installing the CD Ripper extension requires version 0.10.0 (or higher) of the Extension Manager combined with a Docker installation. When this is available the CD Ripper can be found in the Tools category.”

I read here that the Extension Manager should be combined with a Docker installation. (I do not understand what is meant here.)

Furthermore, I find the following text in this link:

“NAS
The more powerful models of the Synology and QNAP NAS’es have container support. By creating a container for the Extension Manager and passing it the path to the Docker socket it will make the additional extensions available.”

Here I read that with creating the Docker container for the Extension Manager the path to the Docker socket should be passed. (Also here, I do not understand this.)

So combining these tips, I think there has something to be done with the Docker container installation of Extension Manager on our Nas’es…Probably @Jan_Koudijs can give us some guidance. @Jan_Koudijs, can you help us?

It should show up. I does on mine. Make sure you run the newest extension manager image. For docker extensions make sure you have the docker.sock mounted.

I think thats just make sure you run it using network config of host rather than NAT when creating the container. If you use NAT then it wont show any extensions as being available at all…

One thing I need to work out when this works is what device the dvdrom is mounted at as I cant seem to find it at all. It shows up as an external drive in the QNAP UI and I can give my VM control of it but its not mounted under the usual /sr0 or cdrom so no idea how I would pass it on to the extension. Any ideas?

No idea how to do that via container station, its all automatic, I have the latest version installed which is 10

There are extensions – like e.g. CD Ripper – that get distributed as docker image only. If docker is not available, these extensions don’t show up.

Yes, that’s this option: -v /var/run/docker.sock:/var/run/docker.sock

I got it to show up by ssh and running this
docker run -d --network host --restart unless-stopped --name roon-extension-manager --hostname Docker -v roon-extensions:/root/.RoonExtensions/lib -v /var/run/docker.sock:/var/run/docker.sock -e “TZ=” theappgineer/roon-extension-manager

No i need to work out how to get it to see the attached USB cdrom

The latest docker image is: v0.5.0-amd64 Last update: 2 months ago.

If your image is older, you should remove/delete your docker application and install new. You can use my docker compose I posted above. Go to Create, click on +Create Application (right side) and copy the docker compose instructions in the Create Application window.

Thanks, any ideas how to find the device path as to how the dvd/cdrom is mounted?

What ever path I enter for cd drive in the extension its not actually saving it so does not use it on install.

You could try by making an ssh connection to your NAS, connecting the external drive to it and then entering the dmesg command. At the end of the output you should see a reference to the device.

This is the output I get:

[ 1504.092708] usb 1-1.4.2: new high-speed USB device number 6 using ehci-pci
[ 1504.184240] usb 1-1.4.2: New USB device found, idVendor=093b, idProduct=0048
[ 1504.184242] usb 1-1.4.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 1504.184244] usb 1-1.4.2: Product: DVDR   PX-755A  
[ 1504.184245] usb 1-1.4.2: Manufacturer: PLEXTOR         
[ 1504.185025] usb-storage 1-1.4.2:1.0: USB Mass Storage device detected
[ 1504.186010] scsi host5: usb-storage 1-1.4.2:1.0
[ 1505.202340] scsi 5:0:0:0: CD-ROM            PLEXTOR  DVDR   PX-755A   1.06 PQ: 0 ANSI: 0
[ 1505.206793] sr 5:0:0:0: [sr1] scsi3-mmc drive: 40x/40x writer cd/rw xa/form2 cdda tray
[ 1505.207332] sr 5:0:0:0: Attached scsi CD-ROM sr1
[ 1505.208282] sr 5:0:0:0: Attached scsi generic sg8 type 5

So the device I’m using is /dev/sr1

The steps to take during installation are:

  • Expand the Docker Install Options
  • Enter the device path in the Optical Drive Path
  • Select the Install option from the Action pulldown, the listed action should be “Install CD Ripper (with options)”
  • Select the Save button

It wont see the drive at all
dmesg output gvies this so I assume its on /dev/sr0?

[163269.072706] scsi 14:0:0:0: CD-ROM Slimtype eBAU108 6 L PL0M PQ: 0 ANSI: 0
[163269.100619] sr 14:0:0:0: [sr0] scsi3-mmc drive: 24x/24x writer cd/rw xa/form2 cdda tray
[163269.110734] sr 14:0:0:0: Attached scsi CD-ROM sr0

I set the path in the Docker Install options

Install extension no Drive Found

how can I debug this?

Can you provide me the output of the following command?

docker logs roon-extension-cd-ripper

Depending on the amount of output, it might be wise to upload it somewhere and send me a link.

Please also provide the Docker version that you use:

docker --version

I had difficulties with drive detection with an older version of Docker (17.06), you might run into the same.

Docker on QNAP is Docker version 17.09.1-ce, build 0a5102e

docker log
-> REQUEST 0 com.roonlabs.registry:1/info
-> REQUEST 0 com.roonlabs.registry:1/info
<- COMPLETE 0 Success {“core_id”:“25e612ca-a515-4638-90e7-26b715971e80”,“display_name”:“Roon Music”,“display_version”:“1.6 (build 401) stable”}
-> REQUEST 1 com.roonlabs.registry:1/register {“extension_id”:“com.theappgineer.cd-ripper”,“display_name”:“CD Ripper”,“display_version”:“0.1.0”,“publisher”:“The Appgineer",“email”:"theappgineer@gmail.com”,“required_services”:[],“optional_services”:[],“provided_services”:[“com.roonlabs.settings:1”,“com.roonlabs.status:1”,“com.roonlabs.pairing:1”,“com.roonlabs.ping:1”],“website”:“Roon Extension: CD Ripper v0.1.0”}
<- COMPLETE 0 Success {“core_id”:“f7e4028a-6c5a-4ce3-8ef4-400a66bfc62c”,“display_name”:“MASTERCHIEF”,“display_version”:“1.6 (build 401) stable”}
-> REQUEST 1 com.roonlabs.registry:1/register {“extension_id”:“com.theappgineer.cd-ripper”,“display_name”:“CD Ripper”,“display_version”:“0.1.0”,“publisher”:“The Appgineer",“email”:"theappgineer@gmail.com”,“required_services”:[],“optional_services”:[],“provided_services”:[“com.roonlabs.settings:1”,“com.roonlabs.status:1”,“com.roonlabs.pairing:1”,“com.roonlabs.ping:1”],“website”:“Roon Extension: CD Ripper v0.1.0”}
<- CONTINUE 1 Registered {“core_id”:“25e612ca-a515-4638-90e7-26b715971e80”,“display_name”:“Roon Music”,“display_version”:“1.6 (build 401) stable”,“token”:“6dd8fd7e-3771-48c0-9920-2fa47dcdddd2”,“provided_services”:[],“http_port”:9100}
<- REQUEST 1 com.roonlabs.status:1/subscribe_status {“subscription_key”:“160”}
-> CONTINUE 1 Subscribed {“message”:“Drive scanning in progress…”,“is_error”:false}
<- REQUEST 2 com.roonlabs.pairing:1/subscribe_pairing {“subscription_key”:“161”}
-> CONTINUE 2 Subscribed {“paired_core_id”:“25e612ca-a515-4638-90e7-26b715971e80”}
<- CONTINUE 1 Registered {“core_id”:“f7e4028a-6c5a-4ce3-8ef4-400a66bfc62c”,“display_name”:“MASTERCHIEF”,“display_version”:“1.6 (build 401) stable”,“token”:“eb20cddf-3a3a-40c1-a35d-5815f06478e1”,“provided_services”:[],“http_port”:9100}
<- REQUEST 1 com.roonlabs.status:1/subscribe_status {“subscription_key”:“41”}
-> CONTINUE 1 Subscribed {“message”:“Drive scanning in progress…”,“is_error”:false}
<- REQUEST 2 com.roonlabs.pairing:1/subscribe_pairing {“subscription_key”:“42”}
-> CONTINUE 2 Subscribed {“paired_core_id”:“25e612ca-a515-4638-90e7-26b715971e80”}
stderr: “CRITICAL:whipper.command.drive:no drives found. Create /dev/cdrom if you have a CD drive, or install pycdio for better detection”
-> CONTINUE 1 Changed {“message”:“No drive found!”,“is_error”:true}
-> CONTINUE 1 Changed {“message”:“No drive found!”,“is_error”:true}
whipper exited with code: 0

Looks similar.

Please try the following.

  • Update the Extension Repository to v0.3.1
  • Uninstall the CD Ripper
  • Connect and power the external drive, it should be available during install
  • Install the CD Ripper and provide the Optical Drive Path twice (new Repeat field) (/dev/sr0 in your case)

I guess this is one of the rough edges I promissed you :wink:

Still no joy. :frowning: