mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-08 22:45:43 +00:00
alarm/vlc-rpi to 3.0.19-1
Update and sync with extra/vlc but retain lua5.2 due to breakage with lua
This commit is contained in:
parent
51abd4a597
commit
91d983c582
6 changed files with 5314 additions and 1492 deletions
File diff suppressed because it is too large
Load diff
|
@ -1,15 +0,0 @@
|
||||||
--- a/modules/video_output/caca.c
|
|
||||||
+++ b/modules/video_output/caca.c
|
|
||||||
@@ -160,7 +160,11 @@ static int Open(vlc_object_t *object)
|
|
||||||
}
|
|
||||||
|
|
||||||
const char *driver = NULL;
|
|
||||||
-#ifdef __APPLE__
|
|
||||||
+// RPI: If driver is NULL then if we have X but DISPLAY is unset then somehow
|
|
||||||
+// the GL module becomes unloaded without anything noticing and that then
|
|
||||||
+// causes a segfault.
|
|
||||||
+//#ifdef __APPLE__
|
|
||||||
+#if 1
|
|
||||||
// Make sure we don't try to open a window.
|
|
||||||
driver = "ncurses";
|
|
||||||
#endif
|
|
|
@ -1,14 +0,0 @@
|
||||||
--- a/modules/video_chroma/chain.c
|
|
||||||
+++ b/modules/video_chroma/chain.c
|
|
||||||
@@ -280,8 +280,9 @@ static int BuildTransformChain( filter_t
|
|
||||||
return VLC_SUCCESS;
|
|
||||||
|
|
||||||
/* Lets try resize+chroma first, then transform */
|
|
||||||
- msg_Dbg( p_filter, "Trying to build chroma+resize" );
|
|
||||||
- EsFormatMergeSize( &fmt_mid, &p_filter->fmt_out, &p_filter->fmt_in );
|
|
||||||
+ msg_Dbg( p_filter, "Trying to build chroma+resize, then transform" );
|
|
||||||
+ es_format_Copy( &fmt_mid, &p_filter->fmt_out );
|
|
||||||
+ video_format_TransformTo(&fmt_mid.video, p_filter->fmt_in.video.orientation);
|
|
||||||
i_ret = CreateChain( p_filter, &fmt_mid );
|
|
||||||
es_format_Clean( &fmt_mid );
|
|
||||||
if( i_ret == VLC_SUCCESS )
|
|
|
@ -1,14 +0,0 @@
|
||||||
--- a/bin/vlc.c
|
|
||||||
+++ b/bin/vlc.c
|
|
||||||
@@ -106,7 +106,10 @@ static void vlc_kill (void *data)
|
|
||||||
static void exit_timeout (int signum)
|
|
||||||
{
|
|
||||||
(void) signum;
|
|
||||||
- signal (SIGINT, SIG_DFL);
|
|
||||||
+// This doesn't seem to be strong enough to reliably kill us if we fail to exit
|
|
||||||
+// in a timely fashion - so upgrade to _exit().
|
|
||||||
+// signal (SIGINT, SIG_DFL);
|
|
||||||
+ _exit(0);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*****************************************************************************
|
|
|
@ -1,72 +0,0 @@
|
||||||
--- a/modules/gui/qt/components/interface_widgets.cpp
|
|
||||||
+++ b/modules/gui/qt/components/interface_widgets.cpp
|
|
||||||
@@ -108,6 +108,36 @@ void VideoWidget::sync( void )
|
|
||||||
if( QX11Info::isPlatformX11() )
|
|
||||||
XSync( QX11Info::display(), False );
|
|
||||||
#endif
|
|
||||||
+ refreshHandles();
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+/**
|
|
||||||
+ * The wayland surface may change if the window is hidden which
|
|
||||||
+ * seems to happen sometimes on resize
|
|
||||||
+ * In Qt it looks like this happens if the window is hidden
|
|
||||||
+ **/
|
|
||||||
+void VideoWidget::refreshHandles()
|
|
||||||
+{
|
|
||||||
+#ifdef QT5_HAS_WAYLAND
|
|
||||||
+ if (!p_window || p_window->type != VOUT_WINDOW_TYPE_WAYLAND)
|
|
||||||
+ return;
|
|
||||||
+
|
|
||||||
+ /* Ensure only the video widget is native (needed for Wayland) */
|
|
||||||
+ stable->setAttribute( Qt::WA_DontCreateNativeAncestors, true);
|
|
||||||
+
|
|
||||||
+ QWindow *window = stable->windowHandle();
|
|
||||||
+ assert(window != NULL);
|
|
||||||
+ window->create();
|
|
||||||
+
|
|
||||||
+ QPlatformNativeInterface *qni = qApp->platformNativeInterface();
|
|
||||||
+ assert(qni != NULL);
|
|
||||||
+
|
|
||||||
+ p_window->handle.wl = static_cast<wl_surface*>(
|
|
||||||
+ qni->nativeResourceForWindow(QByteArrayLiteral("surface"),
|
|
||||||
+ window));
|
|
||||||
+ p_window->display.wl = static_cast<wl_display*>(
|
|
||||||
+ qni->nativeResourceForIntegration(QByteArrayLiteral("wl_display")));
|
|
||||||
+#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
@@ -165,21 +195,7 @@ bool VideoWidget::request( struct vout_w
|
|
||||||
#ifdef QT5_HAS_WAYLAND
|
|
||||||
case VOUT_WINDOW_TYPE_WAYLAND:
|
|
||||||
{
|
|
||||||
- /* Ensure only the video widget is native (needed for Wayland) */
|
|
||||||
- stable->setAttribute( Qt::WA_DontCreateNativeAncestors, true);
|
|
||||||
-
|
|
||||||
- QWindow *window = stable->windowHandle();
|
|
||||||
- assert(window != NULL);
|
|
||||||
- window->create();
|
|
||||||
-
|
|
||||||
- QPlatformNativeInterface *qni = qApp->platformNativeInterface();
|
|
||||||
- assert(qni != NULL);
|
|
||||||
-
|
|
||||||
- p_wnd->handle.wl = static_cast<wl_surface*>(
|
|
||||||
- qni->nativeResourceForWindow(QByteArrayLiteral("surface"),
|
|
||||||
- window));
|
|
||||||
- p_wnd->display.wl = static_cast<wl_display*>(
|
|
||||||
- qni->nativeResourceForIntegration(QByteArrayLiteral("wl_display")));
|
|
||||||
+ refreshHandles();
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
--- a/modules/gui/qt/components/interface_widgets.hpp
|
|
||||||
+++ b/modules/gui/qt/components/interface_widgets.hpp
|
|
||||||
@@ -88,6 +88,7 @@ private:
|
|
||||||
bool enable_mouse_events;
|
|
||||||
|
|
||||||
void reportSize();
|
|
||||||
+ void refreshHandles();
|
|
||||||
|
|
||||||
signals:
|
|
||||||
void sizeChanged( int, int );
|
|
|
@ -6,11 +6,11 @@
|
||||||
|
|
||||||
pkgname=vlc-rpi
|
pkgname=vlc-rpi
|
||||||
_pkgname=vlc
|
_pkgname=vlc
|
||||||
_vlcver=3.0.18
|
_vlcver=3.0.19
|
||||||
# optional fixup version including hyphen
|
# optional fixup version including hyphen
|
||||||
_vlcfixupver=
|
_vlcfixupver=
|
||||||
pkgver=${_vlcver}${_vlcfixupver//-/.r}
|
pkgver=${_vlcver}${_vlcfixupver//-/.r}
|
||||||
pkgrel=7
|
pkgrel=1
|
||||||
pkgdesc='Multi-platform MPEG, VCD/DVD, and DivX player with hw accel for RPi 3/4/400'
|
pkgdesc='Multi-platform MPEG, VCD/DVD, and DivX player with hw accel for RPi 3/4/400'
|
||||||
url='https://www.videolan.org/vlc/'
|
url='https://www.videolan.org/vlc/'
|
||||||
arch=(aarch64)
|
arch=(aarch64)
|
||||||
|
@ -21,7 +21,7 @@ depends=('a52dec' 'libdvbpsi' 'libxpm' 'libdca' 'libproxy' 'lua52' 'libidn'
|
||||||
'libmpeg2' 'xcb-util-keysyms' 'libtar' 'libxinerama' 'libsecret'
|
'libmpeg2' 'xcb-util-keysyms' 'libtar' 'libxinerama' 'libsecret'
|
||||||
'libupnp' 'libixml.so' 'libupnp.so' 'libarchive' 'qt5-base'
|
'libupnp' 'libixml.so' 'libupnp.so' 'libarchive' 'qt5-base'
|
||||||
'qt5-x11extras' 'qt5-svg' 'freetype2' 'fribidi' 'harfbuzz'
|
'qt5-x11extras' 'qt5-svg' 'freetype2' 'fribidi' 'harfbuzz'
|
||||||
'fontconfig' 'libxml2' 'gnutls' 'libplacebo' 'wayland-protocols'
|
'fontconfig' 'libxml2' 'gnutls' 'libplacebo' 'aribb24'
|
||||||
'linux-rpi' 'libomxil-bellagio')
|
'linux-rpi' 'libomxil-bellagio')
|
||||||
makedepends=('gst-plugins-base-libs' 'live-media' 'libnotify' 'libbluray'
|
makedepends=('gst-plugins-base-libs' 'live-media' 'libnotify' 'libbluray'
|
||||||
'flac' 'libdc1394' 'libavc1394' 'libcaca' 'gtk3'
|
'flac' 'libdc1394' 'libavc1394' 'libcaca' 'gtk3'
|
||||||
|
@ -33,7 +33,7 @@ makedepends=('gst-plugins-base-libs' 'live-media' 'libnotify' 'libbluray'
|
||||||
'libx265.so' 'libx264.so' 'zvbi' 'libass' 'libkate' 'libtiger'
|
'libx265.so' 'libx264.so' 'zvbi' 'libass' 'libkate' 'libtiger'
|
||||||
'sdl_image' 'libpulse' 'alsa-lib' 'jack' 'libsamplerate' 'libsoxr'
|
'sdl_image' 'libpulse' 'alsa-lib' 'jack' 'libsamplerate' 'libsoxr'
|
||||||
'lirc' 'libgoom2' 'projectm' 'aom' 'srt' 'dav1d' 'libomxil-bellagio'
|
'lirc' 'libgoom2' 'projectm' 'aom' 'srt' 'dav1d' 'libomxil-bellagio'
|
||||||
'aribb24' 'aribb25' 'pcsclite' 'debugedit')
|
'aribb25' 'pcsclite' 'wayland-protocols')
|
||||||
|
|
||||||
# 'chromaprint: Chromaprint audio fingerprinter'
|
# 'chromaprint: Chromaprint audio fingerprinter'
|
||||||
optdepends=('avahi: service discovery using bonjour protocol'
|
optdepends=('avahi: service discovery using bonjour protocol'
|
||||||
|
@ -97,44 +97,36 @@ optdepends=('avahi: service discovery using bonjour protocol'
|
||||||
'ncurses: ncurses interface'
|
'ncurses: ncurses interface'
|
||||||
'libnotify: notification plugin'
|
'libnotify: notification plugin'
|
||||||
'gtk3: notification plugin'
|
'gtk3: notification plugin'
|
||||||
'aribb24: aribsub support'
|
|
||||||
'aribb25: aribcam support'
|
'aribb25: aribcam support'
|
||||||
'pcsclite: aribcam support')
|
'pcsclite: aribcam support'
|
||||||
|
'live-media: streaming over RTSP')
|
||||||
conflicts=('vlc-plugin' 'vlc')
|
conflicts=('vlc-plugin' 'vlc')
|
||||||
provides=('vlc')
|
provides=('vlc')
|
||||||
replaces=('vlc-plugin')
|
replaces=('vlc-plugin')
|
||||||
options=('debug' '!emptydirs')
|
options=('!emptydirs')
|
||||||
install='vlc.install'
|
install='vlc.install'
|
||||||
source=(https://download.videolan.org/${_pkgname}/${_vlcver}/${_pkgname}-${_vlcver}${_vlcfixupver}.tar.xz{,.asc}
|
source=(https://download.videolan.org/${_pkgname}/${_vlcver}/${_pkgname}-${_vlcver}${_vlcfixupver}.tar.xz{,.asc}
|
||||||
99-vlc.rules
|
99-vlc.rules
|
||||||
vlc.config.txt
|
vlc.config.txt
|
||||||
0001-vlc-live-media-2021.patch
|
0001-vlc-live-media-2021.patch
|
||||||
0002-libplacebo-5.patch
|
0002-libplacebo-5.patch
|
||||||
# credit to RPi-Distro maintainers for this work
|
# credit to jc and RPi-Distro maintainers for this work, see:
|
||||||
|
# https://github.com/jc-kynesim/vlc.git
|
||||||
# https://github.com/RPi-Distro/vlc/tree/bullseye-rpt/debian/patches
|
# https://github.com/RPi-Distro/vlc/tree/bullseye-rpt/debian/patches
|
||||||
0003-mmal_35.patch
|
0003-dev-3.0.19-port_1.patch
|
||||||
0004-mmal_caca.patch
|
|
||||||
0005-mmal_chain.patch
|
|
||||||
0006-mmal_exit_fix.patch
|
|
||||||
0007-mmal_wayland.patch
|
|
||||||
update-vlc-plugin-cache.hook)
|
update-vlc-plugin-cache.hook)
|
||||||
sha256sums=('57094439c365d8aa8b9b41fa3080cc0eef2befe6025bb5cef722accc625aedec'
|
sha256sums=('643e3294bafe922324663ca499515b7564f2794575fd7d2b7992d20896381745'
|
||||||
'SKIP'
|
'SKIP'
|
||||||
'61125ab0da600d813f1aebd8445fcf03e176389cfb8aa28591f8225a13043089'
|
'61125ab0da600d813f1aebd8445fcf03e176389cfb8aa28591f8225a13043089'
|
||||||
'be970a020695fdc4d0f968021f057a1cb625eeb6ee62995560e532d61ffb52dc'
|
'be970a020695fdc4d0f968021f057a1cb625eeb6ee62995560e532d61ffb52dc'
|
||||||
'753517a8b88c5950d516f0fe57a3ef169e0665ba7817d4b8d9976c666829a291'
|
'753517a8b88c5950d516f0fe57a3ef169e0665ba7817d4b8d9976c666829a291'
|
||||||
'c47ecb0e8e8c03f8c5451aa12fc2e38e380364c38c411a13aa38b7b41def6989'
|
'c47ecb0e8e8c03f8c5451aa12fc2e38e380364c38c411a13aa38b7b41def6989'
|
||||||
'1560f80b52b7d88bd1a4f1c7fb74633aa30e4302a772c739eecbd58b200e7060'
|
'6d0e7b14ae4cd2e490271a8c00cd97027af01eb6e65629f761562bcbd2869980'
|
||||||
'53613a6eee1c215a7becd9a8b97d0ed9a034684a586b9437f35f215a5c859d1a'
|
|
||||||
'a06d62bc579405588f5730a707af602d68f17d764a061f74958135aab34e4d92'
|
|
||||||
'1371c4fa43c8c7097aad21f3ac959aaea988a447ac30f9b96979c34bb0601316'
|
|
||||||
'1fcf65188a220905acea6da9cad256ceae405e9ebf5a7d079051984a8e602ba9'
|
|
||||||
'b98043683dd90d3f5a3f501212dfc629839b661100de5ac79fd30cb7b4a06f13')
|
'b98043683dd90d3f5a3f501212dfc629839b661100de5ac79fd30cb7b4a06f13')
|
||||||
validpgpkeys=('65F7C6B4206BD057A7EB73787180713BE58D1ADC') # VideoLAN Release Signing Key
|
validpgpkeys=('65F7C6B4206BD057A7EB73787180713BE58D1ADC') # VideoLAN Release Signing Key
|
||||||
|
|
||||||
prepare() {
|
prepare() {
|
||||||
cd ${_pkgname}-${_vlcver}
|
cd ${_pkgname}-${_vlcver}
|
||||||
|
|
||||||
sed -e 's:truetype/ttf-dejavu:TTF:g' -i modules/visualization/projectm.cpp
|
sed -e 's:truetype/ttf-dejavu:TTF:g' -i modules/visualization/projectm.cpp
|
||||||
sed -e 's|-Werror-implicit-function-declaration||g' -i configure
|
sed -e 's|-Werror-implicit-function-declaration||g' -i configure
|
||||||
sed 's|whoami|echo builduser|g' -i configure
|
sed 's|whoami|echo builduser|g' -i configure
|
||||||
|
@ -147,7 +139,6 @@ prepare() {
|
||||||
echo "Applying patch $src..."
|
echo "Applying patch $src..."
|
||||||
patch -Np1 < "../$src"
|
patch -Np1 < "../$src"
|
||||||
done
|
done
|
||||||
|
|
||||||
autoreconf -vf
|
autoreconf -vf
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -156,8 +147,9 @@ build() {
|
||||||
|
|
||||||
export CFLAGS+=" -I/usr/include/samba-4.0 -ffat-lto-objects -I/usr/include/ffmpeg-rpi"
|
export CFLAGS+=" -I/usr/include/samba-4.0 -ffat-lto-objects -I/usr/include/ffmpeg-rpi"
|
||||||
export CPPFLAGS+=" -I/usr/include/samba-4.0"
|
export CPPFLAGS+=" -I/usr/include/samba-4.0"
|
||||||
export CXXFLAGS+=" -std=c++11 -I/usr/include/ffmpeg-rpi"
|
# building with lua ends in errors whereas lua5.2 builds and runs
|
||||||
# upstream doesn't support lua 5.4 yet: https://trac.videolan.org/vlc/ticket/25036
|
export CXXFLAGS+=" -std=c++17 -I/usr/include/ffmpeg-rpi"
|
||||||
|
export PKG_CONFIG_PATH="/usr/lib/ffmpeg-rpi/pkgconfig"
|
||||||
export LUAC=/usr/bin/luac5.2
|
export LUAC=/usr/bin/luac5.2
|
||||||
export LUA_LIBS="$(pkg-config --libs lua5.2)"
|
export LUA_LIBS="$(pkg-config --libs lua5.2)"
|
||||||
export RCC=/usr/bin/rcc-qt5
|
export RCC=/usr/bin/rcc-qt5
|
||||||
|
|
Loading…
Reference in a new issue