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

使用diart与OpenAI Whisper时FFmpeg已安装仍报错的问题

问题:diart结合OpenAI Whisper转录音频时FFmpeg依赖报错

使用diart库结合OpenAI Whisper模型进行音频转录,运行代码时抛出以下错误:

Traceback (most recent call last):
File "/home/vkyc/Desktop/projectRasa/audio/lib/python3.10/site-packages/torchaudio/_extension.py", line 71, in _init_ffmpeg
_load_lib("libtorchaudio_ffmpeg")
File "/home/vkyc/Desktop/projectRasa/audio/lib/python3.10/site-packages/torchaudio/_extension.py", line 52, in _load_lib
torch.ops.load_library(path)
File "/home/vkyc/Desktop/projectRasa/audio/lib/python3.10/site-packages/torch/_ops.py", line 573, in load_library
ctypes.CDLL(path)
File "/usr/lib/python3.10/ctypes/__init__.py", line 374, in __init__
self._handle = _dlopen(self._name, mode)
OSError: libavdevice.so.58: cannot open shared object file: No such file or directory

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "/home/vkyc/Desktop/audio_streaming/LiveStream.py", line 13, in <module>
from diart.sources import MicrophoneAudioSource
File "/home/vkyc/Desktop/projectRasa/audio/lib/python3.10/site-packages/diart/sources.py", line 11, in <module>
from torchaudio.io import StreamReader
File "/home/vkyc/Desktop/projectRasa/audio/lib/python3.10/site-packages/torchaudio/io/__init__.py", line 21, in __getattr__
torchaudio._extension._init_ffmpeg()
File "/home/vkyc/Desktop/projectRasa/audio/lib/python3.10/site-packages/torchaudio/_extension.py", line 73, in _init_ffmpeg
raise ImportError("FFmpeg libraries are not found. Please install FFmpeg.") from err
ImportError: FFmpeg libraries are not found. Please install FFmpeg.

已执行pip install python-ffmpeg和sudo apt install ffmpeg确认系统已安装FFmpeg,但问题依旧。

解决方案

  • 安装对应版本的FFmpeg库
    报错中缺失的libavdevice.so.58属于FFmpeg 4.x系列,若通过apt安装的是新版FFmpeg(如5.x),库版本号会升级为59,导致不匹配。直接安装对应版本的库:

    sudo apt install libavdevice58
    

    若apt源中找不到该版本,可尝试添加旧版软件源,或从FFmpeg官方下载对应版本的预编译库手动安装。

  • 配置系统库路径
    若库已安装但系统无法识别,先定位库文件位置:

    find /usr -name libavdevice.so.58
    

    将找到的路径添加到LD_LIBRARY_PATH环境变量:

    export LD_LIBRARY_PATH=/path/to/ffmpeg/libs:$LD_LIBRARY_PATH
    

    若需永久生效,可将上述命令添加到~/.bashrc或~/.zshrc文件末尾,执行source ~/.bashrc使配置生效。

  • 修复虚拟环境依赖兼容性
    当前使用的虚拟环境中,torchaudio版本可能与系统FFmpeg版本不兼容。重新安装torchaudio:

    pip uninstall torchaudio -y
    pip install torchaudio --no-cache-dir
    

    若仍不兼容,可指定与FFmpeg 4.x适配的torchaudio版本进行安装。

  • 创建软链接修复库引用
    若找到libavdevice.so.58的路径(如/usr/lib/x86_64-linux-gnu/),但系统无法找到,可创建软链接:

    sudo ln -s /usr/lib/x86_64-linux-gnu/libavdevice.so.58 /usr/lib/libavdevice.so.58
    

    注意根据实际找到的路径调整命令中的路径参数。


内容的提问来源于stack exchange,提问作者Schrödinger's Cat

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 22:20:17