Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -354,28 +354,29 @@ if __name__ == "__main__":
|
|
354 |
"参考音声が25秒を超える場合、自動的に25秒にクリップされます。"
|
355 |
"また、元音声と参考音声の合計時間が30秒を超える場合、元音声は分割処理されます。")
|
356 |
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
|
|
|
354 |
"参考音声が25秒を超える場合、自動的に25秒にクリップされます。"
|
355 |
"また、元音声と参考音声の合計時間が30秒を超える場合、元音声は分割処理されます。")
|
356 |
|
357 |
+
with gr.Blocks() as demo:
|
358 |
+
inputs = [
|
359 |
+
gr.Audio(type="filepath", label="元音声"),
|
360 |
+
gr.Audio(type="filepath", label="参考音声"),
|
361 |
+
gr.Gallery(label="ギャラリー", value=[item["webp"] for item in gallery_data],
|
362 |
+
interactive=True, elem_id="gallery").change(handle_gallery_selection, inputs="gallery", outputs="参考音声"),
|
363 |
+
gr.Slider(minimum=1, maximum=200, value=10, step=1, label="拡散ステップ数", info="デフォルトは10、50~100が最適な品質"),
|
364 |
+
gr.Slider(minimum=0.5, maximum=2.0, step=0.1, value=1.0, label="長さ調整", info="1.0未満で速度を上げ、1.0以上で速度を遅くします"),
|
365 |
+
gr.Slider(minimum=0.0, maximum=1.0, step=0.1, value=0.7, label="推論CFG率", info="わずかな影響があります"),
|
366 |
+
gr.Checkbox(label="F0条件付きモデルを使用", value=False, info="歌声変換には必須です"),
|
367 |
+
gr.Checkbox(label="F0自動調整", value=True, info="F0をおおよそ調整して目標音声に合わせます。F0条件付きモデル使用時にのみ有効です"),
|
368 |
+
gr.Slider(label='音程変換', minimum=-24, maximum=24, step=1, value=0, info="半音単位の音程変換。F0条件付きモデル使用時にのみ有効です"),
|
369 |
+
]
|
370 |
+
|
371 |
+
outputs = [
|
372 |
+
gr.Audio(label="ストリーム出力音声", streaming=True, format='mp3'),
|
373 |
+
gr.Audio(label="完全出力音声", streaming=False, format='wav')
|
374 |
+
]
|
375 |
+
|
376 |
+
gr.Interface(fn=voice_conversion,
|
377 |
+
description=description,
|
378 |
+
inputs=inputs,
|
379 |
+
outputs=outputs,
|
380 |
+
title="Seed Voice Conversion",
|
381 |
+
cache_examples=False,
|
382 |
+
).launch()
|