flamo 0.1.12__py3-none-any.whl → 0.2.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
flamo/processor/system.py CHANGED
@@ -26,7 +26,7 @@ class Series(nn.Sequential):
26
26
  # Check nfft and alpha values
27
27
  self.nfft = self.__check_attribute("nfft")
28
28
  self.alias_decay_db = self.__check_attribute("alias_decay_db")
29
-
29
+ self.dtype = self.__check_attribute("dtype")
30
30
  # Check I/O compatibility
31
31
  self.input_channels, self.output_channels = self.__check_io()
32
32
 
@@ -65,6 +65,7 @@ class Series(nn.Sequential):
65
65
  # Check nfft and alpha values
66
66
  self.nfft = self.__check_attribute("nfft")
67
67
  self.alias_decay_db = self.__check_attribute("alias_decay_db")
68
+ self.dtype = self.__check_attribute("dtype")
68
69
 
69
70
  # Check I/O compatibility
70
71
  self.input_channels, self.output_channels = self.__check_io()
@@ -116,6 +117,7 @@ class Series(nn.Sequential):
116
117
  # Check nfft and alpha values
117
118
  self.nfft = self.__check_attribute("nfft")
118
119
  self.alias_decay_db = self.__check_attribute("alias_decay_db")
120
+ self.dtype = self.__check_attribute("dtype")
119
121
 
120
122
  # Check I/O compatibility
121
123
  self.input_channels, self.output_channels = self.__check_io()
@@ -357,7 +359,7 @@ class Recursion(nn.Module):
357
359
  # Check nfft and time anti-aliasing decay-envelope parameter values
358
360
  self.nfft = self.__check_attribute("nfft")
359
361
  self.alias_decay_db = self.__check_attribute("alias_decay_db")
360
-
362
+ self.dtype = self.__check_attribute("dtype")
361
363
  # Check I/O compatibility
362
364
  self.input_channels, self.output_channels = self.__check_io()
363
365
 
@@ -402,7 +404,7 @@ class Recursion(nn.Module):
402
404
  torch.Tensor: The identity matrix.
