Skip to content

Linux 源码部署

  1. Linux上建议使用 miniconda 来安装部署,能避免掉很多的环境问题。
  • 首先安装 miniconda,打开终端,执行命令wget https://repo.anaconda.com/miniconda/Miniconda3-py310_24.5.0-0-Linux-x86_64.sh
  • 等待下载完毕,继续执行 bash Miniconda3-py310_24.5.0-0-Linux-x86_64.sh
  • 接下来会显示一些协议或引导,需要输入 yes或按下 回车继续。
  • 等待提示完成后,建议加入全局环境,以便能够使用短命令conda,默认可能安装在/root/miniconda3下,假如是这个命令,请执行cp /root/miniconda3/bin/conda /usr/bin/conda,如果是其他位置,请自行替换
  • 关闭该终端窗口,重新打开,环境才会生效。
  1. 创建一个使用 python3.10 的虚拟环境,执行命令 conda create -n videotrans python=3.10,如果提示输入则输入yes然后回车。
  2. 激活该虚拟环境,执行命令 conda activate videotrans
  3. 创建一个空文件夹用于部署源码,假设已创建/data/pyvideo,进入该文件夹内,从github拉取源码,执行命令 git clone https://github.com/jianchang512/pyvideotrans .
  4. 安装依赖,执行命令pip install -r requirements.txt,等待提示完成
  5. 安装 ffmpeg,centos下执行yum install ffmpeg,ubuntu 下执行apt-get install ffmpeg
  6. 如果无报错,则执行 python sp.py打开软件,执行python api.py 运行api服务

安装中可能遇到的错误

  1. samplerate模块安装失败 有可能会遇到一个错误,错误中包括 samplerate 字样,这是一个pip模块,需要编译源码安装,在不同系统版本和环境下,极容易编译失败而出错,出错代码类似下方
-- Build files have been written to: /tmp/pip-install-0355nvxe/samplerate_f6c17d8f7ab94e0b9f8d7e16697c1ab3/build/temp.linux-x86_64-cpython-310/samplerate
  [ 14%] Building C object _deps/libsamplerate-build/src/CMakeFiles/samplerate.dir/samplerate.c.o
  [ 28%] Building C object _deps/libsamplerate-build/src/CMakeFiles/samplerate.dir/src_linear.c.o
  [ 42%] Building C object _deps/libsamplerate-build/src/CMakeFiles/samplerate.dir/src_sinc.c.o
  [ 57%] Building C object _deps/libsamplerate-build/src/CMakeFiles/samplerate.dir/src_zoh.c.o
  [ 71%] Linking C static library libsamplerate.a
  [ 71%] Built target samplerate
  [ 85%] Building CXX object CMakeFiles/python-samplerate.dir/src/samplerate.cpp.o
  c++: error: unrecognized command line option ‘-std=c++14’
  gmake[2]: *** [CMakeFiles/python-samplerate.dir/src/samplerate.cpp.o] Error 1
  gmake[1]: *** [CMakeFiles/python-samplerate.dir/all] Error 2
  gmake: *** [all] Error 2

错误也可能如下

centos7 ImportError: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /data2/conda/envs/pyvideo/lib/python3.10/site-packages/shiboken6/Shiboken.abi3.so)

这种情况说明c++/cmake版本太低,需要升级,接下来执行以下命令,如果是centos系列,分别执行

yum updateyum clean allyum remove devtoolset-8yum update libstdc++yum install devtoolset-8 devtoolset-9-libstdc++-devel scl-utils

执行完毕后,继续执行

export CFLAGS="-fPIC"export CXXFLAGS="-fPIC"

然后重新执行 pip install -r requirements.txt

  1. pip镜像源问题

如果pip安装时非常缓慢,可考虑切换到阿里云镜像源,加快安装速度,执行如下2条命令切换pip镜像到阿里镜像,再重新安装

```

pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
pip config set install.trusted-host mirrors.aliyun.com

```

阿里云镜像源可能缺少一些模块的版本,若是遇到该问题,想切换会官方默认源,执行 cd ~/.config/pip,打开 pip.conf文件,删掉里面内容,即可恢复官方源

  1. 使用CUDA加速,分别执行

    pip uninstall -y torch torchaudio

    pip install torch==2.2.0 torchaudio==2.2.0 --index-url https://download.pytorch.org/whl/cu118

    pip install nvidia-cublas-cu11 nvidia-cudnn-cu11