Codex commited on
Commit ·
3ca3cda
1
Parent(s): a96cc46
Patch v2Pro speaker preprocessing for torchaudio
Browse files
app.py
CHANGED
|
@@ -373,6 +373,33 @@ def patch_upstream_repo():
|
|
| 373 |
if old in content:
|
| 374 |
content = content.replace(old, new, 1)
|
| 375 |
chinese2.write_text(content, encoding="utf-8")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 376 |
patch_marker.write_text("ok\n", encoding="utf-8")
|
| 377 |
|
| 378 |
|
|
|
|
| 373 |
if old in content:
|
| 374 |
content = content.replace(old, new, 1)
|
| 375 |
chinese2.write_text(content, encoding="utf-8")
|
| 376 |
+
sv_script = GPT_SOVITS_DIR / "GPT_SoVITS" / "prepare_datasets" / "2-get-sv.py"
|
| 377 |
+
sv_content = sv_script.read_text(encoding="utf-8")
|
| 378 |
+
if "from scipy.io import wavfile" not in sv_content:
|
| 379 |
+
sv_content = sv_content.replace(
|
| 380 |
+
"import torch\n",
|
| 381 |
+
"import torch\nimport numpy as np\nfrom scipy.io import wavfile\n",
|
| 382 |
+
1,
|
| 383 |
+
)
|
| 384 |
+
old_load = """ wav32k, sr0 = torchaudio.load(wav_path)
|
| 385 |
+
assert sr0 == 32000
|
| 386 |
+
wav32k = wav32k.to(device)
|
| 387 |
+
"""
|
| 388 |
+
new_load = """ sr0, wav32k_np = wavfile.read(wav_path)
|
| 389 |
+
assert sr0 == 32000
|
| 390 |
+
if wav32k_np.ndim == 1:
|
| 391 |
+
wav32k_np = wav32k_np[None, :]
|
| 392 |
+
else:
|
| 393 |
+
wav32k_np = wav32k_np.T
|
| 394 |
+
if np.issubdtype(wav32k_np.dtype, np.integer):
|
| 395 |
+
wav32k_np = wav32k_np.astype("float32") / float(np.iinfo(wav32k_np.dtype).max)
|
| 396 |
+
else:
|
| 397 |
+
wav32k_np = wav32k_np.astype("float32")
|
| 398 |
+
wav32k = torch.from_numpy(wav32k_np).to(device)
|
| 399 |
+
"""
|
| 400 |
+
if old_load in sv_content:
|
| 401 |
+
sv_content = sv_content.replace(old_load, new_load, 1)
|
| 402 |
+
sv_script.write_text(sv_content, encoding="utf-8")
|
| 403 |
patch_marker.write_text("ok\n", encoding="utf-8")
|
| 404 |
|
| 405 |
|