Created
July 19, 2023 11:38
-
-
Save robcowie/b0363421b288faad14dcbba0217cc4ab to your computer and use it in GitHub Desktop.
Coming Gstreamer in Nvidia l4t Deepstream 6.2 Container (non-functional)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
cd ~ | |
# Copy nv* gstreamer elements | |
mkdir nvgst | |
cp /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnv* ./nvgst/ | |
# Dependency dir | |
mkdir -p /build | |
# Upgrade packages and install missing dependencies | |
# Really? | |
apt-get update | |
apt autoremove -y | |
# apt-get -f install | |
apt-get upgrade -y | |
# Install build tools | |
# apt-get install -y ninja-build meson build-essential libglib2.0-dev liborc-0.4-dev | |
apt-get install -y libx265-dev pkg-config libcairo2-dev libgirepository1.0-dev python3-dev wget curl ninja-build cmake flex gettext bison build-essential libglib2.0-dev liborc-0.4-dev | |
python -m pip install -U pip wheel | |
pip install --user meson gitlint | |
# Meson is installed in /usr/local/bin | |
export PATH=$PATH:/root/.local/bin | |
# Install newer glib | |
mkdir -p /build/glib | |
cd /build/glib | |
wget https://download.gnome.org/sources/glib/2.77/glib-2.77.0.tar.xz -O glib.tar.xz | |
tar -xvf glib.tar.xz | |
cd glib-2.77.0 | |
mkdir build | |
# meson setup --prefix=/usr -Dman=false build | |
meson setup --reconfigure --prefix=/usr/local -Dman=false build | |
ninja -C build | |
ninja install -C build | |
ldconfig | |
# libtoolize | |
# Install Rust | |
# curl https://sh.rustup.rs -sSf | sh -s -- -y | |
# TODO: Remove it again after gstreamer compilation | |
# Remove existing gstreamer | |
apt-get remove gstreamer1.0* -y | |
rm /usr/lib/aarch64-linux-gnu/gstreamer-1.0/ -r | |
rm -rf /usr/lib/gst* | |
rm -rf /usr/bin/gst* | |
rm -rf /usr/include/gstreamer-1.0 | |
apt-get remove --purge -y "*orc*" | |
# Build gstreamer | |
mkdir -p /build/gst && cd /build/gst | |
export GIT_SSL_NO_VERIFY=1 | |
git clone https://gitlab.freedesktop.org/gstreamer/gstreamer.git | |
git checkout '1.22.4' | |
# meson setup -Dlibav=disabled -Dpython=enabled -Dgpl=enabled builddir | |
# meson setup -Ddoc=disabled -Dtests=disabled -Dexamples=disabled -Dges=disabled -Dgst-examples:*=disabled -Ddevtools=disabled -Dlibav=disabled -Dpython=enabled -Dgpl=enabled builddir | |
meson setup -Dgst-devtools:cairo=disabled -Dintrospection=enabled -Dtools=enabled -Drs=enabled -Dgst-plugins-good:qt5=disabled -Dgst-plugins-good:ogg=disabled -Dgst-plugins-good:opus=disabled -Ddoc=disabled -Dtests=disabled -Dexamples=disabled -Dges=disabled -Dgst-examples=disabled -Ddevtools=disabled -Dlibav=disabled -Dpython=enabled -Dgpl=enabled build | |
meson setup --prefix=/usr -Dbuildtype=release -Dgst-plugins-base:gl_winsys=egl -Ddoc=disabled -Dtests=disabled -Dexamples=disabled -Dges=disabled -Dgst-examples:*=disabled -Ddevtools=disabled build | |
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/aarch64-linux-gnu | |
export PKG_CONFIG_PATH=/usr/lib/aarch64-linux-gnu/pkgconfig:/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH | |
# --wrap-mode=forcefallback \ | |
meson setup \ | |
--reconfigure \ | |
--prefix=/usr/local \ | |
-Dgst-devtools:cairo=disabled \ | |
-Dintrospection=enabled \ | |
-Dtools=enabled \ | |
-Drs=disabled \ | |
-Dgst-plugins-good:qt5=disabled \ | |
-Dgst-plugins-good:lame=disabled \ | |
-Dgst-plugins-good:audio*=disabled \ | |
-Dgst-plugins-good:id3demux=disabled \ | |
-Dgst-plugins-good:wav*=disabled \ | |
-Dgst-plugins-base:pango=disabled \ | |
-Dgst-plugins-base:ogg=disabled \ | |
-Dgst-plugins-base:vorbis=disabled \ | |
-Dgst-plugins-base:opus=disabled \ | |
-Dgst-plugins-base:audio*=disabled \ | |
-Dgst-plugins-bad:x265=enabled \ | |
-Dgst-plugins-bad:id3tag=disabled \ | |
-Dgst-plugins-bad:aiff=disabled \ | |
-Dgst-plugins-bad:midi=disabled \ | |
-Dgst-plugins-bad:freeverb=disabled \ | |
-Dgst-plugins-bad:audio*=disabled \ | |
-Dgst-plugins-ugly:dvd*=disabled \ | |
-Ddoc=disabled \ | |
-Dtests=disabled \ | |
-Dexamples=disabled \ | |
-Dges=disabled \ | |
-Dgst-examples=disabled \ | |
-Ddevtools=disabled \ | |
-Dlibav=disabled \ | |
-Dpython=enabled \ | |
-Dgpl=enabled \ | |
build | |
ninja -C build | |
meson install -C build | |
export LD_LIBRARY_PATH="/usr/local/lib:$LD_LIBRARY_PATH" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment