View Single Post
Old 02-12-2006, 06:55 PM   #52
Vicne
Variable Bitrate
 
Join Date: Apr 2005
Location: Belgium
Posts: 325
Frame format status

So if I summarize, we have :

<frame>=
byte #0 : 3Dh (sometimes 3Fh - maybe erroneously)
byte #1 : frame id (incremented at each frame, cycling to 00h after FFh)
byte #2 : <data> length
bytes from #3 to #(length + 2) : <data>
byte #(length + 3) : CRC = XOR of all other bytes

<data>=
byte #0 : data type (e.g. : 47h = "playing")
other bytes : data type dependant

for the particular case of the "playing" data type, we have the following bytes :
byte #1 : track number
byte #2 : ?? 01h
byte #3 : ?? 00h (could be elapsed cd time, hours (BCD))
byte #4 : elapsed cd time, minutes (BCD)
byte #5 : elapsed cd time, seconds (BCD)
byte #6 : ?? constant byte per track
byte #7 : ?? 00h (could be elapsed track time, hours (BCD))
byte #8 : elapsed track time, minutes (BCD)
byte #9 : elapsed track time, seconds (BCD)
byte #10 : ?? 00h

For the elapsed time hours, I just thought of it while writing. I'll have to check with a longer CD...

So this one is almost done, except byte #6 (constant per track) ... No idea...

Last edited by Vicne; 02-12-2006 at 07:08 PM.
Vicne is offline   Reply With Quote