Commit
·
15a3b0b
1
Parent(s):
a39bbc9
basic websockets route added
Browse files- jam_worker.py +10 -3
jam_worker.py
CHANGED
@@ -103,7 +103,10 @@ class JamWorker(threading.Thread):
|
|
103 |
self._model_sr = int(self.mrt.sample_rate)
|
104 |
|
105 |
# target-SR in-RAM spool (what we cut loops from)
|
106 |
-
|
|
|
|
|
|
|
107 |
self._spool = np.zeros((0, 2), dtype=np.float32) # (S,2) target SR
|
108 |
self._spool_written = 0 # absolute frames written into spool
|
109 |
|
@@ -425,7 +428,9 @@ class JamWorker(threading.Thread):
|
|
425 |
new_part = s[xfade_n:] if xfade_n < s.shape[0] else s[:0]
|
426 |
self._model_stream = new_part.copy()
|
427 |
if new_part.size:
|
428 |
-
y =
|
|
|
|
|
429 |
self._spool = np.concatenate([self._spool, y], axis=0)
|
430 |
self._spool_written += y.shape[0]
|
431 |
return
|
@@ -444,7 +449,9 @@ class JamWorker(threading.Thread):
|
|
444 |
|
445 |
# spool only the *new* non-overlapped part
|
446 |
if new_part.size:
|
447 |
-
y =
|
|
|
|
|
448 |
if y.size:
|
449 |
self._spool = np.concatenate([self._spool, y], axis=0)
|
450 |
self._spool_written += y.shape[0]
|
|
|
103 |
self._model_sr = int(self.mrt.sample_rate)
|
104 |
|
105 |
# target-SR in-RAM spool (what we cut loops from)
|
106 |
+
if int(self.params.target_sr) != int(self._model_sr):
|
107 |
+
self._rs = StreamingResampler(self._model_sr, int(self.params.target_sr), channels=2)
|
108 |
+
else:
|
109 |
+
self._rs = None
|
110 |
self._spool = np.zeros((0, 2), dtype=np.float32) # (S,2) target SR
|
111 |
self._spool_written = 0 # absolute frames written into spool
|
112 |
|
|
|
428 |
new_part = s[xfade_n:] if xfade_n < s.shape[0] else s[:0]
|
429 |
self._model_stream = new_part.copy()
|
430 |
if new_part.size:
|
431 |
+
y = (new_part.astype(np.float32, copy=False)
|
432 |
+
if self._rs is None else
|
433 |
+
self._rs.process(new_part.astype(np.float32, copy=False), final=False))
|
434 |
self._spool = np.concatenate([self._spool, y], axis=0)
|
435 |
self._spool_written += y.shape[0]
|
436 |
return
|
|
|
449 |
|
450 |
# spool only the *new* non-overlapped part
|
451 |
if new_part.size:
|
452 |
+
y = (new_part.astype(np.float32, copy=False)
|
453 |
+
if self._rs is None else
|
454 |
+
self._rs.process(new_part.astype(np.float32, copy=False), final=False))
|
455 |
if y.size:
|
456 |
self._spool = np.concatenate([self._spool, y], axis=0)
|
457 |
self._spool_written += y.shape[0]
|