from preliminary_experiment import * from torchaudio.utils import download_asset if __name__ == '__main__': #path = "../../7guys1pack/28 Grams/28 Grams.ogg" #path_ex = "../../7guys1pack/Pretty Please/Pretty Please.ogg" #read_file_meta_data(path="../../7guys1pack/Banger Machine/Banger Machine.sm") #path_pack = "../../7guys1pack/" #path_pack = "../../DDR/" path_pack = "../../FF-DD/" songs = [] filtered_songs = [] distances = [] #print(os.listdir(path_pack)) iter = 0 # make a list of songs of file type sm for folder in os.listdir(path_pack): if iter <= 80: path_folder = os.path.join(path_pack, folder) if os.path.isdir(path_folder): for file in os.listdir(path_folder): if file.endswith(".sm"): songs.append(os.path.join(path_folder, file)) else: break iter += 1 print(songs) # filter for songs with only one bpm: for song in songs: opened_file = simfile.open(song) with open(song, 'r', encoding="utf8") as infile: print(song) loaded_file = simfile.load(infile) timing_data = TimingData(opened_file) chart = get_middle_chart(loaded_file.charts) split_timing = TimingData(opened_file, chart) print(f"BPMs splitted: {split_timing.bpms}") print(split_timing.bpms.data.__len__()) #print(len(str(split_timing.bpms.split(", ")))) if len(str(split_timing.bpms.data.__len__())) == 1: filtered_songs.append(song) print(filtered_songs) # calculate info for each song for song in filtered_songs: distances.append(read_file_meta_data(path=song)) # 107 bpm, meter 5 #distances.append(read_file_meta_data(path="../../7guys1pack/Pretty Please/Pretty Please.sm")) # 112 bpm, meter 5 #distances.append(read_file_meta_data(path="../../7guys1pack/bad boy/bad boy.sm")) # 124 bpm, #distances.append(read_file_meta_data(path="../../7guys1pack/Banger Machine/Banger Machine.sm")) # 150 bpm, meter 4 #distances.append(read_file_meta_data(path="../../7guys1pack/ALONE [In The Dark]/ALONE [In The Dark].sm")) # 125 bpm, meter 4 #distances.append(read_file_meta_data(path="../../7guys1pack/And Drugs/And Drugs.sm")) # 128bpm, meter 6 #distances.append(read_file_meta_data(path="../../7guys1pack/And Laugh/And Laugh.sm")) #distances.append(read_file_meta_data(path="../../7guys1pack/Abberate/Abberate.sm")) # 120 bpm, meter 5 #distances.append(read_file_meta_data(path="../../7guys1pack/Asymmetric Snowflakes/Asymmetric Snowflakes.sm")) #distances.append(read_file_meta_data(path="../../7guys1pack/BOY/BOY.sm")) # 128 bpm, meter 5 #distances.append(read_file_meta_data(path="../../7guys1pack/Bring Em Back/Bring Em Back.sm")) # 122 bpm, meter 4 #distances.append(read_file_meta_data(path="../../7guys1pack/Bug A Boo (Joe Stone Remix)/Bug A Boo (Joe Stone Remix).sm")) #distances.append(read_file_meta_data(path="../../7guys1pack/Carnival (TEEZ Remix)/Carnival (TEEZ Remix).sm")) # 175 bpm, meter 4 #distances.append(read_file_meta_data(path="../../7guys1pack/Chase the Shadow (2021 Rework)/Chase the Shadow (2021 Rework).sm")) #distances.append(read_file_meta_data(path="../../7guys1pack/BOY/BOY.sm")) #SAMPLE_GSM = download_asset("tutorial-assets/steam-train-whistle-daniel_simon.gsm") #SAMPLE_WAV = download_asset("tutorial-assets/Lab41-SRI-VOiCES-src-sp0307-ch127535-sg0042.wav") #SAMPLE_WAV_8000 = download_asset("tutorial-assets/Lab41-SRI-VOiCES-src-sp0307-ch127535-sg0042-8000hz.wav") print(distances) plot_end_histogram(distances, "./outputs/distances.pdf") #read_audio(path_ex) #read_audio(SAMPLE_WAV)