「インストール - GStreamer」の版間の差分

提供:MochiuWiki - SUSE, Electronic Circuit, PCB
ナビゲーションに移動 検索に移動
(ページの作成:「== 概要 == <br><br> == 依存関係のライブラリのインストール == GStreamerをビルドおよびインストールするため、以下の依存関係の…」)
 
 
(同じ利用者による、間の19版が非表示)
6行目: 6行目:
GStreamerをビルドおよびインストールするため、以下の依存関係のライブラリをインストールする。<br>
GStreamerをビルドおよびインストールするため、以下の依存関係のライブラリをインストールする。<br>
MesonとNinjaのインストールは、[[インストール - Meson & Ninja|インストール - Meson]]を参照すること。<br>
MesonとNinjaのインストールは、[[インストール - Meson & Ninja|インストール - Meson]]を参照すること。<br>
  sudo zypper install openh264 openexr libopenaptx openal libonnxruntime libofa neon mjpegtools libmodplug nettle \
<br>
                     storage_client fluidsynth fdk-aac libdca libcurl lcms2 libchromaprint libbs2b cmocka avtp \
* GStreamer Plugins Good
                     aom libass tinyalsa libmfx bluez ltc libva-drm opencv opencv4 gnutls twolame vpx taglib \
*: 公式が利用を推奨するプラグイン(LGPL)である。
                     xkbcommon-x11 glslc vulkan gupnp-igd-1.0 valgrind wavpack speex ntlm_auth krb5-config libunwind-generic \
* GStreamer Plugins Ugly
                     sysprof-capture-4 libidn icu-uc libidn2 libpsl libbrotlidec liblzma history readline iconv libxml-2.0 \
*: ライセンスで縛られており、完全なオープンソースではないので、利用する際は注意が必要となる。
                     sqlite3 libsoup-2.4 shout libpulse libmpg123 libraw1394 libavc1394 libiec61883 libdv popt caca \
* GStreamer Plugins Bad
                     mp3lame jack xdamage xfixes libv4l2 gudev-1.0 nasm sdl2-config sdl2 vorbis vorbisenc vorbisidec \
*: 無保証のプラグインである。
                     theoradec theoraenc gi-docgen xft gtkdoc-scan ragel chafa pixman-1 librsvg-2.0 poppler-glib libspectre \
*: 品質、テスト、レビュー、ドキュメント等が欠けており、まだGoodプラグインになれないライブラリのこと。
                     xext docbook2txt docbook2html docbook2pdf docbook2man expat fontconfig lzo2 cairo libpng bz2 freetype2 \
*: これら全てが解決された段階で、GoodまたはUglyに昇格する。
                     harfbuzz libthai fribidi pangocairo opus ogg libvisual-0.4 libjpeg graphene-gobject-1.0 cdparanoia-3 \
<br>
                     alsa iso-codes libpcre gtk+-3.0 gtk+-x11-3.0 gdk-pixbuf-2.0 dbus-1 g-ir-scanner libcap libffi \
# GStreamer
                     wayland-client wayland-protocols wayland-cursor wayland-egl mount libselinux
  sudo zypper install cmake git autoconf glib2-devel libcap-devel libcapstone-devel gobject-introspection-devel gtk3-devel gtk-doc \
                    libunwind-devel libdw-devel gsl-devel libgslcblas0  bash-completion-devel openh264-devel \
                    xorg-x11-devel libX11-devel libGLU1 glu-devel freeglut-devel glew glew-devel Mesa-libGL-devel
# GStreamer Plugins Base
sudo zypper install libtheora-devel libvorbis-devel cdparanoia-devel alsa-devel libopus-devel libvisual-devel pango-devel
# GStreamer Plugins Good
sudo zypper install wavpack-devel speex-devel libjack-devel libjpeg62-devel openjpeg-devel  openjpeg2-devel libmjpegutils-devel \
                    libdv-devel libsoup-devel libunistring-devel cairo-devel \
                    libqt5-qtbase-common-devel libqt5-qtbase-devel libqt5-qtdeclarative-devel libqt5-qttools-devel \
                    libQt53DQuick-devel libqt5-qtx11extras-devel
