What I do:

I record and mix audio using Ardour or Harrison Mixbus. Most of the time now, I don't need to create an master audio cd: bands ans artists are happy enough with audio files. Providing them with high quality .wav files, and some mp3 or .aac is enough nowadays.

However, for a new project, I will have to do again a master audio cd. It is used as a reference to press audio cd.

The issue:

In the past, with Ubuntu or Ubuntu Studio, I used gCDmaster, a GUI for cdrdao. It is not available anymore in repositories, for a long time.

With Ardour or Mixbus, I can export one long .wav file and the .toc description file.

So I am looking for a burning software that:

  • can import one long .wav file, or many short .wav files
  • can import .toc or .cue files for tracks information
  • can edit and save tracks informations (e.g: cd text)
  • can burn the cd at lowest speed possible for the burner (less errors possible)

Any idea ?

(Brasero and k3b can not do that)

  • did you try k3b ? – JoKeR Mar 31 '15 at 19:37
  • will k3b install al lot of dependencies, like other KDE applications ? – ttoine Mar 31 '15 at 20:09
  • not much look at my answer here askubuntu.com/questions/588384/… it referes to different question but to audio also. – JoKeR Mar 31 '15 at 20:18
  • this is not at all the same kind of issue... – ttoine Mar 31 '15 at 20:21
  • 1
    why don't you install gcdmaster then? – JoKeR Mar 31 '15 at 20:43

You can keep on using cdrdao, without a GUI, from the command line.
In theory, it should be as simple as:

cdrdao write album-master.toc

but in practice, it turned out to be a bit more complicated than that. Here's what I had to do:

  • simulate - Before anything else, let's use simulate instead of write. It'll avoid ruining a CDr if an error occurs. We'll revert back to write once a simulation has completed with success.

  • device - Next, it can't hurt to specify which drive you want to use. cdrdao scanbus will list your drive(s) address(es). I wanted to use /dev/sr0 so added this to the command: --device /dev/sr0

  • driver - By default cdrdao uses the generic-mmc driver, and by default this driver doesn't write CD-TEXT. We have to specifically state that we want to also burn the text by setting the driver bit to 0x10 like this: --driver generic-mmc:0x10

  • speed - I haven't used that option as cdrdao detects the speed of the drive automatically, but if you want you can add --speed 4 to the command to force your drive to write at that speed (mine won't go below 16).

So now the command looks more like this:

cdrdao simulate --device /dev/sr0 --driver generic-mmc:0x10 album-master.toc
  • Ardour's TOC - cdrdao can be a bit sniffy with the toc files generated by Ardour(5):
    • If you used the Performer field in any of Ardour's CD markers, then it has to be filled in for every track, otherwise cdrdao fails.
    • We have to open the toc file in a text editor to manually edit the TITLE and PERFORMER of the whole cd, located in the first CD_TEXT block (but do not add a COMPOSER entry there or cdrdao will fail).
    • Whilst we're here, Ardour hardcodes the wav file location which means that if we ever move the .wav and .toc files to a different folder/device, cdrdao will not find the .wav file and fail. So it's worth doing a quick search-and-replace-all:
      FILE "/home/xxxxx/ardour/album-master/export/album-master.wav"
      FILE "album-master.wav"

If the simulation now runs successfully, you can replace simulate by write and be on your way. In my case I had to work around a couple more bugs:

  • Bugs
    • For some reason when opening a session, Ardour seems to convert my first CD marker to a Location marker, which then messes up the exported TOC file. So I have to fix that every time before exporting.
    • I kept the most annoying/weird bug for last. cdrdao kept failing with this error:
      ERROR: Cannot set write parameters mode page.
      and telling me to Please try to use the 'generic-mmc-raw' driver.
      But changing the command to --driver generic-mmc-raw would also fail, this time with a different error:
      ERROR: Write data failed.
      Then sometimes, seemingly at random, everything would work perfectly and I could write as many cds as I wanted.
      Eventually I worked it out: first run the command once with --driver generic-mmc-raw, let it fail with the Write data failed error, and after that the command with --driver generic-mmc:0x10 works fine. Go figure...

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.