FAQ for X-CD-Roast Version 1.18

Updated: 18.04.2018

German FAQ by Mathias Büttner

(Russian Version for 0.98alpha13 thanks to Anton Borisow)
(Belorussian translation for 0.98alpha15 (external link) thanks to Paul Bukhovko)
(Hindi translation of this page (external link) thanks to Nikol Barton)

Also check out the X-CD-Roast manual for basic usage instructions. This is slightly outdated, but still contains valuable information.

Overview:


1. What is X-CD-Roast and who is working on it?

X-CD-Roast is a graphical user interface (GUI) for the command-line cdrtools. You can do anything X-CD-Roast does yourself using these tools - but it's nicer and easier with the front-end. The cdrtools contain "cdrecord" (does do the hard job supporting all the writers and is doing the actual writing of Discs), "readcd" (reads data tracks of Discs - it's a portable replacement of "dd"), "mkisofs" (masters Disc images from given file trees on the hard disk) and "cdda2wav" (reads audio tracks). cdrecord, readcd, cdda2wav and mkisofs are maintained by Jörg Schilling and X-CD-Roast by me, Thomas Niederreiter.


2. I have a Blu-ray Disc writer. Can I burn BDs with X-CD-Roast?

The cdrtools do support it, but in X-CD-Roast the extensions for writing Blu-ray Discs have not been written yet. Nevertheless you can write CDs and DVDs with that device.


3. I changed something on the hardware and X-CD-Roast no longer sees the correct devices!

Starting with version 0.98alpha14 X-CD-Roast no longer scans devices at each startup. The devices are only scanned the first time and then saved into your configuration file. If you changed something on your hardware then the device names might got changed. You have to tell X-CD-Roast to rescan for devices (first panel in the setup menu) and you have to save the new configuration.

If you use the "user-host-mode" then all users and the root as well have to rescan devices. If you forget to rescan as root then the devices the root saw at his first startup are loaded every time, even when you re-scanned as normal user later.


4. I use an external USB CD/DVD/BD Writer. If I plug it into my notebook while this is already running, it works perfectly. But if I first plug in that USB Disc Writer and then boot the notebook, X-CD-Roast does not handle it.

Unfortunately, your notebook assigns the USB devices in both cases differently because there is another internal USB storage device (e.g. a card reader). You need to manually add your optical drive again in the Setup -> Device-Scan, so that you always have two entries of your drive which only differ in the Device-Id. Then just choose the Read Device and Write Device when you are in the "Duplicate Disc" or "Create Disc" menu of X-CD-Roast. You can check easily if it's the right one by clicking the 'Eject' button on the right.

Hint: The command "sudo cdrecord -scanbus" shows all current Device-Ids.

Since you have the opportunity to save several device settings for reading and writing Discs for each drive in the setup menu, X-CD-Roast does not scan for devices at every startup.


5: How is this remote networked SCSI device support working?

The cdrtools have been supporting access to writers/readers over the network for a long time now. They utilize a protocol called "REMOTE-SCSI" (RSCSI) that is tunneled via a standard rsh server between the client and server machine.

This makes it possible to use X-CD-Roast to write on a CD/DVD/BD writer that is built into a different machine over the network.

Please see the file "README.rscsi" included with the cdrecord documentation for details, but here are the basic installation steps outlined:

  • Install the cdrtools on the server machine (machine with the writer- hardware) and verify that you can access your writer locally. (e.g. by "cdrecord -scanbus") It does not matter how your writer is installed as long it can work locally with the cdrtools. S-ATA, Firewire, USB, ATAPI, SCSI, SCSI-emulation ... - all works.

  • Activate/install a rsh server on the server machine. rsh is usually spawned via the inetd (xinetd) daemon.

  • Test if rsh works by creating a user without password on the server machine and access it from the client (the machine where X-CD-Roast runs) with a command like this: "rsh serverhost -l user_without_password date" You should see the output of the date command. If not you might have to check if need to open up a port of your firewall. If the command works fine, it is the best to remove the password-less user again.

  • Create a rscsi-user on the server. It requires a home-directory, but you don't need to set a password. The login shell must be set to the cdrtools rscsi programme: e.g. /opt/schily/sbin/rscsi Then create a ~rscsi/.rhosts file where you write which user from which host will be able to use remote-scsi. (syntax: "hostname username" per line)

  • Copy the "rscsi.dfl" file from the cdrtools sources to /etc/default/rscsi Edit as described within the file. Please take care that you always use i tabs instead of spaces in that file.

  • Now you should be able to do on the client a "cdrecord dev=REMOTE:rscsi@serverhost -scanbus" and get a list of the devices on the server machine. Within X-CD-Roast just enter setup and add "REMOTE:rscsi@serverhost" as manually configured device.


