summaryrefslogtreecommitdiffstats
path: root/multimedia
diff options
context:
space:
mode:
Diffstat (limited to 'multimedia')
-rw-r--r--multimedia/MuseScore/MuseScore.SlackBuild2
-rw-r--r--multimedia/MuseScore/MuseScore.info4
-rw-r--r--multimedia/aegisub/aegisub.SlackBuild5
-rw-r--r--multimedia/aegisub/patches/boost.patch34
-rw-r--r--multimedia/aegisub/patches/icu.patch11
-rw-r--r--multimedia/aegisub/patches/make-4.3.patch23
-rw-r--r--multimedia/avidemux/avidemux.SlackBuild2
-rw-r--r--multimedia/avidemux/qt-5.15.diff11
-rw-r--r--multimedia/bombono-dvd/bombono-dvd.SlackBuild2
-rw-r--r--multimedia/bombono-dvd/patches/fix_operator_ambiguity.patch352
-rw-r--r--multimedia/bombono-dvd/patches/fix_throw_specifications.patch24
-rw-r--r--multimedia/cantata/cantata.SlackBuild2
-rw-r--r--multimedia/cantata/cantata.info6
-rw-r--r--multimedia/ccextractor/ccextractor-0.88-fno-common.patch55
-rw-r--r--multimedia/ccextractor/ccextractor.SlackBuild3
-rw-r--r--multimedia/cinelerra/README2
-rw-r--r--multimedia/cinelerra/cinelerra.SlackBuild32
-rw-r--r--multimedia/cinelerra/cinelerra.desktop10
-rw-r--r--multimedia/cinelerra/cinelerra.info8
-rw-r--r--multimedia/cinelerra/slack-desc6
-rw-r--r--multimedia/dvdauthor/README2
-rw-r--r--multimedia/dvdauthor/dvdauthor.info10
-rw-r--r--multimedia/dvdauthor/slack-desc19
-rw-r--r--multimedia/dvdstyler/dvdstyler.SlackBuild4
-rw-r--r--multimedia/dvdstyler/dvdstyler.info6
-rw-r--r--multimedia/dvgrab/dvgrab.SlackBuild2
-rw-r--r--multimedia/farsight2/farsight2.SlackBuild6
-rw-r--r--multimedia/farsight2/make-4.3.patch122
-rw-r--r--multimedia/farstream/README7
-rw-r--r--multimedia/farstream/farstream.info10
-rw-r--r--multimedia/farstream/slack-desc19
-rw-r--r--multimedia/ffmpeg/README70
-rw-r--r--multimedia/ffmpeg/ffmpeg-3.2.4-libfdk_aac-2.0.0.patch11
-rw-r--r--multimedia/ffmpeg/ffmpeg-3.2.4-openjpeg2.3.patch102
-rw-r--r--multimedia/ffmpeg/ffmpeg.SlackBuild261
-rw-r--r--multimedia/ffmpeg/ffmpeg.info10
-rw-r--r--multimedia/ffmpeg/slack-desc19
-rw-r--r--multimedia/ffmpeg4/README86
-rw-r--r--multimedia/ffmpeg4/ffmpeg4.SlackBuild238
-rw-r--r--multimedia/ffmpeg4/ffmpeg4.info10
-rw-r--r--multimedia/ffmpeg4/slack-desc19
-rw-r--r--multimedia/gnash/gnash.SlackBuild42
-rw-r--r--multimedia/gnash/gnash.info8
-rw-r--r--multimedia/gnash/patch/58dcdd9338d965e54c8f03ce3d2757388d82b7a3.patch25
-rw-r--r--multimedia/gnash/patch/cc22f2d0597f3a9547980f4786d918f8b5635472.patch31
-rw-r--r--multimedia/gnash/patch/gcc47.patch11
-rw-r--r--multimedia/gnash/patch/gnash-0.8.10-boost-1.50.patch24
-rw-r--r--multimedia/gnash/patch/gnash-0.8.10-cve-2012-1175.patch63
-rw-r--r--multimedia/gnash/patch/gnash-0.8.10-kde4-libdir.patch12
-rw-r--r--multimedia/gnash/patch/gnash-0.8.10-klash.patch12
-rw-r--r--multimedia/gnash/patch/gnash-boost.patch14
-rw-r--r--multimedia/gpac/gpac-ffmpeg-4.0.patch42
-rw-r--r--multimedia/gpac/gpac.SlackBuild6
-rw-r--r--multimedia/gst-libav/README2
-rw-r--r--multimedia/gst-libav/gst-libav.SlackBuild96
-rw-r--r--multimedia/gst-libav/gst-libav.info10
-rw-r--r--multimedia/gst-libav/slack-desc19
-rw-r--r--multimedia/gst-plugins-bad/README16
-rw-r--r--multimedia/gst-plugins-bad/gst-plugins-bad.SlackBuild49
-rw-r--r--multimedia/gst-plugins-bad/gst-plugins-bad.info6
-rw-r--r--multimedia/gst-plugins-ugly/gst-plugins-ugly.SlackBuild41
-rw-r--r--multimedia/gst-plugins-ugly/gst-plugins-ugly.info6
-rw-r--r--multimedia/gst0-ffmpeg/gst0-ffmpeg.SlackBuild2
-rw-r--r--multimedia/gst0-ffmpeg/orc-0.4.30.patch26
-rw-r--r--multimedia/gst0-plugins-bad/README9
-rw-r--r--multimedia/gst0-plugins-bad/drop-vpx-compat-defines.patch27
-rw-r--r--multimedia/gst0-plugins-bad/gst0-plugins-bad.SlackBuild111
-rw-r--r--multimedia/gst0-plugins-bad/gst0-plugins-bad.info10
-rw-r--r--multimedia/gst0-plugins-bad/libmodplug-include.patch12
-rw-r--r--multimedia/gst0-plugins-bad/slack-desc19
-rw-r--r--multimedia/gst0-plugins-base/README6
-rw-r--r--multimedia/gst0-plugins-base/gst0-plugins-base.SlackBuild (renamed from multimedia/farstream/farstream.SlackBuild)43
-rw-r--r--multimedia/gst0-plugins-base/gst0-plugins-base.info10
-rw-r--r--multimedia/gst0-plugins-base/patches/00-fix-crash-0-byte-ogg.patch22
-rw-r--r--multimedia/gst0-plugins-base/patches/01-colorbalance-fix-abi.patch23
-rw-r--r--multimedia/gst0-plugins-base/patches/02-ayuv64-lanczos.patch236
-rw-r--r--multimedia/gst0-plugins-base/patches/03-videoscale-fix-negotiation.patch171
-rw-r--r--multimedia/gst0-plugins-base/patches/04-gstaudio-symbols.patch10
-rw-r--r--multimedia/gst0-plugins-base/patches/05-enum_headers.patch132
-rw-r--r--multimedia/gst0-plugins-base/slack-desc19
-rw-r--r--multimedia/gst0-plugins-base/x86.patch35
-rw-r--r--multimedia/gst0-plugins-good/README3
-rw-r--r--multimedia/gst0-plugins-good/gst0-plugins-good.SlackBuild (renamed from multimedia/kdenlive/kdenlive.SlackBuild)99
-rw-r--r--multimedia/gst0-plugins-good/gst0-plugins-good.info10
-rw-r--r--multimedia/gst0-plugins-good/patches/00-test-rtp-payloading.patch422
-rw-r--r--multimedia/gst0-plugins-good/patches/01-souptest.patch28
-rw-r--r--multimedia/gst0-plugins-good/patches/02-v4l.compile.fixes.diff57
-rw-r--r--multimedia/gst0-plugins-good/slack-desc19
-rw-r--r--multimedia/gstreamer0/gstreamer-0.10.36-bison3.patch31
-rw-r--r--multimedia/gstreamer0/gstreamer0.SlackBuild (renamed from multimedia/dvdauthor/dvdauthor.SlackBuild)55
-rw-r--r--multimedia/gstreamer0/gstreamer0.info10
-rw-r--r--multimedia/gstreamer0/slack-desc19
-rw-r--r--multimedia/gtkpod/gtkpod.SlackBuild2
-rw-r--r--multimedia/kdenlive/README18
-rw-r--r--multimedia/kdenlive/doinst.sh19
-rw-r--r--multimedia/kdenlive/kdenlive.info10
-rw-r--r--multimedia/kdenlive/slack-desc19
-rw-r--r--multimedia/lives/lives.SlackBuild4
-rw-r--r--multimedia/lives/lives.info6
-rw-r--r--multimedia/minidlna/minidlna.SlackBuild12
-rw-r--r--multimedia/minidlna/minidlna.info6
-rw-r--r--multimedia/mkvtoolnix/mkvtoolnix.SlackBuild2
-rw-r--r--multimedia/mkvtoolnix/mkvtoolnix.info6
-rw-r--r--multimedia/mlt/README11
-rw-r--r--multimedia/mlt/doinst.sh20
-rw-r--r--multimedia/mlt/mlt.SlackBuild217
-rw-r--r--multimedia/mlt/mlt.info10
-rw-r--r--multimedia/mlt/slack-desc19
-rw-r--r--multimedia/mythtv/libvpxenc.patch42
-rw-r--r--multimedia/mythtv/mythtv.SlackBuild8
-rw-r--r--multimedia/mythtv/mythtv.info8
-rw-r--r--multimedia/obs-studio/obs-studio.SlackBuild4
-rw-r--r--multimedia/obs-studio/obs-studio.info8
-rw-r--r--multimedia/oggvideotools/oggvideotools.SlackBuild2
-rw-r--r--multimedia/rtmpdump/rtmpdump.SlackBuild8
-rw-r--r--multimedia/smpeg/smpeg.SlackBuild4
-rw-r--r--multimedia/subtitleeditor/subtitleeditor.SlackBuild16
-rw-r--r--multimedia/subtitleeditor/subtitleeditor.info8
-rw-r--r--multimedia/transcode/transcode-1.1.7-ffmpeg4.patch508
-rw-r--r--multimedia/transcode/transcode-1.1.7-gcc10.patch48
-rw-r--r--multimedia/transcode/transcode-1.1.7-glibc-2.32.patch47
-rw-r--r--multimedia/transcode/transcode-1.1.7-imagemagick7.patch794
-rw-r--r--multimedia/transcode/transcode.SlackBuild11
-rw-r--r--multimedia/tvheadend/tvheadend-4.2.8-fno-common.patch55
-rw-r--r--multimedia/tvheadend/tvheadend-4.2.8-gcc9.patch36
-rw-r--r--multimedia/tvheadend/tvheadend.SlackBuild17
-rw-r--r--multimedia/tvheadend/tvheadend.info8
-rw-r--r--multimedia/tvtime/tvtime.SlackBuild23
-rw-r--r--multimedia/tvtime/tvtime.info6
-rw-r--r--multimedia/vcdimager/vcdimager.SlackBuild8
-rw-r--r--multimedia/vcdimager/vcdimager.info6
-rw-r--r--multimedia/vlc/README9
-rw-r--r--multimedia/vlc/vlc.SlackBuild12
-rw-r--r--multimedia/w_scan/gcc-10.patch37
-rw-r--r--multimedia/w_scan/w_scan.SlackBuild2
-rw-r--r--multimedia/xmltv/README.SBo6
-rw-r--r--multimedia/xmltv/xmltv.SlackBuild24
-rw-r--r--multimedia/xmltv/xmltv.info6
138 files changed, 3881 insertions, 2109 deletions
diff --git a/multimedia/MuseScore/MuseScore.SlackBuild b/multimedia/MuseScore/MuseScore.SlackBuild
index d36d21c67f..7b4065170a 100644
--- a/multimedia/MuseScore/MuseScore.SlackBuild
+++ b/multimedia/MuseScore/MuseScore.SlackBuild
@@ -3,7 +3,7 @@
# Maintained by Klaatu at member.fsf dot org
PRGNAM=MuseScore
-VERSION=${VERSION:-3.6}
+VERSION=${VERSION:-3.6.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/multimedia/MuseScore/MuseScore.info b/multimedia/MuseScore/MuseScore.info
index aa3acac807..dc0ec32b08 100644
--- a/multimedia/MuseScore/MuseScore.info
+++ b/multimedia/MuseScore/MuseScore.info
@@ -1,10 +1,10 @@
PRGNAM="MuseScore"
VERSION="3.6"
HOMEPAGE="http://www.musescore.org/"
-DOWNLOAD="https://github.com/musescore/MuseScore/archive/v3.6/MuseScore-3.6.tar.gz \
+DOWNLOAD="https://github.com/musescore/MuseScore/archive/v3.6.1/MuseScore-3.6.1.tar.gz \
http://ftp.osuosl.org/pub/musescore/soundfont/MuseScore_General/MuseScore_General.sf3 \
http://ftp.osuosl.org/pub/musescore/soundfont/MuseScore_General/MuseScore_General_License.md"
-MD5SUM="63c890ef7849da113b80d699a23ccaac \
+MD5SUM="b798eb965a8f786980b81df45014c797 \
7b354559c7ef4e859a2bfad8738d477d \
bc7b4fbe58b37788876b6c36f19577d0"
DOWNLOAD_x86_64=""
diff --git a/multimedia/aegisub/aegisub.SlackBuild b/multimedia/aegisub/aegisub.SlackBuild
index 0bdf6b18bb..cc3600c6c8 100644
--- a/multimedia/aegisub/aegisub.SlackBuild
+++ b/multimedia/aegisub/aegisub.SlackBuild
@@ -69,10 +69,13 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-sed 's/$(LIBS_BOOST) $(LIBS_ICU)/$(LIBS_BOOST) $(LIBS_ICU) -pthread/' -i tools/Makefile
+for i in $CWD/patches/* ; do patch -p1 < $i ; done
+sed 's|gil/gil_all.hpp|gil.hpp|g' -i src/*.cpp # boost 1.69
+sed 's/$(LIBS_BOOST) $(LIBS_ICU)/$(LIBS_BOOST) $(LIBS_ICU) -pthread/' -i tools/Makefile # missing link flag
LDFLAGS="$LDFLAGS -lz" \
CFLAGS="$SLKCFLAGS" \
+CPPFLAGS+=' -DU_USING_ICU_NAMESPACE=1' \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/multimedia/aegisub/patches/boost.patch b/multimedia/aegisub/patches/boost.patch
new file mode 100644
index 0000000000..5d917f607e
--- /dev/null
+++ b/multimedia/aegisub/patches/boost.patch
@@ -0,0 +1,34 @@
+From d8336d2fed73c72d1227b343d6acfb991bc1651b Mon Sep 17 00:00:00 2001
+From: Jan Beich <jbeich@FreeBSD.org>
+Date: Mon, 9 Jul 2018 20:15:29 +0000
+Subject: [PATCH] Keep using std::distance after Boost 1.68
+
+src/search_replace_engine.cpp:256:14: error: call to
+ 'distance' is ambiguous
+ count += distance(
+ ^~~~~~~~
+/usr/include/c++/v1/iterator:511:1: note: candidate function [with _InputIter =
+ boost::u32regex_iterator<std::__1::__wrap_iter<const char *> >]
+distance(_InputIter __first, _InputIter __last)
+^
+/usr/local/include/boost/iterator/distance.hpp:49:9: note: candidate function [with SinglePassIterator =
+ boost::u32regex_iterator<std::__1::__wrap_iter<const char *> >]
+ distance(SinglePassIterator first, SinglePassIterator last)
+ ^
+---
+ src/search_replace_engine.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/search_replace_engine.cpp b/src/search_replace_engine.cpp
+index 594c21e5e..14c71680d 100644
+--- a/src/search_replace_engine.cpp
++++ b/src/search_replace_engine.cpp
+@@ -253,7 +253,7 @@ bool SearchReplaceEngine::ReplaceAll() {
+ if (MatchState ms = matches(&diag, 0)) {
+ auto& diag_field = diag.*get_dialogue_field(settings.field);
+ std::string const& text = diag_field.get();
+- count += distance(
++ count += std::distance(
+ boost::u32regex_iterator<std::string::const_iterator>(begin(text), end(text), *ms.re),
+ boost::u32regex_iterator<std::string::const_iterator>());
+ diag_field = u32regex_replace(text, *ms.re, settings.replace_with);
diff --git a/multimedia/aegisub/patches/icu.patch b/multimedia/aegisub/patches/icu.patch
new file mode 100644
index 0000000000..2145140ed0
--- /dev/null
+++ b/multimedia/aegisub/patches/icu.patch
@@ -0,0 +1,11 @@
+diff -upr aegisub-3.2.2.orig/src/utils.cpp aegisub-3.2.2/src/utils.cpp
+--- aegisub-3.2.2.orig/src/utils.cpp 2014-12-08 02:07:09.000000000 +0200
++++ aegisub-3.2.2/src/utils.cpp 2017-04-26 11:11:15.438239182 +0300
+@@ -44,6 +44,7 @@
+ #include <boost/filesystem/path.hpp>
+ #include <map>
+ #include <unicode/locid.h>
++#include <unicode/unistr.h>
+ #include <wx/clipbrd.h>
+ #include <wx/filedlg.h>
+ #include <wx/stdpaths.h>
diff --git a/multimedia/aegisub/patches/make-4.3.patch b/multimedia/aegisub/patches/make-4.3.patch
new file mode 100644
index 0000000000..6edb8c3b5e
--- /dev/null
+++ b/multimedia/aegisub/patches/make-4.3.patch
@@ -0,0 +1,23 @@
+From f4cc905c69ca69c68cb95674cefce4abc37ce046 Mon Sep 17 00:00:00 2001
+From: wangqr <wangqr@wangqr.tk>
+Date: Mon, 17 Feb 2020 14:42:07 +0800
+Subject: [PATCH] Use target name without directory in $*_OBJ macro
+
+Fix Aegisub/Aegisub#171
+---
+ Makefile.target | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile.target b/Makefile.target
+index 516ef3c24..5c4c5d259 100644
+--- a/Makefile.target
++++ b/Makefile.target
+@@ -112,7 +112,7 @@ POST_FLAGS = $($@_FLAGS) -c -o $@ $<
+ # Libraries contain all object files they depend on (but they may depend on other files)
+ # Not using libtool on OS X because it has an unsilenceable warning about a
+ # compatibility issue with BSD 4.3 (wtf)
+-lib%.a: $$($$*_OBJ)
++lib%.a: $$($$(*F)_OBJ)
+ @$(BIN_MKDIR_P) $(dir $@)
+ $(BIN_AR) cru $@ $(filter %.o,$^)
+ $(BIN_RANLIB) $@
diff --git a/multimedia/avidemux/avidemux.SlackBuild b/multimedia/avidemux/avidemux.SlackBuild
index 2856a1de47..c8e627f179 100644
--- a/multimedia/avidemux/avidemux.SlackBuild
+++ b/multimedia/avidemux/avidemux.SlackBuild
@@ -74,6 +74,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p1 < $CWD/qt-5.15.diff
+
sed -i 's|../avidemux/qt4|../avidemux/qt4 -DLRELEASE_EXECUTABLE=/usr/bin/lrelease-qt5|' bootStrap.bash || exit 1
sed -i 's|0.19|1.0|' avidemux_plugins/ADM_videoFilters6/ass/CMakeLists.txt || exit 1
diff --git a/multimedia/avidemux/qt-5.15.diff b/multimedia/avidemux/qt-5.15.diff
new file mode 100644
index 0000000000..5ebe3753c2
--- /dev/null
+++ b/multimedia/avidemux/qt-5.15.diff
@@ -0,0 +1,11 @@
+diff -u -r avidemux_2.7.4/avidemux/qt4/ADM_UIs/src/T_RubberControl.cpp avidemux_2.7.4-fix/avidemux/qt4/ADM_UIs/src/T_RubberControl.cpp
+--- avidemux_2.7.4/avidemux/qt4/ADM_UIs/src/T_RubberControl.cpp 2019-08-15 07:25:39.000000000 +0000
++++ avidemux_2.7.4-fix/avidemux/qt4/ADM_UIs/src/T_RubberControl.cpp 2020-06-05 13:48:28.014061206 +0000
+@@ -8,6 +8,7 @@
+ ***************************************************************************///
+
+ #include <QPainter>
++#include <QPainterPath>
+ #include <QRubberBand>
+ #include <QBoxLayout>
+ #include <QSizeGrip>
diff --git a/multimedia/bombono-dvd/bombono-dvd.SlackBuild b/multimedia/bombono-dvd/bombono-dvd.SlackBuild
index 4ad1cf1197..831f0d46b0 100644
--- a/multimedia/bombono-dvd/bombono-dvd.SlackBuild
+++ b/multimedia/bombono-dvd/bombono-dvd.SlackBuild
@@ -83,6 +83,8 @@ patch -p1 < $CWD/patches/fix_ptr2bool_cast.patch
patch -p1 < $CWD/patches/fix_c++11_literal_warnings.patch
patch -p1 < $CWD/patches/autoptr2uniqueptr.patch
patch -p1 < $CWD/patches/boost.patch
+patch -p1 < $CWD/patches/fix_operator_ambiguity.patch
+patch -p1 < $CWD/patches/fix_throw_specifications.patch
# Fix for ffmpeg-3
patch -p1 < $CWD/patches/ffmpeg3.patch
diff --git a/multimedia/bombono-dvd/patches/fix_operator_ambiguity.patch b/multimedia/bombono-dvd/patches/fix_operator_ambiguity.patch
new file mode 100644
index 0000000000..5fcfaf0466
--- /dev/null
+++ b/multimedia/bombono-dvd/patches/fix_operator_ambiguity.patch
@@ -0,0 +1,352 @@
+diff -ruN old/src/mbase/project/serialization.h new/src/mbase/project/serialization.h
+--- old/src/mbase/project/serialization.h 2017-06-01 13:54:44.086895687 +0430
++++ new/src/mbase/project/serialization.h 2017-06-01 14:09:16.523275880 +0430
+@@ -75,7 +75,9 @@
+ template<typename T>
+ std::string MakeString(const T& t)
+ {
+- return (str::stream() << t).str();
++ str::stream ss;
++ ss << t;
++ return ss.str();
+ }
+
+ template<typename T>
+diff -ruN old/src/mgui/dvdimport.cpp new/src/mgui/dvdimport.cpp
+--- old/src/mgui/dvdimport.cpp 2017-06-01 13:54:44.086895687 +0430
++++ new/src/mgui/dvdimport.cpp 2017-06-01 14:06:42.488114237 +0430
+@@ -211,10 +211,11 @@
+ row[VF().selState] = false;
+ row[VF().name] = VobFName(vob.pos);
+ row[VF().thumbnail] = vob.aspect == af4_3 ? pix4_3 : pix16_9;
+- std::string desc = (str::stream(Mpeg::SecToHMS(vob.tmLen, true)) << ", "
+- << vob.sz.x << "x" << vob.sz.y << ", "
+- << (vob.aspect == af4_3 ? "4:3" : "16:9") << ", "
+- << std::fixed << std::setprecision(2) << vob.Count()/512. << " " << _("MB")).str();
++ str::stream ss (Mpeg::SecToHMS(vob.tmLen, true));
++ ss << ", " << vob.sz.x << "x" << vob.sz.y << ", "
++ << (vob.aspect == af4_3 ? "4:3" : "16:9") << ", "
++ << std::fixed << std::setprecision(2) << vob.Count()/512. << " " << _("MB");
++ std::string desc = ss.str();
+ row[VF().desc] = desc;
+ }
+ CompleteSelection(id, false);
+diff -ruN old/src/mbase/project/media.cpp new/src/mbase/project/media.cpp
+--- old/src/mbase/project/media.cpp 2017-06-01 14:25:09.492134844 +0430
++++ new/src/mbase/project/media.cpp 2017-06-01 14:37:53.196336367 +0430
+@@ -58,7 +58,9 @@
+
+ std::string MakeAutoName(const std::string& str, int old_sz)
+ {
+- return (str::stream() << str << " " << old_sz+1).str();
++ str::stream ss;
++ ss << str << " " << old_sz+1;
++ return ss.str();
+ }
+
+ void VideoMD::AddChapter(ChapterItem chp)
+diff -ruN old/src/mbase/project/menu.cpp new/src/mbase/project/menu.cpp
+--- old/src/mbase/project/menu.cpp 2017-06-01 14:25:09.495468141 +0430
++++ new/src/mbase/project/menu.cpp 2017-06-01 14:39:42.004331141 +0430
+@@ -166,7 +166,9 @@
+ static std::string MakeObjectPath(int idx, const char* type)
+ {
+ ASSERT( idx != NO_HNDL );
+- return (str::stream() << type << "." << idx).str();
++ str::stream ss;
++ ss << type << "." << idx;
++ return ss.str();
+ }
+
+ std::string GetMediaRef(MediaItem mi)
+@@ -197,7 +199,9 @@
+ void RefMaker::Visit(VideoChapterMD& obj)
+ {
+ refStr = GetMediaRef(obj.owner);
+- refStr += (str::stream() << "." << ChapterPosInt(&obj)).str();
++ str::stream ss;
++ ss << "." << ChapterPosInt(&obj);
++ refStr += ss.str();
+ }
+
+ std::string Media2Ref(MediaItem mi)
+@@ -233,8 +237,9 @@
+
+ std::string ThrowBadIndex(const char* prefix, int idx)
+ {
+- throw std::runtime_error(
+- (str::stream() << prefix << idx).str() );
++ str::stream ss;
++ ss << prefix << idx;
++ throw std::runtime_error(ss.str());
+ }
+
+ MediaItem TryGetMedia(int idx)
+diff -ruN old/src/mbase/project/srl-common.cpp new/src/mbase/project/srl-common.cpp
+--- old/src/mbase/project/srl-common.cpp 2017-06-01 14:25:09.495468141 +0430
++++ new/src/mbase/project/srl-common.cpp 2017-06-01 14:40:56.524722225 +0430
+@@ -36,10 +36,12 @@
+ std::string ToString(const RGBA::Pixel& pxl)
+ {
+ using Mpeg::set_hms;
+- return (str::stream("#") << std::hex
+- << set_hms() << (int)pxl.red
+- << set_hms() << (int)pxl.green
+- << set_hms() << (int)pxl.blue << (int)pxl.alpha).str();
++ str::stream ss ("#");
++ ss << std::hex
++ << set_hms() << (int)pxl.red
++ << set_hms() << (int)pxl.green
++ << set_hms() << (int)pxl.blue << (int)pxl.alpha;
++ return ss.str();
+ }
+
+ // как pango_color_parse()
+diff -ruN old/src/mgui/author/render.cpp new/src/mgui/author/render.cpp
+--- old/src/mgui/author/render.cpp 2017-06-01 14:25:09.498801438 +0430
++++ new/src/mgui/author/render.cpp 2017-06-01 14:28:08.901379890 +0430
+@@ -1307,7 +1307,9 @@
+
+ bool RenderMainPicture(const std::string& out_dir, Menu mn, int i)
+ {
+- Author::Info((str::stream() << "Rendering menu \"" << mn->mdName << "\" ...").str());
++ str::stream ss;
++ ss << "Rendering menu \"" << mn->mdName << "\" ...";
++ Author::Info(ss.str());
+ const std::string mn_dir = MakeMenuPath(out_dir, mn, i);
+
+ if( IsMotion(mn) )
+diff -ruN old/src/mgui/author/script.cpp new/src/mgui/author/script.cpp
+--- old/src/mgui/author/script.cpp 2017-06-01 14:25:09.498801438 +0430
++++ new/src/mgui/author/script.cpp 2017-06-01 14:31:23.248978018 +0430
+@@ -130,7 +130,9 @@
+ {
+ VideoItem vi = IsVideo(mi);
+ ASSERT( vi );
+- str = (str::stream() << "title " << GetAuthorNumber(vi)).str();
++ str::stream ss;
++ ss << "title " << GetAuthorNumber(vi);
++ str = ss.str();
+ }
+ return str;
+ }
+@@ -179,7 +181,9 @@
+ // Потому: для удоства пользователей даем создавать нулевую главу, разрешая это здесь
+ // (однако доп. нулевые главы будут приводить к ошибке Cannot jump to chapter N ... only M exist)
+ int c_num = ChapterPosInt(&obj) + (owner->List()[0]->chpTime ? 2 : 1) ;
+- res = (str::stream() << "jump title " << v_num << " chapter " << c_num << ";").str();
++ str::stream ss;
++ ss << "jump title " << v_num << " chapter " << c_num << ";";
++ res = ss.str();
+ }
+
+ static std::string MakeButtonJump(MediaItem mi, bool vts_domain)
+@@ -204,7 +208,9 @@
+ if( !fs::native(name) )
+ name = "Menu";
+
+- std::string fname = (str::stream() << idx+1 << "." << name).str();
++ str::stream ss;
++ ss << idx+1 << "." << name;
++ std::string fname = ss.str();
+ return cnv_from_utf8 ? ConvertPathFromUtf8(fname) : fname ;
+ }
+
+@@ -626,7 +632,9 @@
+ void AuthorSectionInfo(const std::string& str)
+ {
+ Author::Info("\n#", false);
+- Author::Info((str::stream() << "# " << str).str(), false);
++ str::stream ss;
++ ss << "# " << str;
++ Author::Info(ss.str(), false);
+ Author::Info("#\n", false);
+ }
+
+@@ -1082,7 +1090,9 @@
+
+ static void AuthorImpl(const std::string& out_dir)
+ {
+- AuthorSectionInfo((str::stream() << "Build DVD-Video in folder: " << out_dir).str());
++ str::stream ss;
++ ss << "Build DVD-Video in folder: " << out_dir;
++ AuthorSectionInfo(ss.str());
+ IteratePendingEvents();
+
+ IndexVideosForAuthoring();
+diff -ruN old/src/mgui/project/add.cpp new/src/mgui/project/add.cpp
+--- old/src/mgui/project/add.cpp 2017-06-01 14:25:09.498801438 +0430
++++ new/src/mgui/project/add.cpp 2017-06-01 14:33:26.303387642 +0430
+@@ -86,7 +86,9 @@
+
+ static std::string FpsToStr(const Point& frate)
+ {
+- return (str::stream() << (double)frate.x/frate.y).str();
++ str::stream ss;
++ ss << (double)frate.x/frate.y;
++ return ss.str();
+ }
+
+ static std::string TVTypeStr(bool is_ntsc)
+@@ -163,7 +165,9 @@
+ // *
+ bool is_aspect_ok = vid.sarCode == af4_3 || vid.sarCode == af16_9;
+ Point aspect = vid.SizeAspect();
+- std::string aspect_str = (str::stream() << aspect.x << ':' << aspect.y).str();
++ str::stream ss;
++ ss << aspect.x << ':' << aspect.y;
++ std::string aspect_str = ss.str();
+ SetImportError(ed, is_aspect_ok,
+ std::string(_("Aspect ratio")) + ": \t" + MarkError(aspect_str, is_aspect_ok),
+ BF_(Descriptions[2]) % tv_type % bf::stop);
+diff -ruN old/src/mgui/sdk/cairo_utils.cpp new/src/mgui/sdk/cairo_utils.cpp
+--- old/src/mgui/sdk/cairo_utils.cpp 2017-06-01 14:25:09.498801438 +0430
++++ new/src/mgui/sdk/cairo_utils.cpp 2017-06-01 14:35:20.831246046 +0430
+@@ -27,6 +27,8 @@
+ std::string MakeSVGFilename(const char* prefix)
+ {
+ static int idx = 1;
+- return (str::stream() << prefix << "-" << Mpeg::set_hms() << idx++ << ".svg" ).str();
++ str::stream ss;
++ ss << prefix << "-" << Mpeg::set_hms() << idx++ << ".svg";
++ return ss.str();
+ }
+
+diff -ruN old/src/mgui/timeline/layout.cpp new/src/mgui/timeline/layout.cpp
+--- old/src/mgui/timeline/layout.cpp 2017-06-01 14:25:09.502134734 +0430
++++ new/src/mgui/timeline/layout.cpp 2017-06-01 14:36:36.152095784 +0430
+@@ -600,8 +600,10 @@
+ void FramesToTime(std::string& str, int cnt, double fps)
+ {
+ time4_t t4 = FramesToTime(cnt, fps);
+- str = (str::stream() << Mpeg::set_hms() << t4.hh << ":" << Mpeg::set_hms() << t4.mm << ":"
+- << Mpeg::set_hms() << t4.ss << ";" << Mpeg::set_hms() << t4.ff).str();
++ str::stream ss;
++ ss << Mpeg::set_hms() << t4.hh << ":" << Mpeg::set_hms() << t4.mm << ":"
++ << Mpeg::set_hms() << t4.ss << ";" << Mpeg::set_hms() << t4.ff;
++ str = ss.str();
+ }
+
+ } // namespace TimeLine
+diff -ruN old/src/mgui/win_utils.cpp new/src/mgui/win_utils.cpp
+--- old/src/mgui/win_utils.cpp 2017-06-01 14:25:09.498801438 +0430
++++ new/src/mgui/win_utils.cpp 2017-06-01 14:26:50.898112082 +0430
+@@ -132,7 +132,9 @@
+
+ std::string ColorToString(const unsigned int rgba)
+ {
+- return (str::stream() << std::hex << (rgba >> 8)).str();
++ str::stream ss;
++ ss << std::hex << (rgba >> 8);
++ return ss.str();
+ }
+
+ CR::Color GetBGColor(Gtk::Widget& wdg)
+diff -ruN old/src/mdemux/dvdread.cpp new/src/mdemux/dvdread.cpp
+--- old/src/mdemux/dvdread.cpp 2017-06-01 14:48:30.110355679 +0430
++++ new/src/mdemux/dvdread.cpp 2017-06-01 14:50:50.141065674 +0430
+@@ -35,8 +35,10 @@
+ std::string VobFName(VobPos& pos, const std::string& suffix)
+ {
+ using Mpeg::set_hms;
+- return (str::stream("Video") << set_hms() << int(pos.Vts())
+- << "-" << set_hms() << pos.VobId() << suffix << ".vob").str();
++ str::stream ss ("Video");
++ ss << set_hms() << int(pos.Vts())
++ << "-" << set_hms() << pos.VobId() << suffix << ".vob";
++ return ss.str();
+ }
+
+ typedef boost::function<void(int, double)> VobTimeFnr;
+@@ -282,9 +284,11 @@
+ static void TryDVDReadBlocks(dvd_file_t* file, int off, size_t cnt, char* buf)
+ {
+ int real_cnt = DVDReadBlocks(file, off, cnt, (unsigned char*)buf);
+- if( (int)cnt != real_cnt )
+- throw std::runtime_error( (str::stream() << real_cnt <<
+- " != DVDReadBlocks(" << cnt << ")").str() );
++ if( (int)cnt != real_cnt ) {
++ str::stream ss;
++ ss << real_cnt << " != DVDReadBlocks(" << cnt << ")";
++ throw std::runtime_error( ss.str() );
++ }
+ }
+
+ // размер буфера должен соответствовать читаемому диапазону
+diff -ruN old/src/mdemux/mpeg2demux.cpp new/src/mdemux/mpeg2demux.cpp
+--- old/src/mdemux/mpeg2demux.cpp 2017-06-01 14:48:30.110355679 +0430
++++ new/src/mdemux/mpeg2demux.cpp 2017-06-01 14:55:35.784165916 +0430
+@@ -71,7 +71,9 @@
+
+ static std::string MakePESKey(int id, const char* ext)
+ {
+- return (str::stream() << id << "." << ext).str();
++ str::stream ss;
++ ss << id << "." << ext;
++ return ss.str();
+ }
+
+ static bool ReadPart(io::stream& strm, uint8_t* buf, int sz, int& len)
+@@ -110,7 +112,9 @@
+ ASSERT(0);
+ }
+
+- std::string header_str = (str::stream() << sample_rate << ":" << channels << ":" << bps << ".lpcm").str();
++ str::stream ss;
++ ss << sample_rate << ":" << channels << ":" << bps << ".lpcm";
++ std::string header_str = ss.str();
+ return MakePESKey(track, header_str.c_str());
+ }
+
+diff -ruN old/src/mdemux/seek.cpp new/src/mdemux/seek.cpp
+--- old/src/mdemux/seek.cpp 2017-06-01 14:48:30.110355679 +0430
++++ new/src/mdemux/seek.cpp 2017-06-01 14:52:09.669280234 +0430
+@@ -37,8 +37,10 @@
+ int hh = min / 60;
+ int mm = min - hh*60;
+
+- return (str::stream() << set_hms() << hh << ":"
+- << set_hms() << mm << ":" << set_hms() << ss).str();
++ str::stream strss;
++ strss << set_hms() << hh << ":"
++ << set_hms() << mm << ":" << set_hms() << ss;
++ return strss.str();
+ }
+
+ bool MediaInfo::InitBegin(VideoLine& vl)
+diff -ruN old/src/mlib/sdk/misc.cpp new/src/mlib/sdk/misc.cpp
+--- old/src/mlib/sdk/misc.cpp 2017-06-01 14:48:30.120355606 +0430
++++ new/src/mlib/sdk/misc.cpp 2017-06-01 14:53:25.504549937 +0430
+@@ -173,12 +173,16 @@
+ std::string Double2Str(double val)
+ {
+ //return boost::format("%1%") % val % bf::stop;
+- return (str::stream() << val).str();
++ str::stream ss;
++ ss << val;
++ return ss.str();
+ }
+
+ std::string Int2Str(int val)
+ {
+- return (str::stream() << val).str();
++ str::stream ss;
++ ss << val;
++ return ss.str();
+ }
+
+ static bool ICaseMatch(const std::string& str, const std::string& pat_str)
+diff -ruN old/src/mlib/sdk/system.cpp new/src/mlib/sdk/system.cpp
+--- old/src/mlib/sdk/system.cpp 2017-06-01 14:48:30.120355606 +0430
++++ new/src/mlib/sdk/system.cpp 2017-06-01 14:54:13.980777662 +0430
+@@ -28,7 +28,9 @@
+ int GetMemSize()
+ {
+ pid_t pid = getpid();
+- std::string str = (str::stream() << "/proc/" << pid << "/statm").str();
++ str::stream ss;
++ ss << "/proc/" << pid << "/statm";
++ std::string str = ss.str();
+
+ io::stream strm(str.c_str(), iof::in);
+ int mem;
diff --git a/multimedia/bombono-dvd/patches/fix_throw_specifications.patch b/multimedia/bombono-dvd/patches/fix_throw_specifications.patch
new file mode 100644
index 0000000000..f2f4c40d4f
--- /dev/null
+++ b/multimedia/bombono-dvd/patches/fix_throw_specifications.patch
@@ -0,0 +1,24 @@
+diff -ruN old/src/mbase/project/table.h new/src/mbase/project/table.h
+--- old/src/mbase/project/table.h 2017-06-01 13:54:44.086895687 +0430
++++ new/src/mbase/project/table.h 2017-06-01 13:55:58.089107253 +0430
+@@ -128,7 +128,7 @@
+ void ClearSettings();
+
+ void Load(const std::string& fname,
+- const std::string& cur_dir = std::string()) throw (std::exception);
++ const std::string& cur_dir = std::string());
+ bool Save();
+
+ bool SaveAs(const std::string& fname,
+diff -ruN old/src/mbase/project/srl-db.cpp new/src/mbase/project/srl-db.cpp
+--- old/src/mbase/project/srl-db.cpp 2017-06-01 14:25:09.495468141 +0430
++++ new/src/mbase/project/srl-db.cpp 2017-06-01 14:41:49.699901753 +0430
+@@ -102,7 +102,7 @@
+ }
+
+ void ADatabase::Load(const std::string& fname,
+- const std::string& cur_dir) throw (std::exception)
++ const std::string& cur_dir)
+ {
+ try
+ {
diff --git a/multimedia/cantata/cantata.SlackBuild b/multimedia/cantata/cantata.SlackBuild
index dc67fd6e88..9e04b66105 100644
--- a/multimedia/cantata/cantata.SlackBuild
+++ b/multimedia/cantata/cantata.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=cantata
-VERSION=${VERSION:-2.0.1}
+VERSION=${VERSION:-2.4.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/multimedia/cantata/cantata.info b/multimedia/cantata/cantata.info
index ef59fb5c29..1b53526d07 100644
--- a/multimedia/cantata/cantata.info
+++ b/multimedia/cantata/cantata.info
@@ -1,8 +1,8 @@
PRGNAM="cantata"
-VERSION="2.0.1"
+VERSION="2.4.1"
HOMEPAGE="https://github.com/CDrummond/cantata"
-DOWNLOAD="https://github.com/CDrummond/cantata/archive/v2.0.1/cantata-2.0.1.tar.gz"
-MD5SUM="db916af5dad5063d31e1ab43fac61ffa"
+DOWNLOAD="https://github.com/CDrummond/cantata/archive/v2.4.1/cantata-2.4.1.tar.gz"
+MD5SUM="c60dfdb23cfb4e6c2acca118e116f613"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="ffmpeg"
diff --git a/multimedia/ccextractor/ccextractor-0.88-fno-common.patch b/multimedia/ccextractor/ccextractor-0.88-fno-common.patch
new file mode 100644
index 0000000000..1f42132bf8
--- /dev/null
+++ b/multimedia/ccextractor/ccextractor-0.88-fno-common.patch
@@ -0,0 +1,55 @@
+From dfd25022e2a775a8b5eb03e4ad28bab6fe6a0658 Mon Sep 17 00:00:00 2001
+From: Ed Marshall <esm@logic.net>
+Date: Sat, 1 Feb 2020 15:03:22 -0800
+Subject: [PATCH] Fix multiple definitions with new -fno-common default in GCC
+ 10
+
+---
+ ccextractor.c | 3 +++
+ ccextractor.h | 4 ++--
+ lib_ccx/ccx_decoders_708.h | 4 ++--
+ 3 files changed, 7 insertions(+), 4 deletions(-)
+
+diff --git a/ccextractor.c b/ccextractor.c
+index a2fb0a24f..8ed27936d 100644
+--- a/ccextractor.c
++++ b/ccextractor.c
+@@ -9,6 +9,9 @@ License: GPL 2.0
+
+ volatile int terminate_asap = 0;
+
++struct ccx_s_options ccx_options;
++struct lib_ccx_ctx *signal_ctx;
++
+ void sigusr1_handler(int sig)
+ {
+ mprint("Caught SIGUSR1. Filename Change Requested\n");
+diff --git a/ccextractor.h b/ccextractor.h
+index 4e9ae68f6..e5cde3055 100644
+--- a/ccextractor.h
++++ b/ccextractor.h
+@@ -41,8 +41,8 @@ char * api_param(struct ccx_s_options* api_options, int count);
+ #endif
+
+
+-struct ccx_s_options ccx_options;
+-struct lib_ccx_ctx *signal_ctx;
++extern struct ccx_s_options ccx_options;
++extern struct lib_ccx_ctx *signal_ctx;
+ //volatile int terminate_asap = 0;
+
+ struct ccx_s_options* api_init_options();
+diff --git a/lib_ccx/ccx_decoders_708.h b/lib_ccx/ccx_decoders_708.h
+index 324f3890d..df52c6002 100644
+--- a/lib_ccx/ccx_decoders_708.h
++++ b/lib_ccx/ccx_decoders_708.h
+@@ -371,7 +371,7 @@ void ccx_dtvcc_process_service_block(ccx_dtvcc_ctx *dtvcc,
+ unsigned char *data,
+ int data_length);
+
+-ccx_dtvcc_pen_color ccx_dtvcc_default_pen_color;
+-ccx_dtvcc_pen_attribs ccx_dtvcc_default_pen_attribs;
++extern ccx_dtvcc_pen_color ccx_dtvcc_default_pen_color;
++extern ccx_dtvcc_pen_attribs ccx_dtvcc_default_pen_attribs;
+
+ #endif
diff --git a/multimedia/ccextractor/ccextractor.SlackBuild b/multimedia/ccextractor/ccextractor.SlackBuild
index 78018a2b3b..56f59a96f8 100644
--- a/multimedia/ccextractor/ccextractor.SlackBuild
+++ b/multimedia/ccextractor/ccextractor.SlackBuild
@@ -79,6 +79,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Thanks gentoo for this patch!
+( cd ../src ; patch -p1 < $CWD/ccextractor-0.88-fno-common.patch )
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./autogen.sh
diff --git a/multimedia/cinelerra/README b/multimedia/cinelerra/README
index 3ddd60f57e..321c71df3f 100644
--- a/multimedia/cinelerra/README
+++ b/multimedia/cinelerra/README
@@ -1,5 +1,7 @@
cinelerra (GNU/Linux Video/Audio Studio)
+5.x variant of Cinelerra by WP Morrow (aka goodguy).
+
Cinelerra CV is the most advanced non-linear video editor and compositor
for Linux. It does primarily 3 main things: capturing, compositing,
and editing audio and video with sample level accuracy.
diff --git a/multimedia/cinelerra/cinelerra.SlackBuild b/multimedia/cinelerra/cinelerra.SlackBuild
index dfc6c9308c..5be43e80db 100644
--- a/multimedia/cinelerra/cinelerra.SlackBuild
+++ b/multimedia/cinelerra/cinelerra.SlackBuild
@@ -23,9 +23,8 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=cinelerra
-SRCNAM=CinelerraCV
-VERSION=${VERSION:-2.3}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-20210211_54b918a}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
@@ -66,9 +65,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.xz
-cd $SRCNAM-$VERSION
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -77,32 +76,29 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
./autogen.sh
-LDFLAGS="-ldl" \
-CFLAGS="$SLKCFLAGS -D__STDC_CONSTANT_MACROS" \
-CXXFLAGS="$SLKCFLAGS -D__STDC_CONSTANT_MACROS" \
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--libdir=/usr/lib${LIBDIRSUFFIX} \
- --with-plugindir=/usr/lib${LIBDIRSUFFIX}/cinelerra \
- --disable-static \
+ --with-plugin-dir=/usr/lib${LIBDIRSUFFIX}/cin \
--mandir=/usr/man \
- --with-pic \
- --with-x \
- --enable-opengl \
--build=$ARCH-slackware-linux \
$mmx
-make
-make install DESTDIR=$PKG
+make -j1
+make -j1 install DESTDIR=$PKG
+
+rm -f $PKG/usr/share/applications/cin.desktop
+install -D -m 0644 $CWD/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING ChangeLog INSTALL LICENSE NEWS README* TODO \
- $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a COPYING README* *.txt $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/multimedia/cinelerra/cinelerra.desktop b/multimedia/cinelerra/cinelerra.desktop
new file mode 100644
index 0000000000..b71239453c
--- /dev/null
+++ b/multimedia/cinelerra/cinelerra.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Name=cinelerra
+Comment=MultiMedia Editor
+Comment[fr]=Éditeur multimédia
+Categories=AudioVideo;AudioVideoEditing;
+Encoding=UTF-8
+Exec=cin
+Icon=/usr/share/pixmaps/cin.xpm
+Terminal=false
+Type=Application
diff --git a/multimedia/cinelerra/cinelerra.info b/multimedia/cinelerra/cinelerra.info
index e866c597cb..25b53cb265 100644
--- a/multimedia/cinelerra/cinelerra.info
+++ b/multimedia/cinelerra/cinelerra.info
@@ -1,8 +1,8 @@
PRGNAM="cinelerra"
-VERSION="2.3"
-HOMEPAGE="https://cinelerra-cv.org/"
-DOWNLOAD="https://gentoo.osuosl.org/distfiles/CinelerraCV-2.3.tar.xz"
-MD5SUM="a1e7bfaf9827f74900d58d25955bdf3f"
+VERSION="20210211_54b918a"
+HOMEPAGE="https://cinelerra-gg.org"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/cinelerra-20210211_54b918a.tar.xz"
+MD5SUM="8b79127fbe89858a22eaf41765cf0308"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="faac faad2 imlib2 libavc1394 libdv libiec61883 mjpegtools lame x264"
diff --git a/multimedia/cinelerra/slack-desc b/multimedia/cinelerra/slack-desc
index bbeb099ad8..fb333a1c70 100644
--- a/multimedia/cinelerra/slack-desc
+++ b/multimedia/cinelerra/slack-desc
@@ -8,12 +8,12 @@
|-----handy-ruler------------------------------------------------------|
cinelerra: cinelerra (GNU/Linux Video/Audio Studio)
cinelerra:
+cinelerra: 5.x variant of Cinelerra by WP Morrow (aka goodguy).
+cinelerra:
cinelerra: Cinelerra CV is the most advanced non-linear video editor
cinelerra: and compositor for Linux. It does primarily three main
cinelerra: things: capturing, compositing, and editing audio and
cinelerra: video with sample level accuracy.
cinelerra:
-cinelerra: Homepage: http://cinelerra-cv.org/
-cinelerra:
-cinelerra:
+cinelerra: Homepage: http://cinelerra-gg.org
cinelerra:
diff --git a/multimedia/dvdauthor/README b/multimedia/dvdauthor/README
deleted file mode 100644
index e2e4e08b5d..0000000000
--- a/multimedia/dvdauthor/README
+++ /dev/null
@@ -1,2 +0,0 @@
-dvdauthor is a program that will generate a DVD movie from a valid mpeg2
-stream. The movie should play when you put it in a standard DVD player.
diff --git a/multimedia/dvdauthor/dvdauthor.info b/multimedia/dvdauthor/dvdauthor.info
deleted file mode 100644
index 637ac2e379..0000000000
--- a/multimedia/dvdauthor/dvdauthor.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="dvdauthor"
-VERSION="0.7.2"
-HOMEPAGE="http://dvdauthor.sf.net"
-DOWNLOAD="http://downloads.sourceforge.net/dvdauthor/dvdauthor-0.7.2.tar.gz"
-MD5SUM="1173dcb8d40e74fc90c0f3a25dbd642d"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Edward W. Koenig"
-EMAIL="kingbeowulf@gmail.com"
diff --git a/multimedia/dvdauthor/slack-desc b/multimedia/dvdauthor/slack-desc
deleted file mode 100644
index 7305c61f0b..0000000000
--- a/multimedia/dvdauthor/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-dvdauthor: dvdauthor (A simple set of tools to help you author a DVD)
-dvdauthor:
-dvdauthor: dvdauthor is a program that will generate a DVD movie from a valid
-dvdauthor: mpeg2 stream.
-dvdauthor: The resulting movie should play in a standard DVD player.
-dvdauthor:
-dvdauthor: Homepage: http://dvdauthor.sf.net
-dvdauthor:
-dvdauthor:
-dvdauthor:
-dvdauthor:
diff --git a/multimedia/dvdstyler/dvdstyler.SlackBuild b/multimedia/dvdstyler/dvdstyler.SlackBuild
index b60c41a311..c6b120f88a 100644
--- a/multimedia/dvdstyler/dvdstyler.SlackBuild
+++ b/multimedia/dvdstyler/dvdstyler.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for dvdstyler
-# Copyright 2013-2018 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Copyright 2013-2019 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +24,7 @@
PRGNAM=dvdstyler
SPRGNAM=DVDStyler
-VERSION=${VERSION:-3.0.4}
+VERSION=${VERSION:-3.1.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/multimedia/dvdstyler/dvdstyler.info b/multimedia/dvdstyler/dvdstyler.info
index 69ed107c37..c6e20c260d 100644
--- a/multimedia/dvdstyler/dvdstyler.info
+++ b/multimedia/dvdstyler/dvdstyler.info
@@ -1,8 +1,8 @@
PRGNAM="dvdstyler"
-VERSION="3.0.4"
+VERSION="3.1.2"
HOMEPAGE="http://www.dvdstyler.org/"
-DOWNLOAD="http://downloads.sf.net/dvdstyler/DVDStyler-3.0.4.tar.bz2"
-MD5SUM="5008ea1488809fb0ca877b4e617ae5a7"
+DOWNLOAD="http://downloads.sf.net/dvdstyler/DVDStyler-3.1.2.tar.bz2"
+MD5SUM="8d5e977900ade9f57ae1e13c2e50b1ac"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="dvdauthor libavc1394 libmspack libquicktime mjpegtools mpgtx wxsvg"
diff --git a/multimedia/dvgrab/dvgrab.SlackBuild b/multimedia/dvgrab/dvgrab.SlackBuild
index f88b56e7ea..741b4911cd 100644
--- a/multimedia/dvgrab/dvgrab.SlackBuild
+++ b/multimedia/dvgrab/dvgrab.SlackBuild
@@ -71,7 +71,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -Wno-narrowing" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/multimedia/farsight2/farsight2.SlackBuild b/multimedia/farsight2/farsight2.SlackBuild
index e7f0d06355..c505f542bb 100644
--- a/multimedia/farsight2/farsight2.SlackBuild
+++ b/multimedia/farsight2/farsight2.SlackBuild
@@ -69,7 +69,11 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
+patch -p1 < $CWD/make-4.3.patch
+
+autoreconf -vif
+
+CFLAGS="$SLKCFLAGS -fcommon" \
CXXFLAGS="$SLKCFLAGS" \
LDFLAGS="-L/usr/lib${LIBDIRSUFFIX}" \
./configure \
diff --git a/multimedia/farsight2/make-4.3.patch b/multimedia/farsight2/make-4.3.patch
new file mode 100644
index 0000000000..f42517fb1a
--- /dev/null
+++ b/multimedia/farsight2/make-4.3.patch
@@ -0,0 +1,122 @@
+Matteo Bernardini <ponce@slackbuilds.org>
+fix it like https://gitweb.gentoo.org/repo/gentoo.git/plain/net-libs/farstream/files/farstream-0.2.8-make43.patch
+
+diff -Naur farsight2-0.0.31.orig/common/glib-gen.mak farsight2-0.0.31/common/glib-gen.mak
+--- farsight2-0.0.31.orig/common/glib-gen.mak 2010-10-08 18:38:56.000000000 +0200
++++ farsight2-0.0.31/common/glib-gen.mak 2021-02-16 09:48:20.885387000 +0100
+@@ -1,11 +1,13 @@
+ # these are the variables your Makefile.am should set
+ # the example is based on the colorbalance interface
+
++H := \#
++
+ #glib_enum_headers=$(colorbalance_headers)
+ #glib_enum_define=GST_COLOR_BALANCE
+ #glib_enum_prefix=gst_color_balance
+
+-enum_headers=$(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
++enum_headers=$(foreach h,$(glib_enum_headers),\n$(H)include \"$(h)\")
+
+ # these are all the rules generating the relevant files
+ %-marshal.h: %-marshal.list
+diff -Naur farsight2-0.0.31.orig/common/gst-glib-gen.mak farsight2-0.0.31/common/gst-glib-gen.mak
+--- farsight2-0.0.31.orig/common/gst-glib-gen.mak 2010-10-08 18:38:56.000000000 +0200
++++ farsight2-0.0.31/common/gst-glib-gen.mak 2021-02-16 09:47:43.231387000 +0100
+@@ -1,12 +1,14 @@
+ # these are the variables your Makefile.am should set
+ # the example is based on the colorbalance interface
+
++H := \#
++
+ #glib_enum_headers=$(colorbalance_headers)
+ #glib_enum_define=GST_COLOR_BALANCE
+ #glib_gen_prefix=gst_color_balance
+ #glib_gen_basename=colorbalance
+
+-enum_headers=$(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
++enum_headers=$(foreach h,$(glib_enum_headers),\n$(H)include \"$(h)\")
+
+ # these are all the rules generating the relevant files
+ $(glib_gen_basename)-marshal.h: $(glib_gen_basename)-marshal.list
+diff -Naur farsight2-0.0.31.orig/common-modified/gst-glib-gen.mak farsight2-0.0.31/common-modified/gst-glib-gen.mak
+--- farsight2-0.0.31.orig/common-modified/gst-glib-gen.mak 2011-09-07 22:20:18.000000000 +0200
++++ farsight2-0.0.31/common-modified/gst-glib-gen.mak 2021-02-16 09:48:55.282387000 +0100
+@@ -1,12 +1,14 @@
+ # these are the variables your Makefile.am should set
+ # the example is based on the colorbalance interface
+
++H := \#
++
+ #glib_enum_headers=$(colorbalance_headers)
+ #glib_enum_define=GST_COLOR_BALANCE
+ #glib_gen_prefix=gst_color_balance
+ #glib_gen_basename=colorbalance
+
+-enum_headers=$(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
++enum_headers=$(foreach h,$(glib_enum_headers),\n$(H)include \"$(h)\")
+
+ # these are all the rules generating the relevant files
+ $(glib_gen_basename)-marshal.h: $(glib_gen_basename)-marshal.list
+diff -Naur farsight2-0.0.31.orig/gst/fsrtpconference/Makefile.in farsight2-0.0.31/gst/fsrtpconference/Makefile.in
+--- farsight2-0.0.31.orig/gst/fsrtpconference/Makefile.in 2011-10-10 21:59:55.000000000 +0200
++++ farsight2-0.0.31/gst/fsrtpconference/Makefile.in 2021-02-16 09:49:52.456387000 +0100
+@@ -18,6 +18,8 @@
+ # these are the variables your Makefile.am should set
+ # the example is based on the colorbalance interface
+
++H := \#
++
+ #glib_enum_headers=$(colorbalance_headers)
+ #glib_enum_define=GST_COLOR_BALANCE
+ #glib_gen_prefix=gst_color_balance
+@@ -458,7 +460,7 @@
+ glib_enum_define = FS_RTP
+ glib_gen_prefix = _fs_rtp
+ glib_gen_basename = fs-rtp
+-enum_headers = $(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
++enum_headers = $(foreach h,$(glib_enum_headers),\n$(H)include \"$(h)\")
+ all: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) all-am
+
+diff -Naur farsight2-0.0.31.orig/gst-libs/gst/farsight/Makefile.in farsight2-0.0.31/gst-libs/gst/farsight/Makefile.in
+--- farsight2-0.0.31.orig/gst-libs/gst/farsight/Makefile.in 2011-10-10 21:59:55.000000000 +0200
++++ farsight2-0.0.31/gst-libs/gst/farsight/Makefile.in 2021-02-16 09:50:34.663387000 +0100
+@@ -18,6 +18,8 @@
+ # these are the variables your Makefile.am should set
+ # the example is based on the colorbalance interface
+
++H := \#
++
+ #glib_enum_headers=$(colorbalance_headers)
+ #glib_enum_define=GST_COLOR_BALANCE
+ #glib_gen_prefix=gst_color_balance
+@@ -438,7 +440,7 @@
+ glib_enum_define = FS
+ glib_gen_prefix = _fs
+ glib_gen_basename = fs
+-enum_headers = $(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
++enum_headers = $(foreach h,$(glib_enum_headers),\n$(H)include \"$(h)\")
+ all: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) all-am
+
+diff -Naur farsight2-0.0.31.orig/transmitters/rawudp/Makefile.in farsight2-0.0.31/transmitters/rawudp/Makefile.in
+--- farsight2-0.0.31.orig/transmitters/rawudp/Makefile.in 2011-10-10 21:59:56.000000000 +0200
++++ farsight2-0.0.31/transmitters/rawudp/Makefile.in 2021-02-16 09:51:10.249387000 +0100
+@@ -18,6 +18,8 @@
+ # these are the variables your Makefile.am should set
+ # the example is based on the colorbalance interface
+
++H := \#
++
+ #glib_enum_headers=$(colorbalance_headers)
+ #glib_enum_define=GST_COLOR_BALANCE
+ #glib_gen_prefix=gst_color_balance
+@@ -392,7 +394,7 @@
+ glib_enum_define = FS_RAWUDP
+ glib_gen_prefix = _fs_rawudp
+ glib_gen_basename = fs-rawudp
+-enum_headers = $(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
++enum_headers = $(foreach h,$(glib_enum_headers),\n$(H)include \"$(h)\")
+ all: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) all-am
+
diff --git a/multimedia/farstream/README b/multimedia/farstream/README
deleted file mode 100644
index 8a038afcdf..0000000000
--- a/multimedia/farstream/README
+++ /dev/null
@@ -1,7 +0,0 @@
-The Farstream (formerly Farsight) project is an effort to create
-a framework to deal with all known audio/video conferencing
-protocols. On one side it offers a generic API that makes it possible
-to write plugins for different streaming protocols, on the other
-side it offers an API for clients to use those plugins.
-
-Optionally requires valgrind
diff --git a/multimedia/farstream/farstream.info b/multimedia/farstream/farstream.info
deleted file mode 100644
index ec55d941aa..0000000000
--- a/multimedia/farstream/farstream.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="farstream"
-VERSION="0.2.8"
-HOMEPAGE="http://www.freedesktop.org/wiki/Software/Farstream/"
-DOWNLOAD="https://freedesktop.org/software/farstream/releases/farstream/farstream-0.2.8.tar.gz"
-MD5SUM="a40d4c4bd0812c270069b9f97d74009b"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="libnice"
-MAINTAINER="Thorn Inurcide"
-EMAIL="thorn_inurcide@zoho.com"
diff --git a/multimedia/farstream/slack-desc b/multimedia/farstream/slack-desc
deleted file mode 100644
index 840ddaeed6..0000000000
--- a/multimedia/farstream/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-farstream: farstream (framework to deal with all known conferencing protocols)
-farstream:
-farstream: The Farstream (formerly Farsight) project is an effort to create
-farstream: a framework to deal with all known audio/video conferencing
-farstream: protocols. On one side it offers a generic API that makes it possible
-farstream: to write plugins for different streaming protocols, on the other
-farstream: side it offers an API for clients to use those plugins.
-farstream:
-farstream:
-farstream:
-farstream: Home: http://www.freedesktop.org/wiki/Software/Farstream/
diff --git a/multimedia/ffmpeg/README b/multimedia/ffmpeg/README
deleted file mode 100644
index 09b08b00df..0000000000
--- a/multimedia/ffmpeg/README
+++ /dev/null
@@ -1,70 +0,0 @@
-ffmpeg (Software to record, convert and stream audio and video)
-
-FFmpeg is a complete solution to record, convert and stream audio
-and video. It includes libavcodec, the leading audio/video codec
-library.
-
-You can enable a lot of optional (not-autodetected) features by
-passing variables to the script (VAR=yes/no ./ffmpeg.SlackBuild):
-ASS=yes|no (default: no), requires libass
-BLURAY=yes|no (default: no), requires libbluray
-BS2B=yes|no (default: no), requires libbs2b
-CELT=yes|no (default: no), requires celt
-CHROMAPRINT=yes|no (default: no), requires chromaprint
-DC1394=yes|no (default: no), requires libdc1394
-DECKLINK=yes|no (default: no), requires decklink-sdk
-EBUR128=yes|no (default: no), requires libebur128
-FDK_AAC=yes|no (default: no), requires libfdk-aac (creates non-redistributable binary)
-FLITE=yes|no (default: no), requires flite
-FREI0R=yes|no (default: no), requires frei0r
-GME=yes|no (default: no), requires libgme
-GSM=yes|no (default: no), requires gsm
-IEC61883=yes|no (default: no), requires libiec61883 and libavc1394
-ILBC=yes|no (default: no), requires libilbc
-LADSPA=yes|no (default: no), requires ladspa_sdk
-LAME=yes|no (default: no), requires lame
-MODPLUG=yes|no (default: no), requires libmodplug
-NETCDF=yes|no (default: no), requires netcdf
-OPENAL=yes|no (default: no), requires OpenAL
-OPENCORE=yes|no (default: no), requires opencore-amr
-OPENCV=yes|no (default: no), requires opencv-legacy
-OPENSSL=yes|no (default: no), creates non-redistributable binary
-OPUS=yes|no (default: no), requires opus
-RTMP=yes|no (default: no), requires rtmpdump
-RUBBERBAND=yes|no (default: no), requires rubberband
-SCHROEDINGER=yes|no (default: no), requires schroedinger
-SNAPPY=yes|no (default: no), requires snappy
-SPEEX=yes|no (default: no), requires speex
-TESSERACT=yes|no (default: no), requires tesseract
-TWOLAME=yes|no (default: no), requires twolame
-VIDSTAB=yes|no (default: no), requires vid.stab
-WEBP=yes|no (default: no), requires libwebp
-X264=yes|no (default: no), requires x264
-X265=yes|no (default: no), requires x265
-XVID=yes|no (default: no), requires xvidcore
-ZMQ=yes|no (default: no), requires zeromq
-ZVBI=yes|no (default: no), requires zvbi
-
-Additional optional (autodetected) dependencies are jack and SDL2. The
-latter is needed for building ffplay.
-
-Further, there are some more features with dependencies already available
-in core Slackware. These are enabled by default, but can be disabled similar
-to the other switches above:
-CACA=yes|no (default: yes)
-FONTCONFIG=yes|no (default: yes)
-FREETYPE=yes|no (default: yes)
-FRIBIDI=yes|no (default: yes)
-GNUTLS=yes|no (default: yes)
-JP2=yes|no (default: yes)
-LIBCDIO=yes|no (default: yes)
-LIBSSH=yes|no (default: yes)
-OPENGL=yes|no (default: yes)
-PULSEAUDIO=yes|no (default: yes)
-SAMBA=yes|no (default: yes)
-THEORA=yes|no (default: yes)
-V4L2=yes|no (default: yes)
-VORBIS=yes|no (default: yes)
-VPX=yes|no (default: yes)
-WAVPACK=yes|no (default: yes)
-X11GRAB=yes|no (default: yes)
diff --git a/multimedia/ffmpeg/ffmpeg-3.2.4-libfdk_aac-2.0.0.patch b/multimedia/ffmpeg/ffmpeg-3.2.4-libfdk_aac-2.0.0.patch
deleted file mode 100644
index 03d831d72d..0000000000
--- a/multimedia/ffmpeg/ffmpeg-3.2.4-libfdk_aac-2.0.0.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- libavcodec/libfdk-aacenc.c.orig 2017-02-10 23:25:26.000000000 +1000
-+++ libavcodec/libfdk-aacenc.c 2018-12-10 07:59:22.515000000 +1000
-@@ -286,7 +286,7 @@
- }
-
- avctx->frame_size = info.frameLength;
-- avctx->initial_padding = info.encoderDelay;
-+ avctx->initial_padding = info.nDelay;
- ff_af_queue_init(avctx, &s->afq);
-
- if (avctx->flags & AV_CODEC_FLAG_GLOBAL_HEADER) {
diff --git a/multimedia/ffmpeg/ffmpeg-3.2.4-openjpeg2.3.patch b/multimedia/ffmpeg/ffmpeg-3.2.4-openjpeg2.3.patch
deleted file mode 100644
index 65e17d4449..0000000000
--- a/multimedia/ffmpeg/ffmpeg-3.2.4-openjpeg2.3.patch
+++ /dev/null
@@ -1,102 +0,0 @@
-diff -Naur ffmpeg-3.2.4.orig/configure ffmpeg-3.2.4/configure
---- ffmpeg-3.2.4.orig/configure 2017-02-10 14:25:25.000000000 +0100
-+++ ffmpeg-3.2.4/configure 2017-10-12 08:36:03.395867915 +0200
-@@ -1831,6 +1831,8 @@
- machine_ioctl_meteor_h
- malloc_h
- opencv2_core_core_c_h
-+ openjpeg_2_3_openjpeg_h
-+ openjpeg_2_2_openjpeg_h
- openjpeg_2_1_openjpeg_h
- openjpeg_2_0_openjpeg_h
- openjpeg_1_5_openjpeg_h
-@@ -5721,7 +5723,11 @@
- require opencv opencv2/core/core_c.h cvCreateImageHeader -lopencv_core -lopencv_imgproc; } ||
- require_pkg_config opencv opencv/cxcore.h cvCreateImageHeader; }
- enabled libopenh264 && require_pkg_config openh264 wels/codec_api.h WelsGetCodecVersion
--enabled libopenjpeg && { { check_lib2 openjpeg-2.1/openjpeg.h opj_version -lopenjp2 -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } ||
-+enabled libopenjpeg && { { check_lib2 openjpeg-2.3/openjpeg.h opj_version -lopenjp2 -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } ||
-+ check_lib2 openjpeg-2.3/openjpeg.h opj_version -lopenjp2 ||
-+ { check_lib2 openjpeg-2.2/openjpeg.h opj_version -lopenjp2 -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } ||
-+ check_lib2 openjpeg-2.2/openjpeg.h opj_version -lopenjp2 ||
-+ { check_lib2 openjpeg-2.1/openjpeg.h opj_version -lopenjp2 -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } ||
- check_lib2 openjpeg-2.1/openjpeg.h opj_version -lopenjp2 ||
- { check_lib2 openjpeg-2.0/openjpeg.h opj_version -lopenjp2 -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } ||
- { check_lib2 openjpeg-1.5/openjpeg.h opj_version -lopenjpeg -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } ||
-diff -Naur ffmpeg-3.2.4.orig/libavcodec/libopenjpegdec.c ffmpeg-3.2.4/libavcodec/libopenjpegdec.c
---- ffmpeg-3.2.4.orig/libavcodec/libopenjpegdec.c 2017-02-10 14:25:26.000000000 +0100
-+++ ffmpeg-3.2.4/libavcodec/libopenjpegdec.c 2017-10-12 08:38:20.676315554 +0200
-@@ -34,7 +34,11 @@
- #include "internal.h"
- #include "thread.h"
-
--#if HAVE_OPENJPEG_2_1_OPENJPEG_H
-+#if HAVE_OPENJPEG_2_3_OPENJPEG_H
-+# include <openjpeg-2.3/openjpeg.h>
-+#elif HAVE_OPENJPEG_2_2_OPENJPEG_H
-+# include <openjpeg-2.2/openjpeg.h>
-+#elif HAVE_OPENJPEG_2_1_OPENJPEG_H
- # include <openjpeg-2.1/openjpeg.h>
- #elif HAVE_OPENJPEG_2_0_OPENJPEG_H
- # include <openjpeg-2.0/openjpeg.h>
-@@ -44,7 +48,7 @@
- # include <openjpeg.h>
- #endif
-
--#if HAVE_OPENJPEG_2_1_OPENJPEG_H || HAVE_OPENJPEG_2_0_OPENJPEG_H
-+#if HAVE_OPENJPEG_2_3_OPENJPEG_H || HAVE_OPENJPEG_2_2_OPENJPEG_H || HAVE_OPENJPEG_2_1_OPENJPEG_H || HAVE_OPENJPEG_2_0_OPENJPEG_H
- # define OPENJPEG_MAJOR_VERSION 2
- # define OPJ(x) OPJ_##x
- #else
-@@ -429,7 +433,7 @@
- opj_stream_set_read_function(stream, stream_read);
- opj_stream_set_skip_function(stream, stream_skip);
- opj_stream_set_seek_function(stream, stream_seek);
--#if HAVE_OPENJPEG_2_1_OPENJPEG_H
-+#if HAVE_OPENJPEG_2_3_OPENJPEG_H || HAVE_OPENJPEG_2_2_OPENJPEG_H || HAVE_OPENJPEG_2_1_OPENJPEG_H
- opj_stream_set_user_data(stream, &reader, NULL);
- #elif HAVE_OPENJPEG_2_0_OPENJPEG_H
- opj_stream_set_user_data(stream, &reader);
-diff -Naur ffmpeg-3.2.4.orig/libavcodec/libopenjpegenc.c ffmpeg-3.2.4/libavcodec/libopenjpegenc.c
---- ffmpeg-3.2.4.orig/libavcodec/libopenjpegenc.c 2017-02-10 14:25:26.000000000 +0100
-+++ ffmpeg-3.2.4/libavcodec/libopenjpegenc.c 2017-10-12 08:40:43.411456456 +0200
-@@ -32,7 +32,11 @@
- #include "avcodec.h"
- #include "internal.h"
-
--#if HAVE_OPENJPEG_2_1_OPENJPEG_H
-+#if HAVE_OPENJPEG_2_3_OPENJPEG_H
-+# include <openjpeg-2.3/openjpeg.h>
-+#elif HAVE_OPENJPEG_2_2_OPENJPEG_H
-+# include <openjpeg-2.2/openjpeg.h>
-+#elif HAVE_OPENJPEG_2_1_OPENJPEG_H
- # include <openjpeg-2.1/openjpeg.h>
- #elif HAVE_OPENJPEG_2_0_OPENJPEG_H
- # include <openjpeg-2.0/openjpeg.h>
-@@ -42,7 +46,7 @@
- # include <openjpeg.h>
- #endif
-
--#if HAVE_OPENJPEG_2_1_OPENJPEG_H || HAVE_OPENJPEG_2_0_OPENJPEG_H
-+#if HAVE_OPENJPEG_2_3_OPENJPEG_H || HAVE_OPENJPEG_2_2_OPENJPEG_H || HAVE_OPENJPEG_2_1_OPENJPEG_H || HAVE_OPENJPEG_2_0_OPENJPEG_H
- # define OPENJPEG_MAJOR_VERSION 2
- # define OPJ(x) OPJ_##x
- #else
-@@ -306,7 +310,7 @@
-
- opj_set_default_encoder_parameters(&ctx->enc_params);
-
--#if HAVE_OPENJPEG_2_1_OPENJPEG_H
-+#if HAVE_OPENJPEG_2_3_OPENJPEG_H || HAVE_OPENJPEG_2_2_OPENJPEG_H || HAVE_OPENJPEG_2_1_OPENJPEG_H
- switch (ctx->cinema_mode) {
- case OPJ_CINEMA2K_24:
- ctx->enc_params.rsiz = OPJ_PROFILE_CINEMA_2K;
-@@ -771,7 +775,7 @@
- opj_stream_set_write_function(stream, stream_write);
- opj_stream_set_skip_function(stream, stream_skip);
- opj_stream_set_seek_function(stream, stream_seek);
--#if HAVE_OPENJPEG_2_1_OPENJPEG_H
-+#if HAVE_OPENJPEG_2_3_OPENJPEG_H || HAVE_OPENJPEG_2_2_OPENJPEG_H || HAVE_OPENJPEG_2_1_OPENJPEG_H
- opj_stream_set_user_data(stream, &writer, NULL);
- #elif HAVE_OPENJPEG_2_0_OPENJPEG_H
- opj_stream_set_user_data(stream, &writer);
diff --git a/multimedia/ffmpeg/ffmpeg.SlackBuild b/multimedia/ffmpeg/ffmpeg.SlackBuild
deleted file mode 100644
index 8b83fcca42..0000000000
--- a/multimedia/ffmpeg/ffmpeg.SlackBuild
+++ /dev/null
@@ -1,261 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for ffmpeg
-
-# Copyright 2010-2017 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2017 Patrick J. Volkerding, Sebeka, MN, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-# Originally written by core (eroc@linuxmail.org)
-# Modified by Robby Workman <rworkman@slackbuilds.org>
-
-PRGNAM=ffmpeg
-VERSION=${VERSION:-3.2.4}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-# You can enable a lot of optional (not-autodetected) features by
-# passing variables to the script (VAR=yes/no ./ffmpeg.SlackBuild).
-# Unfortunately ffmpeg's configure doesn't support --enable-feature=yes
-# syntax, so we have to do it the complicated way :/
-# Additional optional (autodetected) dependencies are:
-# - jack
-# - libva
-# - libvdpau
-# - libX11
-# - libxcb
-# - sdl2
-# - xz
-# - zlib
-
-mp3lame="" ; [ "${LAME:-no}" != "no" ] && mp3lame="--enable-libmp3lame"
-libx264="" ; [ "${X264:-no}" != "no" ] && libx264="--enable-libx264"
-libcelt="" ; [ "${CELT:-no}" != "no" ] && libcelt="--enable-libcelt"
-libdc1394="" ; [ "${DC1394:-no}" != "no" ] && libdc1394="--enable-libdc1394"
-libfrei0r="" ; [ "${FREI0R:-no}" != "no" ] && libfrei0r="--enable-frei0r"
-libgsm="" ; [ "${GSM:-no}" != "no" ] && libgsm="--enable-libgsm"
-librtmp="" ; [ "${RTMP:-no}" != "no" ] && librtmp="--enable-librtmp"
-dirac_fast="" ; [ "${SCHROEDINGER:-no}" != "no" ] && dirac_fast="--enable-libschroedinger"
-libspeex="" ; [ "${SPEEX:-no}" != "no" ] && libspeex="--enable-libspeex"
-libxvid="" ; [ "${XVID:-no}" != "no" ] && libxvid="--enable-libxvid"
-libbluray="" ; [ "${BLURAY:-no}" != "no" ] && libbluray="--enable-libbluray"
-libass="" ; [ "${ASS:-no}" != "no" ] && libass="--enable-libass"
-libopenal="" ; [ "${OPENAL:-no}" != "no" ] && libopenal="--enable-openal"
-libiec61883=""; [ "${IEC61883:-no}" != "no" ] && libiec61883="--enable-libiec61883"
-libilbc="" ; [ "${ILBC:-no}" != "no" ] && libilbc="--enable-libilbc"
-libmodplug="" ; [ "${MODPLUG:-no}" != "no" ] && libmodplug="--enable-libmodplug"
-libopus="" ; [ "${OPUS:-no}" != "no" ] && libopus="--enable-libopus"
-libtwolame="" ; [ "${TWOLAME:-no}" != "no" ] && libtwolame="--enable-libtwolame"
-ladspa="" ; [ "${LADSPA:-no}" != "no" ] && ladspa="--enable-ladspa"
-libflite="" ; [ "${FLITE:-no}" != "no" ] && libflite="--enable-libflite"
-libvidstab="" ; [ "${VIDSTAB:-no}" != "no" ] && libvidstab="--enable-libvidstab"
-libx265="" ; [ "${X265:-no}" != "no" ] && libx265="--enable-libx265"
-libzvbi="" ; [ "${ZVBI:-no}" != "no" ] && libzvbi="--enable-libzvbi"
-libopencv="" ; [ "${OPENCV:-no}" != "no" ] && libopencv="--enable-libopencv"
-libgme="" ; [ "${GME:-no}" != "no" ] && libgme="--enable-libgme"
-libsnappy="" ; [ "${SNAPPY:-no}" != "no" ] && libsnappy="--enable-libsnappy"
-libwebp="" ; [ "${WEBP:-no}" != "no" ] && libwebp="--enable-libwebp"
-libzmq="" ; [ "${ZMQ:-no}" != "no" ] && libzmq="--enable-libzmq"
-libbs2b="" ; [ "${BS2B:-no}" != "no" ] && libbs2b="--enable-libbs2b"
-libebur128="" ; [ "${EBUR128:-no}" != "no" ] && libebur128="--enable-libebur128"
-rubberband="" ; [ "${RUBBERBAND:-no}" != "no" ] && rubberband="--enable-librubberband"
-tesseract="" ; [ "${TESSERACT:-no}" != "no" ] && tesseract="--enable-libtesseract"
-netcdf="" ; [ "${NETCDF:-no}" != "no" ] && netcdf="--enable-netcdf"
-chromaprint="" ; [ "${CHROMAPRINT:-no}" != "no" ] && chromaprint="--enable-chromaprint"
-opencore_amr="" ; [ "${OPENCORE:-no}" != "no" ] && \
- opencore_amr="--enable-libopencore-amrnb --enable-libopencore-amrwb"
-fdk="" ; [ "${FDK_AAC:-no}" != "no" ] && \
- { fdk="--enable-libfdk-aac"; non_free="--enable-nonfree" ; }
-ssl="" ; [ "${OPENSSL:-no}" != "no" ] && \
- { ssl="--enable-openssl" ; non_free="--enable-nonfree" ; }
-decklink="" ; [ "${DECKLINK:-no}" != "no" ] && \
- { decklink="--enable-decklink" ; \
- SLKCFLAGS="$SLKCFLAGS -I/usr/include/decklink" ; }
-
-# Default enabled features:
-#opencl="" ; [ "${OPENCL:-yes}" != "no" ] && opencl="--enable-opencl"
-fontconfig="" ; [ "${FONTCONFIG:-yes}" != "no" ] && fontconfig="--enable-libfontconfig"
-freetype="" ; [ "${FREETYPE:-yes}" != "no" ] && freetype="--enable-libfreetype"
-fribidi="" ; [ "${FRIBIDI:-yes}" != "no" ] && fribidi="--enable-libfribidi"
-gnutls="" ; [ "${GNUTLS:-yes}" != "no" ] && gnutls="--enable-gnutls"
-libcaca="" ; [ "${CACA:-yes}" != "no" ] && libcaca="--enable-libcaca"
-libcdio="" ; [ "${LIBCDIO:-yes}" != "no" ] && libcdio="--enable-libcdio"
-libssh="" ; [ "${LIBSSH:-yes}" != "no" ] && libssh="--enable-libssh"
-libtheora="" ; [ "${THEORA:-yes}" != "no" ] && libtheora="--enable-libtheora"
-libv4l2="" ; [ "${V4L2:-yes}" != "no" ] && libv4l2="--enable-libv4l2"
-libvorbis="" ; [ "${VORBIS:-yes}" != "no" ] && libvorbis="--enable-libvorbis"
-libvpx="" ; [ "${VPX:-yes}" != "no" ] && libvpx="--enable-libvpx"
-opengl="" ; [ "${OPENGL:-yes}" != "no" ] && opengl="--enable-opengl"
-openjpeg="" ; [ "${JP2:-yes}" != "no" ] && openjpeg="--enable-libopenjpeg"
-pulse="" ; [ "${PULSEAUDIO:-yes}" != "no" ] && pulse="--enable-libpulse"
-samba="" ; [ "${SAMBA:-yes}" != "no" ] && samba="--enable-libsmbclient"
-wavpack="" ; [ "${WAVPACK:-yes}" != "no" ] && wavpack="--enable-libwavpack"
-x11grab="" ; [ "${X11GRAB:-yes}" != "no" ] && x11grab="--enable-x11grab"
-
-# Disable patent encumbered features:
-aac="" ; [ "${AAC:-yes}" != "yes" ] && aac="--disable-encoder=aac"
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# Patch for openjpeg-2.3.0
-patch -p1 < $CWD/ffmpeg-3.2.4-openjpeg2.3.patch
-
-#patch for libfdk-aac 2.0.0
-patch -p0 < $CWD/ffmpeg-3.2.4-libfdk_aac-2.0.0.patch
-
-# Fix linking with flite:
-sed -i "s| -lflite\"| -lflite -lm -lasound\"|" \
- ./configure
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --shlibdir=/usr/lib${LIBDIRSUFFIX} \
- --docdir=/usr/doc/$PRGNAM-$VERSION/html \
- --mandir=/usr/man \
- --disable-debug \
- --enable-shared \
- --disable-static \
- --enable-gpl \
- --enable-version3 \
- --enable-avresample \
- --arch=$ARCH \
- $non_free \
- $aac \
- $chromaprint \
- $decklink \
- $dirac_fast \
- $fdk \
- $fontconfig \
- $freetype \
- $fribidi \
- $gnutls \
- $ladspa \
- $libass \
- $libbluray \
- $libbs2b \
- $libcaca \
- $libcdio \
- $libcelt \
- $libdc1394 \
- $libebur128 \
- $libflite \
- $libfrei0r \
- $libgme \
- $libgsm \
- $libiec61883 \
- $libilbc \
- $libmodplug \
- $libopenal \
- $libopencv \
- $libopus \
- $librtmp \
- $libsnappy \
- $libspeex \
- $libssh \
- $libtheora \
- $libtwolame \
- $libv4l2 \
- $libvidstab \
- $libvorbis \
- $libvpx \
- $libwebp \
- $libx264 \
- $libx265 \
- $libxvid \
- $libzmq \
- $libzvbi \
- $mp3lame \
- $netcdf \
- $opencore_amr \
- $opengl \
- $openjpeg \
- $pulse \
- $rubberband \
- $samba \
- $ssl \
- $tesseract \
- $wavpack \
- $x11grab
-
-make
-make install DESTDIR=$PKG
-make install-man DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | \
- grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/txt
-cp -a Changelog COPYING* CREDITS INSTALL* LICENSE* MAINTAINERS README* \
- RELEASE VERSION \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a doc/*.txt $PKG/usr/doc/$PRGNAM-$VERSION/txt/
-find . -name "RELEASE_NOTES" -exec cp -a {} $PKG/usr/doc/$PRGNAM-$VERSION/ \;
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/multimedia/ffmpeg/ffmpeg.info b/multimedia/ffmpeg/ffmpeg.info
deleted file mode 100644
index f187f17aa0..0000000000
--- a/multimedia/ffmpeg/ffmpeg.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="ffmpeg"
-VERSION="3.2.4"
-HOMEPAGE="http://www.ffmpeg.org"
-DOWNLOAD="http://www.ffmpeg.org/releases/ffmpeg-3.2.4.tar.xz"
-MD5SUM="39fd71024ac76ba35f04397021af5606"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="%README%"
-MAINTAINER="Heinz Wiesinger"
-EMAIL="pprkut@liwjatan.at"
diff --git a/multimedia/ffmpeg/slack-desc b/multimedia/ffmpeg/slack-desc
deleted file mode 100644
index 6d47b332b4..0000000000
--- a/multimedia/ffmpeg/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-ffmpeg: ffmpeg (Software to record, convert and stream audio and video)
-ffmpeg:
-ffmpeg: FFmpeg is a complete solution to record, convert and stream audio
-ffmpeg: and video. It includes libavcodec, the leading audio/video codec
-ffmpeg: library. FFmpeg is developed under Linux, but it can compiled
-ffmpeg: under most operating systems, including Windows.
-ffmpeg:
-ffmpeg: Homepage: http://ffmpeg.mplayerhq.hu
-ffmpeg:
-ffmpeg:
-ffmpeg:
diff --git a/multimedia/ffmpeg4/README b/multimedia/ffmpeg4/README
deleted file mode 100644
index 76b26f3a96..0000000000
--- a/multimedia/ffmpeg4/README
+++ /dev/null
@@ -1,86 +0,0 @@
-ffmpeg4 (Software to record, convert and stream audio and video).
-
-ffmpeg4 should be installable alongside ffmpeg 3.x without conflict.
-
-FFmpeg is a complete solution to record, convert and stream audio
-and video. It includes libavcodec, the leading audio/video codec
-library.
-
-By default it will not build the ffmpeg binaries or man-pages, in order
-not to conflict with an ffmpeg 3.x package. You can change this by
-using the following environment variable setting:
-
- BINS=yes
-
-It can optionally link to a number of extra libraries that are available
-on SBo by setting the relevant env vars, which all default to "no":
-
- CHROMAPRINT=yes # requires chromaprint
- CUDA=yes # requires cudatoolkit & nv-codec-headers
- DECKLINK=yes # requires decklink-sdk
- FREI0R=yes # requires frei0r
- LADSPA=yes # requires ladspa_sdk
- LIBBLURAY=yes # requires libbluray
- LIBBS2B=yes # requires libbs2b
- LIBCELT=yes # requires celt
- LIBDC1394=yes # requires libdc1394
- LIBFDK_AAC=yes # requires libfdk-aac (non-redistributable)
- LIBFLITE=yes # requires flite
- LIBGME=yes # requires libgme
- LIBGSM=yes # requires gsm
- LIBIEC61883=yes # requires libiec61883 and libavc1394
- LIBILBC=yes # requires libilbc
- LIBMODPLUG=yes # requires libmodplug
- LIBMP3LAME=yes # requires lame
- LIBOPENCORE=yes # requires opencore-amr
- LIBOPENCV=yes # requires opencv
- LIBOPUS=yes # requires opus
- LIBRTMP=yes # requires rtmpdump
- LIBRUBBERBAND=yes # requires rubberband
- LIBSNAPPY=yes # requires snappy
- LIBSPEEX=yes # requires speex
- LIBTESSERACT=yes # requires tesseract
- LIBTWOLAME=yes # requires twolame
- LIBVIDSTAB=yes # requires vid.stab
- LIBXVID=yes # requires xvidcore
- LIBZMQ=yes # requires zeromq
- LIBZVBI=yes # requires zvbi
-
-By default, ffmpeg4 is built to link with openssl. This creates a non-
-redistributable binary (just like linking with libfdk-aac does). If you
-want a redistributable binary you can change from linking with openssl
-to linking with gnutls instead by setting:
-
- OPENSSL=no
- GNUTLS=yes
-
-Both of these libraries are available in Slackware itself.
-
-There are a few other libraries available in Slackware that are also
-linked to by default, and you can disable them by changing the default
-of "yes" to "no" with the following settings:
-
- LIBAOM=no
- LIBCACA=no
- LIBCDIO=no
- LIBFONTCONFIG=no
- LIBFREETYPE=no
- LIBFRIBIDI=no
- LIBOPENJPEG=no
- LIBPULSE=no
- LIBSMBCLIENT=no
- LIBSSH=no
- LIBTHEORA=no
- LIBV4L2=no
- LIBVORBIS=no
- LIBVPX=no
- LIBWAVPACK=no
- LIBWEBP=no
- LIBX264=no
- LIBX265=no
- OPENGL=no
-
-To link to this version of the ffmpeg libraries, you'll need to set
-the PKG_CONFIG_PATH to "/usr/lib${LIBDIRSUFFIX}/ffmpeg4/pkgconfig"
-where ${LIBDIRSUFFIX} is either 64 or an empty string, depending on
-your architecture.
diff --git a/multimedia/ffmpeg4/ffmpeg4.SlackBuild b/multimedia/ffmpeg4/ffmpeg4.SlackBuild
deleted file mode 100644
index 30f00771d1..0000000000
--- a/multimedia/ffmpeg4/ffmpeg4.SlackBuild
+++ /dev/null
@@ -1,238 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for ffmpeg4
-
-# Copyright 2018 Andreas Guldstrand
-# All rights reserved.
-# Copyright (c) 2020-2021 Christoph Willing Brisbane/Australia
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=ffmpeg4
-SRCNAM=ffmpeg
-VERSION=${VERSION:-4.3.2}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-enable() {
- VAR="$1"; shift
- DEF="$1"; shift
- YES="$1"; shift
- NO="$1"; shift
- eval "$VAR=\${$VAR:-$DEF}"
- eval "enable_$VAR=\"$NO\""
- eval "[ \"\$$VAR\" = \"yes\" ] && enable_$VAR=\"$YES\""
-}
-
-# set "enable_$VAR" variables
- # ENV VAR DEFAULT IF YES IF NO
-enable "BINS" "no" "" "--disable-programs --disable-manpages"
-enable "CHROMAPRINT" "no" "--enable-chromaprint" ""
-enable "CUDA" "no" "--enable-nonfree --enable-cuda-sdk --enable-libnpp" ""
-enable "DECKLINK" "no" "--enable-decklink" ""
-enable "FREI0R" "no" "--enable-frei0r" ""
-enable "GNUTLS" "no" "--enable-gnutls" ""
-enable "LADSPA" "no" "--enable-ladspa" ""
-enable "LIBAOM" "yes" "--enable-libaom" ""
-enable "LIBBLURAY" "no" "--enable-libbluray" ""
-enable "LIBBS2B" "no" "--enable-libbs2b" ""
-enable "LIBCACA" "yes" "--enable-libcaca" ""
-enable "LIBCDIO" "yes" "--enable-libcdio" ""
-enable "LIBCELT" "no" "--enable-libcelt" ""
-enable "LIBDC1394" "no" "--enable-libdc1394" ""
-enable "LIBFDK_AAC" "no" "--enable-nonfree --enable-libfdk_aac" ""
-enable "LIBFLITE" "no" "--enable-libflite" ""
-enable "LIBFONTCONFIG" "yes" "--enable-libfontconfig" ""
-enable "LIBFREETYPE" "yes" "--enable-libfreetype" ""
-enable "LIBFRIBIDI" "yes" "--enable-libfribidi" ""
-enable "LIBGME" "no" "--enable-libgme" ""
-enable "LIBGSM" "no" "--enable-libgsm" ""
-enable "LIBIEC61883" "no" "--enable-libiec61883" ""
-enable "LIBILBC" "no" "--enable-libilbc" ""
-enable "LIBMODPLUG" "no" "--enable-libmodplug" ""
-enable "LIBMP3LAME" "no" "--enable-libmp3lame" ""
-enable "LIBOPENCORE" "no" "--enable-libopencore-amrnb --enable-libopencore-amrwb" ""
-enable "LIBOPENCV" "no" "--enable-libopencv" ""
-enable "LIBOPENJPEG" "yes" "--enable-libopenjpeg" ""
-enable "LIBOPUS" "no" "--enable-libopus" ""
-enable "LIBPULSE" "yes" "--enable-libpulse" ""
-enable "LIBRTMP" "no" "--enable-librtmp" ""
-enable "LIBRUBBERBAND" "no" "--enable-librubberband" ""
-enable "LIBSMBCLIENT" "yes" "--enable-libsmbclient" ""
-enable "LIBSNAPPY" "no" "--enable-libsnappy" ""
-enable "LIBSPEEX" "no" "--enable-libspeex" ""
-enable "LIBSSH" "yes" "--enable-libssh" ""
-enable "LIBTESSERACT" "no" "--enable-libtesseract" ""
-enable "LIBTHEORA" "yes" "--enable-libtheora" ""
-enable "LIBTWOLAME" "no" "--enable-libtwolame" ""
-enable "LIBV4L2" "yes" "--enable-libv4l2" ""
-enable "LIBVIDSTAB" "no" "--enable-libvidstab" ""
-enable "LIBVORBIS" "yes" "--enable-libvorbis" ""
-enable "LIBVPX" "yes" "--enable-libvpx" ""
-enable "LIBWAVPACK" "yes" "--enable-libwavpack" ""
-enable "LIBWEBP" "yes" "--enable-libwebp" ""
-enable "LIBX264" "yes" "--enable-libx264" ""
-enable "LIBX265" "yes" "--enable-libx265" ""
-enable "LIBXVID" "no" "--enable-libxvid" ""
-enable "LIBZMQ" "no" "--enable-libzmq" ""
-enable "LIBZVBI" "no" "--enable-libzvbi" ""
-enable "OPENAL" "no" "--enable-openal" ""
-enable "OPENGL" "yes" "--enable-opengl" ""
-enable "OPENSSL" "yes" "--enable-nonfree --enable-openssl" ""
-
-[ "$DECKLINK" = "yes" ] && SLKCFLAGS="$SLKCFLAGS -I/usr/include/decklink"
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.bz2
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX}/ffmpeg4 \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION/html \
- --incdir=/usr/include/ffmpeg4 \
- --datadir=/usr/share/ffmpeg4 \
- --enable-rpath \
- --disable-podpages \
- --disable-txtpages \
- --arch=$ARCH \
- --enable-gpl \
- --enable-version3 \
- --enable-shared \
- --disable-static \
- --disable-debug \
- --enable-libass \
- $enable_BINS \
- $enable_CHROMAPRINT \
- $enable_CUDA \
- $enable_DECKLINK \
- $enable_FREI0R \
- $enable_GNUTLS \
- $enable_LADSPA \
- $enable_LIBAOM \
- $enable_LIBBLURAY \
- $enable_LIBBS2B \
- $enable_LIBCACA \
- $enable_LIBCDIO \
- $enable_LIBCELT \
- $enable_LIBDC1394 \
- $enable_LIBFDK_AAC \
- $enable_LIBFLITE \
- $enable_LIBFONTCONFIG \
- $enable_LIBFREETYPE \
- $enable_LIBFRIBIDI \
- $enable_LIBGME \
- $enable_LIBGSM \
- $enable_LIBIEC61883 \
- $enable_LIBILBC \
- $enable_LIBMODPLUG \
- $enable_LIBMP3LAME \
- $enable_LIBOPENCORE \
- $enable_LIBOPENCV \
- $enable_LIBOPENJPEG \
- $enable_LIBOPUS \
- $enable_LIBPULSE \
- $enable_LIBRTMP \
- $enable_LIBRUBBERBAND \
- $enable_LIBSMBCLIENT \
- $enable_LIBSNAPPY \
- $enable_LIBSPEEX \
- $enable_LIBSSH \
- $enable_LIBTESSERACT \
- $enable_LIBTHEORA \
- $enable_LIBTWOLAME \
- $enable_LIBV4L2 \
- $enable_LIBVIDSTAB \
- $enable_LIBVORBIS \
- $enable_LIBVPX \
- $enable_LIBWAVPACK \
- $enable_LIBWEBP \
- $enable_LIBX264 \
- $enable_LIBX265 \
- $enable_LIBXVID \
- $enable_LIBZMQ \
- $enable_LIBZVBI \
- $enable_OPENAL \
- $enable_OPENGL \
- $enable_OPENSSL
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-if [ "$BINS" = "yes" ]; then
- find $PKG/usr/man -type f -exec gzip -9 {} \;
- for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- Changelog CONTRIBUTING.md COPYING.GPLv2 COPYING.GPLv3 COPYING.LGPLv2.1 COPYING.LGPLv3 \
- CREDITS INSTALL.md LICENSE.md MAINTAINERS README.md RELEASE RELEASE_NOTES VERSION \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/multimedia/ffmpeg4/ffmpeg4.info b/multimedia/ffmpeg4/ffmpeg4.info
deleted file mode 100644
index dad8d9f9a9..0000000000
--- a/multimedia/ffmpeg4/ffmpeg4.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="ffmpeg4"
-VERSION="4.3.2"
-HOMEPAGE="https://ffmpeg.org/"
-DOWNLOAD="https://ffmpeg.org/releases/ffmpeg-4.3.2.tar.bz2"
-MD5SUM="d84e0f81740adefa76d94ed8c3aa9006"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="aom libass libwebp x264 x265"
-MAINTAINER="Christoph Willing"
-EMAIL="chris.willing@linux.com"
diff --git a/multimedia/ffmpeg4/slack-desc b/multimedia/ffmpeg4/slack-desc
deleted file mode 100644
index 838032d34c..0000000000
--- a/multimedia/ffmpeg4/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-ffmpeg4: ffmpeg4 (Software to record, convert and stream audio and video)
-ffmpeg4:
-ffmpeg4: ffmpeg4 should be installable alongside ffmpeg 3.x without conflict.
-ffmpeg4:
-ffmpeg4: FFmpeg is a complete solution to record, convert and stream audio and
-ffmpeg4: video. It includes libavcodec, the leading audio/video codec library.
-ffmpeg4:
-ffmpeg4: Homepage: https://ffmpeg.org/
-ffmpeg4:
-ffmpeg4:
-ffmpeg4:
diff --git a/multimedia/gnash/gnash.SlackBuild b/multimedia/gnash/gnash.SlackBuild
index 99a4c07c84..af273fa898 100644
--- a/multimedia/gnash/gnash.SlackBuild
+++ b/multimedia/gnash/gnash.SlackBuild
@@ -23,8 +23,8 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=gnash
-VERSION=${VERSION:-0.8.10}
-BUILD=${BUILD:-7}
+VERSION=${VERSION:-20170308_8a11e60}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
@@ -78,33 +78,17 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
cd $PRGNAM-$VERSION
chown -R root:root .
-chmod -R u+w,go-w,a+rX-st .
-
-# Fix compilation with GCC 4.7.
-patch -p1 < $CWD/patch/gcc47.patch
-
-# Fix a boost linking error, paths for kde plugin, and a cve patch.
-# Ripped from gentoo
-patch -p1 < $CWD/patch/gnash-0.8.10-boost-1.50.patch
-patch -p1 < $CWD/patch/gnash-0.8.10-klash.patch
-patch -p1 < $CWD/patch/gnash-0.8.10-kde4-libdir.patch
-patch -p1 < $CWD/patch/gnash-0.8.10-cve-2012-1175.patch
-
-# Fix building with giflib-5.0
-# Also ripped from gentoo :-)
-patch -p1 < $CWD/patch/58dcdd9338d965e54c8f03ce3d2757388d82b7a3.patch
-patch -p1 < $CWD/patch/cc22f2d0597f3a9547980f4786d918f8b5635472.patch
-
-# Fix build with new Boost
-# Taken from ARCH
-patch -p1 < $CWD/patch/gnash-boost.patch
-
-# The FFmpeg engine doesn't compile with FFmpeg 0.11.1. Patches welcome.
-# In the meantime, set --enable-media=gst to avoid autodetecting FFmpeg.
-autoreconf -vif
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+./autogen.sh
+
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
@@ -115,14 +99,14 @@ autoreconf -vif
--docdir=/usr/doc/$PRGNAM-$VERSION \
--build=$ARCH-slackware-linux \
--disable-dependency-tracking \
- --enable-media=gst \
--enable-python \
--enable-ssh \
--enable-ssl \
--enable-write \
--without-gconf \
--with-plugins-install=system \
- --with-speexdsp-incl=/usr/include/speex \
+ --with-speexdsp-incl=/usr/include \
+ --disable-npapi \
$KLASH_OPT \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
diff --git a/multimedia/gnash/gnash.info b/multimedia/gnash/gnash.info
index 012dd88c5f..a9525da636 100644
--- a/multimedia/gnash/gnash.info
+++ b/multimedia/gnash/gnash.info
@@ -1,10 +1,10 @@
PRGNAM="gnash"
-VERSION="0.8.10"
+VERSION="20170308_8a11e60"
HOMEPAGE="https://www.gnu.org/software/gnash/"
-DOWNLOAD="ftp://ftp.gnu.org/pub/gnu/gnash/0.8.10/gnash-0.8.10.tar.bz2"
-MD5SUM="63e9f79c41d93d48c5a2fa94856548c4"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/gnash-20170308_8a11e60.tar.xz"
+MD5SUM="be7f2af072481869395d9f7f8c57cce1"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="agg xulrunner"
+REQUIRES="agg"
MAINTAINER="Kyle Guinn"
EMAIL="elyk03@gmail.com"
diff --git a/multimedia/gnash/patch/58dcdd9338d965e54c8f03ce3d2757388d82b7a3.patch b/multimedia/gnash/patch/58dcdd9338d965e54c8f03ce3d2757388d82b7a3.patch
deleted file mode 100644
index b3242ce0d3..0000000000
--- a/multimedia/gnash/patch/58dcdd9338d965e54c8f03ce3d2757388d82b7a3.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 58dcdd9338d965e54c8f03ce3d2757388d82b7a3 Mon Sep 17 00:00:00 2001
-From: gustavo <gbuschle@hotmail.com>
-Date: Thu, 11 Sep 2014 14:12:17 +0000
-Subject: Add support for giflib 5.1
-
----
-diff --git a/libbase/GnashImageGif.cpp b/libbase/GnashImageGif.cpp
-index 84b09ce..2ae5ddb 100644
---- a/libbase/GnashImageGif.cpp
-+++ b/libbase/GnashImageGif.cpp
-@@ -120,7 +120,11 @@ GifInput::GifInput(std::shared_ptr<IOChannel> in)
- GifInput::~GifInput()
- {
- // Clean up allocated data.
-- DGifCloseFile(_gif);
-+#if GIFLIB_MAJOR==5 && GIFLIB_MINOR==1
-+ DGifCloseFile(_gif, 0);
-+#else
-+ DGifCloseFile(_gif);
-+#endif
- }
-
- size_t
---
-cgit v0.9.0.2
diff --git a/multimedia/gnash/patch/cc22f2d0597f3a9547980f4786d918f8b5635472.patch b/multimedia/gnash/patch/cc22f2d0597f3a9547980f4786d918f8b5635472.patch
deleted file mode 100644
index 6e90737d51..0000000000
--- a/multimedia/gnash/patch/cc22f2d0597f3a9547980f4786d918f8b5635472.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From cc22f2d0597f3a9547980f4786d918f8b5635472 Mon Sep 17 00:00:00 2001
-From: OBATA Akio <obata@lins.jp>
-Date: Mon, 15 Jul 2013 07:16:39 +0000
-Subject: Add support fir GIFLIB-5.0 (bug #39482)
-
-Signed-off-by: Sandro Santilli <strk@keybit.net>
----
-diff --git a/libbase/GnashImageGif.cpp b/libbase/GnashImageGif.cpp
-index eeba4b7..26865c1 100644
---- a/libbase/GnashImageGif.cpp
-+++ b/libbase/GnashImageGif.cpp
-@@ -269,7 +269,17 @@ GifInput::processRecord(GifRecordType record)
- void
- GifInput::read()
- {
-+#if GIFLIB_MAJOR >= 5
-+ int errorCode;
-+ _gif = DGifOpen(_inStream.get(), &readData, &errorCode);
-+#else
- _gif = DGifOpen(_inStream.get(), &readData);
-+#endif
-+
-+ if ( ! _gif ) {
-+ // TODO: decode errorCode if available
-+ throw ParserException("Could not open input GIF stream");
-+ }
-
- GifRecordType record;
-
---
-cgit v0.9.0.2
diff --git a/multimedia/gnash/patch/gcc47.patch b/multimedia/gnash/patch/gcc47.patch
deleted file mode 100644
index 7886b097c9..0000000000
--- a/multimedia/gnash/patch/gcc47.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff --git a/plugin/klash4/klash_part.cpp b/plugin/klash4/klash_part.cpp
---- a/plugin/klash4/klash_part.cpp
-+++ b/plugin/klash4/klash_part.cpp
-@@ -27,6 +27,7 @@
- #include <QByteArray>
- #include <QMenu>
- #include <QTimer>
-+#include <unistd.h>
-
- #include <klibloader.h>
- #include <kdebug.h>
diff --git a/multimedia/gnash/patch/gnash-0.8.10-boost-1.50.patch b/multimedia/gnash/patch/gnash-0.8.10-boost-1.50.patch
deleted file mode 100644
index 23282d1e89..0000000000
--- a/multimedia/gnash/patch/gnash-0.8.10-boost-1.50.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff -ur a/macros/boost.m4 b/macros/boost.m4
---- a/macros/boost.m4 2012-09-03 17:11:43.000000000 +0200
-+++ b/macros/boost.m4 2012-10-16 01:58:28.000000000 +0200
-@@ -37,7 +37,7 @@
- boost_headers="detail/lightweight_mutex.hpp thread/thread.hpp multi_index_container.hpp multi_index/key_extractors.hpp thread/mutex.hpp program_options/options_description.hpp iostreams/stream.hpp"
- dnl this is a list of *required* libraries. If any of these are missing, this
- dnl test will return a failure, and Gnash won't build.
-- boost_libs="thread program_options iostreams"
-+ boost_libs="thread program_options iostreams system"
-
- dnl this is a list of *recommended* libraries. If any of these are missing, this
- dnl test will return a warning, and Gnash will build, but testing won't work.
-diff -ur a/plugin/npapi/Makefile.am b/plugin/npapi/Makefile.am
---- a/plugin/npapi/Makefile.am 2012-09-03 17:11:43.000000000 +0200
-+++ b/plugin/npapi/Makefile.am 2012-10-16 01:58:57.000000000 +0200
-@@ -78,7 +78,7 @@
-
- libgnashplugin_la_LIBADD = \
- $(GLIB_LIBS) \
-- -lboost_iostreams \
-+ $(BOOST_LIBS) \
- $(NULL)
-
- # Scriptable plugin support
diff --git a/multimedia/gnash/patch/gnash-0.8.10-cve-2012-1175.patch b/multimedia/gnash/patch/gnash-0.8.10-cve-2012-1175.patch
deleted file mode 100644
index 9a218d9216..0000000000
--- a/multimedia/gnash/patch/gnash-0.8.10-cve-2012-1175.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From bb4dc77eecb6ed1b967e3ecbce3dac6c5e6f1527 Mon Sep 17 00:00:00 2001
-From: Benjamin Wolsey <bwy@benjaminwolsey.de>
-Date: Sat, 10 Mar 2012 14:52:50 +0000
-Subject: Fix crash in GnashImage.cpp
-
----
-diff --git a/libbase/GnashImage.cpp b/libbase/GnashImage.cpp
-index 11c6956..03a6939 100644
---- a/libbase/GnashImage.cpp
-+++ b/libbase/GnashImage.cpp
-@@ -26,6 +26,7 @@
- #include <boost/scoped_array.hpp>
- #include <boost/shared_ptr.hpp>
- #include <algorithm>
-+#include <cassert>
-
- #ifdef USE_PNG
- # include "GnashImagePng.h"
-@@ -44,6 +45,21 @@ namespace image {
-
- namespace {
- void processAlpha(GnashImage::iterator imageData, size_t pixels);
-+ bool checkValidSize(size_t width, size_t height, size_t channels) {
-+
-+ if (width == 0 || height == 0) return false;
-+
-+ assert(channels > 0);
-+
-+ boost::uint32_t maxSize = std::numeric_limits<boost::int32_t>::max();
-+ if (width >= maxSize || height >= maxSize) return false;
-+
-+ maxSize /= channels;
-+ maxSize /= width;
-+ maxSize /= height;
-+
-+ return maxSize > 0;
-+ }
- }
-
- GnashImage::GnashImage(iterator data, size_t width, size_t height,
-@@ -55,6 +71,8 @@ GnashImage::GnashImage(iterator data, size_t width, size_t height,
- _height(height),
- _data(data)
- {
-+ // Callers should check dimensions
-+ assert(checkValidSize(_width, _height, channels()));
- }
-
- /// Create an image allocating a buffer of height*pitch bytes
-@@ -66,8 +84,9 @@ GnashImage::GnashImage(size_t width, size_t height, ImageType type,
- _width(width),
- _height(height)
- {
-- const size_t max = std::numeric_limits<boost::int32_t>::max();
-- if (size() > max) {
-+ // Constructed from external input, so restrict dimensions to avoid
-+ // overflow in size calculations
-+ if (!checkValidSize(_width, _height, channels())) {
- throw std::bad_alloc();
- }
- _data.reset(new value_type[size()]);
---
-cgit v0.9.0.2
diff --git a/multimedia/gnash/patch/gnash-0.8.10-kde4-libdir.patch b/multimedia/gnash/patch/gnash-0.8.10-kde4-libdir.patch
deleted file mode 100644
index b3279441d2..0000000000
--- a/multimedia/gnash/patch/gnash-0.8.10-kde4-libdir.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ur a/macros/kde4.m4 b/macros/kde4.m4
---- a/macros/kde4.m4 2011-02-26 19:11:08.000000000 +0100
-+++ b/macros/kde4.m4 2011-11-25 18:09:25.000000000 +0100
-@@ -198,7 +198,7 @@
- if test -d ${KDE4_PREFIX}/lib64 -a -f /etc/redhat-release; then
- KDE4_PLUGINDIR="${KDE4_PREFIX}/lib64/kde4"
- else
-- KDE4_PLUGINDIR="${KDE4_PREFIX}/lib/kde4"
-+ KDE4_PLUGINDIR="${KDE4_PREFIX}/${acl_libdirstem}/kde4"
- fi
- fi
- if test x"${with_kde4_servicesdir}" != x ; then
diff --git a/multimedia/gnash/patch/gnash-0.8.10-klash.patch b/multimedia/gnash/patch/gnash-0.8.10-klash.patch
deleted file mode 100644
index e6afec04d2..0000000000
--- a/multimedia/gnash/patch/gnash-0.8.10-klash.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ur a/macros/kde4.m4 b/macros/kde4.m4
---- a/macros/kde4.m4 2011-02-26 19:11:08.000000000 +0100
-+++ b/macros/kde4.m4 2011-03-21 00:04:38.845997945 +0100
-@@ -210,7 +210,7 @@
- KDE4_CONFIGDIR="${KDE4_PREFIX}/share/kde4/config"
- fi
- if test x"${KDE4_APPSDATADIR}" = x ; then
-- KDE4_APPSDATADIR="${KDE4_PREFIX}/share/kde4/apps/klash"
-+ KDE4_APPSDATADIR="${KDE4_PREFIX}/share/apps/klash"
- fi
-
- if test x"${ac_cv_path_kde4_incl}" != x ; then
diff --git a/multimedia/gnash/patch/gnash-boost.patch b/multimedia/gnash/patch/gnash-boost.patch
deleted file mode 100644
index 55208f1ae3..0000000000
--- a/multimedia/gnash/patch/gnash-boost.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- gnash-0.8.10/libbase/accumulator.h.orig 2016-02-08 02:56:17.059694787 +0700
-+++ gnash-0.8.10/libbase/accumulator.h 2016-02-08 02:57:58.375615249 +0700
-@@ -61,6 +61,11 @@
- virtual unsigned min_tokens() const { return 0; }
- virtual unsigned max_tokens() const { return 0; }
-
-+ #if BOOST_VERSION >= 105900
-+ /// There are no tokens, so this is indifferent.
-+ virtual bool adjacent_tokens_only() const { return false; }
-+ #endif
-+
- /// Accumulating from different sources is silly.
- virtual bool is_composing() const { return false; }
-
diff --git a/multimedia/gpac/gpac-ffmpeg-4.0.patch b/multimedia/gpac/gpac-ffmpeg-4.0.patch
new file mode 100644
index 0000000000..05132e19e8
--- /dev/null
+++ b/multimedia/gpac/gpac-ffmpeg-4.0.patch
@@ -0,0 +1,42 @@
+diff -rupN gpac-0.7.1.orig/applications/dashcast/video_encoder.c gpac-0.7.1/applications/dashcast/video_encoder.c
+--- gpac-0.7.1.orig/applications/dashcast/video_encoder.c 2018-04-26 09:19:52.938118328 +0200
++++ gpac-0.7.1/applications/dashcast/video_encoder.c 2018-04-26 09:20:03.165170164 +0200
+@@ -144,7 +144,7 @@ int dc_video_encoder_open(VideoOutputFil
+ }
+
+ //the global header gives access to the extradata (SPS/PPS)
+- video_output_file->codec_ctx->flags |= CODEC_FLAG_GLOBAL_HEADER;
++ video_output_file->codec_ctx->flags |= AV_CODEC_FLAG_GLOBAL_HEADER;
+
+ video_output_file->vstream_idx = 0;//video_stream->index;
+
+diff -rupN gpac-0.7.1.orig/modules/ffmpeg_in/ffmpeg_decode.c gpac-0.7.1/modules/ffmpeg_in/ffmpeg_decode.c
+--- gpac-0.7.1.orig/modules/ffmpeg_in/ffmpeg_decode.c 2018-04-26 09:19:53.034788555 +0200
++++ gpac-0.7.1/modules/ffmpeg_in/ffmpeg_decode.c 2018-04-26 09:30:09.739463486 +0200
+@@ -49,7 +49,7 @@
+ static uint8_t * ffmpeg_realloc_buffer(uint8_t * oldBuffer, u32 size) {
+ uint8_t * buffer;
+ /* Size of buffer must be larger, see avcodec_decode_video2 documentation */
+- u32 allocatedSz = sizeof( char ) * (FF_INPUT_BUFFER_PADDING_SIZE + size);
++ u32 allocatedSz = sizeof( char ) * (AV_INPUT_BUFFER_PADDING_SIZE + size);
+ if (oldBuffer)
+ gf_free(oldBuffer);
+ buffer = (uint8_t*)gf_malloc( allocatedSz );
+@@ -577,7 +577,7 @@ static GF_Err FFDEC_GetCapabilities(GF_B
+ capability->cap.valueInt = 1;
+ return GF_OK;
+ case GF_CODEC_PADDING_BYTES:
+- capability->cap.valueInt = FF_INPUT_BUFFER_PADDING_SIZE;
++ capability->cap.valueInt = AV_INPUT_BUFFER_PADDING_SIZE;
+ return GF_OK;
+ case GF_CODEC_REORDER:
+ capability->cap.valueInt = 1;
+@@ -669,7 +669,7 @@ static GF_Err FFDEC_GetCapabilities(GF_B
+ break;
+
+ case GF_CODEC_PADDING_BYTES:
+- capability->cap.valueInt = FF_INPUT_BUFFER_PADDING_SIZE;
++ capability->cap.valueInt = AV_INPUT_BUFFER_PADDING_SIZE;
+ break;
+ default:
+ capability->cap.valueInt = 0;
diff --git a/multimedia/gpac/gpac.SlackBuild b/multimedia/gpac/gpac.SlackBuild
index 396ceae938..c7cd430d33 100644
--- a/multimedia/gpac/gpac.SlackBuild
+++ b/multimedia/gpac/gpac.SlackBuild
@@ -88,6 +88,12 @@ find -L . \
# configure doesn't have --libdir option.
sed -i "s/^libdir=\".*\"$/libdir=\"lib$LIBDIRSUFFIX\"/" configure
+# remove this to let it build against openssl-1.1.x
+sed -i "/SSLeay_add_all_algorithms/d" src/utils/downloader.c
+
+# patch for ffmpeg-4.x
+patch -p1 < $CWD/gpac-ffmpeg-4.0.patch
+
./configure \
--prefix=/usr \
--mandir=/usr/man \
diff --git a/multimedia/gst-libav/README b/multimedia/gst-libav/README
deleted file mode 100644
index eca4522c85..0000000000
--- a/multimedia/gst-libav/README
+++ /dev/null
@@ -1,2 +0,0 @@
-This module contains a GStreamer plugin for libav, as well as an
-internal copy of the libav source code.
diff --git a/multimedia/gst-libav/gst-libav.SlackBuild b/multimedia/gst-libav/gst-libav.SlackBuild
deleted file mode 100644
index ed629a2f96..0000000000
--- a/multimedia/gst-libav/gst-libav.SlackBuild
+++ /dev/null
@@ -1,96 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for gst-libav
-
-# Copyright (C) 2010 Juan Valencia <jvalenciae@gmail.com>
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=gst-libav
-VERSION=${VERSION:-1.6.2}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-rm -rf $TMP/$PRGNAM-$VERSION
-cd $TMP
-tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS ChangeLog COPYING INSTALL NEWS README TODO \
- $PKG/usr/doc/$PRGNAM-$VERSION
-find $PKG/usr/doc/$PRGNAM-$VERSION -type f -exec chmod 644 {} \;
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/multimedia/gst-libav/gst-libav.info b/multimedia/gst-libav/gst-libav.info
deleted file mode 100644
index ab38270126..0000000000
--- a/multimedia/gst-libav/gst-libav.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="gst-libav"
-VERSION="1.6.2"
-HOMEPAGE="https://gstreamer.freedesktop.org/"
-DOWNLOAD="https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-1.6.2.tar.xz"
-MD5SUM="09644a38827d233f53edeac815dd0ec0"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Robby Workman"
-EMAIL="rworkman@slackbuilds.org"
diff --git a/multimedia/gst-libav/slack-desc b/multimedia/gst-libav/slack-desc
deleted file mode 100644
index 352ee23dbd..0000000000
--- a/multimedia/gst-libav/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-gst-libav: gst-libav (A GStreamer libav/ffmpeg plugin)
-gst-libav:
-gst-libav: This module contains a GStreamer plugin for libav as well as an
-gst-libav: internal copy of the libav source code.
-gst-libav:
-gst-libav: http://gstreamer.freedesktop.org/
-gst-libav:
-gst-libav:
-gst-libav:
-gst-libav:
-gst-libav:
diff --git a/multimedia/gst-plugins-bad/README b/multimedia/gst-plugins-bad/README
index d71085b6fc..55bb8a3365 100644
--- a/multimedia/gst-plugins-bad/README
+++ b/multimedia/gst-plugins-bad/README
@@ -3,8 +3,14 @@ to the rest. They might be close to being good quality, but they're missing
something - be it a good code review, some documentation, a set of tests,
a real live maintainer, or some actual wide use.
-This optionally depends on OpenAL, TiMidity++, amrnb, amrwb, celt, faac,
-faad2, flite, fluidsynth, gsm, libass, libcdaudio, libdc1394, libdca,
-libkate, liblrdf, libmimic, libmodplug, libmusicbrainz, libofa,
-libquicktime, libwebp, lv2, musepack-tools, opencv, rtmpdump,
-schroedinger, soundtouch, swfdec, and xvidcore.
+This optionally depends on TiMidity++, aom, amrnb, amrwb, celt, faac, faad2
+flite, gsm, libass, libcdaudio, libdc1394, libdca, libfdk-aac, libkate,
+liblrdf, libmimic, libmodplug, libmusicbrainz, libofa, libquicktime,
+lv2, musepack-tools, opencv, rtmpdump, schroedinger, soundtouch, swfdec
+nvidia*driver, and xvidcore.
+
+Note that if you have any version of the nvidia drivers installed the
+script will autodetect them and will try to build its nvdec support,
+requiring the presence on the system of cudatoolkit too: as cudatoolkit
+is *huge*, cuda support is disabled by default but it can be explicitly
+enabled passing the script the variable CUDA=yes
diff --git a/multimedia/gst-plugins-bad/gst-plugins-bad.SlackBuild b/multimedia/gst-plugins-bad/gst-plugins-bad.SlackBuild
index c9cfb68a14..d302667621 100644
--- a/multimedia/gst-plugins-bad/gst-plugins-bad.SlackBuild
+++ b/multimedia/gst-plugins-bad/gst-plugins-bad.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for gst-plugins-bad
-# Copyright 2013-2015 Robby Workman, Tuscaloosa, Alabama, USA
+# Copyright 2013-2021 Robby Workman, Tuscaloosa, Alabama, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=gst-plugins-bad
-VERSION=${VERSION:-1.6.2}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-1.18.3}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,8 +40,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -54,6 +54,12 @@ else
LIBDIRSUFFIX=""
fi
+if [ "${CUDA:-no}" != "no" ]; then
+ cuda=""
+else
+ cuda="--disable-cuda --disable-nvdec --disable-nvenc"
+fi
+
set -e
rm -rf $PKG
@@ -69,26 +75,29 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS -std=c++11" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
+mkdir build
+cd build
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ meson .. \
+ --buildtype=release \
+ --infodir=/usr/info \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ -Dexamples=disabled
+ ninja
+ DESTDIR=$PKG ninja install
+cd ..
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | \
grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- AUTHORS COPYING* ChangeLog INSTALL NEWS RE* \
+ AUTHORS COPYING* ChangeLog NEWS RE* \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/multimedia/gst-plugins-bad/gst-plugins-bad.info b/multimedia/gst-plugins-bad/gst-plugins-bad.info
index 553c0edef7..fe20da3a8c 100644
--- a/multimedia/gst-plugins-bad/gst-plugins-bad.info
+++ b/multimedia/gst-plugins-bad/gst-plugins-bad.info
@@ -1,8 +1,8 @@
PRGNAM="gst-plugins-bad"
-VERSION="1.6.2"
+VERSION="1.18.3"
HOMEPAGE="https://gstreamer.freedesktop.org/"
-DOWNLOAD="https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.6.2.tar.xz"
-MD5SUM="7c73bec1d389f0e184ebbbbb9e9f883d"
+DOWNLOAD="https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.18.3.tar.xz"
+MD5SUM="e2ff6ae97d5831124daf168d227a2980"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/multimedia/gst-plugins-ugly/gst-plugins-ugly.SlackBuild b/multimedia/gst-plugins-ugly/gst-plugins-ugly.SlackBuild
index a4e113d47c..901d1c11fd 100644
--- a/multimedia/gst-plugins-ugly/gst-plugins-ugly.SlackBuild
+++ b/multimedia/gst-plugins-ugly/gst-plugins-ugly.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for gst-plugins-ugly
-# Copyright 2013-2015 Robby Workman, Tuscaloosa, Alabama, USA
+# Copyright 2013-2021 Robby Workman, Tuscaloosa, Alabama, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=gst-plugins-ugly
-VERSION=${VERSION:-1.6.2}
+VERSION=${VERSION:-1.18.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,8 +40,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -69,26 +69,29 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
+mkdir build
+cd build
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ meson .. \
+ --buildtype=release \
+ --infodir=/usr/info \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ -Dexamples=disabled
+ ninja
+ DESTDIR=$PKG ninja install
+cd ..
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | \
grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- AUTHORS COPYING* ChangeLog INSTALL NEWS RE* \
+ AUTHORS COPYING* ChangeLog NEWS RE* \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/multimedia/gst-plugins-ugly/gst-plugins-ugly.info b/multimedia/gst-plugins-ugly/gst-plugins-ugly.info
index 1fc6a4908f..969fb9d792 100644
--- a/multimedia/gst-plugins-ugly/gst-plugins-ugly.info
+++ b/multimedia/gst-plugins-ugly/gst-plugins-ugly.info
@@ -1,8 +1,8 @@
PRGNAM="gst-plugins-ugly"
-VERSION="1.6.2"
+VERSION="1.18.3"
HOMEPAGE="https://gstreamer.freedesktop.org/"
-DOWNLOAD="https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-1.6.2.tar.xz"
-MD5SUM="0f0e30336e3155443cd5bfec5c215d56"
+DOWNLOAD="https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-1.18.3.tar.xz"
+MD5SUM="fe7b807ea4e91c757366ba209e553a99"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/multimedia/gst0-ffmpeg/gst0-ffmpeg.SlackBuild b/multimedia/gst0-ffmpeg/gst0-ffmpeg.SlackBuild
index bf58d16c6d..eb15077724 100644
--- a/multimedia/gst0-ffmpeg/gst0-ffmpeg.SlackBuild
+++ b/multimedia/gst0-ffmpeg/gst0-ffmpeg.SlackBuild
@@ -71,6 +71,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p1 < $CWD/orc-0.4.30.patch
+
# Fix for gcc-4.7.x
sed -i -e 's/"g"/"rm"/' gst-libs/ext/libav/libavcodec/x86/h264_qpel_mmx.c
diff --git a/multimedia/gst0-ffmpeg/orc-0.4.30.patch b/multimedia/gst0-ffmpeg/orc-0.4.30.patch
new file mode 100644
index 0000000000..8ad9796c07
--- /dev/null
+++ b/multimedia/gst0-ffmpeg/orc-0.4.30.patch
@@ -0,0 +1,26 @@
+https://anonhg.netbsd.org/pkgsrc/rev/b7ba46cae228
+
+diff -Naur gst-ffmpeg-0.10.13.orig/ext/libpostproc/gstpostproc.c gst-ffmpeg-0.10.13/ext/libpostproc/gstpostproc.c
+--- gst-ffmpeg-0.10.13.orig/ext/libpostproc/gstpostproc.c 2011-07-12 16:35:27.000000000 +0200
++++ gst-ffmpeg-0.10.13/ext/libpostproc/gstpostproc.c 2019-11-17 20:04:03.283000000 +0100
+@@ -299,7 +299,7 @@
+ ppflags = (mmx_flags & ORC_TARGET_MMX_MMX ? PP_CPU_CAPS_MMX : 0)
+ | (mmx_flags & ORC_TARGET_MMX_MMXEXT ? PP_CPU_CAPS_MMX2 : 0)
+ | (mmx_flags & ORC_TARGET_MMX_3DNOW ? PP_CPU_CAPS_3DNOW : 0)
+- | (altivec_flags & ORC_TARGET_ALTIVEC_ALTIVEC ? PP_CPU_CAPS_ALTIVEC :
++ | (altivec_flags & ORC_TARGET_POWERPC_ALTIVEC ? PP_CPU_CAPS_ALTIVEC :
+ 0);
+ #else
+ mmx_flags = 0;
+diff -Naur gst-ffmpeg-0.10.13.orig/ext/libswscale/gstffmpegscale.c gst-ffmpeg-0.10.13/ext/libswscale/gstffmpegscale.c
+--- gst-ffmpeg-0.10.13.orig/ext/libswscale/gstffmpegscale.c 2011-11-02 14:04:05.000000000 +0100
++++ gst-ffmpeg-0.10.13/ext/libswscale/gstffmpegscale.c 2019-11-17 20:05:18.947000000 +0100
+@@ -638,7 +638,7 @@
+ swsflags = (mmx_flags & ORC_TARGET_MMX_MMX ? SWS_CPU_CAPS_MMX : 0)
+ | (mmx_flags & ORC_TARGET_MMX_MMXEXT ? SWS_CPU_CAPS_MMX2 : 0)
+ | (mmx_flags & ORC_TARGET_MMX_3DNOW ? SWS_CPU_CAPS_3DNOW : 0)
+- | (altivec_flags & ORC_TARGET_ALTIVEC_ALTIVEC ? SWS_CPU_CAPS_ALTIVEC : 0);
++ | (altivec_flags & ORC_TARGET_POWERPC_ALTIVEC ? SWS_CPU_CAPS_ALTIVEC : 0);
+ #else
+ mmx_flags = 0;
+ altivec_flags = 0;
diff --git a/multimedia/gst0-plugins-bad/README b/multimedia/gst0-plugins-bad/README
deleted file mode 100644
index 5c3bfb00d8..0000000000
--- a/multimedia/gst0-plugins-bad/README
+++ /dev/null
@@ -1,9 +0,0 @@
-GStreamer Bad Plug-ins is a set of plug-ins that aren't up to par compared
-to the rest. They might be close to being good quality, but they're missing
-something - be it a good code review, some documentation, a set of tests,
-a real live maintainer, or some actual wide use.
-
-This optionally depends on libass, libcdaudio, celt, libdc1394, dirac,
-libdca, faac, faad, flite, gsm, libkate, liblrdf, slv2, libmms, libmodplug,
-libmimic, libmusicbrainz, libofa, OpenAL, opencv, TiMidity++, soundtouch,
-swfdec, xvidcore, schroedinger, and rtmpdump.
diff --git a/multimedia/gst0-plugins-bad/drop-vpx-compat-defines.patch b/multimedia/gst0-plugins-bad/drop-vpx-compat-defines.patch
deleted file mode 100644
index 599ec08a18..0000000000
--- a/multimedia/gst0-plugins-bad/drop-vpx-compat-defines.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-diff -up gst-plugins-bad-0.10.23/ext/vp8/gstvp8utils.h.drop-compat-defines gst-plugins-bad-0.10.23/ext/vp8/gstvp8utils.h
---- gst-plugins-bad-0.10.23/ext/vp8/gstvp8utils.h.drop-compat-defines 2015-04-07 09:28:01.637679239 -0400
-+++ gst-plugins-bad-0.10.23/ext/vp8/gstvp8utils.h 2015-04-07 09:28:10.397622550 -0400
-@@ -25,23 +25,6 @@
-
- G_BEGIN_DECLS
-
--/* Some compatibility defines for older libvpx versions */
--#ifndef VPX_IMG_FMT_I420
--#define VPX_IMG_FMT_I420 IMG_FMT_I420
--#endif
--
--#ifndef VPX_PLANE_Y
--#define VPX_PLANE_Y PLANE_Y
--#endif
--
--#ifndef VPX_PLANE_U
--#define VPX_PLANE_U PLANE_U
--#endif
--
--#ifndef VPX_PLANE_V
--#define VPX_PLANE_V PLANE_V
--#endif
--
- const char * gst_vpx_error_name (vpx_codec_err_t status);
-
- G_END_DECLS
diff --git a/multimedia/gst0-plugins-bad/gst0-plugins-bad.SlackBuild b/multimedia/gst0-plugins-bad/gst0-plugins-bad.SlackBuild
deleted file mode 100644
index c06474d672..0000000000
--- a/multimedia/gst0-plugins-bad/gst0-plugins-bad.SlackBuild
+++ /dev/null
@@ -1,111 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for gst0-plugins-bad
-
-# Copyright 2007-2011 Michiel van Wessem, Manchester, United Kingdom
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=gst0-plugins-bad
-VERSION=${VERSION:-0.10.23}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-SRCNAM=gst-plugins-bad
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar -xvf $CWD/$SRCNAM-$VERSION.tar.?z*
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-# Fix libmodplug include directory.
-patch -p1 < $CWD/libmodplug-include.patch
-
-# Fix build against libvpx 1.4.0.
-patch -p1 < $CWD/drop-vpx-compat-defines.patch
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/${PRGNAM-$VERSION} \
- --disable-static \
- --disable-musepack \
- --disable-opus \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/plugins
-cp -a AUTHORS COPYING* INSTALL NEWS README RELEASE REQUIREMENTS \
- docs/plugins/html docs/plugins/$SRCNAM-* $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/multimedia/gst0-plugins-bad/gst0-plugins-bad.info b/multimedia/gst0-plugins-bad/gst0-plugins-bad.info
deleted file mode 100644
index 726cbbe79d..0000000000
--- a/multimedia/gst0-plugins-bad/gst0-plugins-bad.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="gst0-plugins-bad"
-VERSION="0.10.23"
-HOMEPAGE="https://gstreamer.freedesktop.org/modules/gst-plugins-bad.html"
-DOWNLOAD="https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-0.10.23.tar.xz"
-MD5SUM="e4822fa2cc933768e2998311a1565979"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Michiel van Wessem"
-EMAIL="michiel@slackbuilds.org"
diff --git a/multimedia/gst0-plugins-bad/libmodplug-include.patch b/multimedia/gst0-plugins-bad/libmodplug-include.patch
deleted file mode 100644
index a38c5af9ab..0000000000
--- a/multimedia/gst0-plugins-bad/libmodplug-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur gst-plugins-bad-0.10.23.orig/ext/modplug/gstmodplug.cc gst-plugins-bad-0.10.23/ext/modplug/gstmodplug.cc
---- gst-plugins-bad-0.10.23.orig/ext/modplug/gstmodplug.cc 2012-01-18 12:32:55.000000000 +0000
-+++ gst-plugins-bad-0.10.23/ext/modplug/gstmodplug.cc 2015-02-03 16:31:44.428094306 +0000
-@@ -50,7 +50,7 @@
- #define WORDS_BIGENDIAN 0
- #endif
-
--#include <stdafx.h>
-+#include <libmodplug/stdafx.h>
- #include <libmodplug/sndfile.h>
-
- #include "gstmodplug.h"
diff --git a/multimedia/gst0-plugins-bad/slack-desc b/multimedia/gst0-plugins-bad/slack-desc
deleted file mode 100644
index be75d1dd65..0000000000
--- a/multimedia/gst0-plugins-bad/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-gst0-plugins-bad: gst0-plugins-bad (a set of bad GStreamer-0.10.x plugins)
-gst0-plugins-bad:
-gst0-plugins-bad: GStreamer Bad Plug-ins is a set of plug-ins that aren't up to
-gst0-plugins-bad: par compared to the rest. They might be close to being good
-gst0-plugins-bad: quality, but they're missing something - be it a good code
-gst0-plugins-bad: review, some documentation, a set of tests, a real live
-gst0-plugins-bad: maintainer, or some actual wide use.
-gst0-plugins-bad:
-gst0-plugins-bad: gst0-plugins-bad is a set of plug-ins that need more quality.
-gst0-plugins-bad:
-gst0-plugins-bad:
diff --git a/multimedia/gst0-plugins-base/README b/multimedia/gst0-plugins-base/README
new file mode 100644
index 0000000000..28f07fc897
--- /dev/null
+++ b/multimedia/gst0-plugins-base/README
@@ -0,0 +1,6 @@
+GStreamer Base Plug-ins is a well-groomed and well-maintained
+collection of GStreamer plug-ins and elements, spanning the range of
+possible types of elements one would want to write for GStreamer.
+It also contains helper libraries and base classes useful for
+writing elements. A wide range of video and audio decoders, encoders,
+and filters are included.
diff --git a/multimedia/farstream/farstream.SlackBuild b/multimedia/gst0-plugins-base/gst0-plugins-base.SlackBuild
index 3535d165f8..dabd9c133c 100644
--- a/multimedia/farstream/farstream.SlackBuild
+++ b/multimedia/gst0-plugins-base/gst0-plugins-base.SlackBuild
@@ -1,8 +1,10 @@
#!/bin/sh
-# Slackware build script for farstream
+# Slackware build script for gst0-plugins-base
-# Copyright 2015-2017 Thorn Inurcide USA
+# Copyright 2008 Michiel van Wessem <michiel@slackbuilds.org>
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2021 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,8 +24,9 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-PRGNAM=farstream
-VERSION=${VERSION:-0.2.8}
+PRGNAM=gst0-plugins-base
+SRCNAM=gst-plugins-base
+VERSION=${VERSION:-0.10.36}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -54,14 +57,16 @@ else
LIBDIRSUFFIX=""
fi
+DOCS="ABOUT-NLS AUTHORS COPYING* INSTALL NEWS README* RELEASE REQUIREMENTS"
+
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.xz
+cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -69,29 +74,37 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# Check for valgrind
-pkg-config --exists valgrind && VALGRIND="--enable-valgrind"
+# Thanks AUR for the patches
+sed -i -e '/AC_PATH_XTRA/d' -e 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/' configure.ac
+for i in $CWD/patches/* ; do patch -p1 < $i ; done
+if [[ $ARCH == i?86 ]]; then patch -p1 < $CWD/x86.patch ; fi
+
+NOCONFIGURE=1 ./autogen.sh
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --enable-introspection="yes" \
- --enable-glib-asserts="auto" \
- --enable-gobject-cast-checks="auto" \
- ${VALGRIND:-"--disable-valgrind"} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --disable-debug \
+ --disable-static \
--build=$ARCH-slackware-linux
make
+sed -e 's/^SUBDIRS_EXT =.*/SUBDIRS_EXT =/' -i Makefile
make install DESTDIR=$PKG
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS ChangeLog* COPYING NEWS README* $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/multimedia/gst0-plugins-base/gst0-plugins-base.info b/multimedia/gst0-plugins-base/gst0-plugins-base.info
new file mode 100644
index 0000000000..053dcd0d2b
--- /dev/null
+++ b/multimedia/gst0-plugins-base/gst0-plugins-base.info
@@ -0,0 +1,10 @@
+PRGNAM="gst0-plugins-base"
+VERSION="0.10.36"
+HOMEPAGE="https://gstreamer.freedesktop.org"
+DOWNLOAD="https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-0.10.36.tar.xz"
+MD5SUM="3d2337841b132fe996e5eb2396ac9438"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="gstreamer0"
+MAINTAINER="Matteo Bernardini"
+EMAIL="ponce@slackbuilds.org"
diff --git a/multimedia/gst0-plugins-base/patches/00-fix-crash-0-byte-ogg.patch b/multimedia/gst0-plugins-base/patches/00-fix-crash-0-byte-ogg.patch
new file mode 100644
index 0000000000..2c03e820b5
--- /dev/null
+++ b/multimedia/gst0-plugins-base/patches/00-fix-crash-0-byte-ogg.patch
@@ -0,0 +1,22 @@
+From 7f22e3ea7f713867e1fbf2ef71b6a6e36e1f0531 Mon Sep 17 00:00:00 2001
+From: Jonathan Liu <net147@gmail.com>
+Date: Sun, 28 Oct 2012 10:07:16 +0000
+Subject: oggstream: fix crash with 0 byte ogg packets
+
+https://bugzilla.gnome.org/show_bug.cgi?id=687030
+---
+diff --git a/ext/ogg/gstoggstream.c b/ext/ogg/gstoggstream.c
+index c79f088..fe28f2e 100644
+--- a/ext/ogg/gstoggstream.c
++++ b/ext/ogg/gstoggstream.c
+@@ -790,7 +790,7 @@ setup_vorbis_mapper (GstOggStream * pad, ogg_packet * packet)
+ static gboolean
+ is_header_vorbis (GstOggStream * pad, ogg_packet * packet)
+ {
+- if (packet->bytes > 0 && (packet->packet[0] & 0x01) == 0)
++ if (packet->bytes == 0 || (packet->packet[0] & 0x01) == 0)
+ return FALSE;
+
+ if (packet->packet[0] == 5) {
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/multimedia/gst0-plugins-base/patches/01-colorbalance-fix-abi.patch b/multimedia/gst0-plugins-base/patches/01-colorbalance-fix-abi.patch
new file mode 100644
index 0000000000..1e7b8f2c11
--- /dev/null
+++ b/multimedia/gst0-plugins-base/patches/01-colorbalance-fix-abi.patch
@@ -0,0 +1,23 @@
+From 0cb4ccb1f09d39820682e052fc106f5fd7fa1309 Mon Sep 17 00:00:00 2001
+From: Stefan Sauer <ensonic@users.sf.net>
+Date: Fri, 24 Feb 2012 20:37:00 +0000
+Subject: interfaces: fix ABI class padding after the recent changes
+
+---
+(limited to 'gst-libs/gst/interfaces/colorbalance.h')
+
+diff --git a/gst-libs/gst/interfaces/colorbalance.h b/gst-libs/gst/interfaces/colorbalance.h
+index fd8ceaa..9f0a1cd 100644
+--- a/gst-libs/gst/interfaces/colorbalance.h
++++ b/gst-libs/gst/interfaces/colorbalance.h
+@@ -102,7 +102,7 @@ struct _GstColorBalanceClass {
+ GstColorBalanceType (*get_balance_type) (GstColorBalance *balance);
+
+ /*< private >*/
+- gpointer _gst_reserved[GST_PADDING];
++ gpointer _gst_reserved[GST_PADDING-1];
+ };
+
+ GType gst_color_balance_get_type (void);
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/multimedia/gst0-plugins-base/patches/02-ayuv64-lanczos.patch b/multimedia/gst0-plugins-base/patches/02-ayuv64-lanczos.patch
new file mode 100644
index 0000000000..64106e4650
--- /dev/null
+++ b/multimedia/gst0-plugins-base/patches/02-ayuv64-lanczos.patch
@@ -0,0 +1,236 @@
+From e4f01106d08f3c2a65897bfe919bd65ce55545a8 Mon Sep 17 00:00:00 2001
+From: David Schleef <ds@schleef.org>
+Date: Wed, 25 Jan 2012 23:49:00 +0000
+Subject: videoscale: Add AYUV64 path to Lanczos
+
+---
+diff --git a/gst/videoscale/gstvideoscale.c b/gst/videoscale/gstvideoscale.c
+index 7b44647..6df4ba6 100644
+--- a/gst/videoscale/gstvideoscale.c
++++ b/gst/videoscale/gstvideoscale.c
+@@ -1199,6 +1199,11 @@ gst_video_scale_transform (GstBaseTransform * trans, GstBuffer * in,
+ case GST_VIDEO_SCALE_4TAP:
+ vs_image_scale_4tap_AYUV64 (&dest, &src, videoscale->tmp_buf);
+ break;
++ case GST_VIDEO_SCALE_LANCZOS:
++ vs_image_scale_lanczos_AYUV64 (&dest, &src, videoscale->tmp_buf,
++ videoscale->sharpness, videoscale->dither, videoscale->submethod,
++ videoscale->envelope, videoscale->sharpen);
++ break;
+ default:
+ goto unknown_mode;
+ }
+diff --git a/gst/videoscale/vs_image.h b/gst/videoscale/vs_image.h
+index 2312acc..7b34991 100644
+--- a/gst/videoscale/vs_image.h
++++ b/gst/videoscale/vs_image.h
+@@ -52,6 +52,9 @@ void vs_image_scale_linear_RGBA (const VSImage *dest, const VSImage *src,
+ void vs_image_scale_lanczos_AYUV (const VSImage * dest, const VSImage * src,
+ uint8_t * tmpbuf, double sharpness, gboolean dither, int submethod,
+ double a, double sharpen);
++void vs_image_scale_lanczos_AYUV64 (const VSImage * dest, const VSImage * src,
++ uint8_t * tmpbuf, double sharpness, gboolean dither, int submethod,
++ double a, double sharpen);
+
+ void vs_image_scale_nearest_RGB (const VSImage *dest, const VSImage *src,
+ uint8_t *tmpbuf);
+diff --git a/gst/videoscale/vs_lanczos.c b/gst/videoscale/vs_lanczos.c
+index 1c87ba3..d141a01 100644
+--- a/gst/videoscale/vs_lanczos.c
++++ b/gst/videoscale/vs_lanczos.c
+@@ -204,6 +204,9 @@ static void vs_image_scale_lanczos_AYUV_float (const VSImage * dest,
+ static void vs_image_scale_lanczos_AYUV_double (const VSImage * dest,
+ const VSImage * src, uint8_t * tmpbuf, double sharpness, gboolean dither,
+ double a, double sharpen);
++static void vs_image_scale_lanczos_AYUV64_double (const VSImage * dest,
++ const VSImage * src, uint8_t * tmpbuf, double sharpness, gboolean dither,
++ double a, double sharpen);
+
+ static double
+ sinc (double x)
+@@ -590,6 +593,15 @@ vs_image_scale_lanczos_AYUV (const VSImage * dest, const VSImage * src,
+ }
+ }
+
++void
++vs_image_scale_lanczos_AYUV64 (const VSImage * dest, const VSImage * src,
++ uint8_t * tmpbuf, double sharpness, gboolean dither, int submethod,
++ double a, double sharpen)
++{
++ vs_image_scale_lanczos_AYUV64_double (dest, src, tmpbuf, sharpness, dither,
++ a, sharpen);
++}
++
+
+
+ #define RESAMPLE_HORIZ_FLOAT(function, dest_type, tap_type, src_type, _n_taps) \
+@@ -813,9 +825,9 @@ RESAMPLE_VERT_DITHER (resample_vert_dither_int16_generic, gint16, gint16,
+ n_taps, shift)
+ /* *INDENT-ON* */
+
+-#define RESAMPLE_VERT_FLOAT(function, tap_type, src_type, _n_taps, _shift) \
++#define RESAMPLE_VERT_FLOAT(function, dest_type, clamp, tap_type, src_type, _n_taps, _shift) \
+ static void \
+-function (guint8 *dest, \
++function (dest_type *dest, \
+ const tap_type *taps, const src_type *src, int stride, int n_taps, \
+ int shift, int n) \
+ { \
+@@ -828,13 +840,13 @@ function (guint8 *dest, \
+ const src_type *line = PTR_OFFSET(src, stride * l); \
+ sum_y += line[i] * taps[l]; \
+ } \
+- dest[i] = CLAMP (floor(0.5 + sum_y), 0, 255); \
++ dest[i] = CLAMP (floor(0.5 + sum_y), 0, clamp); \
+ } \
+ }
+
+-#define RESAMPLE_VERT_FLOAT_DITHER(function, tap_type, src_type, _n_taps, _shift) \
++#define RESAMPLE_VERT_FLOAT_DITHER(function, dest_type, clamp, tap_type, src_type, _n_taps, _shift) \
+ static void \
+-function (guint8 *dest, \
++function (dest_type *dest, \
+ const tap_type *taps, const src_type *src, int stride, int n_taps, \
+ int shift, int n) \
+ { \
+@@ -849,19 +861,24 @@ function (guint8 *dest, \
+ sum_y += line[i] * taps[l]; \
+ } \
+ err_y += sum_y; \
+- dest[i] = CLAMP (floor (err_y), 0, 255); \
++ dest[i] = CLAMP (floor (err_y), 0, clamp); \
+ err_y -= floor (err_y); \
+ } \
+ }
+
+ /* *INDENT-OFF* */
+-RESAMPLE_VERT_FLOAT (resample_vert_double_generic, double, double, n_taps,
++RESAMPLE_VERT_FLOAT (resample_vert_double_generic, guint8, 255, double, double, n_taps,
+ shift)
+-RESAMPLE_VERT_FLOAT_DITHER (resample_vert_dither_double_generic, double, double,
++RESAMPLE_VERT_FLOAT_DITHER (resample_vert_dither_double_generic, guint8, 255, double, double,
+ n_taps, shift)
+
+-RESAMPLE_VERT_FLOAT (resample_vert_float_generic, float, float, n_taps, shift)
+-RESAMPLE_VERT_FLOAT_DITHER (resample_vert_dither_float_generic, float, float,
++RESAMPLE_VERT_FLOAT (resample_vert_double_generic_u16, guint16, 65535, double, double, n_taps,
++ shift)
++RESAMPLE_VERT_FLOAT_DITHER (resample_vert_dither_double_generic_u16, guint16, 65535, double, double,
++ n_taps, shift)
++
++RESAMPLE_VERT_FLOAT (resample_vert_float_generic, guint8, 255, float, float, n_taps, shift)
++RESAMPLE_VERT_FLOAT_DITHER (resample_vert_dither_float_generic, guint8, 255, float, float,
+ n_taps, shift)
+ /* *INDENT-ON* */
+
+@@ -1556,3 +1573,77 @@ vs_image_scale_lanczos_AYUV_float (const VSImage * dest, const VSImage * src,
+ scale1d_cleanup (&scale->y_scale1d);
+ g_free (scale->tmpdata);
+ }
++
++static void
++vs_scale_lanczos_AYUV64_double (Scale * scale)
++{
++ int j;
++ int yi;
++ int tmp_yi;
++
++ tmp_yi = 0;
++
++ for (j = 0; j < scale->dest->height; j++) {
++ guint16 *destline;
++ double *taps;
++
++ destline = (guint16 *) (scale->dest->pixels + scale->dest->stride * j);
++
++ yi = scale->y_scale1d.offsets[j];
++
++ while (tmp_yi < yi + scale->y_scale1d.n_taps) {
++ scale->horiz_resample_func (TMP_LINE_DOUBLE_AYUV (tmp_yi),
++ scale->x_scale1d.offsets, scale->x_scale1d.taps, SRC_LINE (tmp_yi),
++ scale->x_scale1d.n_taps, 0, scale->dest->width);
++ tmp_yi++;
++ }
++
++ taps = (double *) scale->y_scale1d.taps + j * scale->y_scale1d.n_taps;
++ if (scale->dither) {
++ resample_vert_dither_double_generic_u16 (destline,
++ taps, TMP_LINE_DOUBLE_AYUV (scale->y_scale1d.offsets[j]),
++ sizeof (double) * 4 * scale->dest->width,
++ scale->y_scale1d.n_taps, 0, scale->dest->width * 4);
++ } else {
++ resample_vert_double_generic_u16 (destline,
++ taps, TMP_LINE_DOUBLE_AYUV (scale->y_scale1d.offsets[j]),
++ sizeof (double) * 4 * scale->dest->width,
++ scale->y_scale1d.n_taps, 0, scale->dest->width * 4);
++ }
++ }
++}
++
++void
++vs_image_scale_lanczos_AYUV64_double (const VSImage * dest, const VSImage * src,
++ uint8_t * tmpbuf, double sharpness, gboolean dither, double a,
++ double sharpen)
++{
++ Scale s = { 0 };
++ Scale *scale = &s;
++ int n_taps;
++
++ scale->dest = dest;
++ scale->src = src;
++
++ n_taps = scale1d_get_n_taps (src->width, dest->width, a, sharpness);
++ scale1d_calculate_taps (&scale->x_scale1d,
++ src->width, dest->width, n_taps, a, sharpness, sharpen);
++
++ n_taps = scale1d_get_n_taps (src->height, dest->height, a, sharpness);
++ scale1d_calculate_taps (&scale->y_scale1d,
++ src->height, dest->height, n_taps, a, sharpness, sharpen);
++
++ scale->dither = dither;
++
++ scale->horiz_resample_func =
++ (HorizResampleFunc) resample_horiz_double_ayuv_generic;
++
++ scale->tmpdata =
++ g_malloc (sizeof (double) * scale->dest->width * scale->src->height * 4);
++
++ vs_scale_lanczos_AYUV64_double (scale);
++
++ scale1d_cleanup (&scale->x_scale1d);
++ scale1d_cleanup (&scale->y_scale1d);
++ g_free (scale->tmpdata);
++}
+--
+cgit v0.9.0.2-2-gbebe
+From f8dc679ca7e9542e6f410062df5e332fc8e0ba9d Mon Sep 17 00:00:00 2001
+From: David Schleef <ds@schleef.org>
+Date: Sun, 19 Feb 2012 08:03:03 +0000
+Subject: videoscale: fix AYUV64 scaling
+
+---
+diff --git a/gst/videoscale/vs_lanczos.c b/gst/videoscale/vs_lanczos.c
+index d141a01..67cd401 100644
+--- a/gst/videoscale/vs_lanczos.c
++++ b/gst/videoscale/vs_lanczos.c
+@@ -728,6 +728,9 @@ RESAMPLE_HORIZ_AYUV_FLOAT (resample_horiz_double_ayuv_generic, double, double,
+ RESAMPLE_HORIZ_AYUV_FLOAT (resample_horiz_float_ayuv_generic, float, float,
+ guint8, n_taps)
+
++RESAMPLE_HORIZ_AYUV_FLOAT (resample_horiz_double_ayuv_generic_s16, double, double,
++ guint16, n_taps)
++
+ RESAMPLE_HORIZ (resample_horiz_int32_int32_u8_generic, gint32, gint32,
+ guint8, n_taps, shift)
+ RESAMPLE_HORIZ (resample_horiz_int16_int16_u8_generic, gint16, gint16,
+@@ -1636,7 +1639,7 @@ vs_image_scale_lanczos_AYUV64_double (const VSImage * dest, const VSImage * src,
+ scale->dither = dither;
+
+ scale->horiz_resample_func =
+- (HorizResampleFunc) resample_horiz_double_ayuv_generic;
++ (HorizResampleFunc) resample_horiz_double_ayuv_generic_s16;
+
+ scale->tmpdata =
+ g_malloc (sizeof (double) * scale->dest->width * scale->src->height * 4);
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/multimedia/gst0-plugins-base/patches/03-videoscale-fix-negotiation.patch b/multimedia/gst0-plugins-base/patches/03-videoscale-fix-negotiation.patch
new file mode 100644
index 0000000000..6e34d41c53
--- /dev/null
+++ b/multimedia/gst0-plugins-base/patches/03-videoscale-fix-negotiation.patch
@@ -0,0 +1,171 @@
+From 63d1316c0fd4ce22cf4a53f4aa7cb1ca16a07aa8 Mon Sep 17 00:00:00 2001
+From: Tim-Philipp Müller <tim.muller@collabora.co.uk>
+Date: Sun, 26 Feb 2012 18:19:57 +0000
+Subject: videoscale: fix negotiation after addition of new formats and methods
+
+Now that we no longer support all methods for all formats, we
+need to cater for that in the transform function: we can't
+transform formats not supported by the currently-selected
+mehod.
+
+make check, folks. It's da bomb.
+---
+diff --git a/gst/videoscale/gstvideoscale.c b/gst/videoscale/gstvideoscale.c
+index 9f072a3..60dd5ff 100644
+--- a/gst/videoscale/gstvideoscale.c
++++ b/gst/videoscale/gstvideoscale.c
+@@ -424,10 +424,118 @@ gst_video_scale_get_property (GObject * object, guint prop_id, GValue * value,
+ }
+ }
+
++#define NEAREST (1 << GST_VIDEO_SCALE_NEAREST)
++#define BILINEAR (1 << GST_VIDEO_SCALE_BILINEAR)
++#define FOURTAP (1 << GST_VIDEO_SCALE_4TAP)
++#define LANCZOS (1 << GST_VIDEO_SCALE_LANCZOS)
++
++/* or we could just do lookups via table[format] if we could be bothered.. */
++static const struct
++{
++ GstVideoFormat format;
++ guint8 methods;
++} formats_methods_table[] = {
++ {
++ GST_VIDEO_FORMAT_RGBx, NEAREST | BILINEAR | FOURTAP | LANCZOS}, {
++ GST_VIDEO_FORMAT_xRGB, NEAREST | BILINEAR | FOURTAP | LANCZOS}, {
++ GST_VIDEO_FORMAT_BGRx, NEAREST | BILINEAR | FOURTAP | LANCZOS}, {
++ GST_VIDEO_FORMAT_xBGR, NEAREST | BILINEAR | FOURTAP | LANCZOS}, {
++ GST_VIDEO_FORMAT_RGBA, NEAREST | BILINEAR | FOURTAP | LANCZOS}, {
++ GST_VIDEO_FORMAT_ARGB, NEAREST | BILINEAR | FOURTAP | LANCZOS}, {
++ GST_VIDEO_FORMAT_BGRA, NEAREST | BILINEAR | FOURTAP | LANCZOS}, {
++ GST_VIDEO_FORMAT_ABGR, NEAREST | BILINEAR | FOURTAP | LANCZOS}, {
++ GST_VIDEO_FORMAT_AYUV, NEAREST | BILINEAR | FOURTAP | LANCZOS}, {
++ GST_VIDEO_FORMAT_ARGB64, NEAREST | BILINEAR | FOURTAP | LANCZOS}, {
++ GST_VIDEO_FORMAT_AYUV64, NEAREST | BILINEAR | FOURTAP | LANCZOS}, {
++ GST_VIDEO_FORMAT_RGB, NEAREST | BILINEAR | FOURTAP}, {
++ GST_VIDEO_FORMAT_BGR, NEAREST | BILINEAR | FOURTAP}, {
++ GST_VIDEO_FORMAT_v308, NEAREST | BILINEAR | FOURTAP}, {
++ GST_VIDEO_FORMAT_YUY2, NEAREST | BILINEAR | FOURTAP}, {
++ GST_VIDEO_FORMAT_YVYU, NEAREST | BILINEAR | FOURTAP}, {
++ GST_VIDEO_FORMAT_UYVY, NEAREST | BILINEAR | FOURTAP}, {
++ GST_VIDEO_FORMAT_Y800, NEAREST | BILINEAR | FOURTAP}, {
++ GST_VIDEO_FORMAT_GRAY8, NEAREST | BILINEAR | FOURTAP}, {
++ GST_VIDEO_FORMAT_GRAY16_LE, NEAREST | BILINEAR | FOURTAP}, {
++ GST_VIDEO_FORMAT_GRAY16_BE, NEAREST | BILINEAR | FOURTAP}, {
++ GST_VIDEO_FORMAT_Y16, NEAREST | BILINEAR | FOURTAP}, {
++ GST_VIDEO_FORMAT_I420, NEAREST | BILINEAR | FOURTAP | LANCZOS}, {
++ GST_VIDEO_FORMAT_YV12, NEAREST | BILINEAR | FOURTAP | LANCZOS}, {
++ GST_VIDEO_FORMAT_Y444, NEAREST | BILINEAR | FOURTAP | LANCZOS}, {
++ GST_VIDEO_FORMAT_Y42B, NEAREST | BILINEAR | FOURTAP | LANCZOS}, {
++ GST_VIDEO_FORMAT_Y41B, NEAREST | BILINEAR | FOURTAP | LANCZOS}, {
++ GST_VIDEO_FORMAT_NV12, NEAREST | BILINEAR}, {
++ GST_VIDEO_FORMAT_RGB16, NEAREST | BILINEAR | FOURTAP}, {
++ GST_VIDEO_FORMAT_RGB15, NEAREST | BILINEAR | FOURTAP}
++};
++
++static gboolean
++gst_video_scale_format_supported_for_method (GstVideoFormat format,
++ GstVideoScaleMethod method)
++{
++ int i;
++
++ for (i = 0; i < G_N_ELEMENTS (formats_methods_table); ++i) {
++ if (formats_methods_table[i].format == format)
++ return ((formats_methods_table[i].methods & (1 << method)) != 0);
++ }
++ return FALSE;
++}
++
++static gboolean
++gst_video_scale_transform_supported (GstVideoScale * videoscale,
++ GstVideoScaleMethod method, GstStructure * structure)
++{
++ const GValue *val;
++ GstVideoFormat fmt;
++ gboolean supported = TRUE;
++ GstStructure *s;
++ GstCaps *c;
++
++ /* we support these methods for all formats */
++ if (method == GST_VIDEO_SCALE_NEAREST || method == GST_VIDEO_SCALE_BILINEAR)
++ return TRUE;
++
++ /* we need fixed caps if we want to use gst_video_parse_caps() */
++ s = gst_structure_new (gst_structure_get_name (structure),
++ "width", G_TYPE_INT, 1, "height", G_TYPE_INT, 1, NULL);
++
++ if ((val = gst_structure_get_value (structure, "format"))) {
++ gst_structure_set_value (s, "format", val);
++ } else {
++ if ((val = gst_structure_get_value (structure, "endianness")))
++ gst_structure_set_value (s, "endianness", val);
++ if ((val = gst_structure_get_value (structure, "red_mask")))
++ gst_structure_set_value (s, "red_mask", val);
++ if ((val = gst_structure_get_value (structure, "blue_mask")))
++ gst_structure_set_value (s, "blue_mask", val);
++ if ((val = gst_structure_get_value (structure, "green_mask")))
++ gst_structure_set_value (s, "green_mask", val);
++ if ((val = gst_structure_get_value (structure, "alpha_mask")))
++ gst_structure_set_value (s, "alpha_mask", val);
++ if ((val = gst_structure_get_value (structure, "depth")))
++ gst_structure_set_value (s, "depth", val);
++ if ((val = gst_structure_get_value (structure, "bpp")))
++ gst_structure_set_value (s, "bpp", val);
++ }
++ c = gst_caps_new_full (s, NULL);
++ if (!gst_video_format_parse_caps (c, &fmt, NULL, NULL)) {
++ GST_ERROR_OBJECT (videoscale, "couldn't parse %" GST_PTR_FORMAT, c);
++ } else if (!gst_video_scale_format_supported_for_method (fmt, method)) {
++ supported = FALSE;
++ }
++ GST_LOG_OBJECT (videoscale, "method %d %ssupported for format %d",
++ method, (supported) ? "" : "not ", fmt);
++ gst_caps_unref (c);
++
++ return supported;
++}
++
+ static GstCaps *
+ gst_video_scale_transform_caps (GstBaseTransform * trans,
+ GstPadDirection direction, GstCaps * caps)
+ {
++ GstVideoScale *videoscale = GST_VIDEO_SCALE (trans);
++ GstVideoScaleMethod method;
+ GstCaps *ret;
+ GstStructure *structure;
+
+@@ -441,6 +549,13 @@ gst_video_scale_transform_caps (GstBaseTransform * trans,
+ ret = gst_caps_copy (caps);
+ structure = gst_structure_copy (gst_caps_get_structure (ret, 0));
+
++ GST_OBJECT_LOCK (videoscale);
++ method = videoscale->method;
++ GST_OBJECT_UNLOCK (videoscale);
++
++ if (!gst_video_scale_transform_supported (videoscale, method, structure))
++ goto format_not_supported;
++
+ gst_structure_set (structure,
+ "width", GST_TYPE_INT_RANGE, 1, G_MAXINT,
+ "height", GST_TYPE_INT_RANGE, 1, G_MAXINT, NULL);
+@@ -452,9 +567,19 @@ gst_video_scale_transform_caps (GstBaseTransform * trans,
+ }
+ gst_caps_append_structure (ret, structure);
+
++done:
++
+ GST_DEBUG_OBJECT (trans, "returning caps: %" GST_PTR_FORMAT, ret);
+
+ return ret;
++
++format_not_supported:
++ {
++ gst_structure_free (structure);
++ gst_caps_unref (ret);
++ ret = gst_caps_new_empty ();
++ goto done;
++ }
+ }
+
+ static gboolean
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/multimedia/gst0-plugins-base/patches/04-gstaudio-symbols.patch b/multimedia/gst0-plugins-base/patches/04-gstaudio-symbols.patch
new file mode 100644
index 0000000000..7e2ad0f47d
--- /dev/null
+++ b/multimedia/gst0-plugins-base/patches/04-gstaudio-symbols.patch
@@ -0,0 +1,10 @@
+--- gst-plugins-base/win32/common/libgstaudio.def.orig 2013-12-10 12:09:41.280012610 +0000
++++ gst-plugins-base/win32/common/libgstaudio.def 2013-12-10 12:10:12.253127720 +0000
+@@ -24,6 +24,7 @@
+ gst_audio_decoder_get_plc_aware
+ gst_audio_decoder_get_tolerance
+ gst_audio_decoder_get_type
++ gst_audio_decoder_merge_tags
+ gst_audio_decoder_set_byte_time
+ gst_audio_decoder_set_drainable
+ gst_audio_decoder_set_latency
diff --git a/multimedia/gst0-plugins-base/patches/05-enum_headers.patch b/multimedia/gst0-plugins-base/patches/05-enum_headers.patch
new file mode 100644
index 0000000000..1205da2417
--- /dev/null
+++ b/multimedia/gst0-plugins-base/patches/05-enum_headers.patch
@@ -0,0 +1,132 @@
+diff --unified --recursive --text package.orig/common/glib-gen.mak package.new/common/glib-gen.mak
+--- package.orig/common/glib-gen.mak 2020-03-18 22:16:50.800759634 -0400
++++ package.new/common/glib-gen.mak 2020-03-18 22:17:26.360479044 -0400
+@@ -5,7 +5,7 @@
+ #glib_enum_define=GST_COLOR_BALANCE
+ #glib_enum_prefix=gst_color_balance
+
+-enum_headers=$(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
++enum_headers=$(foreach h,$(glib_enum_headers),\n#include \"$(h)\")
+
+ # these are all the rules generating the relevant files
+ %-marshal.h: %-marshal.list
+diff --unified --recursive --text package.orig/common/gst-glib-gen.mak package.new/common/gst-glib-gen.mak
+--- package.orig/common/gst-glib-gen.mak 2020-03-18 22:16:50.800759634 -0400
++++ package.new/common/gst-glib-gen.mak 2020-03-18 22:17:26.360479044 -0400
+@@ -6,7 +6,7 @@
+ #glib_gen_prefix=gst_color_balance
+ #glib_gen_basename=colorbalance
+
+-enum_headers=$(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
++enum_headers=$(foreach h,$(glib_enum_headers),\n#include \"$(h)\")
+
+ # these are all the rules generating the relevant files
+ $(glib_gen_basename)-marshal.h: $(glib_gen_basename)-marshal.list
+diff --unified --recursive --text package.orig/gst/encoding/Makefile.in package.new/gst/encoding/Makefile.in
+--- package.orig/gst/encoding/Makefile.in 2020-03-18 22:16:50.807426248 -0400
++++ package.new/gst/encoding/Makefile.in 2020-03-18 22:17:26.620476983 -0400
+@@ -493,7 +493,7 @@
+ BUILT_SOURCES = $(built_headers) $(built_sources)
+ EXTRA_DIST = gstencode-marshal.list
+ CLEANFILES = $(BUILT_SOURCES)
+-enum_headers = $(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
++enum_headers = $(foreach h,$(glib_enum_headers),\n#include \"$(h)\")
+ all: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) all-am
+
+diff --unified --recursive --text package.orig/gst/playback/Makefile.in package.new/gst/playback/Makefile.in
+--- package.orig/gst/playback/Makefile.in 2020-03-18 22:16:50.804092941 -0400
++++ package.new/gst/playback/Makefile.in 2020-03-18 22:17:26.540477618 -0400
+@@ -569,7 +569,7 @@
+ BUILT_SOURCES = $(built_headers) $(built_sources)
+ EXTRA_DIST = gstplay-marshal.list
+ CLEANFILES = $(BUILT_SOURCES)
+-enum_headers = $(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
++enum_headers = $(foreach h,$(glib_enum_headers),\n#include \"$(h)\")
+ all: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) all-am
+
+diff --unified --recursive --text package.orig/gst/tcp/Makefile.in package.new/gst/tcp/Makefile.in
+--- package.orig/gst/tcp/Makefile.in 2020-03-18 22:16:50.804092941 -0400
++++ package.new/gst/tcp/Makefile.in 2020-03-18 22:17:26.457144945 -0400
+@@ -471,7 +471,7 @@
+ glib_enum_define = GST_TCP
+ glib_gen_prefix = gst_tcp
+ glib_gen_basename = gsttcp
+-enum_headers = $(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
++enum_headers = $(foreach h,$(glib_enum_headers),\n#include \"$(h)\")
+ built_sources = gsttcp-enumtypes.c gsttcp-marshal.c
+ built_headers = gsttcp-enumtypes.h gsttcp-marshal.h
+ BUILT_SOURCES = $(built_sources) $(built_headers)
+diff --unified --recursive --text package.orig/gst-libs/gst/app/Makefile.in package.new/gst-libs/gst/app/Makefile.in
+--- package.orig/gst-libs/gst/app/Makefile.in 2020-03-18 22:16:50.817426170 -0400
++++ package.new/gst-libs/gst/app/Makefile.in 2020-03-18 22:17:27.103806485 -0400
+@@ -473,7 +473,7 @@
+ glib_enum_define = GST_APP
+ glib_gen_prefix = __gst_app
+ glib_gen_basename = gstapp
+-enum_headers = $(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
++enum_headers = $(foreach h,$(glib_enum_headers),\n#include \"$(h)\")
+ built_sources = gstapp-marshal.c
+ built_headers = gstapp-marshal.h
+ BUILT_SOURCES = $(built_sources) $(built_headers)
+diff --unified --recursive --text package.orig/gst-libs/gst/audio/Makefile.in package.new/gst-libs/gst/audio/Makefile.in
+--- package.orig/gst-libs/gst/audio/Makefile.in 2020-03-18 22:16:50.817426170 -0400
++++ package.new/gst-libs/gst/audio/Makefile.in 2020-03-18 22:17:27.070473416 -0400
+@@ -544,7 +544,7 @@
+ $(GST_BASE_LIBS) $(GST_LIBS)
+
+ libgstaudio_@GST_MAJORMINOR@_la_LDFLAGS = $(GST_LIB_LDFLAGS) $(GST_ALL_LDFLAGS) $(GST_LT_LDFLAGS)
+-enum_headers = $(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
++enum_headers = $(foreach h,$(glib_enum_headers),\n#include \"$(h)\")
+ @HAVE_INTROSPECTION_TRUE@BUILT_GIRSOURCES = GstAudio-@GST_MAJORMINOR@.gir
+ @HAVE_INTROSPECTION_TRUE@gir_headers = $(patsubst %,$(srcdir)/%, \
+ @HAVE_INTROSPECTION_TRUE@ $(libgstaudio_@GST_MAJORMINOR@include_HEADERS)) \
+diff --unified --recursive --text package.orig/gst-libs/gst/interfaces/Makefile.in package.new/gst-libs/gst/interfaces/Makefile.in
+--- package.orig/gst-libs/gst/interfaces/Makefile.in 2020-03-18 22:16:50.814092862 -0400
++++ package.new/gst-libs/gst/interfaces/Makefile.in 2020-03-18 22:17:26.897141457 -0400
+@@ -551,7 +551,7 @@
+
+ EXTRA_DIST = interfaces-marshal.list
+ CLEANFILES = $(BUILT_SOURCES) $(am__append_1)
+-enum_headers = $(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
++enum_headers = $(foreach h,$(glib_enum_headers),\n#include \"$(h)\")
+ @HAVE_INTROSPECTION_TRUE@BUILT_GIRSOURCES = GstInterfaces-@GST_MAJORMINOR@.gir
+ @HAVE_INTROSPECTION_TRUE@gir_headers = $(patsubst %,$(srcdir)/%, \
+ @HAVE_INTROSPECTION_TRUE@ $(libgstinterfacesinclude_HEADERS)) \
+diff --unified --recursive --text package.orig/gst-libs/gst/pbutils/Makefile.in package.new/gst-libs/gst/pbutils/Makefile.in
+--- package.orig/gst-libs/gst/pbutils/Makefile.in 2020-03-18 22:16:50.814092862 -0400
++++ package.new/gst-libs/gst/pbutils/Makefile.in 2020-03-18 22:17:26.937141140 -0400
+@@ -542,7 +542,7 @@
+
+ # DISTCLEANFILES is for files generated by configure
+ DISTCLEANFILES = $(built_headers_configure)
+-enum_headers = $(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
++enum_headers = $(foreach h,$(glib_enum_headers),\n#include \"$(h)\")
+ @HAVE_INTROSPECTION_TRUE@BUILT_GIRSOURCES = GstPbutils-@GST_MAJORMINOR@.gir
+ @HAVE_INTROSPECTION_TRUE@gir_headers = $(patsubst %,$(srcdir)/%, \
+ @HAVE_INTROSPECTION_TRUE@ $(libgstpbutils_@GST_MAJORMINOR@include_HEADERS)) \
+diff --unified --recursive --text package.orig/gst-libs/gst/rtsp/Makefile.in package.new/gst-libs/gst/rtsp/Makefile.in
+--- package.orig/gst-libs/gst/rtsp/Makefile.in 2020-03-18 22:16:50.817426170 -0400
++++ package.new/gst-libs/gst/rtsp/Makefile.in 2020-03-18 22:17:27.113806406 -0400
+@@ -517,7 +517,7 @@
+ glib_enum_define = gst_rtsp
+ glib_enum_headers = gstrtspdefs.h
+ glib_gen_basename = gstrtsp
+-enum_headers = $(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
++enum_headers = $(foreach h,$(glib_enum_headers),\n#include \"$(h)\")
+ @HAVE_INTROSPECTION_TRUE@BUILT_GIRSOURCES = GstRtsp-@GST_MAJORMINOR@.gir
+ @HAVE_INTROSPECTION_TRUE@gir_headers = $(patsubst %,$(srcdir)/%, \
+ @HAVE_INTROSPECTION_TRUE@ $(libgstrtspinclude_HEADERS)) \
+diff --unified --recursive --text package.orig/gst-libs/gst/video/Makefile.in package.new/gst-libs/gst/video/Makefile.in
+--- package.orig/gst-libs/gst/video/Makefile.in 2020-03-18 22:16:50.810759555 -0400
++++ package.new/gst-libs/gst/video/Makefile.in 2020-03-18 22:17:26.847141854 -0400
+@@ -553,7 +553,7 @@
+ $(GST_ALL_LDFLAGS) \
+ $(GST_LT_LDFLAGS)
+
+-enum_headers = $(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
++enum_headers = $(foreach h,$(glib_enum_headers),\n#include \"$(h)\")
+ @HAVE_INTROSPECTION_TRUE@BUILT_GIRSOURCES = GstVideo-@GST_MAJORMINOR@.gir
+ @HAVE_INTROSPECTION_TRUE@gir_headers = $(patsubst %,$(srcdir)/%, \
+ @HAVE_INTROSPECTION_TRUE@ $(libgstvideo_@GST_MAJORMINOR@include_HEADERS)) \
diff --git a/multimedia/gst0-plugins-base/slack-desc b/multimedia/gst0-plugins-base/slack-desc
new file mode 100644
index 0000000000..54c5be6b02
--- /dev/null
+++ b/multimedia/gst0-plugins-base/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+gst0-plugins-base: gst0-plugins-base (base set of GStreamer plugins, v0)
+gst0-plugins-base:
+gst0-plugins-base: GStreamer Base Plug-ins is a well-groomed and well-maintained
+gst0-plugins-base: collection of GStreamer plug-ins and elements, spanning the range of
+gst0-plugins-base: possible types of elements one would want to write for GStreamer.
+gst0-plugins-base: It also contains helper libraries and base classes useful for
+gst0-plugins-base: writing elements. A wide range of video and audio decoders, encoders,
+gst0-plugins-base: and filters are included.
+gst0-plugins-base:
+gst0-plugins-base:
+gst0-plugins-base:
diff --git a/multimedia/gst0-plugins-base/x86.patch b/multimedia/gst0-plugins-base/x86.patch
new file mode 100644
index 0000000000..127ca6af83
--- /dev/null
+++ b/multimedia/gst0-plugins-base/x86.patch
@@ -0,0 +1,35 @@
+From 9bd5a7ae5435469c3557a3d70e762791cb3dc5c7 Mon Sep 17 00:00:00 2001
+From: Antoine Jacoutot <ajacoutot@gnome.org>
+Date: Mon, 20 Jan 2014 15:44:09 +0100
+Subject: [PATCH] audioresample: fix build on BSD
+
+On i386, EMMINTRIN is defined but not usable without sse so check for
+__SSE__ and __SSE2__ as well.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=670690
+---
+ gst/audioresample/resample.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/gst/audioresample/resample.c b/gst/audioresample/resample.c
+index 98d006c..481fa01 100644
+--- a/gst/audioresample/resample.c
++++ b/gst/audioresample/resample.c
+@@ -77,13 +77,13 @@
+ #define EXPORT G_GNUC_INTERNAL
+
+ #ifdef _USE_SSE
+-#ifndef HAVE_XMMINTRIN_H
++#if !defined(__SSE__) || !defined(HAVE_XMMINTRIN_H)
+ #undef _USE_SSE
+ #endif
+ #endif
+
+ #ifdef _USE_SSE2
+-#ifndef HAVE_EMMINTRIN_H
++#if !defined(__SSE2__) || !defined(HAVE_XMMINTRIN_H)
+ #undef _USE_SSE2
+ #endif
+ #endif
+--
+1.8.5.3
diff --git a/multimedia/gst0-plugins-good/README b/multimedia/gst0-plugins-good/README
new file mode 100644
index 0000000000..c599a59421
--- /dev/null
+++ b/multimedia/gst0-plugins-good/README
@@ -0,0 +1,3 @@
+GStreamer Good Plug-ins is a set of plug-ins that have good quality
+code, correct functionality, and a good license (LGPL for the plug-in
+code, LGPL or LGPL-compatible for the supporting library).
diff --git a/multimedia/kdenlive/kdenlive.SlackBuild b/multimedia/gst0-plugins-good/gst0-plugins-good.SlackBuild
index 9304f04db7..ffa1a81d3e 100644
--- a/multimedia/kdenlive/kdenlive.SlackBuild
+++ b/multimedia/gst0-plugins-good/gst0-plugins-good.SlackBuild
@@ -1,9 +1,10 @@
#!/bin/sh
-# Slackware build script for kdenlive
+# Slackware build script for gst0-plugins-good
-# Copyright 2014 Tak Ooishi, Alberta, Canada <rootisfun (at) gadgetinventor com>
-# Original SBo script by stormtracknole <stormtracknole (at) gmail com> 8/5/2009
+# Copyright 2008 Michiel van Wessem <michiel@slackbuilds.org>
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2021 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,45 +24,15 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# CHANGELOG
-# ---------
-# 2014 MAY 22
-# SBo maintainer change: Tak Ooishi <rootisfun (at) gadgetinventor com>
-# * Add license to build script as per SBo requirement
-# * Updated to version 0.9.8 released on 2014 MAY 14
-# * Upstream tarball filename format changed again
-# * Workaround for CMakeList.txt error at build time
-# * Updated slack-desc and README
-# * INSTALL no longer in upstream tarball
-# * Add ChangeLog to installed documentation
-# * Minor changes for consistency with SBo cmake-template
-# +---------------------------------------+
-# stormtracknole stormtracknole@gmail.com
-# 8/5/2009
-# +---------------------------------------+
-# May 16, 2011
-# *Upgraded to version 0.8.
-# *qjson added as a new dependency.
-# +---------------------------------------+
-# Dec 14, 2011
-# *Upgraded to version 0.8.2
-# +---------------------------------------+
-# Jul 2, 2012
-# *Upgraded to version 0.9.2
-# *Hosting location of the src file
-# changed.
-# *Upstream is now tarring files as
-# bz2 instead of gz.
-# +---------------------------------------+
-
-PRGNAM=kdenlive
-VERSION=${VERSION:-0.9.10}
+PRGNAM=gst0-plugins-good
+SRCNAM=gst-plugins-good
+VERSION=${VERSION:-0.10.31}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -72,8 +43,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -86,14 +57,16 @@ else
LIBDIRSUFFIX=""
fi
+DOCS="ABOUT-NLS AUTHORS COPYING* INSTALL NEWS README* RELEASE REQUIREMENTS"
+
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
-cd $PRGNAM-$VERSION
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.xz
+cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -101,31 +74,43 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-mkdir build
-cd build
-cmake \
- -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_VERBOSE_MAKEFILE=ON \
- ..
+# Thanks AUR for the patches
+sed -i '/AC_PATH_XTRA/d' configure.ac
+sed -i 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/' configure.ac
+
+for i in $CWD/patches/* ; do patch -p1 < $i ; done
+
+NOCONFIGURE=1 ./autogen.sh
+find . -name 'Makefile.in' -exec sed -i -e 's/\\#include/#include/g' {} \;
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --disable-debug \
+ --disable-static \
+ --build=$ARCH-slackware-linux
+
+#quick and dirty fix
+ echo "#define GST_PLUGIN_DEFINE2(a,b,c,d,e,f,g,h,i) GST_PLUGIN_DEFINE(a,b, #c ,d,e,f,g,h,i)" >> config.h
+
make
-make install DESTDIR=$PKG
-cd ..
+make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 install DESTDIR=$PKG
+rm -fR $PKG/etc/gconf
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING README ChangeLog $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/multimedia/gst0-plugins-good/gst0-plugins-good.info b/multimedia/gst0-plugins-good/gst0-plugins-good.info
new file mode 100644
index 0000000000..3565b78242
--- /dev/null
+++ b/multimedia/gst0-plugins-good/gst0-plugins-good.info
@@ -0,0 +1,10 @@
+PRGNAM="gst0-plugins-good"
+VERSION="0.10.31"
+HOMEPAGE="https://gstreamer.freedesktop.org"
+DOWNLOAD="https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-0.10.31.tar.xz"
+MD5SUM="555845ceab722e517040bab57f9ace95"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="gst0-plugins-base"
+MAINTAINER="Matteo Bernardini"
+EMAIL="ponce@slackbuilds.org"
diff --git a/multimedia/gst0-plugins-good/patches/00-test-rtp-payloading.patch b/multimedia/gst0-plugins-good/patches/00-test-rtp-payloading.patch
new file mode 100644
index 0000000000..e8a9431360
--- /dev/null
+++ b/multimedia/gst0-plugins-good/patches/00-test-rtp-payloading.patch
@@ -0,0 +1,422 @@
+From dca42d4767adff3578e5d5990604766735ec1f9b Mon Sep 17 00:00:00 2001
+From: Tim-Philipp Müller <tim.muller@collabora.co.uk>
+Date: Fri, 10 Feb 2012 13:44:43 +0000
+Subject: tests: clean up rtp-payloading test a little
+
+Feed data into the pipeline using appsrc instead of fdsrc and
+a pipe. Store unsigned byte values in guint8 instead of char.
+Getting rid of the capsfilter also helps to avoid 'format is
+not fully specified' warnings when pushing "video/x-h264" data
+into rtph264pay with fully specified h264 caps in the sink template.
+---
+diff --git a/tests/check/elements/rtp-payloading.c b/tests/check/elements/rtp-payloading.c
+index b2160f4..7b4985b 100644
+--- a/tests/check/elements/rtp-payloading.c
++++ b/tests/check/elements/rtp-payloading.c
+@@ -31,13 +31,11 @@
+ typedef struct
+ {
+ GstElement *pipeline;
+- GstElement *fdsrc;
+- GstElement *capsfilter;
++ GstElement *appsrc;
+ GstElement *rtppay;
+ GstElement *rtpdepay;
+ GstElement *fakesink;
+- int fd[2];
+- const char *frame_data;
++ const guint8 *frame_data;
+ int frame_data_size;
+ int frame_count;
+ } rtp_pipeline;
+@@ -140,13 +138,11 @@ rtp_bus_callback (GstBus * bus, GstMessage * message, gpointer data)
+ * The user must free the RTP pipeline when it's not used anymore.
+ */
+ static rtp_pipeline *
+-rtp_pipeline_create (const char *frame_data, int frame_data_size,
++rtp_pipeline_create (const guint8 * frame_data, int frame_data_size,
+ int frame_count, const char *filtercaps, const char *pay, const char *depay)
+ {
+ gchar *pipeline_name;
+-
+ rtp_pipeline *p;
+-
+ GstCaps *caps;
+
+ /* Check parameters. */
+@@ -165,60 +161,39 @@ rtp_pipeline_create (const char *frame_data, int frame_data_size,
+ pipeline_name = g_strdup_printf ("%s-%s-pipeline", pay, depay);
+ p->pipeline = gst_pipeline_new (pipeline_name);
+ g_free (pipeline_name);
+- p->fdsrc = gst_element_factory_make ("fdsrc", NULL);
+- p->capsfilter = gst_element_factory_make ("capsfilter", NULL);
++ p->appsrc = gst_element_factory_make ("appsrc", NULL);
+ p->rtppay = gst_element_factory_make (pay, NULL);
+ p->rtpdepay = gst_element_factory_make (depay, NULL);
+ p->fakesink = gst_element_factory_make ("fakesink", NULL);
+
+ /* One or more elements are not created successfully or failed to create p? */
+- if (!p->pipeline || !p->fdsrc || !p->capsfilter || !p->rtppay || !p->rtpdepay
+- || !p->fakesink || pipe (p->fd) == -1) {
++ if (!p->pipeline || !p->appsrc || !p->rtppay || !p->rtpdepay || !p->fakesink) {
+ /* Release created elements. */
+ RELEASE_ELEMENT (p->pipeline);
+- RELEASE_ELEMENT (p->fdsrc);
+- RELEASE_ELEMENT (p->capsfilter);
++ RELEASE_ELEMENT (p->appsrc);
+ RELEASE_ELEMENT (p->rtppay);
+ RELEASE_ELEMENT (p->rtpdepay);
+ RELEASE_ELEMENT (p->fakesink);
+
+- /* Close pipe. */
+- if (p->fd[0]) {
+- close (p->fd[0]);
+- }
+-
+- if (p->fd[1]) {
+- close (p->fd[1]);
+- }
+-
+ /* Release allocated memory. */
+ free (p);
+
+ return NULL;
+ }
+
+- /* Set fdsrc properties. */
+- g_object_set (p->fdsrc, "fd", p->fd[0], NULL);
+- g_object_set (p->fdsrc, "do-timestamp", TRUE, NULL);
+- g_object_set (p->fdsrc, "blocksize", p->frame_data_size, NULL);
+- g_object_set (p->fdsrc, "num-buffers", p->frame_count * LOOP_COUNT, NULL);
+-
+- /* Set caps filters. */
++ /* Set src properties. */
+ caps = gst_caps_from_string (filtercaps);
+-
+- g_object_set (p->capsfilter, "caps", caps, NULL);
++ g_object_set (p->appsrc, "do-timestamp", TRUE, "caps", caps, NULL);
+ gst_caps_unref (caps);
+
+ /* Add elements to the pipeline. */
+- gst_bin_add (GST_BIN (p->pipeline), p->fdsrc);
+- gst_bin_add (GST_BIN (p->pipeline), p->capsfilter);
++ gst_bin_add (GST_BIN (p->pipeline), p->appsrc);
+ gst_bin_add (GST_BIN (p->pipeline), p->rtppay);
+ gst_bin_add (GST_BIN (p->pipeline), p->rtpdepay);
+ gst_bin_add (GST_BIN (p->pipeline), p->fakesink);
+
+ /* Link elements. */
+- gst_element_link (p->fdsrc, p->capsfilter);
+- gst_element_link (p->capsfilter, p->rtppay);
++ gst_element_link (p->appsrc, p->rtppay);
+ gst_element_link (p->rtppay, p->rtpdepay);
+ gst_element_link (p->rtpdepay, p->fakesink);
+
+@@ -240,15 +215,6 @@ rtp_pipeline_destroy (rtp_pipeline * p)
+ /* Release pipeline. */
+ RELEASE_ELEMENT (p->pipeline);
+
+- /* Close pipe. */
+- if (p->fd[0]) {
+- close (p->fd[0]);
+- }
+-
+- if (p->fd[1]) {
+- close (p->fd[1]);
+- }
+-
+ /* Release allocated memory. */
+ free (p);
+ }
+@@ -260,11 +226,10 @@ rtp_pipeline_destroy (rtp_pipeline * p)
+ static void
+ rtp_pipeline_run (rtp_pipeline * p)
+ {
++ GstFlowReturn flow_ret;
+ GMainLoop *mainloop = NULL;
+-
+ GstBus *bus;
+-
+- gint i;
++ gint i, j;
+
+ /* Check parameters. */
+ if (p == NULL) {
+@@ -286,22 +251,28 @@ rtp_pipeline_run (rtp_pipeline * p)
+ /* Set pipeline to PLAYING. */
+ gst_element_set_state (p->pipeline, GST_STATE_PLAYING);
+
+- /* TODO: Writing may need some changes... */
+-
++ /* Push data into the pipeline */
+ for (i = 0; i < LOOP_COUNT; i++) {
+- const char *frame_data_pointer = p->frame_data;
+- int res;
+- int frame_count = p->frame_count;
+-
+- /* Write in to the pipe. */
+- while (frame_count > 0) {
+- res = write (p->fd[1], frame_data_pointer, p->frame_data_size);
+- fail_unless_equals_int (res, p->frame_data_size);
+- frame_data_pointer += p->frame_data_size;
+- frame_count--;
++ const guint8 *data = p->frame_data;
++
++ for (j = 0; j < p->frame_count; j++) {
++ GstBuffer *buf;
++
++ buf = gst_buffer_new ();
++ GST_BUFFER_DATA (buf) = (guint8 *) data;
++ GST_BUFFER_SIZE (buf) = p->frame_data_size;
++ GST_BUFFER_FLAG_SET (buf, GST_BUFFER_FLAG_READONLY);
++
++ g_signal_emit_by_name (p->appsrc, "push-buffer", buf, &flow_ret);
++ fail_unless_equals_int (flow_ret, GST_FLOW_OK);
++ data += p->frame_data_size;
++
++ gst_buffer_unref (buf);
+ }
+ }
+
++ g_signal_emit_by_name (p->appsrc, "end-of-stream", &flow_ret);
++
+ /* Run mainloop. */
+ g_main_loop_run (mainloop);
+
+@@ -350,8 +321,8 @@ rtp_pipeline_enable_lists (rtp_pipeline * p, guint mtu_size)
+ * @use_lists enable buffer lists
+ */
+ static void
+-rtp_pipeline_test (const char *frame_data, int frame_data_size, int frame_count,
+- const char *filtercaps, const char *pay, const char *depay,
++rtp_pipeline_test (const guint8 * frame_data, int frame_data_size,
++ int frame_count, const char *filtercaps, const char *pay, const char *depay,
+ guint bytes_sent, guint mtu_size, gboolean use_lists)
+ {
+ /* Create RTP pipeline. */
+@@ -380,7 +351,7 @@ rtp_pipeline_test (const char *frame_data, int frame_data_size, int frame_count,
+ }
+ }
+
+-static char rtp_ilbc_frame_data[] =
++static const guint8 rtp_ilbc_frame_data[] =
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ };
+@@ -397,7 +368,7 @@ GST_START_TEST (rtp_ilbc)
+ }
+
+ GST_END_TEST;
+-static char rtp_gsm_frame_data[] =
++static const guint8 rtp_gsm_frame_data[] =
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ };
+@@ -414,7 +385,7 @@ GST_START_TEST (rtp_gsm)
+ }
+
+ GST_END_TEST;
+-static char rtp_amr_frame_data[] =
++static const guint8 rtp_amr_frame_data[] =
+ { 0x3c, 0x24, 0x03, 0xb3, 0x48, 0x10, 0x68, 0x46, 0x6c, 0xec, 0x03,
+ 0x7a, 0x37, 0x16, 0x41, 0x41, 0xc0, 0x00, 0x0d, 0xcd, 0x12, 0xed,
+ 0xad, 0x80, 0x00, 0x00, 0x11, 0x31, 0x00, 0x00, 0x0d, 0xa0
+@@ -432,7 +403,7 @@ GST_START_TEST (rtp_amr)
+ }
+
+ GST_END_TEST;
+-static char rtp_pcma_frame_data[] =
++static const guint8 rtp_pcma_frame_data[] =
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ };
+@@ -449,7 +420,7 @@ GST_START_TEST (rtp_pcma)
+ }
+
+ GST_END_TEST;
+-static char rtp_pcmu_frame_data[] =
++static const guint8 rtp_pcmu_frame_data[] =
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ };
+@@ -466,7 +437,7 @@ GST_START_TEST (rtp_pcmu)
+ }
+
+ GST_END_TEST;
+-static char rtp_mpa_frame_data[] =
++static const guint8 rtp_mpa_frame_data[] =
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ };
+@@ -483,7 +454,7 @@ GST_START_TEST (rtp_mpa)
+ }
+
+ GST_END_TEST;
+-static char rtp_h263_frame_data[] =
++static const guint8 rtp_h263_frame_data[] =
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ };
+@@ -495,12 +466,12 @@ static int rtp_h263_frame_count = 1;
+ GST_START_TEST (rtp_h263)
+ {
+ rtp_pipeline_test (rtp_h263_frame_data, rtp_h263_frame_data_size,
+- rtp_h263_frame_count, "video/x-h263,variant=itu,h263version=h263",
++ rtp_h263_frame_count, "video/x-h263,variant=(string)itu,h263version=h263",
+ "rtph263pay", "rtph263depay", 0, 0, FALSE);
+ }
+
+ GST_END_TEST;
+-static char rtp_h263p_frame_data[] =
++static const guint8 rtp_h263p_frame_data[] =
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ };
+@@ -512,12 +483,12 @@ static int rtp_h263p_frame_count = 1;
+ GST_START_TEST (rtp_h263p)
+ {
+ rtp_pipeline_test (rtp_h263p_frame_data, rtp_h263p_frame_data_size,
+- rtp_h263p_frame_count, "video/x-h263,variant=itu", "rtph263ppay",
++ rtp_h263p_frame_count, "video/x-h263,variant=(string)itu", "rtph263ppay",
+ "rtph263pdepay", 0, 0, FALSE);
+ }
+
+ GST_END_TEST;
+-static char rtp_h264_frame_data[] =
++static const guint8 rtp_h264_frame_data[] =
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ };
+@@ -528,13 +499,14 @@ static int rtp_h264_frame_count = 1;
+
+ GST_START_TEST (rtp_h264)
+ {
++ /* FIXME 0.11: fully specify h264 caps (and make payloader check) */
+ rtp_pipeline_test (rtp_h264_frame_data, rtp_h264_frame_data_size,
+ rtp_h264_frame_count, "video/x-h264", "rtph264pay", "rtph264depay",
+ 0, 0, FALSE);
+ }
+
+ GST_END_TEST;
+-static char rtp_h264_list_lt_mtu_frame_data[] =
++static const guint8 rtp_h264_list_lt_mtu_frame_data[] =
+ /* not packetized, next NAL starts with 0001 */
+ { 0x00, 0x00, 0x00, 0x01, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
+@@ -552,6 +524,7 @@ static int rtp_h264_list_lt_mtu_mtu_size = 1024;
+
+ GST_START_TEST (rtp_h264_list_lt_mtu)
+ {
++ /* FIXME 0.11: fully specify h264 caps (and make payloader check) */
+ rtp_pipeline_test (rtp_h264_list_lt_mtu_frame_data,
+ rtp_h264_list_lt_mtu_frame_data_size, rtp_h264_list_lt_mtu_frame_count,
+ "video/x-h264", "rtph264pay", "rtph264depay",
+@@ -559,7 +532,7 @@ GST_START_TEST (rtp_h264_list_lt_mtu)
+ }
+
+ GST_END_TEST;
+-static char rtp_h264_list_gt_mtu_frame_data[] =
++static const guint8 rtp_h264_list_gt_mtu_frame_data[] =
+ /* not packetized, next NAL starts with 0001 */
+ { 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+@@ -580,6 +553,7 @@ static int rtp_h264_list_gt_mtu_mty_size = 28;
+
+ GST_START_TEST (rtp_h264_list_gt_mtu)
+ {
++ /* FIXME 0.11: fully specify h264 caps (and make payloader check) */
+ rtp_pipeline_test (rtp_h264_list_gt_mtu_frame_data,
+ rtp_h264_list_gt_mtu_frame_data_size, rtp_h264_list_gt_mtu_frame_count,
+ "video/x-h264", "rtph264pay", "rtph264depay",
+@@ -587,7 +561,7 @@ GST_START_TEST (rtp_h264_list_gt_mtu)
+ }
+
+ GST_END_TEST;
+-static char rtp_L16_frame_data[] =
++static const guint8 rtp_L16_frame_data[] =
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ };
+@@ -605,7 +579,7 @@ GST_START_TEST (rtp_L16)
+ }
+
+ GST_END_TEST;
+-static char rtp_mp2t_frame_data[] =
++static const guint8 rtp_mp2t_frame_data[] =
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ };
+@@ -622,7 +596,7 @@ GST_START_TEST (rtp_mp2t)
+ }
+
+ GST_END_TEST;
+-static char rtp_mp4v_frame_data[] =
++static const guint8 rtp_mp4v_frame_data[] =
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ };
+@@ -639,7 +613,7 @@ GST_START_TEST (rtp_mp4v)
+ }
+
+ GST_END_TEST;
+-static char rtp_mp4v_list_frame_data[] =
++static const guint8 rtp_mp4v_list_frame_data[] =
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ };
+@@ -659,7 +633,7 @@ GST_START_TEST (rtp_mp4v_list)
+ }
+
+ GST_END_TEST;
+-static char rtp_mp4g_frame_data[] =
++static const guint8 rtp_mp4g_frame_data[] =
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ };
+@@ -677,7 +651,7 @@ GST_START_TEST (rtp_mp4g)
+ }
+
+ GST_END_TEST;
+-static char rtp_theora_frame_data[] =
++static const guint8 rtp_theora_frame_data[] =
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ };
+@@ -694,7 +668,7 @@ GST_START_TEST (rtp_theora)
+ }
+
+ GST_END_TEST;
+-static char rtp_vorbis_frame_data[] =
++static const guint8 rtp_vorbis_frame_data[] =
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ };
+@@ -711,7 +685,7 @@ GST_START_TEST (rtp_vorbis)
+ }
+
+ GST_END_TEST;
+-static char rtp_jpeg_frame_data[] =
++static const guint8 rtp_jpeg_frame_data[] =
+ { /* SOF */ 0xFF, 0xC0, 0x00, 0x11, 0x08, 0x00, 0x08, 0x00, 0x08,
+ 0x03, 0x00, 0x21, 0x08, 0x01, 0x11, 0x08, 0x02, 0x11, 0x08,
+ /* DQT */ 0xFF, 0xDB, 0x00, 0x43, 0x08,
+@@ -738,7 +712,7 @@ GST_START_TEST (rtp_jpeg)
+ }
+
+ GST_END_TEST;
+-static char rtp_jpeg_list_frame_data[] =
++static const guint8 rtp_jpeg_list_frame_data[] =
+ { /* SOF */ 0xFF, 0xC0, 0x00, 0x11, 0x08, 0x00, 0x08, 0x00, 0x08,
+ 0x03, 0x00, 0x21, 0x08, 0x01, 0x11, 0x08, 0x02, 0x11, 0x08,
+ /* DQT */ 0xFF, 0xDB, 0x00, 0x43, 0x08,
+@@ -767,7 +741,7 @@ GST_START_TEST (rtp_jpeg_list)
+ }
+
+ GST_END_TEST;
+-static char rtp_g729_frame_data[] =
++static const guint8 rtp_g729_frame_data[] =
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+ };
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/multimedia/gst0-plugins-good/patches/01-souptest.patch b/multimedia/gst0-plugins-good/patches/01-souptest.patch
new file mode 100644
index 0000000000..a025eb6b98
--- /dev/null
+++ b/multimedia/gst0-plugins-good/patches/01-souptest.patch
@@ -0,0 +1,28 @@
+From 5765db50a19498e3d1576b4279cb2ca984da9dcd Mon Sep 17 00:00:00 2001
+From: Edward Hervey <bilboed@bilboed.com>
+Date: Tue, 23 Sep 2014 09:47:31 +0200
+Subject: check/soup: Temporarily disable G_ENABLE_DIAGNOSTIC
+
+The SOUP_SERVER_PORT property has been deprecated in recent libsoup
+versions.
+
+diff --git a/tests/check/elements/souphttpsrc.c b/tests/check/elements/souphttpsrc.c
+index 33431ac..dfb682b 100644
+--- a/tests/check/elements/souphttpsrc.c
++++ b/tests/check/elements/souphttpsrc.c
+@@ -602,7 +602,12 @@ run_server (guint * http_port, guint * https_port)
+
+ *http_port = *https_port = 0;
+
++ /* The G_ENABLE_DIAGNOSTIC is temporarily overriden to avoid
++ * property deprecation warnings (for the SOUP_SERVER_PORT
++ * property) */
++ g_setenv ("G_ENABLE_DIAGNOSTIC", "0", TRUE);
+ server = soup_server_new (SOUP_SERVER_PORT, port, NULL);
++ g_setenv ("G_ENABLE_DIAGNOSTIC", "1", TRUE);
+ if (!server) {
+ GST_DEBUG ("Unable to bind to server port %u", port);
+ return FALSE;
+--
+cgit v0.10.2
+
diff --git a/multimedia/gst0-plugins-good/patches/02-v4l.compile.fixes.diff b/multimedia/gst0-plugins-good/patches/02-v4l.compile.fixes.diff
new file mode 100644
index 0000000000..e03fdac894
--- /dev/null
+++ b/multimedia/gst0-plugins-good/patches/02-v4l.compile.fixes.diff
@@ -0,0 +1,57 @@
+From fa21c0bb253213c9dc48ce72faaf7090dc8a3554 Mon Sep 17 00:00:00 2001
+From: Colin Walters <walters@verbum.org>
+Date: Thu, 2 May 2013 16:16:46 -0400
+Subject: [PATCH] sys/v4l2: Some blind compilation fixes
+
+---
+ sys/v4l2/gstv4l2bufferpool.c | 1 -
+ sys/v4l2/v4l2_calls.c | 12 ++++--------
+ 2 files changed, 4 insertions(+), 9 deletions(-)
+
+diff --git a/sys/v4l2/gstv4l2bufferpool.c b/sys/v4l2/gstv4l2bufferpool.c
+index a0b4c84..3916815 100644
+--- a/sys/v4l2/gstv4l2bufferpool.c
++++ b/sys/v4l2/gstv4l2bufferpool.c
+@@ -182,7 +182,6 @@ gst_v4l2_buffer_new (GstV4l2BufferPool * pool, guint index, GstCaps * caps)
+ GST_LOG_OBJECT (pool->v4l2elem, " MMAP offset: %u",
+ ret->vbuffer.m.offset);
+ GST_LOG_OBJECT (pool->v4l2elem, " length: %u", ret->vbuffer.length);
+- GST_LOG_OBJECT (pool->v4l2elem, " input: %u", ret->vbuffer.input);
+
+ ret->mmap_length = ret->vbuffer.length;
+ data = (guint8 *) v4l2_mmap (0, ret->vbuffer.length,
+diff --git a/sys/v4l2/v4l2_calls.c b/sys/v4l2/v4l2_calls.c
+index 309bfb6..ee3ff9f 100644
+--- a/sys/v4l2/v4l2_calls.c
++++ b/sys/v4l2/v4l2_calls.c
+@@ -53,14 +53,6 @@
+
+ #include "gst/gst-i18n-plugin.h"
+
+-/* Those are ioctl calls */
+-#ifndef V4L2_CID_HCENTER
+-#define V4L2_CID_HCENTER V4L2_CID_HCENTER_DEPRECATED
+-#endif
+-#ifndef V4L2_CID_VCENTER
+-#define V4L2_CID_VCENTER V4L2_CID_VCENTER_DEPRECATED
+-#endif
+-
+ GST_DEBUG_CATEGORY_EXTERN (v4l2_debug);
+ #define GST_CAT_DEFAULT v4l2_debug
+
+@@ -294,8 +286,12 @@ gst_v4l2_fill_lists (GstV4l2Object * v4l2object)
+ break;
+ case V4L2_CID_HFLIP:
+ case V4L2_CID_VFLIP:
++#ifdef V4L2_CID_HCENTER
+ case V4L2_CID_HCENTER:
++#endif
++#ifdef V4L2_CID_VCENTER
+ case V4L2_CID_VCENTER:
++#endif
+ #ifdef V4L2_CID_PAN_RESET
+ case V4L2_CID_PAN_RESET:
+ #endif
+--
+1.7.1
+
diff --git a/multimedia/gst0-plugins-good/slack-desc b/multimedia/gst0-plugins-good/slack-desc
new file mode 100644
index 0000000000..51d5272810
--- /dev/null
+++ b/multimedia/gst0-plugins-good/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the good package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+gst0-plugins-good: gst0-plugins-good (good set of GStreamer plugins, v0)
+gst0-plugins-good:
+gst0-plugins-good: GStreamer Good Plug-ins is a set of plug-ins that have good quality
+gst0-plugins-good: code, correct functionality, and a good license (LGPL for the plug-in
+gst0-plugins-good: code, LGPL or LGPL-compatible for the supporting library).
+gst0-plugins-good:
+gst0-plugins-good:
+gst0-plugins-good:
+gst0-plugins-good:
+gst0-plugins-good:
+gst0-plugins-good:
diff --git a/multimedia/gstreamer0/gstreamer-0.10.36-bison3.patch b/multimedia/gstreamer0/gstreamer-0.10.36-bison3.patch
new file mode 100644
index 0000000000..f569b1d85c
--- /dev/null
+++ b/multimedia/gstreamer0/gstreamer-0.10.36-bison3.patch
@@ -0,0 +1,31 @@
+From 60516f4798894f958fc53b470e1283318d0f8706 Mon Sep 17 00:00:00 2001
+From: Kerrick Staley <kerrick@kerrickstaley.com>
+Date: Wed, 21 Aug 2013 06:59:29 +0000
+Subject: parse: make grammar.y work with Bison 3
+
+YYLEX_PARAM is no longer supported in Bison 3.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=706462
+---
+diff --git a/gst/parse/grammar.y b/gst/parse/grammar.y
+index 24fc87b..7f9dd16 100644
+--- a/gst/parse/grammar.y
++++ b/gst/parse/grammar.y
+@@ -26,7 +26,6 @@
+ */
+
+ #define YYERROR_VERBOSE 1
+-#define YYLEX_PARAM scanner
+
+ #define YYENABLE_NLS 0
+
+@@ -648,6 +647,7 @@ static int yyerror (void *scanner, graph_t *graph, const char *s);
+ %right '.'
+ %left '!' '='
+
++%lex-param { void *scanner }
+ %parse-param { void *scanner }
+ %parse-param { graph_t *graph }
+ %pure-parser
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/multimedia/dvdauthor/dvdauthor.SlackBuild b/multimedia/gstreamer0/gstreamer0.SlackBuild
index bf785bab21..b598b2b733 100644
--- a/multimedia/dvdauthor/dvdauthor.SlackBuild
+++ b/multimedia/gstreamer0/gstreamer0.SlackBuild
@@ -1,10 +1,11 @@
#!/bin/sh
-# Slackware build script for dvdauthor
+# Slackware build script for gstreamer0
-# Copyright 2007 Brian Reichert <rignes@pobox.com>
-# Copyright 2010,2013 Niels Horn - Rio de Janeiro, Brazil
-# Copyright 2015, 2017 Edward W. Koenig - Vancouver, Washington USA
+# Copyright 2008 Robby Workman, Northport, Alabama, USA
+# Copyright 2008 Michiel van Wessem <michiel@slackbuilds.org>
+# Copyright 2008, 2009, 2010, 2013, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2021 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,18 +25,15 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# Revision date: 2013/03/28
-# 25-JUL-2015: new maintainer
-# 29-JAN-2017: version update fixes missing header includes
-
-PRGNAM=dvdauthor
-VERSION=${VERSION:-0.7.2}
+PRGNAM=gstreamer0
+SRCNAM=gstreamer
+VERSION=${VERSION:-0.10.36}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -46,8 +44,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -60,14 +58,16 @@ else
LIBDIRSUFFIX=""
fi
+DOCS="AUTHORS COPYING* INSTALL MAINTAINERS NEWS README* RELEASE TODO"
+
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z
+cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -75,26 +75,37 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p1 < $CWD/gstreamer-0.10.36-bison3.patch || exit 1
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
- --libdir=/usr/lib$LIBDIRSUFFIX \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
- --build=$ARCH-slackware-linux
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --disable-static \
+ --disable-debug \
+ --disable-gst-debug \
+ --enable-glib-asserts=no \
+ --with-package-name='gstreamer' \
+ --with-package-origin='http://gstreamer.freedesktop.org' \
+ --build=$ARCH-slackware-linux || exit 1
make
-make install-strip DESTDIR=$PKG
+make install DESTDIR=$PKG
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS ChangeLog COPYING INSTALL README TODO $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
+
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/multimedia/gstreamer0/gstreamer0.info b/multimedia/gstreamer0/gstreamer0.info
new file mode 100644
index 0000000000..4fb19812ae
--- /dev/null
+++ b/multimedia/gstreamer0/gstreamer0.info
@@ -0,0 +1,10 @@
+PRGNAM="gstreamer0"
+VERSION="0.10.36"
+HOMEPAGE="https://gstreamer.freedesktop.org"
+DOWNLOAD="https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-0.10.36.tar.xz"
+MD5SUM="15389c73e091b1dda915279c388b9cb2"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Matteo Bernardini"
+EMAIL="ponce@slackbuilds.org"
diff --git a/multimedia/gstreamer0/slack-desc b/multimedia/gstreamer0/slack-desc
new file mode 100644
index 0000000000..31bcf2128f
--- /dev/null
+++ b/multimedia/gstreamer0/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+gstreamer0: gstreamer0 (streaming multimedia framework, v0)
+gstreamer0:
+gstreamer0: GStreamer is a library that allows the construction of graphs of a
+gstreamer0: media-handling components, ranging from simple Ogg/Vorbis playback
+gstreamer0: to complex audio (mixing) and video (non-linear editing) processing.
+gstreamer0: Applications can take advantage of advances in codec and filter
+gstreamer0: technology transparently. Developers can add new codecs and filters
+gstreamer0: by writing a simple plugin with a clean, generic interface.
+gstreamer0:
+gstreamer0: GStreamer is released under the LGPL.
+gstreamer0:
diff --git a/multimedia/gtkpod/gtkpod.SlackBuild b/multimedia/gtkpod/gtkpod.SlackBuild
index 5b0d2dc3c4..8f6d03c72d 100644
--- a/multimedia/gtkpod/gtkpod.SlackBuild
+++ b/multimedia/gtkpod/gtkpod.SlackBuild
@@ -69,7 +69,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -fcommon" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/multimedia/kdenlive/README b/multimedia/kdenlive/README
deleted file mode 100644
index 067bb89104..0000000000
--- a/multimedia/kdenlive/README
+++ /dev/null
@@ -1,18 +0,0 @@
-kdenlive (KDE Non Linear Video Editor)
-
-Kdenlive is an intuitive and powerful non-linear multi-track video
-editor which supports DV, AVCHD and HDV editing, using many of the latest
-video technologies.
-
-Currently under development and using the MLT video framework,
-Kdenlive provides dual video monitors, a multi-track timeline and clip
-list. Features include customizable layout support, basic effects and
-transitions, in-program access to online resources from Freesound,
-Archive.org, and Open Clip Art. Kdenlive also features integrated basic
-DVD authoring capability.
-
-If you do not have the KDE desktop installed, you will need at least:
-kdelibs, kdebase
-
-NOTE:
-This requires recordmydesktop from Slackware's extra directory.
diff --git a/multimedia/kdenlive/doinst.sh b/multimedia/kdenlive/doinst.sh
deleted file mode 100644
index 6c9ac6b5e3..0000000000
--- a/multimedia/kdenlive/doinst.sh
+++ /dev/null
@@ -1,19 +0,0 @@
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
-fi
-
-if [ -x /usr/bin/update-mime-database ]; then
- /usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
-fi
-
-if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
- if [ -x /usr/bin/gtk-update-icon-cache ]; then
- /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
- fi
-fi
-
-if [ -e usr/share/icons/oxygen/icon-theme.cache ]; then
- if [ -x /usr/bin/gtk-update-icon-cache ]; then
- /usr/bin/gtk-update-icon-cache -f usr/share/icons/oxygen >/dev/null 2>&1
- fi
-fi
diff --git a/multimedia/kdenlive/kdenlive.info b/multimedia/kdenlive/kdenlive.info
deleted file mode 100644
index f95ca6275f..0000000000
--- a/multimedia/kdenlive/kdenlive.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="kdenlive"
-VERSION="0.9.10"
-HOMEPAGE="http://www.kdenlive.org/"
-DOWNLOAD="http://download.kde.org/stable/kdenlive/0.9.10/src/kdenlive-0.9.10.tar.bz2"
-MD5SUM="40d7ee8e388cb084f5eb1ad1596a14b2"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="amrnb dvdauthor dvgrab faac faad2 gsm lame mlt schroedinger x264 xvidcore"
-MAINTAINER="Edward W. Koenig"
-EMAIL="kingbeowulf@gmail.com"
diff --git a/multimedia/kdenlive/slack-desc b/multimedia/kdenlive/slack-desc
deleted file mode 100644
index 37f69e544e..0000000000
--- a/multimedia/kdenlive/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-kdenlive: kdenlive (KDE Non Linear Video Editor)
-kdenlive:
-kdenlive: Using the MLT video framework. It is currently under development
-kdenlive: Kdenlive provides dual video monitors, a multi-track timeline and
-kdenlive: clip list. Other features include customizable layout support, basic
-kdenlive: effects and transition, direct import from online resources such as
-kdenlive: Freesound, Archive.org, and Open Clip Art. Integrated DVD authoring.
-kdenlive:
-kdenlive: http://kdenlive.sourceforge.net
-kdenlive:
-kdenlive:
diff --git a/multimedia/lives/lives.SlackBuild b/multimedia/lives/lives.SlackBuild
index c224ef53ef..9fdb34b79b 100644
--- a/multimedia/lives/lives.SlackBuild
+++ b/multimedia/lives/lives.SlackBuild
@@ -28,7 +28,7 @@
PRGNAM=lives
SRCNAM=LiVES
-VERSION=${VERSION:-3.0.2}
+VERSION=${VERSION:-3.2.0}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
@@ -89,7 +89,7 @@ if [ pkg-config --exists opencv ]; then
automake
fi
-CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -fcommon -I/usr/include/tirpc -Wl,-ltirpc" \
CXXFLAGS="$SLKCFLAGS -std=c++11" \
./configure \
--prefix=/usr \
diff --git a/multimedia/lives/lives.info b/multimedia/lives/lives.info
index 75cf5bdf82..027b93b218 100644
--- a/multimedia/lives/lives.info
+++ b/multimedia/lives/lives.info
@@ -1,8 +1,8 @@
PRGNAM="lives"
-VERSION="3.0.2"
+VERSION="3.2.0"
HOMEPAGE="http://lives-video.com/"
-DOWNLOAD="http://lives-video.com/releases/LiVES-3.0.2.tar.bz2"
-MD5SUM="70197ae4af2b34ee24a6a66bf1026aff"
+DOWNLOAD="http://lives-video.com/releases/LiVES-3.2.0.tar.bz2"
+MD5SUM="5d7bd0ad41d3189b62c002e518fb94c8"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="jack"
diff --git a/multimedia/minidlna/minidlna.SlackBuild b/multimedia/minidlna/minidlna.SlackBuild
index a1e2d4b26a..fe1e323072 100644
--- a/multimedia/minidlna/minidlna.SlackBuild
+++ b/multimedia/minidlna/minidlna.SlackBuild
@@ -24,13 +24,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=minidlna
-VERSION=${VERSION:-1.1.5}
+VERSION=${VERSION:-1.3.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -41,8 +41,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -70,9 +70,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-./autogen.sh
-
-CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -fcommon" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/multimedia/minidlna/minidlna.info b/multimedia/minidlna/minidlna.info
index 1dad012127..78915d092a 100644
--- a/multimedia/minidlna/minidlna.info
+++ b/multimedia/minidlna/minidlna.info
@@ -1,8 +1,8 @@
PRGNAM="minidlna"
-VERSION="1.1.5"
+VERSION="1.3.0"
HOMEPAGE="http://minidlna.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/minidlna/minidlna-1.1.5.tar.gz"
-MD5SUM="1970e553a1eb8a3e7e302e2ce292cbc4"
+DOWNLOAD="http://downloads.sourceforge.net/minidlna/minidlna-1.3.0.tar.gz"
+MD5SUM="89e92d1938ee3066631d4ca9fbf31507"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="ffmpeg"
diff --git a/multimedia/mkvtoolnix/mkvtoolnix.SlackBuild b/multimedia/mkvtoolnix/mkvtoolnix.SlackBuild
index 173fe0b26d..276544b8c6 100644
--- a/multimedia/mkvtoolnix/mkvtoolnix.SlackBuild
+++ b/multimedia/mkvtoolnix/mkvtoolnix.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=mkvtoolnix
-VERSION=${VERSION:-34.0.0}
+VERSION=${VERSION:-55.0.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/multimedia/mkvtoolnix/mkvtoolnix.info b/multimedia/mkvtoolnix/mkvtoolnix.info
index 7dfe9e7827..5eeb9eac06 100644
--- a/multimedia/mkvtoolnix/mkvtoolnix.info
+++ b/multimedia/mkvtoolnix/mkvtoolnix.info
@@ -1,8 +1,8 @@
PRGNAM="mkvtoolnix"
-VERSION="34.0.0"
+VERSION="55.0.0"
HOMEPAGE="https://mkvtoolnix.download/"
-DOWNLOAD="https://mkvtoolnix.download/sources/mkvtoolnix-34.0.0.tar.xz"
-MD5SUM="f8cdbcd2d9f87c21309eacf5f6ff7642"
+DOWNLOAD="https://mkvtoolnix.download/sources/mkvtoolnix-55.0.0.tar.xz"
+MD5SUM="b5ebe20453aabef3c5912815d64c2160"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="cmark"
diff --git a/multimedia/mlt/README b/multimedia/mlt/README
deleted file mode 100644
index 5177fadcb4..0000000000
--- a/multimedia/mlt/README
+++ /dev/null
@@ -1,11 +0,0 @@
-MLT is an open source multimedia framework, designed and developed for
-television broadcasting. It provides a toolkit for broadcasters, video
-editors, media players, transcoders, web streamers and many more types
-of applications. The functionality of the system is provided via an
-assortment of ready to use tools, XML authoring components, and an
-extensible plug-in based API.
-
-Optional dependencies are qt5, ladspa_sdk, frei0r, swfdec and jack-rack.
-
-The build script autodetect language interpreters on your system
-and build the relative bindings.
diff --git a/multimedia/mlt/doinst.sh b/multimedia/mlt/doinst.sh
deleted file mode 100644
index a069af7fb1..0000000000
--- a/multimedia/mlt/doinst.sh
+++ /dev/null
@@ -1,20 +0,0 @@
-config() {
- NEW="$1"
- OLD="$(dirname $NEW)/$(basename $NEW .new)"
- # If there's no config file by that name, mv it over:
- if [ ! -r $OLD ]; then
- mv $NEW $OLD
- elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
- # toss the redundant copy
- rm $NEW
- fi
- # Otherwise, we leave the .new copy for the admin to consider...
-}
-
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
-fi
-
-if [ -x /usr/bin/update-mime-database ]; then
- /usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
-fi
diff --git a/multimedia/mlt/mlt.SlackBuild b/multimedia/mlt/mlt.SlackBuild
deleted file mode 100644
index f2f9273682..0000000000
--- a/multimedia/mlt/mlt.SlackBuild
+++ /dev/null
@@ -1,217 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for mlt.
-
-# Written by stormtracknole - stormtracknole@gmail.com
-# Modified by Erik Hanson (erik@slackbuilds.org) with
-# help from Jonathan Larsen (agentc0re@learnix.net)
-# Maintatiner: Edward W. Koenig <kingbeowulf@gmail.com>
-#
-# Feb 16, 2010 - Modified the script and defined the $PYTHON variable
-# outside of the if statement because it was causing issues with
-# the other if statement that also relies on it's answer.
-# - Fixed the second PYTHON if statement that finds the site package
-# directory. Added parentheses around the part that cd's into the
-# python swig src to copy the files to the site packages so that it
-# would interfere with the CWD before it
-#
-# +---------------------------------------+
-# Mar 3rd, 2010
-# *Version upgrade to 0.5.2
-# *fixed the "strip" for bash 4
-# compatability
-# +---------------------------------------+
-# Sept 12, 2010
-# *Version upgrade to 0.5.6
-# *Bug fixes and enhancements added
-# +---------------------------------------+
-# May 16, 2011
-# *Version upgrade to 0.7.2
-# +---------------------------------------+
-# Dec 14, 2011
-# *Version upgrade to 0.7.6
-# *Bug fixes
-# +---------------------------------------+
-# Jul 2, 2012
-# *Version upgrade to 0.8.0
-# *Bug fixes
-# +---------------------------------------+
-# Apr 2, 2013
-# *Version upgrade to 0.8.8
-# *Added frei0r as a dependency
-# +---------------------------------------+
-# Jun 9, 2015
-# *Version upgrade to 0.9.6
-# *Fixed lua portion of the code
-# thanks to John Vogel.
-# +---------------------------------------+
-# 20-MAR-2016 new maintainer, version update to 6.0.0
-# 11-OCT-2016 version update
-# 22-OCT-2016 add qt5 support, bug fixes/addenda (Larry Hajali)
-# 29-JAN-2017 version update
-# 16-APR-2017 Compiling with vdpau is no longer supported ffmpeg-3.x
-# 08-AUG-2018 version update, remove qt5 patch
-# 16-APR-2019 version update
-# 14-JUL-2019 version update
-
-PRGNAM=mlt
-VERSION=${VERSION:-6.16.0}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-# Autodetect which SWIG Languages bindings to build
-# according to what's installed on the system:
-if [ -f "$(which javac)" ]; then java="java"; else java=""; fi
-if [ -f "$(which lua)" ]; then lua="lua"; else lua=""; fi
-if [ -f "$(which perl)" ]; then perl="perl"; else perl=""; fi
-if [ -f "$(which php)" ]; then php="php"; else php=""; fi
-if [ -f "$(which python)" ]; then python="python"; else python=""; fi
-if [ -h "$(which tclsh)" ]; then tcl="tcl"; else tcl=""; fi
-if [ -f "$(which csharp)" ]; then csharp="csharp"; else csharp=""; fi
-if [ -f "$(which ruby)" ]; then ruby="ruby"; else ruby=""; fi
-
-# Use qt5 if present, otherwise system default
-if pkg-config --exists Qt5 ; then
- qt="--qt-libdir=$(pkg-config Qt5 --variable=libdir)
- --qt-includedir=$(pkg-config Qt5 --variable=headerdir)"
-else
- qt="--qt-libdir=$(pkg-config Qt --variable=libdir)
- --qt-includedir=$(pkg-config Qt --variable=headerdir)"
-fi
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --disable-debug \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --enable-gpl \
- --enable-gpl3 \
- --luma-compress \
- --enable-motion-est \
- $qt \
- --swig-languages="$java $lua $perl $php $python $ruby $tcl $csharp" \
- --build=$ARCH-slackware-linux
-
-# qt5 fixup thanks to AlienBOB!
-sed -i -e 's/CXXFLAGS :=/CXXFLAGS := --std=c++11/' src/modules/qt/Makefile
-
-make clean
-CFLAGS="$SLKCFLAGS" CXXFLAGS="$SLKCFLAGS" make
-make install DESTDIR=$PKG
-
-# Install built bindings
-if [ "$lua" ]; then
- ( cd $TMP/$PRGNAM-$VERSION/src/swig/lua
- install -D -m 0755 mlt.so $PKG/$(pkg-config --variable INSTALL_CMOD lua)/mlt.so
- install -D -m 0644 play.lua $PKG/usr/doc/$PRGNAM-$VERSION/play.lua
- )
-fi
-if [ "$perl" ]; then
- ( cd $TMP/$PRGNAM-$VERSION/src/swig/perl
- install -D -m 0644 mlt.pm $PKG/usr/share/perl5/mlt.pm
- install -D -m 0755 play.pl $PKG/usr/share/perl5/play.pl
- install -D -m 0755 blib/arch/auto/mlt/mlt.so \
- $PKG/usr/lib$LIBDIRSUFFIX/perl5/auto/mlt/mlt.so
- install -D -m 0644 mlt.bs \
- $PKG/usr/lib$LIBDIRSUFFIX/perl5/auto/mlt/mlt.bs
- )
-fi
-if [ "$php" ]; then
- ( cd $TMP/$PRGNAM-$VERSION/src/swig/php
- install -D -m 0755 mlt.so $PKG/usr/lib$LIBDIRSUFFIX/php/extensions/mlt.so
- install -D -m 0644 play.php $PKG/usr/doc/$PRGNAM-$VERSION/play.php
- mkdir -p $PKG/etc/php.d
- cat > $PKG/etc/php.d/$PRGNAM.ini.new << EOF
-; Enable mlt extension module
-; extension=$PRGNAM.so
-EOF
- )
-fi
-if [ "$python" ]; then
- PYTHONSITEPKG=$(python -c "import sys, os; print os.path.join('/usr/lib${LIBDIRSUFFIX}', 'python%s' % sys.version[:3], 'site-packages')")
- ( cd $TMP/$PRGNAM-$VERSION/src/swig/python
- install -D -m 0755 _mlt.so $PKG/$PYTHONSITEPKG/_mlt.so
- install -D -m 0755 mlt.py $PKG/$PYTHONSITEPKG/mlt.py
- install -D -m 0755 play.py $PKG/usr/doc/$PRGNAM-$VERSION/play.py
- )
-fi
-if [ "$ruby" ]; then
- ( cd $TMP/$PRGNAM-$VERSION/src/swig/ruby
- install -D -m 0755 mlt.so \
- $PKG$(ruby -e 'print RbConfig::CONFIG["sitearchdir"]')/mlt.so
- install -D -m 0755 play.rb $PKG/usr/doc/$PRGNAM-$VERSION/play.rb
- install -D -m 0755 thumbs.rb $PKG/usr/doc/$PRGNAM-$VERSION/thumbs.rb
- )
-fi
-if [ "$tcl" ]; then
- ( cd $TMP/$PRGNAM-$VERSION/src/swig/tcl
- . /usr/lib$LIBDIRSUFFIX/tclConfig.sh
- install -D -m 0755 mlt.so \
- $PKG/usr/lib$LIBDIRSUFFIX/tcl$TCL_MAJOR_VERSION/$TCL_VERSION/mlt.so
- install -D -m 0755 play.tcl $PKG/usr/doc/$PRGNAM-$VERSION/play.tcl
- )
-fi
-
-# todo: java, csharp
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS ChangeLog NEWS COPYING README GPL $PKG/usr/doc/$PRGNAM-$VERSION
-cat src/modules/motion_est/README > $PKG/usr/doc/$PRGNAM-$VERSION/README.motion_est
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-if [ "$php" ]; then
- echo "config etc/php.d/$PRGNAM.ini.new" >> $PKG/install/doinst.sh
-fi
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/multimedia/mlt/mlt.info b/multimedia/mlt/mlt.info
deleted file mode 100644
index becf041057..0000000000
--- a/multimedia/mlt/mlt.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="mlt"
-VERSION="6.16.0"
-HOMEPAGE="https://mltframework.org/"
-DOWNLOAD="https://downloads.sourceforge.net/mlt/mlt-6.16.0.tar.gz"
-MD5SUM="e3872267232aae89f5182fd567be2596"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="ffmpeg libdv libquicktime"
-MAINTAINER="Edward W. Koenig"
-EMAIL="kingbeowulf@gmail.com"
diff --git a/multimedia/mlt/slack-desc b/multimedia/mlt/slack-desc
deleted file mode 100644
index 4ddf41c733..0000000000
--- a/multimedia/mlt/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-mlt: mlt (Open source multimedia framework)
-mlt:
-mlt: MLT is an open source multimedia framework, designed and developed
-mlt: for television broadcasting. It provides a toolkit for broadcasters,
-mlt: video editors, media players, transcoders, web streamers and many
-mlt: more types of applications. The functionality of the system is
-mlt: provided via an assortment of ready to use tools, XML authoring
-mlt: components, and an extensible plug-in based API.
-mlt:
-mlt: Homepage: https://mltframework.org/
-mlt:
diff --git a/multimedia/mythtv/libvpxenc.patch b/multimedia/mythtv/libvpxenc.patch
deleted file mode 100644
index e8c21288cb..0000000000
--- a/multimedia/mythtv/libvpxenc.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From 6540fe04a3f9a11ba7084a49b3ee5fa2fc5b32ab Mon Sep 17 00:00:00 2001
-From: James Zern <jzern@google.com>
-Date: Mon, 19 Oct 2015 22:44:11 -0700
-Subject: [PATCH] libvpxenc: remove some unused ctrl id mappings
-
-VP8E_UPD_ENTROPY, VP8E_UPD_REFERENCE, VP8E_USE_REFERENCE were removed
-from libvpx and the remaining values were never used here
-
-Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
-Signed-off-by: James Zern <jzern@google.com>
----
- libavcodec/libvpxenc.c | 8 --------
- 1 file changed, 8 deletions(-)
-
-diff --git a/libavcodec/libvpxenc.c b/libavcodec/libvpxenc.c
-index 5f39783..992122c 100644
---- a/libavcodec/libvpxenc.c
-+++ b/libavcodec/libvpxenc.c
-@@ -104,19 +104,11 @@ typedef struct VP8EncoderContext {
-
- /** String mappings for enum vp8e_enc_control_id */
- static const char *const ctlidstr[] = {
-- [VP8E_UPD_ENTROPY] = "VP8E_UPD_ENTROPY",
-- [VP8E_UPD_REFERENCE] = "VP8E_UPD_REFERENCE",
-- [VP8E_USE_REFERENCE] = "VP8E_USE_REFERENCE",
-- [VP8E_SET_ROI_MAP] = "VP8E_SET_ROI_MAP",
-- [VP8E_SET_ACTIVEMAP] = "VP8E_SET_ACTIVEMAP",
-- [VP8E_SET_SCALEMODE] = "VP8E_SET_SCALEMODE",
- [VP8E_SET_CPUUSED] = "VP8E_SET_CPUUSED",
- [VP8E_SET_ENABLEAUTOALTREF] = "VP8E_SET_ENABLEAUTOALTREF",
- [VP8E_SET_NOISE_SENSITIVITY] = "VP8E_SET_NOISE_SENSITIVITY",
-- [VP8E_SET_SHARPNESS] = "VP8E_SET_SHARPNESS",
- [VP8E_SET_STATIC_THRESHOLD] = "VP8E_SET_STATIC_THRESHOLD",
- [VP8E_SET_TOKEN_PARTITIONS] = "VP8E_SET_TOKEN_PARTITIONS",
-- [VP8E_GET_LAST_QUANTIZER] = "VP8E_GET_LAST_QUANTIZER",
- [VP8E_SET_ARNR_MAXFRAMES] = "VP8E_SET_ARNR_MAXFRAMES",
- [VP8E_SET_ARNR_STRENGTH] = "VP8E_SET_ARNR_STRENGTH",
- [VP8E_SET_ARNR_TYPE] = "VP8E_SET_ARNR_TYPE",
---
-1.7.10.4
-
-
diff --git a/multimedia/mythtv/mythtv.SlackBuild b/multimedia/mythtv/mythtv.SlackBuild
index 35b9780127..34b8f8dce5 100644
--- a/multimedia/mythtv/mythtv.SlackBuild
+++ b/multimedia/mythtv/mythtv.SlackBuild
@@ -28,7 +28,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=mythtv
-VERSION=${VERSION:-0.27.6}
+VERSION=${VERSION:-29.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -65,7 +65,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || tar xvf $CWD/v$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -80,9 +80,6 @@ sed -i \
-e"s|--without-documentation|--without-documentation --libdir=/usr/lib$LIBDIRSUFFIX|" \
configure
-# Thanks to ARCH Linux
-patch -d external/FFmpeg -p1 < $CWD/libvpxenc.patch
-
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -103,7 +100,6 @@ CXXFLAGS="$SLKCFLAGS" \
--enable-nonfree \
--enable-opengl-video \
--enable-libmp3lame \
- --enable-libfaac \
--enable-libx264 \
--enable-libvpx \
--enable-libxvid \
diff --git a/multimedia/mythtv/mythtv.info b/multimedia/mythtv/mythtv.info
index d364c7f70b..8e3236dbfe 100644
--- a/multimedia/mythtv/mythtv.info
+++ b/multimedia/mythtv/mythtv.info
@@ -1,10 +1,10 @@
PRGNAM="mythtv"
-VERSION="0.27.6"
+VERSION="29.0"
HOMEPAGE="https://www.mythtv.org/"
-DOWNLOAD="https://github.com/MythTV/mythtv/archive/v0.27.6.tar.gz"
-MD5SUM="30dce5263a03687a14ff34331ea537ad"
+DOWNLOAD="https://github.com/MythTV/mythtv/archive/v29.0/mythtv-29.0.tar.gz"
+MD5SUM="b76210627050e1adaabf8d7180f3402b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="libass faac lame MySQL-python lxml urlgrabber perl-http-message libwww-perl perl-Net-UPnP perl-IO-Socket-INET6 x264 xvidcore"
+REQUIRES="libass faac lame MySQL-python lxml urlgrabber perl-http-message libwww-perl perl-Net-UPnP perl-IO-Socket-INET6 qt5 x264 xvidcore"
MAINTAINER="David Somero"
EMAIL="dsomero@hotmail.com"
diff --git a/multimedia/obs-studio/obs-studio.SlackBuild b/multimedia/obs-studio/obs-studio.SlackBuild
index 6e7f3d75ec..01784c0c87 100644
--- a/multimedia/obs-studio/obs-studio.SlackBuild
+++ b/multimedia/obs-studio/obs-studio.SlackBuild
@@ -24,7 +24,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=obs-studio
-VERSION=${VERSION:-24.0.6}
+VERSION=${VERSION:-26.0.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -61,7 +61,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xf $CWD/$PRGNAM-$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
diff --git a/multimedia/obs-studio/obs-studio.info b/multimedia/obs-studio/obs-studio.info
index b20d69789b..944e17b577 100644
--- a/multimedia/obs-studio/obs-studio.info
+++ b/multimedia/obs-studio/obs-studio.info
@@ -1,10 +1,10 @@
PRGNAM="obs-studio"
-VERSION="24.0.6"
+VERSION="26.0.2"
HOMEPAGE="https://obsproject.com/"
-DOWNLOAD="https://github.com/obsproject/obs-studio/archive/24.0.6/obs-studio-24.0.6.tar.gz"
-MD5SUM="804bccba4476f696d15b01ff88ae02f2"
+DOWNLOAD="https://github.com/obsproject/obs-studio/archive/26.0.2/obs-studio-26.0.2.tar.gz"
+MD5SUM="75dea679867dce642c8d1910ef6da0a5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="faac ffmpeg jansson qt5 rtmpdump x264 jack libfdk-aac"
+REQUIRES="faac ffmpeg jansson luajit qt5 rtmpdump x264 jack libfdk-aac"
MAINTAINER="Christoph Willing"
EMAIL="chris.willing@linux.com"
diff --git a/multimedia/oggvideotools/oggvideotools.SlackBuild b/multimedia/oggvideotools/oggvideotools.SlackBuild
index d284d00cae..7f06b2c20f 100644
--- a/multimedia/oggvideotools/oggvideotools.SlackBuild
+++ b/multimedia/oggvideotools/oggvideotools.SlackBuild
@@ -83,7 +83,7 @@ cd build
CXXFLAGS="$SLKCFLAGS" \
cmake .. \
-DCMAKE_INSTALL_PREFIX:STRING="/usr" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS -Wno-error=narrowing" \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_VERBOSE_MAKEFILE:BOOL="TRUE"
make
diff --git a/multimedia/rtmpdump/rtmpdump.SlackBuild b/multimedia/rtmpdump/rtmpdump.SlackBuild
index b54b9fc9fe..4150809dc5 100644
--- a/multimedia/rtmpdump/rtmpdump.SlackBuild
+++ b/multimedia/rtmpdump/rtmpdump.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for rtmpdump
-# Copyright 2013-2016 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Copyright 2013-2018 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -74,6 +74,12 @@ find -L . \
# patch makefiles for shared library install
patch -p1 < $CWD/librtmp-makefile.patch
+# use gnutls instead of openssl
+sed -i \
+ -e 's/^CRYPTO=OPENSSL/#CRYPTO=OPENSSL/' \
+ -e 's/#CRYPTO=GNUTLS/CRYPTO=GNUTLS/' \
+ Makefile librtmp/Makefile
+
XCFLAGS="$SLKCFLAGS" \
make \
prefix=/usr \
diff --git a/multimedia/smpeg/smpeg.SlackBuild b/multimedia/smpeg/smpeg.SlackBuild
index 19a3a4f6c6..b2560d4b2b 100644
--- a/multimedia/smpeg/smpeg.SlackBuild
+++ b/multimedia/smpeg/smpeg.SlackBuild
@@ -69,9 +69,11 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+sed -i "s|^gtv_LDADD.*|gtv_LDADD = @GTK_LIBS@ libsmpeg.la -lX11|" Makefile.am
+
./autogen.sh
-CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -Wno-error=narrowing" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/multimedia/subtitleeditor/subtitleeditor.SlackBuild b/multimedia/subtitleeditor/subtitleeditor.SlackBuild
index 4d941c98c8..1d4ab89f2a 100644
--- a/multimedia/subtitleeditor/subtitleeditor.SlackBuild
+++ b/multimedia/subtitleeditor/subtitleeditor.SlackBuild
@@ -3,6 +3,7 @@
# Slackware build script for subtitleeditor
# Copyright (C) 2010 Georgy Shepelev <geo.shepelev@gmail.com>
+# Copyright (C) 2020 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,13 +24,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=subtitleeditor
-VERSION=${VERSION:-0.52.1}
+VERSION=${VERSION:-20191130_4c215f4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,8 +41,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -69,13 +70,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# https://gna.org/bugs/?23714
-patch -p0 < $CWD/fix-23714-cxx11-v2.patch
-
-autoreconf -fi
-
CFLAGS="$SLKCFLAGS" \
-./configure \
+./autogen.sh \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
diff --git a/multimedia/subtitleeditor/subtitleeditor.info b/multimedia/subtitleeditor/subtitleeditor.info
index b553c7d07f..fc9e2d5068 100644
--- a/multimedia/subtitleeditor/subtitleeditor.info
+++ b/multimedia/subtitleeditor/subtitleeditor.info
@@ -1,8 +1,8 @@
PRGNAM="subtitleeditor"
-VERSION="0.52.1"
-HOMEPAGE="https://launchpad.net/subtitleeditor"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/subtitleeditor-0.52.1.tar.gz"
-MD5SUM="d25a3f6966f4d6355485d3dfbcfb437a"
+VERSION="20191130_4c215f4"
+HOMEPAGE="http://kitone.github.io/subtitleeditor/"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/subtitleeditor-20191130_4c215f4.tar.xz"
+MD5SUM="3a29d641369031b32f93536f9e59fcd5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="gstreamermm libxml++"
diff --git a/multimedia/transcode/transcode-1.1.7-ffmpeg4.patch b/multimedia/transcode/transcode-1.1.7-ffmpeg4.patch
new file mode 100644
index 0000000000..9ad765e1c3
--- /dev/null
+++ b/multimedia/transcode/transcode-1.1.7-ffmpeg4.patch
@@ -0,0 +1,508 @@
+Index: transcode-1.1.7/encode/encode_lavc.c
+===================================================================
+--- transcode-1.1.7.orig/encode/encode_lavc.c
++++ transcode-1.1.7/encode/encode_lavc.c
+@@ -77,6 +77,13 @@ struct tclavcconfigdata_ {
+ int luma_elim_threshold;
+ int chroma_elim_threshold;
+ int quantizer_noise_shaping;
++ int inter_quant_bias;
++ int intra_quant_bias;
++ int scenechange_factor;
++ int rc_strategy;
++ float rc_initial_cplx;
++ float rc_qsquish;
++ float border_masking;
+
+ /* same as above for flags */
+ struct {
+@@ -684,7 +691,7 @@ static int tc_lavc_init_multipass(TCLavc
+ switch (vob->divxmultipass) {
+ case 1:
+ CAN_DO_MULTIPASS(multipass_flag);
+- pd->ff_vcontext.flags |= CODEC_FLAG_PASS1;
++ pd->ff_vcontext.flags |= AV_CODEC_FLAG_PASS1;
+ pd->stats_file = fopen(vob->divxlogfile, "w");
+ if (pd->stats_file == NULL) {
+ tc_log_error(MOD_NAME, "could not create 2pass log file"
+@@ -694,7 +701,7 @@ static int tc_lavc_init_multipass(TCLavc
+ break;
+ case 2:
+ CAN_DO_MULTIPASS(multipass_flag);
+- pd->ff_vcontext.flags |= CODEC_FLAG_PASS2;
++ pd->ff_vcontext.flags |= AV_CODEC_FLAG_PASS2;
+ pd->stats_file = fopen(vob->divxlogfile, "r");
+ if (pd->stats_file == NULL){
+ tc_log_error(MOD_NAME, "could not open 2pass log file \"%s\""
+@@ -723,7 +730,7 @@ static int tc_lavc_init_multipass(TCLavc
+ break;
+ case 3:
+ /* fixed qscale :p */
+- pd->ff_vcontext.flags |= CODEC_FLAG_QSCALE;
++ pd->ff_vcontext.flags |= AV_CODEC_FLAG_QSCALE;
+ pd->ff_venc_frame.quality = vob->divxbitrate;
+ break;
+ }
+@@ -970,7 +977,7 @@ static void tc_lavc_config_defaults(TCLa
+ pd->confdata.rc_buffer_size = 0;
+ pd->confdata.lmin = 2;
+ pd->confdata.lmax = 31;
+- pd->confdata.me_method = ME_EPZS;
++ pd->confdata.me_method = 0;
+
+ memset(&pd->confdata.flags, 0, sizeof(pd->confdata.flags));
+ pd->confdata.turbo_setup = 0;
+@@ -983,12 +990,12 @@ static void tc_lavc_config_defaults(TCLa
+ pd->ff_vcontext.me_range = 0;
+ pd->ff_vcontext.mb_decision = 0;
+ pd->ff_vcontext.scenechange_threshold = 0;
+- pd->ff_vcontext.scenechange_factor = 1;
++ pd->confdata.scenechange_factor = 1;
+ pd->ff_vcontext.b_frame_strategy = 0;
+ pd->ff_vcontext.b_sensitivity = 40;
+ pd->ff_vcontext.brd_scale = 0;
+ pd->ff_vcontext.bidir_refine = 0;
+- pd->ff_vcontext.rc_strategy = 2;
++ pd->confdata.rc_strategy = 2;
+ pd->ff_vcontext.b_quant_factor = 1.25;
+ pd->ff_vcontext.i_quant_factor = 0.8;
+ pd->ff_vcontext.b_quant_offset = 1.25;
+@@ -996,8 +1003,8 @@ static void tc_lavc_config_defaults(TCLa
+ pd->ff_vcontext.qblur = 0.5;
+ pd->ff_vcontext.qcompress = 0.5;
+ pd->ff_vcontext.mpeg_quant = 0;
+- pd->ff_vcontext.rc_initial_cplx = 0.0;
+- pd->ff_vcontext.rc_qsquish = 1.0;
++ pd->confdata.rc_initial_cplx = 0.0;
++ pd->confdata.rc_qsquish = 1.0;
+ pd->confdata.luma_elim_threshold = 0;
+ pd->confdata.chroma_elim_threshold = 0;
+ pd->ff_vcontext.strict_std_compliance = 0;
+@@ -1008,7 +1015,7 @@ static void tc_lavc_config_defaults(TCLa
+ pd->ff_vcontext.temporal_cplx_masking = 0.0;
+ pd->ff_vcontext.spatial_cplx_masking = 0.0;
+ pd->ff_vcontext.p_masking = 0.0;
+- pd->ff_vcontext.border_masking = 0.0;
++ pd->confdata.border_masking = 0.0;
+ pd->ff_vcontext.me_pre_cmp = 0;
+ pd->ff_vcontext.me_cmp = 0;
+ pd->ff_vcontext.me_sub_cmp = 0;
+@@ -1020,8 +1027,6 @@ static void tc_lavc_config_defaults(TCLa
+ pd->ff_vcontext.pre_me = 1;
+ pd->ff_vcontext.me_subpel_quality = 8;
+ pd->ff_vcontext.refs = 1;
+- pd->ff_vcontext.intra_quant_bias = FF_DEFAULT_QUANT_BIAS;
+- pd->ff_vcontext.inter_quant_bias = FF_DEFAULT_QUANT_BIAS;
+ pd->ff_vcontext.noise_reduction = 0;
+ pd->confdata.quantizer_noise_shaping = 0;
+ pd->ff_vcontext.flags = 0;
+@@ -1044,19 +1049,19 @@ static void tc_lavc_config_defaults(TCLa
+ */
+ static void tc_lavc_dispatch_settings(TCLavcPrivateData *pd)
+ {
++ char buf[1024];
+ /* some translation... */
+ pd->ff_vcontext.bit_rate_tolerance = pd->confdata.vrate_tolerance * 1000;
+ pd->ff_vcontext.rc_min_rate = pd->confdata.rc_min_rate * 1000;
+ pd->ff_vcontext.rc_max_rate = pd->confdata.rc_max_rate * 1000;
+ pd->ff_vcontext.rc_buffer_size = pd->confdata.rc_buffer_size * 1024;
+- pd->ff_vcontext.lmin = (int)(FF_QP2LAMBDA * pd->confdata.lmin + 0.5);
+- pd->ff_vcontext.lmax = (int)(FF_QP2LAMBDA * pd->confdata.lmax + 0.5);
+- pd->ff_vcontext.me_method = ME_ZERO + pd->confdata.me_method;
++ snprintf(buf, sizeof(buf), "%i", (int)(FF_QP2LAMBDA * pd->confdata.lmin + 0.5));
++ av_dict_set(&(pd->ff_opts), "lmin", buf, 0);
++ snprintf(buf, sizeof(buf), "%i", (int)(FF_QP2LAMBDA * pd->confdata.lmax + 0.5));
++ av_dict_set(&(pd->ff_opts), "lmax", buf, 0);
+
+ pd->ff_vcontext.flags = 0;
+- SET_FLAG(pd, mv0);
+ SET_FLAG(pd, qpel);
+- SET_FLAG(pd, naq);
+ SET_FLAG(pd, ilme);
+ SET_FLAG(pd, ildct);
+ SET_FLAG(pd, aic);
+@@ -1077,8 +1082,8 @@ static void tc_lavc_dispatch_settings(TC
+ }
+ if (pd->interlacing.active) {
+ /* enforce interlacing */
+- pd->ff_vcontext.flags |= CODEC_FLAG_INTERLACED_DCT;
+- pd->ff_vcontext.flags |= CODEC_FLAG_INTERLACED_ME;
++ pd->ff_vcontext.flags |= AV_CODEC_FLAG_INTERLACED_DCT;
++ pd->ff_vcontext.flags |= AV_CODEC_FLAG_INTERLACED_ME;
+ }
+ if (pd->confdata.flags.alt) {
+ av_dict_set(&(pd->ff_opts), "alternate_scan", "1", 0);
+@@ -1095,15 +1100,31 @@ static void tc_lavc_dispatch_settings(TC
+ if (pd->confdata.flags.cbp) {
+ av_dict_set(&(pd->ff_opts), "mpv_flags", "+cbp_rd", 0);
+ }
++ if (pd->confdata.flags.mv0) {
++ av_dict_set(&(pd->ff_opts), "mpv_flags", "+mv0", 0);
++ }
++ if (pd->confdata.flags.naq) {
++ av_dict_set(&(pd->ff_opts), "mpv_flags", "+naq", 0);
++ }
+
+- char buf[1024];
+ #define set_dict_opt(val, opt) \
+ snprintf(buf, sizeof(buf), "%i", pd->confdata.val);\
+ av_dict_set(&(pd->ff_opts), opt, buf, 0)
++#define set_dict_float_opt(val, opt) \
++ snprintf(buf, sizeof(buf), "%f", pd->confdata.val);\
++ av_dict_set(&(pd->ff_opts), opt, buf, 0)
+
+ set_dict_opt(luma_elim_threshold, "luma_elim_threshold");
+ set_dict_opt(chroma_elim_threshold, "chroma_elim_threshold");
+ set_dict_opt(quantizer_noise_shaping, "quantizer_noise_shaping");
++ set_dict_opt(inter_quant_bias, "pbias");
++ set_dict_opt(intra_quant_bias, "ibias");
++ set_dict_opt(me_method, "me_method");
++ set_dict_opt(scenechange_factor, "sc_factor");
++ set_dict_opt(rc_strategy, "rc_strategy");
++ set_dict_float_opt(rc_initial_cplx, "rc_init_cplx");
++ set_dict_float_opt(rc_qsquish, "qsquish");
++ set_dict_float_opt(border_masking, "border_mask");
+ }
+
+ #undef SET_FLAG
+@@ -1159,12 +1180,12 @@ static int tc_lavc_read_config(TCLavcPri
+ { "lmin", PAUX(lmin), TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.01, 255.0 },
+ { "lmax", PAUX(lmax), TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.01, 255.0 },
+ { "vqdiff", PCTX(max_qdiff), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 1, 31 },
+- { "vmax_b_frames", PCTX(max_b_frames), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, FF_MAX_B_FRAMES },
++ { "vmax_b_frames", PCTX(max_b_frames), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, INT_MAX },
+ { "vme", PAUX(me_method), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 16, },
+ { "me_range", PCTX(me_range), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 16000 },
+ { "mbd", PCTX(mb_decision), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 3 },
+ { "sc_threshold", PCTX(scenechange_threshold), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -1000000, 1000000 },
+- { "sc_factor", PCTX(scenechange_factor), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 1, 16 },
++ { "sc_factor", PAUX(scenechange_factor), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 1, 16 },
+ { "vb_strategy", PCTX(b_frame_strategy), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 10 },
+ { "b_sensitivity", PCTX(b_sensitivity), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 1, 100 },
+ { "brd_scale", PCTX(brd_scale), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 10 },
+@@ -1175,7 +1196,7 @@ static int tc_lavc_read_config(TCLavcPri
+ { "vrc_maxrate", PAUX(rc_max_rate), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 24000000 },
+ { "vrc_minrate", PAUX(rc_min_rate), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 24000000 },
+ { "vrc_buf_size", PAUX(rc_buffer_size), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 4, 24000000 },
+- { "vrc_strategy", PCTX(rc_strategy), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 2 },
++ { "vrc_strategy", PAUX(rc_strategy), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 2 },
+ { "vb_qfactor", PCTX(b_quant_factor), TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, -31.0, 31.0 },
+ { "vi_qfactor", PCTX(i_quant_factor), TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, -31.0, 31.0 },
+ { "vb_qoffset", PCTX(b_quant_offset), TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.0, 31.0 },
+@@ -1185,9 +1206,9 @@ static int tc_lavc_read_config(TCLavcPri
+ { "mpeg_quant", PCTX(mpeg_quant), TCCONF_TYPE_FLAG, 0, 0, 1 },
+ // { "vrc_eq", }, // not yet supported
+ { "vrc_override", rc_override_buf, TCCONF_TYPE_STRING, 0, 0, 0 },
+- { "vrc_init_cplx", PCTX(rc_initial_cplx), TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.0, 9999999.0 },
++ { "vrc_init_cplx", PAUX(rc_initial_cplx), TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.0, 9999999.0 },
+ // { "vrc_init_occupancy", }, // not yet supported
+- { "vqsquish", PCTX(rc_qsquish), TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.0, 99.0 },
++ { "vqsquish", PAUX(rc_qsquish), TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.0, 99.0 },
+ { "vlelim", PAUX(luma_elim_threshold), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -99, 99 },
+ { "vcelim", PAUX(chroma_elim_threshold), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -99, 99 },
+ { "vstrict", PCTX(strict_std_compliance), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -99, 99 },
+@@ -1199,7 +1220,7 @@ static int tc_lavc_read_config(TCLavcPri
+ { "tcplx_mask", PCTX(temporal_cplx_masking), TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.0, 1.0 },
+ { "scplx_mask", PCTX(spatial_cplx_masking), TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.0, 1.0 },
+ { "p_mask", PCTX(p_masking), TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.0, 1.0 },
+- { "border_mask", PCTX(border_masking), TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.0, 1.0 },
++ { "border_mask", PAUX(border_masking), TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.0, 1.0 },
+ { "pred", PCTX(prediction_method), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 4 },
+ { "precmp", PCTX(me_pre_cmp), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 2000 },
+ { "cmp", PCTX(me_cmp), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 2000 },
+@@ -1212,37 +1233,37 @@ static int tc_lavc_read_config(TCLavcPri
+ { "pre_me", PCTX(pre_me), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 2000},
+ { "subq", PCTX(me_subpel_quality), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 8 },
+ { "refs", PCTX(refs), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 1, 8 },
+- { "ibias", PCTX(intra_quant_bias), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -512, 512 },
+- { "pbias", PCTX(inter_quant_bias), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -512, 512 },
++ { "ibias", PAUX(intra_quant_bias), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -512, 512 },
++ { "pbias", PAUX(inter_quant_bias), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -512, 512 },
+ { "nr", PCTX(noise_reduction), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 1000000},
+ { "qns", PAUX(quantizer_noise_shaping), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 3 },
+ { "inter_matrix_file", inter_matrix_file, TCCONF_TYPE_STRING, 0, 0, 0 },
+ { "intra_matrix_file", intra_matrix_file, TCCONF_TYPE_STRING, 0, 0, 0 },
+
+- { "mv0", PAUX(flags.mv0), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_MV0 },
++ { "mv0", PAUX(flags.mv0), TCCONF_TYPE_FLAG, 0, 0, 1 },
+ { "cbp", PAUX(flags.cbp), TCCONF_TYPE_FLAG, 0, 0, 1 },
+- { "qpel", PAUX(flags.qpel), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_QPEL },
++ { "qpel", PAUX(flags.qpel), TCCONF_TYPE_FLAG, 0, 0, AV_CODEC_FLAG_QPEL },
+ { "alt", PAUX(flags.alt), TCCONF_TYPE_FLAG, 0, 0, 1 },
+- { "ilme", PAUX(flags.ilme), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_INTERLACED_ME },
+- { "ildct", PAUX(flags.ildct), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_INTERLACED_DCT },
+- { "naq", PAUX(flags.naq), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_NORMALIZE_AQP },
++ { "ilme", PAUX(flags.ilme), TCCONF_TYPE_FLAG, 0, 0, AV_CODEC_FLAG_INTERLACED_ME },
++ { "ildct", PAUX(flags.ildct), TCCONF_TYPE_FLAG, 0, 0, AV_CODEC_FLAG_INTERLACED_DCT },
++ { "naq", PAUX(flags.naq), TCCONF_TYPE_FLAG, 0, 0, 1 },
+ { "vdpart", PAUX(flags.vdpart), TCCONF_TYPE_FLAG, 0, 0, 1 },
+ #if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
+ { "aic", PAUX(flags.aic), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_H263P_AIC },
+ #else
+- { "aic", PAUX(flags.aic), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_AC_PRED },
++ { "aic", PAUX(flags.aic), TCCONF_TYPE_FLAG, 0, 0, AV_CODEC_FLAG_AC_PRED },
+ #endif
+ { "aiv", PAUX(flags.aiv), TCCONF_TYPE_FLAG, 0, 0, 1 },
+ { "umv", PAUX(flags.umv), TCCONF_TYPE_FLAG, 0, 0, 1 },
+- { "psnr", PAUX(flags.psnr), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_PSNR },
++ { "psnr", PAUX(flags.psnr), TCCONF_TYPE_FLAG, 0, 0, AV_CODEC_FLAG_PSNR },
+ #if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
+ { "trell", PAUX(flags.trell), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_TRELLIS_QUANT },
+ #else
+ { "trell", PCTX(trellis), TCCONF_TYPE_FLAG, 0, 0, 1 },
+ #endif
+- { "gray", PAUX(flags.gray), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_GRAY },
+- { "v4mv", PAUX(flags.v4mv), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_4MV },
+- { "closedgop", PAUX(flags.closedgop), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_CLOSED_GOP },
++ { "gray", PAUX(flags.gray), TCCONF_TYPE_FLAG, 0, 0, AV_CODEC_FLAG_GRAY },
++ { "v4mv", PAUX(flags.v4mv), TCCONF_TYPE_FLAG, 0, 0, AV_CODEC_FLAG_4MV },
++ { "closedgop", PAUX(flags.closedgop), TCCONF_TYPE_FLAG, 0, 0, AV_CODEC_FLAG_CLOSED_GOP },
+
+ // { "turbo", PAUX(turbo_setup), TCCONF_TYPE_FLAG, 0, 0, 1 }, // not yet supported
+ /* End of the config file */
+Index: transcode-1.1.7/export/export_ffmpeg.c
+===================================================================
+--- transcode-1.1.7.orig/export/export_ffmpeg.c
++++ transcode-1.1.7/export/export_ffmpeg.c
+@@ -831,14 +831,11 @@ MOD_init
+
+ lavc_venc_context->bit_rate = vob->divxbitrate * 1000;
+ lavc_venc_context->bit_rate_tolerance = lavc_param_vrate_tolerance * 1000;
+- lavc_venc_context->lmin= (int)(FF_QP2LAMBDA * lavc_param_lmin + 0.5);
+- lavc_venc_context->lmax= (int)(FF_QP2LAMBDA * lavc_param_lmax + 0.5);
+ lavc_venc_context->max_qdiff = lavc_param_vqdiff;
+ lavc_venc_context->qcompress = lavc_param_vqcompress;
+ lavc_venc_context->qblur = lavc_param_vqblur;
+ lavc_venc_context->max_b_frames = lavc_param_vmax_b_frames;
+ lavc_venc_context->b_quant_factor = lavc_param_vb_qfactor;
+- lavc_venc_context->rc_strategy = lavc_param_vrc_strategy;
+ lavc_venc_context->b_frame_strategy = lavc_param_vb_strategy;
+ lavc_venc_context->b_quant_offset = lavc_param_vb_qoffset;
+
+@@ -846,8 +843,23 @@ MOD_init
+ #define set_dict_opt(val, opt) \
+ snprintf(buf, sizeof(buf), "%i", val); \
+ av_dict_set(&lavc_venc_opts, opt, buf, 0)
++#define set_dict_float_opt(val, opt) \
++ snprintf(buf, sizeof(buf), "%f", val); \
++ av_dict_set(&lavc_venc_opts, opt, buf, 0)
+ set_dict_opt(lavc_param_luma_elim_threshold, "luma_elim_threshold");
+ set_dict_opt(lavc_param_chroma_elim_threshold, "chroma_elim_threshold");
++ set_dict_opt((int)(FF_QP2LAMBDA * lavc_param_lmin + 0.5), "lmin");
++ set_dict_opt((int)(FF_QP2LAMBDA * lavc_param_lmax + 0.5), "lmax");
++ set_dict_opt(lavc_param_vrc_strategy, "rc_strategy");
++ set_dict_float_opt(lavc_param_rc_qsquish, "qsquish");
++ set_dict_float_opt(lavc_param_rc_qmod_amp, "rc_qmod_amp");
++ set_dict_opt(lavc_param_rc_qmod_freq, "rc_qmod_freq");
++ set_dict_opt(lavc_param_rc_eq, "rc_eq");
++ set_dict_opt(lavc_param_vme, "me_method");
++ set_dict_opt(lavc_param_ibias, "ibias");
++ set_dict_opt(lavc_param_pbias, "pbias");
++ set_dict_float_opt(lavc_param_rc_buffer_aggressivity, "rc_buf_aggressivity");
++ set_dict_float_opt(lavc_param_rc_initial_cplx, "rc_init_cplx");
+ lavc_venc_context->rtp_payload_size = lavc_param_packet_size;
+ #if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
+ if (lavc_param_packet_size)
+@@ -856,15 +868,9 @@ MOD_init
+ lavc_venc_context->strict_std_compliance= lavc_param_strict;
+ lavc_venc_context->i_quant_factor = lavc_param_vi_qfactor;
+ lavc_venc_context->i_quant_offset = lavc_param_vi_qoffset;
+- lavc_venc_context->rc_qsquish = lavc_param_rc_qsquish;
+- lavc_venc_context->rc_qmod_amp = lavc_param_rc_qmod_amp;
+- lavc_venc_context->rc_qmod_freq = lavc_param_rc_qmod_freq;
+- lavc_venc_context->rc_eq = lavc_param_rc_eq;
+ lavc_venc_context->rc_max_rate = lavc_param_rc_max_rate * 1000;
+ lavc_venc_context->rc_min_rate = lavc_param_rc_min_rate * 1000;
+ lavc_venc_context->rc_buffer_size = lavc_param_rc_buffer_size * 1024;
+- lavc_venc_context->rc_buffer_aggressivity= lavc_param_rc_buffer_aggressivity;
+- lavc_venc_context->rc_initial_cplx = lavc_param_rc_initial_cplx;
+ lavc_venc_context->debug = lavc_param_debug;
+ lavc_venc_context->last_predictor_count= lavc_param_last_pred;
+ lavc_venc_context->pre_me = lavc_param_pre_me;
+@@ -872,8 +878,6 @@ MOD_init
+ lavc_venc_context->pre_dia_size = lavc_param_pre_dia_size;
+ lavc_venc_context->me_subpel_quality = lavc_param_me_subpel_quality;
+ lavc_venc_context->me_range = lavc_param_me_range;
+- lavc_venc_context->intra_quant_bias = lavc_param_ibias;
+- lavc_venc_context->inter_quant_bias = lavc_param_pbias;
+ lavc_venc_context->coder_type = lavc_param_coder;
+ lavc_venc_context->context_model = lavc_param_context;
+ lavc_venc_context->scenechange_threshold= lavc_param_sc_threshold;
+@@ -1079,6 +1083,8 @@ MOD_init
+ lavc_venc_context->flags |= lavc_param_mv0;
+ if(lavc_param_qp_rd)
+ av_dict_set(&lavc_venc_opts, "mpv_flags", "+qp_rd", 0);
++ if (lavc_param_normalize_aqp)
++ av_dict_set(&lavc_venc_opts, "mpv_flags", "+naq", 0);
+ lavc_venc_context->flags |= lavc_param_ilme;
+ #if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
+ lavc_venc_context->flags |= lavc_param_trell;
+@@ -1087,9 +1093,7 @@ MOD_init
+ #endif
+
+ if (lavc_param_gray)
+- lavc_venc_context->flags |= CODEC_FLAG_GRAY;
+- if (lavc_param_normalize_aqp)
+- lavc_venc_context->flags |= CODEC_FLAG_NORMALIZE_AQP;
++ lavc_venc_context->flags |= AV_CODEC_FLAG_GRAY;
+
+ switch(vob->encode_fields) {
+ case TC_ENCODE_FIELDS_TOP_FIRST:
+@@ -1107,9 +1111,9 @@ MOD_init
+ }
+
+ lavc_venc_context->flags |= interlacing_active ?
+- CODEC_FLAG_INTERLACED_DCT : 0;
++ AV_CODEC_FLAG_INTERLACED_DCT : 0;
+ lavc_venc_context->flags |= interlacing_active ?
+- CODEC_FLAG_INTERLACED_ME : 0;
++ AV_CODEC_FLAG_INTERLACED_ME : 0;
+
+ lavc_venc_context->flags |= lavc_param_psnr;
+ do_psnr = lavc_param_psnr;
+@@ -1156,7 +1160,7 @@ MOD_init
+ "encoding.");
+ return TC_EXPORT_ERROR;
+ }
+- lavc_venc_context->flags |= CODEC_FLAG_PASS1;
++ lavc_venc_context->flags |= AV_CODEC_FLAG_PASS1;
+ stats_file = fopen(vob->divxlogfile, "w");
+ if (stats_file == NULL){
+ tc_log_warn(MOD_NAME, "Could not create 2pass log file \"%s\".",
+@@ -1170,7 +1174,7 @@ MOD_init
+ "encoding.");
+ return TC_EXPORT_ERROR;
+ }
+- lavc_venc_context->flags |= CODEC_FLAG_PASS2;
++ lavc_venc_context->flags |= AV_CODEC_FLAG_PASS2;
+ stats_file= fopen(vob->divxlogfile, "r");
+ if (stats_file==NULL){
+ tc_log_warn(MOD_NAME, "Could not open 2pass log file \"%s\" for "
+@@ -1201,12 +1205,11 @@ MOD_init
+ break;
+ case 3:
+ /* fixed qscale :p */
+- lavc_venc_context->flags |= CODEC_FLAG_QSCALE;
++ lavc_venc_context->flags |= AV_CODEC_FLAG_QSCALE;
+ lavc_venc_frame->quality = vob->divxbitrate;
+ break;
+ }
+
+- lavc_venc_context->me_method = ME_ZERO + lavc_param_vme;
+
+ /* FIXME: transcode itself contains "broken ffmpeg default settings", thus we need to override them! */
+ if (lavc_param_video_preset && strcmp(lavc_param_video_preset, "none")) {
+Index: transcode-1.1.7/export/ffmpeg_cfg.c
+===================================================================
+--- transcode-1.1.7.orig/export/ffmpeg_cfg.c
++++ transcode-1.1.7/export/ffmpeg_cfg.c
+@@ -93,8 +93,8 @@ int lavc_param_last_pred= 0;
+ int lavc_param_pre_me= 1;
+ int lavc_param_me_subpel_quality= 8;
+ int lavc_param_me_range=0;
+-int lavc_param_ibias=FF_DEFAULT_QUANT_BIAS;
+-int lavc_param_pbias=FF_DEFAULT_QUANT_BIAS;
++int lavc_param_ibias=0;
++int lavc_param_pbias=0;
+ int lavc_param_coder=0;
+ int lavc_param_context=0;
+ char *lavc_param_intra_matrix = NULL;
+@@ -136,7 +136,7 @@ TCConfigEntry lavcopts_conf[]={
+ {"vratetol", &lavc_param_vrate_tolerance, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 4, 24000000},
+ {"vhq", &lavc_param_mb_decision, TCCONF_TYPE_FLAG, 0, 0, 1},
+ {"mbd", &lavc_param_mb_decision, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 9},
+- {"v4mv", &lavc_param_v4mv, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_4MV},
++ {"v4mv", &lavc_param_v4mv, TCCONF_TYPE_FLAG, 0, 0, AV_CODEC_FLAG_4MV},
+ {"vme", &lavc_param_vme, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 5},
+ // {"vqscale", &lavc_param_vqscale, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 1, 31},
+ // {"vqmin", &lavc_param_vqmin, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 1, 31},
+@@ -147,7 +147,7 @@ TCConfigEntry lavcopts_conf[]={
+ {"vqcomp", &lavc_param_vqcompress, TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.0, 1.0},
+ {"vqblur", &lavc_param_vqblur, TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.0, 1.0},
+ {"vb_qfactor", &lavc_param_vb_qfactor, TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, -31.0, 31.0},
+- {"vmax_b_frames", &lavc_param_vmax_b_frames, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, FF_MAX_B_FRAMES},
++ {"vmax_b_frames", &lavc_param_vmax_b_frames, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, INT_MAX},
+ // {"vpass", &lavc_param_vpass, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 2},
+ {"vrc_strategy", &lavc_param_vrc_strategy, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 2},
+ {"vb_strategy", &lavc_param_vb_strategy, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 10},
+@@ -158,7 +158,7 @@ TCConfigEntry lavcopts_conf[]={
+ {"vstrict", &lavc_param_strict, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -99, 99},
+ {"vdpart", &lavc_param_data_partitioning, TCCONF_TYPE_FLAG, 0, 0, 1},
+ // {"keyint", &lavc_param_keyint, TCCONF_TYPE_INT, 0, 0, 0},
+- {"gray", &lavc_param_gray, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_GRAY},
++ {"gray", &lavc_param_gray, TCCONF_TYPE_FLAG, 0, 0, AV_CODEC_FLAG_GRAY},
+ {"mpeg_quant", &lavc_param_mpeg_quant, TCCONF_TYPE_FLAG, 0, 0, 1},
+ {"vi_qfactor", &lavc_param_vi_qfactor, TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, -31.0, 31.0},
+ {"vi_qoffset", &lavc_param_vi_qoffset, TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.0, 31.0},
+@@ -184,7 +184,7 @@ TCConfigEntry lavcopts_conf[]={
+ {"pred", &lavc_param_prediction_method, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 20},
+ {"format", &lavc_param_format, TCCONF_TYPE_STRING, 0, 0, 0},
+ {"debug", &lavc_param_debug, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 100000000},
+- {"psnr", &lavc_param_psnr, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_PSNR},
++ {"psnr", &lavc_param_psnr, TCCONF_TYPE_FLAG, 0, 0, AV_CODEC_FLAG_PSNR},
+ {"precmp", &lavc_param_me_pre_cmp, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 2000},
+ {"cmp", &lavc_param_me_cmp, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 2000},
+ {"subcmp", &lavc_param_me_sub_cmp, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 2000},
+@@ -192,9 +192,9 @@ TCConfigEntry lavcopts_conf[]={
+ {"ildctcmp", &lavc_param_ildct_cmp, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 2000},
+ {"predia", &lavc_param_pre_dia_size, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -2000, 2000},
+ {"dia", &lavc_param_dia_size, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -2000, 2000},
+- {"qpel", &lavc_param_qpel, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_QPEL},
++ {"qpel", &lavc_param_qpel, TCCONF_TYPE_FLAG, 0, 0, AV_CODEC_FLAG_QPEL},
+ #if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
+- {"trell", &lavc_param_trell, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_TRELLIS_QUANT},
++ {"trell", &lavc_param_trell, TCCONF_TYPE_FLAG, 0, 0, AV_CODEC_FLAG_TRELLIS_QUANT},
+ #else
+ {"trell", &lavc_param_trell, TCCONF_TYPE_FLAG, 0, 0, 1},
+ #endif
+@@ -203,9 +203,9 @@ TCConfigEntry lavcopts_conf[]={
+ {"subq", &lavc_param_me_subpel_quality, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 8},
+ {"me_range", &lavc_param_me_range, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 16000},
+ #if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
+- {"aic", &lavc_param_aic, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_H263P_AIC},
++ {"aic", &lavc_param_aic, TCCONF_TYPE_FLAG, 0, 0, AV_CODEC_FLAG_H263P_AIC},
+ #else
+- {"aic", &lavc_param_aic, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_AC_PRED},
++ {"aic", &lavc_param_aic, TCCONF_TYPE_FLAG, 0, 0, AV_CODEC_FLAG_AC_PRED},
+ #endif
+ {"umv", &lavc_param_umv, TCCONF_TYPE_FLAG, 0, 0, 1},
+ {"ibias", &lavc_param_ibias, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -512, 512},
+@@ -215,20 +215,20 @@ TCConfigEntry lavcopts_conf[]={
+ {"intra_matrix", &lavc_param_intra_matrix, TCCONF_TYPE_STRING, 0, 0, 0},
+ {"inter_matrix", &lavc_param_inter_matrix, TCCONF_TYPE_STRING, 0, 0, 0},
+ {"cbp", &lavc_param_cbp, TCCONF_TYPE_FLAG, 0, 0, 1},
+- {"mv0", &lavc_param_mv0, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_MV0},
++ {"mv0", &lavc_param_mv0, TCCONF_TYPE_FLAG, 0, 0, 1},
+ {"nr", &lavc_param_noise_reduction, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 1000000},
+ {"qprd", &lavc_param_qp_rd, TCCONF_TYPE_FLAG, 0, 0, 1},
+ {"threads", &lavc_param_threads, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 1, 16},
+ {"ss", &lavc_param_ss, TCCONF_TYPE_FLAG, 0, 0, 1},
+ {"svcd_sof", &lavc_param_scan_offset, TCCONF_TYPE_FLAG, 0, 0, 1},
+ {"alt", &lavc_param_alt, TCCONF_TYPE_FLAG, 0, 0, 1},
+- {"ilme", &lavc_param_ilme, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_INTERLACED_ME},
++ {"ilme", &lavc_param_ilme, TCCONF_TYPE_FLAG, 0, 0, AV_CODEC_FLAG_INTERLACED_ME},
+ {"inter_threshold", &lavc_param_inter_threshold, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -1000000, 1000000},
+ {"sc_threshold", &lavc_param_sc_threshold, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -1000000, 1000000},
+ {"top", &lavc_param_top, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -1, 1},
+- {"gmc", &lavc_param_gmc, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_GMC},
+- {"trunc", &lavc_param_trunc, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_TRUNCATED},
+- {"closedgop", &lavc_param_closedgop, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_CLOSED_GOP},
++ {"gmc", &lavc_param_gmc, TCCONF_TYPE_FLAG, 0, 0, 1},
++ {"trunc", &lavc_param_trunc, TCCONF_TYPE_FLAG, 0, 0, AV_CODEC_FLAG_TRUNCATED},
++ {"closedgop", &lavc_param_closedgop, TCCONF_TYPE_FLAG, 0, 0, AV_CODEC_FLAG_CLOSED_GOP},
+ {"intra_dc_precision", &lavc_param_intra_dc_precision, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 16},
+ {"skip_top", &lavc_param_skip_top, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 1000},
+ {"skip_bottom", &lavc_param_skip_bottom, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 1000},
+Index: transcode-1.1.7/import/import_ffmpeg.c
+===================================================================
+--- transcode-1.1.7.orig/import/import_ffmpeg.c
++++ transcode-1.1.7/import/import_ffmpeg.c
+@@ -361,7 +361,7 @@ do_avi:
+ lavc_dec_context->width = x_dim;
+ lavc_dec_context->height = y_dim;
+
+- if (vob->decolor) lavc_dec_context->flags |= CODEC_FLAG_GRAY;
++ if (vob->decolor) lavc_dec_context->flags |= AV_CODEC_FLAG_GRAY;
+ #if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
+ lavc_dec_context->error_resilience = 2;
+ #else
diff --git a/multimedia/transcode/transcode-1.1.7-gcc10.patch b/multimedia/transcode/transcode-1.1.7-gcc10.patch
new file mode 100644
index 0000000000..fcee415dee
--- /dev/null
+++ b/multimedia/transcode/transcode-1.1.7-gcc10.patch
@@ -0,0 +1,48 @@
+--- a/import/demux_pass.c
++++ b/import/demux_pass.c
+@@ -32,8 +32,6 @@
+ #include "packets.h"
+
+
+-int gop, gop_pts, gop_cnt;
+-
+ /* if you listen carefully, then you can hear the desesperate
+ * whisper of this code calling for a rewrite. Or for a redesign.
+ * Or both. -- FR
+--- a/import/extract_ac3.c
++++ b/import/extract_ac3.c
+@@ -334,7 +334,6 @@
+ FILE *fd;
+
+ #define MAX_BUF 4096
+-char audio[MAX_BUF];
+
+
+ /* from ac3scan.c */
+@@ -472,6 +471,8 @@
+ void extract_ac3(info_t *ipipe)
+ {
+
++ char audio[MAX_BUF];
++
+ int error=0;
+
+ avi_t *avifile;
+--- a/import/extract_mp3.c
++++ b/import/extract_mp3.c
+@@ -243,7 +243,6 @@
+ }
+
+ #define MAX_BUF 4096
+-char audio[MAX_BUF];
+
+ /* ------------------------------------------------------------
+ *
+@@ -258,6 +257,7 @@
+
+ void extract_mp3(info_t *ipipe)
+ {
++ char audio[MAX_BUF];
+
+ int error=0;
+
diff --git a/multimedia/transcode/transcode-1.1.7-glibc-2.32.patch b/multimedia/transcode/transcode-1.1.7-glibc-2.32.patch
new file mode 100644
index 0000000000..8b5ea837a0
--- /dev/null
+++ b/multimedia/transcode/transcode-1.1.7-glibc-2.32.patch
@@ -0,0 +1,47 @@
+--- transcode-1.1.7/import/v4l/import_v4l2.c.orig 2020-08-28 08:28:44.311434934 +0000
++++ transcode-1.1.7/import/v4l/import_v4l2.c 2020-08-28 08:41:19.279323984 +0000
+@@ -455,7 +455,7 @@
+ tc_log_warn(MOD_NAME,
+ "driver does not support cropping"
+ "(ioctl(VIDIOC_CROPCAP) returns \"%s\"), disabled",
+- errno <= sys_nerr ? sys_errlist[errno] : "unknown");
++ strerror(errno));
+ return TC_ERROR;
+ }
+ if (verbose_flag > TC_INFO) {
+@@ -485,7 +485,7 @@
+ tc_log_warn(MOD_NAME,
+ "driver does not support inquiring cropping"
+ " parameters (ioctl(VIDIOC_G_CROP) returns \"%s\")",
+- errno <= sys_nerr ? sys_errlist[errno] : "unknown");
++ strerror(errno));
+ return -1;
+ }
+
+@@ -513,7 +513,7 @@
+ tc_log_warn(MOD_NAME,
+ "driver does not support inquering cropping"
+ " parameters (ioctl(VIDIOC_G_CROP) returns \"%s\")",
+- errno <= sys_nerr ? sys_errlist[errno] : "unknown");
++ strerror(errno));
+ return -1;
+ }
+ if (verbose_flag > TC_INFO) {
+@@ -613,7 +613,7 @@
+ if (err < 0) {
+ if (verbose_flag) {
+ tc_log_warn(MOD_NAME, "driver does not support setting parameters (ioctl(VIDIOC_S_PARM) returns \"%s\")",
+- errno <= sys_nerr ? sys_errlist[errno] : "unknown");
++ strerror(errno));
+ }
+ }
+ return TC_OK;
+@@ -628,7 +628,7 @@
+ err = ioctl(vs->video_fd, VIDIOC_G_STD, &stdid);
+ if (err < 0) {
+ tc_log_warn(MOD_NAME, "driver does not support get std (ioctl(VIDIOC_G_STD) returns \"%s\")",
+- errno <= sys_nerr ? sys_errlist[errno] : "unknown");
++ strerror(errno));
+ memset(&stdid, 0, sizeof(v4l2_std_id));
+ }
+
diff --git a/multimedia/transcode/transcode-1.1.7-imagemagick7.patch b/multimedia/transcode/transcode-1.1.7-imagemagick7.patch
new file mode 100644
index 0000000000..b9f1476646
--- /dev/null
+++ b/multimedia/transcode/transcode-1.1.7-imagemagick7.patch
@@ -0,0 +1,794 @@
+http://git.pld-linux.org/?p=packages/transcode.git;a=blob_plain;f=imagemagick7.patch;h=8411f89b843764eff8f4aaddb314d7773d1bcec8;hb=HEAD
+
+--- transcode-1.1.7/configure.in
++++ transcode-1.1.7/configure.in
+@@ -1105,8 +1105,8 @@
+ dnl ImageMagick
+ dnl
+ IMAGEMAGICK_EXTRA_LIBS="$IMAGEMAGICK_EXTRA_LIBS $($PKG_CONFIG --libs ImageMagick)"
+-TC_PKG_CHECK(imagemagick, no, IMAGEMAGICK, no, [magick/api.h],
+- none, InitializeMagick, Wand, [http://www.imagemagick.org/])
++TC_PKG_CHECK(imagemagick, no, IMAGEMAGICK, no, [MagickWand/MagickWand.h],
++ none, InitializeMagick, MagickWand, [http://www.imagemagick.org/])
+ TC_PKG_HAVE(imagemagick, IMAGEMAGICK)
+ if test x"$have_imagemagick" = x"yes" ; then
+ SAVE_CPPFLAGS="$CPPFLAGS"
+@@ -1114,6 +1114,7 @@
+ AC_CHECK_HEADER([wand/magick-wand.h],
+ [AC_DEFINE([HAVE_BROKEN_WAND], [1], ["have old wand header"])])
+ CPPFLAGS="$SAVE_CPPFLAGS"
++ IMAGEMAGICK_CFLAGS="$IMAGEMAGICK_CFLAGS $($PKG_CONFIG --cflags ImageMagick)"
+ fi
+
+ dnl
+--- transcode-1.1.7/export/export_im.c
++++ transcode-1.1.7/export/export_im.c
+@@ -23,7 +23,7 @@
+
+ /* Note: because of ImageMagick bogosity, this must be included first, so
+ * we can undefine the PACKAGE_* symbols it splats into our namespace */
+-#include <magick/api.h>
++#include <MagickCore/MagickCore.h>
+ #undef PACKAGE_BUGREPORT
+ #undef PACKAGE_NAME
+ #undef PACKAGE_STRING
+@@ -82,7 +82,7 @@
+
+ codec = (vob->im_v_codec == CODEC_YUV) ? CODEC_YUV : CODEC_RGB;
+
+- InitializeMagick("");
++ MagickCoreGenesis("", MagickFalse);
+
+ image_info=CloneImageInfo((ImageInfo *) NULL);
+
+@@ -169,8 +169,8 @@
+ MOD_encode
+ {
+
+- ExceptionInfo exception_info;
+- char *out_buffer = param->buffer;
++ ExceptionInfo *exception_info;
++ unsigned char *out_buffer = param->buffer;
+ Image *image=NULL;
+ int res;
+
+@@ -179,7 +179,7 @@
+
+ if(param->flag == TC_VIDEO) {
+
+- GetExceptionInfo(&exception_info);
++ exception_info = AcquireExceptionInfo();
+
+ res = tc_snprintf(buf2, PATH_MAX, "%s%06d.%s", prefix, counter++, type);
+ if (res < 0) {
+@@ -193,11 +193,11 @@
+ out_buffer = tmp_buffer;
+ }
+
+- image=ConstituteImage (width, height, "RGB", CharPixel, out_buffer, &exception_info);
++ image=ConstituteImage (width, height, "RGB", CharPixel, out_buffer, exception_info);
+
+ strlcpy(image->filename, buf2, MaxTextExtent);
+
+- WriteImage(image_info, image);
++ WriteImage(image_info, image, exception_info);
+ DestroyImage(image);
+
+ return(0);
+@@ -220,8 +220,7 @@
+
+ if(param->flag == TC_VIDEO) {
+ DestroyImageInfo(image_info);
+- ConstituteComponentTerminus();
+- DestroyMagick();
++ MagickCoreTerminus();
+
+ free(tmp_buffer);
+ tmp_buffer = NULL;
+--- transcode-1.1.7/filter/filter_compare.c
++++ transcode-1.1.7/filter/filter_compare.c
+@@ -24,7 +24,7 @@
+
+ /* Note: because of ImageMagick bogosity, this must be included first, so
+ * we can undefine the PACKAGE_* symbols it splats into our namespace */
+-#include <magick/api.h>
++#include <MagickCore/MagickCore.h>
+ #undef PACKAGE_BUGREPORT
+ #undef PACKAGE_NAME
+ #undef PACKAGE_STRING
+@@ -111,9 +111,9 @@
+ Image *pattern, *resized, *orig = 0;
+ ImageInfo *image_info;
+
+- PixelPacket *pixel_packet;
++ Quantum *pixel_quantum;
+ pixelsMask *pixel_last;
+- ExceptionInfo exception_info;
++ ExceptionInfo *exception_info;
+
+ if(ptr->tag & TC_FILTER_GET_CONFIG) {
+ char buf[128];
+@@ -139,7 +139,7 @@
+ if(ptr->tag & TC_FILTER_INIT)
+ {
+
+- unsigned int t,r,index;
++ unsigned int t,r;
+ pixelsMask *temp;
+
+ compare[instance] = tc_malloc(sizeof(compareData));
+@@ -190,22 +190,22 @@
+ tc_log_perror(MOD_NAME, "could not open file for writing");
+ }
+
+- InitializeMagick("");
++ MagickCoreGenesis("", MagickFalse);
+ if (verbose > 1)
+ tc_log_info(MOD_NAME, "Magick Initialized successfully");
+
+- GetExceptionInfo(&exception_info);
++ exception_info = AcquireExceptionInfo();
+ image_info = CloneImageInfo ((ImageInfo *) NULL);
+ strlcpy(image_info->filename, pattern_name, MaxTextExtent);
+ if (verbose > 1)
+ tc_log_info(MOD_NAME, "Trying to open image");
+ orig = ReadImage(image_info,
+- &exception_info);
++ exception_info);
+
+ if (orig == (Image *) NULL) {
+- MagickWarning(exception_info.severity,
+- exception_info.reason,
+- exception_info.description);
++ MagickWarning(exception_info->severity,
++ exception_info->reason,
++ exception_info->description);
+ strlcpy(pattern_name, "/dev/null", sizeof(pattern_name));
+ }else{
+ if (verbose > 1)
+@@ -228,42 +228,41 @@
+ if (orig != NULL){
+ // Flip and resize
+ if (compare[instance]->vob->im_v_codec == CODEC_YUV)
+- TransformRGBImage(orig,YCbCrColorspace);
++ TransformImageColorspace(orig, YCbCrColorspace, exception_info);
+ if (verbose > 1) tc_log_info(MOD_NAME, "Resizing the Image");
+ resized = ResizeImage(orig,
+ compare[instance]->width,
+ compare[instance]->height,
+ GaussianFilter,
+- 1,
+- &exception_info);
++ exception_info);
+ if (verbose > 1)
+ tc_log_info(MOD_NAME, "Flipping the Image");
+- pattern = FlipImage(resized, &exception_info);
++ pattern = FlipImage(resized, exception_info);
+ if (pattern == (Image *) NULL) {
+- MagickError (exception_info.severity,
+- exception_info.reason,
+- exception_info.description);
++ MagickError (exception_info->severity,
++ exception_info->reason,
++ exception_info->description);
+ }
+
+ // Filling the matrix with the pixels values not
+ // alpha
+
+ if (verbose > 1) tc_log_info(MOD_NAME, "GetImagePixels");
+- pixel_packet = GetImagePixels(pattern,0,0,
++ pixel_quantum = GetAuthenticPixels(pattern,0,0,
+ pattern->columns,
+- pattern->rows);
++ pattern->rows,
++ exception_info);
+
+ if (verbose > 1) tc_log_info(MOD_NAME, "Filling the Image matrix");
+ for (t = 0; t < pattern->rows; t++)
+ for (r = 0; r < pattern->columns; r++){
+- index = t*pattern->columns + r;
+- if (pixel_packet[index].opacity == 0){
++ if (GetPixelAlpha(pattern, pixel_quantum) == QuantumRange) {
+ temp=tc_malloc(sizeof(struct pixelsMask));
+ temp->row=t;
+ temp->col=r;
+- temp->r = (uint8_t)ScaleQuantumToChar(pixel_packet[index].red);
+- temp->g = (uint8_t)ScaleQuantumToChar(pixel_packet[index].green);
+- temp->b = (uint8_t)ScaleQuantumToChar(pixel_packet[index].blue);
++ temp->r = (uint8_t)ScaleQuantumToChar(GetPixelRed(pattern, pixel_quantum));
++ temp->g = (uint8_t)ScaleQuantumToChar(GetPixelGreen(pattern, pixel_quantum));
++ temp->b = (uint8_t)ScaleQuantumToChar(GetPixelBlue(pattern, pixel_quantum));
+ temp->next=NULL;
+
+ if (pixel_last == NULL){
+@@ -274,6 +273,7 @@
+ pixel_last = temp;
+ }
+ }
++ pixel_quantum += GetPixelChannels(pattern);
+ }
+
+ if (verbose)
+@@ -297,7 +297,7 @@
+ fclose(compare[instance]->results);
+ free(compare[instance]);
+ }
+- DestroyMagick();
++ MagickCoreTerminus();
+ compare[instance]=NULL;
+
+ return(0);
+--- transcode-1.1.7/filter/filter_logoaway.c
++++ transcode-1.1.7/filter/filter_logoaway.c
+@@ -70,7 +70,7 @@
+
+ /* Note: because of ImageMagick bogosity, this must be included first, so
+ * we can undefine the PACKAGE_* symbols it splats into our namespace */
+-#include <magick/api.h>
++#include <MagickCore/MagickCore.h>
+ #undef PACKAGE_BUGREPORT
+ #undef PACKAGE_NAME
+ #undef PACKAGE_STRING
+@@ -103,10 +103,10 @@
+
+ int alpha;
+
+- ExceptionInfo exception_info;
++ ExceptionInfo *exception_info;
+ Image *image;
+ ImageInfo *image_info;
+- PixelPacket *pixel_packet;
++ Quantum *pixel_packet;
+
+ int dump;
+ char *dump_buf;
+@@ -174,7 +174,7 @@
+ * instance filter instance
+ * @return void nothing
+ *********************************************************/
+-static void work_with_rgb_frame(logoaway_data *LD, char *buffer, int width, int height)
++static void work_with_rgb_frame(logoaway_data *LD, unsigned char *buffer, int width, int height)
+ {
+ int row, col, i;
+ int xdistance, ydistance, distance_west, distance_north;
+@@ -201,10 +201,10 @@
+ }
+ }
+
+- LD->dumpimage = ConstituteImage(LD->width-LD->xpos, LD->height-LD->ypos, "RGB", CharPixel, LD->dump_buf, &LD->exception_info);
++ LD->dumpimage = ConstituteImage(LD->width-LD->xpos, LD->height-LD->ypos, "RGB", CharPixel, LD->dump_buf, LD->exception_info);
+ tc_snprintf(LD->dumpimage->filename, MaxTextExtent, "dump[%d].png", LD->id);
+
+- WriteImage(LD->dumpimage_info, LD->dumpimage);
++ WriteImage(LD->dumpimage_info, LD->dumpimage, LD->exception_info);
+ }
+
+ switch(LD->mode) {
+@@ -218,27 +218,28 @@
+ for(row=LD->ypos; row<LD->height; ++row) {
+ for(col=LD->xpos; col<LD->width; ++col) {
+
++ Quantum *pixel = LD->pixel_packet + (row*LD->width+col)*GetPixelChannels(LD->image);
+ buf_off = ((height-row)*width+col) * 3;
+ pkt_off = (row-LD->ypos) * (LD->width-LD->xpos) + (col-LD->xpos);
+ /* R */
+ if (!LD->alpha) {
+ buffer[buf_off +0] = LD->rcolor;
+ } else {
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off].red);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelRed(LD->image, pixel));
+ buffer[buf_off +0] = alpha_blending(buffer[buf_off +0], LD->rcolor, alpha_px);
+ }
+ /* G */
+ if (!LD->alpha) {
+ buffer[buf_off +1] = LD->gcolor;
+ } else {
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off].green);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelGreen(LD->image, pixel));
+ buffer[buf_off +1] = alpha_blending(buffer[buf_off +1], LD->gcolor, alpha_px);
+ }
+ /* B */
+ if (!LD->alpha) {
+ buffer[buf_off +2] = LD->bcolor;
+ } else {
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off].blue);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelBlue(LD->image, pixel));
+ buffer[buf_off +2] = alpha_blending(buffer[buf_off +2], LD->bcolor, alpha_px);
+ }
+ }
+@@ -268,6 +269,7 @@
+ buf_off = ((height-row)*width+col) * 3;
+
+ pkt_off = (row-LD->ypos) * (LD->width-LD->xpos) + (col-LD->xpos);
++ Quantum *pixel = LD->pixel_packet + pkt_off*GetPixelChannels(LD->image);
+
+ /* R */
+ hcalc = alpha_blending(buffer[buf_off_xpos +0], buffer[buf_off_width +0], alpha_hori);
+@@ -276,7 +278,7 @@
+ if (!LD->alpha) {
+ buffer[buf_off +0] = new_px;
+ } else {
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off].red);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelRed(LD->image, pixel));
+ buffer[buf_off +0] = alpha_blending(buffer[buf_off +0], new_px, alpha_px);
+ }
+ /* G */
+@@ -286,7 +288,7 @@
+ if (!LD->alpha) {
+ buffer[buf_off +1] = new_px;
+ } else {
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off].green);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelGreen(LD->image, pixel));
+ buffer[buf_off +1] = alpha_blending(buffer[buf_off +1], new_px, alpha_px);
+ }
+ /* B */
+@@ -296,7 +298,7 @@
+ if (!LD->alpha) {
+ buffer[buf_off +2] = new_px;
+ } else {
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off].red);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelBlue(LD->image, pixel));
+ buffer[buf_off +2] = alpha_blending(buffer[buf_off +2], new_px, alpha_px);
+ }
+ }
+@@ -327,28 +329,28 @@
+ buf_off_height = ((height-LD->height)*width+col) * 3;
+
+ i = 0;
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off-i].red);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelRed(LD->image, LD->pixel_packet + (pkt_off-i)*GetPixelChannels(LD->image)));
+ while ((alpha_px != 255) && (col-i>LD->xpos))
+ i++;
+ buf_off_xpos = ((height-row)*width + col-i) * 3;
+ i = 0;
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off+i].red);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelRed(LD->image, LD->pixel_packet + (pkt_off+i)*GetPixelChannels(LD->image)));
+ while ((alpha_px != 255) && (col+i<LD->width))
+ i++;
+ buf_off_width = ((height-row)*width + col+i) * 3;
+
+ i = 0;
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off-i*(LD->width-LD->xpos)].red);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelRed(LD->image, LD->pixel_packet + (pkt_off-i*(LD->width-LD->xpos))*GetPixelChannels(LD->image)));
+ while ((alpha_px != 255) && (row-i>LD->ypos))
+ i++;
+ buf_off_ypos = (height*width*3)-((row-i)*width - col) * 3;
+ i = 0;
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off+i*(LD->width-LD->xpos)].red);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelRed(LD->image, LD->pixel_packet + (pkt_off+i*(LD->width-LD->xpos))*GetPixelChannels(LD->image)));
+ while ((alpha_px != 255) && (row+i<LD->height))
+ i++;
+ buf_off_height = (height*width*3)-((row+i)*width - col) * 3;
+
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off].red);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelRed(LD->image, LD->pixel_packet + pkt_off*GetPixelChannels(LD->image)));
+ /* R */
+ hcalc = alpha_blending(buffer[buf_off_xpos +0], buffer[buf_off_width +0], alpha_hori);
+ vcalc = alpha_blending(buffer[buf_off_ypos +0], buffer[buf_off_height +0], alpha_vert);
+@@ -405,7 +407,7 @@
+ * instance filter instance
+ * @return void nothing
+ *********************************************************/
+-static void work_with_yuv_frame(logoaway_data *LD, char *buffer, int width, int height)
++static void work_with_yuv_frame(logoaway_data *LD, unsigned char *buffer, int width, int height)
+ {
+ int row, col, i;
+ int craddr, cbaddr;
+@@ -431,10 +433,11 @@
+
+ buf_off = row*width+col;
+ pkt_off = (row-LD->ypos) * (LD->width-LD->xpos) + (col-LD->xpos);
++ Quantum *pixel = LD->pixel_packet + pkt_off*GetPixelChannels(LD->image);
+ if (!LD->alpha) {
+ buffer[buf_off] = LD->ycolor;
+ } else {
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off].red);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelRed(LD->image, pixel));
+ buffer[buf_off] = alpha_blending(buffer[buf_off], LD->ycolor, alpha_px);
+ }
+ }
+@@ -446,8 +449,9 @@
+
+ buf_off = row*width/2+col;
+ pkt_off = (row*2-LD->ypos) * (LD->width-LD->xpos) + (col*2-LD->xpos);
++ Quantum *pixel = LD->pixel_packet + pkt_off*GetPixelChannels(LD->image);
+ /* sic */
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off].red);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelRed(LD->image, pixel));
+ if (!LD->alpha) {
+ buffer[craddr + buf_off] = LD->ucolor;
+ buffer[cbaddr + buf_off] = LD->vcolor;
+@@ -483,10 +487,11 @@
+ buf_off_height = LD->height*width+col;
+
+ pkt_off = (row-LD->ypos) * (LD->width-LD->xpos) + (col-LD->xpos);
++ Quantum *pixel = LD->pixel_packet + pkt_off*GetPixelChannels(LD->image);
+
+ hcalc = alpha_blending(buffer[buf_off_xpos], buffer[buf_off_width], alpha_hori);
+ vcalc = alpha_blending(buffer[buf_off_ypos], buffer[buf_off_height], alpha_vert);
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off].red);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelRed(LD->image, pixel));
+ new_px = (hcalc*LD->xweight + vcalc*LD->yweight)/100;
+ if (!LD->alpha) {
+ buffer[buf_off] = new_px;
+@@ -517,7 +522,8 @@
+ buf_off_height = LD->height/2*width/2+col;
+
+ pkt_off = (row*2-LD->ypos) * (LD->width-LD->xpos) + (col*2-LD->xpos);
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off].red);
++ Quantum *pixel = LD->pixel_packet + pkt_off*GetPixelChannels(LD->image);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelRed(LD->image, pixel));
+ /* sic, reuse red alpha_px */
+
+ hcalc = alpha_blending(buffer[craddr + buf_off_xpos], buffer[craddr + buf_off_width], alpha_hori);
+@@ -560,30 +566,30 @@
+ pkt_off = (row-LD->ypos) * (LD->width-LD->xpos) + (col-LD->xpos);
+
+ i = 0;
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off-i].red);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelRed(LD->image, LD->pixel_packet + (pkt_off-i)*GetPixelChannels(LD->image)));
+ while ((alpha_px != 255) && (col-i>LD->xpos))
+ i++;
+ buf_off_xpos = (row*width + col-i);
+ i = 0;
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off+i].red);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelRed(LD->image, LD->pixel_packet + (pkt_off+i)*GetPixelChannels(LD->image)));
+ while ((alpha_px != 255) && (col+i<LD->width))
+ i++;
+ buf_off_width = (row*width + col+i);
+
+ i = 0;
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off-i*(LD->width-LD->xpos)].red);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelRed(LD->image, LD->pixel_packet + (pkt_off-i*(LD->width-LD->xpos))*GetPixelChannels(LD->image)));
+ while ((alpha_px != 255) && (row-i>LD->ypos))
+ i++;
+ buf_off_ypos = ((row-i)*width + col);
+ i = 0;
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off+i*(LD->width-LD->xpos)].red);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelRed(LD->image, LD->pixel_packet + (pkt_off+i*(LD->width-LD->xpos))*GetPixelChannels(LD->image)));
+ while ((alpha_px != 255) && (row+i<LD->height))
+ i++;
+ buf_off_height = ((row+i)*width + col);
+
+ hcalc = alpha_blending( buffer[buf_off_xpos], buffer[buf_off_width], alpha_hori );
+ vcalc = alpha_blending( buffer[buf_off_ypos], buffer[buf_off_height], alpha_vert );
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off].red);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelRed(LD->image, LD->pixel_packet + pkt_off*GetPixelChannels(LD->image)));
+ new_px = (hcalc*LD->xweight + vcalc*LD->yweight)/100;
+ buffer[buf_off] = alpha_blending(buffer[buf_off], new_px, alpha_px);
+ }
+@@ -603,23 +609,23 @@
+ alpha_hori = xdistance * distance_west;
+
+ i = 0;
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off-i].red);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelRed(LD->image, LD->pixel_packet + (pkt_off-i)*GetPixelChannels(LD->image)));
+ while ((alpha_px != 255) && (col-i>LD->xpos))
+ i++;
+ buf_off_xpos = (row*width/2 + col-i);
+ i = 0;
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off+i].red);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelRed(LD->image, LD->pixel_packet + (pkt_off+i)*GetPixelChannels(LD->image)));
+ while ((alpha_px != 255) && (col+i<LD->width))
+ i++;
+ buf_off_width = (row*width/2 + col+i);
+
+ i = 0;
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off-i*(LD->width-LD->xpos)].red);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelRed(LD->image, LD->pixel_packet + (pkt_off-i*(LD->width-LD->xpos))*GetPixelChannels(LD->image)));
+ while ((alpha_px != 255) && (row-i>LD->ypos))
+ i++;
+ buf_off_ypos = ((row-i)*width/2 + col);
+ i = 0;
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off+i*(LD->width-LD->xpos)].red);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelRed(LD->image, LD->pixel_packet + (pkt_off+i*(LD->width-LD->xpos))*GetPixelChannels(LD->image)));
+ while ((alpha_px != 255) && (row+i<LD->height))
+ i++;
+ buf_off_height = ((row+i)*width/2 + col);
+@@ -630,7 +636,7 @@
+
+ pkt_off = (row*2-LD->ypos) * (LD->width-LD->xpos) + (col*2-LD->xpos);
+
+- alpha_px = (uint8_t)ScaleQuantumToChar(LD->pixel_packet[pkt_off].red);
++ alpha_px = (uint8_t)ScaleQuantumToChar(GetPixelRed(LD->image, LD->pixel_packet + pkt_off*GetPixelChannels(LD->image)));
+ /* sic: reuse the red component */
+ hcalc = alpha_blending(buffer[craddr + buf_off_xpos], buffer[craddr + buf_off_width], alpha_hori);
+ vcalc = alpha_blending(buffer[craddr + buf_off_ypos], buffer[craddr + buf_off_height], alpha_vert);
+@@ -815,17 +821,17 @@
+ }
+
+ if((data[instance]->alpha) || (data[instance]->dump)) {
+- InitializeMagick("");
+- GetExceptionInfo(&data[instance]->exception_info);
++ MagickCoreGenesis("", MagickFalse);
++ data[instance]->exception_info = AcquireExceptionInfo();
+
+ if(data[instance]->alpha) {
+ data[instance]->image_info = CloneImageInfo((ImageInfo *) NULL);
+
+ strlcpy(data[instance]->image_info->filename, data[instance]->file, MaxTextExtent);
+- data[instance]->image = ReadImage(data[instance]->image_info, &data[instance]->exception_info);
++ data[instance]->image = ReadImage(data[instance]->image_info, data[instance]->exception_info);
+ if (data[instance]->image == (Image *) NULL) {
+ tc_log_error(MOD_NAME, "\n");
+- MagickWarning (data[instance]->exception_info.severity, data[instance]->exception_info.reason, data[instance]->exception_info.description);
++ MagickWarning (data[instance]->exception_info->severity, data[instance]->exception_info->reason, data[instance]->exception_info->description);
+ return TC_ERROR;
+ }
+
+@@ -835,7 +841,7 @@
+ return TC_ERROR;
+ }
+
+- data[instance]->pixel_packet = GetImagePixels(data[instance]->image, 0, 0, data[instance]->image->columns, data[instance]->image->rows);
++ data[instance]->pixel_packet = GetAuthenticPixels(data[instance]->image, 0, 0, data[instance]->image->columns, data[instance]->image->rows, data[instance]->exception_info);
+ }
+ if(data[instance]->dump) {
+ if((data[instance]->dump_buf = tc_malloc ((data[instance]->width-data[instance]->xpos)*(data[instance]->height-data[instance]->ypos)*3)) == NULL)
+@@ -865,10 +871,9 @@
+ if (data[instance]->dumpimage != (Image *)NULL) {
+ DestroyImage(data[instance]->dumpimage);
+ DestroyImageInfo(data[instance]->dumpimage_info);
+- ConstituteComponentTerminus();
+ }
+- DestroyExceptionInfo(&data[instance]->exception_info);
+- DestroyMagick();
++ DestroyExceptionInfo(data[instance]->exception_info);
++ MagickCoreTerminus();
+
+ if(data[instance]->dump_buf) free(data[instance]->dump_buf);
+ if(data[instance]) free(data[instance]);
+--- transcode-1.1.7/filter/filter_logo.c
++++ transcode-1.1.7/filter/filter_logo.c
+@@ -36,7 +36,7 @@
+
+ /* Note: because of ImageMagick bogosity, this must be included first, so
+ * we can undefine the PACKAGE_* symbols it splats into our namespace */
+-#include <magick/api.h>
++#include <MagickCore/MagickCore.h>
+ #undef PACKAGE_BUGREPORT
+ #undef PACKAGE_NAME
+ #undef PACKAGE_STRING
+@@ -227,7 +227,8 @@
+ ImageFormat ifmt,
+ int do_rgbswap)
+ {
+- PixelPacket *pixel_packet;
++ ExceptionInfo *exception_info;
++ Quantum *pixel_packet;
+ uint8_t *dst_ptr = dst;
+
+ int row, col;
+@@ -246,16 +247,17 @@
+ }
+ g_off = 1;
+
+- pixel_packet = GetImagePixels(src, 0, 0, width, height);
++ exception_info = AcquireExceptionInfo();
++ pixel_packet = GetAuthenticPixels(src, 0, 0, width, height, exception_info);
+
+ for (row = 0; row < height; row++) {
+ for (col = 0; col < width; col++) {
+- *(dst_ptr + r_off) = (uint8_t)ScaleQuantumToChar(pixel_packet->red);
+- *(dst_ptr + g_off) = (uint8_t)ScaleQuantumToChar(pixel_packet->green);
+- *(dst_ptr + b_off) = (uint8_t)ScaleQuantumToChar(pixel_packet->blue);
++ *(dst_ptr + r_off) = (uint8_t)ScaleQuantumToChar(GetPixelRed(src, pixel_packet));
++ *(dst_ptr + g_off) = (uint8_t)ScaleQuantumToChar(GetPixelGreen(src, pixel_packet));
++ *(dst_ptr + b_off) = (uint8_t)ScaleQuantumToChar(GetPixelBlue(src, pixel_packet));
+
+ dst_ptr += 3;
+- pixel_packet++;
++ pixel_packet += GetPixelChannels(src);
+ }
+ }
+
+@@ -310,7 +312,7 @@
+ Image *timg;
+ Image *nimg;
+ ImageInfo *image_info;
+- ExceptionInfo exception_info;
++ ExceptionInfo *exception_info;
+
+ int rgb_off = 0;
+
+@@ -376,19 +378,19 @@
+ * semaphore.
+ */
+ magick_usecount++;
+- if (!IsMagickInstantiated()) {
+- InitializeMagick("");
++ if (!IsMagickCoreInstantiated()) {
++ MagickCoreGenesis("", MagickFalse);
+ }
+
+- GetExceptionInfo(&exception_info);
++ exception_info = AcquireExceptionInfo();
+ image_info = CloneImageInfo((ImageInfo *) NULL);
+ strlcpy(image_info->filename, mfd->file, MaxTextExtent);
+
+- mfd->image = ReadImage(image_info, &exception_info);
++ mfd->image = ReadImage(image_info, exception_info);
+ if (mfd->image == (Image *) NULL) {
+- MagickWarning(exception_info.severity,
+- exception_info.reason,
+- exception_info.description);
++ MagickWarning(exception_info->severity,
++ exception_info->reason,
++ exception_info->description);
+ strlcpy(mfd->file, "/dev/null", PATH_MAX);
+ return 0;
+ }
+@@ -413,11 +415,11 @@
+
+ while (mfd->images != (Image *)NULL) {
+ if (mfd->flip || flip) {
+- timg = FlipImage(mfd->images, &exception_info);
++ timg = FlipImage(mfd->images, exception_info);
+ if (timg == (Image *) NULL) {
+- MagickError(exception_info.severity,
+- exception_info.reason,
+- exception_info.description);
++ MagickError(exception_info->severity,
++ exception_info->reason,
++ exception_info->description);
+ return -1;
+ }
+ AppendImageToList(&nimg, timg);
+@@ -573,7 +575,7 @@
+ /* Set up image/video coefficient lookup tables */
+ if (img_coeff_lookup[0] < 0) {
+ int i;
+- float maxrgbval = (float)MaxRGB; // from ImageMagick
++ float maxrgbval = (float)QuantumRange; // from ImageMagick
+
+ for (i = 0; i <= MAX_UINT8_VAL; i++) {
+ float x = (float)ScaleCharToQuantum(i);
+@@ -615,8 +617,8 @@
+ }
+
+ magick_usecount--;
+- if (magick_usecount == 0 && IsMagickInstantiated()) {
+- DestroyMagick();
++ if (magick_usecount == 0 && IsMagickCoreInstantiated()) {
++ MagickCoreTerminus();
+ }
+
+ return 0;
+@@ -638,7 +640,8 @@
+ && (ptr->tag & TC_VIDEO)
+ && !(ptr->attributes & TC_FRAME_IS_SKIPPED)
+ ) {
+- PixelPacket *pixel_packet;
++ ExceptionInfo *exception_info;
++ Quantum *pixel_packet;
+ uint8_t *video_buf;
+
+ int do_fade = 0;
+@@ -647,6 +650,7 @@
+
+ /* Note: ImageMagick defines opacity = 0 as fully visible, and
+ * opacity = MaxRGB as fully transparent.
++ * alpha rather than opacity (0 transparent; QuantumRange opaque).
+ */
+ Quantum opacity;
+
+@@ -682,9 +686,11 @@
+ mfd->cur_delay = mfd->images->delay * vob->fps/100;
+ }
+
+- pixel_packet = GetImagePixels(mfd->images, 0, 0,
++ exception_info = AcquireExceptionInfo();
++ pixel_packet = GetAuthenticPixels(mfd->images, 0, 0,
+ mfd->images->columns,
+- mfd->images->rows);
++ mfd->images->rows,
++ exception_info);
+
+ if (vob->im_v_codec == CODEC_RGB) {
+ unsigned long r_off, g_off, b_off;
+@@ -702,30 +708,30 @@
+ video_buf = ptr->video_buf + 3 * ((row + mfd->posy) * vob->ex_v_width + mfd->posx);
+
+ for (col = 0; col < mfd->image->columns; col++) {
+- opacity = pixel_packet->opacity;
++ opacity = QuantumRange - GetPixelAlpha(mfd->images, pixel_packet);
+
+ if (do_fade)
+- opacity += (Quantum)((MaxRGB - opacity) * fade_coeff);
++ opacity += (Quantum)((QuantumRange - opacity) * fade_coeff);
+
+ if (opacity == 0) {
+- *(video_buf + r_off) = ScaleQuantumToChar(pixel_packet->red);
+- *(video_buf + g_off) = ScaleQuantumToChar(pixel_packet->green);
+- *(video_buf + b_off) = ScaleQuantumToChar(pixel_packet->blue);
+- } else if (opacity < MaxRGB) {
++ *(video_buf + r_off) = ScaleQuantumToChar(GetPixelRed(mfd->images, pixel_packet));
++ *(video_buf + g_off) = ScaleQuantumToChar(GetPixelGreen(mfd->images, pixel_packet));
++ *(video_buf + b_off) = ScaleQuantumToChar(GetPixelBlue(mfd->images, pixel_packet));
++ } else if (opacity < QuantumRange) {
+ unsigned char opacity_uchar = ScaleQuantumToChar(opacity);
+ img_coeff = img_coeff_lookup[opacity_uchar];
+ vid_coeff = vid_coeff_lookup[opacity_uchar];
+
+ *(video_buf + r_off) = (uint8_t)((*(video_buf + r_off)) * vid_coeff)
+- + (uint8_t)(ScaleQuantumToChar(pixel_packet->red) * img_coeff);
++ + (uint8_t)(ScaleQuantumToChar(GetPixelRed(mfd->images, pixel_packet)) * img_coeff);
+ *(video_buf + g_off) = (uint8_t)((*(video_buf + g_off)) * vid_coeff)
+- + (uint8_t)(ScaleQuantumToChar(pixel_packet->green) * img_coeff);
++ + (uint8_t)(ScaleQuantumToChar(GetPixelGreen(mfd->images, pixel_packet)) * img_coeff);
+ *(video_buf + b_off) = (uint8_t)((*(video_buf + b_off)) * vid_coeff)
+- + (uint8_t)(ScaleQuantumToChar(pixel_packet->blue) * img_coeff);
++ + (uint8_t)(ScaleQuantumToChar(GetPixelBlue(mfd->images, pixel_packet)) * img_coeff);
+ }
+
+ video_buf += 3;
+- pixel_packet++;
++ pixel_packet += GetPixelChannels(mfd->images);
+ }
+ }
+ } else { /* !RGB */
+@@ -745,10 +751,10 @@
+ vid_pixel_V = vid_pixel_U + vid_size/4;
+ for (col = 0; col < mfd->images->columns; col++) {
+ int do_UV_pixels = (mfd->grayout == 0 && !(row % 2) && !(col % 2)) ? 1 : 0;
+- opacity = pixel_packet->opacity;
++ opacity = QuantumRange - GetPixelAlpha(mfd->images, pixel_packet);
+
+ if (do_fade)
+- opacity += (Quantum)((MaxRGB - opacity) * fade_coeff);
++ opacity += (Quantum)((QuantumRange - opacity) * fade_coeff);
+
+ if (opacity == 0) {
+ *vid_pixel_Y = *img_pixel_Y;
+@@ -756,7 +762,7 @@
+ *vid_pixel_U = *img_pixel_U;
+ *vid_pixel_V = *img_pixel_V;
+ }
+- } else if (opacity < MaxRGB) {
++ } else if (opacity < QuantumRange) {
+ unsigned char opacity_uchar = ScaleQuantumToChar(opacity);
+ img_coeff = img_coeff_lookup[opacity_uchar];
+ vid_coeff = vid_coeff_lookup[opacity_uchar];
+--- transcode-1.1.7/import/import_im.c
++++ transcode-1.1.7/import/import_im.c
+@@ -34,9 +34,9 @@
+ /* Note: because of ImageMagick bogosity, this must be included first, so
+ * we can undefine the PACKAGE_* symbols it splats into our namespace */
+ #ifdef HAVE_BROKEN_WAND
+-#include <wand/magick-wand.h>
++#include <MagickWand/MagickWand.h>
+ #else /* we have a SANE wand header */
+-#include <wand/MagickWand.h>
++#include <MagickWand/MagickWand.h>
+ #endif /* HAVE_BROKEN_WAND */
+
+ #undef PACKAGE_BUGREPORT
+--- transcode-1.1.7/import/import_imlist.c
++++ transcode-1.1.7/import/import_imlist.c
+@@ -34,9 +34,9 @@
+ /* Note: because of ImageMagick bogosity, this must be included first, so
+ * we can undefine the PACKAGE_* symbols it splats into our namespace */
+ #ifdef HAVE_BROKEN_WAND
+-#include <wand/magick-wand.h>
++#include <MagickWand/MagickWand.h>
+ #else /* we have a SANE wand header */
+-#include <wand/MagickWand.h>
++#include <MagickWand/MagickWand.h>
+ #endif /* HAVE_BROKEN_WAND */
+
+ #undef PACKAGE_BUGREPORT
+--- transcode-1.1.7/import/probe_im.c
++++ transcode-1.1.7/import/probe_im.c
+@@ -40,9 +40,9 @@
+ # undef PACKAGE_VERSION
+
+ # ifdef HAVE_BROKEN_WAND
+-# include <wand/magick-wand.h>
++# include <MagickWand/MagickWand.h>
+ # else /* we have a SANE wand header */
+-# include <wand/MagickWand.h>
++# include <MagickWand/MagickWand.h>
+ # endif /* HAVE_BROKEN_WAND */
+
+ # undef PACKAGE_BUGREPORT
diff --git a/multimedia/transcode/transcode.SlackBuild b/multimedia/transcode/transcode.SlackBuild
index 1c07cbc57e..f4dbcab3d9 100644
--- a/multimedia/transcode/transcode.SlackBuild
+++ b/multimedia/transcode/transcode.SlackBuild
@@ -80,6 +80,15 @@ patch -p1 -i $CWD/transcode-1.1.7-preset-force.patch
patch -p1 -i $CWD/transcode-1.1.7-ffmpeg2.patch
patch -p1 -i $CWD/transcode-1.1.7-ffmpeg24.patch
patch -p1 -i $CWD/transcode-1.1.7-ffmpeg29.patch
+patch -p1 -i $CWD/transcode-1.1.7-ffmpeg4.patch
+# Fix building with imagemagick 7.x
+patch -p1 -i $CWD/transcode-1.1.7-imagemagick7.patch
+patch -p1 -i $CWD/transcode-1.1.7-gcc10.patch
+patch -p1 -i $CWD/transcode-1.1.7-glibc-2.32.patch
+
+autoreconf -vif
+
+export MAGICKCORE_QUANTUM_DEPTH=32
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -92,8 +101,6 @@ CXXFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--enable-alsa \
--enable-v4l \
- --enable-libv4l2 \
- --enable-libv4lconvert \
--enable-libmpeg2=${LIBMPEG2:-no} \
--enable-libmpeg2convert=${LIBMPEG2:-no} \
--enable-ogg \
diff --git a/multimedia/tvheadend/tvheadend-4.2.8-fno-common.patch b/multimedia/tvheadend/tvheadend-4.2.8-fno-common.patch
new file mode 100644
index 0000000000..23f48652f9
--- /dev/null
+++ b/multimedia/tvheadend/tvheadend-4.2.8-fno-common.patch
@@ -0,0 +1,55 @@
+From 1f2a0a59e3acaef88509d3ac899b905c73b7b8f8 Mon Sep 17 00:00:00 2001
+From: James Le Cuirot <chewi@gentoo.org>
+Date: Fri, 15 May 2020 17:45:30 +0100
+Subject: [PATCH] Fix building with -fno-common (default from GCC 10)
+
+---
+ src/input.h | 4 ++--
+ src/input/mpegts.c | 2 ++
+ src/input/mpegts.h | 2 +-
+ 3 files changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/src/input.h b/src/input.h
+index a9c96df04..3dce355c6 100644
+--- a/src/input.h
++++ b/src/input.h
+@@ -133,8 +133,8 @@ void tvh_hardware_delete ( tvh_hardware_t *th );
+ extern const idclass_t tvh_input_class;
+ extern const idclass_t tvh_input_instance_class;
+
+-tvh_input_list_t tvh_inputs;
+-tvh_hardware_list_t tvh_hardware;
++extern tvh_input_list_t tvh_inputs;
++extern tvh_hardware_list_t tvh_hardware;
+
+ #define TVH_INPUT_FOREACH(x) LIST_FOREACH(x, &tvh_inputs, ti_link)
+ #define TVH_HARDWARE_FOREACH(x) LIST_FOREACH(x, &tvh_hardware, th_link)
+diff --git a/src/input/mpegts.c b/src/input/mpegts.c
+index e02d491f1..fca4f3429 100644
+--- a/src/input/mpegts.c
++++ b/src/input/mpegts.c
+@@ -20,6 +20,8 @@
+ #include "mpegts/fastscan.h"
+ #include "memoryinfo.h"
+
++struct mpegts_listeners mpegts_listeners;
++
+ extern memoryinfo_t mpegts_input_queue_memoryinfo;
+ extern memoryinfo_t mpegts_input_table_memoryinfo;
+
+diff --git a/src/input/mpegts.h b/src/input/mpegts.h
+index 9dda3baca..9c4c57b73 100644
+--- a/src/input/mpegts.h
++++ b/src/input/mpegts.h
+@@ -1149,7 +1149,7 @@ typedef struct mpegts_listener
+ void (*ml_mux_delete) (mpegts_mux_t *mm, void *p);
+ } mpegts_listener_t;
+
+-LIST_HEAD(,mpegts_listener) mpegts_listeners;
++extern LIST_HEAD(mpegts_listeners, mpegts_listener) mpegts_listeners;
+
+ #define mpegts_add_listener(ml)\
+ LIST_INSERT_HEAD(&mpegts_listeners, ml, ml_link)
+--
+2.26.2
+
diff --git a/multimedia/tvheadend/tvheadend-4.2.8-gcc9.patch b/multimedia/tvheadend/tvheadend-4.2.8-gcc9.patch
new file mode 100644
index 0000000000..9ccadb44c4
--- /dev/null
+++ b/multimedia/tvheadend/tvheadend-4.2.8-gcc9.patch
@@ -0,0 +1,36 @@
+diff -up ./src/plumbing/transcoding.c.orig ./src/plumbing/transcoding.c
+--- ./src/plumbing/transcoding.c.orig 2019-01-12 09:58:47.000000000 +0100
++++ ./src/plumbing/transcoding.c 2019-03-12 15:49:24.922314869 +0100
+@@ -1804,7 +1804,7 @@ transcoder_init_video(transcoder_t *t, s
+ char *str, *token, *saveptr, codec_list[sizeof(tp->tp_src_vcodec)];
+ int codec_match=0;
+
+- strncpy(codec_list, tp->tp_src_vcodec, sizeof(tp->tp_src_vcodec)-1);
++ memcpy(codec_list, tp->tp_src_vcodec, sizeof(tp->tp_src_vcodec)-1);
+
+ tvhtrace(LS_TRANSCODE, "src_vcodec=\"%s\" ssc_type=%d (%s)\n",
+ tp->tp_src_vcodec,
+@@ -2130,10 +2130,10 @@ transcoder_set_properties(streaming_targ
+ transcoder_t *t = (transcoder_t *)st;
+ transcoder_props_t *tp = &t->t_props;
+
+- strncpy(tp->tp_vcodec, props->tp_vcodec, sizeof(tp->tp_vcodec)-1);
+- strncpy(tp->tp_vcodec_preset, props->tp_vcodec_preset, sizeof(tp->tp_vcodec_preset)-1);
+- strncpy(tp->tp_acodec, props->tp_acodec, sizeof(tp->tp_acodec)-1);
+- strncpy(tp->tp_scodec, props->tp_scodec, sizeof(tp->tp_scodec)-1);
++ memcpy(tp->tp_vcodec, props->tp_vcodec, sizeof(tp->tp_vcodec)-1);
++ memcpy(tp->tp_vcodec_preset, props->tp_vcodec_preset, sizeof(tp->tp_vcodec_preset)-1);
++ memcpy(tp->tp_acodec, props->tp_acodec, sizeof(tp->tp_acodec)-1);
++ memcpy(tp->tp_scodec, props->tp_scodec, sizeof(tp->tp_scodec)-1);
+ tp->tp_channels = props->tp_channels;
+ tp->tp_vbitrate = props->tp_vbitrate;
+ tp->tp_abitrate = props->tp_abitrate;
+@@ -2141,7 +2141,7 @@ transcoder_set_properties(streaming_targ
+
+ memcpy(tp->tp_language, props->tp_language, 4);
+
+- strncpy(tp->tp_src_vcodec, props->tp_src_vcodec, sizeof(tp->tp_src_vcodec)-1);
++ memcpy(tp->tp_src_vcodec, props->tp_src_vcodec, sizeof(tp->tp_src_vcodec)-1);
+ }
+
+
diff --git a/multimedia/tvheadend/tvheadend.SlackBuild b/multimedia/tvheadend/tvheadend.SlackBuild
index 623f21723f..ac5b1e0c4e 100644
--- a/multimedia/tvheadend/tvheadend.SlackBuild
+++ b/multimedia/tvheadend/tvheadend.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=tvheadend
-VERSION=${VERSION:-3.4patch1}
+VERSION=${VERSION:-4.2.8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -60,7 +60,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || tar xvf $CWD/$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.?z
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -69,15 +69,24 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p1 < $CWD/tvheadend-4.2.8-gcc9.patch
+patch -p1 < $CWD/tvheadend-4.2.8-fno-common.patch
-CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -Wno-error=stringop-truncation -Wno-error=attributes" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
- --enable-libffmpeg_static \
+ --disable-ffmpeg_static \
+ --disable-libx264_static \
+ --disable-libx265_static \
+ --disable-libvpx_static \
+ --disable-libtheora_static \
+ --disable-libvorbis_static \
+ --disable-libfdkaac_static \
+ --python=python3 \
--build=$ARCH-slackware-linux
make
diff --git a/multimedia/tvheadend/tvheadend.info b/multimedia/tvheadend/tvheadend.info
index ad7caed7c3..176900fb09 100644
--- a/multimedia/tvheadend/tvheadend.info
+++ b/multimedia/tvheadend/tvheadend.info
@@ -1,10 +1,10 @@
PRGNAM="tvheadend"
-VERSION="3.4patch1"
+VERSION="4.2.8"
HOMEPAGE="https://tvheadend.org"
-DOWNLOAD="https://github.com/tvheadend/tvheadend/archive/3.4patch1.tar.gz"
-MD5SUM="86d1be0ad6e02bd2aecd3d529a026797"
+DOWNLOAD="https://github.com/tvheadend/tvheadend/archive/v4.2.8/tvheadend-4.2.8.tar.gz"
+MD5SUM="b9571efa46dd489f9fe87acdb391d591"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="uriparser"
MAINTAINER="William PC"
EMAIL="w_calandrini[at]hotmail[dot]com"
diff --git a/multimedia/tvtime/tvtime.SlackBuild b/multimedia/tvtime/tvtime.SlackBuild
index ed2d612d24..c065c9ff79 100644
--- a/multimedia/tvtime/tvtime.SlackBuild
+++ b/multimedia/tvtime/tvtime.SlackBuild
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=tvtime
-VERSION=${VERSION:-1.0.7}
+VERSION=${VERSION:-1.0.11}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,16 +40,15 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-# The INSTALL file recommends avoiding the use of the "-march" flag,
-# and -fPIC on x86_64 results in failure
-if [ "$ARCH" = "i486" ]; then
+# The INSTALL file recommends avoiding the use of the "-march" flag
+if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2"
+ SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
@@ -69,7 +68,7 @@ find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
-o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -87,13 +86,11 @@ CXXFLAGS="$SLKCFLAGS" \
make
make install DESTDIR=$PKG
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-( cd $PKG/usr/man
- find . -type f -exec gzip -9 {} \;
- for i in $(find . -type l) ; do ln -s $(readlink $i).gz $i.gz ; rm $i ; done
-)
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
# Let's not clobber the config file
mv $PKG/etc/tvtime/tvtime.xml $PKG/etc/tvtime/tvtime.xml.new
@@ -101,7 +98,7 @@ mv $PKG/etc/tvtime/tvtime.xml $PKG/etc/tvtime/tvtime.xml.new
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
ABOUT-NLS AUTHORS COPYING* ChangeLog INSTALL NEWS README docs/html \
- $PKG/usr/doc/$PRGNAM-$VERSION
+ $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/multimedia/tvtime/tvtime.info b/multimedia/tvtime/tvtime.info
index 366e36ce63..04126667b2 100644
--- a/multimedia/tvtime/tvtime.info
+++ b/multimedia/tvtime/tvtime.info
@@ -1,8 +1,8 @@
PRGNAM="tvtime"
-VERSION="1.0.7"
+VERSION="1.0.11"
HOMEPAGE="http://tvtime.sourceforge.net/"
-DOWNLOAD="http://linuxtv.org/downloads/tvtime/tvtime-1.0.7.tar.gz"
-MD5SUM="d3cea3053ce8ff0d555da82fad138b44"
+DOWNLOAD="http://linuxtv.org/downloads/tvtime/tvtime-1.0.11.tar.gz"
+MD5SUM="f4adba831376a8baad92dbda49056138"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/multimedia/vcdimager/vcdimager.SlackBuild b/multimedia/vcdimager/vcdimager.SlackBuild
index c56f5c2779..0a9d9f55f7 100644
--- a/multimedia/vcdimager/vcdimager.SlackBuild
+++ b/multimedia/vcdimager/vcdimager.SlackBuild
@@ -24,7 +24,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=vcdimager
-VERSION=${VERSION:-0.7.24}
+VERSION=${VERSION:-2.0.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -65,8 +65,10 @@ tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 400 -o -perm 440 \) -exec chmod 644 {} \; -o \
- \( -perm 777 -o -perm 775 -o -perm 511 -o -perm 711 -o -perm 555 \) -exec chmod 755 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
diff --git a/multimedia/vcdimager/vcdimager.info b/multimedia/vcdimager/vcdimager.info
index 05ec47da33..66be249cdb 100644
--- a/multimedia/vcdimager/vcdimager.info
+++ b/multimedia/vcdimager/vcdimager.info
@@ -1,8 +1,8 @@
PRGNAM="vcdimager"
-VERSION="0.7.24"
+VERSION="2.0.1"
HOMEPAGE="http://www.gnu.org/software/vcdimager/"
-DOWNLOAD="http://mirrors.kernel.org/gnu/vcdimager/vcdimager-0.7.24.tar.gz"
-MD5SUM="3af22978fd79c79d5fda6513b6811145"
+DOWNLOAD="ftp://ftp.gnu.org/gnu/vcdimager/vcdimager-2.0.1.tar.gz"
+MD5SUM="3890d73da62d0607c87962c41cd33a29"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/multimedia/vlc/README b/multimedia/vlc/README
index 48a30411a4..1272ad3c7e 100644
--- a/multimedia/vlc/README
+++ b/multimedia/vlc/README
@@ -37,6 +37,11 @@ environment variable set e.g.
Playing of AV1 encoded video is supported when either of SBo's
multimedia/aom or libraries/dav1d packages is detected when vlc is built.
One of these is expected to become required in a future release.
+Some versions of the automatically detected optional aom package are
+incompatible with this version of vlc and in this case the build will
+fai. This can be avoided by setting the AOM environment variable to "no"
+e.g.
+ AOM=no sh vlc.SlackBuild
Please advise the maintainer to suggest support for any further options.
@@ -44,7 +49,3 @@ Please advise the maintainer to suggest support for any further options.
*NOTES*
- the qt4 interface seems not to be working ATM so the qt5 one is
enabled by default: this means qt5 is a new mandatory dependency
-- you *need* to version-bump the libva and libva-intel-driver in
- Slackware to versions 1.7.3 for VAAPI support: as we suppose
- a standard install, "--enable-libva=no" is added between the
- configure options, instead
diff --git a/multimedia/vlc/vlc.SlackBuild b/multimedia/vlc/vlc.SlackBuild
index 8b8543a820..c024322aca 100644
--- a/multimedia/vlc/vlc.SlackBuild
+++ b/multimedia/vlc/vlc.SlackBuild
@@ -81,6 +81,8 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
cd $PRGNAM-$VERSION
+sed -i '/DEPRECATED/s:^://:' modules/text_renderer/freetype/text_layout.c
+
patch -p0 < $CWD/patch-dvdread-503.diff
patch -p0 < $CWD/patch-dvdnav-503.diff
patch -p0 < $CWD/patch-projectM-fontpath.diff
@@ -105,6 +107,9 @@ fi
# Enable vlc to be run as root
runasroot=""; [ "${RUNASROOT:-no}" != "no" ] && runasroot="--enable-run-as-root"
+# Give the possibility to explicitly disable aom support
+aom=""; [ "${AOM:-yes}" = "no" ] && aom="--disable-aom"
+
autoreconf -fiv
chown -R root:root .
@@ -127,10 +132,10 @@ LDFLAGS="$SLKLDFLAGS" \
--build=$ARCH-slackware-linux \
$qtversion \
$wayland \
- $opencv \
$runasroot \
+ $aom \
+ --disable-opencv \
--enable-merge-ffmpeg \
- --enable-libva=no \
--with-kde-solid=no \
make
@@ -139,8 +144,7 @@ make DESTDIR=$PKG install
mkdir -p $PKG/usr/man/man1
gzip -9c doc/vlc.1 > $PKG/usr/man/man1/vlc.1.gz
-mkdir -p $PKG/$(cd /usr/share/vim/vim*/syntax ; pwd)
-cp extras/analyser/vlc.vim $PKG/$(cd /usr/share/vim/vim*/syntax ; pwd)/
+install -D -m0644 extras/analyser/vlc.vim $PKG/usr/share/vim/vimfiles/syntax/vlc.vim
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
diff --git a/multimedia/w_scan/gcc-10.patch b/multimedia/w_scan/gcc-10.patch
new file mode 100644
index 0000000000..50d2488190
--- /dev/null
+++ b/multimedia/w_scan/gcc-10.patch
@@ -0,0 +1,37 @@
+si_types.h: fix build with gcc 10
+
+Drop service_t, p_service_t, transponder_t and p_transponder_t to avoid
+the following build failure with gcc 10 (which defaults to -fno-common):
+
+/home/giuliobenetti/autobuild/run/instance-3/output-1/host/bin/arm-buildroot-linux-gnueabihf-gcc -Wall -Wextra -Wno-comment -Wswitch-default -Wno-unused-parameter -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -lrt -o w_scan atsc_psip_section.o countries.o descriptors.o diseqc.o dump-dvbscan.o dump-vdr.o dump-xine.o dump-mplayer.o dump-vlc-m3u.o dvbscan.o lnb.o parse-dvbscan.o satellites.o scan.o section.o tools.o emulate.o dump-xml.o iconv_codes.o char-coding.o
+/home/giuliobenetti/autobuild/run/instance-3/output-1/host/lib/gcc/arm-buildroot-linux-gnueabihf/10.2.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: descriptors.o:(.bss+0x404): multiple definition of `p_transponder_t'; countries.o:(.bss+0x0): first defined here
+/home/giuliobenetti/autobuild/run/instance-3/output-1/host/lib/gcc/arm-buildroot-linux-gnueabihf/10.2.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: descriptors.o:(.bss+0x408): multiple definition of `transponder_t'; countries.o:(.bss+0x4): first defined here
+/home/giuliobenetti/autobuild/run/instance-3/output-1/host/lib/gcc/arm-buildroot-linux-gnueabihf/10.2.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: descriptors.o:(.bss+0x480): multiple definition of `p_service_t'; countries.o:(.bss+0x7c): first defined here
+/home/giuliobenetti/autobuild/run/instance-3/output-1/host/lib/gcc/arm-buildroot-linux-gnueabihf/10.2.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: descriptors.o:(.bss+0x484): multiple definition of `service_t'; countries.o:(.bss+0x80): first defined here
+
+Fixes:
+ - http://autobuild.buildroot.org/results/5640442cb4ba06bcbcf31540a64f5665862d39f7
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+
+diff -Nura w_scan-20170107.orig/si_types.h w_scan-20170107/si_types.h
+--- w_scan-20170107.orig/si_types.h 2020-09-20 11:09:56.776963441 +0200
++++ w_scan-20170107/si_types.h 2020-09-20 11:13:13.149232478 +0200
+@@ -114,7 +114,7 @@
+ uint32_t logical_channel_number;
+ uint8_t running;
+ void * priv;
+-} service_t, * p_service_t;
++};
+
+ /*******************************************************************************
+ /* transponder type.
+@@ -201,7 +201,7 @@
+ /*----------------------------*/
+ char * network_name;
+ network_change_t network_change;
+-} __attribute__((packed)) transponder_t, * p_transponder_t;
++} __attribute__((packed));
+
+ /*******************************************************************************
+ /* satellite channel routing type.
diff --git a/multimedia/w_scan/w_scan.SlackBuild b/multimedia/w_scan/w_scan.SlackBuild
index 308bbdaa27..970cb4c3df 100644
--- a/multimedia/w_scan/w_scan.SlackBuild
+++ b/multimedia/w_scan/w_scan.SlackBuild
@@ -71,6 +71,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+patch -p1 < $CWD/gcc-10.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/multimedia/xmltv/README.SBo b/multimedia/xmltv/README.SBo
index 82de94966a..270be339d3 100644
--- a/multimedia/xmltv/README.SBo
+++ b/multimedia/xmltv/README.SBo
@@ -1,9 +1,3 @@
-This requires:
-libwww-perl, perl-xml-twig, perl-Date-Manip, perl-XML-Writer,
-perl-Lingua-Preferred, perl-TermReadKey, perl-Unicode-String,
-perl-Term-ProgressBar, perl-File-Slurp, perl-xml-libxml,
-perl-Lingua-EN-Numbers-Ordinate.
-
optional requirements for grabbers:
dk requires: perl-HTML-Tree
fi requires: perl-HTML-Tree
diff --git a/multimedia/xmltv/xmltv.SlackBuild b/multimedia/xmltv/xmltv.SlackBuild
index d7efae8986..4e1fb1cd30 100644
--- a/multimedia/xmltv/xmltv.SlackBuild
+++ b/multimedia/xmltv/xmltv.SlackBuild
@@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=xmltv
-VERSION=${VERSION:-0.5.66}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-0.6.3}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -40,13 +40,27 @@ TMP=${TMP:-/tmp/SBo}
PKG=${TMP}/package-${PRGNAM}
OUTPUT=${OUTPUT:-/tmp}
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
+tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -76,7 +90,7 @@ find $PKG -depth -type d -empty -delete || true
rm -rf $PKG/usr/share/doc
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a ChangeLog README README.cygwin doc/* $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a Changes README* doc/* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/multimedia/xmltv/xmltv.info b/multimedia/xmltv/xmltv.info
index aa11981c21..698c0cc054 100644
--- a/multimedia/xmltv/xmltv.info
+++ b/multimedia/xmltv/xmltv.info
@@ -1,8 +1,8 @@
PRGNAM="xmltv"
-VERSION="0.5.66"
+VERSION="0.6.3"
HOMEPAGE="http://xmltv.org/wiki"
-DOWNLOAD="http://downloads.sourceforge.net/xmltv/xmltv-0.5.66.tar.bz2"
-MD5SUM="1ad51ff5a02e8320bd908c7908c49661"
+DOWNLOAD="https://github.com/XMLTV/xmltv/archive/v0.6.3/xmltv-0.6.3.tar.gz"
+MD5SUM="60ce0c74b1d7254753d7508ee8a4c46c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libwww-perl perl-Date-Manip perl-File-Slurp perl-Lingua-EN-Numbers-Ordinate perl-Lingua-Preferred perl-Term-ProgressBar perl-Unicode-String perl-XML-Writer perl-xml-libxml perl-xml-twig perl-XML-TreePP"