gstreamer: fix and enable the package (#1622)

* gstreamer: make it work with opensles and libcaca, update and enable the packages

* gstreamer: fix build in presence of libunwind and clean up

* minor stuff

* put in preload ffmpeg libs like mpv has
This commit is contained in:
rnauber 2017-10-15 01:02:21 +02:00 committed by Fredrik Fornwall
parent 2b2d23f6b9
commit 480caaa501
9 changed files with 111 additions and 13 deletions

View File

@ -1,6 +0,0 @@
TERMUX_PKG_HOMEPAGE=https://gstreamer.freedesktop.org/
TERMUX_PKG_DESCRIPTION="GStreamer base plug-ins"
TERMUX_PKG_VERSION=1.10.2
TERMUX_PKG_SRCURL=https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-${TERMUX_PKG_VERSION}.tar.xz
TERMUX_PKG_DEPENDS="gstreamer"
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="--disable-tests --disable-examples"

View File

@ -1,6 +0,0 @@
TERMUX_PKG_HOMEPAGE=https://gstreamer.freedesktop.org/
TERMUX_PKG_DESCRIPTION="Open source multimedia framework"
TERMUX_PKG_VERSION=1.10.2
TERMUX_PKG_SRCURL=https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${TERMUX_PKG_VERSION}.tar.xz
TERMUX_PKG_DEPENDS="glib"
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="--disable-check --disable-tests --disable-examples --disable-benchmarks"

View File

@ -0,0 +1,10 @@
TERMUX_PKG_HOMEPAGE=https://gstreamer.freedesktop.org/
TERMUX_PKG_DESCRIPTION="GStreamer libav/ffmpeg wrapper"
TERMUX_PKG_VERSION=1.12.3
TERMUX_PKG_SRCURL=https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-${TERMUX_PKG_VERSION}.tar.xz
TERMUX_PKG_BUILD_IN_SRC=yes
TERMUX_PKG_DEPENDS="gst-plugins-base,ffmpeg"
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="--disable-tests --disable-examples"
TERMUX_PKG_EXTRA_CONFIGURE_ARGS+="--with-system-libav --disable-android_media"
TERMUX_PKG_SHA256=015ef8cab6f7fb87c8fb42642486423eff3b6e6a6bccdcd6a189f436a3619650

View File

@ -1,11 +1,12 @@
TERMUX_PKG_HOMEPAGE=https://gstreamer.freedesktop.org/
TERMUX_PKG_DESCRIPTION="GStreamer Bad Plug-ins"
TERMUX_PKG_VERSION=1.10.2
TERMUX_PKG_VERSION=1.12.3
TERMUX_PKG_SRCURL=https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-${TERMUX_PKG_VERSION}.tar.xz
TERMUX_PKG_BUILD_IN_SRC=yes
TERMUX_PKG_DEPENDS="gst-plugins-base"
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="--disable-tests --disable-examples"
TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" --disable-android_media"
TERMUX_PKG_SHA256=36d059761852bed0f1a7fcd3ef64a8aeecab95d2bca53cd6aa0f08054b1cbfec
termux_step_pre_configure() {
export GNUSTL_LIBS="-lc"

View File

@ -0,0 +1,38 @@
TERMUX_PKG_HOMEPAGE=https://gstreamer.freedesktop.org/
TERMUX_PKG_DESCRIPTION="GStreamer base plug-ins"
TERMUX_PKG_VERSION=1.12.3
TERMUX_PKG_SRCURL=https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-${TERMUX_PKG_VERSION}.tar.xz
TERMUX_PKG_DEPENDS="gstreamer"
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="--disable-tests --disable-examples"
TERMUX_PKG_SHA256=d3d37b8489d37fa0018973d850bd2067b98af335fef2fa543ee7d40359e3cea5
termux_step_post_make_install () {
for BINARY in gst-play-1.0 gst-discoverer-1.0 gst-device-monitor-1.0
do
echo $BINARY
local LIBEXEC_BINARY=$TERMUX_PREFIX/libexec/$BINARY
local BIN_BINARY=$TERMUX_PREFIX/bin/$BINARY
local LIB_PATH=/system/lib
local VENDOR_LIB_PATH=/system/vendor/lib
if [ ! "$TERMUX_ARCH_BITS" == "32" ]
then
LIB_PATH+=64
VENDOR_LIB_PATH+=64
fi
mv $BIN_BINARY $LIBEXEC_BINARY
local FFMPEG_LIBS="" lib
for lib in avcodec avfilter avformat avutil postproc swresample swscale; do
if [ -n "$FFMPEG_LIBS" ]; then FFMPEG_LIBS+=":"; fi
FFMPEG_LIBS+="$TERMUX_PREFIX/lib/lib${lib}.so"
done
cat << EOF > $BIN_BINARY
#!/bin/sh
export LD_PRELOAD=$FFMPEG_LIBS
# Avoid linker errors due to libOpenSLES.so:
LD_LIBRARY_PATH=$LIB_PATH:$VENDOR_LIB_PATH:$TERMUX_PREFIX/lib exec $LIBEXEC_BINARY "\$@"
EOF
chmod +x $BIN_BINARY
done
}

View File

@ -0,0 +1,11 @@
--- src/ext/libcaca/gstcacasink.c.orig 2017-10-05 05:57:01.990156123 +0000
+++ src/ext/libcaca/gstcacasink.c 2017-10-05 06:17:58.320938634 +0000
@@ -407,7 +407,7 @@
static gboolean
plugin_init (GstPlugin * plugin)
{
- if (!gst_element_register (plugin, "cacasink", GST_RANK_NONE,
+ if (!gst_element_register (plugin, "cacasink", GST_RANK_PRIMARY,
GST_TYPE_CACASINK))
return FALSE;

View File

@ -0,0 +1,10 @@
TERMUX_PKG_HOMEPAGE=https://gstreamer.freedesktop.org/
TERMUX_PKG_DESCRIPTION="GStreamer Good Plug-ins"
TERMUX_PKG_VERSION=1.12.3
TERMUX_PKG_SRCURL=https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-${TERMUX_PKG_VERSION}.tar.xz
TERMUX_PKG_BUILD_IN_SRC=yes
TERMUX_PKG_DEPENDS="gst-plugins-base,libcaca,libsoup,libjpeg-turbo,libpng"
#TERMUX_PKG_BUILD_DEPENDS="libcaca,libsoup,libjpeg-turbo,libpng"
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="--disable-tests --disable-examples"
TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" --disable-android_media --disable-oss --disable-oss4"
TERMUX_PKG_SHA256=13e7f479296891fef5a686438f20ba7d534680becf2269ecc5ee24aa83b45f03

View File

@ -0,0 +1,9 @@
TERMUX_PKG_HOMEPAGE=https://gstreamer.freedesktop.org/
TERMUX_PKG_DESCRIPTION="GStreamer Ugly Plug-ins"
TERMUX_PKG_VERSION=1.12.3
TERMUX_PKG_SRCURL=https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-${TERMUX_PKG_VERSION}.tar.xz
TERMUX_PKG_BUILD_IN_SRC=yes
TERMUX_PKG_DEPENDS="gst-plugins-base"
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="--disable-tests --disable-examples"
TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" --disable-android_media"
TERMUX_PKG_SHA256=13e7f479296891fef5a686438f20ba7d534680becf2269ecc5ee24aa83b45f03

View File

@ -0,0 +1,31 @@
TERMUX_PKG_HOMEPAGE=https://gstreamer.freedesktop.org/
TERMUX_PKG_DESCRIPTION="Open source multimedia framework"
TERMUX_PKG_VERSION=1.12.3
TERMUX_PKG_SRCURL=https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${TERMUX_PKG_VERSION}.tar.xz
TERMUX_PKG_SHA256=d388f492440897f02b01eebb033ca2d41078a3d85c0eddc030cdea5a337a216e
TERMUX_PKG_DEPENDS="glib"
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="--disable-check --disable-tests --disable-examples --disable-benchmarks --with-unwind=no --with-dw=no"
termux_step_post_make_install () {
for BINARY in gst-inspect-1.0 gst-stats-1.0 gst-typefind-1.0 gst-launch-1.0
do
echo $BINARY
local LIBEXEC_BINARY=$TERMUX_PREFIX/libexec/$BINARY
local BIN_BINARY=$TERMUX_PREFIX/bin/$BINARY
local LIB_PATH=/system/lib
if [ ! "$TERMUX_ARCH_BITS" == "32" ]
then
LIB_PATH+=64
fi
mv $BIN_BINARY $LIBEXEC_BINARY
cat << EOF > $BIN_BINARY
#!/bin/sh
# Avoid linker errors due to libOpenSLES.so:
LD_LIBRARY_PATH=/system/lib64/:$TERMUX_PREFIX/lib exec $LIBEXEC_BINARY "\$@"
EOF
chmod +x $BIN_BINARY
done
}