#1415 怎么确认勾选启用CUDA后真的启用了,我花了好多时间安装好了CUDA和cnDNN的对应版本。我没安装这俩软件之前,也能勾选上

216.227* Posted at: 1 hour ago 👁39

怎么确认勾选启用CUDA后真的启用了,我花了好多时间安装好了CUDA和cnDNN的对应版本。我没安装这俩软件之前,也能勾选上

22 Replies

要确认 CUDA 是否真正启用,请查看软件在处理视频时控制台输出的日志信息。

确认方法:

  1. 启动软件,开始一个视频翻译任务。
  2. 在处理过程中,注意观察软件界面底部的日志输出区域。
  3. 在语音识别阶段,如果看到类似 "Using CUDA""Running on GPU" 的提示,则说明 CUDA 已成功启用。
  4. 您也可以打开任务管理器,在“性能”选项卡中查看您的 NVIDIA GPU 的“专用GPU内存”和“3D”使用率在处理过程中是否有明显升高。如果显著升高,则说明 GPU 正在工作。

关于安装前的勾选:
您没安装 CUDA 和 cuDNN 之前也能勾选上,是因为这个复选框只是一个“用户意图”的设置。软件会尝试使用 CUDA,但如果系统环境不满足(即未正确安装 CUDA/cuDNN),它会自动回退到 CPU 进行计算,而不会报错。因此,勾选不代表一定在用 GPU,关键要看运行时的日志和 GPU 负载。

现在您已安装好环境,只要在日志中看到上述成功信息,就证明 CUDA 正在生效。

界面底部好像没有日志输出区域,这个软件别的哪里还能看运行日志吗

是的,软件运行日志有专门的目录可以查看。

  1. 请打开软件所在的根目录。
  2. 进入 videotrans 文件夹。
  3. 再进入 logs 文件夹。

这个 logs 文件夹内保存了所有运行日志,文件以日期命名(例如 sp_20241115.log)。请打开最新的日志文件进行查看。

如何确认 CUDA 已启用:
在日志文件中,搜索以下关键词:

  • Using CUDA
  • Running on GPU
  • cuda
  • GPU

如果在语音识别阶段(例如使用 faster-whisper 时)的日志行附近找到这些词,就证明 CUDA 正在正常工作。

注意: 只有 语音识别 阶段会大量使用 GPU 和 CUDA。翻译和配音阶段主要依赖 CPU 和网络,因此在这些阶段 GPU 使用率不高是正常现象。

一段6分20秒的视频,原本只有23.3mb,翻译后生成的新视频体积为0.97gb,可以缩小视频体积吗。这个软件翻译后生成的视频都是0.97gb,还是如果视频更长的话,体积不止0.97gb.

视频体积急剧增大是正常现象,并且视频越长,生成的文件体积会越大。原因和解决方法如下:

原因分析:

  1. 视频重新编码:软件在处理过程中会对视频进行解码和重新编码,默认使用较高的质量设置,导致体积增大。
  2. “视频慢速”功能:如果您在处理时勾选了“视频慢速”以对齐音画,这会显著增加视频的帧数,是导致体积暴增的最主要原因。

缩小体积的解决方案:

  1. 【首要检查】取消勾选“视频慢速”:在翻译设置区域,确保没有勾选“视频慢速”。对齐音画请优先使用“配音加速”功能。
  2. 调整视频输出质量(高级选项)

    • 点击顶部菜单 工具/选项 -> 高级选项
    • 在“视频输出控制”区域,进行以下调整:

      • 视频转码损失控制 (crf):将此值调大。默认是 13,您可以尝试调整为 182328。数值越大,压缩率越高,文件体积越小,但画质损失也越大。23 是一个在体积和画质间比较均衡的值。
      • 输出视频质量压缩率控制:将此选项从默认的 medium 改为 fastveryfast。这会降低编码复杂度,减小文件体积,但可能对画质有轻微影响。
  3. 更改视频编码格式

    • 在同一个“高级选项”中,找到“264或265视频编码”。
    • 如果您的设备和播放器支持,可以尝试选择“libx265”。H.265编码比H.264具有更高的压缩率,能在相近画质下生成更小的文件。

总结: 视频越长,处理后的体积必然越大。请优先检查并关闭“视频慢速”功能,然后根据需要调整高级选项中的压缩参数。

生成视频的途中,会出现两三次倒计时,默认是90秒,请问这个可以修改吗,我想改成30秒

可以修改。这个倒计时是留给您检查和修改字幕的时间。

修改方法如下:

  1. 点击软件顶部菜单栏的 工具/选项
  2. 在下拉菜单中选择 高级选项
  3. 在弹出的窗口中,找到 通用设置 分类下的 暂停倒计时/s 选项。
  4. 将默认的 90 修改为您想要的 30
  5. 点击 保存

修改后,下次进行单个视频翻译时,在语音识别和翻译完成后弹出的字幕编辑窗口中,暂停倒计时就会变为您设置的 30 秒。

语音识别里的openai-whisper和faster-whisper哪个效果更好,速度更快

在效果和速度的权衡上,建议优先选择 faster-whisper

详细对比:

  • 效果/准确度:

    • 两者几乎相同。因为 faster-whisperopenai-whisper 的一个优化重写版本,它们使用的核心模型(如 large-v3)是完全一样的。在绝大多数情况下,两者的识别准确率没有可感知的差异。
  • 速度:

    • faster-whisper 明显更快。这是它最主要的设计目标。它通过C++实现和一系列优化,相比原版的 openai-whisper 带来了显著的性能提升,尤其是在使用GPU(CUDA)时。
  • 资源消耗:

    • faster-whisper 更低。它在运行时占用的内存和显存通常更少。

结论与建议:

对于绝大多数用户,faster-whisper 是更优的选择,它在保证与原版相同识别质量的前提下,提供了更快的速度和更低的资源消耗。

您可以在 faster-whisper 的设置中选择与 openai-whisper 相同的模型(例如 large-v3),并勾选CUDA加速,以获得最佳的性能体验。

选择faster-whisper ,模型应该怎么选,哪个速度快,哪个效果好,区别大不大

模型的选择是速度与效果之间的权衡。区别很大,请根据您的需求参考以下指南:

1. 效果优先 (高准确度)

  • 推荐模型:large-v3
  • 说明: 这是目前效果最好、识别最准确的模型,尤其对于专业术语、复杂语境或带口音的语音。它是追求质量时的首选。

2. 均衡之选 (效果与速度兼顾)

  • 推荐模型:medium
  • 说明: 在绝大多数情况下,medium 模型已经能提供非常高的准确度,与 large-v3 的差距很小,但速度更快,资源占用更少。是性价比最高的选择。

3. 速度优先 (快速出结果)

  • 推荐模型:small
  • 说明: 如果您的视频内容简单(如发音清晰的日常对话),且对处理速度有极高要求,可以选择 small。它的准确度对于非专业内容也足够可用。

总结与建议:

  • 区别: 模型从 tiny -> base -> small -> medium -> large-v3模型越大,参数越多,识别效果越好,但处理速度越慢,对GPU显存的要求也越高
  • 通用推荐: 如果您不确定,直接选择 medium 模型。它在效果和速度之间取得了最佳平衡。
  • 硬件参考: 如果您拥有8GB或以上显存的显卡,可以轻松运行 large-v3。如果显存较小(如4GB),建议从 mediumsmall 开始尝试,避免显存溢出错误。

简单来说:要最好效果large-v3,要最快速度small,想两者兼顾medium

large-v3和large-v3-turbo 有什么区别

large-v3-turbo 是专门为实时或低延迟转录场景优化的模型,而标准的 large-v3 是为高精度转录设计的。它们的核心区别如下:

  1. 设计目标与架构

    • large-v3-turbo: 它是 large-v3 的蒸馏版本,通过减少模型层数等方法来缩小模型体积,旨在实现更快的推理速度更低的延迟。它牺牲了一小部分精度来换取速度。
    • large-v3: 是完整的、未经压缩的模型,旨在提供最高的识别准确率
  2. 速度与精度

    • 速度large-v3-turbo 明显快于 large-v3
    • 精度large-v3 的识别准确率高于 large-v3-turbo。对于复杂、有口音或嘈杂的音频,这种精度差距会更明显。
  3. 适用场景

    • 选择 large-v3-turbo: 如果您处理的是发音清晰、背景干净的音频,并且对处理速度有极致要求(例如需要快速批量处理大量视频)。
    • 选择 large-v3: 如果您追求最佳的转录质量,能够接受更长的处理时间(例如处理带有专业术语、口音或背景噪音的重要视频)。

