OpenAI Whisper模型 免费将音频生成字幕文件

2025年09月9日

转载请注明出处:https://www.myzhenai.com.cn/post/4804.html

Whisper 是 OpenAI 开源的自动语音识别系统,以其高准确度(尤其是中英文)和强大的多语言能力而闻名。它完全可以离线运行,是当前免费方案中的最佳选择。

Whisper优点:支持多语言识别、内置时间戳,可直接生成 SRT、精度高,适应多种噪声环境。

要安装Whisper需要先安装python和pip,这里也将安装命令发出来

Windows 系统安装方法

在 Windows 上,最推荐的方法是使用官方安装程序。

方法一:使用官方安装程序(推荐)

  1. 下载安装程序

  2. 运行安装程序

    • 双击下载好的 .exe 文件(如 python-3.12.0-amd64.exe)。

    • 至关重要的一步:在安装向导的第一个界面,务必勾选 “Add python.exe to PATH” 复选框。这将自动配置环境变量,让你能在命令行中直接使用 python 和 pip 命令。

    • 建议选择 “Install Now” 进行标准安装,它会安装 pip 和 IDLE 等常用组件。你也可以选择 “Customize installation” 来自定义安装路径和功能。

  3. 验证安装

    • 安装完成后,打开 命令提示符 (CMD) 或 PowerShell

    • 输入以下命令检查 Python 版本:

python --version
# 或有时需要输入
py --version
  • 输入以下命令检查 pip 版本:

pip --version

Linux 通用 Python3 和 pip 安装脚本

以下是一个适用于大多数 Linux 发行版的一键安装脚本,它会自动检测您的系统类型并使用相应的包管理器安装 Python3 和 pip。

#!/bin/bash

# 颜色定义
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m' # 无颜色

# 打印颜色信息
print_info() {
    echo -e "${GREEN}[信息]${NC} $1"
}

print_warning() {
    echo -e "${YELLOW}[警告]${NC} $1"
}

print_error() {
    echo -e "${RED}[错误]${NC} $1"
}

# 检查命令是否存在
command_exists() {
    command -v "$1" >/dev/null 2>&1
}

# 检测系统类型并安装 Python3 和 pip
install_python() {
    print_info "检测系统类型..."
    
    if command_exists apt-get; then
        # Debian/Ubuntu 系系统
        print_info "检测到 Debian/Ubuntu 系系统,使用 apt 安装"
        sudo apt update
        sudo apt install -y python3 python3-pip python3-venv
        
    elif command_exists yum; then
        # RHEL/CentOS 系系统
        print_info "检测到 RHEL/CentOS 系系统,使用 yum 安装"
        sudo yum install -y python3 python3-pip
        
    elif command_exists dnf; then
        # Fedora 系系统
        print_info "检测到 Fedora 系系统,使用 dnf 安装"
        sudo dnf install -y python3 python3-pip
        
    elif command_exists zypper; then
        # openSUSE 系系统
        print_info "检测到 openSUSE 系系统,使用 zypper 安装"
        sudo zypper install -y python3 python3-pip
        
    elif command_exists pacman; then
        # Arch Linux 系系统
        print_info "检测到 Arch Linux 系系统,使用 pacman 安装"
        sudo pacman -Sy --noconfirm python python-pip
        
    else
        print_error "无法检测到支持的包管理器"
        exit 1
    fi
}

# 验证安装
verify_installation() {
    print_info "验证安装..."
    
    if command_exists python3; then
        python3 --version
    else
        print_error "Python3 安装失败"
        exit 1
    fi
    
    if command_exists pip3; then
        pip3 --version
    else
        print_error "pip3 安装失败"
        exit 1
    fi
    
    print_info "安装成功!"
}

# 升级 pip 到最新版本
upgrade_pip() {
    print_info "升级 pip 到最新版本..."
    pip3 install --upgrade pip
}

