给你一个CD音乐光盘的格式吧,可以根据CDA格式将WAV直接写道CD-R中去,兴许对你有用:
cda music tracks file format
by wojtek kaniewski 1997
note: everything in this file is based on my own investigations.
all information that you'll find in this text filedo
not
come from microsoft corp.
cda files are generally riff resources. the riff id of .cda file is
"cdda" (43h, 44h, 44h, 41h). they contain only one data block
called "fmt " (66h, 6dh, 74h, 20h). in current version of .cda file,
this block is 24 bytes long. here's structure of it:
offset length description
00h 02h cda file version. currently equals 1. if it has
other value, following data may be out of date.
02h 02h number of track.
04h 04h cd disc serial number (the one stored in cdplayer.ini)
08h 04h begin
ning of the track in hsg format.
0ch 04h length of the track in hsg format.
10h 04h begin
ning of the track in red-book format.
14h 04h length of the track in red-book format.
as you see, time is represented in two formats: hsg and red-book.
hsg can be calculated as following:
time = minute * 4500 + second * 75 + frame
red-book is much easier to use, because it contains minutes,
seconds and frames in unmodified form, byte-packed:
offset length description
00h 01h frame
01h 01h second
02h 01h minute
03h 01h not used
now, i'll show you an example file. first part is a hex dump
of the file, the second is the explanation of the fields.
52 49 46 46 24 00 00 00 43 44 44 41 66 6d 74 20 riff$...cddafmt
18 00 00 00 01 00 04 00 b8 24 f6 00 f7 11 01 00 .........$......
b4 5c 00 00 0a 25 0f 00 20 10 05 00 ./...%.. ...
01 00 - first version of cda file
04 00 - fourth track
b8 24 f6 00 - serial number of cd in cdplayer.ini is [f623b8]
f7 11 01 00 - begin
ing of track in hsg format
b4 5c 00 00 - length of track in hsg format
0a 25 0f 00 - begin
ing of track in red-book format (15:37)
20 10 05 00 - length of track in red-book format (05:16)
that's all. it should be enough to write cda viewer
if you need more
info or something isn't clear, feel free to write.
wojtek kaniewski
wojtekka@logonet.com.pl