فارسی
باز کردن در Telegram

رشتهٔ گفتگو سلام وقت بخیر

4 پیام · –
Y
سلام وقت بخیر خواستم بجای whisper از faster-whisper استفاده کنم که برای فیلم های تایم بالا سریع تر باشه و کمتر به gpu اینا فشار بیاره اما کدش موقع ران انگار گیر میکنه و رو این حالتی که تو عکس فرستادم میمونه کتابخانه های زیر رو هم نصب کردم: nvidia-cudnn-cu12 nvidia-cublas-cu12 لطفا راهنمایی کنید❤️ # making_subtitle_english_faster.py # faster-whisper LARGE (GPU) # Fixed input file: D:\confidental\Music\Tear.mp3 import os import subprocess import tempfile from faster_whisper import WhisperModel import pysubs2 def extract_audio(input_path, output_wav): cmd = [ "ffmpeg", "-y", "-i", input_path, "-vn", "-acodec", "pcm_s16le", "-ar", "16000", "-ac", "1", output_wav ] subprocess.run(cmd, check=True) def save_srt(segments, output_srt): subs = pysubs2.SSAFile() for seg in segments: subs.append( pysubs2.SSAEvent( start=int(seg.start * 1000), end=int(seg.end * 1000), text=seg.text.strip() ) ) subs.save(output_srt) print(f"SRT created -> {output_srt}") def main(): input_file = r"D:\confidental\Music\Tears.mp3" if not os.path.exists(input_file): print("Input file not found!") return output_srt = os.path.splitext(input_file)[0] + ".srt" print("Loading Whisper LARGE model on GPU...") # :white_check_mark: این خط اصلاح شد model = WhisperModel( "large-v3", # ← آرگومان اول، نه keyword device="cuda", compute_type="float16" ) with tempfile.TemporaryDirectory() as tmp: audio_wav = os.path.join(tmp, "audio.wav") print("Extracting audio...") extract_audio(input_file, audio_wav) print("Transcribing...") segments, info = model.transcribe( audio_wav, beam_size=5, vad_filter=True, language="en", condition_on_previous_text=False ) save_srt(segments, output_srt) print("Done :white_check_mark:") print("Language:", info.language) print("Duration:", round(info.duration, 2), "seconds") if __name__ == "__main__": main()
  1. E
    تصویر خطا رو فکر کنم ارسال نکردید
    1. Y
      خطا نمیده کار میکنه اما مثل whisper توربو که استفاده زيرنويس رو اصلا درست تشخیص نمیده و برای همه فایل ها thank you میاره
      1. E
        اگه بتونید یکم اطلاعات دقیقتر بدید بهتر میشه عبارت هایی مثل thank you زمانی نوشته میشن که برنامه در تشخیص با مشکل مواجه میشه مثلا زمان های خالی که چیزی برای پردازش وجود نداره اینا چاپ میشن در صورتی که این اتفاق میوفته باید تنظیمات مربوژ به تشخیص سکوت و گفتار رو ایجاد یا بهینه کنید پیشنهادی برای models.transcribe segments, info = model.transcribe( audio_wav, beam_size=5, vad_filter=True, vad_parameters=dict( min_silence_duration_ms=500, speech_pad_ms=300, no_speech_threshold=0.95, compression_ratio_threshold=2.4, language="en", condition_on_previous_text=False ) یا vad_parameter های دیگه ای که فکر میکنید نیازه اگه فایلاتون تمیز نشدن قبل از اینکه بعنوان ورودی استفاده کنید تمیزشون کنید تا نویز و چیزای اذیت کار کم یا حذف بشه ffmpeg -i input.wav -af "arnndn=m=rnnoise.rnnn, silenceremove=stop_periods=-1:stop_duration=1:stop_threshold=-30dB" output_cleaned.wav توی اجرای برنامه چک کنید ببینید اون پرینتی که گذاشتی نمایش داده میشه یا نه loadin whisper large model on gpu کدتون رو روی فایل دیگه هم امتحان میکنید همینه؟

فید عمومی باز از ایندکس جست‌وجو ChatCrawler — «Google برای Telegram عمومی»؛ با خزش انجمن به‌روز می‌شود. زمان‌ها به UTC است.

فقط محتوای عمومی، API رسمی Telegram. دربارهٔ ما · پرسش‌ها · محدودیت‌های ایندکس · حذف یک صفحه · کاتالوگ · جست‌وجو · روش محاسبهٔ ما