#5047 Traceback (most recent call last): File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/so

50.7* Posted at: 1 hour ago

Traceback (most recent call last):
File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/soundfile.py", line 267, in

_snd = _ffi.dlopen('sndfile')

File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/cffi/api.py", line 150, in dlopen

lib, function_cache = _make_ffi_library(self, name, flags)

File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/cffi/api.py", line 834, in _make_ffi_library

backendlib = _load_backend_lib(backend, libname, flags)

File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/cffi/api.py", line 829, in _load_backend_lib

raise OSError(msg)

OSError: ctypes.util.find_library() did not manage to locate a library called 'sndfile'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/Users/junyouchen/Downloads/pyvideotrans/sp.py", line 209, in

QTimer.singleShot(100, lambda: initialize_full_app(splash, app))

File "/Users/junyouchen/Downloads/pyvideotrans/sp.py", line 146, in initialize_full_app

from videotrans.mainwin.main_win import MainWindow

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/mainwin/main_win.py", line 7, in

from videotrans.util import tools

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/util/tools.py", line 4, in

from .help_misc import *

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/util/help_misc.py", line 16, in

from videotrans.recognition import RECOGN_NAME_LIST

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/recognition/__init__.py", line 7, in

from videotrans.recognition._base import BaseRecogn

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/recognition/_base.py", line 9, in

from videotrans.configure.base import BaseCon

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/configure/base.py", line 13, in

from videotrans.process.signelobj import GlobalProcessManager

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/process/__init__.py", line 2, in

from .tts_fun import qwen3tts_fun

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/process/tts_fun.py", line 9, in

import soundfile as sf

File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/soundfile.py", line 276, in