# 设置可选的 pip 镜像源(中国用户可能需要)
set_pip_mirror() {
    read -p "是否要设置 pip 镜像源以加速下载?(y/N): " -n 1 -r
    echo
    if [[ $REPLY =~ ^[Yy]$ ]]; then
        print_info "设置清华 pip 镜像源..."
        pip3 config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
        pip3 config set install.trusted-host pypi.tuna.tsinghua.edu.cn
        print_info "pip 镜像源设置完成"
    fi
}

# 主函数
main() {
    print_info "开始安装 Python3 和 pip..."
    
    # 检查是否已安装
    if command_exists python3 && command_exists pip3; then
        print_warning "Python3 和 pip 似乎已经安装"
        verify_installation
        exit 0
    fi
    
    # 安装 Python3 和 pip
    install_python
    
    # 验证安装
    verify_installation
    
    # 升级 pip
    upgrade_pip
    
    # 可选设置镜像源
    set_pip_mirror
    
    print_info "安装完成!"
    print_info "使用 'python3 --version' 检查 Python 版本"
    print_info "使用 'pip3 --version' 检查 pip 版本"
}

# 执行主函数
main "$@"
  1. 自动检测系统类型(Debian/Ubuntu, RHEL/CentOS, Fedora, openSUSE, Arch Linux)

  2. 使用相应的包管理器安装 Python3 和 pip

  3. 验证安装是否成功

  4. 升级 pip 到最新版本

  5. 可选设置 pip 镜像源(对中国用户特别有用)

Linux 下编译安装 Python3 和 pip 的脚本

#!/bin/bash

# 颜色定义
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m' # 无颜色

# 打印颜色信息
print_info() {
    echo -e "${GREEN}[信息]${NC} $1"
}

print_warning() {
    echo -e "${YELLOW}[警告]${NC} $1"
}

print_error() {
    echo -e "${RED}[错误]${NC} $1"
}

print_step() {
    echo -e "${BLUE}[步骤]${NC} $1"
}

# 检查命令是否存在
command_exists() {
    command -v "$1" >/dev/null 2>&1
}

# 安装编译依赖
install_dependencies() {
    print_step "安装编译依赖..."
    
    if command_exists apt-get; then
        # Debian/Ubuntu 系系统
        sudo apt update
        sudo apt install -y build-essential zlib1g-dev libncurses5-dev \
        libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev \
        libsqlite3-dev wget libbz2-dev
        
    elif command_exists yum; then
        # RHEL/CentOS 系系统
        sudo yum groupinstall -y "Development Tools"
        sudo yum install -y zlib-devel bzip2 bzip2-devel readline-devel \
        sqlite sqlite-devel openssl-devel xz xz-devel libffi-devel \
        gcc make
        
    elif command_exists dnf; then
        # Fedora 系系统
        sudo dnf groupinstall -y "Development Tools"
        sudo dnf install -y zlib-devel bzip2 bzip2-devel readline-devel \
        sqlite sqlite-devel openssl-devel xz xz-devel libffi-devel \
        gcc make
        
    elif command_exists zypper; then
        # openSUSE 系系统
        sudo zypper install -y patterns-devel-C-C++-devel_C_C++
        sudo zypper install -y zlib-devel libbz2-devel libopenssl-devel \
        readline-devel sqlite3-devel xz-devel libffi-devel
        
    elif command_exists pacman; then
        # Arch Linux 系系统
        sudo pacman -Sy --noconfirm base-devel zlib bzip2 readline sqlite \
        openssl tk libffi
        
    else
        print_error "无法检测到支持的包管理器"
        exit 1
    fi
}

