If this option is used, the pregap size information is read from the *.inf file that is associated with the file that contains the audio data for a track.I wasn't terribly keen on having to worry about the inf files changing behavior in how cdrecord was writing the actual audio data, so I decided not to go this route. Plus, it looked like I'd need a .inf for each track? Not for me.
Take all recording related information from a CDRWIN compliant CUE sheet file.Once again, I don't want to have to deal with timing issues in a file which I only want to use for defining track titles. I'm happy letting cdrecord (or whatever) do the track length calculations and the like. So, I decided not to go with this option either (which takes cdrecord out of the loop.) If I'm wrong about CUE sheets requiring this info, feel free to let me know.
CD_DA
CD_TEXT {
LANGUAGE_MAP {
0 : EN
}
LANGUAGE 0 {
TITLE "A Short EP Or Something"
PERFORMER "Imaginary Band"
}
}
TRACK AUDIO
CD_TEXT {
LANGUAGE 0 {
TITLE "The First Track"
PERFORMER "Imaginary Band"
}
}
FILE "01-The_First_Track.wav" 0
TRACK AUDIO
CD_TEXT {
LANGUAGE 0 {
TITLE "Track TWO"
PERFORMER "Imaginary Band"
}
}
FILE "02-Track_TWO.wav" 0
As you can see, it's pretty straightforward. It's definitely a bit wordier
than I'd like to create by hand, but a few seconds in any scripting language
would be enough to create a quick template.
There's a couple of important things to note in there:
cdrdao write --device ATA:1,0,0 --driver generic-mmc-raw -v 2 -n --eject toc.txt(Obviously, you'd want to change some of those options to suit.) Browsing around in the code, it looks like the CD-TEXT capability is probably defined in dao/CdrDriver.cc, in the BUILTIN_WRITE_DRIVER_TABLE array, which starts at line 156 at the time of this writing (revision 1.48). Presumably the necessary bit is the presence of OPT_MMC_CD_TEXT in the fourth field, like the following block:
{ "generic-mmc", "HP", "CD-Writer+ 7570", OPT_MMC_CD_TEXT, NULL },
{ "generic-mmc", "HP", "CD-Writer+ 8100", OPT_MMC_CD_TEXT, NULL },
{ "generic-mmc", "HP", "CD-Writer+ 8200", OPT_MMC_CD_TEXT, NULL },
{ "generic-mmc", "HP", "CD-Writer+ 8290", OPT_MMC_CD_TEXT, NULL },
My burner wasn't anywhere on that list, so my guess is that the generic-mmc
driver won't attempt CD-TEXT writing unless it would have been included in
that table. As soon as I switched to generic-mmc-raw, things started
working again.