public RESULT getNumTags (out int numtags, out int numtagsupdated) { return FMOD_Sound_GetNumTags(rawPtr, out numtags, out numtagsupdated); } public RESULT getTag (string name, int index, out TAG tag)
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); }