# GStreamer Plugins Ugly
sudo zypper install libx264-devel
# GStreamer Plugins Bad
sudo zypper install libx264-devel libx265-devel libnice-devel libvo-aacenc-devel libvo-amrwbenc-devel
# GStreamer libAV
sudo zypper install yasm-devel nasm libbz2-devel xz-devel
# GStreamer Python
sudo zypper install python3-devel python3-gobject-devel python3-gobject2-devel python3-google-cloud-storage
# その他
sudo zypper install \
                    openh264-devel openexr-devel libopenaptx-devel openal-soft-devel openal-soft-devel-32bit libofa-devel libneon-devel \
                    libmodplug-devel libnettle-devel libnettle-devel-32bit libstorage-ng-devel libstoragemgmt-devel \
                     fluidsynth-devel fdk-aac-devel libdca-devel libcurl-devel liblcms2-devel libchromaprint-devel libbs2b-devel libcmocka-devel \
                     libavtp-devel libaom-devel libass-devel libmfx-devel bluez-devel libltc-devel libva-devel libva-gl-devel \
                    opencv-devel libgnutls-devel libgnutlsxx-devel libtwolame-devel libvpx-devel libtag-devel taglib-extras-devel \
                     glslang-devel vulkan-devel Mesa-libVulkan-devel libgupnp-igd-devel valgrind-devel \
                     libntlm-devel krb5-devel sysprof-devel libidn-devel libidn2-devel libicu-devel libpsl-devel \
                    libbrotli-devel xz-devel readline-devel libiconv_hook-devel libxml2-devel popt-devel libcaca-devel libselinux-devel \
                     sqlite3-devel libshout-devel libpulse-devel mpg123-devel libraw1394-devel libavc1394-devel libiec61883-devel \
                     libmp3lame-devel libXdamage-devel libXfixes-devel libv4l-devel v4l-utils-devel-tools libgudev-1_0-devel nasm \
                     libSDL2-devel libXft-devel ragel-devel chafa-devel libpixman-1-0-devel librsvg-devel \
                     libpoppler-glib-devel libspectre-devel libXext-devel docbook2x libexpat-devel fontconfig-devel lzo-devel \
                     libpng12-devel libpng16-devel freetype2-devel harfbuzz-devel libthai-devel fribidi-devel \
                    libogg-devel libgraphene-devel iso-codes-devel \
                     pcre-devel pcre2-devel gtkglext-devel gdk-pixbuf-devel dbus-1-devel libcap-devel libffi-devel libmount-devel \
                    libcelt-devel libgme-devel libgcrypt-devel codec2-devel libgsm-devel ilbc-devel snappy-devel soxr-devel \
                     libwebp-devel zimg-devel libzmq5 zvbi-devel pocketsphinx-devel libcamera-devel \
                    librabbitmq-devel librtmp-devel libshine-devel libssh-devel libssh2-devel srt-devel tesseract-ocr-devel \
                    ffnvcodec-devel liblilv-0-devel libbluray-devel libdc1394-devel libdrm-devel libkvazaar-devel dav1d-devel ffmpeg-4-libavfilter-devel \
                    libwebrtc_audio_processing-devel zxing-cpp-devel libzbar-devel libexif-devel liba52-devel libopencore-amr-devel libcgroup-devel \
                    libfaac-devel qrencode-devel sbc-devel soundtouch-devel libsrtp-devel libsrtp2-devel flac-devel \
                    libmpcdec-devel liblrdf-devel ldacBT-devel libde265-devel \
                    wxWidgets-3_2-devel wpebackend-fdo-devel ffhevc kvazaar spandsp-devel \
                    libcdio-devel libmpeg2-devel libdvdnav-devel libdvdread-devel libwebrtc_audio_processing-devel dssim \
                    gsl-devel
<br>
オープンソースまたはプロプライエタリのGPUのドライバをインストールしている場合は、以下の依存関係のライブラリをインストールする。<br>
# オープンソースのAMD GPUドライバをインストールしている場合
sudo zypper install wayland-devel wayland-protocols-devel libwayland-egl-devel
# プロプライエタリのAMD GPUドライバをインストールしている場合
sudo zypper install wayland-amdgpu-devel wayland-protocols-amdgpu-devel wayland-devel wayland-protocols-devel \
                    mesa-amdgpu-libEGL-devel libwayland-amdgpu-cursor
<br>
以下の依存関係のライブラリは不要の可能性がある。<br>
sudo zypper install libjpeg8-devel
<br><br>
<br><br>


