DebianでQSVで利用可能なライブラリをインストールする

QSVEncではオプションとして、ffmpeg、VapourSynth、Avxsynthを利用した機能があるので、必要であればこれらをインストールする。

ffmpegのビルド



apt-get可能なものはしてしまう。

sudo apt-get install libfontconfig libfontconfig-dev git yasm cmake



ビルドオプションの設定と、ライブラリのインストール場所にパスを通す。

export LD_LIBRARY_PATH="/usr/local/lib:${LD_LIBRARY_PATH}"



必要なものをダウンロードしておく。
ffmpeg
l-smash
lame
twolame
opus
libogg
libvorbis
soxr



一気に解凍しておく。

for f in *.tar.gz; do tar -zxvf ${f}; done
for f in *.tar.bz2; do tar -zxvf ${f}; done
for f in *.tar.xz; do tar -zxvf ${f}; done



l-smashをダウンロード後、インストール。

git clone https://github.com/l-smash/l-smash.git
cd l-smash
./configure --enable-shared
make -j8 && sudo make install
cd ..



lameをビルド、インストール。

cd lame*/
./configure --enable-shared
make -j8 && sudo make install
cd ..



twolameをビルド、インストール。

cd twolame*/
./configure --enable-shared
make -j8 && sudo make install
cd ..



opusをビルド、インストール。

cd opus*/
./configure --enable-shared --enable-float-approx --disable-doc --disable-extra-programs
make -j8 && sudo make install
cd ..



liboggをビルド、インストール。

cd libogg*/
./configure --enable-shared
make -j8 && sudo make install
cd ..



libvorbisをビルド、インストール。

cd libvorbis*/
./configure --enable-shared
make -j8 && sudo make install
cd ..



soxrをビルド、インストール。

cd soxr*/
cmake -D BUILD_SHARED_LIBS:BOOL=ON ..
make -j8 && sudo make install
cd ..




ffmpegをビルド、インストール。

cd ffmpeg
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./configure \
--cpu=x86_64 \
--enable-shared \
--enable-gpl \
--disable-doc \
--disable-avdevice \
--disable-devices \
--disable-postproc \
--enable-avresample \
--disable-network \
--enable-fontconfig \
--enable-libfreetype \
--enable-libmp3lame \
--enable-libopus \
--enable-libtwolame \
--enable-libvorbis \
--enable-pic \
--disable-amd3dnow \
--disable-amd3dnowext \
--disable-xop \
--disable-fma4 \
--extra-cflags="-I/usr/local/include" \
--extra-ldflags="-L/usr/local/lib"
make -j8 && sudo make install
cd ..




VapourSynthのビルド



次に、VapourSynthをインストールする。

apt-getのbuild-essentialsでpython3系は入っている。あとはpipと、cythonをインストールする。

sudo apt-get install python3-pip
sudo pip3 install cython



さらに必要になるlibass、autoconf、automake等もインストールしておく。

sudo yum install libass5 libass-dev autoconf automake



VapourSynth R28をビルドする。

tar xvf vapoursynth-R28.tar.gz
cd vapoursynth*/
./autogen.sh
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./configure --disable-ocr
make -j8 && sudo make install



VapourSynthの動作確認を行う。

PYTHONPATH=/usr/local/lib/python3/site-packages vspipe --version


エラーが出ずにバージョンが表示されればOK。


ついでに、 vslsmashsourceをビルドする。

git clone https://github.com/VFR-maniac/L-SMASH-Works.git
cd L-SMASH-Works/VapourSynth
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./configure
make -j8 && sudo make install
cd ../..




Avxsynthのビルド



Avxsynthをインストールすると、avs読み込みが可能となる。



git clone https://github.com/avxsynth/avxsynth.git
#必要なものをインストール
sudo apt-get install libcairo2-dev libpango1.0-dev libjpeg-dev libffms2-dev liblog4cpp5 liblog4cpp5-dev
autoreconf -i
./configure



現在のAvxsynthは、このままだとビルドに失敗するという問題がある。

コンパイルエラーとなるのは定義されていないものを使用しているため。


下記、2つのファイルについて、それぞれ以下の変更により回避できる。
plugins/avxffms2/src/avsutils.h
plugins/avxffms2/src/videoutils.h


修正1
#include <libavcodec/avcodec.h>
となっていることろを
#include <libavutil/pixfmt.h>
#include <libavutil/pixdesc.h>
#include <libavcodec/avcodec.h>
に変更。


修正2
下記を追記。

#define PixelFormat AVPixelFormat

