File size: 1,526 Bytes
4d86d36 |
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 34 |
import gradio as gr
import shutil
import subprocess
# Функция, которая будет вызываться при отправке данных
def save_file(input_file):
# Получаем путь к временному файлу
temp_file_path = input_file.name
# Указываем путь для сохранения файла
saved_file_path = "audio/saved_file.wav"
# Копируем временный файл в место сохранения
shutil.copy(temp_file_path, saved_file_path)
cmd = ["svc", "infer", f"/content/{saved_file_path}", "-m", "/content/models", "-c", "/content/models/config.json"]
result = subprocess.run(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True)
print("STDOUT:", result.stdout)
print("STDERR:", result.stderr)
# Получаем байтовый код финального файла
with open(saved_file_path, "rb") as f:
final_file_bytes = f.read()
return final_file_bytes
# Создание интерфейса Gradio с кнопкой "Submit"
iface = gr.Interface(
fn=save_file,
inputs="file", # Тип ввода - файл
outputs="text", # Тип вывода - текстовая строка
live=False, # Отключаем режим реального времени
capture_session=True # Захватывать сессию для удаленного доступа
)
# Добавляем кнопку "Submit"
iface.launch(share=True) |