@@ -64,7 +64,6 @@ def open_config():
6464 KEY_BASS = keyboard .key_to_scan_codes (SPP_CONFIG ["KEY_BASS" ])[0 ]
6565 KEY_DRUMS = keyboard .key_to_scan_codes (SPP_CONFIG ["KEY_DRUMS" ])[0 ]
6666
67-
6867
6968def slider (value ):
7069 i = instrumentals_Scale .get ()
@@ -109,18 +108,24 @@ def open_new():
109108 note_objects = [a1Note , a2Note , a3Note , a4Note ]
110109
111110def merge_stems ():
112- merging = True
113- open_new ()
114- merging = False
115- text = stem_list [0 ]
116- soundformat = text .partition ("1." )[2 ]
117- stem1 = AudioSegment .from_file (stem_list [0 ])
118- stem2 = AudioSegment .from_file (stem_list [1 ])
119- stem3 = AudioSegment .from_file (stem_list [2 ])
120- stem4 = AudioSegment .from_file (stem_list [3 ])
121- overlay = stem1 .overlay (stem2 .overlay (stem3 .overlay (stem4 )))
122-
123- file_handle = overlay .export (text .partition ("1." )[0 ] + "." + soundformat , format = soundformat )
111+ global stem_list
112+ from shutil import which
113+ print (which ('ffmpeg' ))
114+ if which ('ffmpeg' ) is not None :
115+ merging = True
116+ open_new ()
117+ merging = False
118+ if stem_list :
119+ text = stem_list [0 ]
120+ soundformat = text .partition ("1." )[2 ]
121+ stem1 = AudioSegment .from_file (stem_list [0 ])
122+ stem2 = AudioSegment .from_file (stem_list [1 ])
123+ stem3 = AudioSegment .from_file (stem_list [2 ])
124+ stem4 = AudioSegment .from_file (stem_list [3 ])
125+ overlay = stem1 .overlay (stem2 .overlay (stem3 .overlay (stem4 )))
126+ file_handle = overlay .export (text .partition ("1." )[0 ] + "." + soundformat , format = soundformat )
127+ else :
128+ tk .messagebox .showerror (title = "ffmpeg not found" , message = "ffmpeg not found on your system. Please install ffmpeg and make sure it is added to your PATH." )
124129
125130def toggle_keybinds ():
126131 print (onoff .get ())
0 commit comments