You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

经ffmpeg重编码后无法重新打开WAV文件问题已解决(pydub)

问题已解决致谢

该问题已由Michael Butscher解决,修复后的代码已存入仓库的fixed分支,在此致谢!

原脚本功能与代码

我写了个Python脚本,用来读取目录下所有*.wav文件,调整音量后保存到名为output的文件夹里。脚本文件lower.py内容如下:

import os
from pydub import AudioSegment as ass

# 获取当前工作目录
current_working_directory = os.getcwd()
all_files = os.listdir();

while len(all_files) > 0:
    file = all_files.pop()
    song = ass.from_wav(file)
    song = song - 16
    song.export('out\\'+file)
问题现象

导出的WAV文件能在Windows Media Player正常播放,音量也确实调整了,但如果尝试用AudioSegment.from_wav重新读取这些文件,ffmpeg会抛出无法解码的错误。推测是文件数据或头部存在异常。

开发环境信息

我用Windows 10的Chocolatey包管理器安装了最新版相关组件,环境版本信息如下:

Python 3.12.2
Chocolatey v2.2.2
C:\Users\moren>C:\ProgramData\chocolatey\bin\ffmpeg
ffmpeg version 7.0-essentials_build-www.gyan.dev Copyright (c) 2000-2024 the FFmpeg developers
  built with gcc 13.2.0 (Rev5, Built by MSYS2 project)
  configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-dxva2 --enable-d3d11va --enable-d3d12va --enable-ffnvcodec --enable-libvpl --enable-nvdec --enable-nvenc --enable-vaapi --enable-libgme --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-librubberband
  libavutil      59.  8.100 / 59.  8.100
  libavcodec     61.  3.100 / 61.  3.100
  libavformat    61.  1.100 / 61.  1.100
  libavdevice    61.  1.100 / 61.  1.100
  libavfilter    10.  1.100 / 10.  1.100
  libswscale      8.  1.100 /  8.  1.100
  libswresample   5.  1.100 /  5.  1.100
  libpostproc    58.  1.100 / 58.  1.100
Universal media converter

我试过用Media Player、VLC Media Player和Audacity打开生成的WAV文件,都没异常,唯独生成这些文件的脚本无法读取它们!


内容的提问来源于stack exchange,提问作者Trent Tompkins

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 08:15:16