Update app.py
Browse files
app.py
CHANGED
@@ -1117,7 +1117,14 @@ def create_interface():
|
|
1117 |
|
1118 |
def safe_analyze_voice(audio_data, state):
|
1119 |
if audio_data is None:
|
1120 |
-
return
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1121 |
|
1122 |
try:
|
1123 |
# 상태 업데이트
|
@@ -1126,28 +1133,41 @@ def create_interface():
|
|
1126 |
# 음성 데이터 전처리
|
1127 |
sr, y = audio_data
|
1128 |
if len(y) == 0:
|
1129 |
-
return
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1130 |
|
1131 |
status_msg = "음성 특성 분석 중..."
|
1132 |
acoustic_features = calculate_baseline_features((sr, y))
|
1133 |
|
1134 |
status_msg = "음성 인식 중..."
|
1135 |
-
|
1136 |
|
1137 |
status_msg = "분석 완료"
|
1138 |
-
return (*result[:-1], status_msg) # 마지막 상태 메시지 추가
|
1139 |
-
|
1140 |
-
except Exception as e:
|
1141 |
-
print(f"Voice analysis error: {str(e)}")
|
1142 |
return (
|
1143 |
-
|
1144 |
-
|
1145 |
-
|
1146 |
-
|
1147 |
-
|
1148 |
-
|
1149 |
)
|
1150 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1151 |
# 이벤트 연결
|
1152 |
name_submit_btn.click(
|
1153 |
fn=handle_name_submit,
|
|
|
1117 |
|
1118 |
def safe_analyze_voice(audio_data, state):
|
1119 |
if audio_data is None:
|
1120 |
+
return (
|
1121 |
+
state,
|
1122 |
+
"음성을 먼저 녹음해주세요.",
|
1123 |
+
"",
|
1124 |
+
"",
|
1125 |
+
"",
|
1126 |
+
"분석 준비 중..."
|
1127 |
+
)
|
1128 |
|
1129 |
try:
|
1130 |
# 상태 업데이트
|
|
|
1133 |
# 음성 데이터 전처리
|
1134 |
sr, y = audio_data
|
1135 |
if len(y) == 0:
|
1136 |
+
return (
|
1137 |
+
state,
|
1138 |
+
"음성이 감지되지 않았습니다.",
|
1139 |
+
"",
|
1140 |
+
"",
|
1141 |
+
"",
|
1142 |
+
"분석 실패"
|
1143 |
+
)
|
1144 |
|
1145 |
status_msg = "음성 특성 분석 중..."
|
1146 |
acoustic_features = calculate_baseline_features((sr, y))
|
1147 |
|
1148 |
status_msg = "음성 인식 중..."
|
1149 |
+
new_state, text, voice_result, text_result, prompt = analyze_voice(audio_data, state)
|
1150 |
|
1151 |
status_msg = "분석 완료"
|
|
|
|
|
|
|
|
|
1152 |
return (
|
1153 |
+
new_state,
|
1154 |
+
text,
|
1155 |
+
voice_result,
|
1156 |
+
text_result,
|
1157 |
+
prompt,
|
1158 |
+
status_msg
|
1159 |
)
|
1160 |
+
|
1161 |
+
except Exception as e:
|
1162 |
+
print(f"Voice analysis error: {str(e)}")
|
1163 |
+
return (
|
1164 |
+
state,
|
1165 |
+
"음성 분석 중 오류가 발생했습니다. 다시 시도해주세요.",
|
1166 |
+
"",
|
1167 |
+
"",
|
1168 |
+
"",
|
1169 |
+
"분석 실패"
|
1170 |
+
)
|
1171 |
# 이벤트 연결
|
1172 |
name_submit_btn.click(
|
1173 |
fn=handle_name_submit,
|