Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
jam = jams2.load(file_struct.ref_file)
# If beat annotations exist, compute also annotated beatsyn features
if jam.beats != []:
logging.info("Reading beat annotations from JAMS")
annot = jam.beats[0]
annot_beats = []
for data in annot.data:
annot_beats.append(data.time.value)
annot_beats = essentia.array(np.unique(annot_beats).tolist())
annot_mfcc, annot_hpcp, annot_tonnetz = compute_features(
audio, annot_beats)
# Save output as json file
logging.info("Saving the JSON file in %s" % out_file)
yaml = YamlOutput(filename=out_file, format='json')
pool = essentia.Pool()
pool.add("beats.times", features["beats"])
pool.add("beats.confidence", features["beats_conf"])
pool.set("analysis.sample_rate", msaf.Anal.sample_rate)
pool.set("analysis.frame_rate", msaf.Anal.frame_size)
pool.set("analysis.hop_size", msaf.Anal.hop_size)
pool.set("analysis.window_type", msaf.Anal.window_type)
pool.set("analysis.mfcc_coeff", msaf.Anal.mfcc_coeff)
pool.set("timestamp",
datetime.datetime.today().strftime("%Y/%m/%d %H:%M:%S"))
save_features("framesync", pool, features["mfcc"], features["hpcp"],
features["tonnetz"])
save_features("est_beatsync", pool, features["bs_mfcc"],
features["bs_hpcp"], features["bs_tonnetz"])
if os.path.isfile(file_struct.ref_file) and jam.beats != []:
save_features("ann_beatsync", pool, annot_mfcc, annot_hpcp,