403
405
  """
404
406
  size = (self.nfft // 2 + 1, self.output_channels, self.output_channels)
405
- I = torch.complex(torch.zeros(*size), torch.zeros(*size))
407
+ I = torch.complex(torch.zeros(*size, dtype=self.dtype), torch.zeros(*size, dtype=self.dtype))
406
408
  for i in range(self.output_channels):
407
409
  I[:, i, i] = 1
408
410
  return I
@@ -544,6 +546,7 @@ class Parallel(nn.Module):
544
546
  # Check nfft and time anti-aliasing decay-envelope parameter values
545
547
  self.nfft = self.__check_attribute("nfft")
546
548
  self.alias_decay_db = self.__check_attribute("alias_decay_db")
549
+ self.dtype = self.__check_attribute("dtype")
547
550
 
548
551
  # Check I/O compatibility
549
552
  self.input_channels, self.output_channels = self.__check_io()
@@ -719,7 +722,7 @@ class Shell(nn.Module):
719
722
  # Check model nfft and time anti-aliasing decay-envelope parameter values
720
723
  self.nfft = self.__check_attribute("nfft")
721
724
  self.alias_decay_db = self.__check_attribute("alias_decay_db")
722
-
725
+ self.dtype = self.__check_attribute("dtype")
723
726
  # Check I/O compatibility
724
727
  self.input_channels, self.output_channels = self.__check_io()
725
728
 
@@ -895,15 +898,15 @@ class Shell(nn.Module):
895
898
  .view(1, -1, 1)
896
899
  .expand(1, -1, self.output_channels)
897
900
  )
898
-
901
+ self.alias_envelope = self.alias_envelope.to(dtype=self.dtype)
899
902
  # save input/output layers
900
903
  input_save = self.get_inputLayer()
901
904
  output_save = self.get_outputLayer()
902
905
 
903
906
  # update input/output layers
904
- self.set_inputLayer(FFT(self.nfft))
907
+ self.set_inputLayer(FFT(self.nfft, dtype=self.dtype))
905
908
  self.set_outputLayer(
906
- nn.Sequential(iFFT(self.nfft), Transform(lambda x: x * self.alias_envelope))
909
+ nn.Sequential(iFFT(self.nfft, dtype=self.dtype), Transform(lambda x: x * self.alias_envelope))
907
910
  )
908
911
 
909
912
  # generate input signal
@@ -914,6 +917,7 @@ class Shell(nn.Module):
914
917
  signal_type="impulse",
915
918
  fs=fs,
916
919
  device=gamma.device,
920
+ dtype=self.dtype
917
921
  )
918
922
  if identity and self.input_channels > 1:
919
923
  self.alias_envelope = self.alias_envelope.unsqueeze(-1).expand(
@@ -963,7 +967,7 @@ class Shell(nn.Module):
963
967
  .view(1, -1, 1)
964
968
  .expand(1, -1, self.output_channels)
965
969
  )
966
-
970
+ self.alias_envelope_exp = self.alias_envelope_exp.to(dtype=self.dtype)
967
971
  # save input/output layers
968
972
  input_save = self.get_inputLayer()
969
973
  output_save = self.get_outputLayer()
@@ -972,13 +976,13 @@ class Shell(nn.Module):
972
976
  self.set_inputLayer(FFT(self.nfft))
973
977
  self.set_outputLayer(
974
978
  nn.Sequential(
975
- iFFT(self.nfft),
979
+ iFFT(self.nfft, dtype=self.dtype),
976
980
  Transform(
977
981
  lambda x: torch.einsum(
978
982
  "bfm..., bfm... -> bfm...", x, self.alias_envelope_exp
979
983
  )
980
984
  ),
981
- FFT(self.nfft),
985
+ FFT(self.nfft, dtype=self.dtype),
982
986
  )
983
987
  ) # TODO, this is a very suboptimal way to do this, we need to find a better way
984
988
 
@@ -990,6 +994,7 @@ class Shell(nn.Module):
990
994
  signal_type="impulse",
991
995
  fs=fs,
992
996
  device=gamma.device,
997
+ dtype=self.dtype
993
998
  )
994
999
  if identity and self.input_channels > 1:
995
1000
  x = x.diag_embed()
flamo/utils.py CHANGED
@@ -22,12 +22,12 @@ def to_complex(x):
22
22
  return torch.complex(x, torch.zeros_like(x))
23
23
 
24
24
 
25
- def save_audio(filepath, x, fs=48000):
25
+ def save_audio(filepath, x, fs=48000, subtype='PCM_24'):
26
26
  # check if the folder exists
27
27
  folder = os.path.dirname(filepath)
28
28
  if not os.path.exists(folder):
29
29
  os.makedirs(folder)
30
- sf.write(filepath, x.cpu().numpy(), fs)
30
+ sf.write(filepath, x.cpu().numpy(), fs, subtype=subtype)
31
31
 
32
32
 
33
33
  class RegularGridInterpolator:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: flamo
3
- Version: 0.1.12
3
+ Version: 0.2.0
4
4
  Summary: An Open-Source Library for Frequency-Domain Differentiable Audio Processing
5
5
  Project-URL: Homepage, https://github.com/gdalsanto/flamo
6
6
  Project-URL: Issues, https://github.com/gdalsanto/flamo/issues
@@ -0,0 +1,24 @@
1
+ flamo/__init__.py,sha256=ujezWOJfD7DUoj4q1meeMUnB97rOEtNR7mYw_PE9LMg,49
2
+ flamo/functional.py,sha256=3vO5IHAO0kD0icNZw-EX5pecsmSUza-GmuY3WjHxN1M,38846
3
+ flamo/utils.py,sha256=Gn0aVa32lKeDcN0buyDGErq_uT7dUBmkEXweXpz-3Zw,3385
4
+ flamo/auxiliary/__init__.py,sha256=7lVNh8OxHloZ4KPmp-iTUJnUbi8XbuRzGaQ3Z-NKXio,42
5
+ flamo/auxiliary/eq.py,sha256=aI0og6x82r_o3Q7xGu36scdf51e2ARhYmFyJqnEIzQc,7364
6
+ flamo/auxiliary/filterbank.py,sha256=02w8dI8HoNDtKpdVhSJkIkd-h-KNXvZtivf3l4_ozzU,9866
7
+ flamo/auxiliary/minimize.py,sha256=fMTAAAk9yD7Y4luKS4XA1-HTq44xo2opq_dRPRrhlIY,2474
8
+ flamo/auxiliary/reverb.py,sha256=jrNsNUH5B0S-1U-DfPnNVGqpbKCZHfeiFmoCGeiX1QU,34915
9
+ flamo/auxiliary/scattering.py,sha256=IV9ZgkMfgEWtQo3IeLJviAXAdjrYI_Tob-H_8Zv8oBA,9729
10
+ flamo/auxiliary/velvet.py,sha256=B4pYEnhaQPkh02pxqiGdAhLRX2g-eWtHezphi0_h4Qs,4201
11
+ flamo/auxiliary/config/config.py,sha256=sZ3XvqwV6KiIc2n8HRtg7YJE3zhc7Vqblbqs-Z0bsKg,2978
12
+ flamo/optimize/__init__.py,sha256=grgxLmQ7m-c9MvRdIejmEAaaajfBwgeaZAv2qjHIvPw,65
13
+ flamo/optimize/dataset.py,sha256=cdedwSZRASIfk21zSlflerpKF1TmVy0JWDw8dhSA4z4,5976
14
+ flamo/optimize/loss.py,sha256=h6EeqjdX5P1SqDBKBavSxV25VBgnYK8tuX91wk6lw_g,33466
15
+ flamo/optimize/surface.py,sha256=aYWXg2ZNJzFjHRILcgrTfNkQ2VSoaMfMSnu9IPM8O-8,26475
16
+ flamo/optimize/trainer.py,sha256=he4nUjLC-3RTlxxBIw33r5k8mQfgAGvN1wpPBAWCjVo,12045
17
+ flamo/optimize/utils.py,sha256=R5-KoZagRho3eykY88pC3UB2mc5SsE4Yv9X-ogskXdA,1610
18
+ flamo/processor/__init__.py,sha256=paGdxGVZgA2VAs0tBwRd0bobzGxeyK79DS7ZGO8drkI,41
19
+ flamo/processor/dsp.py,sha256=a5etio4qfJWwAsHpAk3CXDgEd3LMet-r_956216SO6M,128874
20
+ flamo/processor/system.py,sha256=Hct-o6IgF5NQ2xYbX-1j3st94hMoM8dOgAzle2gjDqU,43145
21
+ flamo-0.2.0.dist-info/METADATA,sha256=cGqrN7snqzo-GWh2jLQyEXqQHCuPa0BNPRW5Y0IgwTA,7825
22
+ flamo-0.2.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
23
+ flamo-0.2.0.dist-info/licenses/LICENSE,sha256=smMocRH7xdPT5RvFNqSLtbSNzohXJM5G_rX1Qaej6vg,1120
24
+ flamo-0.2.0.dist-info/RECORD,,
@@ -1,24 +0,0 @@
1
- flamo/__init__.py,sha256=ujezWOJfD7DUoj4q1meeMUnB97rOEtNR7mYw_PE9LMg,49
2
- flamo/functional.py,sha256=8cKYzR5GDzH4ph4ja7x1znNFL-8ufWoxa666QHaZR1A,36917
3
- flamo/utils.py,sha256=ypGKSABZMphgIrjCKgCH-zgR7BaupRbyzuUhsZFqAAM,3350
4
- flamo/auxiliary/__init__.py,sha256=7lVNh8OxHloZ4KPmp-iTUJnUbi8XbuRzGaQ3Z-NKXio,42
5
- flamo/auxiliary/eq.py,sha256=eIWMIq0ggizXLhTdeWWbgBXWUFXCJyoEbkBH7Gzasao,6779
6
- flamo/auxiliary/filterbank.py,sha256=02w8dI8HoNDtKpdVhSJkIkd-h-KNXvZtivf3l4_ozzU,9866
7
- flamo/auxiliary/minimize.py,sha256=fMTAAAk9yD7Y4luKS4XA1-HTq44xo2opq_dRPRrhlIY,2474
8
- flamo/auxiliary/reverb.py,sha256=fAJgTGq_yaQguBrrnifJNl4ySIkPb0NdrcFKNCNL4xc,34769
9
- flamo/auxiliary/scattering.py,sha256=qlK8cynrpde56yLlbPuScC0Y1VmsPb0SFXl6Xisv6hA,9420
10
- flamo/auxiliary/velvet.py,sha256=B4pYEnhaQPkh02pxqiGdAhLRX2g-eWtHezphi0_h4Qs,4201
11
- flamo/auxiliary/config/config.py,sha256=CxXj-8sLq0_m9KyLg1a6NwLoK1UvTz3i0jZOLraq14I,2893
12
- flamo/optimize/__init__.py,sha256=grgxLmQ7m-c9MvRdIejmEAaaajfBwgeaZAv2qjHIvPw,65
13
- flamo/optimize/dataset.py,sha256=2mfzsnyX_bzavXouII9ee_pd6ti4lv215ieGJHscceI,5829
14
- flamo/optimize/loss.py,sha256=h6EeqjdX5P1SqDBKBavSxV25VBgnYK8tuX91wk6lw_g,33466
15
- flamo/optimize/surface.py,sha256=eGDg9Zksicu1EO3irjyECEhp2oplj9HMNNuDK_WnHe4,26139
16
- flamo/optimize/trainer.py,sha256=he4nUjLC-3RTlxxBIw33r5k8mQfgAGvN1wpPBAWCjVo,12045
17
- flamo/optimize/utils.py,sha256=R5-KoZagRho3eykY88pC3UB2mc5SsE4Yv9X-ogskXdA,1610
18
- flamo/processor/__init__.py,sha256=paGdxGVZgA2VAs0tBwRd0bobzGxeyK79DS7ZGO8drkI,41
19
- flamo/processor/dsp.py,sha256=n92YJPrES-ydwHgXmZ9RkFevIC3n-Wh4X8I1QNZqcV0,126378
20
- flamo/processor/system.py,sha256=9XwLtaGEVs9glVOFvyiPnQpsnR_Wjrv6k1i1qCs8D1Q,42516
21
- flamo-0.1.12.dist-info/METADATA,sha256=03qRhouKUzsmZs4bXb3LUGyhVAUIYLiZk6Z7KOiYyyk,7826
22
- flamo-0.1.12.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
23
- flamo-0.1.12.dist-info/licenses/LICENSE,sha256=smMocRH7xdPT5RvFNqSLtbSNzohXJM5G_rX1Qaej6vg,1120
24
- flamo-0.1.12.dist-info/RECORD,,
File without changes