diff options
author | Waldemar Brodkorb <wbx@openadk.org> | 2013-08-12 10:30:50 +0200 |
---|---|---|
committer | Waldemar Brodkorb <wbx@openadk.org> | 2013-08-12 10:30:50 +0200 |
commit | 8f16335443a322578274737c8d80ce557e4d2656 (patch) | |
tree | 947d42d781b409f72c9f0fa957d8796352f9b386 /package/xbmc | |
parent | 5212b6029108093bb3ac6d8386fd999fd00f2701 (diff) |
add xmbc package for raspberry-pi target
Diffstat (limited to 'package/xbmc')
38 files changed, 667 insertions, 0 deletions
diff --git a/package/xbmc/Makefile b/package/xbmc/Makefile new file mode 100644 index 000000000..cdffe1852 --- /dev/null +++ b/package/xbmc/Makefile @@ -0,0 +1,65 @@ +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +include $(TOPDIR)/rules.mk + +PKG_NAME:= xbmc +PKG_VERSION:= 12.2 +PKG_RELEASE:= 1 +PKG_MD5SUM:= 489f3877decae4e265ece54f9eaef0ba +PKG_DESCR:= software media player +PKG_SECTION:= multimedia +PKG_DEPENDS:= boost-shared libffmpeg python2 libstdcxx +PKG_DEPENDS+= libglew mesalib libass libmpeg2 libmad +PKG_DEPENDS+= libjpeg libogg libvorbis libmodplug libcurl +PKG_DEPENDS+= libflac libopenssl libbz2 libtiff liblzo +PKG_DEPENDS+= yajl tinyxml libsqlite libpcrecpp libpng +PKG_DEPENDS+= libpcre libcdio libfreetype libsamplerate +PKG_DEPENDS+= taglib libjasper libmp3lame libmicrohttpd +PKG_BUILDDEP:= boost ffmpeg python2 MesaLib libglew libass +PKG_BUILDDEP+= libmpeg2 libmad jpeg libogg libvorbis libmodplug +PKG_BUILDDEP+= curl flac openssl bzip2 libtiff liblzo yajl +PKG_BUILDDEP+= tinyxml sqlite pcre libpng libcdio freetype +PKG_BUILDDEP+= libsamplerate taglib libjasper lame libmicrohttpd +PKG_URL:= http://xbmc.org/ +PKG_SITES:= http://mirrors.xbmc.org/releases/source/ + +PKG_SYSTEM_DEPENDS:= raspberry-pi + +include $(TOPDIR)/mk/package.mk + +$(eval $(call PKG_template,XBMC,xbmc,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) + +XAKE_FLAGS+= V=1 TIXML_USE_STL=1 +XAKE_FLAGS+= GCC_HONOUR_COPTS=s +TARGET_CPPFLAGS+= -I$(STAGING_DIR)/usr/include/boost-1_54 \ + -DTIXML_USE_STL=1 \ + -I$(STAGING_DIR)/opt/vc/include \ + -I$(STAGING_DIR)/opt/vc/include/interface/vcos/pthreads \ + -I$(STAGING_DIR)/opt/vc/include/interface/vmcs_host/linux +TARGET_LDFLAGS+= -L$(STAGING_DIR)/opt/vc/lib -lkhrn_static +#TARGET_LDFLAGS+= -L$(STAGING_DIR)/opt/vc/lib -lkhrn_static -lX11 +CONFIGURE_ARGS+= --disable-optical-drive \ + --disable-ssh \ + --disable-samba \ + --disable-mysql \ + --enable-external-libraries \ + --enable-player=omxplayer \ + --enable-gles \ + --disable-sdl \ + --disable-joystick \ + --disable-x11 \ + --with-platform=raspberry-pi + +xbmc-install: + $(INSTALL_DIR) $(IDIR_XBMC)/usr/lib/xbmc + $(CP) $(WRKINST)/usr/lib/xbmc/* \ + $(IDIR_XBMC)/usr/lib/xbmc + $(INSTALL_DIR) $(IDIR_XBMC)/usr/share/xbmc + $(CP) $(WRKINST)/usr/share/xbmc/* \ + $(IDIR_XBMC)/usr/share/xbmc + $(INSTALL_DIR) $(IDIR_XBMC)/usr/bin + $(INSTALL_BIN) $(WRKINST)/usr/bin/xbmc \ + $(IDIR_XBMC)/usr/bin + +include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/xbmc/patches/patch-Makefile_include_in b/package/xbmc/patches/patch-Makefile_include_in new file mode 100644 index 000000000..2706f6698 --- /dev/null +++ b/package/xbmc/patches/patch-Makefile_include_in @@ -0,0 +1,10 @@ +--- xbmc-12.2.orig/Makefile.include.in 2013-05-03 07:57:40.000000000 +0200 ++++ xbmc-12.2/Makefile.include.in 2013-07-31 11:46:19.000000000 +0200 +@@ -32,6 +32,7 @@ CC=@CC@ + CXXFLAGS+=@CXXFLAGS@ + CFLAGS+=@CFLAGS@ + LDFLAGS+=@LDFLAGS@ ++INCLUDES+=@CPPFLAGS@ + INCLUDES+=-I@abs_top_srcdir@/lib + INCLUDES+=-I@abs_top_srcdir@/xbmc + INCLUDES+=$(sort @INCLUDES@) diff --git a/package/xbmc/patches/patch-configure b/package/xbmc/patches/patch-configure new file mode 100644 index 000000000..23c0e4bdb --- /dev/null +++ b/package/xbmc/patches/patch-configure @@ -0,0 +1,11 @@ +--- xbmc-12.2.orig/configure 2013-05-03 07:57:46.000000000 +0200 ++++ xbmc-12.2/configure 2013-07-31 14:45:10.000000000 +0200 +@@ -18629,7 +18629,7 @@ $as_echo "#define HAVE_LIBGLESV2 1" >>co + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: == WARNING: OpenGLES support is assumed." >&5 + $as_echo "== WARNING: OpenGLES support is assumed." >&6; } +- LIBS="$LIBS -lEGL -lGLESv2 -lbcm_host -lvcos -lvchiq_arm" ++ LIBS="$LIBS -lEGL -lGLESv2 -lbcm_host -lvcos -lvchiq_arm -lkhrn_static -lpthread -lm" + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lEGL" >&5 + $as_echo_n "checking for main in -lEGL... " >&6; } diff --git a/package/xbmc/patches/patch-lib_DllAvCodec_h b/package/xbmc/patches/patch-lib_DllAvCodec_h new file mode 100644 index 000000000..89b259d9c --- /dev/null +++ b/package/xbmc/patches/patch-lib_DllAvCodec_h @@ -0,0 +1,35 @@ +--- xbmc-12.2.orig/lib/DllAvCodec.h 2013-05-03 07:57:40.000000000 +0200 ++++ xbmc-12.2/lib/DllAvCodec.h 2013-07-31 12:23:26.000000000 +0200 +@@ -72,8 +72,8 @@ public: + virtual void avcodec_register_all(void)=0; + virtual void avcodec_flush_buffers(AVCodecContext *avctx)=0; + virtual int avcodec_open2_dont_call(AVCodecContext *avctx, AVCodec *codec, AVDictionary **options)=0; +- virtual AVCodec *avcodec_find_decoder(enum CodecID id)=0; +- virtual AVCodec *avcodec_find_encoder(enum CodecID id)=0; ++ virtual AVCodec *avcodec_find_decoder(enum AVCodecID id)=0; ++ virtual AVCodec *avcodec_find_encoder(enum AVCodecID id)=0; + virtual int avcodec_close_dont_call(AVCodecContext *avctx)=0; + virtual AVFrame *avcodec_alloc_frame(void)=0; + virtual int avpicture_fill(AVPicture *picture, uint8_t *ptr, PixelFormat pix_fmt, int width, int height)=0; +@@ -129,8 +129,8 @@ public: + } + virtual int avcodec_open2_dont_call(AVCodecContext *avctx, AVCodec *codec, AVDictionary **options) { *(volatile int *)0x0 = 0; return 0; } + virtual int avcodec_close_dont_call(AVCodecContext *avctx) { *(volatile int *)0x0 = 0; return 0; } +- virtual AVCodec *avcodec_find_decoder(enum CodecID id) { return ::avcodec_find_decoder(id); } +- virtual AVCodec *avcodec_find_encoder(enum CodecID id) { return ::avcodec_find_encoder(id); } ++ virtual AVCodec *avcodec_find_decoder(enum AVCodecID id) { return ::avcodec_find_decoder(id); } ++ virtual AVCodec *avcodec_find_encoder(enum AVCodecID id) { return ::avcodec_find_encoder(id); } + virtual int avcodec_close(AVCodecContext *avctx) + { + CSingleLock lock(DllAvCodec::m_critSection); +@@ -203,8 +203,8 @@ class DllAvCodec : public DllDynamic, Dl + LOAD_SYMBOLS(); + + DEFINE_METHOD0(void, avcodec_register_all_dont_call) +- DEFINE_METHOD1(AVCodec*, avcodec_find_decoder, (enum CodecID p1)) +- DEFINE_METHOD1(AVCodec*, avcodec_find_encoder, (enum CodecID p1)) ++ DEFINE_METHOD1(AVCodec*, avcodec_find_decoder, (enum AVCodecID p1)) ++ DEFINE_METHOD1(AVCodec*, avcodec_find_encoder, (enum AVCodecID p1)) + DEFINE_METHOD1(int, avcodec_close_dont_call, (AVCodecContext *p1)) + DEFINE_METHOD0(AVFrame*, avcodec_alloc_frame) + DEFINE_METHOD5(int, avpicture_fill, (AVPicture *p1, uint8_t *p2, PixelFormat p3, int p4, int p5)) diff --git a/package/xbmc/patches/patch-lib_DllAvFilter_h b/package/xbmc/patches/patch-lib_DllAvFilter_h new file mode 100644 index 000000000..9f1188165 --- /dev/null +++ b/package/xbmc/patches/patch-lib_DllAvFilter_h @@ -0,0 +1,46 @@ +--- xbmc-12.2.orig/lib/DllAvFilter.h 2013-05-03 07:57:40.000000000 +0200 ++++ xbmc-12.2/lib/DllAvFilter.h 2013-08-01 10:49:46.000000000 +0200 +@@ -45,6 +45,7 @@ extern "C" { + #if (defined HAVE_LIBAVFILTER_AVFILTER_H) + #include <libavfilter/avfiltergraph.h> + #include <libavfilter/buffersink.h> ++ #include <libavfilter/buffersrc.h> + #include <libavfilter/avcodec.h> + #elif (defined HAVE_FFMPEG_AVFILTER_H) + #include <ffmpeg/avfiltergraph.h> +@@ -77,7 +78,7 @@ public: + #if LIBAVFILTER_VERSION_INT < AV_VERSION_INT(3,0,0) + virtual int av_vsrc_buffer_add_frame(AVFilterContext *buffer_filter, AVFrame *frame, int flags)=0; + #else +- virtual int av_buffersrc_add_frame(AVFilterContext *buffer_filter, AVFrame *frame, int flags)=0; ++ virtual int av_buffersrc_add_frame_flags(AVFilterContext *buffer_filter, AVFrame *frame, int flags)=0; + #endif + virtual void avfilter_unref_buffer(AVFilterBufferRef *ref)=0; + virtual int avfilter_link(AVFilterContext *src, unsigned srcpad, AVFilterContext *dst, unsigned dstpad)=0; +@@ -137,7 +138,7 @@ public: + #if LIBAVFILTER_VERSION_INT < AV_VERSION_INT(3,0,0) + virtual int av_vsrc_buffer_add_frame(AVFilterContext *buffer_filter, AVFrame *frame, int flags) { return ::av_vsrc_buffer_add_frame(buffer_filter, frame, flags); } + #else +- virtual int av_buffersrc_add_frame(AVFilterContext *buffer_filter, AVFrame* frame, int flags) { return ::av_buffersrc_add_frame(buffer_filter, frame, flags); } ++ virtual int av_buffersrc_add_frame_flags(AVFilterContext *buffer_filter, AVFrame* frame, int flags) { return ::av_buffersrc_add_frame_flags(buffer_filter, frame, flags); } + #endif + virtual void avfilter_unref_buffer(AVFilterBufferRef *ref) { ::avfilter_unref_buffer(ref); } + virtual int avfilter_link(AVFilterContext *src, unsigned srcpad, AVFilterContext *dst, unsigned dstpad) { return ::avfilter_link(src, srcpad, dst, dstpad); } +@@ -175,7 +176,7 @@ class DllAvFilter : public DllDynamic, D + #if LIBAVFILTER_VERSION_INT < AV_VERSION_INT(3,0,0) + DEFINE_METHOD3(int, av_vsrc_buffer_add_frame, (AVFilterContext *p1, AVFrame *p2, int p3)) + #else +- DEFINE_METHOD3(int, av_buffersrc_add_frame, (AVFilterContext *p1, AVFrame *p2, int p3)) ++ DEFINE_METHOD3(int, av_buffersrc_add_frame_flag, (AVFilterContext *p1, AVFrame *p2, int p3)) + #endif + DEFINE_METHOD1(void, avfilter_unref_buffer, (AVFilterBufferRef *p1)) + DEFINE_METHOD4(int, avfilter_link, (AVFilterContext *p1, unsigned p2, AVFilterContext *p3, unsigned p4)) +@@ -198,7 +199,7 @@ class DllAvFilter : public DllDynamic, D + #if LIBAVFILTER_VERSION_INT < AV_VERSION_INT(3,0,0) + RESOLVE_METHOD(av_vsrc_buffer_add_frame) + #else +- RESOLVE_METHOD(av_buffersrc_add_frame) ++ RESOLVE_METHOD(av_buffersrc_add_frame_flag) + #endif + RESOLVE_METHOD(avfilter_unref_buffer) + RESOLVE_METHOD(avfilter_link) diff --git a/package/xbmc/patches/patch-tools_Linux_xbmc_sh_in b/package/xbmc/patches/patch-tools_Linux_xbmc_sh_in new file mode 100644 index 000000000..a08eb0a94 --- /dev/null +++ b/package/xbmc/patches/patch-tools_Linux_xbmc_sh_in @@ -0,0 +1,15 @@ +--- xbmc-12.2.orig/tools/Linux/xbmc.sh.in 2013-05-03 07:57:41.000000000 +0200 ++++ xbmc-12.2/tools/Linux/xbmc.sh.in 2013-08-05 16:24:14.000000000 +0200 +@@ -107,12 +107,6 @@ print_crash_report() + echo "Crash report available at $FILE" + } + +-python @datadir@/xbmc/FEH.py $SAVED_ARGS +-RET=$? +-if [ $RET -ne 0 ]; then +- exit $RET +-fi +- + if which gdb >/dev/null 2>&1; then + # Output warning in case ulimit is unsupported by shell + eval ulimit -c unlimited diff --git a/package/xbmc/patches/patch-tools_TexturePacker_XBMCTex_cpp b/package/xbmc/patches/patch-tools_TexturePacker_XBMCTex_cpp new file mode 100644 index 000000000..81b0b931d --- /dev/null +++ b/package/xbmc/patches/patch-tools_TexturePacker_XBMCTex_cpp @@ -0,0 +1,17 @@ +--- xbmc-12.2.orig/tools/TexturePacker/XBMCTex.cpp 2013-05-03 07:57:41.000000000 +0200 ++++ xbmc-12.2/tools/TexturePacker/XBMCTex.cpp 2013-08-01 16:12:13.000000000 +0200 +@@ -35,12 +35,12 @@ + #include <SDL/SDL_image.h> + #undef main + +-#include "guilib/XBTF.h" ++#include "../../xbmc/guilib/XBTF.h" + #include "XBTFWriter.h" + #include "md5.h" + #include "SDL_anigif.h" + #include "cmdlineargs.h" +-#include "libsquish/squish.h" ++#include "../../lib/libsquish/squish.h" + + #ifdef _WIN32 + #define strncasecmp strnicmp diff --git a/package/xbmc/patches/patch-tools_TexturePacker_XBTFWriter_cpp b/package/xbmc/patches/patch-tools_TexturePacker_XBTFWriter_cpp new file mode 100644 index 000000000..91be356a7 --- /dev/null +++ b/package/xbmc/patches/patch-tools_TexturePacker_XBTFWriter_cpp @@ -0,0 +1,13 @@ +--- xbmc-12.2.orig/tools/TexturePacker/XBTFWriter.cpp 2013-05-03 07:57:41.000000000 +0200 ++++ xbmc-12.2/tools/TexturePacker/XBTFWriter.cpp 2013-08-01 13:50:44.000000000 +0200 +@@ -22,8 +22,8 @@ + #include "XBTFWriter.h" + #define __STDC_FORMAT_MACROS + #include <inttypes.h> +-#include "guilib/XBTF.h" +-#include "utils/EndianSwap.h" ++#include "../../xbmc/guilib/XBTF.h" ++#include "../../xbmc/utils/EndianSwap.h" + #if defined(__FreeBSD__) + #include <stdlib.h> + #elif !defined(__APPLE__) diff --git a/package/xbmc/patches/patch-tools_TexturePacker_cmdlineargs_h b/package/xbmc/patches/patch-tools_TexturePacker_cmdlineargs_h new file mode 100644 index 000000000..efded26b5 --- /dev/null +++ b/package/xbmc/patches/patch-tools_TexturePacker_cmdlineargs_h @@ -0,0 +1,11 @@ +--- xbmc-12.2.orig/tools/TexturePacker/cmdlineargs.h 2013-05-03 07:57:41.000000000 +0200 ++++ xbmc-12.2/tools/TexturePacker/cmdlineargs.h 2013-08-01 14:37:40.000000000 +0200 +@@ -23,7 +23,7 @@ + */ + + #ifdef _LINUX +-#include "PlatformDefs.h" ++#include "../../xbmc/linux/PlatformDefs.h" + #include "xwinapi.h" + typedef LPSTR PSZ; + #define _snprintf snprintf diff --git a/package/xbmc/patches/patch-tools_TexturePacker_xwinapi_h b/package/xbmc/patches/patch-tools_TexturePacker_xwinapi_h new file mode 100644 index 000000000..1cc7efdc1 --- /dev/null +++ b/package/xbmc/patches/patch-tools_TexturePacker_xwinapi_h @@ -0,0 +1,11 @@ +--- xbmc-12.2.orig/tools/TexturePacker/xwinapi.h 2013-05-03 07:57:41.000000000 +0200 ++++ xbmc-12.2/tools/TexturePacker/xwinapi.h 2013-08-01 15:51:48.000000000 +0200 +@@ -22,7 +22,7 @@ + * + */ + +-#include "PlatformDefs.h" ++#include "../../xbmc/linux/PlatformDefs.h" + + LPTSTR GetCommandLine(); + DWORD GetCurrentDirectory(DWORD nBufferLength, LPTSTR lpBuffer); diff --git a/package/xbmc/patches/patch-xbmc_cdrip_EncoderFFmpeg_h b/package/xbmc/patches/patch-xbmc_cdrip_EncoderFFmpeg_h new file mode 100644 index 000000000..080fc7d2c --- /dev/null +++ b/package/xbmc/patches/patch-xbmc_cdrip_EncoderFFmpeg_h @@ -0,0 +1,11 @@ +--- xbmc-12.2.orig/xbmc/cdrip/EncoderFFmpeg.h 2013-05-03 07:57:41.000000000 +0200 ++++ xbmc-12.2/xbmc/cdrip/EncoderFFmpeg.h 2013-07-31 12:34:15.000000000 +0200 +@@ -26,6 +26,8 @@ + #include "DllAvCodec.h" + #include "DllAvUtil.h" + ++#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 ++ + class CEncoderFFmpeg : public CEncoder + { + public: diff --git a/package/xbmc/patches/patch-xbmc_cores_AudioEngine_Encoders_AEEncoderFFmpeg_cpp b/package/xbmc/patches/patch-xbmc_cores_AudioEngine_Encoders_AEEncoderFFmpeg_cpp new file mode 100644 index 000000000..aeabd9a4f --- /dev/null +++ b/package/xbmc/patches/patch-xbmc_cores_AudioEngine_Encoders_AEEncoderFFmpeg_cpp @@ -0,0 +1,11 @@ +--- xbmc-12.2.orig/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.cpp 2013-05-03 07:57:41.000000000 +0200 ++++ xbmc-12.2/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.cpp 2013-07-31 12:56:28.000000000 +0200 +@@ -226,7 +226,7 @@ unsigned int CAEEncoderFFmpeg::GetBitRat + return m_BitRate; + } + +-CodecID CAEEncoderFFmpeg::GetCodecID() ++AVCodecID CAEEncoderFFmpeg::GetCodecID() + { + return m_CodecID; + } diff --git a/package/xbmc/patches/patch-xbmc_cores_AudioEngine_Encoders_AEEncoderFFmpeg_h b/package/xbmc/patches/patch-xbmc_cores_AudioEngine_Encoders_AEEncoderFFmpeg_h new file mode 100644 index 000000000..6926ff5dc --- /dev/null +++ b/package/xbmc/patches/patch-xbmc_cores_AudioEngine_Encoders_AEEncoderFFmpeg_h @@ -0,0 +1,20 @@ +--- xbmc-12.2.orig/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.h 2013-05-03 07:57:41.000000000 +0200 ++++ xbmc-12.2/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.h 2013-07-31 12:47:10.000000000 +0200 +@@ -39,7 +39,7 @@ public: + virtual void Reset(); + + virtual unsigned int GetBitRate (); +- virtual CodecID GetCodecID (); ++ virtual AVCodecID GetCodecID (); + virtual unsigned int GetFrames (); + + virtual int Encode (float *data, unsigned int frames); +@@ -51,7 +51,7 @@ private: + DllAvUtil m_dllAvUtil; + + std::string m_CodecName; +- CodecID m_CodecID; ++ AVCodecID m_CodecID; + unsigned int m_BitRate; + CAEPackIEC61937::PackFunc m_PackFunc; + diff --git a/package/xbmc/patches/patch-xbmc_cores_AudioEngine_Interfaces_AEEncoder_h b/package/xbmc/patches/patch-xbmc_cores_AudioEngine_Interfaces_AEEncoder_h new file mode 100644 index 000000000..1559ae28b --- /dev/null +++ b/package/xbmc/patches/patch-xbmc_cores_AudioEngine_Interfaces_AEEncoder_h @@ -0,0 +1,15 @@ +--- xbmc-12.2.orig/xbmc/cores/AudioEngine/Interfaces/AEEncoder.h 2013-05-03 07:57:41.000000000 +0200 ++++ xbmc-12.2/xbmc/cores/AudioEngine/Interfaces/AEEncoder.h 2013-07-31 12:50:47.000000000 +0200 +@@ -64,10 +64,10 @@ public: + virtual unsigned int GetBitRate() = 0; + + /** +- * Returns the CodecID of the encoder ++ * Returns the AVCodecID of the encoder + * @return the ffmpeg codec id + */ +- virtual CodecID GetCodecID() = 0; ++ virtual AVCodecID GetCodecID() = 0; + + /** + * Return the number of frames needed to encode diff --git a/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDAudio_cpp b/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDAudio_cpp new file mode 100644 index 000000000..a4702f82c --- /dev/null +++ b/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDAudio_cpp @@ -0,0 +1,11 @@ +--- xbmc-12.2.orig/xbmc/cores/dvdplayer/DVDAudio.cpp 2013-05-03 07:57:41.000000000 +0200 ++++ xbmc-12.2/xbmc/cores/dvdplayer/DVDAudio.cpp 2013-07-31 13:31:59.000000000 +0200 +@@ -116,7 +116,7 @@ CDVDAudio::~CDVDAudio() + free(m_pBuffer); + } + +-bool CDVDAudio::Create(const DVDAudioFrame &audioframe, CodecID codec, bool needresampler) ++bool CDVDAudio::Create(const DVDAudioFrame &audioframe, AVCodecID codec, bool needresampler) + { + CLog::Log(LOGNOTICE, + "Creating audio stream (codec id: %i, channels: %i, sample rate: %i, %s)", diff --git a/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDAudio_h b/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDAudio_h new file mode 100644 index 000000000..6e1e9e018 --- /dev/null +++ b/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDAudio_h @@ -0,0 +1,20 @@ +--- xbmc-12.2.orig/xbmc/cores/dvdplayer/DVDAudio.h 2013-05-03 07:57:41.000000000 +0200 ++++ xbmc-12.2/xbmc/cores/dvdplayer/DVDAudio.h 2013-07-31 13:29:46.000000000 +0200 +@@ -31,7 +31,7 @@ + class IAEStream; + + #ifndef _LINUX +-enum CodecID; ++enum AVCodecID; + #else + extern "C" { + #if (defined USE_EXTERNAL_FFMPEG) +@@ -80,7 +80,7 @@ public: + float GetCurrentAttenuation(); + void Pause(); + void Resume(); +- bool Create(const DVDAudioFrame &audioframe, CodecID codec, bool needresampler); ++ bool Create(const DVDAudioFrame &audioframe, AVCodecID codec, bool needresampler); + bool IsValidFormat(const DVDAudioFrame &audioframe); + void Destroy(); + DWORD AddPackets(const DVDAudioFrame &audioframe); diff --git a/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_Audio_DVDAudioCodecFFmpeg_cpp b/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_Audio_DVDAudioCodecFFmpeg_cpp new file mode 100644 index 000000000..7d0f6f63c --- /dev/null +++ b/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_Audio_DVDAudioCodecFFmpeg_cpp @@ -0,0 +1,11 @@ +--- xbmc-12.2.orig/xbmc/cores/dvdplayer/DVDCodecs/Audio/DVDAudioCodecFFmpeg.cpp 2013-05-03 07:57:41.000000000 +0200 ++++ xbmc-12.2/xbmc/cores/dvdplayer/DVDCodecs/Audio/DVDAudioCodecFFmpeg.cpp 2013-08-01 16:38:47.000000000 +0200 +@@ -26,6 +26,8 @@ + #include "utils/log.h" + #include "settings/GUISettings.h" + ++#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 ++ + CDVDAudioCodecFFmpeg::CDVDAudioCodecFFmpeg() : CDVDAudioCodec() + { + m_iBufferSize1 = 0; diff --git a/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_Audio_DVDAudioCodecLPcm_h b/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_Audio_DVDAudioCodecLPcm_h new file mode 100644 index 000000000..f33663dd0 --- /dev/null +++ b/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_Audio_DVDAudioCodecLPcm_h @@ -0,0 +1,17 @@ +--- xbmc-12.2.orig/xbmc/cores/dvdplayer/DVDCodecs/Audio/DVDAudioCodecLPcm.h 2013-05-03 07:57:41.000000000 +0200 ++++ xbmc-12.2/xbmc/cores/dvdplayer/DVDCodecs/Audio/DVDAudioCodecLPcm.h 2013-08-01 16:40:52.000000000 +0200 +@@ -24,6 +24,7 @@ + #include "DVDCodecs/DVDCodecs.h" + #include "DVDAudioCodecPcm.h" + ++#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 + #define LPCM_BUFFER_SIZE (AVCODEC_MAX_AUDIO_FRAME_SIZE / 2) + + class CDVDAudioCodecLPcm : public CDVDAudioCodecPcm +@@ -40,5 +41,5 @@ protected: + int m_bufferSize; + BYTE m_buffer[LPCM_BUFFER_SIZE]; + +- CodecID m_codecID; ++ AVCodecID m_codecID; + }; diff --git a/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_Audio_DVDAudioCodecPassthroughFFmpeg_h b/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_Audio_DVDAudioCodecPassthroughFFmpeg_h new file mode 100644 index 000000000..1399c9b6f --- /dev/null +++ b/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_Audio_DVDAudioCodecPassthroughFFmpeg_h @@ -0,0 +1,20 @@ +--- xbmc-12.2.orig/xbmc/cores/dvdplayer/DVDCodecs/Audio/DVDAudioCodecPassthroughFFmpeg.h 2013-05-03 07:57:41.000000000 +0200 ++++ xbmc-12.2/xbmc/cores/dvdplayer/DVDCodecs/Audio/DVDAudioCodecPassthroughFFmpeg.h 2013-08-01 16:41:17.000000000 +0200 +@@ -28,6 +28,8 @@ + + #include "DVDAudioCodec.h" + ++#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 ++ + class CDVDAudioCodecPassthroughFFmpeg : public CDVDAudioCodec + { + public: +@@ -94,7 +96,7 @@ private: + unsigned int m_Needed; + bool m_LostSync; + int m_SampleRate; +- CodecID m_codec; ++ AVCodecID m_codec; + + unsigned int (CDVDAudioCodecPassthroughFFmpeg::*m_pSyncFrame)(BYTE* pData, unsigned int iSize, unsigned int *fSize); + unsigned int SyncAC3(BYTE* pData, unsigned int iSize, unsigned int *fSize); diff --git a/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_Audio_DVDAudioCodecPcm_cpp b/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_Audio_DVDAudioCodecPcm_cpp new file mode 100644 index 000000000..b89e92b69 --- /dev/null +++ b/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_Audio_DVDAudioCodecPcm_cpp @@ -0,0 +1,11 @@ +--- xbmc-12.2.orig/xbmc/cores/dvdplayer/DVDCodecs/Audio/DVDAudioCodecPcm.cpp 2013-05-03 07:57:41.000000000 +0200 ++++ xbmc-12.2/xbmc/cores/dvdplayer/DVDCodecs/Audio/DVDAudioCodecPcm.cpp 2013-08-01 16:40:23.000000000 +0200 +@@ -22,6 +22,8 @@ + #include "DVDStreamInfo.h" + #include "DVDCodecs/DVDCodecs.h" + ++#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 ++ + /* from g711.c by SUN microsystems (unrestricted use) */ + #define SIGN_BIT (0x80) /* Sign bit for a A-law byte. */ + #define QUANT_MASK (0xf) /* Quantization field mask. */ diff --git a/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_Audio_DVDAudioCodecPcm_h b/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_Audio_DVDAudioCodecPcm_h new file mode 100644 index 000000000..ea08c992b --- /dev/null +++ b/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_Audio_DVDAudioCodecPcm_h @@ -0,0 +1,11 @@ +--- xbmc-12.2.orig/xbmc/cores/dvdplayer/DVDCodecs/Audio/DVDAudioCodecPcm.h 2013-05-03 07:57:41.000000000 +0200 ++++ xbmc-12.2/xbmc/cores/dvdplayer/DVDCodecs/Audio/DVDAudioCodecPcm.h 2013-07-31 13:30:38.000000000 +0200 +@@ -44,7 +44,7 @@ protected: + short m_decodedData[131072]; // could be a bit to big + int m_decodedDataSize; + +- CodecID m_codecID; ++ AVCodecID m_codecID; + int m_iSourceSampleRate; + int m_iSourceChannels; + int m_iSourceBitrate; diff --git a/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_DVDCodecs_h b/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_DVDCodecs_h new file mode 100644 index 000000000..6fc61ac63 --- /dev/null +++ b/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_DVDCodecs_h @@ -0,0 +1,11 @@ +--- xbmc-12.2.orig/xbmc/cores/dvdplayer/DVDCodecs/DVDCodecs.h 2013-05-03 07:57:41.000000000 +0200 ++++ xbmc-12.2/xbmc/cores/dvdplayer/DVDCodecs/DVDCodecs.h 2013-07-31 13:30:54.000000000 +0200 +@@ -23,7 +23,7 @@ + #if (defined HAVE_CONFIG_H) && (!defined WIN32) + #include "config.h" + #endif +-// enum CodecID ++// enum AVCodecID + + #include <string> + #include <vector> diff --git a/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_Overlay_DVDOverlayCodecFFmpeg_cpp b/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_Overlay_DVDOverlayCodecFFmpeg_cpp new file mode 100644 index 000000000..6f890a386 --- /dev/null +++ b/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_Overlay_DVDOverlayCodecFFmpeg_cpp @@ -0,0 +1,11 @@ +--- xbmc-12.2.orig/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp 2013-05-03 07:57:41.000000000 +0200 ++++ xbmc-12.2/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp 2013-08-01 17:02:17.000000000 +0200 +@@ -60,7 +60,7 @@ bool CDVDOverlayCodecFFmpeg::Open(CDVDSt + m_pCodecContext->debug_mv = 0; + m_pCodecContext->debug = 0; + m_pCodecContext->workaround_bugs = FF_BUG_AUTODETECT; +- m_pCodecContext->sub_id = hints.identifier; ++ //m_pCodecContext->sub_id = hints.identifier; + m_pCodecContext->codec_tag = hints.codec_tag; + m_pCodecContext->time_base.num = 1; + m_pCodecContext->time_base.den = DVD_TIME_BASE; diff --git a/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_Video_DVDVideoCodecFFmpeg_cpp b/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_Video_DVDVideoCodecFFmpeg_cpp new file mode 100644 index 000000000..70565968f --- /dev/null +++ b/package/xbmc/patches/patch-xbmc_cores_dvdplayer_DVDCodecs_Video_DVDVideoCodecFFmpeg_cpp @@ -0,0 +1,28 @@ +--- xbmc-12.2.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp 2013-05-03 07:57:41.000000000 +0200 ++++ xbmc-12.2/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp 2013-08-01 17:31:00.000000000 +0200 +@@ -273,7 +273,7 @@ bool CDVDVideoCodecFFmpeg::Open(CDVDStre + } + + // set acceleration +- m_pCodecContext->dsp_mask = 0;//FF_MM_FORCE | FF_MM_MMX | FF_MM_MMXEXT | FF_MM_SSE; ++ //m_pCodecContext->dsp_mask = 0;//FF_MM_FORCE | FF_MM_MMX | FF_MM_MMXEXT | FF_MM_SSE; + + // advanced setting override for skip loop filter (see avcodec.h for valid options) + // TODO: allow per video setting? +@@ -799,14 +799,14 @@ int CDVDVideoCodecFFmpeg::F |