File size: 1,040 Bytes
7d6a9ed |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
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()
|