private string GetSoundName(Sound sound) { //original implementation did not return all characters //StringBuilder name = new StringBuilder(0x100); //sound.getName(name, name.Capacity); //begin custom implementation string name = ""; var tagCount = 0; var tagsUpdated = 0; sound.getNumTags(ref tagCount, ref tagsUpdated); TAG tag = new TAG(); for (var i = 0; i < tagCount; i++) { sound.getTag(null, i, ref tag); if (tag.name == "TIT2") { name = Marshal.PtrToStringAnsi(tag.data); break; } } return(name); }
private string GetSoundName(Sound sound) { //original implementation did not return all characters //StringBuilder name = new StringBuilder(0x100); //sound.getName(name, name.Capacity); //begin custom implementation string name = ""; var tagCount = 0; var tagsUpdated = 0; sound.getNumTags(ref tagCount, ref tagsUpdated); TAG tag = new TAG(); for (var i = 0; i < tagCount; i++) { sound.getTag(null, i, ref tag); if (tag.name == "TIT2") { name = Marshal.PtrToStringAnsi(tag.data); break; } } return name; }