# 获取最新 Python 版本号
get_latest_python_version() {
    print_step "获取最新 Python 版本号..."
    # 从官方页面获取最新稳定版本
    PYTHON_VERSION=$(curl -s https://www.python.org/downloads/source/ | \
    grep -oP 'Latest Python 3 Release - Python \K[0-9.]+' | head -1)
    
    if [ -z "$PYTHON_VERSION" ]; then
        # 如果上述方法失败,使用备用方法
        PYTHON_VERSION=$(curl -s https://www.python.org/ftp/python/ | \
        grep -oP '>3\.[0-9]+\.[0-9]+/<' | \
        sed 's/>//;s/\/<$//' | sort -V | tail -1)
    fi
    
    if [ -z "$PYTHON_VERSION" ]; then
        print_warning "无法获取最新版本,使用默认版本 3.12.0"
        PYTHON_VERSION="3.12.0"
    else
        print_info "最新版本: Python $PYTHON_VERSION"
    fi
}

# 下载并编译 Python
compile_python() {
    print_step "下载并编译 Python..."
    
    # 创建临时目录
    BUILD_DIR=$(mktemp -d)
    cd "$BUILD_DIR" || exit 1
    
    # 下载 Python 源码
    print_info "下载 Python $PYTHON_VERSION 源码..."
    wget "https://www.python.org/ftp/python/$PYTHON_VERSION/Python-$PYTHON_VERSION.tgz"
    
    if [ ! -f "Python-$PYTHON_VERSION.tgz" ]; then
        print_error "下载失败"
        exit 1
    fi
    
    # 解压
    tar -xzf "Python-$PYTHON_VERSION.tgz"
    cd "Python-$PYTHON_VERSION" || exit 1
    
    # 配置编译选项
    print_info "配置编译选项..."
    ./configure --enable-optimizations --with-ensurepip=install
    
    # 编译 (使用多核加速)
    print_info "编译 Python (这可能需要一些时间)..."
    make -j "$(nproc)"
    
    # 安装
    print_info "安装 Python..."
    sudo make altinstall
    
    # 清理
    cd /tmp
    rm -rf "$BUILD_DIR"
}

# 验证安装
verify_installation() {
    print_step "验证安装..."
    
    # 查找安装的 Python 版本
    PYTHON_EXECUTABLE=$(ls /usr/local/bin/python3.* 2>/dev/null | sort -V | tail -1)
    
    if [ -n "$PYTHON_EXECUTABLE" ] && [ -x "$PYTHON_EXECUTABLE" ]; then
        print_info "Python 安装位置: $PYTHON_EXECUTABLE"
        $PYTHON_EXECUTABLE --version
        
        # 检查 pip
        PIP_EXECUTABLE="${PYTHON_EXECUTABLE} -m pip"
        if $PIP_EXECUTABLE --version >/dev/null 2>&1; then
            print_info "pip 已安装:"
            $PIP_EXECUTABLE --version
        else
            print_warning "pip 未正确安装,尝试安装..."
            $PYTHON_EXECUTABLE -m ensurepip --upgrade
        fi
    else
        print_error "Python 安装失败"
        exit 1
    fi
}

# 创建符号链接
create_symlinks() {
    print_step "创建符号链接..."
    
    # 查找最新安装的 Python
    PYTHON_EXECUTABLE=$(ls /usr/local/bin/python3.* 2>/dev/null | sort -V | tail -1)
    
    if [ -n "$PYTHON_EXECUTABLE" ]; then
        # 创建 python3 和 pip3 符号链接
        sudo ln -sf "$PYTHON_EXECUTABLE" /usr/local/bin/python3
        sudo ln -sf "$PYTHON_EXECUTABLE" /usr/local/bin/python
        
        # 创建 pip 符号链接
        PIP_EXECUTABLE="${PYTHON_EXECUTABLE%?}"  # 移除版本号最后一位
        PIP_EXECUTABLE="${PIP_EXECUTABLE}m"      # 添加 m 后缀 (python3.xm)
        
        if [ -f "/usr/local/bin/pip${PYTHON_EXECUTABLE##*python}" ]; then
            sudo ln -sf "/usr/local/bin/pip${PYTHON_EXECUTABLE##*python}" /usr/local/bin/pip3
            sudo ln -sf "/usr/local/bin/pip${PYTHON_EXECUTABLE##*python}" /usr/local/bin/pip
        fi
        
        print_info "符号链接已创建"
    else
        print_warning "未找到 Python 可执行文件,跳过创建符号链接"
    fi
}

