動作環境
モノ | バージョン |
---|---|
マシン | x86_64 |
Ubuntu | 24.04 |
meson | 1.3.2 |
ninja | 1.11.1 |
ホストマシンGStreamer | 1.24.2 |
インストールGStreamer | 1.22.5 |
はじめに
アプリのリソース使用率などを調査する中、GStreamerのバージョンで差分ある説が浮上。切り替えたい。でもホストマシンに元来入っているGStreamerは壊したくないし、Dockerとアプリの相性もわるそう。
問題
ググるも、ホストマシンにGStreamerのバージョン共存させる記事は中々見つからず。仕方ないのでChatGPTくんの力も借りつつ、よしなに調整したら解決したっぽいので共有する。
解決方法
コマンド
# 各種ダウンロード
wget https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-1.22.5.tar.xz
wget https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-1.22.5.tar.xz
wget https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.22.5.tar.xz
wget https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-1.22.5.tar.xz
wget https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-1.22.5.tar.xz
#解凍
tar xf gstreamer-1.22.5.tar.xz
tar xf gst-plugins-base-1.22.5.tar.xz
tar xf gst-plugins-bad-1.22.5.tar.xz
tar xf gst-plugins-good-1.22.5.tar.xz
tar xf gst-plugins-ugly-1.22.5.tar.xz
#各種ビルドおよびインストール
cd gstreamer-1.22.5
meson build/
ninja -C build/
cd build
ninja install
cd gst-plugins-base-1.22.5
meson build/
ninja -C build/
cd build
ninja install
cd gst-plugins-bad-1.22.5
meson build/
ninja -C build/
cd build
ninja install
cd gst-plugins-good-1.22.5
meson build/
ninja -C build/
cd build
ninja install
cd gst-plugins-ugly-1.22.5
meson build/
ninja -C build/
cd build
ninja install
#各種設定の反映。これ実行時点で、GStreamer Core Library version 1.22.5になる
sudo ldconfig
#~/gst-plugins-ugly-1.22.5/build$ gst-launch-1.0 --gst-version
#GStreamer Core Library version 1.22.5
#パス設定
nano ~/.bashrc
#別画面。末尾に以下を追加
#ホストマシンのバージョン使用時は下3行、インストールのバージョン使用時は上3桁をコメントアウト
# host GSt ver
export PATH=/usr/bin:$PATH
export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
export PKG_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/pkgconfig:$PKG_LIBRARY_PATH
# installed GSt ver
export PATH=/usr/local/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
export PKG_LIBRARY_PATH=/usr/local/lib/x86_64-linux-gnu/pkgconfig:$PKG_LIBRARY_PATH
#パス設定の反映
source ~/.bashrc
終わりに
パス設定でバージョン切り替えられたら成功です。時間のロスが少しでも減ればと思います
参考