点击查看 Edge-TTS 配音渠道无法使用的解决办法!!!

#87 Error opening output files: Invalid argument

103.127* Posted at: 3 months ago 👁234

Traceback (most recent call last):

File "videotrans\util\help_ffmpeg.py", line 270, in runffmpeg

File "subprocess.py", line 524, in run

subprocess.CalledProcessError: Command '['ffmpeg', '-hide_banner', '-ignore_unknown', '-y', '-i', 'C:/Users/绝迹/Downloads/02219be2fb460fe261b4c1c23e41fd73.mp4', '-vn', '-ac', '2', '-c:a', 'pcm_s16le', 'C:/sp/tmp/a6673e4463/zh-cn.wav']' returned non-zero exit status 4294967274.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

File "videotrans\task\_only_one.py", line 41, in run

File "videotrans\task\trans_create.py", line 287, in prepare

File "videotrans\task\trans_create.py", line 657, in _split_audio_byraw

File "videotrans\util\help_ffmpeg.py", line 310, in runffmpeg

Exception: Error opening output file C:/sp/tmp/a6673e4463/zh-cn.wav.

Error opening output files: Invalid argument

=====

Windows-10-10.0.26100-SP0

version:v3.78

frozen:True

9 Replies

Admin

sp.exe右键管理员权限打开

尝试过了,还是爆出同样的错误



==
预处理阶段出错:Error opening output file c:/users/liu jnxin/videos/pyvideotrans/tmp/speech2text/Breaking News Latest News and Videos CNN-1765537881.9610722.wav.
Error opening output files: Invalid argument:
Traceback (most recent call last):
File "videotrans\util\help_ffmpeg.py", line 275, in runffmpeg
File "subprocess.py", line 524, in run
subprocess.CalledProcessError: Command '['ffmpeg', '-hide_banner', '-ignore_unknown', '-y', '-i', 'C:/Users/Liu Jnxin/Workspace/Private/Study/Foreign Language/English/CNN/News report/Breaking News Latest News and Videos CNN.mp4', '-ac', '1', '-ar', '16000', '-c:a', 'pcm_s16le', 'c:/users/liu jnxin/videos/pyvideotrans/tmp/speech2text/Breaking News Latest News and Videos CNN-1765537881.9610722.wav']' returned non-zero exit status 4294967274.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "videotrans\task\job.py", line 64, in run
File "videotrans\task\_speech2text.py", line 46, in prepare
File "videotrans\util\help_ffmpeg.py", line 616, in conver_to_16k
File "videotrans\util\help_ffmpeg.py", line 315, in runffmpeg
RuntimeError: Error opening output file c:/users/liu jnxin/videos/pyvideotrans/tmp/speech2text/Breaking News Latest News and Videos CNN-1765537881.9610722.wav.
Error opening output files: Invalid argument

错误核心原因是 文件路径中包含中文字符或空格,导致 ffmpeg 无法正确处理。从日志可见,您的视频文件路径为 C:/Users/绝迹/Downloads/...C:/Users/Liu Jnxin/...,其中包含中文字符和空格。

请按以下步骤彻底解决:

  1. 重命名并移动视频文件

    • 将视频文件重命名为纯英文或数字(例如 video.mp4)。
    • 将其移动到不包含任何中文、空格或特殊符号的路径下。强烈建议直接放在磁盘根目录,例如 D:/video.mp4E:/news.mp4
  2. 检查软件安装路径

    • 确保 pyVideoTrans 软件本身也安装在纯英文路径下(例如 D:/videotrans)。绝对不要放在 C:/Program FilesC:/Windows 或包含中文的桌面。
  3. 重新处理

    • 启动软件,将重命名并移动后的视频文件拖入软件。
    • 在主界面第一行,务必勾选“清理已生成”,以确保重新处理。

根本原因ffmpeg 在处理包含非 ASCII 字符(如中文)或空格的路径时,容易出现编码问题,导致“Invalid argument”错误。这是软件依赖的底层工具限制,必须通过规范文件路径来解决。

更改了路径,去除了空格,更改了文件名,还是有错误 T-T

预处理阶段出错:Error opening output file C:/Software/pyVideoTrans/tmp/speech2text/video-1765544899.822897.wav.
Error opening output files: Invalid argument:
Traceback (most recent call last):
File "videotrans\util\help_ffmpeg.py", line 275, in runffmpeg
File "subprocess.py", line 524, in run
subprocess.CalledProcessError: Command '['ffmpeg', '-hide_banner', '-ignore_unknown', '-y', '-i', 'C:/Users/Liu Jnxin/Workspace/Private/Study/Foreign Language/English/CNN/News report/video.mp4', '-ac', '1', '-ar', '16000', '-c:a', 'pcm_s16le', 'C:/Software/pyVideoTrans/tmp/speech2text/video-1765544899.822897.wav']' returned non-zero exit status 4294967274.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "videotrans\task\job.py", line 64, in run
File "videotrans\task\_speech2text.py", line 46, in prepare
File "videotrans\util\help_ffmpeg.py", line 616, in conver_to_16k
File "videotrans\util\help_ffmpeg.py", line 315, in runffmpeg
RuntimeError: Error opening output file C:/Software/pyVideoTrans/tmp/speech2text/video-1765544899.822897.wav.