# 升级 pip
upgrade_pip() {
    print_step "升级 pip..."
    
    PYTHON_EXECUTABLE=$(ls /usr/local/bin/python3.* 2>/dev/null | sort -V | tail -1)
    if [ -n "$PYTHON_EXECUTABLE" ]; then
        $PYTHON_EXECUTABLE -m pip install --upgrade pip
    fi
}

# 主函数
main() {
    print_info "开始从源码编译安装 Python3 和 pip..."
    
    # 检查是否以 root 权限运行
    if [ "$EUID" -ne 0 ]; then
        print_warning "建议使用 root 权限运行此脚本 (sudo)"
        read -p "是否继续? (y/N): " -n 1 -r
        echo
        if [[ ! $REPLY =~ ^[Yy]$ ]]; then
            exit 1
        fi
    fi
    
    # 安装依赖
    install_dependencies
    
    # 获取最新版本
    get_latest_python_version
    
    # 编译安装
    compile_python
    
    # 验证安装
    verify_installation
    
    # 创建符号链接
    create_symlinks
    
    # 升级 pip
    upgrade_pip
    
    print_info "编译安装完成!"
    print_info "使用 'python3 --version' 检查 Python 版本"
    print_info "使用 'pip3 --version' 检查 pip 版本"
}

# 执行主函数
main "$@"
  1. 自动检测系统类型并安装编译依赖

  2. 从 Python 官网获取最新稳定版本号

  3. 下载源码并编译安装 Python

  4. 启用优化选项 (--enable-optimizations)

  5. 确保 pip 一同安装 (--with-ensurepip=install)

  6. 使用多核编译加速进程

  7. 创建符号链接 (python3, python, pip3, pip)

  8. 升级 pip 到最新版本

安装 Whisper

# 先升级 pip
python -m pip install --upgrade pip

# 使用官方 PyPI 源安装 Whisper(可能需要科学上网)
pip install -U openai-whisper

# 使用阿里云镜像
pip install -U openai-whisper -i https://mirrors.aliyun.com/pypi/simple/

# 或使用豆瓣镜像
pip install -U openai-whisper -i https://pypi.doubanio.com/simple/

# 或使用华为云镜像
pip install -U openai-whisper -i https://repo.huaweicloud.com/repository/pypi/simple/

验证安装

你可以运行以下命令来验证 Whisper 是否安装成功:

python -c "import whisper; print('Whisper 安装成功!可用模型:', whisper.available_models())"

Whisper 安装成功!可用模型: [‘tiny’, ‘base’, ‘small’, ‘medium’, ‘large’, ‘large-v2’, ‘large-v3’]

使用 Whisper 生成 SRT 字幕

python -m whisper "你的音频文件.mp3" --model medium --language zh --output_format srt
or
python -m whisper "D:\js\lf\5.mp3" --model large-v3-turbo --language zh --output_format srt
or
python -m whisper "D:\js\lf\5.mp3" --model large-v3-turbo --language zh --output_format srt --output_dir "D:\js\lf"

参数说明:

  • --model: 指定使用的模型大小(tiny, base, small, medium, large)。越大越准确,但速度越慢

  • --language: 指定音频语言(zh 表示中文)

  • --output_format: 指定输出格式(srt, txt, vtt 等)


sicnature ---------------------------------------------------------------------
I P 地 址: 216.73.216.21
区 域 位 置: 美国加利福尼亚洛杉矶
系 统 信 息: 美国
Original content, please indicate the source:
同福客栈论坛 | 蟒蛇科普海南乡情论坛 | JiaYu Blog
sicnature ---------------------------------------------------------------------
Welcome to reprint. Please indicate the source https://www.myzhenai.com.cn/post/4804.html

没有评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注