public CDInfoDetail GetDiscDetails(string category, string discid) { string[] content = GetInfo("cddb+read+" + category + "+" + discid); XMCDParser parser = new XMCDParser(); CDInfoDetail cdInfo = parser.Parse2(content); return(cdInfo); }
public static string createXMCD(CDInfoDetail cdinfo) { string newline = "\n"; int index = 0; StringBuilder content = new StringBuilder(400); StringBuilder tracks = new StringBuilder(100); StringBuilder extt = new StringBuilder(100); content.Append("# xmcd"); content.Append(newline); content.Append("#"); content.Append(newline); // Track frame offsets content.Append("# Track frame offsets:"); foreach (CDTrackDetail track in cdinfo.Tracks) { content.Append(newline); content.Append("#\t"); content.Append(track.Offset); // do the other info about track too... // track title tracks.Append(newline); tracks.Append("TTITLE"); tracks.Append(index); tracks.Append("="); tracks.Append(track.Title); // track EXTT extt.Append(newline); extt.Append("EXTT"); extt.Append(index); extt.Append("="); extt.Append(track.EXTT); index++; } // Disc Length content.Append(newline); content.Append("#"); content.Append(newline); content.Append("# Disc length: "); content.Append(cdinfo.Duration); content.Append(" seconds"); // Revision content.Append(newline); content.Append("#"); content.Append(newline); content.Append("# Revision: 0"); // App information content.Append(newline); content.Append("# Submitted via: "); content.Append(APPNAME); content.Append(" "); content.Append(APPVERSION); content.Append(newline); content.Append("#"); content.Append(newline); // DISC ID content.Append("DISCID="); content.Append(cdinfo.DiscID); content.Append(newline); // Title = Artist / Title content.Append("DTITLE="); content.Append(cdinfo.Artist); content.Append(" / "); content.Append(cdinfo.Title); content.Append(newline); // Year content.Append("DYEAR="); content.Append(cdinfo.Year); content.Append(newline); // Genre content.Append("DGENRE="); content.Append(cdinfo.Genre); //track titles content.Append(tracks); // EXTD content.Append(newline); content.Append("EXTD="); content.Append(cdinfo.EXTD); // EXTT content.Append(extt); // EXTD content.Append(newline); content.Append("PLAYORDER="); int[] order = cdinfo.PlayOrder; for (int i = 0; i < order.Length; i++) { if (i != 0) content.Append(','); content.Append(order[i]); } content.Append(newline); return content.ToString(); }
public static string createXMCD(CDInfoDetail cdinfo) { string newline = "\n"; int index = 0; StringBuilder content = new StringBuilder(400); StringBuilder tracks = new StringBuilder(100); StringBuilder extt = new StringBuilder(100); content.Append("# xmcd"); content.Append(newline); content.Append("#"); content.Append(newline); // Track frame offsets content.Append("# Track frame offsets:"); foreach (CDTrackDetail track in cdinfo.Tracks) { content.Append(newline); content.Append("#\t"); content.Append(track.Offset); // do the other info about track too... // track title tracks.Append(newline); tracks.Append("TTITLE"); tracks.Append(index); tracks.Append("="); tracks.Append(track.Title); // track EXTT extt.Append(newline); extt.Append("EXTT"); extt.Append(index); extt.Append("="); extt.Append(track.EXTT); index++; } // Disc Length content.Append(newline); content.Append("#"); content.Append(newline); content.Append("# Disc length: "); content.Append(cdinfo.Duration); content.Append(" seconds"); // Revision content.Append(newline); content.Append("#"); content.Append(newline); content.Append("# Revision: 0"); // App information content.Append(newline); content.Append("# Submitted via: "); content.Append(APPNAME); content.Append(" "); content.Append(APPVERSION); content.Append(newline); content.Append("#"); content.Append(newline); // DISC ID content.Append("DISCID="); content.Append(cdinfo.DiscID); content.Append(newline); // Title = Artist / Title content.Append("DTITLE="); content.Append(cdinfo.Artist); content.Append(" / "); content.Append(cdinfo.Title); content.Append(newline); // Year content.Append("DYEAR="); content.Append(cdinfo.Year); content.Append(newline); // Genre content.Append("DGENRE="); content.Append(cdinfo.Genre); //track titles content.Append(tracks); // EXTD content.Append(newline); content.Append("EXTD="); content.Append(cdinfo.EXTD); // EXTT content.Append(extt); // EXTD content.Append(newline); content.Append("PLAYORDER="); int[] order = cdinfo.PlayOrder; for (int i = 0; i < order.Length; i++) { if (i != 0) { content.Append(','); } content.Append(order[i]); } content.Append(newline); return(content.ToString()); }