K3B is a powerful CD/DVD burning program available for Ubuntu. It can burn a DVD or CD, and it can even create audio CDs from MP3s with no extra effort.
If you run Kubuntu, K3B is already installed by default. To install K3B on Ubuntu, Xubuntu or Edubuntu, you need to install the k3b package.
MP3 decoding in K3B
K3B does not come with MP3 decoding support out of the box. Depending on your version of Ubuntu, you will need different packages.
For full functionality, install the following packages: libk3b2-mp3 sox transcode vcdimager
Installing the k3b-mp3 package will enable it.
Using cdrskin instead of cdrecord
Normally, K3B uses the cdrecord program to actually write to a CD-ROM. Since cdrecord does not work with some drives (especially SATA drives, apparently), you may want to try cdrskin instead. cdrskin is a cdrecord-emulation on top of libburn. To do so, follow these steps (mostly found at http://scdbackup.sourceforge.net/k3b_on_cdrskin.html):
Install libburn2 and cdrskin. If you cannot find these packages, add the following to /etc/apt/sources.list: deb http://mrpouit.tuxfamily.org edgy-pouit backports contrib (if you use dapper, replace edgy-pouit with dapper-pouit)
- Open K3B and open the "Configure K3B" dialog from the "Settings" menu; Select the "Programs" section and go to the "Search Path" tab.
Enter /usr/bin/cdrskin in the input field at the top, click "Add", then "Apply" at the bottom.
- Go to the "Programs" tab of the dialog and look for cdrskin in the cdrecord section. Select it, press "Set Default", then "Apply" at the bottom. If you do not see cdrskin anywhere, try closing and re-opening K3B, it should show up then.
- Try to burn a CD (use simulation mode if you like).
If you get errors, you may have to establish "address translation" so cdrskin accesses the correct device:
From the error message (or debug log), find the bus address of the device K3B wants to use (typically 0,0,0 or 1,0,0 or something similar).
On the command line, type sudo cdrskin --devices to see a list of available drives (usually just one or maybe two). Identify the writer you want, and remember the device name from the section that said dev="xxx" (typically, this would be /dev/sg1 or something similar).
In the "Programs" section of K3B's configuration dialog, go to the "User Parameters tab". In the line for cdrecord, enter the following: -v dev_translation=+<bus-address>+<device-name> - that is, for example: -v dev_translation=+1,0,0+/dev/sg1