lt-tensor 0.0.1a14__py3-none-any.whl → 0.0.1a16__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.
- lt_tensor/datasets/audio.py +23 -6
- lt_tensor/model_base.py +163 -123
- lt_tensor/model_zoo/__init__.py +8 -6
- lt_tensor/model_zoo/audio_models/__init__.py +1 -0
- lt_tensor/model_zoo/audio_models/diffwave/__init__.py +3 -0
- lt_tensor/model_zoo/audio_models/diffwave/model.py +201 -0
- lt_tensor/model_zoo/audio_models/hifigan/__init__.py +393 -0
- lt_tensor/model_zoo/audio_models/istft/__init__.py +409 -0
- lt_tensor/model_zoo/basic.py +139 -0
- lt_tensor/model_zoo/features.py +102 -11
- lt_tensor/model_zoo/residual.py +133 -64
- {lt_tensor-0.0.1a14.dist-info → lt_tensor-0.0.1a16.dist-info}/METADATA +1 -1
- {lt_tensor-0.0.1a14.dist-info → lt_tensor-0.0.1a16.dist-info}/RECORD +16 -16
- lt_tensor/model_zoo/discriminator.py +0 -196
- lt_tensor/model_zoo/istft/__init__.py +0 -5
- lt_tensor/model_zoo/istft/generator.py +0 -90
- lt_tensor/model_zoo/istft/sg.py +0 -142
- lt_tensor/model_zoo/istft/trainer.py +0 -618
- {lt_tensor-0.0.1a14.dist-info → lt_tensor-0.0.1a16.dist-info}/WHEEL +0 -0
- {lt_tensor-0.0.1a14.dist-info → lt_tensor-0.0.1a16.dist-info}/licenses/LICENSE +0 -0
- {lt_tensor-0.0.1a14.dist-info → lt_tensor-0.0.1a16.dist-info}/top_level.txt +0 -0
lt_tensor/model_zoo/features.py
CHANGED
@@ -323,8 +323,11 @@ class AudioEncoder(Model):
|
|
323
323
|
|
324
324
|
def __init__(
|
325
325
|
self,
|
326
|
-
channels: int
|
326
|
+
channels: int,
|
327
327
|
alpha: float = 4.0,
|
328
|
+
feat_channels: int = 64,
|
329
|
+
out_features: Optional[int] = None,
|
330
|
+
out_channels: int = 1,
|
328
331
|
interp_mode: Literal[
|
329
332
|
"nearest",
|
330
333
|
"linear",
|
@@ -338,16 +341,60 @@ class AudioEncoder(Model):
|
|
338
341
|
|
339
342
|
self.net = nn.Sequential(
|
340
343
|
nn.Conv1d(
|
341
|
-
channels,
|
344
|
+
channels, feat_channels, kernel_size=3, stride=1, padding=5, groups=1
|
342
345
|
),
|
343
346
|
nn.LeakyReLU(0.1),
|
344
|
-
nn.Conv1d(
|
347
|
+
nn.Conv1d(
|
348
|
+
feat_channels,
|
349
|
+
feat_channels,
|
350
|
+
kernel_size=3,
|
351
|
+
stride=2,
|
352
|
+
padding=1,
|
353
|
+
groups=feat_channels,
|
354
|
+
),
|
355
|
+
nn.LeakyReLU(0.1),
|
356
|
+
nn.Conv1d(
|
357
|
+
feat_channels,
|
358
|
+
feat_channels,
|
359
|
+
kernel_size=3,
|
360
|
+
stride=1,
|
361
|
+
padding=1,
|
362
|
+
groups=feat_channels // 8,
|
363
|
+
),
|
364
|
+
nn.LeakyReLU(0.1),
|
365
|
+
nn.Conv1d(
|
366
|
+
feat_channels,
|
367
|
+
feat_channels,
|
368
|
+
kernel_size=7,
|
369
|
+
stride=1,
|
370
|
+
padding=1,
|
371
|
+
groups=1,
|
372
|
+
),
|
345
373
|
)
|
346
|
-
self.fc = nn.Linear(
|
374
|
+
self.fc = nn.Linear(feat_channels, channels)
|
375
|
+
self.feat_channels = feat_channels
|
347
376
|
self.activation = activation
|
348
377
|
self.channels = channels
|
349
378
|
self.mode = interp_mode
|
350
379
|
self.alpha = alpha
|
380
|
+
self.post_conv = nn.Conv1d(
|
381
|
+
channels,
|
382
|
+
out_channels,
|
383
|
+
kernel_size=1,
|
384
|
+
stride=1,
|
385
|
+
padding=0,
|
386
|
+
dilation=1,
|
387
|
+
groups=1,
|
388
|
+
bias=True,
|
389
|
+
)
|
390
|
+
if out_features is not None:
|
391
|
+
self.format_out = lambda tensor: F.interpolate(
|
392
|
+
tensor,
|
393
|
+
size=out_features,
|
394
|
+
mode=interp_mode,
|
395
|
+
)
|
396
|
+
else:
|
397
|
+
self.format_out = nn.Identity()
|
351
398
|
|
352
399
|
def forward(self, mels: Tensor, cr_audio: Tensor):
|
353
400
|
sin = torch.asin(cr_audio)
|
@@ -367,14 +414,20 @@ class AudioEncoder(Model):
|
|
367
414
|
.contiguous()
|
368
415
|
)
|
369
416
|
x = self.activation(x)
|
370
|
-
|
417
|
+
|
418
|
+
xt = self.fc(x).transpose(-1, -2)
|
419
|
+
out = self.post_conv(xt)
|
420
|
+
return self.format_out(out)
|
371
421
|
|
372
422
|
|
373
423
|
class AudioEncoderAttn(Model):
|
374
424
|
def __init__(
|
375
425
|
self,
|
376
|
-
channels: int
|
426
|
+
channels: int,
|
427
|
+
feat_channels: int = 64,
|
377
428
|
alpha: float = 4.0,
|
429
|
+
out_channels: Optional[int] = None,
|
430
|
+
out_features: int = 1,
|
378
431
|
interp_mode: Literal[
|
379
432
|
"nearest",
|
380
433
|
"linear",
|
@@ -388,16 +441,54 @@ class AudioEncoderAttn(Model):
|
|
388
441
|
|
389
442
|
self.net = nn.Sequential(
|
390
443
|
nn.Conv1d(
|
391
|
-
channels,
|
444
|
+
channels, feat_channels, kernel_size=3, stride=1, padding=1, groups=1
|
445
|
+
),
|
446
|
+
nn.LeakyReLU(0.1),
|
447
|
+
nn.Conv1d(
|
448
|
+
feat_channels,
|
449
|
+
feat_channels,
|
450
|
+
kernel_size=3,
|
451
|
+
stride=2,
|
452
|
+
padding=5,
|
453
|
+
groups=feat_channels,
|
392
454
|
),
|
393
455
|
nn.LeakyReLU(0.1),
|
394
|
-
nn.Conv1d(
|
456
|
+
nn.Conv1d(
|
457
|
+
feat_channels,
|
458
|
+
feat_channels,
|
459
|
+
kernel_size=3,
|
460
|
+
stride=1,
|
461
|
+
padding=1,
|
462
|
+
groups=feat_channels // 8,
|
463
|
+
),
|
464
|
+
nn.LeakyReLU(0.1),
|
465
|
+
nn.Conv1d(
|
466
|
+
feat_channels, channels, kernel_size=7, stride=1, padding=1, groups=1
|
467
|
+
),
|
395
468
|
)
|
396
469
|
self.fusion = CrossAttentionFusion(channels, channels, 2, d_model=channels)
|
397
470
|
self.channels = channels
|
398
471
|
self.mode = interp_mode
|
399
472
|
self.alpha = alpha
|
400
473
|
self.activation = activation
|
474
|
+
self.post_conv = nn.Conv1d(
|
475
|
+
channels,
|
476
|
+
out_channels,
|
477
|
+
kernel_size=1,
|
478
|
+
stride=1,
|
479
|
+
padding=0,
|
480
|
+
dilation=1,
|
481
|
+
groups=1,
|
482
|
+
bias=True,
|
483
|
+
)
|
484
|
+
if out_features is not None:
|
485
|
+
self.format_out = lambda tensor: F.interpolate(
|
486
|
+
tensor,
|
487
|
+
size=out_features,
|
488
|
+
mode=interp_mode,
|
489
|
+
)
|
490
|
+
else:
|
491
|
+
self.format_out = nn.Identity()
|
401
492
|
|
402
493
|
def forward(self, mels: Tensor, cr_audio: Tensor):
|
403
494
|
sin = torch.asin(cr_audio)
|
@@ -408,9 +499,9 @@ class AudioEncoderAttn(Model):
|
|
408
499
|
)
|
409
500
|
x = self.activation(self.net(mod))
|
410
501
|
x = F.interpolate(x, size=mels.shape[-1], mode=self.mode)
|
411
|
-
|
412
|
-
# Ensure contiguous before transpose
|
413
502
|
x_t = x.transpose(-2, -1).contiguous()
|
414
503
|
mels_t = mels.transpose(-2, -1).contiguous()
|
415
504
|
|
416
|
-
|
505
|
+
xt = self.fusion(x_t, mels_t).transpose(-2, -1)
|
506
|
+
out = self.post_conv(xt)
|
507
|
+
return self.format_out(out)
|
lt_tensor/model_zoo/residual.py
CHANGED
@@ -5,7 +5,9 @@ __all__ = [
|
|
5
5
|
"ResBlock2D",
|
6
6
|
"ResBlock1DShuffled",
|
7
7
|
"AdaResBlock1D",
|
8
|
-
"
|
8
|
+
"ResBlocks1D",
|
9
|
+
"ResBlock1D2",
|
10
|
+
"ShuffleBlock2D",
|
9
11
|
]
|
10
12
|
import math
|
11
13
|
from lt_utils.common import *
|
@@ -45,38 +47,8 @@ class ConvNets(Model):
|
|
45
47
|
m.weight.data.normal_(mean, std)
|
46
48
|
|
47
49
|
|
48
|
-
|
49
|
-
|
50
|
-
self,
|
51
|
-
channels: int,
|
52
|
-
resblock_kernel_sizes: List[Union[int, List[int]]] = [3, 7, 11],
|
53
|
-
resblock_dilation_sizes: List[Union[int, List[int]]] = [
|
54
|
-
[1, 3, 5],
|
55
|
-
[1, 3, 5],
|
56
|
-
[1, 3, 5],
|
57
|
-
],
|
58
|
-
activation: nn.Module = nn.LeakyReLU(0.1),
|
59
|
-
):
|
60
|
-
super().__init__()
|
61
|
-
self.num_kernels = len(resblock_kernel_sizes)
|
62
|
-
self.rb = nn.ModuleList()
|
63
|
-
self.activation = activation
|
64
|
-
|
65
|
-
for k, j in zip(resblock_kernel_sizes, resblock_dilation_sizes):
|
66
|
-
self.rb.append(ResBlock1D(channels, k, j, activation))
|
67
|
-
|
68
|
-
self.rb.apply(self.init_weights)
|
69
|
-
|
70
|
-
def forward(self, x: torch.Tensor):
|
71
|
-
xs = None
|
72
|
-
for i, block in enumerate(self.rb):
|
73
|
-
if i == 0:
|
74
|
-
xs = block(x)
|
75
|
-
else:
|
76
|
-
xs += block(x)
|
77
|
-
x = xs / self.num_kernels
|
78
|
-
return x
|
79
|
-
|
50
|
+
def get_padding(ks, d):
|
51
|
+
return int((ks * d - d) / 2)
|
80
52
|
|
81
53
|
|
82
54
|
class ResBlock1D(ConvNets):
|
@@ -92,14 +64,13 @@ class ResBlock1D(ConvNets):
|
|
92
64
|
self.conv_nets = nn.ModuleList(
|
93
65
|
[
|
94
66
|
self._get_conv_layer(i, channels, kernel_size, 1, dilation, activation)
|
95
|
-
for i in range(
|
67
|
+
for i in range(len(dilation))
|
96
68
|
]
|
97
69
|
)
|
98
70
|
self.conv_nets.apply(self.init_weights)
|
99
71
|
self.last_index = len(self.conv_nets) - 1
|
100
72
|
|
101
73
|
def _get_conv_layer(self, id, ch, k, stride, d, actv):
|
102
|
-
get_padding = lambda ks, d: int((ks * d - d) / 2)
|
103
74
|
return nn.Sequential(
|
104
75
|
actv, # 1
|
105
76
|
weight_norm(
|
@@ -126,16 +97,11 @@ class ResBlock1DShuffled(ConvNets):
|
|
126
97
|
kernel_size=3,
|
127
98
|
dilation=(1, 3, 5),
|
128
99
|
activation: nn.Module = nn.LeakyReLU(0.1),
|
129
|
-
add_channel_shuffle: bool = False, # requires pytorch 2.7.0 +
|
130
100
|
channel_shuffle_groups=1,
|
131
101
|
):
|
132
102
|
super().__init__()
|
133
103
|
|
134
|
-
self.channel_shuffle = (
|
135
|
-
nn.ChannelShuffle(channel_shuffle_groups)
|
136
|
-
if add_channel_shuffle
|
137
|
-
else nn.Identity()
|
138
|
-
)
|
104
|
+
self.channel_shuffle = nn.ChannelShuffle(channel_shuffle_groups)
|
139
105
|
|
140
106
|
self.conv_nets = nn.ModuleList(
|
141
107
|
[
|
@@ -171,29 +137,67 @@ class ResBlock1DShuffled(ConvNets):
|
|
171
137
|
class ResBlock2D(Model):
|
172
138
|
def __init__(
|
173
139
|
self,
|
174
|
-
in_channels,
|
175
|
-
out_channels,
|
176
|
-
|
140
|
+
in_channels: int,
|
141
|
+
out_channels: Optional[int] = None,
|
142
|
+
hidden_dim: int = 32,
|
143
|
+
downscale: bool = False,
|
144
|
+
activation: nn.Module = nn.LeakyReLU(0.2),
|
177
145
|
):
|
178
146
|
super().__init__()
|
179
|
-
stride = 2 if
|
147
|
+
stride = 2 if downscale else 1
|
148
|
+
if out_channels is None:
|
149
|
+
out_channels = in_channels
|
180
150
|
|
181
151
|
self.block = nn.Sequential(
|
182
|
-
nn.Conv2d(in_channels,
|
183
|
-
|
184
|
-
nn.Conv2d(
|
152
|
+
nn.Conv2d(in_channels, hidden_dim, 3, stride, 1),
|
153
|
+
activation,
|
154
|
+
nn.Conv2d(hidden_dim, hidden_dim, 7, 1, 3),
|
155
|
+
activation,
|
156
|
+
nn.Conv2d(hidden_dim, out_channels, 3, 1, 1),
|
185
157
|
)
|
186
158
|
|
187
159
|
self.skip = nn.Identity()
|
188
|
-
if
|
160
|
+
if downscale or in_channels != out_channels:
|
189
161
|
self.skip = spectral_norm_select(
|
190
162
|
nn.Conv2d(in_channels, out_channels, 1, stride)
|
191
163
|
)
|
192
|
-
# on less to be handled every
|
164
|
+
# on less to be handled every cycle
|
193
165
|
self.sqrt_2 = math.sqrt(2)
|
194
166
|
|
195
167
|
def forward(self, x: Tensor):
|
196
|
-
return (self.block(x) + self.skip(x)) / self.sqrt_2
|
168
|
+
return x + ((self.block(x) + self.skip(x)) / self.sqrt_2)
|
169
|
+
|
170
|
+
|
171
|
+
class ShuffleBlock2D(ConvNets):
|
172
|
+
def __init__(
|
173
|
+
self,
|
174
|
+
channels: int,
|
175
|
+
out_channels: Optional[int] = None,
|
176
|
+
hidden_dim: int = 32,
|
177
|
+
downscale: bool = False,
|
178
|
+
activation: nn.Module = nn.LeakyReLU(0.1),
|
179
|
+
):
|
180
|
+
super().__init__()
|
181
|
+
if out_channels is None:
|
182
|
+
out_channels = channels
|
183
|
+
self.shuffle = nn.ChannelShuffle(groups=2)
|
184
|
+
self.ch_split = lambda tensor: torch.split(tensor, 1, dim=1)
|
185
|
+
self.activation = activation
|
186
|
+
self.resblock_2d = ResBlock2D(
|
187
|
+
channels, out_channels, hidden_dim, downscale, activation
|
188
|
+
)
|
189
|
+
|
190
|
+
def shuffle_channels(self, tensor: torch.Tensor):
|
191
|
+
with torch.no_grad():
|
192
|
+
x = F.channel_shuffle(tensor.transpose(1, -1), tensor.shape[1]).transpose(
|
193
|
+
-1, 1
|
194
|
+
)
|
195
|
+
return self.ch_split(x)
|
196
|
+
|
197
|
+
def forward(self, x: torch.Tensor):
|
198
|
+
ch1, ch2 = self.shuffle_channels(x)
|
199
|
+
ch2 = self.resblock_2d(ch2)
|
200
|
+
return torch.cat((ch1, ch2), dim=1)
|
197
201
|
|
198
202
|
|
199
203
|
class AdaResBlock1D(ConvNets):
|
@@ -207,46 +211,111 @@ class AdaResBlock1D(ConvNets):
|
|
207
211
|
):
|
208
212
|
super().__init__()
|
209
213
|
|
214
|
+
self.alpha1 = nn.ModuleList()
|
215
|
+
self.alpha2 = nn.ModuleList()
|
210
216
|
self.conv_nets = nn.ModuleList(
|
211
217
|
[
|
212
218
|
self._get_conv_layer(
|
213
|
-
|
219
|
+
d,
|
214
220
|
res_block_channels,
|
215
221
|
ada_channel_in,
|
216
222
|
kernel_size,
|
217
|
-
1,
|
218
|
-
dilation,
|
219
223
|
)
|
220
|
-
for
|
224
|
+
for d in dilation
|
221
225
|
]
|
222
226
|
)
|
223
227
|
self.conv_nets.apply(self.init_weights)
|
224
228
|
self.last_index = len(self.conv_nets) - 1
|
225
229
|
self.activation = activation
|
226
230
|
|
227
|
-
def _get_conv_layer(self,
|
228
|
-
|
231
|
+
def _get_conv_layer(self, d, ch, ada_ch, k):
|
232
|
+
self.alpha1.append(nn.Parameter(torch.ones(1, ada_ch, 1)))
|
233
|
+
self.alpha2.append(nn.Parameter(torch.ones(1, ada_ch, 1)))
|
229
234
|
return nn.ModuleDict(
|
230
235
|
dict(
|
231
236
|
norm1=AdaFusion1D(ada_ch, ch),
|
232
237
|
norm2=AdaFusion1D(ada_ch, ch),
|
233
|
-
alpha1=nn.Parameter(torch.ones(1, ada_ch, 1)),
|
234
|
-
alpha2=nn.Parameter(torch.ones(1, ada_ch, 1)),
|
235
238
|
conv1=weight_norm(
|
236
239
|
nn.Conv1d(
|
237
|
-
ch, ch, k,
|
240
|
+
ch, ch, k, 1, dilation=d, padding=get_padding(k, d)
|
238
241
|
)
|
239
242
|
), # 2
|
240
243
|
conv2=weight_norm(
|
241
|
-
nn.Conv1d(ch, ch, k,
|
244
|
+
nn.Conv1d(ch, ch, k, 1, dilation=1, padding=get_padding(k, 1))
|
242
245
|
), # 4
|
243
246
|
)
|
244
247
|
)
|
245
248
|
|
246
249
|
def forward(self, x: torch.Tensor, y: torch.Tensor):
|
247
|
-
for cnn in self.conv_nets:
|
248
|
-
xt = self.activation(cnn["norm1"](x, y,
|
250
|
+
for i, cnn in enumerate(self.conv_nets):
|
251
|
+
xt = self.activation(cnn["norm1"](x, y, self.alpha1[i]))
|
249
252
|
xt = cnn["conv1"](xt)
|
250
|
-
xt = self.activation(cnn["norm2"](xt, y,
|
253
|
+
xt = self.activation(cnn["norm2"](xt, y, self.alpha2[i]))
|
251
254
|
x = cnn["conv2"](xt) + x
|
252
255
|
return x
|
256
|
+
|
257
|
+
|
258
|
+
class ResBlock1D2(ConvNets):
|
259
|
+
def __init__(
|
260
|
+
self,
|
261
|
+
channels,
|
262
|
+
kernel_size=3,
|
263
|
+
dilation=(1, 3, 5),
|
264
|
+
activation: nn.Module = nn.LeakyReLU(0.1),
|
265
|
+
):
|
266
|
+
super().__init__()
|
267
|
+
self.convs = nn.ModuleList(
|
268
|
+
[
|
269
|
+
weight_norm(
|
270
|
+
nn.Conv1d(
|
271
|
+
channels,
|
272
|
+
channels,
|
273
|
+
kernel_size,
|
274
|
+
dilation=d,
|
275
|
+
padding=get_padding(kernel_size, d),
|
276
|
+
)
|
277
|
+
)
|
278
|
+
for d in range(dilation)
|
279
|
+
]
|
280
|
+
)
|
281
|
+
self.convs.apply(self.init_weights)
|
282
|
+
self.activation = activation
|
283
|
+
|
284
|
+
def forward(self, x):
|
285
|
+
for c in self.convs:
|
286
|
+
xt = c(self.activation(x))
|
287
|
+
x = xt + x
|
288
|
+
return x
|
289
|
+
|
290
|
+
|
291
|
+
class ResBlocks1D(ConvNets):
|
292
|
+
def __init__(
|
293
|
+
self,
|
294
|
+
channels: int,
|
295
|
+
resblock_kernel_sizes: List[Union[int, List[int]]] = [3, 7, 11],
|
296
|
+
resblock_dilation_sizes: List[Union[int, List[int]]] = [
|
297
|
+
[1, 3, 5],
|
298
|
+
[1, 3, 5],
|
299
|
+
[1, 3, 5],
|
300
|
+
],
|
301
|
+
activation: nn.Module = nn.LeakyReLU(0.1),
|
302
|
+
block: Union[ResBlock1D, ResBlock1D2] = ResBlock1D,
|
303
|
+
):
|
304
|
+
super().__init__()
|
305
|
+
self.num_kernels = len(resblock_kernel_sizes)
|
306
|
+
self.rb = nn.ModuleList()
|
307
|
+
self.activation = activation
|
308
|
+
|
309
|
+
for k, j in zip(resblock_kernel_sizes, resblock_dilation_sizes):
|
310
|
+
self.rb.append(block(channels, k, j, activation))
|
311
|
+
|
312
|
+
self.rb.apply(self.init_weights)
|
313
|
+
|
314
|
+
def forward(self, x: torch.Tensor):
|
315
|
+
xs = None
|
316
|
+
for i, block in enumerate(self.rb):
|
317
|
+
if i == 0:
|
318
|
+
xs = block(x)
|
319
|
+
else:
|
320
|
+
xs += block(x)
|
321
|
+
return xs / self.num_kernels
|
@@ -4,29 +4,29 @@ lt_tensor/losses.py,sha256=zvkCOnE5XpF3v6ymivRIdqPTsMM5zc94ZMom7YDi3zM,4946
|
|
4
4
|
lt_tensor/lr_schedulers.py,sha256=LSZzqrOOLzSthD8k-W4cYPJt0vCjmHkiJkLr5e3yRTE,3659
|
5
5
|
lt_tensor/math_ops.py,sha256=TkD4WQG42KsQ9Fg7FXOjf8f-ixtW0apf2XjaooecVx4,2257
|
6
6
|
lt_tensor/misc_utils.py,sha256=S57M5XuGsIuaOKnEGZJsY3B2dTmggpdhsqQr51CQsYo,28754
|
7
|
-
lt_tensor/model_base.py,sha256=
|
7
|
+
lt_tensor/model_base.py,sha256=qqqIVpYz6nv01MnZuuAj1dxq4_NN-zSivP1GaegA9TI,21597
|
8
8
|
lt_tensor/monotonic_align.py,sha256=LhBd8p1xdBzg6jQrQX1j7b4PNeYGwIqM24zcU-pHOLE,2239
|
9
9
|
lt_tensor/noise_tools.py,sha256=wFeAsHhLhSlEc5XU5LbFKaXoHeVxrWjiMeljjGdIKyM,11363
|
10
10
|
lt_tensor/torch_commons.py,sha256=fntsEU8lhBQo0ebonI1iXBkMbWMN3HpBsG13EWlP5s8,718
|
11
11
|
lt_tensor/transform.py,sha256=dZm8T_ov0blHMQu6nGiehsdG1VSB7bZBUVmTkT-PBdc,13257
|
12
12
|
lt_tensor/datasets/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
13
|
-
lt_tensor/datasets/audio.py,sha256=
|
14
|
-
lt_tensor/model_zoo/__init__.py,sha256=
|
15
|
-
lt_tensor/model_zoo/basic.py,sha256=
|
16
|
-
lt_tensor/model_zoo/
|
17
|
-
lt_tensor/model_zoo/features.py,sha256=CTFMidzza31pqQjwPfp_g0BNVfuQ8Dlo5JnxpYpKgag,13144
|
13
|
+
lt_tensor/datasets/audio.py,sha256=5Wvz1BJ7xXkLYpVLLw9RY3X3RgMdPPeGiN0-MmJDQy0,8045
|
14
|
+
lt_tensor/model_zoo/__init__.py,sha256=ltVTvmOlbOCfDc5Trvg0-Ta_Ujgkw0UVF9V5rqHx-RI,378
|
15
|
+
lt_tensor/model_zoo/basic.py,sha256=pI8HyiHK-cmWcEEaVY_EduUJOjZW6HOtXvJd8Rbhq30,15452
|
16
|
+
lt_tensor/model_zoo/features.py,sha256=DO8dlE0kmPKTNC1Xkv9wKegOOYkQa_rkxM4hhcNwJWA,15655
|
18
17
|
lt_tensor/model_zoo/fusion.py,sha256=usC1bcjQRNivDc8xzkIS5T1glm78OLcs2V_tPqfp-eI,5422
|
19
18
|
lt_tensor/model_zoo/pos_encoder.py,sha256=3d1EYLinCU9UAy-WuEWeYMGhMqaGknCiQ5qEmhw_UYM,4487
|
20
|
-
lt_tensor/model_zoo/residual.py,sha256=
|
19
|
+
lt_tensor/model_zoo/residual.py,sha256=i5V4ju7DB3WesKBVm6KH_LyPoKGDUOyo2Usfs-PyP58,9394
|
21
20
|
lt_tensor/model_zoo/transformer.py,sha256=HUFoFFh7EQJErxdd9XIxhssdjvNVx2tNGDJOTUfwG2A,4301
|
22
|
-
lt_tensor/model_zoo/
|
23
|
-
lt_tensor/model_zoo/
|
24
|
-
lt_tensor/model_zoo/
|
25
|
-
lt_tensor/model_zoo/
|
21
|
+
lt_tensor/model_zoo/audio_models/__init__.py,sha256=CLoLqvbA_ltqm3KOg5AH3A0co0HtsLfFPUBsxxLSCgI,39
|
22
|
+
lt_tensor/model_zoo/audio_models/diffwave/__init__.py,sha256=aFSmr8PYpmOfbe15lhNoj-ZzP5ChrZcikovKLZKg7nw,140
|
23
|
+
lt_tensor/model_zoo/audio_models/diffwave/model.py,sha256=kHo76bxLJtTBn1m0gq5KKrUsjm9ASsCCwf8MvWaB1R8,6901
|
24
|
+
lt_tensor/model_zoo/audio_models/hifigan/__init__.py,sha256=BOBZSK2HFOdMcFyjrzwZi_TeAtBGIcpb8pQxiGlwLEE,12302
|
25
|
+
lt_tensor/model_zoo/audio_models/istft/__init__.py,sha256=o7Ie1qI22u_g9t1252PX4vl4uF6JHynAJryuz2lAZE0,12920
|
26
26
|
lt_tensor/processors/__init__.py,sha256=4b9MxAJolXiJfSm20ZEspQTDm1tgLazwlPWA_jB1yLM,63
|
27
27
|
lt_tensor/processors/audio.py,sha256=SMqNSl4Den-x1awTCQ8-TcR-0jPiv5lDaUpU93SRRaw,14749
|
28
|
-
lt_tensor-0.0.
|
29
|
-
lt_tensor-0.0.
|
30
|
-
lt_tensor-0.0.
|
31
|
-
lt_tensor-0.0.
|
32
|
-
lt_tensor-0.0.
|
28
|
+
lt_tensor-0.0.1a16.dist-info/licenses/LICENSE,sha256=HUnu_iSPpnDfZS_PINhO3AoVizJD1A2vee8WX7D7uXo,11358
|
29
|
+
lt_tensor-0.0.1a16.dist-info/METADATA,sha256=uxk1cMeQkLniYUIgEjHD2eJ8_JGwAKS2minrCmAJfMo,1033
|
30
|
+
lt_tensor-0.0.1a16.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
31
|
+
lt_tensor-0.0.1a16.dist-info/top_level.txt,sha256=35FuhFeXnUyvHWdbVHGPh0hS8euofafnJ_GJAVSF4Kk,10
|
32
|
+
lt_tensor-0.0.1a16.dist-info/RECORD,,
|