6. There is an updated translation file for my language on the X-CD-Roast homepage. How can I install that now?

Just copy the new 'xx.po' file into the po subdirectory and compile X-CD-Roast. You need to have the gettext-tools installed on your system.

In case you compiled X-CD-Roast previously then after copying the new po file you have to enter the subdirectory po and to type "make update-gmo", then leave "cd .." and type "sudo make install".

If you want to build a new SRPM please do not touch the original tar file! Create a patch file by comparing the old and the new po file using "diff -u" and copy this patch into the subdirectory SOURCES. Then add a new patch entry in the main and %prep section of the xcdroast.spec file and do document this in the %changelog section.

Another possibility, if you have X-CD-Roast installed by a binary RPM/DEB from your distributor, is simply to copy the 'xx.mo' file into your system, where the old 'xcdroast.mo' file is.

For instance: "sudo cp fr.mo /usr/share/locale/fr/LC_MESSAGES/xcdroast.mo"

'fr' stands for french here, but the absolute path depends on the language and on your system.


7. My language is not supported yet! Can I do the translation for you?

I am looking for people who volunteer to translate X-CD-Roast. Starting with version 0.98alpha11 gettext is used as translation engine. Please refer to the file TRANSLATION.HOWTO for more details.

http://www.xcdroast.org/release/TRANSLATION.HOWTO.html.
A list of the current translation status can be found here:
http://www.xcdroast.org/release/translations.html.
Big thanks to all who already sent me translations!


8. X-CD-Roast tells me that my "cdrtools binaries are not compatible with my system". What does this mean?

This is a common Linux problem. cdrecord and cdda2wav use a technique called "memory-mapping" (mmap) to do their work. This requires however that the kernel and libc versions do exactly match to the system where these tools have been compiled. If you use binaries from other systems the memory addresses do no longer match and cdrecord aborts with this "mmap-error" which X-CD-Roast detects. This means you have to install versions that are compiled for your system. The easiest to do so is to compile them yourself. You can just rebuild the cdrtools from a 'tar' or a 'SRPM' file. (see X-CD-Roast homepage download section) or to get the correct RPMs for your system. After you replaced the old cdrtools with the correctly compiled version X-CD-Roast should work fine.


9. I can't compile X-CD-Roast!

X-CD-Roast is quite easy to compile. If you have problems you should read the README file which explains all step-by-step. However I recommend to install X-CD-Roast from a source RPM. See the download section of www.xcdroast.org for instructions.

If you want to build a SRPM, there is a xcdroast.spec and a xcdroast.desktop file in the subdirectory extra of xcdroast-1.18 which you can use as template. Remember the SUID bit (Set User ID) on %{prefix}/lib/xcdroast/bin/xcdrwrap. See file README for explanations why this is needed.

Some Linux distributors may already have a RPM/DEB-binary package in their online repositories. Use this one unless it is an old version. If it just does not contain an updated po file for your language, then replace the 'xcdroast.mo' file afterwards as described in FAQ *6.


10. The tooltips are hard to read. They are white on light grey.

You probably use KDE Plasma 5. Therefore go to System Settings -> Color and disable the checkbox "Apply colors to non-Qt applications".


11. I can't find a DSP-Device in the setup menu.

The OSS (Open Sound Systen) has been replaced with ALSA (Advanced Linux Sound Architecture) long ago.
Some possible solutions are:

  1. Emulate /dev/dsp by PulseAudio: "padsp xcdroast".
  2. Load the kernel module 'snd-pcm-oss': "sudo modprobe snd-pcm-oss".
  3. Install the OSS Proxy Daemon (e.g. available on Ubuntu systems): "sudo apt-get install osspd".
    Reboot to make this setting active.
A future version of X-CD-Roast will implement native ALSA support.


12. The CDDB-lookup does not work! Why?

Starting with version 0.98alpha11 I support CDDB via HTTP and proxies. 0.98alpha12 even supports proxy-authentication. To use that feature you simply enter your proxy-server in the format "user:password@hostname" in the X-CD-Roast setup.

Please send a debug output if you still have problems.


13. I don't know how to write a downloaded ISO image!

If you have an ISO image (e.g. a Linux distribution or SystemRescueCd) then you have to copy that file (extension should be .iso) first to an "Image Directory" of X-CD-Roast you specified in Setup at 'HD Settings'. Those are the directories where X-CD-Roast will look for audio (.wav) or data tracks. Of course, instead of copying each of your big files, you can also add your preferred download directory in the setup. But there is one limitation: You can only determine one "Image Directory" per partition.

