/// <summary> /// Create a new cuesheet from scratch /// </summary> static void NewCueSheet() { CueSheet cue = new CueSheet(); //Album performer cue.Performer = "Rotterdam Philharmonic Orchestra"; //Album title cue.Title = "Edo de Waart / Rachmaninoff: The 3 Symphonies, The Rock - Disc 1"; //Create 1st track, with a filename that future tracks will inherit cue.AddTrack("Symphony No. 2 in E minor, Op. 27: I. Largo - Allegro moderato", "", "CDImage.ape", FileType.WAVE); cue.AddIndex(0, 0, 0, 0, 0); cue.AddIndex(0, 1, 0, 0, 33); //Create 2nd track, with optional 'Performance' field used cue.AddTrack("II. Allegro molto", "Fake G. Uy: Timpani"); cue.AddIndex(1, 0, 18, 39, 33); cue.AddIndex(1, 2, 22, 14, 10); //add another index we'll delete later cue.AddIndex(1, 1, 18, 44, 25); //Create 3rd track cue.AddTrack("III. Adagio", ""); cue.AddIndex(2, 0, 27, 56, 33); cue.AddIndex(2, 1, 27, 59, 40); //Create 4th track using a method that gives us more control over the data Track tempTrack = new Track(4, DataType.AUDIO); tempTrack.Title = "IV. Allegro vivace"; tempTrack.ISRC = "0000078652395"; tempTrack.AddFlag(Flags.CH4); tempTrack.AddIndex(0, 41, 57, 33); tempTrack.AddIndex(1, 42, 00, 60); cue.AddTrack(tempTrack); //Create 5th track we'll delete later cue.AddTrack("Symphony No. Infinity", "Rachmaninoff's Dog"); //Remove the bad index from the 2nd track cue.RemoveIndex(1, 1);//(trackIndex, indexIndex) //Notice the index (array-wise) of the Index (cuesheet min/sec/frame) is '1' //but the Index Number is 2. This is to show that index and the Index Number are //not the same thing and may or may not be equal. //Remove the 5th track cue.RemoveTrack(4); Console.WriteLine(cue.ToString()); cue.SaveCue("newCDImage.cue"); }