mirror of
https://github.com/YuzuZensai/spleeter.git
synced 2026-01-31 14:58:23 +00:00
Adding support for mono files with librosa backend
This commit is contained in:
@@ -123,12 +123,16 @@ class Separator(object):
|
||||
win = hann(N, sym=False)
|
||||
fstft = istft if inverse else stft
|
||||
win_len_arg = {"win_length": None, "length": length} if inverse else {"n_fft": N}
|
||||
dl, dr = (data[:, :, 0].T, data[:, :, 1].T) if inverse else (data[:, 0], data[:, 1])
|
||||
s1 = fstft(dl, hop_length=H, window=win, center=False, **win_len_arg)
|
||||
s2 = fstft(dr, hop_length=H, window=win, center=False, **win_len_arg)
|
||||
s1 = np.expand_dims(s1.T, 2-inverse)
|
||||
s2 = np.expand_dims(s2.T, 2-inverse)
|
||||
return np.concatenate([s1, s2], axis=2-inverse)
|
||||
n_channels = data.shape[-1]
|
||||
out = []
|
||||
for c in range(n_channels):
|
||||
d = data[:, :, c].T if inverse else data[:, c]
|
||||
s = fstft(dl, hop_length=H, window=win, center=False, **win_len_arg)
|
||||
s = np.expand_dims(s.T, 2-inverse)
|
||||
out.append(s)
|
||||
if len(out) == 1:
|
||||
return out[0]
|
||||
return np.concatenate(out, axis=2-inverse)
|
||||
|
||||
def separate_librosa(self, waveform, audio_id):
|
||||
out = {}
|
||||
|
||||
Reference in New Issue
Block a user