3v324v23 commited on
Commit
fe380fd
1 Parent(s): 6a19d49

no more insanely small scales

Browse files
Files changed (1) hide show
  1. app.py +16 -7
app.py CHANGED
@@ -9,21 +9,30 @@ def _safer_eval(string:str) -> float:
9
 
10
  def BeatSwap(audiofile, pattern: str = 'test', scale:float = 1, shift:float = 0, caching:bool = True, variableBPM:bool = False):
11
  print()
12
- print(f'___ PATH = {audiofile} ___')
13
- if scale == '' or scale is None: scale = 1
14
- if shift == '' or shift is None: shift = 0
15
  if pattern == '' or pattern is None: pattern = 'test'
16
- scale=_safer_eval(scale)
17
- shift=_safer_eval(shift)
 
 
 
 
 
18
  if audiofile is not None:
19
  try:
20
- song=bm.song(path=audiofile, filename=audiofile.split('.')[-2][:-8]+'.'+audiofile.split('.')[-1], caching=caching)
21
  except Exception as e:
22
  print(f'Failed to load audio, retrying: {e}')
23
- song=bm.song(path=audiofile, caching=caching)
24
  else:
25
  print(f'Audiofile is {audiofile}')
26
  return
 
 
 
 
 
 
27
  lib = 'madmom.BeatDetectionProcessor' if variableBPM is False else 'madmom.BeatTrackingProcessor'
28
  song.beatmap.generate(lib=lib, caching=caching)
29
  song.beatmap.shift(shift)
 
9
 
10
  def BeatSwap(audiofile, pattern: str = 'test', scale:float = 1, shift:float = 0, caching:bool = True, variableBPM:bool = False):
11
  print()
12
+ print(f'path = {audiofile}, pattern = "{pattern}", scale = {scale}, shift = {shift}, caching = {caching}, variable BPM = {variableBPM}', end=', ')
 
 
13
  if pattern == '' or pattern is None: pattern = 'test'
14
+ try:
15
+ scale=_safer_eval(scale)
16
+ except: scale = 1
17
+ try:
18
+ shift=_safer_eval(shift)
19
+ except: shift = 0
20
+ if scale < 0.02: scale = 0.02
21
  if audiofile is not None:
22
  try:
23
+ song=bm.song(path=audiofile, filename=audiofile.split('.')[-2][:-8]+'.'+audiofile.split('.')[-1], caching=caching, log=False)
24
  except Exception as e:
25
  print(f'Failed to load audio, retrying: {e}')
26
+ song=bm.song(path=audiofile, caching=caching, log=False)
27
  else:
28
  print(f'Audiofile is {audiofile}')
29
  return
30
+ try:
31
+ print(scale, shift, len(song.audio[0])/song.samplerate)
32
+ if len(song.audio[0]) > (song.samplerate*1800):
33
+ song.audio = np.asarray(song.audio)
34
+ song.audio = song.audio[:,:song.samplerate*1800]
35
+ except Exception as e: print(f'Reducing audio size failed, why? {e}')
36
  lib = 'madmom.BeatDetectionProcessor' if variableBPM is False else 'madmom.BeatTrackingProcessor'
37
  song.beatmap.generate(lib=lib, caching=caching)
38
  song.beatmap.shift(shift)