mirror of
https://github.com/RVC-Boss/GPT-SoVITS.git
synced 2025-10-08 16:00:01 +08:00
修正了上传文件的逻辑;增加了一个文件夹检测
This commit is contained in:
parent
f2544a8aef
commit
9125424f3a
@ -3,6 +3,7 @@
|
|||||||
"SRT文件": "SRT File",
|
"SRT文件": "SRT File",
|
||||||
"srt文件内容": "SRT File Content",
|
"srt文件内容": "SRT File Content",
|
||||||
"上传SRT文件": "Upload SRT File",
|
"上传SRT文件": "Upload SRT File",
|
||||||
|
"上传文件": "Upload Files",
|
||||||
"作者: ": "Author: ",
|
"作者: ": "Author: ",
|
||||||
"使用方法": "How to Use",
|
"使用方法": "How to Use",
|
||||||
"保存合并后字幕": "Save Merged Subtitles",
|
"保存合并后字幕": "Save Merged Subtitles",
|
||||||
@ -33,6 +34,7 @@
|
|||||||
"最长允许单句长度": "Maximum Allowed Sentence Length",
|
"最长允许单句长度": "Maximum Allowed Sentence Length",
|
||||||
"根据面板合并短句并过滤你不希望出现的句子。": "Merge short sentences according to the panel and filter out sentences you do not want to appear.",
|
"根据面板合并短句并过滤你不希望出现的句子。": "Merge short sentences according to the panel and filter out sentences you do not want to appear.",
|
||||||
"正在建设,敬请期待": "Under Construction, Stay Tuned",
|
"正在建设,敬请期待": "Under Construction, Stay Tuned",
|
||||||
|
"注意:该文件夹已存在": "Warning: The folder already exists",
|
||||||
"语言": "Language",
|
"语言": "Language",
|
||||||
"读取文件": "Read File",
|
"读取文件": "Read File",
|
||||||
"读取本地文件": "Read Local File",
|
"读取本地文件": "Read Local File",
|
||||||
@ -44,4 +46,4 @@
|
|||||||
"随后保存成切分好的音频与list文件。": "Then save as split audio and list files.",
|
"随后保存成切分好的音频与list文件。": "Then save as split audio and list files.",
|
||||||
"音频文件": "Audio File",
|
"音频文件": "Audio File",
|
||||||
"音频格式": "Audio Format"
|
"音频格式": "Audio Format"
|
||||||
}
|
}
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
"SRT文件": "SRT文件",
|
"SRT文件": "SRT文件",
|
||||||
"srt文件内容": "srt文件内容",
|
"srt文件内容": "srt文件内容",
|
||||||
"上传SRT文件": "上传SRT文件",
|
"上传SRT文件": "上传SRT文件",
|
||||||
|
"上传文件": "上传文件",
|
||||||
"作者: ": "作者: ",
|
"作者: ": "作者: ",
|
||||||
"使用方法": "使用方法",
|
"使用方法": "使用方法",
|
||||||
"保存合并后字幕": "保存合并后字幕",
|
"保存合并后字幕": "保存合并后字幕",
|
||||||
@ -33,6 +34,7 @@
|
|||||||
"最长允许单句长度": "最长允许单句长度",
|
"最长允许单句长度": "最长允许单句长度",
|
||||||
"根据面板合并短句并过滤你不希望出现的句子。": "根据面板合并短句并过滤你不希望出现的句子。",
|
"根据面板合并短句并过滤你不希望出现的句子。": "根据面板合并短句并过滤你不希望出现的句子。",
|
||||||
"正在建设,敬请期待": "正在建设,敬请期待",
|
"正在建设,敬请期待": "正在建设,敬请期待",
|
||||||
|
"注意:该文件夹已存在": "注意:该文件夹已存在",
|
||||||
"语言": "语言",
|
"语言": "语言",
|
||||||
"读取文件": "读取文件",
|
"读取文件": "读取文件",
|
||||||
"读取本地文件": "读取本地文件",
|
"读取本地文件": "读取本地文件",
|
||||||
|
@ -3,7 +3,7 @@ import gradio as gr
|
|||||||
import sys
|
import sys
|
||||||
sys.path.append('.')
|
sys.path.append('.')
|
||||||
sys.path.append('..')
|
sys.path.append('..')
|
||||||
from srt_utils import merge_subtitles_with_lib, parse_srt_with_lib, generate_srt_with_lib, slice_audio_with_lib, count_words_multilang
|
from tools.srt_slicer.srt_utils import merge_subtitles_with_lib, parse_srt_with_lib, generate_srt_with_lib, slice_audio_with_lib, count_words_multilang
|
||||||
|
|
||||||
|
|
||||||
from i18n.i18n import I18nAuto
|
from i18n.i18n import I18nAuto
|
||||||
@ -162,7 +162,11 @@ def change_character_name(input_audio):
|
|||||||
character = datetime.now().strftime("%m%d%H%M")
|
character = datetime.now().strftime("%m%d%H%M")
|
||||||
return gr.Textbox(value=character)
|
return gr.Textbox(value=character)
|
||||||
|
|
||||||
|
def check_character_foldfer(folder, character):
|
||||||
|
character_folder = os.path.join(folder, character)
|
||||||
|
if os.path.exists(character_folder):
|
||||||
|
return gr.Textbox(visible=True)
|
||||||
|
return gr.Textbox(visible=False)
|
||||||
|
|
||||||
with gr.Blocks() as app:
|
with gr.Blocks() as app:
|
||||||
with gr.Row():
|
with gr.Row():
|
||||||
@ -185,12 +189,13 @@ with gr.Blocks() as app:
|
|||||||
srt_files_list = gr.Dropdown([], label=i18n("SRT文件"),interactive=True)
|
srt_files_list = gr.Dropdown([], label=i18n("SRT文件"),interactive=True)
|
||||||
audio_files_list = gr.Dropdown([], label=i18n("音频文件"),interactive=True)
|
audio_files_list = gr.Dropdown([], label=i18n("音频文件"),interactive=True)
|
||||||
srt_read_button = gr.Button(i18n("读取文件"), variant="secondary",interactive=True)
|
srt_read_button = gr.Button(i18n("读取文件"), variant="secondary",interactive=True)
|
||||||
with gr.Tab(i18n("上传SRT文件")):
|
with gr.Tab(i18n("上传文件")):
|
||||||
input_srt_file = gr.File(label=i18n("上传SRT文件"), type="filepath", file_types=["srt"])
|
input_srt_file = gr.File(label=i18n("上传SRT文件"), type="filepath", file_types=["srt"])
|
||||||
|
upload_audio = gr.Audio(type="filepath",label=i18n("音频文件"))
|
||||||
# input_audio_file = gr.File(label=i18n("上传音频文件"), type="audio", file_types=["mp3", "wav", "ogg"])
|
# input_audio_file = gr.File(label=i18n("上传音频文件"), type="audio", file_types=["mp3", "wav", "ogg"])
|
||||||
with gr.Tabs():
|
with gr.Tabs():
|
||||||
with gr.Tab(i18n("内容预览")):
|
with gr.Tab(i18n("内容预览")):
|
||||||
input_audio = gr.Audio(type="filepath",label=i18n("音频文件"))
|
input_audio = gr.Textbox("", label=i18n("音频文件"),interactive=False)
|
||||||
input_text = gr.Textbox("", lines=20, max_lines=30, label=i18n("srt文件内容"))
|
input_text = gr.Textbox("", lines=20, max_lines=30, label=i18n("srt文件内容"))
|
||||||
input_srt_file.change(load_srt_from_file, [input_srt_file], [input_text])
|
input_srt_file.change(load_srt_from_file, [input_srt_file], [input_text])
|
||||||
with gr.Column(scale=1) as control_col:
|
with gr.Column(scale=1) as control_col:
|
||||||
@ -209,15 +214,18 @@ with gr.Blocks() as app:
|
|||||||
filter_words = gr.Textbox("", label=i18n("过滤词语,一行一个"),lines=5,max_lines=10,interactive=True)
|
filter_words = gr.Textbox("", label=i18n("过滤词语,一行一个"),lines=5,max_lines=10,interactive=True)
|
||||||
filter_button = gr.Button(i18n("过滤字幕"), variant="primary",interactive=False)
|
filter_button = gr.Button(i18n("过滤字幕"), variant="primary",interactive=False)
|
||||||
with gr.Tab(i18n("切分与保存")):
|
with gr.Tab(i18n("切分与保存")):
|
||||||
pre_preserve_time = gr.Slider(value=0.1, minimum=0, maximum=1, step=0.01, label=i18n("前置保留时间"),interactive=True)
|
with gr.Group():
|
||||||
post_preserve_time = gr.Slider(value=0.1, minimum=0, maximum=1, step=0.01, label=i18n("后置保留时间"),interactive=True)
|
pre_preserve_time = gr.Slider(value=0.1, minimum=0, maximum=1, step=0.01, label=i18n("前置保留时间"),interactive=True)
|
||||||
pre_silence_time = gr.Slider(value=0.05, minimum=0, maximum=1, step=0.01, label=i18n("前置添加静音时间"),interactive=True,visible=False)
|
post_preserve_time = gr.Slider(value=0.1, minimum=0, maximum=1, step=0.01, label=i18n("后置保留时间"),interactive=True)
|
||||||
post_silence_time = gr.Slider(value=0.1, minimum=0, maximum=1, step=0.01, label=i18n("后置添加静音时间"),interactive=True,visible=False)
|
pre_silence_time = gr.Slider(value=0.05, minimum=0, maximum=1, step=0.01, label=i18n("前置添加静音时间"),interactive=True,visible=False)
|
||||||
|
post_silence_time = gr.Slider(value=0.1, minimum=0, maximum=1, step=0.01, label=i18n("后置添加静音时间"),interactive=True,visible=False)
|
||||||
language = gr.Dropdown([i18n(i) for i in ["auto", "zh", "en", "ja", "all_zh", "all_ja"]], value="auto", label=i18n("语言"),interactive=True)
|
with gr.Group():
|
||||||
audio_format = gr.Dropdown(["mp3", "wav", "ogg"], value="wav", label=i18n("音频格式"),interactive=True)
|
language = gr.Dropdown([i18n(i) for i in ["auto", "zh", "en", "ja", "all_zh", "all_ja"]], value="auto", label=i18n("语言"),interactive=True)
|
||||||
save_folder = gr.Textbox("output/sliced_audio", label=i18n("保存文件夹"),interactive=True)
|
audio_format = gr.Dropdown(["mp3", "wav", "ogg"], value="wav", label=i18n("音频格式"),interactive=True)
|
||||||
character = gr.Textbox("character", label=i18n("保存子文件夹名称"),interactive=True)
|
with gr.Group():
|
||||||
|
save_folder = gr.Textbox("output/sliced_audio", label=i18n("保存文件夹"),interactive=True)
|
||||||
|
character = gr.Textbox("character", label=i18n("保存子文件夹名称"),interactive=True)
|
||||||
|
character_warning = gr.Textbox(i18n("注意:该文件夹已存在"), label=i18n("提示"),interactive=False,visible=False)
|
||||||
save_srt_button = gr.Button(i18n("保存合并后字幕"),variant="secondary",interactive=True)
|
save_srt_button = gr.Button(i18n("保存合并后字幕"),variant="secondary",interactive=True)
|
||||||
slice_audio_button = gr.Button(i18n("切分并保存音频、list"), variant="primary",interactive=False)
|
slice_audio_button = gr.Button(i18n("切分并保存音频、list"), variant="primary",interactive=False)
|
||||||
|
|
||||||
@ -244,10 +252,15 @@ with gr.Blocks() as app:
|
|||||||
[input_audio],
|
[input_audio],
|
||||||
[character],
|
[character],
|
||||||
)
|
)
|
||||||
input_audio.change(
|
|
||||||
|
upload_audio.change(
|
||||||
change_character_name,
|
change_character_name,
|
||||||
[input_audio],
|
[upload_audio],
|
||||||
[character],
|
[character],
|
||||||
|
).then(
|
||||||
|
lambda x:gr.Textbox(value=x),
|
||||||
|
[upload_audio],
|
||||||
|
[input_audio],
|
||||||
)
|
)
|
||||||
|
|
||||||
merge_button.click(
|
merge_button.click(
|
||||||
@ -293,6 +306,9 @@ with gr.Blocks() as app:
|
|||||||
[output_text, min_length, filter_english, filter_words],
|
[output_text, min_length, filter_english, filter_words],
|
||||||
[output_text],
|
[output_text],
|
||||||
)
|
)
|
||||||
save_srt_button.click
|
character.change(
|
||||||
|
check_character_foldfer,
|
||||||
|
[save_folder, character],
|
||||||
|
[character_warning],
|
||||||
|
)
|
||||||
app.launch(inbrowser=True, server_port=8991, debug=True)
|
app.launch(inbrowser=True, server_port=8991, debug=True)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user