/* Initialize instrument id list for audio file. */ void afInitInstIDs (AFfilesetup setup, const int *instids, int ninsts) { if (!_af_filesetup_ok(setup)) return; if (!_af_unique_ids(instids, ninsts, "instrument", AF_BAD_INSTID)) return; _af_setup_free_instruments(setup); setup->instrumentCount = ninsts; setup->instrumentSet = true; setup->instruments = _af_instsetup_new(setup->instrumentCount); for (int i=0; i < setup->instrumentCount; i++) setup->instruments[i].id = instids[i]; }
void afFreeFileSetup (AFfilesetup setup) { if (!_af_filesetup_ok(setup)) return; _af_setup_free_tracks(setup); _af_setup_free_instruments(setup); if (setup->miscellaneousCount) { free(setup->miscellaneous); setup->miscellaneous = NULL; setup->miscellaneousCount = 0; } memset(setup, 0, sizeof (_AFfilesetup)); free(setup); }