mirror of
git://git.yoctoproject.org/meta-raspberrypi.git
synced 2025-07-19 12:59:03 +02:00
rpidistro-vlc: add rpidistro VLC build (with MMAL enabled)
This adds support for building rpidistro version of VLC with hardware acceleration through MMAL. The version of VLC located in meta-openembedded/meta-multimedia/recipes-multimedia/vlc uses mainline VLC and doesn't give all the proper flags. The series of patches attached to commit gives necessarly vlc mmal flags. * https://code.videolan.org/videolan/vlc/-/issues/24617 * https://bugs.gentoo.org/723006 The build fails with errors such as "multiple definition of `pf_enable_graphic_buffers'" when omxil is enabled. The issue seems to be due to compiler flags. Adding -fcommon to both cflags and cxxflags yields a full compile. Signed-off-by: Vincent Davis Jr <vince@underview.tech>
This commit is contained in:
parent
ba965e3b67
commit
8f88bfa824
|
@ -0,0 +1,19 @@
|
|||
From: =?utf-8?q?R=C3=A9mi_Denis-Courmont?= <remi@remlab.net>
|
||||
Date: Sat, 16 Jun 2018 21:31:45 +0300
|
||||
Subject: configure: fix linking on RISC-V ISA
|
||||
|
||||
Upstream-status: Pending
|
||||
---
|
||||
configure.ac | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -113,6 +113,7 @@ case "${host_os}" in
|
||||
;;
|
||||
linux*)
|
||||
SYS=linux
|
||||
+ test "${host_cpu}" = "riscv64" && CFLAGS="${CFLAGS} -pthread"
|
||||
;;
|
||||
bsdi*)
|
||||
SYS=bsdi
|
|
@ -0,0 +1,22 @@
|
|||
From: Sebastian Ramacher <sramacher@debian.org>
|
||||
Date: Mon, 19 Aug 2019 21:08:26 +0200
|
||||
Subject: Revert "configure: Require libmodplug >= 0.8.9"
|
||||
|
||||
This reverts commit 48f014768dc22ecad23d0e9f53c38805a3aff832.
|
||||
|
||||
Upstream-status: Pending
|
||||
---
|
||||
configure.ac | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -2207,7 +2207,7 @@ AC_ARG_ENABLE(mod,
|
||||
[AS_HELP_STRING([--disable-mod],
|
||||
[do not use libmodplug (default auto)])])
|
||||
if test "${enable_mod}" != "no" ; then
|
||||
- PKG_CHECK_MODULES(LIBMODPLUG, [libmodplug >= 0.8.9.0], [
|
||||
+ PKG_CHECK_MODULES(LIBMODPLUG, [libmodplug >= 0.8.4 libmodplug != 0.8.8], [
|
||||
VLC_ADD_PLUGIN([mod])
|
||||
VLC_ADD_CXXFLAGS([mod],[$LIBMODPLUG_CFLAGS])
|
||||
VLC_ADD_CFLAGS([mod],[$LIBMODPLUG_CFLAGS]) #modules/demux/mod.c needs CFLAGS_mod, not CXXFLAGS_mod
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,16 @@
|
|||
Upstream-status: Pending
|
||||
|
||||
--- 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);
|
||||
}
|
||||
|
||||
/*****************************************************************************
|
|
@ -0,0 +1,16 @@
|
|||
Upstream-status: Pending
|
||||
|
||||
--- 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 )
|
|
@ -0,0 +1,56 @@
|
|||
From: Vincent Davis Jr <vince@underview.tech>
|
||||
Date: Fri, 07 Jan 2022 07:10:47 PM CST
|
||||
Subject: [PATCH] Use packageconfig to acquire mmal flags
|
||||
|
||||
Need to use userland graphics libraries package files as it's best to not assume /opt/vc is where
|
||||
all libs and headers are installed per distro. Also, needed to include $BCMHOST_MMAL_LIBS variable as
|
||||
AC_CHECK_LIB(bcm_host) fails to find `vc_tv_unregister_callback_full`. Adding $BCMHOST_MMAL_LIBS uses all
|
||||
libs inside bcm_host,mmal,vcsm,openmaxil .pc files when checking for `vc_tv_unregister_callback_full`
|
||||
function.
|
||||
|
||||
Upstream-status: Pending
|
||||
|
||||
Signed-off-by: Vincent Davis Jr <vince@underview.tech>
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index bff220510..4d487409d 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -3483,23 +3483,25 @@ AC_ARG_ENABLE(mmal_avcodec,
|
||||
[Use MMAL enabled avcodec libs (default disable)]))
|
||||
if test "${enable_mmal}" != "no"; then
|
||||
VLC_SAVE_FLAGS
|
||||
- LDFLAGS="${LDFLAGS} -L/opt/vc/lib -lvchostif"
|
||||
- CPPFLAGS="${CPPFLAGS} -isystem /opt/vc/include -isystem /opt/vc/include/interface/vcos/pthreads -isystem /opt/vc/include/interface/vmcs_host/linux"
|
||||
- AC_CHECK_HEADERS(interface/mmal/mmal.h,
|
||||
- [ AC_CHECK_LIB(bcm_host, vc_tv_unregister_callback_full, [
|
||||
+ PKG_CHECK_MODULES(BCMHOST_MMAL, [bcm_host mmal vcsm openmaxil egl], [
|
||||
+ HAVE_MMAL=yes
|
||||
+ AC_CHECK_HEADERS(interface/mmal/mmal.h,
|
||||
+ [ AC_CHECK_LIB(bcm_host $BCMHOST_MMAL_LIBS, vc_tv_unregister_callback_full, [
|
||||
have_mmal="yes"
|
||||
- VLC_ADD_PLUGIN([mmal])
|
||||
- VLC_ADD_LDFLAGS([mmal],[ -L/opt/vc/lib ])
|
||||
- VLC_ADD_CFLAGS([mmal],[ -isystem /opt/vc/include -isystem /opt/vc/include/interface/vcos/pthreads -isystem /opt/vc/include/interface/vmcs_host/linux ])
|
||||
- VLC_ADD_LIBS([mmal],[ -lbcm_host -lmmal -lmmal_core -lmmal_components -lmmal_util -lvchostif -lvchiq_arm -lvcsm ]) ], [
|
||||
+ VLC_ADD_PLUGIN([bcm_host mmal vcsm openmaxil egl])
|
||||
+ VLC_ADD_CFLAGS([bcm_host mmal vcsm openmaxil egl],[$BCMHOST_MMAL_CFLAGS])
|
||||
+ VLC_ADD_LIBS([bcm_host mmal vcsm openmaxil egl],[$BCMHOST_MMAL_LIBS]) ], [
|
||||
AS_IF([test "${enable_mmal}" = "yes"],
|
||||
[ AC_MSG_ERROR([Cannot find bcm library...]) ],
|
||||
[ AC_MSG_WARN([Cannot find bcm library...]) ])
|
||||
- ],
|
||||
- [])
|
||||
- ] , [ AS_IF([test "${enable_mmal}" = "yes"],
|
||||
- [ AC_MSG_ERROR([Cannot find development headers for mmal...]) ],
|
||||
- [ AC_MSG_WARN([Cannot find development headers for mmal...]) ]) ])
|
||||
+ ],[])
|
||||
+ ],[ AS_IF([test "${enable_mmal}" = "yes"],
|
||||
+ [ AC_MSG_ERROR([Cannot find development headers for mmal...]) ],
|
||||
+ [ AC_MSG_WARN([Cannot find development headers for mmal...]) ]) ])
|
||||
+ ],:[
|
||||
+ AC_MSG_WARN([${BCMHOST_PKG_ERRORS}: userland graphics not available.])
|
||||
+ HAVE_MMAL=no
|
||||
+ ])
|
||||
VLC_RESTORE_FLAGS
|
||||
fi
|
||||
AM_CONDITIONAL([HAVE_MMAL], [test "${have_mmal}" = "yes"])
|
|
@ -0,0 +1,18 @@
|
|||
* tremor provides libvorbisidec, use it instead of libvorbisdec
|
||||
|
||||
Upstream-status: Pending
|
||||
|
||||
Signed-off-by: Tim Orling <TicoTimo@gmail.com>
|
||||
|
||||
Index: vlc-2.2.1/modules/codec/Makefile.am
|
||||
===================================================================
|
||||
--- vlc-2.2.1.orig/modules/codec/Makefile.am
|
||||
+++ vlc-2.2.1/modules/codec/Makefile.am
|
||||
@@ -234,7 +234,7 @@ codec_LTLIBRARIES += $(LTLIBtheora)
|
||||
libtremor_plugin_la_SOURCES = codec/vorbis.c
|
||||
libtremor_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) -DMODULE_NAME_IS_tremor
|
||||
libtremor_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
|
||||
-libtremor_plugin_la_LIBADD = -lvorbisdec -logg
|
||||
+libtremor_plugin_la_LIBADD = -lvorbisidec -logg
|
||||
EXTRA_LTLIBRARIES += libtremor_plugin.la
|
||||
codec_LTLIBRARIES += $(LTLIBtremor)
|
|
@ -0,0 +1,233 @@
|
|||
* luaL_checkint and luaL_optint were deprecated in lua 5.3
|
||||
* replacement functions are luaL_checkinteger and luaL_optinteger
|
||||
|
||||
Upstream-status: Pending
|
||||
|
||||
Signed-off-by: Tim Orling <TicoTimo@gmail.com>
|
||||
|
||||
--- a/modules/lua/demux.c
|
||||
+++ b/modules/lua/demux.c
|
||||
@@ -52,7 +52,7 @@ struct vlclua_playlist
|
||||
static int vlclua_demux_peek( lua_State *L )
|
||||
{
|
||||
stream_t *s = (stream_t *)vlclua_get_this(L);
|
||||
- int n = luaL_checkint( L, 1 );
|
||||
+ int n = luaL_checkinteger( L, 1 );
|
||||
const uint8_t *p_peek;
|
||||
|
||||
ssize_t val = vlc_stream_Peek(s->p_source, &p_peek, n);
|
||||
@@ -66,7 +66,7 @@ static int vlclua_demux_peek( lua_State
|
||||
static int vlclua_demux_read( lua_State *L )
|
||||
{
|
||||
stream_t *s = (stream_t *)vlclua_get_this(L);
|
||||
- int n = luaL_checkint( L, 1 );
|
||||
+ int n = luaL_checkinteger( L, 1 );
|
||||
char *buf = malloc(n);
|
||||
|
||||
if (buf != NULL)
|
||||
--- a/modules/lua/libs/net.c
|
||||
+++ b/modules/lua/libs/net.c
|
||||
@@ -179,7 +179,7 @@ static int vlclua_net_listen_tcp( lua_St
|
||||
{
|
||||
vlc_object_t *p_this = vlclua_get_this( L );
|
||||
const char *psz_host = luaL_checkstring( L, 1 );
|
||||
- int i_port = luaL_checkint( L, 2 );
|
||||
+ int i_port = luaL_checkinteger( L, 2 );
|
||||
int *pi_fd = net_ListenTCP( p_this, psz_host, i_port );
|
||||
if( pi_fd == NULL )
|
||||
return luaL_error( L, "Cannot listen on %s:%d", psz_host, i_port );
|
||||
@@ -251,7 +251,7 @@ static int vlclua_net_connect_tcp( lua_S
|
||||
{
|
||||
vlc_object_t *p_this = vlclua_get_this( L );
|
||||
const char *psz_host = luaL_checkstring( L, 1 );
|
||||
- int i_port = luaL_checkint( L, 2 );
|
||||
+ int i_port = luaL_checkinteger( L, 2 );
|
||||
int i_fd = net_ConnectTCP( p_this, psz_host, i_port );
|
||||
lua_pushinteger( L, vlclua_fd_map_safe( L, i_fd ) );
|
||||
return 1;
|
||||
@@ -259,14 +259,14 @@ static int vlclua_net_connect_tcp( lua_S
|
||||
|
||||
static int vlclua_net_close( lua_State *L )
|
||||
{
|
||||
- int i_fd = luaL_checkint( L, 1 );
|
||||
+ int i_fd = luaL_checkinteger( L, 1 );
|
||||
vlclua_fd_unmap_safe( L, i_fd );
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int vlclua_net_send( lua_State *L )
|
||||
{
|
||||
- int fd = vlclua_fd_get( L, luaL_checkint( L, 1 ) );
|
||||
+ int fd = vlclua_fd_get( L, luaL_checkinteger( L, 1 ) );
|
||||
size_t i_len;
|
||||
const char *psz_buffer = luaL_checklstring( L, 2, &i_len );
|
||||
|
||||
@@ -278,7 +278,7 @@ static int vlclua_net_send( lua_State *L
|
||||
|
||||
static int vlclua_net_recv( lua_State *L )
|
||||
{
|
||||
- int fd = vlclua_fd_get( L, luaL_checkint( L, 1 ) );
|
||||
+ int fd = vlclua_fd_get( L, luaL_checkinteger( L, 1 ) );
|
||||
size_t i_len = (size_t)luaL_optinteger( L, 2, 1 );
|
||||
char psz_buffer[i_len];
|
||||
|
||||
@@ -312,7 +312,7 @@ static int vlclua_net_poll( lua_State *L
|
||||
lua_pushnil( L );
|
||||
for( int i = 0; lua_next( L, 1 ); i++ )
|
||||
{
|
||||
- luafds[i] = luaL_checkint( L, -2 );
|
||||
+ luafds[i] = luaL_checkinteger( L, -2 );
|
||||
p_fds[i].fd = vlclua_fd_get( L, luafds[i] );
|
||||
p_fds[i].events = luaL_checkinteger( L, -1 );
|
||||
p_fds[i].events &= POLLIN | POLLOUT | POLLPRI;
|
||||
@@ -360,7 +360,7 @@ static int vlclua_fd_open( lua_State *L
|
||||
#ifndef _WIN32
|
||||
static int vlclua_fd_write( lua_State *L )
|
||||
{
|
||||
- int fd = vlclua_fd_get( L, luaL_checkint( L, 1 ) );
|
||||
+ int fd = vlclua_fd_get( L, luaL_checkinteger( L, 1 ) );
|
||||
size_t i_len;
|
||||
const char *psz_buffer = luaL_checklstring( L, 2, &i_len );
|
||||
|
||||
@@ -371,7 +371,7 @@ static int vlclua_fd_write( lua_State *L
|
||||
|
||||
static int vlclua_fd_read( lua_State *L )
|
||||
{
|
||||
- int fd = vlclua_fd_get( L, luaL_checkint( L, 1 ) );
|
||||
+ int fd = vlclua_fd_get( L, luaL_checkinteger( L, 1 ) );
|
||||
size_t i_len = (size_t)luaL_optinteger( L, 2, 1 );
|
||||
char psz_buffer[i_len];
|
||||
|
||||
--- a/modules/lua/libs/osd.c
|
||||
+++ b/modules/lua/libs/osd.c
|
||||
@@ -154,7 +154,7 @@ static int vlc_osd_slider_type_from_stri
|
||||
|
||||
static int vlclua_osd_slider( lua_State *L )
|
||||
{
|
||||
- int i_position = luaL_checkint( L, 1 );
|
||||
+ int i_position = luaL_checkinteger( L, 1 );
|
||||
const char *psz_type = luaL_checkstring( L, 2 );
|
||||
int i_type = vlc_osd_slider_type_from_string( psz_type );
|
||||
int i_chan = (int)luaL_optinteger( L, 3, VOUT_SPU_CHANNEL_OSD );
|
||||
@@ -198,7 +198,7 @@ static int vlclua_spu_channel_register(
|
||||
|
||||
static int vlclua_spu_channel_clear( lua_State *L )
|
||||
{
|
||||
- int i_chan = luaL_checkint( L, 1 );
|
||||
+ int i_chan = luaL_checkinteger( L, 1 );
|
||||
input_thread_t *p_input = vlclua_get_input_internal( L );
|
||||
if( !p_input )
|
||||
return luaL_error( L, "Unable to find input." );
|
||||
--- a/modules/lua/libs/playlist.c
|
||||
+++ b/modules/lua/libs/playlist.c
|
||||
@@ -69,7 +69,7 @@ static int vlclua_playlist_next( lua_Sta
|
||||
|
||||
static int vlclua_playlist_skip( lua_State * L )
|
||||
{
|
||||
- int i_skip = luaL_checkint( L, 1 );
|
||||
+ int i_skip = luaL_checkinteger( L, 1 );
|
||||
playlist_t *p_playlist = vlclua_get_playlist_internal( L );
|
||||
playlist_Skip( p_playlist, i_skip );
|
||||
return 0;
|
||||
@@ -127,7 +127,7 @@ static int vlclua_playlist_random( lua_S
|
||||
|
||||
static int vlclua_playlist_gotoitem( lua_State * L )
|
||||
{
|
||||
- int i_id = luaL_checkint( L, 1 );
|
||||
+ int i_id = luaL_checkinteger( L, 1 );
|
||||
playlist_t *p_playlist = vlclua_get_playlist_internal( L );
|
||||
PL_LOCK;
|
||||
playlist_ViewPlay( p_playlist, NULL,
|
||||
@@ -138,7 +138,7 @@ static int vlclua_playlist_gotoitem( lua
|
||||
|
||||
static int vlclua_playlist_delete( lua_State * L )
|
||||
{
|
||||
- int i_id = luaL_checkint( L, 1 );
|
||||
+ int i_id = luaL_checkinteger( L, 1 );
|
||||
playlist_t *p_playlist = vlclua_get_playlist_internal( L );
|
||||
|
||||
PL_LOCK;
|
||||
@@ -152,8 +152,8 @@ static int vlclua_playlist_delete( lua_S
|
||||
|
||||
static int vlclua_playlist_move( lua_State * L )
|
||||
{
|
||||
- int i_item = luaL_checkint( L, 1 );
|
||||
- int i_target = luaL_checkint( L, 2 );
|
||||
+ int i_item = luaL_checkinteger( L, 1 );
|
||||
+ int i_target = luaL_checkinteger( L, 2 );
|
||||
playlist_t *p_playlist = vlclua_get_playlist_internal( L );
|
||||
PL_LOCK;
|
||||
playlist_item_t *p_item = playlist_ItemGetById( p_playlist, i_item );
|
||||
--- a/modules/lua/libs/stream.c
|
||||
+++ b/modules/lua/libs/stream.c
|
||||
@@ -123,7 +123,7 @@ static int vlclua_stream_read( lua_State
|
||||
{
|
||||
int i_read;
|
||||
stream_t **pp_stream = (stream_t **)luaL_checkudata( L, 1, "stream" );
|
||||
- int n = luaL_checkint( L, 2 );
|
||||
+ int n = luaL_checkinteger( L, 2 );
|
||||
uint8_t *p_read = malloc( n );
|
||||
if( !p_read ) return vlclua_error( L );
|
||||
|
||||
--- a/modules/lua/libs/volume.c
|
||||
+++ b/modules/lua/libs/volume.c
|
||||
@@ -48,7 +48,7 @@
|
||||
static int vlclua_volume_set( lua_State *L )
|
||||
{
|
||||
playlist_t *p_this = vlclua_get_playlist_internal( L );
|
||||
- int i_volume = luaL_checkint( L, 1 );
|
||||
+ int i_volume = luaL_checkinteger( L, 1 );
|
||||
if( i_volume < 0 )
|
||||
i_volume = 0;
|
||||
int i_ret = playlist_VolumeSet( p_this, i_volume/(float)AOUT_VOLUME_DEFAULT );
|
||||
--- a/modules/lua/libs/dialog.c
|
||||
+++ b/modules/lua/libs/dialog.c
|
||||
@@ -382,7 +382,7 @@ static int lua_GetDialogUpdate( lua_Stat
|
||||
/* Read entry in the Lua registry */
|
||||
lua_pushlightuserdata( L, (void*) &key_update );
|
||||
lua_gettable( L, LUA_REGISTRYINDEX );
|
||||
- return luaL_checkint( L, -1 );
|
||||
+ return luaL_checkinteger( L, -1 );
|
||||
}
|
||||
|
||||
/** Manually update a dialog
|
||||
@@ -573,22 +573,22 @@ static int vlclua_create_widget_inner( l
|
||||
|
||||
/* Set common arguments: col, row, hspan, vspan, width, height */
|
||||
if( lua_isnumber( L, arg ) )
|
||||
- p_widget->i_column = luaL_checkint( L, arg );
|
||||
+ p_widget->i_column = luaL_checkinteger( L, arg );
|
||||
else goto end_of_args;
|
||||
if( lua_isnumber( L, ++arg ) )
|
||||
- p_widget->i_row = luaL_checkint( L, arg );
|
||||
+ p_widget->i_row = luaL_checkinteger( L, arg );
|
||||
else goto end_of_args;
|
||||
if( lua_isnumber( L, ++arg ) )
|
||||
- p_widget->i_horiz_span = luaL_checkint( L, arg );
|
||||
+ p_widget->i_horiz_span = luaL_checkinteger( L, arg );
|
||||
else goto end_of_args;
|
||||
if( lua_isnumber( L, ++arg ) )
|
||||
- p_widget->i_vert_span = luaL_checkint( L, arg );
|
||||
+ p_widget->i_vert_span = luaL_checkinteger( L, arg );
|
||||
else goto end_of_args;
|
||||
if( lua_isnumber( L, ++arg ) )
|
||||
- p_widget->i_width = luaL_checkint( L, arg );
|
||||
+ p_widget->i_width = luaL_checkinteger( L, arg );
|
||||
else goto end_of_args;
|
||||
if( lua_isnumber( L, ++arg ) )
|
||||
- p_widget->i_height = luaL_checkint( L, arg );
|
||||
+ p_widget->i_height = luaL_checkinteger( L, arg );
|
||||
else goto end_of_args;
|
||||
|
||||
end_of_args:
|
||||
--- a/modules/lua/libs/io.c
|
||||
+++ b/modules/lua/libs/io.c
|
||||
@@ -139,7 +139,7 @@ static int vlclua_io_file_seek( lua_Stat
|
||||
const char* psz_mode = luaL_optstring( L, 2, NULL );
|
||||
if ( psz_mode != NULL )
|
||||
{
|
||||
- long i_offset = luaL_optlong( L, 3, 0 );
|
||||
+ long i_offset = (long)luaL_optinteger( L, 3, 0 );
|
||||
int i_mode;
|
||||
if ( !strcmp( psz_mode, "set" ) )
|
||||
i_mode = SEEK_SET;
|
|
@ -0,0 +1,58 @@
|
|||
From: Vincent Davis Jr <vince@underview.tech>
|
||||
Date: Fri, 07 Jan 2022 07:01:47 PM CST
|
||||
Subject: [PATCH] Fix EGL macro undeclared and EGLImageKHR
|
||||
|
||||
* Fixes compiler issues related to EGL macro constant/enum value type not being defined
|
||||
* Updates EGLImage to EGLImageKHR
|
||||
|
||||
Upstream-status: Pending
|
||||
|
||||
Signed-off-by: Vincent Davis Jr <vince@underview.tech>
|
||||
diff --git a/modules/hw/mmal/converter_mmal.c b/modules/hw/mmal/converter_mmal.c
|
||||
index f31cb81d8..426af668b 100644
|
||||
--- a/modules/hw/mmal/converter_mmal.c
|
||||
+++ b/modules/hw/mmal/converter_mmal.c
|
||||
@@ -28,6 +28,34 @@
|
||||
|
||||
#define TRACE_ALL 0
|
||||
|
||||
+// Pass Yocto related build errors
|
||||
+#define EGL_LINUX_DMA_BUF_EXT 0x3270
|
||||
+#define EGL_LINUX_DRM_FOURCC_EXT 0x3271
|
||||
+#define EGL_DMA_BUF_PLANE0_FD_EXT 0x3272
|
||||
+#define EGL_DMA_BUF_PLANE0_OFFSET_EXT 0x3273
|
||||
+#define EGL_DMA_BUF_PLANE0_PITCH_EXT 0x3274
|
||||
+#define EGL_DMA_BUF_PLANE1_FD_EXT 0x3275
|
||||
+#define EGL_DMA_BUF_PLANE1_OFFSET_EXT 0x3276
|
||||
+#define EGL_DMA_BUF_PLANE1_PITCH_EXT 0x3277
|
||||
+#define EGL_DMA_BUF_PLANE2_FD_EXT 0x3278
|
||||
+#define EGL_DMA_BUF_PLANE2_OFFSET_EXT 0x3279
|
||||
+#define EGL_DMA_BUF_PLANE2_PITCH_EXT 0x327A
|
||||
+#define EGL_YUV_COLOR_SPACE_HINT_EXT 0x327B
|
||||
+#define EGL_SAMPLE_RANGE_HINT_EXT 0x327C
|
||||
+#define EGL_YUV_CHROMA_HORIZONTAL_SITING_HINT_EXT 0x327D
|
||||
+#define EGL_YUV_CHROMA_VERTICAL_SITING_HINT_EXT 0x327E
|
||||
+#define EGL_DMA_BUF_PLANE0_MODIFIER_LO_EXT 0x3443
|
||||
+#define EGL_DMA_BUF_PLANE0_MODIFIER_HI_EXT 0x3444
|
||||
+#define EGL_DMA_BUF_PLANE1_MODIFIER_LO_EXT 0x3445
|
||||
+#define EGL_DMA_BUF_PLANE1_MODIFIER_HI_EXT 0x3446
|
||||
+#define EGL_DMA_BUF_PLANE2_MODIFIER_LO_EXT 0x3447
|
||||
+#define EGL_DMA_BUF_PLANE2_MODIFIER_HI_EXT 0x3448
|
||||
+#define EGL_DMA_BUF_PLANE3_FD_EXT 0x3440
|
||||
+#define EGL_DMA_BUF_PLANE3_OFFSET_EXT 0x3441
|
||||
+#define EGL_DMA_BUF_PLANE3_PITCH_EXT 0x3442
|
||||
+#define EGL_DMA_BUF_PLANE3_MODIFIER_LO_EXT 0x3449
|
||||
+#define EGL_DMA_BUF_PLANE3_MODIFIER_HI_EXT 0x344A
|
||||
+
|
||||
typedef struct mmal_gl_converter_s
|
||||
{
|
||||
EGLint drm_fourcc;
|
||||
@@ -199,7 +227,7 @@ static tex_context_t * get_tex_context(const opengl_tex_converter_t * const tc,
|
||||
|
||||
*a = EGL_NONE;
|
||||
|
||||
- const EGLImage image = tc->gl->egl.createImageKHR(tc->gl, EGL_LINUX_DMA_BUF_EXT, NULL, attribs);
|
||||
+ const EGLImageKHR image = tc->gl->egl.createImageKHR(tc->gl, EGL_LINUX_DMA_BUF_EXT, NULL, attribs);
|
||||
if (!image) {
|
||||
msg_Err(tc, "Failed to import fd %d: Err=%#x", fd, tc->vt->GetError());
|
||||
goto fail;
|
|
@ -0,0 +1,35 @@
|
|||
From: Vincent Davis Jr <vince@underview.tech>
|
||||
Date: Fri, 07 Jan 2022 07:10:47 PM CST
|
||||
Subject: [PATCH] Fix numeric limits not a member
|
||||
|
||||
* Fixes bellow compiler issue:
|
||||
../../git/modules/demux/adaptive/playlist/SegmentInformation.cpp:397:23: error: 'numeric_limits' is not a member of 'std'
|
||||
397 | if(number == std::numeric_limits<uint64_t>::max())
|
||||
|
||||
Upstream-status: Pending
|
||||
|
||||
Signed-off-by: Vincent Davis Jr <vince@underview.tech>
|
||||
diff --git a/modules/demux/adaptive/playlist/SegmentInformation.cpp b/modules/demux/adaptive/playlist/SegmentInformation.cpp
|
||||
index 344e155c7..8eeb05439 100644
|
||||
--- a/modules/demux/adaptive/playlist/SegmentInformation.cpp
|
||||
+++ b/modules/demux/adaptive/playlist/SegmentInformation.cpp
|
||||
@@ -34,6 +34,7 @@
|
||||
|
||||
#include <algorithm>
|
||||
#include <cassert>
|
||||
+#include <limits>
|
||||
|
||||
using namespace adaptive::playlist;
|
||||
|
||||
diff --git a/modules/demux/hls/playlist/Parser.cpp b/modules/demux/hls/playlist/Parser.cpp
|
||||
index 67110e4cd..743969922 100644
|
||||
--- a/modules/demux/hls/playlist/Parser.cpp
|
||||
+++ b/modules/demux/hls/playlist/Parser.cpp
|
||||
@@ -42,6 +42,7 @@
|
||||
#include <map>
|
||||
#include <cctype>
|
||||
#include <algorithm>
|
||||
+#include <limits>
|
||||
|
||||
using namespace adaptive;
|
||||
using namespace adaptive::playlist;
|
|
@ -0,0 +1,154 @@
|
|||
DESCRIPTION = "Video player and streamer - davinci edition"
|
||||
HOMEPAGE = "http://www.videolan.org"
|
||||
SECTION = "multimedia"
|
||||
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
|
||||
|
||||
SRC_URI = "\
|
||||
git://git@github.com/RPi-Distro/vlc;protocol=https;branch=buster-rpt \
|
||||
file://0001-configure-fix-linking-on-RISC-V-ISA.patch \
|
||||
file://0002-Revert-configure-Require-libmodplug-0.8.9.patch \
|
||||
file://0003-mmal_20.patch \
|
||||
file://0004-mmal_exit_fix.patch \
|
||||
file://0005-mmal_chain.patch \
|
||||
file://0006-Use-packageconfig-to-detect-mmal-support.patch \
|
||||
file://0007-use-vorbisidec.patch \
|
||||
file://0008-fix-luaL-checkint.patch \
|
||||
file://0009-fix-EGL-macro-undeclared-and-EGLImageKHR.patch \
|
||||
file://0010-fix-numeric_limits-is-not-a-member-of-std.patch \
|
||||
"
|
||||
|
||||
SRCREV = "f7fd69f12a3b89d03768fa3bd468e8f33cd1dc7c"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
PROVIDES = "vlc"
|
||||
RPROVIDES:${PN} = "${PROVIDES}"
|
||||
DEPENDS = "coreutils-native fribidi libtool libgcrypt libgcrypt-native \
|
||||
dbus libxml2 gnutls tremor faad2 ffmpeg flac alsa-lib libidn \
|
||||
jpeg xz libmodplug mpeg2dec libmtp libopus orc libsamplerate0 \
|
||||
avahi libusb1 schroedinger taglib tiff"
|
||||
|
||||
inherit autotools gettext pkgconfig mime-xdg
|
||||
|
||||
export BUILDCC = "${BUILD_CC} -std=c11"
|
||||
EXTRA_OECONF = "\
|
||||
--enable-run-as-root \
|
||||
--enable-xvideo \
|
||||
--disable-lua \
|
||||
--disable-screen --disable-caca \
|
||||
--enable-vlm \
|
||||
--enable-tremor \
|
||||
--disable-aa --disable-faad \
|
||||
--enable-dbus \
|
||||
--without-contrib \
|
||||
--without-kde-solid \
|
||||
--enable-realrtsp \
|
||||
--disable-libtar \
|
||||
--enable-avcodec \
|
||||
"
|
||||
|
||||
PACKAGECONFIG ?= "\
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} \
|
||||
live555 dv1394 notify fontconfig fluidsynth freetype dvdread png udev \
|
||||
x264 alsa mmal harfbuzz jack neon fribidi dvbpsi a52 v4l2 gles2 \
|
||||
"
|
||||
|
||||
PACKAGECONFIG[mmal] = "--enable-omxil --enable-omxil-vout --enable-rpi-omxil --enable-mmal --enable-mmal-avcodec,,userland"
|
||||
PACKAGECONFIG[x264] = "--enable-x264,--disable-x264,x264"
|
||||
PACKAGECONFIG[mad] = "--enable-mad,--disable-mad,libmad"
|
||||
PACKAGECONFIG[a52] = "--enable-a52,--disable-a52,liba52"
|
||||
PACKAGECONFIG[jack] = "--enable-jack,--disable-jack,jack"
|
||||
PACKAGECONFIG[live555] = "--enable-live555 LIVE555_PREFIX=${STAGING_DIR_HOST}${prefix},--disable-live555,live555"
|
||||
PACKAGECONFIG[libass] = "--enable-libass,--disable-libass,libass"
|
||||
PACKAGECONFIG[postproc] = "--enable-postproc,--disable-postproc,libpostproc"
|
||||
PACKAGECONFIG[libva] = "--enable-libva,--disable-libva,libva"
|
||||
PACKAGECONFIG[opencv] = "--enable-opencv,--disable-opencv,opencv"
|
||||
PACKAGECONFIG[speex] = "--enable-speex,--disable-speex,speex"
|
||||
PACKAGECONFIG[gstreamer] = "--enable-gst-decode,--disable-gst-decode,gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad"
|
||||
PACKAGECONFIG[vpx] = "--enable-vpx,--disable-vpx, libvpx"
|
||||
PACKAGECONFIG[freerdp] = "--enable-freerdp,--disable-freerdp, freerdp"
|
||||
PACKAGECONFIG[dvbpsi] = "--enable-dvbpsi,--disable-dvbpsi, libdvbpsi"
|
||||
PACKAGECONFIG[samba] = "--enable-smbclient,--disable-smbclient, samba"
|
||||
PACKAGECONFIG[upnp] = "--enable-upnp,--disable-upnp,libupnp"
|
||||
PACKAGECONFIG[dvdnav] = "--enable-dvdnav,--disable-dvdnav,libdvdnav libdvdcss"
|
||||
PACKAGECONFIG[sftp] = "--enable-sftp,--disable-sftp,libssh2"
|
||||
PACKAGECONFIG[vorbis] = "--enable-vorbis,--disable-vorbis,libvorbis libogg"
|
||||
PACKAGECONFIG[ogg] = "--enable-ogg,--disable-ogg,libvorbis libogg"
|
||||
PACKAGECONFIG[dc1394] = "--enable-dc1394,--disable-dc1394,libdc1394"
|
||||
PACKAGECONFIG[dv1394] = "--enable-dv1394,--disable-dv1394,libraw1394 libavc1394"
|
||||
PACKAGECONFIG[svg] = "--enable-svg,--disable-svg,librsvg"
|
||||
PACKAGECONFIG[svgdec] = "--enable-svgdec,--disable-svgdec,librsvg cairo"
|
||||
PACKAGECONFIG[notify] = "--enable-notify,--disable-notify, libnotify gtk+3"
|
||||
PACKAGECONFIG[fontconfig] = "--enable-fontconfig,--disable-fontconfig, fontconfig"
|
||||
PACKAGECONFIG[freetype] = "--enable-freetype,--disable-freetype, freetype"
|
||||
PACKAGECONFIG[dvdread] = "--enable-dvdread,--disable-dvdread, libdvdread libdvdcss"
|
||||
PACKAGECONFIG[vnc] = "--enable-vnc,--disable-vnc, libvncserver"
|
||||
PACKAGECONFIG[x11] = "--with-x --enable-xcb,--without-x --disable-xcb, xcb-util-keysyms libxpm libxinerama"
|
||||
PACKAGECONFIG[png] = "--enable-png,--disable-png,libpng"
|
||||
PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau"
|
||||
PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,wayland wayland-native"
|
||||
PACKAGECONFIG[gles2] = "--enable-gles2,--disable-gles2,virtual/libgles2"
|
||||
PACKAGECONFIG[dca] = "--enable-dca,,"
|
||||
PACKAGECONFIG[fribidi] = "--enable-fribidi,,fribidi"
|
||||
PACKAGECONFIG[gnutls] = "--enable-gnutls,,gnutls"
|
||||
PACKAGECONFIG[fluidsynth] = "--enable-fluidsynth,,fluidsynth"
|
||||
PACKAGECONFIG[harfbuzz] = "--enable-harfbuzz,--disable-harfbuzz,harfbuzz"
|
||||
PACKAGECONFIG[udev] = "--enable-udev,--disable-udev,udev"
|
||||
PACKAGECONFIG[neon] = "--enable-neon,--disable-neon,"
|
||||
PACKAGECONFIG[opus] = "--enable-opus,--disable-opus,libopus libogg"
|
||||
PACKAGECONFIG[ncurses] = "--enable-ncurses,--disable-ncurses,ncurses"
|
||||
PACKAGECONFIG[alsa] = "--enable-alsa,--disable-alsa,alsa-lib"
|
||||
PACKAGECONFIG[pulseaudio] = "--enable-pulse,--disable-pulse,pulseaudio"
|
||||
PACKAGECONFIG[sdl-image] = "--enable-sdl-image,,libsdl-image"
|
||||
PACKAGECONFIG[v4l2] = "--enable-v4l2,,v4l-utils"
|
||||
|
||||
# Workaround for modules/codec/omxil/omxil_core.h
|
||||
# multiple definition of `pf_enable_graphic_buffers'
|
||||
# multiple definition of `pf_get_graphic_buffer_usage'
|
||||
# multiple definition of `pf_get_hal_format'
|
||||
TARGET_CFLAGS:append = " -fcommon"
|
||||
TARGET_CXXFLAGS:append = " -fcommon"
|
||||
|
||||
# Ensures the --enable-mmal-avcodec flag is available for usage
|
||||
do_configure:prepend() {
|
||||
olddir=`pwd`
|
||||
cd ${S}
|
||||
./bootstrap
|
||||
cd $olddir
|
||||
}
|
||||
|
||||
do_configure:append() {
|
||||
# https://forums.raspberrypi.com/viewtopic.php?p=1601535
|
||||
sed -i "/GLAPI void APIENTRY glShaderSource (/d" ${STAGING_INCDIR}/GL/glext.h
|
||||
#sed -i -e s:'${top_builddir_slash}libtool':'${top_builddir_slash}'${TARGET_SYS}-libtool:g ${B}/doltlibtool
|
||||
}
|
||||
|
||||
# This recipe packages vlc as a library as well, so qt4 dependencies
|
||||
# can be avoided when only the library is installed.
|
||||
PACKAGES =+ "libvlc"
|
||||
|
||||
LEAD_SONAME_libvlc = "libvlc.so.5"
|
||||
FILES:libvlc = "${libdir}/lib*.so.*"
|
||||
|
||||
FILES:${PN} += "\
|
||||
${bindir}/vlc \
|
||||
${libdir}/vlc \
|
||||
${datadir}/applications \
|
||||
${datadir}/vlc \
|
||||
${datadir}/icons \
|
||||
${datadir}/metainfo/vlc.appdata.xml \
|
||||
"
|
||||
|
||||
FILES:${PN}-dbg += "\
|
||||
${libdir}/vlc/*/.debug \
|
||||
${libdir}/vlc/plugins/*/.debug \
|
||||
"
|
||||
|
||||
FILES:${PN}-staticdev += "\
|
||||
${libdir}/vlc/plugins/*/*.a \
|
||||
${libdir}/vlc/libcompat.a \
|
||||
"
|
||||
|
||||
INSANE_SKIP:${PN} = "dev-so"
|
Loading…
Reference in New Issue
Block a user