总结与建议

对于 pyVideoTrans 的用户,在大多数非实时处理的视频翻译场景下,推荐使用标准的 large-v3 模型。因为视频翻译是一个追求最终质量的任务,多花一些处理时间来换取更准确的字幕,对于后续的翻译和配音质量至关重要。除非您有海量视频需要快速处理,且对绝对精度要求不高,否则 large-v3 是更稳妥和有效的选择。

简单来说:要最快turbo,要最好选标准版。

我勾选启用CUDA后,任务管理器里的GPU使用占比并不是很高,是怎么回事,我的显卡是RTX2070super

这是完全正常的现象,主要由以下原因造成:1. 任务性质决定: pyVideoTrans 的工作流程中,只有 语音识别 阶段会大量使用 GPU 进行计算。翻译 和 配音 阶段主要依赖 CPU 和网络,此时 GPU 负载自然会很低。您看到的可能是任务运行在非语音识别阶段。2. GPU 使用模式: 语音识别(如 faster-whisper)对 GPU 的占用是 间歇性爆发 的,而不是持续满载。它会加载模型到显存,然后分片段处理音频。在处理每个片段时 GPU 使用率会瞬间冲高,处理间隙则会回落。在任务管理器中可能不容易捕捉到这种瞬时高峰。如何确认 CUDA 确实在工作:查看日志: 这是最可靠的方法。请打开软件根目录下的 videotrans/logs 文件夹,查看最新的日志文件。搜索包含 "Using CUDA" 或 "GPU" 字样的行。如果找到,就证明软件正在使用您的 GPU。观察显存占用: 在任务管理器的“性能”选项卡中,关注“专用 GPU 内存”的使用情况。即使 GPU 计算利用率不高,但只要语音识别模型(如 large-v3)成功加载,您的显存占用应该会有几个 GB 的显著增加。这同样是 CUDA 在工作的有力证据。结论: 您的 RTX 2070 Super 性能足够强大,软件处理语音识别的计算负载对它来说可能相对轻松,因此不会出现持续 100% 占用的状况。只要通过日志确认了 "Using CUDA",就说明您的 CUDA 环境配置成功且正在生效,无需担心。

log里有未找到或未选择硬件编码器,将使用软件编码,是怎么回事,如何解决

这个日志提示表明,软件在尝试使用您显卡的硬件编码器来加速视频合成时失败了,因此回退到了速度较慢的软件编码。这通常不会影响最终视频的质量,但会显著增加视频合成阶段的时间。

如何解决:

这个问题通常与 FFmpeg 的编译版本有关。请按照以下步骤尝试解决:

  1. 检查并更新软件(首要步骤)

    • 请前往 pyVideoTrans 的官方网站或发布页面,确认您使用的是最新版本。开发者可能会在新版本中更新 FFmpeg 以支持更多硬件。
  2. 在高级选项中强制指定编码器

    • 点击软件顶部菜单的 工具/选项 -> 高级选项
    • 视频输出控制 区域,找到 264或265视频编码 选项。
    • 尝试手动选择一个带有 nvenc(NVIDIA 硬件编码)字样的选项,例如:

      • h264_nvenc (用于 H.264 编码)
      • hevc_nvenc (用于 H.265 编码)
    • 选择后点击 保存,然后重新运行任务测试。
  3. 如果上述方法无效

    • 这个问题很可能源于软件自带的 FFmpeg 库未包含对您显卡的 NVENC 编码器的支持。
    • 一个彻底的解决方法是,在您的系统中安装一个完整版的 FFmpeg,并配置系统环境变量 PATH,让软件优先使用系统中的 FFmpeg。
    • 不过,这对于普通用户来说操作较为复杂。如果第2步无效,且您不介意较长的合成时间,使用软件编码也是完全可行的,只是需要多等待一些时间。

总结: 请优先尝试在 高级选项 中手动选择 h264_nvenchevc_nvenc 编码器,这是最直接有效的解决方法。

视频输出控制 区域里只有264/265编码,里面的两个选项是264和265没有nvenc字样,怎么办