#define PIX_FMT_NONE AV_PIX_FMT_NONE
#define PIX_FMT_YUV420P AV_PIX_FMT_YUV420P
#define PIX_FMT_YUYV422 AV_PIX_FMT_YUYV422
#define PIX_FMT_RGB24 AV_PIX_FMT_RGB24
#define PIX_FMT_BGR24 AV_PIX_FMT_BGR24
#define PIX_FMT_YUV422P AV_PIX_FMT_YUV422P
#define PIX_FMT_YUV444P AV_PIX_FMT_YUV444P
#define PIX_FMT_YUV410P AV_PIX_FMT_YUV410P
#define PIX_FMT_YUV411P AV_PIX_FMT_YUV411P
#define PIX_FMT_GRAY8 AV_PIX_FMT_GRAY8
#define PIX_FMT_MONOWHITE AV_PIX_FMT_MONOWHITE
#define PIX_FMT_PAL8 AV_PIX_FMT_PAL8
#define PIX_FMT_YUVJ420P AV_PIX_FMT_YUVJ420P
#define PIX_FMT_YUVJ422P AV_PIX_FMT_YUVJ422P
#define PIX_FMT_YUVJ444P AV_PIX_FMT_YUVJ444P
#define PIX_FMT_XVMC_MPEG2_MC AV_PIX_FMT_XVMC_MPEG2_MC
#define PIX_FMT_XVMC_MPEG2_IDCT AV_PIX_FMT_XVMC_MPEG2_IDCT
#define PIX_FMT_UYVY422 AV_PIX_FMT_UYVY422
#define PIX_FMT_UYYVYY411 AV_PIX_FMT_UYYVYY411
#define PIX_FMT_BGR8 AV_PIX_FMT_BGR8
#define PIX_FMT_BGR4 AV_PIX_FMT_BGR4
#define PIX_FMT_BGR4_BYTE_BYTEONE AV_PIX_FMT_BGR4_BYTE
#define PIX_FMT_RGB8 AV_PIX_FMT_RGB8
#define PIX_FMT_RGB4 AV_PIX_FMT_RGB4
#define PIX_FMT_RGB4_BYTEAV_PIX_FMT_RGB4_BYTE
#define PIX_FMT_NV12 AV_PIX_FMT_NV12
#define PIX_FMT_NV21 AV_PIX_FMT_NV21

#define PIX_FMT_Y400A AV_PIX_FMT_Y400A
#define PIX_FMT_GBR24P AV_PIX_FMT_GBR24P

#define PIX_FMT_NE(be, le) AV_PIX_FMT_NE(be, le)

#define PIX_FMT_RGB32 AV_PIX_FMT_RGB32
#define PIX_FMT_RGB32_1 AV_PIX_FMT_RGB32_1
#define PIX_FMT_BGR32 AV_PIX_FMT_BGR32
#define PIX_FMT_BGR32_1 AV_PIX_FMT_BGR32_1
#define PIX_FMT_0RGB32 AV_PIX_FMT_0RGB32
#define PIX_FMT_0BGR32 AV_PIX_FMT_0BGR32

#define PIX_FMT_GRAY16 AV_PIX_FMT_GRAY16
#define PIX_FMT_RGB48 AV_PIX_FMT_RGB48
#define PIX_FMT_RGB565 AV_PIX_FMT_RGB565
#define PIX_FMT_RGB555 AV_PIX_FMT_RGB555
#define PIX_FMT_RGB444 AV_PIX_FMT_RGB444
#define PIX_FMT_BGR48 AV_PIX_FMT_BGR48
#define PIX_FMT_BGR565 AV_PIX_FMT_BGR565
#define PIX_FMT_BGR555 AV_PIX_FMT_BGR555
#define PIX_FMT_BGR444 AV_PIX_FMT_BGR444

#define PIX_FMT_YUV420P9 AV_PIX_FMT_YUV420P9
#define PIX_FMT_YUV422P9 AV_PIX_FMT_YUV422P9
#define PIX_FMT_YUV444P9 AV_PIX_FMT_YUV444P9
#define PIX_FMT_YUV420P10 AV_PIX_FMT_YUV420P10
#define PIX_FMT_YUV422P10 AV_PIX_FMT_YUV422P10
#define PIX_FMT_YUV444P10 AV_PIX_FMT_YUV444P10
#define PIX_FMT_YUV420P12 AV_PIX_FMT_YUV420P12
#define PIX_FMT_YUV422P12 AV_PIX_FMT_YUV422P12
#define PIX_FMT_YUV444P12 AV_PIX_FMT_YUV444P12
#define PIX_FMT_YUV420P14 AV_PIX_FMT_YUV420P14
#define PIX_FMT_YUV422P14 AV_PIX_FMT_YUV422P14
#define PIX_FMT_YUV444P14 AV_PIX_FMT_YUV444P14
#define PIX_FMT_YUV420P16 AV_PIX_FMT_YUV420P16
#define PIX_FMT_YUV422P16 AV_PIX_FMT_YUV422P16
#define PIX_FMT_YUV444P16 AV_PIX_FMT_YUV444P16
#define PIX_FMT_RGBA64 AV_PIX_FMT_RGBA64
#define PIX_FMT_BGRA64 AV_PIX_FMT_BGRA64
#define PIX_FMT_GBRP9 AV_PIX_FMT_GBRP9videoutils
#define PIX_FMT_GBRP10 AV_PIX_FMT_GBRP10
#define PIX_FMT_GBRP12 AV_PIX_FMT_GBRP12
#define PIX_FMT_GBRP14 AV_PIX_FMT_GBRP14
#define PIX_FMT_GBRP16 AV_PIX_FMT_GBRP16