_snd = _ffi.dlopen(_os.path.join(

File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/cffi/api.py", line 150, in dlopen

lib, function_cache = _make_ffi_library(self, name, flags)

File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/cffi/api.py", line 834, in _make_ffi_library

backendlib = _load_backend_lib(backend, libname, flags)

File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/cffi/api.py", line 829, in _load_backend_lib

raise OSError(msg)

OSError: cannot load library '/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/_soundfile_data/libsndfile.dylib': dlopen(/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/_soundfile_data/libsndfile.dylib, 0x0002): tried: '/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/_soundfile_data/libsndfile.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/_soundfile_data/libsndfile.dylib' (no such file), '/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/_soundfile_data/libsndfile.dylib' (no such file). Additionally, ctypes.util.find_library() did not manage to locate a library called '/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/_soundfile_data/libsndfile.dylib'

5 Replies

此错误是因为系统缺少 libsndfile 动态库,soundfile 库无法加载。

解决方案:

  1. 使用 Homebrew 安装该库:

    brew install libsndfile
  2. 安装完成后重新启动软件。如果仍有问题,请确认已安装 FFmpeg(brew install ffmpeg)并确保环境变量正确。

请查阅相关文档:

Traceback (most recent call last):
File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/soundfile.py", line 267, in

_snd = _ffi.dlopen('sndfile')

File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/cffi/api.py", line 150, in dlopen

lib, function_cache = _make_ffi_library(self, name, flags)

File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/cffi/api.py", line 834, in _make_ffi_library

backendlib = _load_backend_lib(backend, libname, flags)

File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/cffi/api.py", line 829, in _load_backend_lib

raise OSError(msg)

OSError: ctypes.util.find_library() did not manage to locate a library called 'sndfile'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/Users/junyouchen/Downloads/pyvideotrans/sp.py", line 209, in

QTimer.singleShot(100, lambda: initialize_full_app(splash, app))

File "/Users/junyouchen/Downloads/pyvideotrans/sp.py", line 146, in initialize_full_app

from videotrans.mainwin.main_win import MainWindow

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/mainwin/main_win.py", line 7, in

from videotrans.util import tools

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/util/tools.py", line 4, in

from .help_misc import *

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/util/help_misc.py", line 16, in

from videotrans.recognition import RECOGN_NAME_LIST

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/recognition/__init__.py", line 7, in

from videotrans.recognition._base import BaseRecogn

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/recognition/_base.py", line 9, in

from videotrans.configure.base import BaseCon

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/configure/base.py", line 13, in

from videotrans.process.signelobj import GlobalProcessManager

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/process/__init__.py", line 2, in

from .tts_fun import qwen3tts_fun

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/process/tts_fun.py", line 9, in

import soundfile as sf

File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/soundfile.py", line 276, in

_snd = _ffi.dlopen(_os.path.join(

File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/cffi/api.py", line 150, in dlopen

lib, function_cache = _make_ffi_library(self, name, flags)

File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/cffi/api.py", line 834, in _make_ffi_library

backendlib = _load_backend_lib(backend, libname, flags)

File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/cffi/api.py", line 829, in _load_backend_lib

raise OSError(msg)

OSError: cannot load library '/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/_soundfile_data/libsndfile.dylib': dlopen(/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/_soundfile_data/libsndfile.dylib, 0x0002): tried: '/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/_soundfile_data/libsndfile.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/_soundfile_data/libsndfile.dylib' (no such file), '/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/_soundfile_data/libsndfile.dylib' (no such file). Additionally, ctypes.util.find_library() did not manage to locate a library called '/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/_soundfile_data/libsndfile.dylib'

该错误明确表示系统缺少 libsndfile 动态库,soundfile 模块无法加载。请在终端执行:

brew install libsndfile

安装完成后,重新激活虚拟环境并运行 uv sync 重新绑定依赖,然后重启软件。

如果仍然报错,请提供软件安装目录下的 logs/ 文件夹中最新的日志文件(复制底部约30行报错信息)以便进一步分析。

Traceback (most recent call last):
File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/soundfile.py", line 267, in

_snd = _ffi.dlopen('sndfile')

File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/cffi/api.py", line 150, in dlopen

lib, function_cache = _make_ffi_library(self, name, flags)

File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/cffi/api.py", line 834, in _make_ffi_library

backendlib = _load_backend_lib(backend, libname, flags)

File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/cffi/api.py", line 829, in _load_backend_lib

raise OSError(msg)

OSError: ctypes.util.find_library() did not manage to locate a library called 'sndfile'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/Users/junyouchen/Downloads/pyvideotrans/sp.py", line 209, in

QTimer.singleShot(100, lambda: initialize_full_app(splash, app))

File "/Users/junyouchen/Downloads/pyvideotrans/sp.py", line 146, in initialize_full_app

from videotrans.mainwin.main_win import MainWindow

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/mainwin/main_win.py", line 7, in

from videotrans.util import tools

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/util/tools.py", line 4, in

from .help_misc import *

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/util/help_misc.py", line 16, in

from videotrans.recognition import RECOGN_NAME_LIST

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/recognition/__init__.py", line 7, in

from videotrans.recognition._base import BaseRecogn

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/recognition/_base.py", line 9, in

from videotrans.configure.base import BaseCon

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/configure/base.py", line 13, in

from videotrans.process.signelobj import GlobalProcessManager

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/process/__init__.py", line 2, in

from .tts_fun import qwen3tts_fun

File "/Users/junyouchen/Downloads/pyvideotrans/videotrans/process/tts_fun.py", line 9, in

import soundfile as sf

File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/soundfile.py", line 276, in

_snd = _ffi.dlopen(_os.path.join(

File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/cffi/api.py", line 150, in dlopen

lib, function_cache = _make_ffi_library(self, name, flags)

File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/cffi/api.py", line 834, in _make_ffi_library

backendlib = _load_backend_lib(backend, libname, flags)

File "/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/cffi/api.py", line 829, in _load_backend_lib

raise OSError(msg)

OSError: cannot load library '/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/_soundfile_data/libsndfile.dylib': dlopen(/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/_soundfile_data/libsndfile.dylib, 0x0002): tried: '/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/_soundfile_data/libsndfile.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/_soundfile_data/libsndfile.dylib' (no such file), '/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/_soundfile_data/libsndfile.dylib' (no such file). Additionally, ctypes.util.find_library() did not manage to locate a library called '/Users/junyouchen/Downloads/pyvideotrans/.venv/lib/python3.10/site-packages/_soundfile_data/libsndfile.dylib'

该错误始终是 libsndfile 动态库未找到。即使已执行 brew install libsndfile,Python 环境可能仍未正确链接。请按以下步骤完整修复:

  1. 确认已安装 libsndfile
    在终端运行:
    brew list libsndfile
    若未安装,执行 brew install libsndfile
  2. 找到动态库实际路径
    运行:
    brew --prefix libsndfile
    通常输出 /opt/homebrew/opt/libsndfile(Apple Silicon)或 /usr/local/opt/libsndfile(Intel)。
    确认该目录下的 lib/ 文件夹中存在 libsndfile.1.dylib 文件。
  3. 激活虚拟环境并强制重装 soundfile

    cd /Users/junyouchen/Downloads/pyvideotrans
    source .venv/bin/activate
    pip uninstall soundfile -y
    pip install --no-cache-dir soundfile
  4. 设置动态库路径(如仍需)
    将以下命令添加到 ~/.zshrc~/.bash_profile 末尾:

    export DYLD_LIBRARY_PATH="/opt/homebrew/opt/libsndfile/lib:$DYLD_LIBRARY_PATH"

    然后重新加载:source ~/.zshrc

  5. 重新运行软件
    uv run sp.py

如果仍报错,请提供终端中 ls /opt/homebrew/opt/libsndfile/lib/(或 /usr/local/opt/libsndfile/lib/)的输出来确认库文件位置。

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. Dondate: ko-fi.com/jianchang512

Related resource