speaker / app.py
QLWD's picture
Create app.py
7d6a9ed verified
raw
history blame
1.04 kB
import gradio as gr
from pydub import AudioSegment
# 定义一个函数来拼接音频
def combine_audio(target_audio, mixed_audio):
# 加载目标说话人的样本音频
target_audio_segment = AudioSegment.from_wav(target_audio.name)
# 加载混合音频
mixed_audio_segment = AudioSegment.from_wav(mixed_audio.name)
# 将目标说话人的音频片段添加到混合音频的最后
final_audio = mixed_audio_segment + target_audio_segment
# 保存并返回输出音频
output_path = "final_output.wav"
final_audio.export(output_path, format="wav")
return output_path
# 创建 Gradio 接口
interface = gr.Interface(
fn=combine_audio, # 处理音频的函数
inputs=[
gr.inputs.File(label="目标说话人音频"), # 上传目标说话人音频
gr.inputs.File(label="混合音频") # 上传混合音频
],
outputs=gr.outputs.File(label="输出音频"), # 输出最终合成的音频文件
live=False
)
# 启动 Gradio 应用
interface.launch()