#define PIX_FMT_BE AV_PIX_FMT_FLAG_BE
#define PIX_FMT_PAL AV_PIX_FMT_FLAG_PAL
#define PIX_FMT_BITSTREAM AV_PIX_FMT_FLAG_BITSTREAM
#define PIX_FMT_HWACCEL AV_PIX_FMT_FLAG_HWACCEL
#define PIX_FMT_PLANAR AV_PIX_FMT_FLAG_PLANAR
#define PIX_FMT_RGB AV_PIX_FMT_FLAG_RGB
#define PIX_FMT_PSEUDOPAL AV_PIX_FMT_FLAG_PSEUDOPAL
#define PIX_FMT_ALPHA AV_PIX_FMT_FLAG_ALPHA



これでコンパイルを通すことができる。

make -j8 && sudo make install


スポンサーサイト

コメントの投稿

非公開コメント

管理人のみ閲覧できます

このコメントは管理人のみ閲覧できます

Re: No title

xvfだけでよいようですね。
プロフィール

Author:rigaya
アニメとか見たり、エンコードしたり。
連絡先(@を半角にしてください!)
rigaya34589@live.jp
github

最新記事
最新コメント
カテゴリ
月別アーカイブ
カウンター
検索フォーム
いろいろ
公開中のAviutlプラグインとかのダウンロード

○Aviutlプラグイン
x264guiEx 2.xx (ミラー)
- x264を使用したH264出力
- x264guiExの導入>
- x264.exeはこちら>

x265guiEx (ミラー)
- x265を使用したH.265/HEVC出力
- x265.exeはこちら>

QSVEnc + QSVEncC (ミラー)
- QuickSyncVideoによるH264出力
- QSVEncCはコマンドライン版
- QSVEncC 導入/使用方法>
- QSVEncCオプション一覧>

NVEnc + NVEncC (ミラー)
- NVIDIAのNVEncによるH264出力
- NVEncCオプション一覧>

VCEEnc + VCEEncC (ミラー)
- AMDのVCEによるH.264出力

ffmpegOut (ミラー)
- ffmpeg/avconvを使用した出力

自動フィールドシフト (ミラー)
- SSE2~AVX2による高速化版
- オリジナル: aji様

エッジレベル調整MT (ミラー)
- エッジレベル調整の並列化/高速化
- SSE2~AVX対応
- オリジナル: まじぽか太郎様

バンディング低減MT (ミラー)
- SSE2~AVX2による高速化版
- オリジナル: まじぽか太郎様

PMD_MT (ミラー)
- SSE2~FMA3による高速化版
- オリジナル: スレ48≫989氏

透過性ロゴ (ミラー)
- SSE2~FMA3によるSIMD版
- オリジナル: MakKi氏

AviutlColor (ミラー)
- BT.2020nc向け色変換プラグイン
- BT.709/BT.601向けも同梱

○その他
x264afs (ミラー)
- x264のafs対応版

aui_indexer (ミラー使い方>)
- lsmashinput.aui/m2v.auiの
 インデックス事前・一括生成

auc_export (ミラー使い方>)
- Aviutl Controlの
 エクスポートプラグイン版
 エクスポートをコマンドから

aup_reseter (ミラー)
- aupプロジェクトファイルの
 終了フラグを一括リセット

CheckBitrate (ミラー, 使い方, ソース)
- ビットレート分布の分析(HEVC対応)

チャプター変換 (ミラー使い方>)
- nero/appleチャプター形式変換

エッジレベル調整 (avisynth)
- Avisynth用エッジレベル調整

メモリ・キャッシュ速度測定
- スレッド数を変えて測定

○ビルドしたものとか
L-SMASH (ミラー)
x264 (ミラー)
x265 (ミラー)

○その他
サンプル動画
その他

○読みもの (ミラー)
Aviutl/x264guiExの色変換
動画関連ダウンロードリンク集
簡易インストーラの概要

○更新停止・公開終了
改造版x264gui
x264guiEx 0.xx
RSSリンクの表示
リンク
QRコード
QR