mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-24 11:16:51 +00:00
kodi: update to 17.0-alpha1-8191052
This commit is contained in:
parent
2823d1958c
commit
27e79cd60b
@ -17,13 +17,13 @@
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="kodi"
|
||||
PKG_VERSION="16.1-rc2-a7caa16"
|
||||
PKG_VERSION="17.0-alpha1-2c72ac9"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.kodi.tv"
|
||||
PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||
PKG_DEPENDS_TARGET="toolchain kodi:host xmlstarlet:host libsquish boost Python zlib bzip2 systemd pciutils lzo pcre swig:host libass curl rtmpdump fontconfig fribidi tinyxml libjpeg-turbo libpng tiff freetype jasper libogg libcdio libmpeg2 taglib libxml2 libxslt yajl sqlite libvorbis ffmpeg crossguid giflib"
|
||||
PKG_DEPENDS_TARGET="toolchain kodi:host xmlstarlet:host libsquish Python zlib bzip2 systemd pciutils lzo pcre swig:host libass curl rtmpdump fontconfig fribidi tinyxml libjpeg-turbo libpng freetype libogg libcdio taglib libxml2 libxslt yajl sqlite libvorbis ffmpeg crossguid giflib"
|
||||
PKG_DEPENDS_HOST="lzo:host libpng:host libjpeg-turbo:host giflib:host"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="mediacenter"
|
||||
@ -49,7 +49,7 @@ fi
|
||||
|
||||
if [ ! "$OPENGL" = "no" ]; then
|
||||
# for OpenGL (GLX) support
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET $OPENGL glu glew"
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET $OPENGL glu"
|
||||
KODI_OPENGL="--enable-gl"
|
||||
else
|
||||
KODI_OPENGL="--disable-gl"
|
||||
@ -228,14 +228,14 @@ export CXXFLAGS_FOR_BUILD="$HOST_CXXFLAGS"
|
||||
export CFLAGS_FOR_BUILD="$HOST_CFLAGS"
|
||||
export LDFLAGS_FOR_BUILD="$HOST_LDFLAGS"
|
||||
|
||||
export PYTHON_VERSION="2.7"
|
||||
export PYTHON_VERSION=2.7
|
||||
export PYTHON_CPPFLAGS="-I$SYSROOT_PREFIX/usr/include/python$PYTHON_VERSION"
|
||||
export PYTHON_LDFLAGS="-L$SYSROOT_PREFIX/usr/lib/python$PYTHON_VERSION -lpython$PYTHON_VERSION"
|
||||
export PYTHON_SITE_PKG="$SYSROOT_PREFIX/usr/lib/python$PYTHON_VERSION/site-packages"
|
||||
export ac_python_version="$PYTHON_VERSION"
|
||||
|
||||
PKG_CONFIGURE_OPTS_TARGET="gl_cv_func_gettimeofday_clobber=no \
|
||||
ac_cv_lib_bluetooth_hci_devid=no \
|
||||
ac_python_version=$PYTHON_VERSION \
|
||||
--disable-libbluetooth \
|
||||
--disable-debug \
|
||||
--disable-optimizations \
|
||||
$KODI_OPENGL \
|
||||
@ -279,31 +279,41 @@ PKG_CONFIGURE_OPTS_TARGET="gl_cv_func_gettimeofday_clobber=no \
|
||||
|
||||
pre_configure_host() {
|
||||
# kodi fails to build in subdirs
|
||||
cd $ROOT/$PKG_BUILD
|
||||
rm -rf .$HOST_NAME
|
||||
rm -rf $ROOT/$PKG_BUILD/.$HOST_NAME
|
||||
}
|
||||
|
||||
configure_host() {
|
||||
: # not needed
|
||||
}
|
||||
|
||||
make_host() {
|
||||
make -C tools/depends/native/JsonSchemaBuilder
|
||||
make -C tools/depends/native/TexturePacker
|
||||
mkdir -p $ROOT/$PKG_BUILD/tools/depends/native/JsonSchemaBuilder/bin && cd $_
|
||||
cmake -DCMAKE_TOOLCHAIN_FILE=$CMAKE_CONF \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
..
|
||||
make
|
||||
mkdir -p $ROOT/$PKG_BUILD/tools/depends/native/TexturePacker/bin && cd $_
|
||||
cmake -DCMAKE_TOOLCHAIN_FILE=$CMAKE_CONF \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DCORE_SOURCE_DIR=$ROOT/$PKG_BUILD \
|
||||
-DCMAKE_CXX_FLAGS="-std=c++11 -DTARGET_POSIX -DTARGET_LINUX -D_LINUX -I$ROOT/$PKG_BUILD/xbmc/linux" \
|
||||
..
|
||||
make
|
||||
}
|
||||
|
||||
makeinstall_host() {
|
||||
cp -PR tools/depends/native/JsonSchemaBuilder/native/JsonSchemaBuilder $ROOT/$TOOLCHAIN/bin
|
||||
rm -f $ROOT/$TOOLCHAIN/bin/TexturePacker
|
||||
cp -PR tools/depends/native/TexturePacker/native/TexturePacker $ROOT/$TOOLCHAIN/bin
|
||||
cp -P $ROOT/$PKG_BUILD/tools/depends/native/TexturePacker/bin/TexturePacker $ROOT/$TOOLCHAIN/bin
|
||||
}
|
||||
|
||||
pre_build_target() {
|
||||
# adding fake Makefile for stripped skin
|
||||
mkdir -p $PKG_BUILD/addons/skin.estuary/media
|
||||
touch $PKG_BUILD/addons/skin.estuary/media/Makefile.in
|
||||
mkdir -p $ROOT/$PKG_BUILD/addons/skin.estuary/media
|
||||
touch $ROOT/$PKG_BUILD/addons/skin.estuary/media/Makefile.in
|
||||
}
|
||||
|
||||
pre_configure_target() {
|
||||
# kodi fails to build in subdirs
|
||||
cd $ROOT/$PKG_BUILD
|
||||
rm -rf .$TARGET_NAME
|
||||
rm -rf $ROOT/$PKG_BUILD/.$TARGET_NAME
|
||||
|
||||
# kodi should never be built with lto
|
||||
strip_lto
|
||||
@ -313,6 +323,9 @@ pre_configure_target() {
|
||||
export LIBS="$LIBS -lz"
|
||||
|
||||
export JSON_BUILDER=$ROOT/$TOOLCHAIN/bin/JsonSchemaBuilder
|
||||
|
||||
# autoreconf
|
||||
BOOTSTRAP_STANDALONE=1 make -f $ROOT/$PKG_BUILD/bootstrap.mk
|
||||
}
|
||||
|
||||
make_target() {
|
||||
@ -337,9 +350,12 @@ post_makeinstall_target() {
|
||||
rm -rf $INSTALL/usr/bin/xbmc
|
||||
rm -rf $INSTALL/usr/bin/xbmc-standalone
|
||||
rm -rf $INSTALL/usr/lib/kodi/*.cmake
|
||||
|
||||
# more binaddons cross compile badness meh
|
||||
sed -i -e "s:INCLUDE_DIR /usr/include/kodi:INCLUDE_DIR $SYSROOT_PREFIX/usr/include/kodi:g" $SYSROOT_PREFIX/usr/lib/kodi/kodi-config.cmake
|
||||
rm -rf $INSTALL/usr/share/applications
|
||||
rm -rf $INSTALL/usr/share/icons
|
||||
rm -rf $INSTALL/usr/share/kodi/addons/skin.estouchy
|
||||
rm -rf $INSTALL/usr/share/kodi/addons/service.xbmc.versioncheck
|
||||
rm -rf $INSTALL/usr/share/kodi/addons/visualization.vortex
|
||||
rm -rf $INSTALL/usr/share/xsessions
|
||||
|
||||
mkdir -p $INSTALL/usr/lib/kodi
|
||||
cp $PKG_DIR/scripts/kodi-config $INSTALL/usr/lib/kodi
|
||||
@ -358,12 +374,6 @@ post_makeinstall_target() {
|
||||
rm -rf $INSTALL/usr/lib/kodi/kodi-xrandr
|
||||
fi
|
||||
|
||||
rm -rf $INSTALL/usr/share/applications
|
||||
rm -rf $INSTALL/usr/share/icons
|
||||
rm -rf $INSTALL/usr/share/kodi/addons/service.xbmc.versioncheck
|
||||
rm -rf $INSTALL/usr/share/kodi/addons/visualization.vortex
|
||||
rm -rf $INSTALL/usr/share/xsessions
|
||||
|
||||
mkdir -p $INSTALL/usr/share/kodi/addons
|
||||
cp -R $PKG_DIR/config/os.openelec.tv $INSTALL/usr/share/kodi/addons
|
||||
$SED "s|@OS_VERSION@|$OS_VERSION|g" -i $INSTALL/usr/share/kodi/addons/os.openelec.tv/addon.xml
|
||||
@ -372,8 +382,8 @@ post_makeinstall_target() {
|
||||
cp -R $PKG_DIR/config/repository.libreelec.tv $INSTALL/usr/share/kodi/addons
|
||||
$SED "s|@ADDON_URL@|$ADDON_URL|g" -i $INSTALL/usr/share/kodi/addons/repository.libreelec.tv/addon.xml
|
||||
|
||||
mkdir -p $INSTALL/usr/lib/python"$PYTHON_VERSION"/site-packages/kodi
|
||||
cp -R tools/EventClients/lib/python/* $INSTALL/usr/lib/python"$PYTHON_VERSION"/site-packages/kodi
|
||||
mkdir -p $INSTALL/usr/lib/python$PYTHON_VERSION/site-packages/kodi
|
||||
cp -R tools/EventClients/lib/python/* $INSTALL/usr/lib/python$PYTHON_VERSION/site-packages/kodi
|
||||
|
||||
mkdir -p $INSTALL/usr/share/kodi/config
|
||||
cp $PKG_DIR/config/guisettings.xml $INSTALL/usr/share/kodi/config
|
||||
@ -402,6 +412,19 @@ post_makeinstall_target() {
|
||||
cp $PKG_DIR/config/appliance.xml $INSTALL/usr/share/kodi/system/settings
|
||||
fi
|
||||
|
||||
# update addon manifest
|
||||
ADDON_MANIFEST=$INSTALL/usr/share/kodi/system/addon-manifest.xml
|
||||
xmlstarlet ed -L -d "/addons/addon[text()='service.xbmc.versioncheck']" $ADDON_MANIFEST
|
||||
xmlstarlet ed -L -d "/addons/addon[text()='skin.estouchy']" $ADDON_MANIFEST
|
||||
xmlstarlet ed -L --subnode "/addons" -t elem -n "addon" -v "peripheral.joystick" $ADDON_MANIFEST
|
||||
xmlstarlet ed -L --subnode "/addons" -t elem -n "addon" -v "os.libreelec.tv" $ADDON_MANIFEST
|
||||
xmlstarlet ed -L --subnode "/addons" -t elem -n "addon" -v "repository.libreelec.tv" $ADDON_MANIFEST
|
||||
xmlstarlet ed -L --subnode "/addons" -t elem -n "addon" -v "service.libreelec.settings" $ADDON_MANIFEST
|
||||
|
||||
# more binaddons cross compile badness meh
|
||||
sed -i -e "s:INCLUDE_DIR /usr/include/kodi:INCLUDE_DIR $SYSROOT_PREFIX/usr/include/kodi:g" $SYSROOT_PREFIX/usr/lib/kodi/kodi-config.cmake
|
||||
|
||||
|
||||
if [ "$KODI_EXTRA_FONTS" = yes ]; then
|
||||
mkdir -p $INSTALL/usr/share/kodi/media/Fonts
|
||||
cp $PKG_DIR/fonts/*.ttf $INSTALL/usr/share/kodi/media/Fonts
|
||||
|
@ -121,14 +121,14 @@ index c46cba1..ed3f35f 100644
|
||||
bool m_AppFocused;
|
||||
bool m_renderGUI;
|
||||
|
||||
diff --git a/xbmc/main/main.cpp b/xbmc/main/main.cpp
|
||||
diff --git a/xbmc/platform/posix/main.cpp b/xbmc/platform/posix/main.cpp
|
||||
index 01027f8..4cfb04e 100644
|
||||
--- a/xbmc/main/main.cpp
|
||||
+++ b/xbmc/main/main.cpp
|
||||
--- a/xbmc/platform/posix/main.cpp
|
||||
+++ b/xbmc/platform/posix/main.cpp
|
||||
@@ -41,12 +41,27 @@
|
||||
#include "input/linux/LIRC.h"
|
||||
#endif
|
||||
#include "XbmcContext.h"
|
||||
#include "platform/XbmcContext.h"
|
||||
+#include "Application.h"
|
||||
+
|
||||
+void xbmc_term_handler(int signum)
|
||||
|
@ -12,13 +12,13 @@ index 5ac2482..cb84940 100644
|
||||
--- a/xbmc/windowing/X11/WinSystemX11.h
|
||||
+++ b/xbmc/windowing/X11/WinSystemX11.h
|
||||
@@ -54,6 +54,7 @@ public:
|
||||
virtual bool ResizeWindow(int newWidth, int newHeight, int newLeft, int newTop);
|
||||
virtual bool SetFullScreen(bool fullScreen, RESOLUTION_INFO& res, bool blankOtherDisplays);
|
||||
virtual void UpdateResolutions();
|
||||
+ virtual bool CanDoWindowed() { return false; }
|
||||
virtual int GetNumScreens() { return 1; }
|
||||
virtual int GetCurrentScreen() { return m_nScreen; }
|
||||
virtual void ShowOSMouse(bool show);
|
||||
bool ResizeWindow(int newWidth, int newHeight, int newLeft, int newTop) override;
|
||||
bool SetFullScreen(bool fullScreen, RESOLUTION_INFO& res, bool blankOtherDisplays) override;
|
||||
void UpdateResolutions() override;
|
||||
+ bool CanDoWindowed() override { return false; }
|
||||
int GetNumScreens() override { return 1; }
|
||||
int GetCurrentScreen() override { return m_nScreen; }
|
||||
void ShowOSMouse(bool show) override;
|
||||
--
|
||||
2.5.0
|
||||
|
||||
|
@ -1,17 +1,18 @@
|
||||
From b70f963a0963735e627b12cf361e4e30d6c2a799 Mon Sep 17 00:00:00 2001
|
||||
From: Lukas Rusak <lorusak@gmail.com>
|
||||
Date: Tue, 26 Jan 2016 08:31:52 +0100
|
||||
Subject: [PATCH] change pulseaudio default device name to Bluetooth Audio
|
||||
From cd60daafb0c6b1e1de94dbc944bb247a8f810b50 Mon Sep 17 00:00:00 2001
|
||||
From: fritsch <peter.fruehberger@gmail.com>
|
||||
Date: Fri, 29 Jan 2016 16:32:06 +0100
|
||||
Subject: [PATCH] [PATCH] change pulseaudio default device name to Bluetooth
|
||||
Audio
|
||||
|
||||
---
|
||||
xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp b/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp
|
||||
index 67b7b90..8537163 100644
|
||||
index 7c669b7..043d0d5 100644
|
||||
--- a/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp
|
||||
+++ b/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp
|
||||
@@ -362,12 +362,14 @@ static void SinkInfoRequestCallback(pa_context *c, const pa_sink_info *i, int eo
|
||||
@@ -394,13 +394,15 @@ static void SinkInfoRequestCallback(pa_context *c, const pa_sink_info *i, int eo
|
||||
CAEDeviceInfo defaultDevice;
|
||||
defaultDevice.m_deviceName = std::string("Default");
|
||||
defaultDevice.m_displayName = std::string("Default");
|
||||
@ -21,6 +22,7 @@ index 67b7b90..8537163 100644
|
||||
defaultDevice.m_channels = CAEChannelInfo(AE_CH_LAYOUT_2_0);
|
||||
defaultDevice.m_sampleRates.assign(defaultSampleRates, defaultSampleRates + ARRAY_SIZE(defaultSampleRates));
|
||||
defaultDevice.m_deviceType = AE_DEVTYPE_PCM;
|
||||
defaultDevice.m_wantsIECPassthrough = true;
|
||||
sinkStruct->list->push_back(defaultDevice);
|
||||
+ // OE only wants the default device - so we are done here
|
||||
+ return;
|
||||
@ -28,5 +30,5 @@ index 67b7b90..8537163 100644
|
||||
if (i && i->name)
|
||||
{
|
||||
--
|
||||
1.9.3
|
||||
2.5.0
|
||||
|
||||
|
@ -0,0 +1,19 @@
|
||||
diff -Naur a/Makefile.in b/Makefile.in
|
||||
--- a/Makefile.in 2016-02-25 15:54:54.305799646 +0000
|
||||
+++ b/Makefile.in 2016-02-25 15:55:30.609990228 +0000
|
||||
@@ -11,7 +11,6 @@
|
||||
|
||||
DVDPCODECS_DIRS= \
|
||||
lib \
|
||||
- lib/libdvd
|
||||
|
||||
VideoPlayer_ARCHIVES=xbmc/cores/VideoPlayer/VideoPlayer.a \
|
||||
xbmc/cores/VideoPlayer/DVDCodecs/DVDCodecs.a \
|
||||
@@ -332,7 +331,6 @@
|
||||
$(MAKE) -C lib/addons/library.kodi.peripheral
|
||||
$(MAKE) -C lib/addons/library.xbmc.pvr
|
||||
dvdpcodecs: dllloader
|
||||
- $(MAKE) -C lib/libdvd
|
||||
|
||||
dvdpextcodecs:
|
||||
|
@ -1,40 +1,8 @@
|
||||
From ae4e63aa165583ef5eaab4759e7af24eeffbb197 Mon Sep 17 00:00:00 2001
|
||||
From: croniccorey <cronmod.dev@gmail.com>
|
||||
Date: Sun, 13 Dec 2015 16:37:05 -0500
|
||||
Subject: [PATCH] KODI: Add support for aarch64 platform
|
||||
|
||||
---
|
||||
addons/library.xbmc.addon/libXBMC_addon.h | 2 ++
|
||||
configure.ac | 12 ++++++++++++
|
||||
m4/xbmc_arch.m4 | 2 +-
|
||||
xbmc/cores/DllLoader/DllLoader.h | 2 +-
|
||||
xbmc/cores/DllLoader/ldt_keeper.c | 2 +-
|
||||
xbmc/cores/VideoRenderers/LinuxRendererGL.h | 2 +-
|
||||
xbmc/linux/PlatformDefs.h | 2 +-
|
||||
xbmc/threads/Atomics.cpp | 2 +-
|
||||
xbmc/utils/CPUInfo.cpp | 2 +-
|
||||
xbmc/utils/MathUtils.h | 3 ++-
|
||||
10 files changed, 23 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/addons/library.xbmc.addon/libXBMC_addon.h b/addons/library.xbmc.addon/libXBMC_addon.h
|
||||
index c3ed54f..76190b6 100644
|
||||
--- a/addons/library.xbmc.addon/libXBMC_addon.h
|
||||
+++ b/addons/library.xbmc.addon/libXBMC_addon.h
|
||||
@@ -55,6 +55,8 @@ typedef intptr_t ssize_t;
|
||||
#define ADDON_HELPER_ARCH "powerpc64-linux"
|
||||
#elif defined(__ARMEL__)
|
||||
#define ADDON_HELPER_ARCH "arm"
|
||||
+#elif defined(__aarch64__)
|
||||
+#define ADDON_HELPER_ARCH "aarch64"
|
||||
#elif defined(__mips__)
|
||||
#define ADDON_HELPER_ARCH "mips"
|
||||
#else
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index c767357..80f3807 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -691,6 +691,18 @@ case $host in
|
||||
use_wayland=no
|
||||
diff -Naur a/configure.ac b/configure.ac
|
||||
--- a/configure.ac 2016-02-14 00:19:36.000000000 +0100
|
||||
+++ b/configure.ac 2016-03-02 09:15:52.504860258 +0100
|
||||
@@ -641,6 +641,18 @@
|
||||
use_gl=no
|
||||
USE_STATIC_FFMPEG=1
|
||||
;;
|
||||
+ aarch64*-*-linux-gnu*)
|
||||
@ -52,11 +20,10 @@ index c767357..80f3807 100644
|
||||
arm*-*linux-android*)
|
||||
target_platform=target_android
|
||||
use_arch="arm"
|
||||
diff --git a/m4/xbmc_arch.m4 b/m4/xbmc_arch.m4
|
||||
index 0b66a82..fa08537 100644
|
||||
--- a/m4/xbmc_arch.m4
|
||||
+++ b/m4/xbmc_arch.m4
|
||||
@@ -60,7 +60,7 @@ case $host in
|
||||
diff -Naur a/m4/xbmc_arch.m4 b/m4/xbmc_arch.m4
|
||||
--- a/m4/xbmc_arch.m4 2016-02-14 00:19:42.000000000 +0100
|
||||
+++ b/m4/xbmc_arch.m4 2016-03-02 09:16:33.341943374 +0100
|
||||
@@ -60,7 +60,7 @@
|
||||
powerpc64-*-linux-gnu*|powerpc64-*-linux-uclibc*)
|
||||
AC_SUBST(ARCH_DEFINES, "-DTARGET_POSIX -DTARGET_LINUX -D_LINUX -D_POWERPC64")
|
||||
;;
|
||||
@ -65,95 +32,3 @@ index 0b66a82..fa08537 100644
|
||||
AC_SUBST(ARCH_DEFINES, "-DTARGET_POSIX -DTARGET_LINUX -D_LINUX")
|
||||
;;
|
||||
mips*-*-linux-gnu*|mips*-*-linux-uclibc*)
|
||||
diff --git a/xbmc/cores/DllLoader/DllLoader.h b/xbmc/cores/DllLoader/DllLoader.h
|
||||
index 070aee6..e669203 100644
|
||||
--- a/xbmc/cores/DllLoader/DllLoader.h
|
||||
+++ b/xbmc/cores/DllLoader/DllLoader.h
|
||||
@@ -23,7 +23,7 @@
|
||||
#include "coffldr.h"
|
||||
#include "LibraryLoader.h"
|
||||
|
||||
-#if defined(__linux__) && !defined(__powerpc__) && !defined(__arm__) && !defined(__mips__)
|
||||
+#if defined(__linux__) && !defined(__powerpc__) && !defined(__arm__) && !defined(__mips__) && !defined(__aarch64__)
|
||||
#define USE_LDT_KEEPER
|
||||
#include "ldt_keeper.h"
|
||||
#endif
|
||||
diff --git a/xbmc/cores/DllLoader/ldt_keeper.c b/xbmc/cores/DllLoader/ldt_keeper.c
|
||||
index 8af9a86..1c0cdb2 100644
|
||||
--- a/xbmc/cores/DllLoader/ldt_keeper.c
|
||||
+++ b/xbmc/cores/DllLoader/ldt_keeper.c
|
||||
@@ -19,7 +19,7 @@
|
||||
*/
|
||||
|
||||
//#ifndef __powerpc__
|
||||
-#if !defined(__powerpc__) && !defined(__ppc__) && !defined(__arm__) && !defined(__mips__)
|
||||
+#if !defined(__powerpc__) && !defined(__ppc__) && !defined(__arm__) && !defined(__mips__) && !defined(__aarch64__)
|
||||
|
||||
#include "ldt_keeper.h"
|
||||
|
||||
diff --git a/xbmc/cores/VideoRenderers/LinuxRendererGL.h b/xbmc/cores/VideoRenderers/LinuxRendererGL.h
|
||||
index fcdea8d..5a3e3df 100644
|
||||
--- a/xbmc/cores/VideoRenderers/LinuxRendererGL.h
|
||||
+++ b/xbmc/cores/VideoRenderers/LinuxRendererGL.h
|
||||
@@ -323,7 +323,7 @@ class CLinuxRendererGL : public CBaseRenderer
|
||||
|
||||
|
||||
inline int NP2( unsigned x ) {
|
||||
-#if defined(TARGET_POSIX) && !defined(__POWERPC__) && !defined(__PPC__) && !defined(__arm__) && !defined(__mips__)
|
||||
+#if defined(TARGET_POSIX) && !defined(__POWERPC__) && !defined(__PPC__) && !defined(__arm__) && !defined(__mips__) && !defined(__aarch64__)
|
||||
// If there are any issues compiling this, just append a ' && 0'
|
||||
// to the above to make it '#if defined(TARGET_POSIX) && 0'
|
||||
|
||||
diff --git a/xbmc/linux/PlatformDefs.h b/xbmc/linux/PlatformDefs.h
|
||||
index 4350075..2c6fff4 100644
|
||||
--- a/xbmc/linux/PlatformDefs.h
|
||||
+++ b/xbmc/linux/PlatformDefs.h
|
||||
@@ -161,7 +161,7 @@
|
||||
#define __int64 long long
|
||||
#define __uint64 unsigned long long
|
||||
|
||||
-#if defined(__x86_64__) || defined(__powerpc__) || defined(__ppc__) || defined (__arm__) || defined(__mips__) // should this be powerpc64 only?
|
||||
+#if defined(__x86_64__) || defined(__powerpc__) || defined(__ppc__) || defined (__arm__) || defined(__mips__) || defined(__aarch64__)
|
||||
#define __stdcall
|
||||
#else /* !__x86_64__ */
|
||||
#define __stdcall __attribute__((__stdcall__))
|
||||
diff --git a/xbmc/threads/Atomics.cpp b/xbmc/threads/Atomics.cpp
|
||||
index 417b2b6..c172867 100644
|
||||
--- a/xbmc/threads/Atomics.cpp
|
||||
+++ b/xbmc/threads/Atomics.cpp
|
||||
@@ -106,7 +106,7 @@ long cas(volatile long *pAddr, long expectedVal, long swapVal)
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
long long cas2(volatile long long* pAddr, long long expectedVal, long long swapVal)
|
||||
{
|
||||
-#if defined(__ppc__) || defined(__powerpc__) || defined(__arm__)// PowerPC and ARM
|
||||
+#if defined(__ppc__) || defined(__powerpc__) || defined(__arm__) || defined(__aarch64__) // PowerPC and ARM
|
||||
// Not available/required
|
||||
// Hack to allow compilation
|
||||
throw "cas2 is not implemented";
|
||||
diff --git a/xbmc/utils/CPUInfo.cpp b/xbmc/utils/CPUInfo.cpp
|
||||
index 9e709e7..d7fef37 100644
|
||||
--- a/xbmc/utils/CPUInfo.cpp
|
||||
+++ b/xbmc/utils/CPUInfo.cpp
|
||||
@@ -914,7 +914,7 @@ void CCPUInfo::ReadCPUFeatures()
|
||||
#endif
|
||||
#elif defined(LINUX)
|
||||
// empty on purpose, the implementation is in the constructor
|
||||
-#elif !defined(__powerpc__) && !defined(__ppc__) && !defined(__arm__)
|
||||
+#elif !defined(__powerpc__) && !defined(__ppc__) && !defined(__arm__) && !defined(__aarch64__)
|
||||
m_cpuFeatures |= CPU_FEATURE_MMX;
|
||||
#elif defined(__powerpc__) || defined(__ppc__)
|
||||
m_cpuFeatures |= CPU_FEATURE_ALTIVEC;
|
||||
diff --git a/xbmc/utils/MathUtils.h b/xbmc/utils/MathUtils.h
|
||||
index 08140b7..249b4dd 100644
|
||||
--- a/xbmc/utils/MathUtils.h
|
||||
+++ b/xbmc/utils/MathUtils.h
|
||||
@@ -35,7 +35,8 @@
|
||||
#if defined(__ppc__) || \
|
||||
defined(__powerpc__) || \
|
||||
defined(__mips__) || \
|
||||
- defined(__arm__)
|
||||
+ defined(__arm__) || \
|
||||
+ defined(__aarch64__)
|
||||
#define DISABLE_MATHUTILS_ASM_ROUND_INT
|
||||
#endif
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
diff -Naur a/xbmc/cores/dvdplayer/DVDCodecs/Video/AMLCodec.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/AMLCodec.cpp
|
||||
--- a/xbmc/cores/dvdplayer/DVDCodecs/Video/AMLCodec.cpp 2016-02-02 23:09:39.000000000 +0100
|
||||
+++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/AMLCodec.cpp 2016-02-10 07:01:28.941399058 +0100
|
||||
@@ -1598,7 +1598,7 @@
|
||||
diff -Naur a/xbmc/cores/VideoPlayer/DVDCodecs/Video/AMLCodec.cpp b/xbmc/cores/VideoPlayer/DVDCodecs/Video/AMLCodec.cpp
|
||||
--- a/xbmc/cores/VideoPlayer/DVDCodecs/Video/AMLCodec.cpp 2016-02-14 00:19:32.000000000 +0100
|
||||
+++ b/xbmc/cores/VideoPlayer/DVDCodecs/Video/AMLCodec.cpp 2016-03-02 09:36:04.503330833 +0100
|
||||
@@ -1601,7 +1601,7 @@
|
||||
am_private->gcodec.param = (void*)(EXTERNAL_PTS | SYNC_OUTSIDE);
|
||||
break;
|
||||
}
|
||||
@ -10,15 +10,3 @@ diff -Naur a/xbmc/cores/dvdplayer/DVDCodecs/Video/AMLCodec.cpp b/xbmc/cores/dvdp
|
||||
|
||||
// translate from generic to firemware version dependent
|
||||
m_dll->codec_init_para(&am_private->gcodec, &am_private->vcodec);
|
||||
diff -Naur a/xbmc/guilib/GUIFontTTFGL.cpp b/xbmc/guilib/GUIFontTTFGL.cpp
|
||||
--- a/xbmc/guilib/GUIFontTTFGL.cpp 2016-02-02 23:09:39.000000000 +0100
|
||||
+++ b/xbmc/guilib/GUIFontTTFGL.cpp 2016-02-10 06:59:49.261293006 +0100
|
||||
@@ -232,7 +232,7 @@
|
||||
glUniformMatrix4fv(modelLoc, 1, GL_FALSE, glMatrixModview.Get());
|
||||
|
||||
// Bind the buffer to the OpenGL context's GL_ARRAY_BUFFER binding point
|
||||
- glBindBuffer(GL_ARRAY_BUFFER, (GLuint) m_vertexTrans[i].vertexBuffer->bufferHandle);
|
||||
+ glBindBuffer(GL_ARRAY_BUFFER, (unsigned long) m_vertexTrans[i].vertexBuffer->bufferHandle);
|
||||
|
||||
// Do the actual drawing operation, split into groups of characters no
|
||||
// larger than the pre-determined size of the element array
|
||||
|
@ -1,35 +0,0 @@
|
||||
From ee014b442eac3e85178c89d04691f4fc73cf89e4 Mon Sep 17 00:00:00 2001
|
||||
From: "Chris \"Koying\" Browet" <cbro@semperpax.com>
|
||||
Date: Sun, 18 Oct 2015 11:24:00 +0200
|
||||
Subject: [PATCH] FIX: Only handle 3D bitmap subs in TAB
|
||||
|
||||
3D bitmap subs cannot be detected in SBS, and there is always the option
|
||||
to play with Kodi 3D disabled
|
||||
---
|
||||
xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp | 7 +------
|
||||
1 file changed, 1 insertion(+), 6 deletions(-)
|
||||
|
||||
diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp
|
||||
index dca4bdf..c9a0008 100644
|
||||
--- a/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp
|
||||
+++ b/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp
|
||||
@@ -257,18 +257,13 @@ CDVDOverlay* CDVDOverlayCodecFFmpeg::GetOverlay()
|
||||
}
|
||||
|
||||
RENDER_STEREO_MODE render_stereo_mode = g_graphicsContext.GetStereoMode();
|
||||
- if (render_stereo_mode != RENDER_STEREO_MODE_OFF)
|
||||
+ if (render_stereo_mode == RENDER_STEREO_MODE_SPLIT_HORIZONTAL)
|
||||
{
|
||||
if (rect.h > m_height / 2)
|
||||
{
|
||||
m_height /= 2;
|
||||
rect.h /= 2;
|
||||
}
|
||||
- else if (rect.w > m_width / 2)
|
||||
- {
|
||||
- m_width /= 2;
|
||||
- rect.w /= 2;
|
||||
- }
|
||||
}
|
||||
|
||||
CDVDOverlayImage* overlay = new CDVDOverlayImage();
|
@ -1,63 +0,0 @@
|
||||
diff -Naur kodi-16.0-beta5-19fc4fa/system/keymaps/keyboard.xml kodi-16.0-beta5-19fc4fa.patch/system/keymaps/keyboard.xml
|
||||
--- kodi-16.0-beta5-19fc4fa/system/keymaps/keyboard.xml 2015-12-15 00:07:12.000000000 +0100
|
||||
+++ kodi-16.0-beta5-19fc4fa.patch/system/keymaps/keyboard.xml 2016-01-05 06:41:50.857902588 +0100
|
||||
@@ -113,6 +113,7 @@
|
||||
<sleep>ActivateWindow(shutdownmenu)</sleep>
|
||||
<!-- PVR windows -->
|
||||
<e>ActivateWindow(TVGuide)</e>
|
||||
+ <epg>ActivateWindow(TVGuide)</epg>
|
||||
<h>ActivateWindow(TVChannels)</h>
|
||||
<j>ActivateWindow(RadioChannels)</j>
|
||||
<k>ActivateWindow(TVRecordings)</k>
|
||||
@@ -268,6 +269,7 @@
|
||||
<TVGuide>
|
||||
<keyboard>
|
||||
<e>PreviousMenu</e>
|
||||
+ <epg>PreviousMenu</epg>
|
||||
</keyboard>
|
||||
</TVGuide>
|
||||
<MyFiles>
|
||||
diff -Naur kodi-16.0-beta5-19fc4fa/xbmc/input/linux/LinuxInputDevices.cpp kodi-16.0-beta5-19fc4fa.patch/xbmc/input/linux/LinuxInputDevices.cpp
|
||||
--- kodi-16.0-beta5-19fc4fa/xbmc/input/linux/LinuxInputDevices.cpp 2015-12-15 00:07:12.000000000 +0100
|
||||
+++ kodi-16.0-beta5-19fc4fa.patch/xbmc/input/linux/LinuxInputDevices.cpp 2016-01-05 06:41:13.847846527 +0100
|
||||
@@ -268,6 +268,7 @@
|
||||
{ KEY_FILE , XBMCK_LAUNCH_FILE_BROWSER},
|
||||
{ KEY_SELECT , XBMCK_RETURN },
|
||||
{ KEY_CONFIG , XBMCK_CONFIG },
|
||||
+ { KEY_EPG , XBMCK_EPG },
|
||||
// The Little Black Box Remote Additions
|
||||
{ 384 , XBMCK_LEFT }, // Red
|
||||
{ 378 , XBMCK_RIGHT }, // Green
|
||||
diff -Naur kodi-16.0-beta5-19fc4fa/xbmc/input/XBMC_keysym.h kodi-16.0-beta5-19fc4fa.patch/xbmc/input/XBMC_keysym.h
|
||||
--- kodi-16.0-beta5-19fc4fa/xbmc/input/XBMC_keysym.h 2015-12-15 00:07:12.000000000 +0100
|
||||
+++ kodi-16.0-beta5-19fc4fa.patch/xbmc/input/XBMC_keysym.h 2016-01-05 06:41:13.847846527 +0100
|
||||
@@ -229,6 +229,7 @@
|
||||
XBMCK_FAVORITES = 0x14d,
|
||||
XBMCK_HOMEPAGE = 0x14e,
|
||||
XBMCK_CONFIG = 0x14f,
|
||||
+ XBMCK_EPG = 0x150,
|
||||
|
||||
// Add any other keys here
|
||||
|
||||
diff -Naur kodi-16.0-beta5-19fc4fa/xbmc/input/XBMC_keytable.cpp kodi-16.0-beta5-19fc4fa.patch/xbmc/input/XBMC_keytable.cpp
|
||||
--- kodi-16.0-beta5-19fc4fa/xbmc/input/XBMC_keytable.cpp 2015-12-15 00:07:12.000000000 +0100
|
||||
+++ kodi-16.0-beta5-19fc4fa.patch/xbmc/input/XBMC_keytable.cpp 2016-01-05 06:41:13.848846528 +0100
|
||||
@@ -243,6 +243,7 @@
|
||||
, { XBMCK_FAVORITES, 0, 0, XBMCVK_FAVORITES, "favorites" }
|
||||
, { XBMCK_HOMEPAGE , 0, 0, XBMCVK_HOMEPAGE, "homepage" }
|
||||
, { XBMCK_CONFIG, 0, 0, XBMCVK_CONFIG, "config" }
|
||||
+, { XBMCK_EPG , 0, 0, XBMCVK_EPG, "epg" }
|
||||
};
|
||||
|
||||
static int XBMCKeyTableSize = sizeof(XBMCKeyTable)/sizeof(XBMCKEYTABLE);
|
||||
diff -Naur kodi-16.0-beta5-19fc4fa/xbmc/input/XBMC_vkeys.h kodi-16.0-beta5-19fc4fa.patch/xbmc/input/XBMC_vkeys.h
|
||||
--- kodi-16.0-beta5-19fc4fa/xbmc/input/XBMC_vkeys.h 2015-12-15 00:07:12.000000000 +0100
|
||||
+++ kodi-16.0-beta5-19fc4fa.patch/xbmc/input/XBMC_vkeys.h 2016-01-05 06:41:13.848846528 +0100
|
||||
@@ -221,6 +221,7 @@
|
||||
XBMCVK_FAVORITES = 0xE9,
|
||||
XBMCVK_HOMEPAGE = 0xEA,
|
||||
XBMCVK_CONFIG = 0xEB,
|
||||
+ XBMCVK_EPG = 0xEC,
|
||||
|
||||
XBMCVK_LAST = 0xFF
|
||||
} XBMCVKey;
|
@ -23,7 +23,7 @@
|
||||
chmod +x /storage/.kodi/addons/*/bin/*
|
||||
|
||||
# Nasty hack to work around OE to LE migration - Addons*.db needs to forget all about OE addons
|
||||
ADDONSDB=$(ls -1 /storage/.kodi/userdata/Database/Addons20.db 2>/dev/null)
|
||||
ADDONSDB=$(ls -1 /storage/.kodi/userdata/Database/Addons23.db 2>/dev/null)
|
||||
if [ -n "${ADDONSDB}" ]; then
|
||||
OEREPO="'repository.openelec.tv'"
|
||||
|
||||
|
@ -1,117 +0,0 @@
|
||||
From 01759c5adfb050b1ba0c8a8fc4e20a875a98c0e5 Mon Sep 17 00:00:00 2001
|
||||
From: popcornmix <popcornmix@gmail.com>
|
||||
Date: Sun, 10 Aug 2014 18:58:37 +0100
|
||||
Subject: [PATCH 1/2] confluence: Remove media-overlay.jpg for when video is
|
||||
backgrounded
|
||||
|
||||
---
|
||||
720p/IncludesBackgroundBuilding.xml | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/720p/IncludesBackgroundBuilding.xml b/720p/IncludesBackgroundBuilding.xml
|
||||
index cc996da..d6aa595 100644
|
||||
--- a/720p/IncludesBackgroundBuilding.xml
|
||||
+++ b/720p/IncludesBackgroundBuilding.xml
|
||||
@@ -32,7 +32,7 @@
|
||||
</control>
|
||||
<control type="image">
|
||||
<include>BackgroundDimensions</include>
|
||||
- <texture>special://skin/backgrounds/media-overlay.jpg</texture>
|
||||
+ <!--texture>special://skin/backgrounds/media-overlay.jpg</texture-->
|
||||
<visible>[Player.HasVideo + !Skin.HasSetting(ShowBackgroundVideo)] + !Window.IsVisible(TVChannels) + !Window.IsVisible(RadioChannels)</visible>
|
||||
<include>VisibleFadeEffect</include>
|
||||
</control>
|
||||
--
|
||||
2.5.0
|
||||
|
||||
|
||||
From d99f70c094006144f07bdf739f5847b733030245 Mon Sep 17 00:00:00 2001
|
||||
From: popcornmix <popcornmix@gmail.com>
|
||||
Date: Mon, 22 Jul 2013 23:19:15 +0100
|
||||
Subject: [PATCH 2/2] [confluence] Use animated gif as a cheaper working
|
||||
spinner
|
||||
|
||||
---
|
||||
720p/DialogBusy.xml | 4 ++--
|
||||
media/busy.gif | Bin 0 -> 3199 bytes
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
create mode 100644 media/busy.gif
|
||||
|
||||
diff --git a/720p/DialogBusy.xml b/720p/DialogBusy.xml
|
||||
index b5df91f..8e84fed 100644
|
||||
--- a/720p/DialogBusy.xml
|
||||
+++ b/720p/DialogBusy.xml
|
||||
@@ -25,9 +25,9 @@
|
||||
<top>20</top>
|
||||
<width>32</width>
|
||||
<height>32</height>
|
||||
- <texture>busy.png</texture>
|
||||
+ <texture>busy.gif</texture>
|
||||
<aspectratio>keep</aspectratio>
|
||||
- <animation effect="rotate" start="0" end="360" center="36,36" time="900" loop="true" condition="true">conditional</animation>
|
||||
+ <!--animation effect="rotate" start="0" end="360" center="36,36" time="900" loop="true" condition="true">conditional</animation-->
|
||||
</control>
|
||||
<control type="label">
|
||||
<description>Busy label</description>
|
||||
diff --git a/media/busy.gif b/media/busy.gif
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..f856ed0b44fdc7e9b0520c7e39a9bebc04136897
|
||||
GIT binary patch
|
||||
literal 3199
|
||||
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
|
||||
|
||||
literal 0
|
||||
HcmV?d00001
|
||||
|
||||
--
|
||||
2.5.0
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,117 +0,0 @@
|
||||
From 01759c5adfb050b1ba0c8a8fc4e20a875a98c0e5 Mon Sep 17 00:00:00 2001
|
||||
From: popcornmix <popcornmix@gmail.com>
|
||||
Date: Sun, 10 Aug 2014 18:58:37 +0100
|
||||
Subject: [PATCH 1/2] confluence: Remove media-overlay.jpg for when video is
|
||||
backgrounded
|
||||
|
||||
---
|
||||
720p/IncludesBackgroundBuilding.xml | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/720p/IncludesBackgroundBuilding.xml b/720p/IncludesBackgroundBuilding.xml
|
||||
index cc996da..d6aa595 100644
|
||||
--- a/720p/IncludesBackgroundBuilding.xml
|
||||
+++ b/720p/IncludesBackgroundBuilding.xml
|
||||
@@ -32,7 +32,7 @@
|
||||
</control>
|
||||
<control type="image">
|
||||
<include>BackgroundDimensions</include>
|
||||
- <texture>special://skin/backgrounds/media-overlay.jpg</texture>
|
||||
+ <!--texture>special://skin/backgrounds/media-overlay.jpg</texture-->
|
||||
<visible>[Player.HasVideo + !Skin.HasSetting(ShowBackgroundVideo)] + !Window.IsVisible(TVChannels) + !Window.IsVisible(RadioChannels)</visible>
|
||||
<include>VisibleFadeEffect</include>
|
||||
</control>
|
||||
--
|
||||
2.5.0
|
||||
|
||||
|
||||
From d99f70c094006144f07bdf739f5847b733030245 Mon Sep 17 00:00:00 2001
|
||||
From: popcornmix <popcornmix@gmail.com>
|
||||
Date: Mon, 22 Jul 2013 23:19:15 +0100
|
||||
Subject: [PATCH 2/2] [confluence] Use animated gif as a cheaper working
|
||||
spinner
|
||||
|
||||
---
|
||||
720p/DialogBusy.xml | 4 ++--
|
||||
media/busy.gif | Bin 0 -> 3199 bytes
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
create mode 100644 media/busy.gif
|
||||
|
||||
diff --git a/720p/DialogBusy.xml b/720p/DialogBusy.xml
|
||||
index b5df91f..8e84fed 100644
|
||||
--- a/720p/DialogBusy.xml
|
||||
+++ b/720p/DialogBusy.xml
|
||||
@@ -25,9 +25,9 @@
|
||||
<top>20</top>
|
||||
<width>32</width>
|
||||
<height>32</height>
|
||||
- <texture>busy.png</texture>
|
||||
+ <texture>busy.gif</texture>
|
||||
<aspectratio>keep</aspectratio>
|
||||
- <animation effect="rotate" start="0" end="360" center="36,36" time="900" loop="true" condition="true">conditional</animation>
|
||||
+ <!--animation effect="rotate" start="0" end="360" center="36,36" time="900" loop="true" condition="true">conditional</animation-->
|
||||
</control>
|
||||
<control type="label">
|
||||
<description>Busy label</description>
|
||||
diff --git a/media/busy.gif b/media/busy.gif
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..f856ed0b44fdc7e9b0520c7e39a9bebc04136897
|
||||
GIT binary patch
|
||||
literal 3199
|
||||
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
|
||||
|
||||
literal 0
|
||||
HcmV?d00001
|
||||
|
||||
--
|
||||
2.5.0
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,17 +1,17 @@
|
||||
From 5e5453322e71c16b8b96b471a9e5c32b96d6b1af Mon Sep 17 00:00:00 2001
|
||||
From fde3d3d609e570aa3a8691a4e66e07dce1c80b25 Mon Sep 17 00:00:00 2001
|
||||
From: Alex Deryskyba <alex@codesnake.com>
|
||||
Date: Wed, 16 Apr 2014 22:02:01 +0300
|
||||
Subject: [PATCH 01/17] Fix ALSA sound output for Amlogic-based devices.
|
||||
Subject: [PATCH] [aml] Fix ALSA sound output for Amlogic-based devices.
|
||||
|
||||
---
|
||||
xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp | 19 +++++++++++++++++++
|
||||
xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp | 19 +++++++++++++++++++
|
||||
1 file changed, 19 insertions(+)
|
||||
|
||||
diff --git a/xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp b/xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp
|
||||
index df50940..9f80c06 100644
|
||||
index fbccce0..6bf2c53 100644
|
||||
--- a/xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp
|
||||
+++ b/xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp
|
||||
@@ -83,6 +83,17 @@ static unsigned int ALSASampleRateList[] =
|
||||
@@ -84,6 +84,17 @@ static unsigned int ALSASampleRateList[] =
|
||||
0
|
||||
};
|
||||
|
||||
@ -29,7 +29,7 @@ index df50940..9f80c06 100644
|
||||
CAESinkALSA::CAESinkALSA() :
|
||||
m_bufferSize(0),
|
||||
m_formatSampleRateMul(0.0),
|
||||
@@ -741,12 +752,20 @@ bool CAESinkALSA::InitializeHW(const ALSAConfig &inconfig, ALSAConfig &outconfig
|
||||
@@ -748,12 +759,20 @@ bool CAESinkALSA::InitializeHW(const ALSAConfig &inconfig, ALSAConfig &outconfig
|
||||
*/
|
||||
periodSize = std::min(periodSize, (snd_pcm_uframes_t) sampleRate / 20);
|
||||
bufferSize = std::min(bufferSize, (snd_pcm_uframes_t) sampleRate / 5);
|
||||
@ -50,6 +50,3 @@ index df50940..9f80c06 100644
|
||||
|
||||
CLog::Log(LOGDEBUG, "CAESinkALSA::InitializeHW - Request: periodSize %lu, bufferSize %lu", periodSize, bufferSize);
|
||||
|
||||
--
|
||||
1.7.10.4
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From d81c2be6e702206b7c00e25be4ee0c0750f1b84d Mon Sep 17 00:00:00 2001
|
||||
From 0367076d263846832cff68052f3de362f27e5bc6 Mon Sep 17 00:00:00 2001
|
||||
From: Alex Deryskyba <alex@codesnake.com>
|
||||
Date: Mon, 8 Sep 2014 23:29:40 +0300
|
||||
Subject: [PATCH 08/17] Reorder libraries in configure script to prevent
|
||||
Subject: [PATCH] [wetek] Reorder libraries in configure script to prevent
|
||||
linker errors when linking with libsmbclient
|
||||
|
||||
Place libsmbclient before all other libraries to prevent linker errors when linking
|
||||
@ -9,14 +9,14 @@ with libsmbclient if the libc that is currently used doesn't contain some functi
|
||||
such as dn_expand (which are often included in libc), but are actually included in
|
||||
libresolv.
|
||||
---
|
||||
configure.ac | 2 +-
|
||||
configure.ac | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index ff4022f..079fa27 100644
|
||||
index fbe2766..c668729 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1475,7 +1475,7 @@ fi
|
||||
@@ -1425,7 +1425,7 @@ fi
|
||||
# samba
|
||||
if test "x$use_samba" != "xno"; then
|
||||
PKG_CHECK_MODULES([SAMBA], [smbclient],
|
||||
@ -25,6 +25,3 @@ index ff4022f..079fa27 100644
|
||||
[AC_CHECK_LIB([smbclient], [main],,
|
||||
use_samba=no;AC_MSG_ERROR($missing_library))
|
||||
USE_LIBSMBCLIENT=0
|
||||
--
|
||||
1.7.10.4
|
||||
|
||||
|
@ -1,22 +1,18 @@
|
||||
From a98954cef067010982c83568dfba45da0d43fe4d Mon Sep 17 00:00:00 2001
|
||||
From 813e6f31c8006190615cbf8ab031db2362bcf553 Mon Sep 17 00:00:00 2001
|
||||
From: Alex Deryskyba <alex@codesnake.com>
|
||||
Date: Fri, 19 Sep 2014 01:55:12 +0300
|
||||
Subject: [PATCH 09/17] [aml] Change the sample rates that are supported by
|
||||
ALSA but unsupported by HDMI to the closest supported
|
||||
value
|
||||
Subject: [PATCH] [aml] Change the sample rates that are supported by ALSA but
|
||||
unsupported by HDMI to the closest supported value
|
||||
|
||||
Conflicts:
|
||||
|
||||
xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp
|
||||
---
|
||||
xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp | 20 ++++++++++++++++++++
|
||||
xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp | 20 ++++++++++++++++++++
|
||||
1 file changed, 20 insertions(+)
|
||||
|
||||
diff --git a/xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp b/xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp
|
||||
index 9f80c06..18303f8 100644
|
||||
index 6bf2c53..32ab888 100644
|
||||
--- a/xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp
|
||||
+++ b/xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp
|
||||
@@ -666,6 +666,26 @@ bool CAESinkALSA::InitializeHW(const ALSAConfig &inconfig, ALSAConfig &outconfig
|
||||
@@ -673,6 +673,26 @@ bool CAESinkALSA::InitializeHW(const ALSAConfig &inconfig, ALSAConfig &outconfig
|
||||
snd_pcm_hw_params_set_access(m_pcm, hw_params, SND_PCM_ACCESS_RW_INTERLEAVED);
|
||||
|
||||
unsigned int sampleRate = inconfig.sampleRate;
|
||||
@ -43,6 +39,3 @@ index 9f80c06..18303f8 100644
|
||||
snd_pcm_hw_params_set_rate_near (m_pcm, hw_params, &sampleRate, NULL);
|
||||
|
||||
unsigned int channelCount = inconfig.channels;
|
||||
--
|
||||
1.7.10.4
|
||||
|
||||
|
@ -1,20 +1,20 @@
|
||||
From 554f4a769d67155cbdf6f45ba256b5700baa65c1 Mon Sep 17 00:00:00 2001
|
||||
From b97f9b069a98984109829badcdf8ead92a29ee38 Mon Sep 17 00:00:00 2001
|
||||
From: Alex Deryskyba <alex@codesnake.com>
|
||||
Date: Sat, 20 Sep 2014 04:43:52 +0300
|
||||
Subject: [PATCH 10/17] [aml] Fill audio packets completely when resampling to
|
||||
Subject: [PATCH] [aml] Fill audio packets completely when resampling to
|
||||
prevent 'audio data unaligned' kernel warnings
|
||||
|
||||
---
|
||||
xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEBuffer.cpp | 4 ++++
|
||||
xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEBuffer.cpp | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEBuffer.cpp b/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEBuffer.cpp
|
||||
index 3b0a015..ef431a4 100644
|
||||
index dffded7..2f9dc47 100644
|
||||
--- a/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEBuffer.cpp
|
||||
+++ b/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEBuffer.cpp
|
||||
@@ -143,7 +143,11 @@ CActiveAEBufferPoolResample::CActiveAEBufferPoolResample(AEAudioFormat inputForm
|
||||
if (AE_IS_RAW(m_inputFormat.m_dataFormat))
|
||||
m_inputFormat.m_dataFormat = AE_FMT_S16NE;
|
||||
@@ -157,7 +157,11 @@ CActiveAEBufferPoolResample::CActiveAEBufferPoolResample(AEAudioFormat inputForm
|
||||
m_inputFormat.m_channelLayout += AE_CH_FC;
|
||||
}
|
||||
m_resampler = NULL;
|
||||
+#ifdef HAS_LIBAMCODEC
|
||||
+ m_fillPackets = true;
|
||||
@ -24,6 +24,3 @@ index 3b0a015..ef431a4 100644
|
||||
m_drain = false;
|
||||
m_empty = true;
|
||||
m_procSample = NULL;
|
||||
--
|
||||
1.7.10.4
|
||||
|
||||
|
@ -1,120 +0,0 @@
|
||||
From e065d31b7bac0a3fffc0f05922613090cc573709 Mon Sep 17 00:00:00 2001
|
||||
From: Alex Deryskyba <alex@codesnake.com>
|
||||
Date: Sun, 21 Sep 2014 17:17:14 +0300
|
||||
Subject: [PATCH 11/17] [aml] Use fpsrate and fpsscale instead of rfpsrate and
|
||||
rfpsscale to detect framerate
|
||||
|
||||
---
|
||||
xbmc/cores/dvdplayer/DVDCodecs/Video/AMLCodec.cpp | 12 ++-----
|
||||
.../DVDCodecs/Video/DVDVideoCodecAmlogic.cpp | 38 +++++++++-----------
|
||||
2 files changed, 20 insertions(+), 30 deletions(-)
|
||||
|
||||
diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/AMLCodec.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/AMLCodec.cpp
|
||||
index 26db4a1..fcdad19 100644
|
||||
--- a/xbmc/cores/dvdplayer/DVDCodecs/Video/AMLCodec.cpp
|
||||
+++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/AMLCodec.cpp
|
||||
@@ -1465,14 +1465,8 @@ bool CAMLCodec::OpenDecoder(CDVDStreamInfo &hints)
|
||||
am_private->video_ratio64 = ((int64_t)video_ratio.num << 32) | video_ratio.den;
|
||||
|
||||
// handle video rate
|
||||
- if (hints.rfpsrate > 0 && hints.rfpsscale != 0)
|
||||
+ if (hints.fpsrate > 0 && hints.fpsscale != 0)
|
||||
{
|
||||
- // check ffmpeg r_frame_rate 1st
|
||||
- am_private->video_rate = 0.5 + (float)UNIT_FREQ * hints.rfpsscale / hints.rfpsrate;
|
||||
- }
|
||||
- else if (hints.fpsrate > 0 && hints.fpsscale != 0)
|
||||
- {
|
||||
- // then ffmpeg avg_frame_rate next
|
||||
am_private->video_rate = 0.5 + (float)UNIT_FREQ * hints.fpsscale / hints.fpsrate;
|
||||
}
|
||||
|
||||
@@ -1545,8 +1539,8 @@ bool CAMLCodec::OpenDecoder(CDVDStreamInfo &hints)
|
||||
CLog::Log(LOGDEBUG, "CAMLCodec::OpenDecoder "
|
||||
"hints.width(%d), hints.height(%d), hints.codec(%d), hints.codec_tag(%d), hints.pid(%d)",
|
||||
hints.width, hints.height, hints.codec, hints.codec_tag, hints.pid);
|
||||
- CLog::Log(LOGDEBUG, "CAMLCodec::OpenDecoder hints.fpsrate(%d), hints.fpsscale(%d), hints.rfpsrate(%d), hints.rfpsscale(%d), video_rate(%d)",
|
||||
- hints.fpsrate, hints.fpsscale, hints.rfpsrate, hints.rfpsscale, am_private->video_rate);
|
||||
+ CLog::Log(LOGDEBUG, "CAMLCodec::OpenDecoder hints.fpsrate(%d), hints.fpsscale(%d), video_rate(%d)",
|
||||
+ hints.fpsrate, hints.fpsscale, am_private->video_rate);
|
||||
CLog::Log(LOGDEBUG, "CAMLCodec::OpenDecoder hints.aspect(%f), video_ratio.num(%d), video_ratio.den(%d)",
|
||||
hints.aspect, video_ratio.num, video_ratio.den);
|
||||
CLog::Log(LOGDEBUG, "CAMLCodec::OpenDecoder hints.orientation(%d), hints.forced_aspect(%d), hints.extrasize(%d)",
|
||||
diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecAmlogic.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecAmlogic.cpp
|
||||
index 24c1ab9..960aae1 100644
|
||||
--- a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecAmlogic.cpp
|
||||
+++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecAmlogic.cpp
|
||||
@@ -74,9 +74,7 @@ bool CDVDVideoCodecAmlogic::Open(CDVDStreamInfo &hints, CDVDCodecOptions &option
|
||||
m_mpeg2_sequence->width = m_hints.width;
|
||||
m_mpeg2_sequence->height = m_hints.height;
|
||||
m_mpeg2_sequence->ratio = m_hints.aspect;
|
||||
- if (m_hints.rfpsrate > 0 && m_hints.rfpsscale != 0)
|
||||
- m_mpeg2_sequence->rate = (float)m_hints.rfpsrate / m_hints.rfpsscale;
|
||||
- else if (m_hints.fpsrate > 0 && m_hints.fpsscale != 0)
|
||||
+ if (m_hints.fpsrate > 0 && m_hints.fpsscale != 0)
|
||||
m_mpeg2_sequence->rate = (float)m_hints.fpsrate / m_hints.fpsscale;
|
||||
else
|
||||
m_mpeg2_sequence->rate = 1.0;
|
||||
@@ -374,43 +372,41 @@ void CDVDVideoCodecAmlogic::FrameRateTracking(uint8_t *pData, int iSize, double
|
||||
{
|
||||
default:
|
||||
case 0x01:
|
||||
- m_hints.rfpsrate = 24000.0;
|
||||
- m_hints.rfpsscale = 1001.0;
|
||||
+ m_hints.fpsrate = 24000.0;
|
||||
+ m_hints.fpsscale = 1001.0;
|
||||
break;
|
||||
case 0x02:
|
||||
- m_hints.rfpsrate = 24000.0;
|
||||
- m_hints.rfpsscale = 1000.0;
|
||||
+ m_hints.fpsrate = 24000.0;
|
||||
+ m_hints.fpsscale = 1000.0;
|
||||
break;
|
||||
case 0x03:
|
||||
- m_hints.rfpsrate = 25000.0;
|
||||
- m_hints.rfpsscale = 1000.0;
|
||||
+ m_hints.fpsrate = 25000.0;
|
||||
+ m_hints.fpsscale = 1000.0;
|
||||
break;
|
||||
case 0x04:
|
||||
- m_hints.rfpsrate = 30000.0;
|
||||
- m_hints.rfpsscale = 1001.0;
|
||||
+ m_hints.fpsrate = 30000.0;
|
||||
+ m_hints.fpsscale = 1001.0;
|
||||
break;
|
||||
case 0x05:
|
||||
- m_hints.rfpsrate = 30000.0;
|
||||
- m_hints.rfpsscale = 1000.0;
|
||||
+ m_hints.fpsrate = 30000.0;
|
||||
+ m_hints.fpsscale = 1000.0;
|
||||
break;
|
||||
case 0x06:
|
||||
- m_hints.rfpsrate = 50000.0;
|
||||
- m_hints.rfpsscale = 1000.0;
|
||||
+ m_hints.fpsrate = 50000.0;
|
||||
+ m_hints.fpsscale = 1000.0;
|
||||
break;
|
||||
case 0x07:
|
||||
- m_hints.rfpsrate = 60000.0;
|
||||
- m_hints.rfpsscale = 1001.0;
|
||||
+ m_hints.fpsrate = 60000.0;
|
||||
+ m_hints.fpsscale = 1001.0;
|
||||
break;
|
||||
case 0x08:
|
||||
- m_hints.rfpsrate = 60000.0;
|
||||
- m_hints.rfpsscale = 1000.0;
|
||||
+ m_hints.fpsrate = 60000.0;
|
||||
+ m_hints.fpsscale = 1000.0;
|
||||
break;
|
||||
}
|
||||
m_hints.width = m_mpeg2_sequence->width;
|
||||
m_hints.height = m_mpeg2_sequence->height;
|
||||
m_hints.aspect = m_mpeg2_sequence->ratio;
|
||||
- m_hints.fpsrate = m_hints.rfpsrate;
|
||||
- m_hints.fpsscale = m_hints.rfpsscale;
|
||||
}
|
||||
return;
|
||||
}
|
||||
--
|
||||
1.7.10.4
|
||||
|
@ -1,143 +0,0 @@
|
||||
From a9ff99a36f9e6cea70f7274312a127563af15dc5 Mon Sep 17 00:00:00 2001
|
||||
From: Alex Deryskyba <alex@codesnake.com>
|
||||
Date: Sun, 21 Sep 2014 17:20:25 +0300
|
||||
Subject: [PATCH 12/17] Fix incorrect frame rate detection of some videos with
|
||||
variable frame rate.
|
||||
|
||||
Use FFMPEG's r_frame_rate, if it as valid, as a video stream frame rate, otherwise use avg_frame_rate.
|
||||
Also remove CDVDStreamInfo.rfpsscale, CDVDStreamInfo.rfpsrate, CDemuxStreamVideo.irFpsScale and CDemuxStreamVideo.irFpsRate,
|
||||
they are not needed anymore.
|
||||
---
|
||||
xbmc/cores/dvdplayer/DVDDemuxers/DVDDemux.h | 4 ---
|
||||
.../cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp | 29 ++++++++--------------
|
||||
xbmc/cores/dvdplayer/DVDStreamInfo.cpp | 8 ------
|
||||
xbmc/cores/dvdplayer/DVDStreamInfo.h | 2 --
|
||||
4 files changed, 10 insertions(+), 33 deletions(-)
|
||||
|
||||
diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemux.h b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemux.h
|
||||
index d69991e..faf3c9b 100644
|
||||
--- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemux.h
|
||||
+++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemux.h
|
||||
@@ -151,8 +151,6 @@ public:
|
||||
{
|
||||
iFpsScale = 0;
|
||||
iFpsRate = 0;
|
||||
- irFpsScale = 0;
|
||||
- irFpsRate = 0;
|
||||
iHeight = 0;
|
||||
iWidth = 0;
|
||||
fAspect = 0.0;
|
||||
@@ -167,8 +165,6 @@ public:
|
||||
virtual ~CDemuxStreamVideo() {}
|
||||
int iFpsScale; // scale of 1000 and a rate of 29970 will result in 29.97 fps
|
||||
int iFpsRate;
|
||||
- int irFpsScale;
|
||||
- int irFpsRate;
|
||||
int iHeight; // height of the stream reported by the demuxer
|
||||
int iWidth; // width of the stream reported by the demuxer
|
||||
float fAspect; // display aspect of stream
|
||||
diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
|
||||
index 1315117..5367b28 100644
|
||||
--- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
|
||||
+++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
|
||||
@@ -1125,34 +1125,25 @@ CDemuxStream* CDVDDemuxFFmpeg::AddStream(int iId)
|
||||
#else
|
||||
AVRational r_frame_rate = pStream->r_frame_rate;
|
||||
#endif
|
||||
+ int rFrameRate = 0;
|
||||
+ if (r_frame_rate.den && r_frame_rate.num)
|
||||
+ rFrameRate = r_frame_rate.num / r_frame_rate.den;
|
||||
+ bool rFrameRateValid = rFrameRate >= 5 && rFrameRate <= 100;
|
||||
|
||||
- //average fps is more accurate for mkv files
|
||||
- if (m_bMatroska && pStream->avg_frame_rate.den && pStream->avg_frame_rate.num)
|
||||
- {
|
||||
- st->iFpsRate = pStream->avg_frame_rate.num;
|
||||
- st->iFpsScale = pStream->avg_frame_rate.den;
|
||||
- }
|
||||
- else if(r_frame_rate.den && r_frame_rate.num)
|
||||
+ if (rFrameRateValid)
|
||||
{
|
||||
st->iFpsRate = r_frame_rate.num;
|
||||
st->iFpsScale = r_frame_rate.den;
|
||||
}
|
||||
- else
|
||||
- {
|
||||
- st->iFpsRate = 0;
|
||||
- st->iFpsScale = 0;
|
||||
- }
|
||||
-
|
||||
- // added for aml hw decoder, mkv frame-rate can be wrong.
|
||||
- if (r_frame_rate.den && r_frame_rate.num)
|
||||
+ else if(pStream->avg_frame_rate.den && pStream->avg_frame_rate.num)
|
||||
{
|
||||
- st->irFpsRate = r_frame_rate.num;
|
||||
- st->irFpsScale = r_frame_rate.den;
|
||||
+ st->iFpsRate = pStream->avg_frame_rate.num;
|
||||
+ st->iFpsScale = pStream->avg_frame_rate.den;
|
||||
}
|
||||
else
|
||||
{
|
||||
- st->irFpsRate = 0;
|
||||
- st->irFpsScale = 0;
|
||||
+ st->iFpsRate = 0;
|
||||
+ st->iFpsScale = 0;
|
||||
}
|
||||
|
||||
if (pStream->codec_info_nb_frames > 0
|
||||
diff --git a/xbmc/cores/dvdplayer/DVDStreamInfo.cpp b/xbmc/cores/dvdplayer/DVDStreamInfo.cpp
|
||||
index c1dbd85..03facbe 100644
|
||||
--- a/xbmc/cores/dvdplayer/DVDStreamInfo.cpp
|
||||
+++ b/xbmc/cores/dvdplayer/DVDStreamInfo.cpp
|
||||
@@ -52,8 +52,6 @@ void CDVDStreamInfo::Clear()
|
||||
|
||||
fpsscale = 0;
|
||||
fpsrate = 0;
|
||||
- rfpsscale= 0;
|
||||
- rfpsrate = 0;
|
||||
height = 0;
|
||||
width = 0;
|
||||
aspect = 0.0;
|
||||
@@ -97,8 +95,6 @@ bool CDVDStreamInfo::Equal(const CDVDStreamInfo& right, bool withextradata)
|
||||
// VIDEO
|
||||
if( fpsscale != right.fpsscale
|
||||
|| fpsrate != right.fpsrate
|
||||
- || rfpsscale!= right.rfpsscale
|
||||
- || rfpsrate != right.rfpsrate
|
||||
|| height != right.height
|
||||
|| width != right.width
|
||||
|| stills != right.stills
|
||||
@@ -159,8 +155,6 @@ void CDVDStreamInfo::Assign(const CDVDStreamInfo& right, bool withextradata)
|
||||
// VIDEO
|
||||
fpsscale = right.fpsscale;
|
||||
fpsrate = right.fpsrate;
|
||||
- rfpsscale= right.rfpsscale;
|
||||
- rfpsrate = right.rfpsrate;
|
||||
height = right.height;
|
||||
width = right.width;
|
||||
aspect = right.aspect;
|
||||
@@ -220,8 +214,6 @@ void CDVDStreamInfo::Assign(const CDemuxStream& right, bool withextradata)
|
||||
const CDemuxStreamVideo *stream = static_cast<const CDemuxStreamVideo*>(&right);
|
||||
fpsscale = stream->iFpsScale;
|
||||
fpsrate = stream->iFpsRate;
|
||||
- rfpsscale = stream->irFpsScale;
|
||||
- rfpsrate = stream->irFpsRate;
|
||||
height = stream->iHeight;
|
||||
width = stream->iWidth;
|
||||
aspect = stream->fAspect;
|
||||
diff --git a/xbmc/cores/dvdplayer/DVDStreamInfo.h b/xbmc/cores/dvdplayer/DVDStreamInfo.h
|
||||
index c0e22a2..8953ff3 100644
|
||||
--- a/xbmc/cores/dvdplayer/DVDStreamInfo.h
|
||||
+++ b/xbmc/cores/dvdplayer/DVDStreamInfo.h
|
||||
@@ -58,8 +58,6 @@ public:
|
||||
// VIDEO
|
||||
int fpsscale; // scale of 1001 and a rate of 60000 will result in 59.94 fps
|
||||
int fpsrate;
|
||||
- int rfpsscale;
|
||||
- int rfpsrate;
|
||||
int height; // height of the stream reported by the demuxer
|
||||
int width; // width of the stream reported by the demuxer
|
||||
float aspect; // display aspect as reported by demuxer
|
||||
--
|
||||
2.1.4
|
||||
|
@ -1,19 +1,19 @@
|
||||
From 6aa16d7fe7e6dbe95bdca8069a16d2aa415adf37 Mon Sep 17 00:00:00 2001
|
||||
From a2adae2d6a5036b2af02448e6803175a02f368d1 Mon Sep 17 00:00:00 2001
|
||||
From: Alex Deryskyba <alex@codesnake.com>
|
||||
Date: Tue, 3 Feb 2015 17:58:19 +0100
|
||||
Subject: [PATCH 16/17] Disable deinterlacing for HD content while video is
|
||||
being played in a window to prevent screen blinking in 1080p50/60hz display
|
||||
modes
|
||||
Subject: [PATCH] [aml] Disable deinterlacing for HD content while video is
|
||||
being played in a window
|
||||
|
||||
... to prevent screen blinking in 1080p50/60hz display modes
|
||||
---
|
||||
xbmc/cores/dvdplayer/DVDCodecs/Video/AMLCodec.cpp | 5 +++++
|
||||
xbmc/cores/VideoPlayer/DVDCodecs/Video/AMLCodec.cpp | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/AMLCodec.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/AMLCodec.cpp
|
||||
index 2fad224..74804de 100644
|
||||
--- a/xbmc/cores/dvdplayer/DVDCodecs/Video/AMLCodec.cpp
|
||||
+++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/AMLCodec.cpp
|
||||
@@ -2261,6 +2261,11 @@ void CAMLCodec::SetVideoRect(const CRect &SrcRect, const CRect &DestRect)
|
||||
diff --git a/xbmc/cores/VideoPlayer/DVDCodecs/Video/AMLCodec.cpp b/xbmc/cores/VideoPlayer/DVDCodecs/Video/AMLCodec.cpp
|
||||
index 5dc6592..2103042 100644
|
||||
--- a/xbmc/cores/VideoPlayer/DVDCodecs/Video/AMLCodec.cpp
|
||||
+++ b/xbmc/cores/VideoPlayer/DVDCodecs/Video/AMLCodec.cpp
|
||||
@@ -2259,6 +2259,11 @@ void CAMLCodec::SetVideoRect(const CRect &SrcRect, const CRect &DestRect)
|
||||
CLog::Log(LOGDEBUG, "CAMLCodec::SetVideoRect:m_stereo_view(%d)", m_stereo_view);
|
||||
#endif
|
||||
|
||||
@ -25,6 +25,3 @@ index 2fad224..74804de 100644
|
||||
// goofy 0/1 based difference in aml axis coordinates.
|
||||
// fix them.
|
||||
dst_rect.x2--;
|
||||
--
|
||||
2.1.4
|
||||
|
||||
|
@ -1,18 +1,18 @@
|
||||
From 7b1c6ca4cb5bf3310cbfe3b007063439be301b6b Mon Sep 17 00:00:00 2001
|
||||
From 3e6754f46448b9718d57b62e8ca122e6217d0b22 Mon Sep 17 00:00:00 2001
|
||||
From: Alex Deryskyba <alex@codesnake.com>
|
||||
Date: Mon, 2 Mar 2015 09:48:14 +0100
|
||||
Subject: [PATCH 18/26] [aml] Fix stuttering during a playback of a video with
|
||||
23.976 FPS
|
||||
Subject: [PATCH] [aml] Fix stuttering during a playback of a video with 23.976
|
||||
FPS
|
||||
|
||||
---
|
||||
xbmc/cores/dvdplayer/DVDCodecs/Video/AMLCodec.cpp | 2 +-
|
||||
xbmc/cores/VideoPlayer/DVDCodecs/Video/AMLCodec.cpp | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/AMLCodec.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/AMLCodec.cpp
|
||||
index bf4c958..8d49de8 100644
|
||||
--- a/xbmc/cores/dvdplayer/DVDCodecs/Video/AMLCodec.cpp
|
||||
+++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/AMLCodec.cpp
|
||||
@@ -1932,7 +1932,7 @@ void CAMLCodec::Process()
|
||||
diff --git a/xbmc/cores/VideoPlayer/DVDCodecs/Video/AMLCodec.cpp b/xbmc/cores/VideoPlayer/DVDCodecs/Video/AMLCodec.cpp
|
||||
index 2103042..edf8f8a 100644
|
||||
--- a/xbmc/cores/VideoPlayer/DVDCodecs/Video/AMLCodec.cpp
|
||||
+++ b/xbmc/cores/VideoPlayer/DVDCodecs/Video/AMLCodec.cpp
|
||||
@@ -1974,7 +1974,7 @@ void CAMLCodec::Process()
|
||||
|
||||
double error = app_pts - (double)pts_video/PTS_FREQ;
|
||||
double abs_error = fabs(error);
|
||||
@ -21,6 +21,3 @@ index bf4c958..8d49de8 100644
|
||||
{
|
||||
//CLog::Log(LOGDEBUG, "CAMLCodec::Process pts diff = %f", error);
|
||||
if (abs_error > 0.150)
|
||||
--
|
||||
1.7.10.4
|
||||
|
||||
|
@ -0,0 +1,27 @@
|
||||
From 11435d47a5351c55ef12661baf1adb167da513ef Mon Sep 17 00:00:00 2001
|
||||
From: Alex Deryskyba <alex@codesnake.com>
|
||||
Date: Tue, 30 Jun 2015 11:19:57 +0200
|
||||
Subject: [PATCH] [aml] Ugly workaround to show DTS/AC3 caps
|
||||
|
||||
... but don't run into multi channel issues as we can only open 2 pcm channels
|
||||
---
|
||||
xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp b/xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp
|
||||
index 32ab888..d4eb0be 100644
|
||||
--- a/xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp
|
||||
+++ b/xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp
|
||||
@@ -1336,6 +1336,12 @@ void CAESinkALSA::EnumerateDevicesEx(AEDeviceInfoList &list, bool force)
|
||||
|
||||
AEDeviceType CAESinkALSA::AEDeviceTypeFromName(const std::string &name)
|
||||
{
|
||||
+#ifdef HAS_LIBAMCODEC
|
||||
+ // ugly workaround to show DTS / AC3 caps
|
||||
+ // but don't run into multi channel issues
|
||||
+ // as we can only open 2 pcm channels
|
||||
+ return AE_DEVTYPE_IEC958;
|
||||
+#endif
|
||||
if (name.substr(0, 4) == "hdmi")
|
||||
return AE_DEVTYPE_HDMI;
|
||||
else if (name.substr(0, 6) == "iec958" || name.substr(0, 5) == "spdif")
|
@ -0,0 +1,214 @@
|
||||
From c90b4c2ced393524e81c0ec321afa7ec94f3b806 Mon Sep 17 00:00:00 2001
|
||||
From: Alex Deryskyba <alex@codesnake.com>
|
||||
Date: Wed, 1 Jul 2015 23:37:11 +0200
|
||||
Subject: [PATCH] [aml] Add support for 4k resolutions
|
||||
|
||||
---
|
||||
xbmc/utils/AMLUtils.cpp | 16 +++---
|
||||
xbmc/windowing/egl/EGLNativeTypeAmlogic.cpp | 81 ++++++++++++++++++++++-------
|
||||
xbmc/windowing/egl/EGLNativeTypeAmlogic.h | 2 +
|
||||
3 files changed, 73 insertions(+), 26 deletions(-)
|
||||
|
||||
diff --git a/xbmc/utils/AMLUtils.cpp b/xbmc/utils/AMLUtils.cpp
|
||||
index 1b54435..05f2cd0 100644
|
||||
--- a/xbmc/utils/AMLUtils.cpp
|
||||
+++ b/xbmc/utils/AMLUtils.cpp
|
||||
@@ -449,8 +449,8 @@ bool aml_mode_to_resolution(const char *mode, RESOLUTION_INFO *res)
|
||||
}
|
||||
else if (StringUtils::EqualsNoCase(fromMode, "4k2ksmpte") || StringUtils::EqualsNoCase(fromMode, "smpte24hz"))
|
||||
{
|
||||
- res->iWidth = 1920;
|
||||
- res->iHeight= 1080;
|
||||
+ res->iWidth = 4096;
|
||||
+ res->iHeight= 2160;
|
||||
res->iScreenWidth = 4096;
|
||||
res->iScreenHeight= 2160;
|
||||
res->fRefreshRate = 24;
|
||||
@@ -467,8 +467,8 @@ bool aml_mode_to_resolution(const char *mode, RESOLUTION_INFO *res)
|
||||
}
|
||||
else if (StringUtils::EqualsNoCase(fromMode, "4k2k24hz") || StringUtils::EqualsNoCase(fromMode, "2160p24hz"))
|
||||
{
|
||||
- res->iWidth = 1920;
|
||||
- res->iHeight= 1080;
|
||||
+ res->iWidth = 3840;
|
||||
+ res->iHeight= 2160;
|
||||
res->iScreenWidth = 3840;
|
||||
res->iScreenHeight= 2160;
|
||||
res->fRefreshRate = 24;
|
||||
@@ -476,8 +476,8 @@ bool aml_mode_to_resolution(const char *mode, RESOLUTION_INFO *res)
|
||||
}
|
||||
else if (StringUtils::EqualsNoCase(fromMode, "4k2k25hz") || StringUtils::EqualsNoCase(fromMode, "2160p25hz"))
|
||||
{
|
||||
- res->iWidth = 1920;
|
||||
- res->iHeight= 1080;
|
||||
+ res->iWidth = 3840;
|
||||
+ res->iHeight= 2160;
|
||||
res->iScreenWidth = 3840;
|
||||
res->iScreenHeight= 2160;
|
||||
res->fRefreshRate = 25;
|
||||
@@ -494,8 +494,8 @@ bool aml_mode_to_resolution(const char *mode, RESOLUTION_INFO *res)
|
||||
}
|
||||
else if (StringUtils::EqualsNoCase(fromMode, "4k2k30hz") || StringUtils::EqualsNoCase(fromMode, "2160p30hz"))
|
||||
{
|
||||
- res->iWidth = 1920;
|
||||
- res->iHeight= 1080;
|
||||
+ res->iWidth = 3840;
|
||||
+ res->iHeight= 2160;
|
||||
res->iScreenWidth = 3840;
|
||||
res->iScreenHeight= 2160;
|
||||
res->fRefreshRate = 30;
|
||||
diff --git a/xbmc/windowing/egl/EGLNativeTypeAmlogic.cpp b/xbmc/windowing/egl/EGLNativeTypeAmlogic.cpp
|
||||
index 21256ef..2103f0b 100644
|
||||
--- a/xbmc/windowing/egl/EGLNativeTypeAmlogic.cpp
|
||||
+++ b/xbmc/windowing/egl/EGLNativeTypeAmlogic.cpp
|
||||
@@ -65,7 +65,22 @@ void CEGLNativeTypeAmlogic::Initialize()
|
||||
{
|
||||
aml_permissions();
|
||||
DisableFreeScale();
|
||||
+ GetMaxResolution(m_maxResolution);
|
||||
}
|
||||
+
|
||||
+void CEGLNativeTypeAmlogic::GetMaxResolution(RESOLUTION_INFO &maxResolution)
|
||||
+{
|
||||
+ std::vector<RESOLUTION_INFO> resolutions;
|
||||
+ ProbeResolutions(resolutions);
|
||||
+
|
||||
+ maxResolution = {0};
|
||||
+ for (size_t i = 0; i < resolutions.size(); i++)
|
||||
+ {
|
||||
+ if (resolutions[i].iScreenWidth > maxResolution.iScreenWidth || resolutions[i].iScreenHeight > maxResolution.iScreenHeight)
|
||||
+ maxResolution = resolutions[i];
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
void CEGLNativeTypeAmlogic::Destroy()
|
||||
{
|
||||
return;
|
||||
@@ -84,8 +99,8 @@ bool CEGLNativeTypeAmlogic::CreateNativeWindow()
|
||||
if (!nativeWindow)
|
||||
return false;
|
||||
|
||||
- nativeWindow->width = 1920;
|
||||
- nativeWindow->height = 1080;
|
||||
+ nativeWindow->width = m_maxResolution.iScreenWidth;
|
||||
+ nativeWindow->height = m_maxResolution.iScreenHeight;
|
||||
m_nativeWindow = nativeWindow;
|
||||
|
||||
SetFramebufferResolution(nativeWindow->width, nativeWindow->height);
|
||||
@@ -142,48 +157,78 @@ bool CEGLNativeTypeAmlogic::SetNativeResolution(const RESOLUTION_INFO &res)
|
||||
}
|
||||
#endif
|
||||
|
||||
- switch((int)(0.5 + res.fRefreshRate))
|
||||
+ switch((int)(res.fRefreshRate*10))
|
||||
{
|
||||
default:
|
||||
- case 60:
|
||||
+ case 600:
|
||||
switch(res.iScreenWidth)
|
||||
{
|
||||
default:
|
||||
case 1280:
|
||||
- SetDisplayResolution("720p");
|
||||
+ return SetDisplayResolution("720p");
|
||||
break;
|
||||
case 1920:
|
||||
if (res.dwFlags & D3DPRESENTFLAG_INTERLACED)
|
||||
- SetDisplayResolution("1080i");
|
||||
+ return SetDisplayResolution("1080i");
|
||||
else
|
||||
- SetDisplayResolution("1080p");
|
||||
+ return SetDisplayResolution("1080p");
|
||||
break;
|
||||
}
|
||||
break;
|
||||
- case 50:
|
||||
+ case 500:
|
||||
switch(res.iScreenWidth)
|
||||
{
|
||||
default:
|
||||
case 1280:
|
||||
- SetDisplayResolution("720p50hz");
|
||||
+ return SetDisplayResolution("720p50hz");
|
||||
break;
|
||||
case 1920:
|
||||
if (res.dwFlags & D3DPRESENTFLAG_INTERLACED)
|
||||
- SetDisplayResolution("1080i50hz");
|
||||
+ return SetDisplayResolution("1080i50hz");
|
||||
else
|
||||
- SetDisplayResolution("1080p50hz");
|
||||
+ return SetDisplayResolution("1080p50hz");
|
||||
break;
|
||||
}
|
||||
break;
|
||||
- case 30:
|
||||
- SetDisplayResolution("1080p30hz");
|
||||
+ case 300:
|
||||
+ switch(res.iScreenWidth)
|
||||
+ {
|
||||
+ case 3840:
|
||||
+ return SetDisplayResolution("4k2k30hz");
|
||||
+ break;
|
||||
+ default:
|
||||
+ return SetDisplayResolution("1080p30hz");
|
||||
+ break;
|
||||
+ }
|
||||
break;
|
||||
- case 24:
|
||||
- SetDisplayResolution("1080p24hz");
|
||||
+ case 250:
|
||||
+ switch(res.iScreenWidth)
|
||||
+ {
|
||||
+ case 3840:
|
||||
+ return SetDisplayResolution("4k2k25hz");
|
||||
+ break;
|
||||
+ default:
|
||||
+ return SetDisplayResolution("1080p25hz");
|
||||
+ break;
|
||||
+ }
|
||||
+ break;
|
||||
+ case 240:
|
||||
+ switch(res.iScreenWidth)
|
||||
+ {
|
||||
+ case 3840:
|
||||
+ return SetDisplayResolution("4k2k24hz");
|
||||
+ break;
|
||||
+ case 4096:
|
||||
+ return SetDisplayResolution("4k2ksmpte");
|
||||
+ break;
|
||||
+ default:
|
||||
+ return SetDisplayResolution("1080p24hz");
|
||||
+ break;
|
||||
+ }
|
||||
break;
|
||||
}
|
||||
|
||||
- return true;
|
||||
+ return false;
|
||||
}
|
||||
|
||||
bool CEGLNativeTypeAmlogic::ProbeResolutions(std::vector<RESOLUTION_INFO> &resolutions)
|
||||
@@ -280,8 +325,8 @@ void CEGLNativeTypeAmlogic::SetFramebufferResolution(int width, int height) cons
|
||||
{
|
||||
vinfo.xres = width;
|
||||
vinfo.yres = height;
|
||||
- vinfo.xres_virtual = 1920;
|
||||
- vinfo.yres_virtual = 2160;
|
||||
+ vinfo.xres_virtual = m_maxResolution.iScreenWidth;
|
||||
+ vinfo.yres_virtual = m_maxResolution.iScreenHeight * 2;
|
||||
vinfo.bits_per_pixel = 32;
|
||||
vinfo.activate = FB_ACTIVATE_ALL;
|
||||
ioctl(fd0, FBIOPUT_VSCREENINFO, &vinfo);
|
||||
diff --git a/xbmc/windowing/egl/EGLNativeTypeAmlogic.h b/xbmc/windowing/egl/EGLNativeTypeAmlogic.h
|
||||
index 6867c38..9ca41d4 100644
|
||||
--- a/xbmc/windowing/egl/EGLNativeTypeAmlogic.h
|
||||
+++ b/xbmc/windowing/egl/EGLNativeTypeAmlogic.h
|
||||
@@ -55,6 +55,8 @@ class CEGLNativeTypeAmlogic : public CEGLNativeType
|
||||
private:
|
||||
void SetFramebufferResolution(const RESOLUTION_INFO &res) const;
|
||||
void SetFramebufferResolution(int width, int height) const;
|
||||
+ void GetMaxResolution(RESOLUTION_INFO &maxResolution);
|
||||
|
||||
std::string m_framebuffer_name;
|
||||
+ RESOLUTION_INFO m_maxResolution;
|
||||
};
|
@ -1,8 +1,17 @@
|
||||
diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/Makefile.in b/xbmc/cores/dvdplayer/DVDCodecs/Video/Makefile.in
|
||||
index 8a97889..78506b1 100644
|
||||
--- a/xbmc/cores/dvdplayer/DVDCodecs/Video/Makefile.in
|
||||
+++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/Makefile.in
|
||||
@@ -27,8 +27,6 @@ endif
|
||||
From 42e367deff4886e825dc77606c76ee9835d6ee9e Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Saraev <stefan@saraev.ca>
|
||||
Date: Sat, 7 Nov 2015 16:24:58 +0200
|
||||
Subject: [PATCH] [wetek] fix compiler badness when compiling with amcodec
|
||||
|
||||
---
|
||||
xbmc/cores/VideoPlayer/DVDCodecs/Video/Makefile.in | 2 --
|
||||
1 file changed, 2 deletions(-)
|
||||
|
||||
diff --git a/xbmc/cores/VideoPlayer/DVDCodecs/Video/Makefile.in b/xbmc/cores/VideoPlayer/DVDCodecs/Video/Makefile.in
|
||||
index 7880c06..bd083b7 100644
|
||||
--- a/xbmc/cores/VideoPlayer/DVDCodecs/Video/Makefile.in
|
||||
+++ b/xbmc/cores/VideoPlayer/DVDCodecs/Video/Makefile.in
|
||||
@@ -25,8 +25,6 @@ endif
|
||||
ifeq (@USE_LIBAMCODEC@,1)
|
||||
SRCS += AMLCodec.cpp
|
||||
SRCS += DVDVideoCodecAmlogic.cpp
|
||||
|
@ -1,8 +1,18 @@
|
||||
From 55b3da7e97f6dc1e99724782253c35fe4c8b7c5a Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Saraev <stefan@saraev.ca>
|
||||
Date: Sat, 7 Nov 2015 16:25:44 +0200
|
||||
Subject: [PATCH] [wetek] perform suspend instead of powerdown
|
||||
|
||||
---
|
||||
system/keymaps/keyboard.xml | 2 +-
|
||||
xbmc/powermanagement/linux/LogindUPowerSyscall.cpp | 4 ++--
|
||||
2 files changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/system/keymaps/keyboard.xml b/system/keymaps/keyboard.xml
|
||||
index 45682a2..b8ce91b 100644
|
||||
index 9833cff..0ce105e 100644
|
||||
--- a/system/keymaps/keyboard.xml
|
||||
+++ b/system/keymaps/keyboard.xml
|
||||
@@ -96,7 +96,7 @@
|
||||
@@ -91,7 +91,7 @@
|
||||
<backslash>ToggleFullScreen</backslash>
|
||||
<home>FirstPage</home>
|
||||
<end>LastPage</end>
|
||||
@ -10,12 +20,12 @@ index 45682a2..b8ce91b 100644
|
||||
+ <power>XBMC.Powerdown()</power>
|
||||
<sleep>ActivateWindow(shutdownmenu)</sleep>
|
||||
<!-- PVR windows -->
|
||||
<e>XBMC.ActivateWindowAndFocus(MyPVR, 31,0, 10,0)</e>
|
||||
<e>ActivateWindow(TVGuide)</e>
|
||||
diff --git a/xbmc/powermanagement/linux/LogindUPowerSyscall.cpp b/xbmc/powermanagement/linux/LogindUPowerSyscall.cpp
|
||||
index 5a97fe6..369e790 100644
|
||||
index 4e5bcc6..ad5847d 100644
|
||||
--- a/xbmc/powermanagement/linux/LogindUPowerSyscall.cpp
|
||||
+++ b/xbmc/powermanagement/linux/LogindUPowerSyscall.cpp
|
||||
@@ -52,7 +52,7 @@ CLogindUPowerSyscall::CLogindUPowerSyscall()
|
||||
@@ -53,7 +53,7 @@ CLogindUPowerSyscall::CLogindUPowerSyscall()
|
||||
m_canPowerdown = LogindCheckCapability("CanPowerOff");
|
||||
m_canReboot = LogindCheckCapability("CanReboot");
|
||||
m_canHibernate = LogindCheckCapability("CanHibernate");
|
||||
@ -24,7 +34,7 @@ index 5a97fe6..369e790 100644
|
||||
|
||||
InhibitDelayLock();
|
||||
|
||||
@@ -97,7 +97,7 @@ CLogindUPowerSyscall::~CLogindUPowerSyscall()
|
||||
@@ -98,7 +98,7 @@ CLogindUPowerSyscall::~CLogindUPowerSyscall()
|
||||
|
||||
bool CLogindUPowerSyscall::Powerdown()
|
||||
{
|
||||
|
@ -1,22 +1,22 @@
|
||||
From a19578679f63520b0d8e9f589b82699076aff6ed Mon Sep 17 00:00:00 2001
|
||||
From: "Chris \"Koying\" Browet" <cbro@semperpax.com>
|
||||
From 0cdf5c043e783e8d956c5d59be8a9ec13a53fee3 Mon Sep 17 00:00:00 2001
|
||||
From: "Chris \\\"Koying\\\" Browet" <cbro@semperpax.com>
|
||||
Date: Fri, 19 Dec 2014 12:30:04 +0100
|
||||
Subject: [PATCH] FIX: [renderer] hide meaningless skips from users
|
||||
Subject: [PATCH] [aml] FIX: [renderer] hide meaningless skips from users
|
||||
|
||||
---
|
||||
xbmc/cores/VideoRenderers/RenderManager.cpp | 3 ++-
|
||||
xbmc/cores/VideoPlayer/VideoRenderers/RenderManager.cpp | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/xbmc/cores/VideoRenderers/RenderManager.cpp b/xbmc/cores/VideoRenderers/RenderManager.cpp
|
||||
index 7f43949..01327f5 100644
|
||||
--- a/xbmc/cores/VideoRenderers/RenderManager.cpp
|
||||
+++ b/xbmc/cores/VideoRenderers/RenderManager.cpp
|
||||
@@ -1198,7 +1198,8 @@ void CXBMCRenderManager::PrepareNextRender()
|
||||
diff --git a/xbmc/cores/VideoPlayer/VideoRenderers/RenderManager.cpp b/xbmc/cores/VideoPlayer/VideoRenderers/RenderManager.cpp
|
||||
index 70741be..15a484a 100644
|
||||
--- a/xbmc/cores/VideoPlayer/VideoRenderers/RenderManager.cpp
|
||||
+++ b/xbmc/cores/VideoPlayer/VideoRenderers/RenderManager.cpp
|
||||
@@ -1421,7 +1421,8 @@ void CRenderManager::PrepareNextRender()
|
||||
while(m_queued.front() != idx)
|
||||
{
|
||||
requeue(m_discard, m_queued);
|
||||
- m_QueueSkip++;
|
||||
+ if (m_format != RENDER_FMT_BYPASS) // skips scares users ;)
|
||||
+ if (m_format != RENDER_FMT_AML) // skips scares users ;)
|
||||
+ m_QueueSkip++;
|
||||
}
|
||||
|
||||
|
@ -58,13 +58,13 @@ echo "cleaning sources..."
|
||||
rm -rf $PKG_NAME-$PKG_VERSION/.git
|
||||
|
||||
echo "seperating theme..."
|
||||
rm -rf $PKG_NAME-theme-Confluence-$PKG_VERSION
|
||||
mv $PKG_NAME-$PKG_VERSION/addons/skin.confluence $PKG_NAME-theme-Confluence-$PKG_VERSION
|
||||
rm -rf $PKG_NAME-theme-Estuary-$PKG_VERSION
|
||||
mv $PKG_NAME-$PKG_VERSION/addons/skin.estuary $PKG_NAME-theme-Estuary-$PKG_VERSION
|
||||
|
||||
echo "packing sources..."
|
||||
tar cvJf $PKG_NAME-$PKG_VERSION.tar.xz $PKG_NAME-$PKG_VERSION
|
||||
tar cvJf $PKG_NAME-theme-Confluence-$PKG_VERSION.tar.xz $PKG_NAME-theme-Confluence-$PKG_VERSION
|
||||
tar cvJf $PKG_NAME-theme-Estuary-$PKG_VERSION.tar.xz $PKG_NAME-theme-Estuary-$PKG_VERSION
|
||||
|
||||
echo "remove temporary sourcedir..."
|
||||
rm -rf $PKG_NAME-$PKG_VERSION
|
||||
rm -rf $PKG_NAME-theme-Confluence-$PKG_VERSION
|
||||
rm -rf $PKG_NAME-theme-Estuary-$PKG_VERSION
|
||||
|
Loading…
x
Reference in New Issue
Block a user