diginoron commited on
Commit
f0889c4
·
verified ·
1 Parent(s): 72b62e7

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +3 -2
app.py CHANGED
@@ -6,6 +6,7 @@ import os
6
  import spaces
7
  import soundfile as sf
8
  import numpy as np
 
9
 
10
  # تنظیم کلید API از متغیر محیطی
11
  client = OpenAI(api_key=os.getenv("OPENAI_API_KEY"))
@@ -22,7 +23,7 @@ def speech_to_text(audio_file):
22
  audio_data, sample_rate = sf.read(audio_file)
23
  # اطمینان از نرخ نمونه‌برداری 16kHz (استاندارد برای Whisper)
24
  if sample_rate != 16000:
25
- audio_data = sf.resample(audio_data, sample_rate, 16000)
26
  # پردازش با Whisper بدون پارامتر sampling_rate
27
  result = whisper(audio_data)
28
  return result["text"]
@@ -60,7 +61,7 @@ def process_audio(audio_file, progress=gr.Progress()):
60
  return text, summary, table
61
 
62
  with gr.Blocks() as app:
63
- gr.Markdown("## اپلیکیشن تبدیل صوت به متن و خلاصه‌سازی\n**توجه**: برای بهترین عملکرد، از فایل‌های صوتی کوتاه (کمتر از ۵ مگابایت، ۱۰-۲۰ ثانیه) با فرمت MP3، WAV یا M4A استفاده کنید. آپلود فایل‌های بزرگ ممکن است چند دقیقه طول بکشد.")
64
  audio_input = gr.Audio(type="filepath", label="فایل صوتی را آپلود کنید (MP3، WAV، M4A)")
65
  text_output = gr.Textbox(label="متن تبدیل‌شده")
66
  summary_output = gr.Textbox(label="خلاصه گزارش")
 
6
  import spaces
7
  import soundfile as sf
8
  import numpy as np
9
+ import librosa
10
 
11
  # تنظیم کلید API از متغیر محیطی
12
  client = OpenAI(api_key=os.getenv("OPENAI_API_KEY"))
 
23
  audio_data, sample_rate = sf.read(audio_file)
24
  # اطمینان از نرخ نمونه‌برداری 16kHz (استاندارد برای Whisper)
25
  if sample_rate != 16000:
26
+ audio_data = librosa.resample(audio_data, orig_sr=sample_rate, target_sr=16000)
27
  # پردازش با Whisper بدون پارامتر sampling_rate
28
  result = whisper(audio_data)
29
  return result["text"]
 
61
  return text, summary, table
62
 
63
  with gr.Blocks() as app:
64
+ gr.Markdown("## اپلیکیشن تبدیل صوت به متن و خلاصه‌سازی\n**توجه**: برای بهترین عملکرد، از فایل‌های صوتی کوتاه (کمتر از ۵ مگابایت، ۱۰-۲۰ ثانیه) با فرمت MP3، WAV یا M4A استفاده کنید. آپلود فایل‌های بزرگ ممکن است چند دقیقه طول بکشد و باعث قطع ارتباط شود.")
65
  audio_input = gr.Audio(type="filepath", label="فایل صوتی را آپلود کنید (MP3، WAV، M4A)")
66
  text_output = gr.Textbox(label="متن تبدیل‌شده")
67
  summary_output = gr.Textbox(label="خلاصه گزارش")