EAC CUE Sheets ASCII formats explained, because sometimes Notepad is all you hav |
EAC CUE Sheets ASCII formats explained, because sometimes Notepad is all you hav |
Nov 30 2002, 14:43
Post
#1
|
|
![]() Group: Members Posts: 47 Joined: 29-November 02 From: Rio de Janeiro, Brazil Member No.: 3920 |
I was asked about the format of the CUE Sheets generated in EAC. I've never read any CUE Sheet specification in the web, it probably has zillions of web site dedicated to this. But all the knowledge I share here was gained creating the 4 different CUE sheets, opening them in Notepad and comparing them to the content showed in EAC's track window. Loading the CUEs into EAC's CD Layout Editor also helped a lot, by showing the CUE's content in a more friendly way.
The 4 types are: - Single WAV File - Multiple Files With Gaps (Noncompliant) - Multiple Files With Left Out Gaps - Multiple Files With Corrected Gaps "Current Gap Settings" is not really an option, but rather an alias for one of the other 4: the one thats currently seletected in the the gap settings. So, creating a CUE with this option will create a file identical to one of the other 4. Most of us dont know, but the CUE Sheet is a simple ASCII file, in a format quite easy for us to read it and interpret it (and, then, if needed, edit it! For the test, the awesome Rush album "Signals" was used. It was chosen because its has few tracks (8), simple format (7 aps, all nonzoero lenghts), no hidden tracks (no index 00 for the 1st track), standard 2s before the 1st track (not a gap, actually, but rather a Lead In time or something, according to Pio), and also because Rush rules!!! You guys should listen to this album! CDDB/CD-Text info was used to generate the CUE Sheets (EAC -> EAC Options -> Tools -> Check 'Use CD-Text information in CUE sheet generation') because IMO I think its easier to read tracks by its name then by its number. It increases the size of the CUE sheet considerably, but its better this way. After a while you get really confused if all you see is "Track 05", "Track07.wav", and so on. This said, the CUE Sheets are (not in the same order as in EAC's menu, but in increasing order of 'complexity'): - Single WAV File - A.K.A "Copy Image" CODE FILE "D:\MP3\Ripados\Range.wav" WAVE TRACK 01 AUDIO INDEX 01 00:00:00 TRACK 02 AUDIO INDEX 00 05:33:45 INDEX 01 05:34:55 TRACK 03 AUDIO INDEX 00 10:22:12 INDEX 01 10:22:57 TRACK 04 AUDIO INDEX 00 15:20:00 INDEX 01 15:20:62 TRACK 05 AUDIO INDEX 00 21:41:40 INDEX 01 21:43:00 TRACK 06 AUDIO INDEX 00 28:06:12 INDEX 01 28:07:32 TRACK 07 AUDIO INDEX 00 31:49:40 INDEX 01 31:50:40 TRACK 08 AUDIO INDEX 00 36:42:60 INDEX 01 36:44:05 As we can see, this one is pretty straightforward. A single file, assumed by EAC to be Range.wav, is used in all tracks. Track 1 starts with index 1 (a track 1-index 0 would mean a hidden track), at the file's absolute position 00:00:00. All the times are the absolute position within the Range.wav file. Here the tracks (01 indices) and the gaps (00 indices) are so easy to see and figure out that I have nothing much to tell about this format, except that this simple format will help us to understant the basics, and will sure come in hand when things get dicy. Just a note for future reference: the gap lenght of a given track can be calculated by subtracting the INDEX 00 start position from its INDEX 01 start position. For example, track 3 gap starts at 10:22:12, and the actual track starts at 10:22:57. That leads us to a 57-12 = 00:00:45 gap. - Multiple Files With Corrected Gaps - A.K.A "Append Gaps to [beggining of] Next Track" CODE FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 01 - Subdivisions.wav" WAVE TRACK 01 AUDIO INDEX 01 00:00:00 FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 02 - The Analog Kid.wav" WAVE TRACK 02 AUDIO INDEX 00 00:00:00 INDEX 01 00:01:10 FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 03 - Chemistry.wav" WAVE TRACK 03 AUDIO INDEX 00 00:00:00 INDEX 01 00:00:45 FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 04 - Digital Man.wav" WAVE TRACK 04 AUDIO INDEX 00 00:00:00 INDEX 01 00:00:62 FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 05 - The Weapon.wav" WAVE TRACK 05 AUDIO INDEX 00 00:00:00 INDEX 01 00:01:35 FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 06 - New World Man.wav" WAVE TRACK 06 AUDIO INDEX 00 00:00:00 INDEX 01 00:01:20 FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 07 - Losing It.wav" WAVE TRACK 07 AUDIO INDEX 00 00:00:00 INDEX 01 00:01:00 FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 08 - Countdown.wav" WAVE TRACK 08 AUDIO INDEX 00 00:00:00 INDEX 01 00:01:20 Note that this CUE is very similar to the previous, the difference being multiple wavs are used. This CUE assumes you appended gaps in the begging of each track, and thats why, for example, Track 03-Index 00 starts at 00:00:00 of Chemistry.wav. The actual song (index 01) starts at 00:00:45 of that file. This way we can easily see that this pregap is 00:00:45 long. NOTE: EAC displays times in the format 1:60:60.100 in the main window, meaning 1 second is divided in 100 "cents". *BUT* in CUE Sheets the format is 1:60:60:75. So, a gap displayed 00:00:50 in a CUE sheet does not mean a half second gap, but rather a 2/3 second gap (something like 0.66 or 0.67 in the usual notation. So the 00:00:45 gap would be displayed in EAC's main window as 0:00:00.60. A curious thing is that in EAC's CD Layout window the format used is the 0.75, not the "metric" one - Multiple Files With Left Out Gaps - A.K.A "Leave Out Gaps" CODE FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 01 - Subdivisions.wav" WAVE TRACK 01 AUDIO INDEX 01 00:00:00 FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 02 - The Analog Kid.wav" WAVE TRACK 02 AUDIO PREGAP 00:01:10 INDEX 01 00:00:00 FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 03 - Chemistry.wav" WAVE TRACK 03 AUDIO PREGAP 00:00:45 INDEX 01 00:00:00 FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 04 - Digital Man.wav" WAVE TRACK 04 AUDIO PREGAP 00:00:62 INDEX 01 00:00:00 FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 05 - The Weapon.wav" WAVE TRACK 05 AUDIO PREGAP 00:01:35 INDEX 01 00:00:00 FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 06 - New World Man.wav" WAVE TRACK 06 AUDIO PREGAP 00:01:20 INDEX 01 00:00:00 FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 07 - Losing It.wav" WAVE TRACK 07 AUDIO PREGAP 00:01:00 INDEX 01 00:00:00 FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 08 - Countdown.wav" WAVE TRACK 08 AUDIO PREGAP 00:01:20 INDEX 01 00:00:00 This one also looks a lot like the previous. The difference is that now indices 01 start at the very beggining if the files (00:00:00). So, where are the gaps? They are artificially inserted with the "PREGAP" tag. PREGAP, as we can assume by reading this file and confirm its behaviour, tells the burner to create a 00 index of the specified lenght, filled with silence. Note that the INDEX 00 statement cant be used, because its time refers to the wav file, and in this case no gaps were appended anywere on the wavs. They were simply left out. PREGAP puts them back again. (you better pray for what was left out was only silence, because thats all you'll get when using PREGAP - Multiple Files With Gaps (Noncompliant) - A.K.A "Append Gaps to [end of] Previous Track (default)" (in my case, this is the option used when "Current Gap Settings" is selected. I hope in yours too CODE FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 01 - Subdivisions.wav" WAVE TRACK 01 AUDIO INDEX 01 00:00:00 TRACK 02 AUDIO INDEX 00 05:33:45 FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 02 - The Analog Kid.wav" WAVE INDEX 01 00:00:00 TRACK 03 AUDIO INDEX 00 04:47:32 FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 03 - Chemistry.wav" WAVE INDEX 01 00:00:00 TRACK 04 AUDIO INDEX 00 04:57:18 FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 04 - Digital Man.wav" WAVE INDEX 01 00:00:00 TRACK 05 AUDIO INDEX 00 06:20:53 FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 05 - The Weapon.wav" WAVE INDEX 01 00:00:00 TRACK 06 AUDIO INDEX 00 06:23:12 FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 06 - New World Man.wav" WAVE INDEX 01 00:00:00 TRACK 07 AUDIO INDEX 00 03:42:08 FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 07 - Losing It.wav" WAVE INDEX 01 00:00:00 TRACK 08 AUDIO INDEX 00 04:52:20 FILE "D:\MP3\Ripados\Rush\Signals\Rush - Signals - 08 - Countdown.wav" WAVE INDEX 01 00:00:00 The most tricky, yet "right", CUE Format. The 1st file, Subdivisions.wav, is used in both Track1-Index1 and Tack2-Index0 (track 2 pregap). This gap starts at 05:33:45 of the file, and last until the end of it. Then, we see the marker of a new file, The Analog Kid.wav. TRack 02 Index 01 starts at the beggining of this file, and lasts until 04:47:18, where, while keep reading the same wav file, Index 00 of Track 03 starts to be recorded. This pattern keeps until the end of the album, and we can see that each wav file is used for a track (index 01) and then for a pregap (index 00 of the next track). Using CD Layout Editor makes this tricky "chaining" of tracks and files very easy to see. So this format assumes that the gaps were appended to the end of the previous track. Its not a surprise then that Countdown.wav is only used as Track 08 - Index 01. As there is no track 9 pregap, nothing was appended to it. Its own pregap was appended to the previous file, Losing It.wav. Now lets try to find our now-famous 00:00:45 gap in this format. We already know that we are looking for Track 03 - Index 00. Looking at the CUE, we find that it is in The Analog Kid.wav file, starting from 04:47:32, and lasting until the end of this file. So we need to know, in a very accurate way, the length of this file. Nor Winamp not encSpot are, they only have second precision. But we can again use EAC's CD Layout to mannualy "Append files as New Tracks" and see the lenght. And it tells us that "The Analog Kid.wav" is 04:48.16 long. Subtracting the gap initial position from the file's lenght leads us to the actual gap lengh: 04:48:02 - 04:47:32 = 00:00:45 ! Bingo! For this weird math, remember that CUE Sheets use the "75 notation", so from 04:47:32 to 04:48:00 there are 75-32=00:00:43. So we add +2 (from 04:48:00 to 04:48:02), leading us to our so-loved 00:00:45. NOTE: I found a very, very weird thing while doing the tests: the lenght of the original .WAV and its compressed .MP3 are NOT the same! The wavs are shorter by 00:00:14 (about 0.19s in the usual "metric" notation). Is this a know issue? One of those things everyone but newbies like me are aware of? this 00:00:14 difference seems to be constant for all the songs, and for other albuns too. Is this constant for any wav/mp3, or this magical 14 is valid only for my CD Drive? Im really puzzled, if someone can help me in this issue, I would be glad! Anyway: if you need to measure gaps this way, and only have the mp3's at hand (deleted the wavs), be sure to take "this" into account. For me, "this" means subtract 14 from the calculated gap lenght if the file used was the mp3 instead of the original wav. For you, I dunno. Maybe you must subreact 14 too. Maybe its another number. Just be aware that the mp3 can be a tiny little weennie bit longer then the wav. By now, I think that this format, as all the other ones, are quite clear. With the info here, one now might be able to, given any CUE, calculate all gap lenghts and, if needed, edit the CUE to convert from one format to the other. Just in case you find out that in your mp3s the gaps were appended in the end of the tracks, as usual, but the CUE you have is the "corrected" one, where gaps are supposed to be at beggining. Now you can, with the mighty Notepad, Calculator, and a bit of Brains, (EAC's CD Layout Editor may be handy too), convert this cue to the format you want. (in this case, the "Noncompliant"). Good Luck! FINAL NOTE: Why the hell the "Multiple Files With Gaps (Noncompliant)" format is not accepted/recognized/supported by burners like Nero or CDRWin? It has no special tags or statements. The *syntax* is pretty much identical to the "Multiple Files With Corrected Gaps", only the wavs are sliced in a different way. This should be no big deal for any decent burner. So how come this format being uncompliant in any way??? Misteries of life, at least for me... This post has been edited by MestreLion: Nov 30 2002, 18:21 |
|
|
|
![]() |
Nov 30 2002, 18:02
Post
#2
|
|
![]() Musepack Developer Group: Members Posts: 359 Joined: 17-October 01 Member No.: 309 |
Hmm, does this pregap (from 'Leave Out Gaps' cue) contain only silence, dropping any signal that might be presented inside gap?
QUOTE ([url=http://www.digital-inn.de/showthread.php?threadid=16964) MestreLion[/url],Nov 22 2002 - 10:55 AM]"Multiple Files With Left Out Gaps" creates a CD Layout identical to the original, but, as whe source wavs presumably lack the gap content (hence the name), its data is entirely recorded in the 01 indexes, and the 00 indexes are filled with silence. I know it should, but maybe anyone did some check by copying cd known to contain some signal within' gaps this way. Or it's not worth bothering? On other hand you can always 'check gaps on silence' to be 100% safely sure, and switch to another method otherwise. Not to offence anyone, but all the people insisting 'do it the way our super ripping guide tells you to do only' without giving any thecnical details are bit annoying for me. (I don't mean your tutorial, MestreLion. But personal researching is quite hardly can be found on others.) Hope that was politcorrect enough. |
|
|
|
MestreLion EAC CUE Sheets ASCII formats explained Nov 30 2002, 14:43
Xenion why are there pregaps in the leave out mode when t... Nov 30 2002, 19:24
Pio2001 The original Cue specifications are in CDRWin help... Nov 30 2002, 19:27
MestreLion QUOTE (ak @ Nov 30 2002 - 03:02 PM)Hmm, does ... Nov 30 2002, 19:48
MestreLion QUOTE (Xenion @ Nov 30 2002 - 04:24 PM)why ar... Nov 30 2002, 20:09
Xenion i care about the cue sheets because of the CD Text... Nov 30 2002, 20:51
MestreLion QUOTE (Xenion @ Nov 30 2002 - 05:51 PM)i care... Nov 30 2002, 21:36
MestreLion QUOTE (ak @ Nov 30 2002 - 03:02 PM)QUOTE (... Nov 30 2002, 21:51
Xenion QUOTE (MestreLion @ Nov 30 2002 - 08:36 PM)Qu... Nov 30 2002, 22:18
MestreLion QUOTE (Xenion @ Nov 30 2002 - 07:18 PM)hm wel... Nov 30 2002, 22:24
Xenion QUOTE (MestreLion @ Nov 30 2002 - 09:24 PM)QU... Nov 30 2002, 22:31
ak QUOTE (MestreLion @ Nov 30 2002 - 08:48 PM)Yo... Nov 30 2002, 23:29
Shiki I dunno why, but some of the CDs I have don't ... Dec 1 2002, 00:33
Pio2001 QUOTE (ak @ Dec 1 2002 - 01:29 AM)DJ Krush... Dec 1 2002, 01:49
Mataglap QUOTE (MestreLion @ Nov 30 2002, 05:43 AM)NOT... Nov 5 2003, 00:19
liru How do you edit a CUE file, by substracting, for e... Jan 24 2006, 14:05
Synthetic Soul If you open the cuesheet in Notepad you will see v... Jan 24 2006, 14:22
liru Aha! I made the same calculation and came with... Jan 24 2006, 14:28
capmo QUOTE (MestreLion @ Nov 30 2002, 10:43) F... Dec 20 2006, 16:39
MestreLion QUOTE (capmo @ Dec 20 2006, 13:39) Mestre... Dec 26 2006, 04:26
capmo QUOTE (MestreLion @ Dec 26 2006, 00:26) F... Dec 26 2006, 05:01![]() ![]() |
|
Lo-Fi Version | Time is now: 25th May 2013 - 00:49 |