共有タイプのレンタルサーバ CPIの共有サーバ SV-Basicでどうしてもffmpegを使用したく、案の定標準では利用できないのですが、対応した際のメモとなります。
CPサーバ上では、ソースからビルドが出来ないため別途、同じFreeBSD環境を構築してビルドし、CPIサーバ上に配置します。
Contents
ビルド用のFreeBSDのインストール
↓このあたりをみてVirtualBoxなどで環境を構築。
www.freebsd.org/doc/ja_JP.eucJP/books/handbook/bsdinstall.html
後で、ディレクトリの違いによる調整などが発生すると面倒なのでユーザやホームディレクトリは本番のCPIと同じになるように設定しています。
インストール環境
OS:FreeBSD-12.0-RELEASE-amd64
ホームディレクトリ:/usr/home/【CPIのユーザのホームディレクトリ】
環境変数をセット
OSが起動したらログインして設定をしていきます。
設置するユーザのホームディレクトリに移動
# cd /usr/home/【CPIのユーザのホームディレクトリ】 # vi ~/.cshrc
以下を記載。
setenv TZ JST-09 setenv LANG ja_JP.UTF-8 set path = (/sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin $HOME/bin $HOME/gmp-6.2.0 $HOME/ffmpeg-4.2.2) set dspmbyte utf8 setenv TMPDIR ~/tmp setenv LIBRARY_PATH ~/lib setenv LD_LIBRARY_PATH ~/lib setenv C_INCLUDE_PATH ~/include setenv PKG_CONFIG_PATH /usr/local/libdata/pkgconfig/:~/libdata/pkgconfig
gmpライブラリのインストール
gmpライブラリをダウンロードします。
# wget --no-check-certificate https://gmplib.org/download/gmp/gmp-6.2.0.tar.gz
ファイルを解凍してgmpディレクトリに移動
# tar zxvf gmp-6.2.0.tar.gz # cd gmp-6.2.0
コンフィグレーションしてmake
# ./configure M4=m4 --prefix=${HOME} CC=clang # gmake -j16 install
ffmpegのインストール
設置するユーザホームディレクトリに移動
# cd /usr/home/【CPIのユーザのホームディレクトリ】
ffmpegのダウンロード
# wget --no-check-certificate https://ffmpeg.org/releases/ffmpeg-4.2.2.tar.gz
ファイルを解凍してffmpegディレクトリに移動
# tar zxvf ffmpeg-4.2.2.tar.gz # cd ffmpeg-4.2.2
コンフィグレーションしてmakeしてインストール
# ./configure --disable-x86asm --enable-version3 --cc=clang --prefix=${HOME} --disable-ffplay --disable-doc --disable-htmlpages --disable-podpages --disable-txtpages --enable-manpages --enable-small --enable-static # gmake -j16 all # gmake install ffmpeg ~/bin/ # gmake install ffprobe ~/bin/
動作確認
設置するユーザでログインしてffmpegが動くか確認します。
ffmpeg -versionを実行してバージョンが表示されればOKです。
% ffmpeg -version ffmpeg version 4.2.2 Copyright (c) 2000-2019 the FFmpeg developers built with FreeBSD clang version 6.0.1 (tags/RELEASE_601/final 335540) (based on LLVM 6.0.1) configuration: --disable-x86asm --enable-version3 --cc=clang --prefix=/home/【CPIのユーザのホームディレクトリ】 --disable-ffplay --disable-doc --disable-htmlpages --disable-podpages --disable-txtpages --enable-manpages --enable-small --enable-static libavutil 56. 31.100 / 56. 31.100 libavcodec 58. 54.100 / 58. 54.100 libavformat 58. 29.100 / 58. 29.100 libavdevice 58. 8.100 / 58. 8.100 libavfilter 7. 57.100 / 7. 57.100 libswscale 5. 5.100 / 5. 5.100 libswresample 3. 5.100 / 3. 5.100
必要ファイルをCPI上に設置
設置するユーザホームディレクトリに移動
# cd /usr/home/【CPIのユーザのホームディレクトリ】 # tar cvf ffmpeg.tar bin lib
ffmpeg.tarをCPIの設置するユーザホームディレクトリに置いて解凍します。
ffmpeg -versionを実行してバージョンが表示されればOKです。
パスが通っていないので、フルパスで指定します。
% /usr/home/【CPIのユーザのホームディレクトリ】/ffmpeg -version ffmpeg version 4.2.2 Copyright (c) 2000-2019 the FFmpeg developers built with FreeBSD clang version 6.0.1 (tags/RELEASE_601/final 335540) (based on LLVM 6.0.1) configuration: --disable-x86asm --enable-version3 --cc=clang --prefix=/home/【CPIのユーザのホームディレクトリ】 --disable-ffplay --disable-doc --disable-htmlpages --disable-podpages --disable-txtpages --enable-manpages --enable-small --enable-static libavutil 56. 31.100 / 56. 31.100 libavcodec 58. 54.100 / 58. 54.100 libavformat 58. 29.100 / 58. 29.100 libavdevice 58. 8.100 / 58. 8.100 libavfilter 7. 57.100 / 7. 57.100 libswscale 5. 5.100 / 5. 5.100 libswresample 3. 5.100 / 3. 5.100
以上で設置完了となります。
ビルド済ffmpegのダウンロード
ビルドするFreeBSD環境を構築できない場合は、下記からビルド済みffmpegをダウンロードいただければ利用できると思います。