ledddev commited on
Commit
1cd7901
1 Parent(s): bb900d4

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +44 -6
app.py CHANGED
@@ -26,9 +26,42 @@ instruction = """
26
  #]
27
 
28
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
29
  class VoiceGenerator:
 
30
  def __init__(self):
31
  self.model = Model(model_path=PATH_TO_MODEL)
 
 
32
  def generate(self, text, file_name='output.wav'):
33
  synth = Synth(self.model)
34
  path = os.path.join(PATH_TO_OUTPUT, file_name)
@@ -36,7 +69,7 @@ class VoiceGenerator:
36
  return path
37
 
38
 
39
- def record_and_recognize_audio(file_path):
40
  with speech_recognition.AudioFile(file_path) as source:
41
  audio = recognizer.record(source)
42
  try:
@@ -48,7 +81,7 @@ def record_and_recognize_audio(file_path):
48
  return recognized_data
49
 
50
 
51
- def ask(request):
52
  result = requests.post(
53
  url='https://llm.api.cloud.yandex.net/llm/v1alpha/instruct',
54
  headers={
@@ -69,11 +102,16 @@ def ask(request):
69
 
70
 
71
  def result(audio):
72
- sr, data = audio
73
- print('sr:', sr, 'data:', data)
74
  #return os.path.join(os.path.abspath(''), "video_sample.mp4")
75
- write('voice_input.wav', sr, data)
76
- return os.path.join(os.path.abspath(''), "voice_input.wav")
 
 
 
 
 
77
 
78
  demo = gr.Interface(
79
  result,
 
26
  #]
27
 
28
 
29
+ recognizer = speech_recognition.Recognizer()
30
+ vg = VoiceGenerator()
31
+
32
+
33
+ # while True:
34
+ # # старт записи речи с последующим выводом распознанной речи
35
+ # # и удалением записанного в микрофон аудио
36
+ # voice_input = record_and_recognize_audio()
37
+ # os.remove("microphone-results.wav")
38
+ # print(voice_input)
39
+ # path_to_file = vg.generate(ask(voice_input))
40
+ # print(path_to_file)
41
+ # response = requests.post(
42
+ # "https://api.gooey.ai/v2/Lipsync/form/",
43
+ # headers={
44
+ # "Authorization": "Bearer " + k,
45
+ # },
46
+ # files=files,
47
+ # data={"json": json.dumps(payload)},
48
+ # )
49
+ # assert response.ok, response.content
50
+ # #song = AudioSegment.from_wav(path_to_file)
51
+ # result = response.json()
52
+ # print(response.status_code, result["output"]["output_video"])
53
+ # #play(song)
54
+ # urllib.request.urlretrieve(result["output"]["output_video"], "C:\\Users\\user\\Desktop\\deepfake_sirius\\materials\\video.mp4")
55
+ # os.startfile("C:\\Users\\user\\Desktop\\deepfake_sirius\\materials\\video.mp4")
56
+ # break;
57
+
58
+
59
  class VoiceGenerator:
60
+
61
  def __init__(self):
62
  self.model = Model(model_path=PATH_TO_MODEL)
63
+
64
+
65
  def generate(self, text, file_name='output.wav'):
66
  synth = Synth(self.model)
67
  path = os.path.join(PATH_TO_OUTPUT, file_name)
 
69
  return path
70
 
71
 
72
+ def recognize_audio(file_path):
73
  with speech_recognition.AudioFile(file_path) as source:
74
  audio = recognizer.record(source)
75
  try:
 
81
  return recognized_data
82
 
83
 
84
+ def ask_gpt(request):
85
  result = requests.post(
86
  url='https://llm.api.cloud.yandex.net/llm/v1alpha/instruct',
87
  headers={
 
102
 
103
 
104
  def result(audio):
105
+ sample_rate, data = audio
106
+ #print('sample_rate:', sample_rate, 'data:', data)
107
  #return os.path.join(os.path.abspath(''), "video_sample.mp4")
108
+ file_name = 'voice_input.wav'
109
+ file_path = os.path.join(PATH_TO_OUTPUT, file_name)
110
+ write(file_path, sample_rate, data)
111
+ text_from_audio = recognize_audio(file_path)
112
+ generated_audio = vg.generate(text_from_audio)
113
+ return generated_audio
114
+
115
 
116
  demo = gr.Interface(
117
  result,