Now you enter the "Create Disc" menu and you will see your image file displayed nicely in the "Image-Information" window. Go to "Write Tracks", -> "Layout tracks", add your image file, click on "Accept track layout", select the Disc type and finally a click at "Write tracks" will write that image perfectly to your CD-R/RW or DVD+-R/RW.


14. Can I write an audio CD from mp3 / ogg / flac or from wav files I created myself?

As X-CD-Roast 1.18 is not yet able to handle compressed files directly, you have to convert the audio files yourself into the wav format. There are a lot of ways to do this. You can use:

lame --decode myfile.mp3
flac --decode myfile.ogg
flac --decode myfile.flac
Make sure X-CD-Roast does find your wav files in one of its image directories and then just go ahead as described in FAQ *13.

Note:
X-CD-Roast can only write Audio CD conformal files (44.1 kHz, 16 bit, stereo). If your files do not meet these requirements they will be displayed with an audio icon crossed out in red. Those files can't be written and will be ignored until you convert them into the correct format.


15. Why does X-CD-Roast report to write up to 807 MiB when only 700 MiB do fit on a CD-R?

This or any other questions about the size calculations of X-CD-Roast relate to the used sector sizes. First of all you have to understand that there is a big difference between writing a data CD and an audio CD. When you look at an ordinary CD-R there may be written on it: Capacity 80 min / 700 MB. The first number is the capacity that fits on an audio CD. The second one relates only to data CDs. So how does it come that X-CD-Roast insists on needing almost 807 MiB space for 80 min of audio? An audio CD consists of 2352 Bytes sectors - as opposed to 2048 Bytes needed for data! In reality, also the data sector takes up 2352 Bytes - but only 2048 Bytes are usable for you - the other 304 Bytes are used for error correction, sector numbers and other stuff.
So, when a CD-R manufacturer tells you about 700 MB capacity this means that one calculates with 2048 Byte sectors. And because the audio sectors are bigger, you need more space to rip audio to the hard drive. Let's calculate how much space an 80 minutes Audio CD needs on the hard disk:

80 (minutes) × 60 seconds × 44100 Hz sample rate × 2 (16 bit) × 2 (stereo)
= 846720000 Bytes ÷ 1024 ÷ 1024
= 807.49.. MiB
And 807 MiB is the size X-CD-Roast reports for that's exactly the free size you need on your hard drive to save 80 minutes of audio from a CD. Don't worry that this might not fit on your CD-R just because there is written 700 MB on it. X-CD-Roast will warn you in any case when something will not match. And if you don't believe X-CD-Roast, then use your favorite file manager! But do consider that for example the KDE Dolphin shows the file sizes in Mebibyte (MiB) whereas the GNOME Nautilus displays Megabyte (MB). Hence 80 minutes of audio result in 807 MiB respectively in 846 MB.

As a rule of thumb: When creating audio CDs, watch the minute counter and when handling with data, watch the MiB counter. It's just as simple as it sounds.


16. Why do only fit 4482 MiB on a 4.7 GB DVD?

4.7 GB is a size advertised by manufacturers, who use decimal units.
You must calculate: 4.7 GB × 1000 × 1000 × 1000 ÷ 1024 ÷ 1024 = 4482 MiB.

To avoid confusion, X-CD-Roast uses binary and decimal prefixes according to IEC 60027-2 (January 1999). For instance:

1 MiB (Mebibyte) = 1 048 576 Bytes = 2²⁰ Bytes
1 MB (Megabyte) = 1 000 000 Bytes = 10⁶ Bytes
vice versa:
1 000 000 Bytes = 0.9536743.. MiB (Mebibyte)
Q: But why do fit 703 MiB on a 700 MB CD then?
A: Here, although writing MB, the manufacturers have the binary units in mind and 700 is just a rounded value.


17. What is the meaning of "Warning: creating filesystem that does not conform to ISO-9660"?

Ignore this warning printed by mkisofs. If you use the various extensions of the ISO-9660 file system, you are no longer strictly following the ISO-9660 standard. The recorded Disc will be readable nevertheless on most systems. If you really want to get rid of that message, then you have to deactivate all the ISO9660 options in the menu 'Master Tracks'. The resulting Disc will then just work good on DOS systems and is mostly useless everywhere else.


18. I wrote a second session to a multi session Disc but I can't see it!