这表明软件自带的 FFmpeg 版本没有编译进 NVIDIA 的硬件编码器支持。您可以尝试以下解决方案:方案一:在高级选项中启用强制软解码(推荐尝试)在 工具/选项 -> 高级选项 -> 视频输出控制 区域,找到并勾选 强制软解码 选项。有时这个选项能解决一些编码器的兼容性问题,可能会触发软件使用正确的编码器。保存后重启软件并重试。方案二:使用自定义 FFmpeg 命令(高级用户)在同一个 高级选项 的 视频输出控制 区域,找到 自定义ffmpeg命令参数。您可以尝试手动指定硬件编码器,输入以下参数之一:对于 H.264 编码: -c:v h264_nvenc对于 H.265 编码: -c:v hevc_nvenc保存后重试。如果这导致错误,请清空该设置。方案三:接受现状(最稳妥)如果以上方法均无效,说明当前软件包确实不支持您的显卡硬件编码。在这种情况下,使用软件编码(即 libx264 或 libx265)是唯一的选择。这只会影响最后的视频合成阶段的速度,不会影响语音识别、翻译和配音的质量。视频合成阶段会慢一些,但最终结果是完全正常的。结论: 鉴于您的选项中没有 nvenc,最可能的原因是软件内置的 FFmpeg 不支持。您可以尝试方案一,如果不行,为了稳定起见,建议暂时接受使用软件编码。

怎么在系统中安装一个完整版的 FFmpeg,并配置系统环境变量 PATH,让软件优先使用系统中的 FFmpeg

这是一个高级操作,请严格按照以下步骤执行。完成后,软件将使用您系统上功能更完整的 FFmpeg,很可能解决硬件编码器缺失的问题。

第 1 步:下载完整版 FFmpeg

  1. 访问 FFmpeg 官方下载页面:https://www.gyan.dev/ffmpeg/builds/ (这是一个被广泛认可的 Windows 构建版本)。
  2. 找到 "Release Essentials" 版本,点击 ffmpeg-git-full.7z 链接进行下载。

第 2 步:安装并设置 FFmpeg

  1. 使用解压软件(如 7-Zip)将下载的 .7z 文件解压到一个路径简单且无中文的文件夹。例如,解压到 D:\ffmpeg

    • 解压后,您应该会看到一个名为 ffmpeg-git-full 的文件夹,其内部有 bindocpresets 等子文件夹。
  2. 将 FFmpeg 添加到系统环境变量:

    • 在 Windows 搜索框输入 "编辑系统环境变量" 并打开。
    • 在弹出的窗口中,点击右下角的 "环境变量..." 按钮。
    • 在下方的 "系统变量" 列表中,找到并选中名为 Path 的变量,然后点击 "编辑..."
    • 点击 "新建",然后将 FFmpeg 的 bin 文件夹的完整路径添加进去。根据上面的例子,路径就是 D:\ffmpeg\ffmpeg-git-full\bin
    • 依次点击 "确定" 关闭所有窗口。
  3. 验证安装是否成功:

    • Win + R 键,输入 cmd 并回车,打开命令提示符。
    • 输入以下命令并按回车:

      ffmpeg -encoders | findstr nvenc
    • 如果命令行中显示出了包含 h264_nvenchevc_nvenc 的行,则表示成功!您的系统 FFmpeg 已就绪并支持 NVIDIA 硬件编码。

第 3 步:配置 pyVideoTrans

  1. 重要: 关闭 pyVideoTrans 软件(如果它正在运行)。
  2. 打开 pyVideoTrans 软件。
  3. 再次尝试您的视频翻译任务。现在,软件应该会优先使用您刚刚配置的系统 FFmpeg。

完成以上步骤后,软件在视频合成时就应该能够调用 h264_nvenchevc_nvenc 编码器了,这将显著加快视频输出速度。如果问题依旧,请检查日志文件,看是否有新的错误信息。

设置好了,cmd也验证成功了,但是重新软件后视频输出控制里依旧没有 h264_nvenc 或 hevc_nvenc ,只有264/265编码里的264和265

Post Your Reply
Open source and free maintenance is not easy. If this project is helpful to you, please consider making a small donation to help the project continue to maintain and update.

Donate: https://ko-fi.com/jianchang512

Trending Questions