File size: 1,428 Bytes
4b4e7c3
 
666e618
4b4e7c3
 
63adb2e
666e618
63adb2e
666e618
 
 
 
 
63adb2e
 
 
666e618
63adb2e
 
 
 
 
 
4b4e7c3
 
 
 
 
 
 
 
 
ddcb959
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
import subprocess

# Функция, которая будет вызываться при отправке данных
def save_file(input_file):
    # Указываем путь для сохранения файла
    saved_file_path = "/home/user/app/audio/saved_file.wav"  # Укажите полный путь до целевого файла
    
    # Сохраняем содержимое input_file в целевой файл
    with open(saved_file_path, 'wb') as saved_file:
        saved_file.write(input_file.read())
    
    cmd = ["svc", "infer", saved_file_path, "-m", "/home/user/app/models", "-c", "/home/user/app/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,  # Отключаем режим реального времени
)

# Добавляем кнопку "Submit"
iface.launch()