== GStreamerのインストール ==
== GStreamerのインストール ==
[https://gitlab.freedesktop.org/gstreamer?page=1 GStreamerのGitLab]から、各プラグインのソースコードをダウンロードする。<br>
[https://gstreamer.freedesktop.org GStreamerの公式Webサイト]または[https://gitlab.freedesktop.org/gstreamer?page=1 GStreamerのGitLab]から、GStreamerのソースコードをダウンロードする。<br>
または、 <code>git clone</code>コマンドを使用して、ソースコードをダウンロードする。<br>
<br>
GStreamer本体のソースコードをダウンロードする。<br>
git clone --depth 1 https://gitlab.freedesktop.org/gstreamer/gstreamer.git
または
git clone --depth 1 https://gitlab.freedesktop.org/gstreamer/gstreamer.git -b <ブランチ名>
または
git://anongit.freedesktop.org/git/gstreamer/gstreamer
cd gstreamer
<br>
<br>
GStreamerをビルドする。<br>
GStreamerをビルドおよびインストールする。<br>
  meson --prefix=$HOME/InstallSoftware/GStreamer build
  meson --prefix=<GStreamerのインストールディレクトリ> -Dgpl=enabled -Dgood=enabled -Dgst-plugins-good:qt5=enabled build
  ninja -C build
  ninja -C build
  meson install -C build
  ninja -C build install
<br><br>
<br><br>


__FORCETOC__
__FORCETOC__
[[カテゴリ:CentOS]][[カテゴリ:SUSE]]
[[カテゴリ:RHEL]][[カテゴリ:SUSE]]

2023年4月13日 (木) 20:53時点における最新版

概要



依存関係のライブラリのインストール

GStreamerをビルドおよびインストールするため、以下の依存関係のライブラリをインストールする。
MesonとNinjaのインストールは、インストール - Mesonを参照すること。

  • GStreamer Plugins Good
    公式が利用を推奨するプラグイン(LGPL)である。
  • GStreamer Plugins Ugly
    ライセンスで縛られており、完全なオープンソースではないので、利用する際は注意が必要となる。
  • GStreamer Plugins Bad
    無保証のプラグインである。
    品質、テスト、レビュー、ドキュメント等が欠けており、まだGoodプラグインになれないライブラリのこと。
    これら全てが解決された段階で、GoodまたはUglyに昇格する。


# GStreamer
sudo zypper install cmake git autoconf glib2-devel libcap-devel libcapstone-devel gobject-introspection-devel gtk3-devel gtk-doc \
                    libunwind-devel libdw-devel gsl-devel libgslcblas0  bash-completion-devel openh264-devel \
                    xorg-x11-devel libX11-devel libGLU1 glu-devel freeglut-devel glew glew-devel Mesa-libGL-devel

# GStreamer Plugins Base
sudo zypper install libtheora-devel libvorbis-devel cdparanoia-devel alsa-devel libopus-devel libvisual-devel pango-devel

# GStreamer Plugins Good
sudo zypper install wavpack-devel speex-devel libjack-devel libjpeg62-devel openjpeg-devel  openjpeg2-devel libmjpegutils-devel \
                    libdv-devel libsoup-devel libunistring-devel cairo-devel \
                    libqt5-qtbase-common-devel libqt5-qtbase-devel libqt5-qtdeclarative-devel libqt5-qttools-devel \
                    libQt53DQuick-devel libqt5-qtx11extras-devel

# GStreamer Plugins Ugly
sudo zypper install libx264-devel

# GStreamer Plugins Bad
sudo zypper install libx264-devel libx265-devel libnice-devel libvo-aacenc-devel libvo-amrwbenc-devel

# GStreamer libAV
sudo zypper install yasm-devel nasm libbz2-devel xz-devel

# GStreamer Python
sudo zypper install python3-devel python3-gobject-devel python3-gobject2-devel python3-google-cloud-storage 

# その他
sudo zypper install \
                    openh264-devel openexr-devel libopenaptx-devel openal-soft-devel openal-soft-devel-32bit libofa-devel libneon-devel \
                    libmodplug-devel libnettle-devel libnettle-devel-32bit libstorage-ng-devel libstoragemgmt-devel \
                    fluidsynth-devel fdk-aac-devel libdca-devel libcurl-devel liblcms2-devel libchromaprint-devel libbs2b-devel libcmocka-devel \
                    libavtp-devel libaom-devel libass-devel libmfx-devel bluez-devel libltc-devel libva-devel libva-gl-devel \
                    opencv-devel libgnutls-devel libgnutlsxx-devel libtwolame-devel libvpx-devel libtag-devel taglib-extras-devel \
                    glslang-devel vulkan-devel Mesa-libVulkan-devel libgupnp-igd-devel valgrind-devel \
                    libntlm-devel krb5-devel sysprof-devel libidn-devel libidn2-devel libicu-devel libpsl-devel \
                    libbrotli-devel xz-devel readline-devel libiconv_hook-devel libxml2-devel popt-devel libcaca-devel libselinux-devel \
                    sqlite3-devel libshout-devel libpulse-devel mpg123-devel libraw1394-devel libavc1394-devel libiec61883-devel \
                    libmp3lame-devel libXdamage-devel libXfixes-devel libv4l-devel v4l-utils-devel-tools libgudev-1_0-devel nasm \
                    libSDL2-devel libXft-devel ragel-devel chafa-devel libpixman-1-0-devel librsvg-devel \
                    libpoppler-glib-devel libspectre-devel libXext-devel docbook2x libexpat-devel fontconfig-devel lzo-devel \
                    libpng12-devel libpng16-devel freetype2-devel harfbuzz-devel libthai-devel fribidi-devel \
                    libogg-devel libgraphene-devel iso-codes-devel \
                    pcre-devel pcre2-devel gtkglext-devel gdk-pixbuf-devel dbus-1-devel libcap-devel libffi-devel libmount-devel \
                    libcelt-devel libgme-devel libgcrypt-devel codec2-devel libgsm-devel ilbc-devel snappy-devel soxr-devel \
                    libwebp-devel zimg-devel libzmq5 zvbi-devel pocketsphinx-devel libcamera-devel \
                    librabbitmq-devel librtmp-devel libshine-devel libssh-devel libssh2-devel srt-devel tesseract-ocr-devel \
                    ffnvcodec-devel liblilv-0-devel libbluray-devel libdc1394-devel libdrm-devel libkvazaar-devel dav1d-devel ffmpeg-4-libavfilter-devel \
                    libwebrtc_audio_processing-devel zxing-cpp-devel libzbar-devel libexif-devel liba52-devel libopencore-amr-devel libcgroup-devel \
                    libfaac-devel qrencode-devel sbc-devel soundtouch-devel libsrtp-devel libsrtp2-devel flac-devel \
                    libmpcdec-devel liblrdf-devel ldacBT-devel libde265-devel \
                    wxWidgets-3_2-devel wpebackend-fdo-devel ffhevc kvazaar spandsp-devel \
                    libcdio-devel libmpeg2-devel libdvdnav-devel libdvdread-devel libwebrtc_audio_processing-devel dssim \
                    gsl-devel 


オープンソースまたはプロプライエタリのGPUのドライバをインストールしている場合は、以下の依存関係のライブラリをインストールする。

# オープンソースのAMD GPUドライバをインストールしている場合
sudo zypper install wayland-devel wayland-protocols-devel libwayland-egl-devel 

# プロプライエタリのAMD GPUドライバをインストールしている場合
sudo zypper install wayland-amdgpu-devel wayland-protocols-amdgpu-devel wayland-devel wayland-protocols-devel \
                    mesa-amdgpu-libEGL-devel libwayland-amdgpu-cursor


以下の依存関係のライブラリは不要の可能性がある。

sudo zypper install libjpeg8-devel



GStreamerのインストール

GStreamerの公式WebサイトまたはGStreamerのGitLabから、GStreamerのソースコードをダウンロードする。
または、 git cloneコマンドを使用して、ソースコードをダウンロードする。

GStreamer本体のソースコードをダウンロードする。

git clone --depth 1 https://gitlab.freedesktop.org/gstreamer/gstreamer.git
または
git clone --depth 1 https://gitlab.freedesktop.org/gstreamer/gstreamer.git -b <ブランチ名>
または
git://anongit.freedesktop.org/git/gstreamer/gstreamer

cd gstreamer


GStreamerをビルドおよびインストールする。

meson --prefix=<GStreamerのインストールディレクトリ> -Dgpl=enabled -Dgood=enabled -Dgst-plugins-good:qt5=enabled build
ninja -C build
ninja -C build install