Error opening output files: Invalid argument

Windows-10-10.0.26100-SP0
version:v3.80
frozen:True
language:zh

问题根源在于您的 Windows 用户名包含空格Liu Jnxin),导致软件在构建临时文件路径时,路径 C:/Users/Liu Jnxin/... 中的空格未被正确处理,从而引发 ffmpeg 的“Invalid argument”错误。这是 Windows 系统下常见的问题。

请按以下步骤彻底解决:

  1. 移动视频文件:将您的视频文件 video.mp4 直接剪切到磁盘根目录,例如 D:/video.mp4E:/video.mp4。确保新路径不包含任何空格和中文字符
  2. 修改软件临时目录(关键步骤):

    • 打开 pyVideoTrans。
    • 点击顶部菜单栏的 工具 -> 设置
    • 在“临时目录”一项中,手动设置一个不包含空格的纯英文路径,例如 D:/pyvideotrans_tmp。软件会在此路径下创建临时文件。
    • 点击“确定”保存。
  3. 重新处理

    • 关闭并重新启动 pyVideoTrans。
    • 将移动到根目录的视频文件(如 D:/video.mp4)拖入软件。
    • 在主界面第一行,务必勾选“清理已生成”
    • 再次尝试处理。

如果上述步骤仍无法解决,可能是由于系统权限或磁盘问题。请尝试:

  • 以管理员身份运行 pyVideoTrans。
  • 检查目标磁盘(如 D 盘)是否有足够的写入空间。
  • 确保 C:/Software/pyVideoTrans/ 目录没有被杀毒软件或 Windows Defender 拦截写入。

我转音频都可以的,但是转mp4的视频就报出这个问题,是可能有什么原因么?

您提到“转音频可以,转MP4视频就报错”,这非常关键。问题很可能出在视频文件本身ffmpeg解码器上,而不是路径问题。请按以下步骤排查:

  1. 检查视频编码格式:某些特殊编码(如HEVC/H.265、AV1)或损坏的MP4文件可能导致ffmpeg解码失败。请使用其他播放器(如VLC、PotPlayer)确认视频能正常播放。
  2. 使用工具箱功能测试

    • 在pyVideoTrans中,点击顶部菜单栏的 工具箱
    • 选择 音视频合并/分离
    • 尝试从您的MP4文件中 提取音频。如果这一步也失败,则确认是视频文件问题。
  3. 转换视频格式(推荐)

    • 使用格式工厂、HandBrake 或 FFmpeg 命令行,将您的MP4视频转换为标准的 H.264编码、MP4容器 格式。
    • FFmpeg命令行示例(在命令提示符中运行,需先安装ffmpeg):

      ffmpeg -i "原视频.mp4" -c:v libx264 -preset fast -c:a aac "output.mp4"
    • 转换完成后,使用新生成的 output.mp4 文件在pyVideoTrans中处理。
  4. 检查软件使用的ffmpeg

    • pyVideoTrans自带ffmpeg。如果问题持续,可以尝试下载官方ffmpeg,并将其路径配置到软件中(菜单栏 工具 -> 设置 -> ffmpeg路径)。
  5. 查看详细日志

    • 打开软件目录下的 logs 文件夹,找到最新的日志文件,查看其中是否有更详细的ffmpeg错误信息。

核心判断:如果“提取音频”成功但“整体处理”失败,问题可能出在视频流解码或后续合成步骤。如果“提取音频”也失败,则视频文件是主要原因。请优先尝试第3步(转换视频格式),这是解决此类编解码兼容性问题的最有效方法。

找到了问题,我所使用的视频文件,是纯视频流,没有音频,导致了错误,下载了包含音频流的mp4文件,就好用了

问题已定位:您使用的MP4视频文件是“纯视频流”,不包含音频轨道。pyVideoTrans的核心流程是“提取音频 -> 识别 -> 翻译 -> 合成”,当输入视频没有音频时,第一步提取音频就会失败,导致后续流程无法进行。

解决方法如下:

  1. 最佳方案:使用包含音频的视频文件(您已解决)。
  2. 备用方案(处理无声视频)

    • 如果视频本身就没有声音(如静音演示),您无需使用pyVideoTrans进行翻译配音。
    • 如果需要为无声视频添加解说,可以先用其他工具(如剪映、Premiere)将视频与您准备好的音频合并,再将合并后的文件交给pyVideoTrans处理。
  3. 注意事项:软件在“语音识别”阶段会依赖音频。如果视频有背景音乐但无人声,识别结果也会为空或混乱。

总结:pyVideoTrans适用于处理包含人说话声音的音视频文件。纯视频或无清晰人声的视频无法正常处理。

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

Similar issues already exist

Trending Questions