python离线实时语音识别会议记录录音并转写文本代码
代码语言:python
所属分类:其他
代码描述:python离线实时语音识别会议记录录音并转写文本代码
代码标签: python 离线 实时 语音 识别 会议 记录 录音 转写 文本 代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
#!/usr/local/python3/bin/python3
# -*- coding: utf-8 -*
import tkinter as tk
from tkinter import ttk, scrolledtext, messagebox
import threading
import queue
import sounddevice as sd
from scipy.io.wavfile import write
import numpy as np
from faster_whisper import WhisperModel
import os
import datetime
import torch
import noisereduce as nr # 【新增】导入降噪库
# --- 全局配置 ---
LANGUAGES = { "简体中文": "zh", "自动检测": "auto", "English": "en", "日本語": "ja", "한국어": "ko", "Français": "fr", "Deutsch": "de", "Español": "es" }
SAMPLE_RATE = 16000 # 【新增】将采样率定义为全局常量
class AdvancedRecorderApp:
def __init__(self, master):
self.master = master
self.is_recording = False
self.model = None
self.current_model_settings = {}
self.setup_ui()
self.check_device()
def setup_ui(self):
self.master.title("高级会议录音神器 V2.1 (降噪增强版)")
self.master.geometry("800x650") # 稍微增加高度以容纳新控件
# --- 设置区域 ---
settings_frame = ttk.LabelFrame(self.master, text="设置")
settings_frame.pack(padx=10, pady=10, fill="x")
# 模型选择
ttk.Label(settings_frame, text="模型:").grid(row=0, column=0, padx=5, pady=5, sticky="w")
self.model_var = tk.StringVar(value="small") # 推荐small作为默认
model_options = ["tiny", "base", "small", "medium", "large-v3"]
self.model_menu = ttk.Combobox(settings_frame, textvariable=self.model_var, values=model_options, state="readonly")
self.model_menu.grid(row=0, column=1, padx=5, pady=5)
# 语言选择
ttk.Label(settings_frame, text="语言:").grid(row=0, column=2, padx=5, pady=5, sticky="w")
self.lang_var = tk.StringVar(value="简体中文")
lang_options = list(LANGUAGES.keys())
self.lang_menu = ttk.Combobox(settings_frame, textvariable=self.lang_var, values=lang_options, state="readonly")
self.lang_menu.grid(row=0, column=3, padx=5, pady=5)
# 设备选择
ttk.Label(settings_frame, text="设备:").grid(row=1, column=0, padx=5, pady=5, sticky="w")
self.device_var = tk.StringVar(value="cpu")
self.device_.........完整代码请登录后点击上方下载按钮下载查看















网友评论0