The chances are very high that the Disc was written correctly, but you simply fail to read it the right way. You have to keep in mind that some desktop environments like KDE or GNOME tend to cache Disc-Contents and thus you DON'T see any changes on your Disc until you force a refresh. To check if a Disc was correctly written, always remount it or check it on a different machine.


19: I burned an audio CD, but all the tracks seem to be messed up.

X-CD-Roast writes audio CDs by default in DAO mode. However, on some very old writers this does not work correctly and you might get an audio CD which behaves strangely in a CD player (displaying wrong track counts, not able to skip tracks, ...). The fix is to write the CD in one of the RAW modes (e.g. RAW96R) instead.


20. The write performance is bad or my system freezes!

If your system is put into high stress while it is writing a Disc, you might get buffer underruns and your disc writer stops and starts burning constantly. In the worst case the system hangs up.

First check the transfer rate of your hard drive. On Linux there is a tool called hdparm which does a nice job here.

sudo /sbin/hdparm -t /dev/sda
This will measure the raw read throughput of your drive. You should see values like 100 MB/s or 500 MB/s for modern HDDs or SSDs. If your drive is far below the value 50 MB/s you cannot write DVDs at the highest speed. Anyway, if you create Audio CDs do not write them at maximum speed, since the quality gets worse and the audio error correction during playback is quite simple. Use 8x or 16x speed instead.

The next thing is to set the "Set SCSI IMMED flag" in 'Advanced options' within the X-CD-Roast 'Write Tracks / Write Disc' dialog. On systems where the hard drive and the writer share the same IDE bus this can improve the behaviour.

Desktop systems like KDE, GNOME or XFCE normally try to automount each inserted Disc. In the distant past this sometimes killed cdrecord. Turn off tentatively all this automatic Disc handling in the setup of the Desktop Environment. There may also be player applets which need to be disabled.


21. If I copy a Disc on-the-fly the write speed alternates a lot, the Fifo drops quite often to 0% and finally in the output window there is a note "BURN-Free was 131 times used"!

This is the effect if the destination Disc is written more quickly than the source Disc is read. All modern Disc Writers cannot burn a CD-R more slowly than 8x or even 16x. By contrast, Audio CDs are ripped at a speed of around 4-6x in paranoia mode and of around 12x in non-paranoia mode. As a consequence copying an Audio CD on-the-fly in paranoia mode does not make sense anymore nowadays.

Nonetheless you have the opportunity to raise the 'Disc Writer FIFO-Buffer-Size' even up to 128 MiB in the 'Setup - CD/DVD/BD Writer Configuration' to avoid a buffer underrun if the burner is a bit faster than the reader. You do not have to 'Save configuration' each time you change a value. Just click 'Ok' and all settings are kept until you quit X-CD-Roast.


22. How to see the commands X-CD-Roast generates to learn something about cdrecord?

In order to learn how X-CD-Roast calls the cdrtools you can start X-CD-Roast with the "-d 1" flag or set the loglevel in the setup to "verbose" and watch the logfile. This way it is easy for you to try out new versions of the cdrtools on the command line and to see if problems are already fixed there.


23. Why don't you offer Git access for X-CD-Roast?

At the moment I don't want anybody to get the cutting-edge sources without my approval. At these early stages there are too many changes all the time and any Git archive would only disappoint you because the code may not work.


24. I think I found a bug! How do I report it to you?

If you think you have found a bug, you have to find out first if you can reproduce it reliably. Then run xcdroast in debug mode (-d 10 switch) and send me the output. Please describe what you exactly did and what went wrong. Also, set the language to English in the setup menu, so that I can understand all your error messages myself.

If you have no idea how to get the debug output into a file, try this:

$ xcdroast -d 10 2> ~/debugoutput.txt


25. I am a CD/DVD/BD writer vendor and I want to sponsor you!

Fine! If you send me free hardware, I can test X-CD-Roast with it and recommend it to other users. I will also put your logo on the homepage of X-CD-Roast. Please don't hesitate to contact me.

Current sponsors are:

  • RICOH, who gave me a CD-R/RW MP7060S, a DVD/CDRW MP9120 and a MP7125A
  • SANYO, who gave me a CRD-RW1, a CD-R CRD-R800S, a CRD-BP2 and CRD-BP1300P
  • SONY, who gave me a CRX-140S
  • AOPEN, who gave me a CRW4048

    Also thanks to netplace Telematic GmbH for hosting my domain.


    Any more questions? - Please contact me in English or in German.

  • 22.12.2017 T.Niederreiter (tn@xcdroast.org)