diff --git a/packages/mediacenter/xbmc-theme-Confluence/meta b/packages/mediacenter/xbmc-theme-Confluence/meta index 79dc213896..cefea3bfb4 100644 --- a/packages/mediacenter/xbmc-theme-Confluence/meta +++ b/packages/mediacenter/xbmc-theme-Confluence/meta @@ -21,7 +21,7 @@ PKG_NAME="xbmc-theme-Confluence" PKG_VERSION="12.1.6" if [ "$XBMC" = "master" ]; then - PKG_VERSION="74fa128" + PKG_VERSION="83b16d0" fi PKG_REV="1" PKG_ARCH="any" diff --git a/packages/mediacenter/xbmc/meta b/packages/mediacenter/xbmc/meta index fc11eea358..af41b21085 100644 --- a/packages/mediacenter/xbmc/meta +++ b/packages/mediacenter/xbmc/meta @@ -21,7 +21,7 @@ PKG_NAME="xbmc" PKG_VERSION="12.1.6" if [ "$XBMC" = "master" ]; then - PKG_VERSION="74fa128" + PKG_VERSION="83b16d0" fi PKG_REV="1" PKG_ARCH="any" diff --git a/packages/mediacenter/xbmc/patches/74fa128/xbmc-999.05-PR2597.patch b/packages/mediacenter/xbmc/patches/74fa128/xbmc-999.05-PR2597.patch deleted file mode 100644 index 92cccfa75f..0000000000 --- a/packages/mediacenter/xbmc/patches/74fa128/xbmc-999.05-PR2597.patch +++ /dev/null @@ -1,523 +0,0 @@ -From e79c8dbe78ad970f74c7af8f19ab8037cf43ae07 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?David=20H=C3=A4rdeman?= -Date: Mon, 1 Apr 2013 22:25:52 +0200 -Subject: [PATCH 1/7] ffmpeg compatibility fix for matroska embedded subtitles - -Commit 2626cc4580bfd560c6983338d77b2c11c16af94f in the ffmpeg repo -changed the codec id of matroska embedded S_TEXT/UTF-8 subtitles -from CODEC_ID_TEXT to AV_CODEC_ID_SUBRIP. That commit is part of -ffmpeg 1.0 and later. - -Add the new codec id to provide compatibility for the updated -ffmpeg library and external ffmpeg libraries. ---- - lib/DllAvCodec.h | 6 ++++++ - xbmc/cores/dvdplayer/DVDCodecs/DVDFactoryCodec.cpp | 6 ++++++ - xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecText.cpp | 7 +++++++ - xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecText.h | 1 + - 4 files changed, 20 insertions(+) - -diff --git a/lib/DllAvCodec.h b/lib/DllAvCodec.h -index a285204..2b4ee22 100644 ---- a/lib/DllAvCodec.h -+++ b/lib/DllAvCodec.h -@@ -63,6 +63,12 @@ - #endif - } - -+#if LIBAVCODEC_VERSION_MICRO >= 100 -+ #define LIBAVCODEC_FROM_FFMPEG -+#else -+ #define LIBAVCODEC_FROM_LIBAV -+#endif -+ - #include "threads/SingleLock.h" - - class DllAvCodecInterface -diff --git a/xbmc/cores/dvdplayer/DVDCodecs/DVDFactoryCodec.cpp b/xbmc/cores/dvdplayer/DVDCodecs/DVDFactoryCodec.cpp -index eedde21..4ea6617 100644 ---- a/xbmc/cores/dvdplayer/DVDCodecs/DVDFactoryCodec.cpp -+++ b/xbmc/cores/dvdplayer/DVDCodecs/DVDFactoryCodec.cpp -@@ -348,6 +348,12 @@ CDVDOverlayCodec* CDVDFactoryCodec::CreateOverlayCodec( CDVDStreamInfo &hint ) - switch (hint.codec) - { - case CODEC_ID_TEXT: -+#if defined(LIBAVCODEC_FROM_FFMPEG) && LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(54,53,100) -+ // API changed in: -+ // ffmpeg: commit 2626cc4580bfd560c6983338d77b2c11c16af94f (11 Aug 2012) -+ // release 1.0 (28 Sept 2012) -+ case AV_CODEC_ID_SUBRIP: -+#endif - pCodec = OpenCodec(new CDVDOverlayCodecText(), hint, options); - if( pCodec ) return pCodec; - break; -diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecText.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecText.cpp -index 108284b..8f839f0 100644 ---- a/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecText.cpp -+++ b/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecText.cpp -@@ -44,6 +44,13 @@ bool CDVDOverlayCodecText::Open(CDVDStreamInfo &hints, CDVDCodecOptions &options - m_bIsSSA = (hints.codec == CODEC_ID_SSA); - if(hints.codec == CODEC_ID_TEXT || hints.codec == CODEC_ID_SSA) - return true; -+#if defined(LIBAVCODEC_FROM_FFMPEG) && LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(54,53,100) -+ // API changed in: -+ // ffmpeg: commit 2626cc4580bfd560c6983338d77b2c11c16af94f (11 Aug 2012) -+ // release 1.0 (28 Sept 2012) -+ if(hints.codec == AV_CODEC_ID_SUBRIP) -+ return true; -+#endif - return false; - } - -diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecText.h b/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecText.h -index dbf8f3a..815bfd3 100644 ---- a/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecText.h -+++ b/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecText.h -@@ -21,6 +21,7 @@ - */ - - #include "DVDOverlayCodec.h" -+#include "DllAvCodec.h" - - class CDVDOverlayText; - --- -1.8.1.5 - - -From dca3a12e1aafca8e154db8656f88448ba1151eac Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?David=20H=C3=A4rdeman?= -Date: Sun, 7 Apr 2013 14:43:21 +0200 -Subject: [PATCH 2/7] Remove obsolete ffmpeg version check (52,0,0) - -This test (which presumably checks for LIBAVCODEC_VERSION_MAJOR >= 52) -seems both obsolete and incorrect. The major version is shifted 16 bits, -not 12. Major version 52 was introduced in commit -dd1c8f3e6e5380f993c86750bb09fd42e130143f (from Sept 8, 2008) so this check -is anyhow obsolete. ---- - xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp | 4 ---- - 1 file changed, 4 deletions(-) - -diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp -index 7d153c0..4dbf8b0 100644 ---- a/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp -+++ b/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp -@@ -237,13 +237,9 @@ CDVDOverlay* CDVDOverlayCodecFFmpeg::GetOverlay() - if(m_SubtitleIndex >= (int)m_Subtitle.num_rects) - return NULL; - --#if LIBAVCODEC_VERSION_INT >= (52<<10) - if(m_Subtitle.rects[m_SubtitleIndex] == NULL) - return NULL; - AVSubtitleRect& rect = *m_Subtitle.rects[m_SubtitleIndex]; --#else -- AVSubtitleRect& rect = m_Subtitle.rects[m_SubtitleIndex]; --#endif - - CDVDOverlayImage* overlay = new CDVDOverlayImage(); - --- -1.8.1.5 - - -From 4b299da0d5e63ee16d28bd6196473c5dff5137c4 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?David=20H=C3=A4rdeman?= -Date: Sun, 7 Apr 2013 15:04:32 +0200 -Subject: [PATCH 3/7] Remove obsolete libavformat version check (52,14,0) - -This version of libavformat is from May 22, 2008 -(commit 79d7836a5e213d547629555e3f1157e7197aef68). - -The first release to include it was ffmpeg 0.5 (3 March 2009). ---- - .../cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp | 64 +++++++++------------- - 1 file changed, 27 insertions(+), 37 deletions(-) - -diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp -index a27cf1a..a38196a 100644 ---- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp -+++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp -@@ -1180,11 +1180,8 @@ int CDVDDemuxFFmpeg::GetChapterCount() - - if(m_pFormatContext == NULL) - return 0; -- #if LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT(52,14,0) -- return m_pFormatContext->nb_chapters; -- #else -- return 0; -- #endif -+ -+ return m_pFormatContext->nb_chapters; - } - - int CDVDDemuxFFmpeg::GetChapter() -@@ -1197,15 +1194,14 @@ int CDVDDemuxFFmpeg::GetChapter() - || m_iCurrentPts == DVD_NOPTS_VALUE) - return 0; - -- #if LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT(52,14,0) -- for(unsigned i = 0; i < m_pFormatContext->nb_chapters; i++) -- { -- AVChapter *chapter = m_pFormatContext->chapters[i]; -- if(m_iCurrentPts >= ConvertTimestamp(chapter->start, chapter->time_base.den, chapter->time_base.num) -- && m_iCurrentPts < ConvertTimestamp(chapter->end, chapter->time_base.den, chapter->time_base.num)) -- return i + 1; -- } -- #endif -+ for(unsigned i = 0; i < m_pFormatContext->nb_chapters; i++) -+ { -+ AVChapter *chapter = m_pFormatContext->chapters[i]; -+ if(m_iCurrentPts >= ConvertTimestamp(chapter->start, chapter->time_base.den, chapter->time_base.num) -+ && m_iCurrentPts < ConvertTimestamp(chapter->end, chapter->time_base.den, chapter->time_base.num)) -+ return i + 1; -+ } -+ - return 0; - } - -@@ -1216,23 +1212,21 @@ void CDVDDemuxFFmpeg::GetChapterName(std::string& strChapterName) - ich->GetChapterName(strChapterName); - else - { -- #if LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT(52,14,0) -- int chapterIdx = GetChapter(); -- if(chapterIdx <= 0) -- return; -+ int chapterIdx = GetChapter(); -+ if(chapterIdx <= 0) -+ return; - #if LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT(52,83,0) -- // API added on: 2010-10-15 -- // (Note that while the function was available earlier, the generic -- // metadata tags were not populated by default) -- AVDictionaryEntry *titleTag = m_dllAvUtil.av_dict_get(m_pFormatContext->chapters[chapterIdx-1]->metadata, -- "title", NULL, 0); -- if (titleTag) -- strChapterName = titleTag->value; -+ // API added on: 2010-10-15 -+ // (Note that while the function was available earlier, the generic -+ // metadata tags were not populated by default) -+ AVDictionaryEntry *titleTag = m_dllAvUtil.av_dict_get(m_pFormatContext->chapters[chapterIdx-1]->metadata, -+ "title", NULL, 0); -+ if (titleTag) -+ strChapterName = titleTag->value; - #else -- if (m_pFormatContext->chapters[chapterIdx-1]->title) -- strChapterName = m_pFormatContext->chapters[chapterIdx-1]->title; -+ if (m_pFormatContext->chapters[chapterIdx-1]->title) -+ strChapterName = m_pFormatContext->chapters[chapterIdx-1]->title; - #endif -- #endif - } - } - -@@ -1258,16 +1252,12 @@ bool CDVDDemuxFFmpeg::SeekChapter(int chapter, double* startpts) - if(m_pFormatContext == NULL) - return false; - -- #if LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT(52,14,0) -- if(chapter < 1 || chapter > (int)m_pFormatContext->nb_chapters) -- return false; -+ if(chapter < 1 || chapter > (int)m_pFormatContext->nb_chapters) -+ return false; - -- AVChapter *ch = m_pFormatContext->chapters[chapter-1]; -- double dts = ConvertTimestamp(ch->start, ch->time_base.den, ch->time_base.num); -- return SeekTime(DVD_TIME_TO_MSEC(dts), true, startpts); -- #else -- return false; -- #endif -+ AVChapter *ch = m_pFormatContext->chapters[chapter-1]; -+ double dts = ConvertTimestamp(ch->start, ch->time_base.den, ch->time_base.num); -+ return SeekTime(DVD_TIME_TO_MSEC(dts), true, startpts); - } - - void CDVDDemuxFFmpeg::GetStreamCodecName(int iStreamId, CStdString &strName) --- -1.8.1.5 - - -From db540de1e41891c4d1b7b5855d318de75212a6d0 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?David=20H=C3=A4rdeman?= -Date: Sun, 7 Apr 2013 15:04:32 +0200 -Subject: [PATCH 4/7] Remove obsolete libavcodec version check (52,38,1) - -This version of libavcodec is from Nov 10, 2008 -(commit 3155716677eac826b998b487db66927796f6a833). - -The first release to include it was ffmpeg 0.6 (15 June 2010). ---- - xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp | 2 -- - xbmc/cores/dvdplayer/DVDPlayerTeletext.cpp | 4 ---- - 2 files changed, 6 deletions(-) - -diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp -index a38196a..dbeca31 100644 ---- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp -+++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp -@@ -1033,7 +1033,6 @@ void CDVDDemuxFFmpeg::AddStream(int iId) - } - case AVMEDIA_TYPE_SUBTITLE: - { --#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(52,38,1) - if (pStream->codec->codec_id == CODEC_ID_DVB_TELETEXT && g_guiSettings.GetBool("videoplayer.teletextenabled")) - { - CDemuxStreamTeletext* st = new CDemuxStreamTeletext(); -@@ -1042,7 +1041,6 @@ void CDVDDemuxFFmpeg::AddStream(int iId) - break; - } - else --#endif - { - CDemuxStreamSubtitleFFmpeg* st = new CDemuxStreamSubtitleFFmpeg(this, pStream); - m_streams[iId] = st; -diff --git a/xbmc/cores/dvdplayer/DVDPlayerTeletext.cpp b/xbmc/cores/dvdplayer/DVDPlayerTeletext.cpp -index 2fbe8b4..4d373f0 100644 ---- a/xbmc/cores/dvdplayer/DVDPlayerTeletext.cpp -+++ b/xbmc/cores/dvdplayer/DVDPlayerTeletext.cpp -@@ -113,10 +113,8 @@ signed int CDVDTeletextTools::deh24(unsigned char *p) - - bool CDVDTeletextData::CheckStream(CDVDStreamInfo &hints) - { --#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(52,38,1) - if (hints.codec == CODEC_ID_DVB_TELETEXT) - return true; --#endif - - return false; - } -@@ -125,14 +123,12 @@ bool CDVDTeletextData::OpenStream(CDVDStreamInfo &hints) - { - m_messageQueue.Init(); - --#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(52,38,1) - if (hints.codec == CODEC_ID_DVB_TELETEXT) - { - CLog::Log(LOGNOTICE, "Creating teletext data thread"); - Create(); - return true; - } --#endif - - return false; - } --- -1.8.1.5 - - -From cf001e0be606f0695d3dc37a56b4ace6b0bae6c0 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?David=20H=C3=A4rdeman?= -Date: Sun, 7 Apr 2013 15:04:32 +0200 -Subject: [PATCH 5/7] Remove obsolete libavformat version check (52,83,0) - -This version of libavformat is from Oct 15, 2010 -(commit 03700d399bcc749ad7916f2d39a99527f37c8b6e). - -The first release to include it was ffmpeg 0.7.1 (24 June 2011). ---- - xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp | 16 +--------------- - 1 file changed, 1 insertion(+), 15 deletions(-) - -diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp -index dbeca31..0f2deaf 100644 ---- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp -+++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp -@@ -1108,16 +1108,9 @@ void CDVDDemuxFFmpeg::AddStream(int iId) - m_streams[iId]->pPrivate = pStream; - m_streams[iId]->flags = (CDemuxStream::EFlags)pStream->disposition; - --#if LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT(52,83,0) -- // API added on: 2010-10-15 -- // (Note that while the function was available earlier, the generic -- // metadata tags were not populated by default) - AVDictionaryEntry *langTag = m_dllAvUtil.av_dict_get(pStream->metadata, "language", NULL, 0); - if (langTag) - strncpy(m_streams[iId]->language, langTag->value, 3); --#else -- strcpy( m_streams[iId]->language, pStream->language ); --#endif - - if( pStream->codec->extradata && pStream->codec->extradata_size > 0 ) - { -@@ -1213,18 +1206,11 @@ void CDVDDemuxFFmpeg::GetChapterName(std::string& strChapterName) - int chapterIdx = GetChapter(); - if(chapterIdx <= 0) - return; --#if LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT(52,83,0) -- // API added on: 2010-10-15 -- // (Note that while the function was available earlier, the generic -- // metadata tags were not populated by default) -+ - AVDictionaryEntry *titleTag = m_dllAvUtil.av_dict_get(m_pFormatContext->chapters[chapterIdx-1]->metadata, - "title", NULL, 0); - if (titleTag) - strChapterName = titleTag->value; --#else -- if (m_pFormatContext->chapters[chapterIdx-1]->title) -- strChapterName = m_pFormatContext->chapters[chapterIdx-1]->title; --#endif - } - } - --- -1.8.1.5 - - -From a0c8d582d76ac353d8035caf2ff03852d6fc0bee Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?David=20H=C3=A4rdeman?= -Date: Sun, 7 Apr 2013 16:39:33 +0200 -Subject: [PATCH 6/7] Update libavcodec version check - -Make the version check compatible with both ffmpeg and libav. -Also add comments describing when the API change was made for -both libraries. ---- - xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) - -diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp -index 4dbf8b0..7f7b304 100644 ---- a/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp -+++ b/xbmc/cores/dvdplayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp -@@ -255,7 +255,12 @@ CDVDOverlay* CDVDOverlayCodecFFmpeg::GetOverlay() - overlay->width = rect.w; - overlay->height = rect.h; - --#if (!defined USE_EXTERNAL_FFMPEG) || (LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(54,71,100)) -+#if (defined(LIBAVCODEC_FROM_FFMPEG) && LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(54,71,100)) || \ -+ (defined(LIBAVCODEC_FROM_LIBAV) && LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(54,33,0)) -+ // ffmpeg commit: 1885ffb03d0af28e6bac2bcc8725fa15b93f6ac9 (Nov 3 2012) -+ // release: 1.1 (Jan 7 2013) -+ // libav commit: 85f67c4865d8014ded2aaa64b3cba6e2970342d7 (Oct 20 2012) -+ // release: v9 (Jan 5 2013) - overlay->bForced = rect.flags != 0; - #endif - --- -1.8.1.5 - - -From d98c92272cd55acafc1e47c9ae335f0b4b434dae Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?David=20H=C3=A4rdeman?= -Date: Sun, 14 Apr 2013 14:53:54 +0200 -Subject: [PATCH 7/7] Update libavfilter version check - -Make the version check compatible with both ffmpeg and libav. -Also add comments describing when the API change was made for -both libraries. ---- - lib/DllAvFilter.h | 34 ++++++++++++++++------ - .../DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp | 23 ++++++++++----- - 2 files changed, 40 insertions(+), 17 deletions(-) - -diff --git a/lib/DllAvFilter.h b/lib/DllAvFilter.h -index ff94c47..d44b918 100644 ---- a/lib/DllAvFilter.h -+++ b/lib/DllAvFilter.h -@@ -58,6 +58,13 @@ - #endif - } - -+#if LIBAVFILTER_VERSION_MICRO >= 100 -+ #define LIBAVFILTER_FROM_FFMPEG -+#else -+ #define LIBAVFILTER_FROM_LIBAV -+#endif -+ -+ - #include "threads/SingleLock.h" - - class DllAvFilterInterface -@@ -74,10 +81,13 @@ class DllAvFilterInterface - virtual void avfilter_inout_free(AVFilterInOut **inout)=0; - virtual int avfilter_graph_parse(AVFilterGraph *graph, const char *filters, AVFilterInOut **inputs, AVFilterInOut **outputs, void *log_ctx)=0; - virtual int avfilter_graph_config(AVFilterGraph *graphctx, void *log_ctx)=0; --#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 -+#if (defined(LIBAVFILTER_FROM_LIBAV) && LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(3,5,0)) || \ -+ (defined(LIBAVFILTER_FROM_FFMPEG) && LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(3,43,100)) -+ virtual int av_buffersrc_add_frame(AVFilterContext *buffer_filter, AVFrame *frame)=0; -+#elif defined(LIBAVFILTER_FROM_FFMPEG) && LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(2,72,105) - virtual int av_buffersrc_add_frame(AVFilterContext *buffer_filter, AVFrame *frame, int flags)=0; -+#else -+ virtual int av_vsrc_buffer_add_frame(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; -@@ -134,10 +144,13 @@ class DllAvFilter : public DllDynamic, DllAvFilterInterface - { - return ::avfilter_graph_config(graphctx, log_ctx); - } --#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 -+#if (defined(LIBAVFILTER_FROM_LIBAV) && LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(3,5,0)) || \ -+ (defined(LIBAVFILTER_FROM_FFMPEG) && LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(3,43,100)) -+ virtual int av_buffersrc_add_frame(AVFilterContext *buffer_filter, AVFrame* frame) { return ::av_buffersrc_add_frame(buffer_filter, frame); } -+#elif defined(LIBAVFILTER_FROM_FFMPEG) && LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(2,72,105) - virtual int av_buffersrc_add_frame(AVFilterContext *buffer_filter, AVFrame* frame, int flags) { return ::av_buffersrc_add_frame(buffer_filter, frame, flags); } -+#else -+ virtual int av_vsrc_buffer_add_frame(AVFilterContext *buffer_filter, AVFrame *frame, int flags) { return ::av_vsrc_buffer_add_frame(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); } -@@ -172,10 +185,13 @@ class DllAvFilter : public DllDynamic, DllAvFilterInterface - DEFINE_METHOD1(void, avfilter_inout_free_dont_call, (AVFilterInOut **p1)) - DEFINE_FUNC_ALIGNED5(int, __cdecl, avfilter_graph_parse_dont_call, AVFilterGraph *, const char *, AVFilterInOut **, AVFilterInOut **, void *) - DEFINE_FUNC_ALIGNED2(int, __cdecl, avfilter_graph_config_dont_call, AVFilterGraph *, void *) --#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 -+#if (defined(LIBAVFILTER_FROM_LIBAV) && LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(3,5,0)) || \ -+ (defined(LIBAVFILTER_FROM_FFMPEG) && LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(3,43,100)) -+ DEFINE_METHOD2(int, av_buffersrc_add_frame, (AVFilterContext *p1, AVFrame *p2)) -+#elif defined(LIBAVFILTER_FROM_FFMPEG) && LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(2,72,105) - DEFINE_METHOD3(int, av_buffersrc_add_frame, (AVFilterContext *p1, AVFrame *p2, int p3)) -+#else -+ DEFINE_METHOD3(int, av_vsrc_buffer_add_frame, (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)) -diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp -index d614e39..6331722 100644 ---- a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp -+++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp -@@ -815,18 +815,25 @@ int CDVDVideoCodecFFmpeg::FilterProcess(AVFrame* frame) - - if (frame) - { --#if LIBAVFILTER_VERSION_INT < AV_VERSION_INT(3,0,0) -- result = m_dllAvFilter.av_vsrc_buffer_add_frame(m_pFilterIn, frame, 0); --#else -+#if (defined(LIBAVFILTER_FROM_LIBAV) && LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(3,5,0)) || \ -+ (defined(LIBAVFILTER_FROM_FFMPEG) && LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(3,43,100)) -+ // API changed in: -+ // ffmpeg: commit 7e350379f87e7f74420b4813170fe808e2313911 (28 Nov 2012) -+ // not released (post 1.2) -+ // libav: commit 7e350379f87e7f74420b4813170fe808e2313911 (28 Nov 2012) -+ // release v9 (5 January 2013) -+ result = m_dllAvFilter.av_buffersrc_add_frame(m_pFilterIn, frame); -+#elif defined(LIBAVFILTER_FROM_FFMPEG) && LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(2,72,105) -+ // API changed in: -+ // ffmpeg: commit 7bac2a78c2241df4bcc1665703bb71afd9a3e692 (28 Apr 2012) -+ // release 0.11 (25 May 2012) - result = m_dllAvFilter.av_buffersrc_add_frame(m_pFilterIn, frame, 0); -+#else -+ result = m_dllAvFilter.av_vsrc_buffer_add_frame(m_pFilterIn, frame, 0); - #endif - if (result < 0) - { --#if LIBAVFILTER_VERSION_INT < AV_VERSION_INT(3,0,0) -- CLog::Log(LOGERROR, "CDVDVideoCodecFFmpeg::FilterProcess - av_vsrc_buffer_add_frame"); --#else -- CLog::Log(LOGERROR, "CDVDVideoCodecFFmpeg::FilterProcess - av_buffersrc_add_frame"); --#endif -+ CLog::Log(LOGERROR, "CDVDVideoCodecFFmpeg::FilterProcess - av_buffersrc_add_frame/av_vsrc_buffer_add_frame"); - return VC_ERROR; - } - } --- -1.8.1.5 - diff --git a/packages/mediacenter/xbmc/patches/74fa128/xbmc-995.01-xvba_support-22fa7f5.patch b/packages/mediacenter/xbmc/patches/83b16d0/xbmc-995.01-xvba_support-2260351.patch similarity index 98% rename from packages/mediacenter/xbmc/patches/74fa128/xbmc-995.01-xvba_support-22fa7f5.patch rename to packages/mediacenter/xbmc/patches/83b16d0/xbmc-995.01-xvba_support-2260351.patch index d004c553ac..f10b03ed96 100644 --- a/packages/mediacenter/xbmc/patches/74fa128/xbmc-995.01-xvba_support-22fa7f5.patch +++ b/packages/mediacenter/xbmc/patches/83b16d0/xbmc-995.01-xvba_support-2260351.patch @@ -1,4 +1,4 @@ -From dc9e0b8f067b1464a46c04049c11e2e2d6fd0a6b Mon Sep 17 00:00:00 2001 +From bc3f63795a66b28e39067f8df5b45834d308328b Mon Sep 17 00:00:00 2001 From: xbmc Date: Mon, 28 May 2012 10:03:31 +0200 Subject: [PATCH 001/107] VideoRenerers: add buffering @@ -1117,10 +1117,10 @@ index 5585de2..61841fe 100644 return result; #else -- -1.8.1.5 +1.8.1.6 -From 26717adbc200797e1daaef979476628887a35849 Mon Sep 17 00:00:00 2001 +From a6982044ebfd393393feb621a48bdd7aa7215ffa Mon Sep 17 00:00:00 2001 From: xbmc Date: Sat, 16 Feb 2013 08:32:18 +0100 Subject: [PATCH 002/107] add buffering for GLES @@ -1204,10 +1204,10 @@ index c1d51b9..eef86cd 100644 virtual bool ValidateRenderTarget(); virtual void LoadShaders(int field=FIELD_FULL); -- -1.8.1.5 +1.8.1.6 -From 50ef77fa6472994c9b2c9606974cb14a0d0e71af Mon Sep 17 00:00:00 2001 +From 8df844e1ff9cd4fd3e42a6a832e34f68389203f8 Mon Sep 17 00:00:00 2001 From: unknown Date: Sat, 16 Feb 2013 11:17:02 +0100 Subject: [PATCH 003/107] WinRenderer: add buffering @@ -1287,10 +1287,10 @@ index ff9dfdf..755c1b9 100644 #else -- -1.8.1.5 +1.8.1.6 -From 34f8ef159f2565e6579fd8fd4bab55ab8dacac0d Mon Sep 17 00:00:00 2001 +From b1a409f6063e5df50675b34d0ca30e0a1b969962 Mon Sep 17 00:00:00 2001 From: unknown Date: Sat, 16 Feb 2013 11:17:32 +0100 Subject: [PATCH 004/107] DXVA: activate buffering in renderer @@ -1313,10 +1313,10 @@ index 61841fe..ea68e9f 100644 case RENDER_FMT_VAAPI: formatstr = "VAAPI"; -- -1.8.1.5 +1.8.1.6 -From eaeed4315ec1eadd83ca0e7b071b2bab4cf978c2 Mon Sep 17 00:00:00 2001 +From b476d31f184736193367424bce1cf809875e31d7 Mon Sep 17 00:00:00 2001 From: xbmc Date: Tue, 2 Oct 2012 10:49:09 +0200 Subject: [PATCH 005/107] linuxrenderer: delete all textures on reconfigure @@ -1339,10 +1339,10 @@ index fb98d05..cf258c0 100644 // trigger update of video filters -- -1.8.1.5 +1.8.1.6 -From 9ec1f33cfe03ab863418b51769a28239489cc029 Mon Sep 17 00:00:00 2001 +From 9dcd4d76b8d74a483e84eb1b2ebaa6d7a156b327 Mon Sep 17 00:00:00 2001 From: xbmc Date: Mon, 28 May 2012 10:17:33 +0200 Subject: [PATCH 006/107] drop frame counter in application, ask render manager @@ -1521,10 +1521,10 @@ index 6ba1653..a215852 100644 void DiscardBuffer(); -- -1.8.1.5 +1.8.1.6 -From 85fb3da68e37eab0c4f1ff5291e8b4355a4b5794 Mon Sep 17 00:00:00 2001 +From 60eca0ba171fbc6d9be8fc74a4722cfdc727cf3d Mon Sep 17 00:00:00 2001 From: xbmc Date: Mon, 28 May 2012 11:02:29 +0200 Subject: [PATCH 007/107] vaapi: adopt to buffering in renderer @@ -1536,7 +1536,7 @@ Subject: [PATCH 007/107] vaapi: adopt to buffering in renderer 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp -index d614e39..5dccd4f 100644 +index 6331722..72861e2 100644 --- a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp +++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp @@ -112,7 +112,7 @@ enum PixelFormat CDVDVideoCodecFFmpeg::GetFormat( struct AVCodecContext * avctx @@ -1582,10 +1582,10 @@ index 2840c52..1385833 100644 int m_refs; std::list m_surfaces_used; -- -1.8.1.5 +1.8.1.6 -From a392e173967cf6c4b47ecffee643d3a0ac9d4945 Mon Sep 17 00:00:00 2001 +From fd585da08117cd4be73d587d8a81fa8df78153c5 Mon Sep 17 00:00:00 2001 From: xbmc Date: Sat, 16 Feb 2013 20:17:29 +0100 Subject: [PATCH 008/107] add buffering - some documentation @@ -1675,10 +1675,10 @@ index a215852..f1ce77f 100644 protected: -- -1.8.1.5 +1.8.1.6 -From ebcb5162b74b2de16678f46aec3fc626801a7bd6 Mon Sep 17 00:00:00 2001 +From 9e33869ee0d6a4dfca603cf0b2e73f1b41824eea Mon Sep 17 00:00:00 2001 From: xbmc Date: Tue, 19 Feb 2013 09:06:22 +0100 Subject: [PATCH 009/107] move NUM_BUFFERS up to BaseRenderer.h @@ -1783,10 +1783,10 @@ index 755c1b9..4892500 100644 #define CLAMP(a, min, max) ((a) > (max) ? (max) : ( (a) < (min) ? (min) : a )) -- -1.8.1.5 +1.8.1.6 -From e53a35c0569fcb22127e809c9d39a7349914d437 Mon Sep 17 00:00:00 2001 +From adf8512ec8f5035d810de94afe4098960ea7ddce Mon Sep 17 00:00:00 2001 From: xbmc Date: Sun, 24 Feb 2013 09:55:00 +0100 Subject: [PATCH 010/107] OverlayRenderer: align buffers with index in @@ -1863,10 +1863,10 @@ index 03dfe2b..e400bdb 100644 } -- -1.8.1.5 +1.8.1.6 -From bc23e46dd2024f7b756bc54fcdd9a071269974af Mon Sep 17 00:00:00 2001 +From 4916d8f2b3a20d20db9b3ec1682ee6190f411964 Mon Sep 17 00:00:00 2001 From: xbmc Date: Tue, 26 Feb 2013 09:00:21 +0100 Subject: [PATCH 011/107] add buffering - submit absolute time to render @@ -2015,10 +2015,10 @@ index ea68e9f..ca750ae 100644 return result; #else -- -1.8.1.5 +1.8.1.6 -From 1710188992bddd534de9c84deb19c4cc51d00a8d Mon Sep 17 00:00:00 2001 +From 21e4dd5f37c729e4efe39b44be869288d3288eb9 Mon Sep 17 00:00:00 2001 From: xbmc Date: Fri, 1 Mar 2013 08:05:00 +0100 Subject: [PATCH 012/107] RenderManager: some rework to buffering @@ -2083,10 +2083,10 @@ index be5e03f..71b7f87 100644 return -1; } -- -1.8.1.5 +1.8.1.6 -From f33cd79f4087db6f6ebb840c2e07a36dc348e0d0 Mon Sep 17 00:00:00 2001 +From 56b8f6c8ed88a016433cc93f12ad4f941495fafe Mon Sep 17 00:00:00 2001 From: xbmc Date: Fri, 1 Mar 2013 08:07:07 +0100 Subject: [PATCH 013/107] dvdplayer: disable buffering unil dropping is @@ -2145,10 +2145,10 @@ index ca750ae..1078180 100644 case RENDER_FMT_VAAPI: formatstr = "VAAPI"; -- -1.8.1.5 +1.8.1.6 -From 0d39007c9541e95959e969922d5f20e9325d392c Mon Sep 17 00:00:00 2001 +From 122062ecba2442b68da62eb65dee441128f550ba Mon Sep 17 00:00:00 2001 From: xbmc Date: Sat, 2 Mar 2013 12:00:51 +0100 Subject: [PATCH 014/107] RenderManager: skip very late frames in render buffer @@ -2221,10 +2221,10 @@ index 71b7f87..cd8c490 100644 if (g_graphicsContext.IsFullScreenVideo() || presenttime <= clocktime + frametime) { -- -1.8.1.5 +1.8.1.6 -From 8192496fcea05591a3e9180fd4ad7b88f793ae39 Mon Sep 17 00:00:00 2001 +From acdeeaf1a8c278a31717a3d2680cd60f08bb84d1 Mon Sep 17 00:00:00 2001 From: xbmc Date: Sat, 2 Mar 2013 12:10:17 +0100 Subject: [PATCH 015/107] renderbuffers: drop enable/disable in this iteration @@ -2294,10 +2294,10 @@ index 1078180..367092a 100644 // guess next frame pts. iDuration is always valid -- -1.8.1.5 +1.8.1.6 -From f16e520f40c948eaf6ee00b4bb7b20c41b3c8bca Mon Sep 17 00:00:00 2001 +From 621c5f83f9bae82d6f80933bfe67deae9ae6ba52 Mon Sep 17 00:00:00 2001 From: xbmc Date: Sat, 2 Mar 2013 12:31:11 +0100 Subject: [PATCH 016/107] RenderManager: add method SetSpeed @@ -2399,10 +2399,10 @@ index 367092a..161f811 100644 return result; #else -- -1.8.1.5 +1.8.1.6 -From 2d2cc927387323efc98d6d95a97915031490c599 Mon Sep 17 00:00:00 2001 +From d5b037289370c7eb8993dbb502ea774ec8b792f1 Mon Sep 17 00:00:00 2001 From: xbmc Date: Thu, 4 Apr 2013 10:20:36 +0200 Subject: [PATCH 017/107] RenderManager: return bufferlevel with WaitForBuffer @@ -2444,10 +2444,10 @@ index 73dea8a..8e9b2c0 100644 int CXBMCRenderManager::GetNextRenderBufferIndex() -- -1.8.1.5 +1.8.1.6 -From 19f4928ff10e05ef544fa6ccbdf43936a3e2aa90 Mon Sep 17 00:00:00 2001 +From 7468e144713b5e413f303e2390ef371a760ee400 Mon Sep 17 00:00:00 2001 From: xbmc Date: Sun, 10 Feb 2013 18:40:30 +0100 Subject: [PATCH 018/107] OMXPlayer: adapt to buffering @@ -2457,10 +2457,10 @@ Subject: [PATCH 018/107] OMXPlayer: adapt to buffering 1 file changed, 11 insertions(+), 17 deletions(-) diff --git a/xbmc/cores/omxplayer/OMXPlayerVideo.cpp b/xbmc/cores/omxplayer/OMXPlayerVideo.cpp -index 76fec79..e895c60 100644 +index bd5711c..d9168c6 100644 --- a/xbmc/cores/omxplayer/OMXPlayerVideo.cpp +++ b/xbmc/cores/omxplayer/OMXPlayerVideo.cpp -@@ -347,25 +347,19 @@ void OMXPlayerVideo::Output(int iGroupId, double pts, bool bDropPacket) +@@ -343,25 +343,19 @@ void OMXPlayerVideo::Output(int iGroupId, double pts, bool bDropPacket) m_dropbase = 0.0f; #endif @@ -2496,7 +2496,7 @@ index 76fec79..e895c60 100644 } void OMXPlayerVideo::Process() -@@ -809,7 +803,7 @@ void OMXPlayerVideo::ResolutionUpdateCallBack(uint32_t width, uint32_t height) +@@ -813,7 +807,7 @@ void OMXPlayerVideo::ResolutionUpdateCallBack(uint32_t width, uint32_t height) if(!g_renderManager.Configure(width, height, iDisplayWidth, iDisplayHeight, m_fFrameRate, flags, format, 0, @@ -2506,10 +2506,10 @@ index 76fec79..e895c60 100644 CLog::Log(LOGERROR, "%s - failed to configure renderer", __FUNCTION__); return; -- -1.8.1.5 +1.8.1.6 -From 6226fbb49fd6bcda7b1527623942092d6333d612 Mon Sep 17 00:00:00 2001 +From 715d5805938104ba71ac343231fefbdbaec844d6 Mon Sep 17 00:00:00 2001 From: xbmc Date: Mon, 28 May 2012 10:34:39 +0200 Subject: [PATCH 019/107] videoplayer: adapt lateness detection and dropping to @@ -2664,7 +2664,7 @@ index 2c46b0b..5931e2f 100644 + virtual void SetCodecControl(int flags) {} }; diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp -index 5dccd4f..b3331c3 100644 +index 72861e2..4553368 100644 --- a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp +++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp @@ -149,6 +149,7 @@ enum PixelFormat CDVDVideoCodecFFmpeg::GetFormat( struct AVCodecContext * avctx @@ -2721,7 +2721,7 @@ index 5dccd4f..b3331c3 100644 if(!m_started) pDvdVideoPicture->iFlags |= DVP_FLAG_DROPPED; -@@ -880,3 +906,8 @@ unsigned CDVDVideoCodecFFmpeg::GetConvergeCount() +@@ -887,3 +913,8 @@ unsigned CDVDVideoCodecFFmpeg::GetConvergeCount() else return 0; } @@ -3127,10 +3127,10 @@ index d1c9b94..5310522 100644 }; -- -1.8.1.5 +1.8.1.6 -From 117c84daacbdb1fa69884865894537274ed153e0 Mon Sep 17 00:00:00 2001 +From e7056ed198dd0f6acbb2ab39af9cb65a57c0cb45 Mon Sep 17 00:00:00 2001 From: xbmc Date: Sun, 2 Sep 2012 16:05:21 +0200 Subject: [PATCH 020/107] video player: present correct pts to user for a/v @@ -3221,10 +3221,10 @@ index 5310522..f395897 100644 double GetOutputDelay(); /* returns the expected delay, from that a packet is put in queue */ -- -1.8.1.5 +1.8.1.6 -From 5423d274008407c50c9c52620f24f91ba3bfe1a1 Mon Sep 17 00:00:00 2001 +From fdb4e0a8b1fe86b616db01f069ed495e9feeff8c Mon Sep 17 00:00:00 2001 From: xbmc Date: Sat, 16 Feb 2013 18:25:53 +0100 Subject: [PATCH 021/107] videoplayer: some rework and documentation @@ -3287,10 +3287,10 @@ index 5931e2f..ac126fe 100644 virtual void SetCodecControl(int flags) {} }; diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp -index b3331c3..27c882a 100644 +index 4553368..2d5d620 100644 --- a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp +++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp -@@ -907,6 +907,17 @@ unsigned CDVDVideoCodecFFmpeg::GetConvergeCount() +@@ -914,6 +914,17 @@ unsigned CDVDVideoCodecFFmpeg::GetConvergeCount() return 0; } @@ -3335,10 +3335,10 @@ index 8da830c..9c049a5 100644 if (iDecoderPts == DVD_NOPTS_VALUE) iDecoderPts = pts; -- -1.8.1.5 +1.8.1.6 -From ca5f7031a852eee69cd02cfd187de10634a48462 Mon Sep 17 00:00:00 2001 +From 3a635eeeb38c0dad78114a01704893f43bd9d181 Mon Sep 17 00:00:00 2001 From: xbmc Date: Fri, 1 Mar 2013 09:57:16 +0100 Subject: [PATCH 022/107] Revert "dvdplayer: disable buffering unit dropping is @@ -3398,10 +3398,10 @@ index 9c049a5..a6aa456 100644 case RENDER_FMT_VAAPI: formatstr = "VAAPI"; -- -1.8.1.5 +1.8.1.6 -From 749b59db70d93fc2960293e2008723dcb75b8a0c Mon Sep 17 00:00:00 2001 +From 2e432f4e99fc04e48a2ad5847eab0a902bbe2f35 Mon Sep 17 00:00:00 2001 From: xbmc Date: Thu, 4 Apr 2013 15:44:20 +0200 Subject: [PATCH 023/107] OMXPlayerVideo: adapt to change in FlipPage @@ -3411,10 +3411,10 @@ Subject: [PATCH 023/107] OMXPlayerVideo: adapt to change in FlipPage 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xbmc/cores/omxplayer/OMXPlayerVideo.cpp b/xbmc/cores/omxplayer/OMXPlayerVideo.cpp -index e895c60..2431ec0 100644 +index d9168c6..67d3ea9 100644 --- a/xbmc/cores/omxplayer/OMXPlayerVideo.cpp +++ b/xbmc/cores/omxplayer/OMXPlayerVideo.cpp -@@ -359,7 +359,7 @@ void OMXPlayerVideo::Output(int iGroupId, double pts, bool bDropPacket) +@@ -355,7 +355,7 @@ void OMXPlayerVideo::Output(int iGroupId, double pts, bool bDropPacket) ProcessOverlays(iGroupId, pts_overlay); double timestamp = (CDVDClock::GetAbsoluteClock(false) + (bufferlevel+1) * iFrameDuration) / DVD_TIME_BASE; @@ -3424,10 +3424,10 @@ index e895c60..2431ec0 100644 void OMXPlayerVideo::Process() -- -1.8.1.5 +1.8.1.6 -From 5e989614e2c95e0c96efb837f055a71d1018cb2b Mon Sep 17 00:00:00 2001 +From ab95962634e6d2893d0c7a89217ac8f450701f45 Mon Sep 17 00:00:00 2001 From: xbmc Date: Sat, 7 Apr 2012 09:19:00 +0200 Subject: [PATCH 024/107] vdpau: redesign @@ -3461,10 +3461,10 @@ Subject: [PATCH 024/107] vdpau: redesign create mode 100644 xbmc/utils/ActorProtocol.h diff --git a/language/English/strings.po b/language/English/strings.po -index 21bb8c7..c2eb0fd 100644 +index dfc125c..31b3f80 100644 --- a/language/English/strings.po +++ b/language/English/strings.po -@@ -5405,7 +5405,15 @@ msgctxt "#13435" +@@ -5672,7 +5672,15 @@ msgctxt "#13435" msgid "Enable HQ Scalers for scalings above %" msgstr "" @@ -3481,7 +3481,7 @@ index 21bb8c7..c2eb0fd 100644 #: xbmc/settings/GUISettings.cpp msgctxt "#13500" -@@ -6429,7 +6437,7 @@ msgid "Software Blend" +@@ -6746,7 +6754,7 @@ msgid "Software Blend" msgstr "" msgctxt "#16325" @@ -3956,7 +3956,7 @@ index ac126fe..2bf79fe 100644 struct { VAAPI::CHolder* vaapi; diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp -index 27c882a..1a1a881 100644 +index 2d5d620..37084b6 100644 --- a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp +++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp @@ -72,14 +72,14 @@ enum PixelFormat CDVDVideoCodecFFmpeg::GetFormat( struct AVCodecContext * avctx @@ -9599,10 +9599,10 @@ index e425327..3dae22c 100644 protected: bool RefreshGlxContext(); -- -1.8.1.5 +1.8.1.6 -From fe753452656300e419463c62ce90ece6c752de40 Mon Sep 17 00:00:00 2001 +From e4a7ecbacfb3bfbed380625c13d8440c15988e3f Mon Sep 17 00:00:00 2001 From: xbmc Date: Wed, 12 Dec 2012 09:52:17 +0100 Subject: [PATCH 025/107] vdpau: make interop gl default and remove setting, @@ -9616,10 +9616,10 @@ Subject: [PATCH 025/107] vdpau: make interop gl default and remove setting, 4 files changed, 16 insertions(+), 35 deletions(-) diff --git a/language/English/strings.po b/language/English/strings.po -index c2eb0fd..4179db7 100644 +index 31b3f80..3931f24 100644 --- a/language/English/strings.po +++ b/language/English/strings.po -@@ -5406,14 +5406,10 @@ msgid "Enable HQ Scalers for scalings above %" +@@ -5673,14 +5673,10 @@ msgid "Enable HQ Scalers for scalings above %" msgstr "" msgctxt "#13436" @@ -9765,10 +9765,10 @@ index a5d5b1e..6973d12 100644 } else -- -1.8.1.5 +1.8.1.6 -From e81733906a4952517a5fd953d64d1eff24e3977d Mon Sep 17 00:00:00 2001 +From 5c8eb9e184a8fd2b8b3b330b8cca98fb41c23455 Mon Sep 17 00:00:00 2001 From: xbmc Date: Wed, 12 Dec 2012 18:34:47 +0100 Subject: [PATCH 026/107] vdpau: drop studio level conversion @@ -9781,10 +9781,10 @@ Subject: [PATCH 026/107] vdpau: drop studio level conversion 4 files changed, 7 insertions(+), 99 deletions(-) diff --git a/language/English/strings.po b/language/English/strings.po -index 4179db7..23e503d 100644 +index 3931f24..f18acfb 100644 --- a/language/English/strings.po +++ b/language/English/strings.po -@@ -4625,12 +4625,7 @@ msgctxt "#13121" +@@ -4872,12 +4872,7 @@ msgctxt "#13121" msgid "VDPAU HQ Upscaling level" msgstr "" @@ -9952,10 +9952,10 @@ index 6a2d352..51d04c0 100644 #endif AddSeparator(vp, "videoplayer.sep5"); -- -1.8.1.5 +1.8.1.6 -From d8b073129553d408a3ddba891bbd90787ac1f5d4 Mon Sep 17 00:00:00 2001 +From 5320f12184389aec495fd8b043efa71ee85b5208 Mon Sep 17 00:00:00 2001 From: xbmc Date: Wed, 12 Dec 2012 20:28:49 +0100 Subject: [PATCH 027/107] vdpau: observe ffmpeg tags for color space @@ -10059,10 +10059,10 @@ index 96c4de9..173de37 100644 VdpVideoMixerPictureStructure m_mixerfield; int m_mixerstep; -- -1.8.1.5 +1.8.1.6 -From 27837e1f89dc78df5a140b40e88c5a9692168d7d Mon Sep 17 00:00:00 2001 +From 5826eba0774bfee9219ed5497d61ec71f5b2ea8f Mon Sep 17 00:00:00 2001 From: xbmc Date: Sun, 27 Jan 2013 12:10:19 +0100 Subject: [PATCH 028/107] vdpau: switch off de-interlacing on ff @@ -10088,10 +10088,10 @@ index 1ad0701..4212924 100644 if((method == VS_INTERLACEMETHOD_AUTO && interlaced) || method == VS_INTERLACEMETHOD_VDPAU_BOB -- -1.8.1.5 +1.8.1.6 -From d6a2e7af60d2e25b208b92423416bba1ef63942b Mon Sep 17 00:00:00 2001 +From 03cda0f45471bf9f7334c3159127a5ab1954b654 Mon Sep 17 00:00:00 2001 From: xbmc Date: Sat, 2 Feb 2013 13:17:09 +0100 Subject: [PATCH 029/107] vdpau: fix mp4 part2 decoding, activate by default @@ -10146,10 +10146,10 @@ index 3b2f842..256e6bd 100644 m_videoDisableBackgroundDeinterlace = false; m_videoCaptureUseOcclusionQuery = -1; //-1 is auto detect -- -1.8.1.5 +1.8.1.6 -From a9481b83d095783e6ad629463c298718f126eb9b Mon Sep 17 00:00:00 2001 +From 1affad7eed453f10a3ba0818349bfe13a68a8d00 Mon Sep 17 00:00:00 2001 From: xbmc Date: Sat, 2 Mar 2013 15:19:19 +0100 Subject: [PATCH 030/107] vdpau: re-add limited range conversion @@ -10293,10 +10293,10 @@ index 66985ae..4bdfb5b 100644 CheckStatus(vdp_st, __LINE__); } -- -1.8.1.5 +1.8.1.6 -From c1c29ec221468b21a2e12d1b74cb8fdf5fb7cade Mon Sep 17 00:00:00 2001 +From 051bb8ca3d1c9f245ff9c9a65a90642fd456b709 Mon Sep 17 00:00:00 2001 From: xbmc Date: Tue, 25 Sep 2012 12:14:15 +0200 Subject: [PATCH 031/107] linuxrenderer: drop method RenderMultiPass @@ -10346,10 +10346,10 @@ index 67605fc..84ddbd8 100644 void RenderFromFBO(); void RenderSinglePass(int renderBuffer, int field); // single pass glsl renderer -- -1.8.1.5 +1.8.1.6 -From 3f2afdcb6ebbbc0a17a610dae417e2aeb3c16760 Mon Sep 17 00:00:00 2001 +From a761cf3769460cc112d6aabbca66270ed0a5c589 Mon Sep 17 00:00:00 2001 From: xbmc Date: Tue, 25 Sep 2012 13:20:47 +0200 Subject: [PATCH 032/107] linuxrenderer: implement progressive weave for vdpau @@ -10477,10 +10477,10 @@ index 84ddbd8..dff7e1c 100644 struct -- -1.8.1.5 +1.8.1.6 -From 1432629d10938f86af443e679a36c2627cbe94e8 Mon Sep 17 00:00:00 2001 +From f557c16c38fe25cd3aa76ad1cbb825bbc73b8bd3 Mon Sep 17 00:00:00 2001 From: fritsch Date: Thu, 28 Mar 2013 10:38:37 +0100 Subject: [PATCH 033/107] VDPAU: silence compiler warnings @@ -10576,10 +10576,10 @@ index 4bdfb5b..e8f86c4 100644 m_Display = g_Windowing.GetDisplay(); glContext = g_Windowing.GetGlxContext(); -- -1.8.1.5 +1.8.1.6 -From 9ed42bb9f7defff43733bd5112ab2c55ee6c34d3 Mon Sep 17 00:00:00 2001 +From 6ea5c625e353741b8487bcaeab492fc5b6c4c32f Mon Sep 17 00:00:00 2001 From: xbmc Date: Mon, 25 Feb 2013 08:47:10 +0100 Subject: [PATCH 034/107] vdpau: release more resources on pre-cleanup @@ -10717,10 +10717,10 @@ index 173de37..4b1c53b 100644 bool GLInit(); void GLMapSurfaces(); -- -1.8.1.5 +1.8.1.6 -From e429c5dd575af7cd0f701648e2bbecae2d8c7a6f Mon Sep 17 00:00:00 2001 +From ef28955e86c6325da36d4ce8f101bf7fe220c60b Mon Sep 17 00:00:00 2001 From: xbmc Date: Wed, 6 Mar 2013 07:35:10 +0100 Subject: [PATCH 035/107] vdpau: set deinterlacing method to auto, if default @@ -10752,10 +10752,10 @@ index fb41a72..82a46aa 100644 } else -- -1.8.1.5 +1.8.1.6 -From 2463d8904b35d34f4af773b5f251ae569fcd3f08 Mon Sep 17 00:00:00 2001 +From ad8ec75e430ab92db4127312cb01b250ad678ff4 Mon Sep 17 00:00:00 2001 From: wsnipex Date: Sun, 4 Nov 2012 14:05:52 +0100 Subject: [PATCH 036/107] configure: add --enable-pvraddons-with-dependencies @@ -10802,10 +10802,10 @@ index f0e4905..7fd9483 100644 CXX="$CXX" \ CFLAGS="$CFLAGS" \ -- -1.8.1.5 +1.8.1.6 -From b9c8fef1522bb8dc5faa078a0d6fafa225cd142c Mon Sep 17 00:00:00 2001 +From 45b912dad3f615291e621833520cab3870c13b84 Mon Sep 17 00:00:00 2001 From: xbmc Date: Mon, 28 May 2012 10:41:31 +0200 Subject: [PATCH 037/107] videoplayer: update frametime, it might change due to @@ -10829,10 +10829,10 @@ index 8f9d5f6..9b49386 100644 { m_codecname = m_pVideoCodec->GetName(); -- -1.8.1.5 +1.8.1.6 -From 8ef3ed7214308feae9534ac924aad03e81b64094 Mon Sep 17 00:00:00 2001 +From f3fd8aa3865ffc6ccb0fa41ed71a4d8526b9e8c5 Mon Sep 17 00:00:00 2001 From: xbmc Date: Mon, 28 May 2012 10:43:06 +0200 Subject: [PATCH 038/107] videoplayer: give streams with invalid fps a chance @@ -10856,10 +10856,10 @@ index 9b49386..4cbf6ad 100644 //reset the stored framerates if no good framerate was detected m_fStableFrameRate = 0.0; -- -1.8.1.5 +1.8.1.6 -From 1bcd25e0cf1fdefb7c37294cbf0781aa963ac83f Mon Sep 17 00:00:00 2001 +From 62c0aa17f9279030a1d0ae1324ca37403cc2494c Mon Sep 17 00:00:00 2001 From: xbmc Date: Mon, 28 May 2012 10:49:05 +0200 Subject: [PATCH 039/107] dvdplayer: allow rewinding at end of stream, do a @@ -10896,10 +10896,10 @@ index 95eb8ae..00d4237 100644 // audioplayer, stops outputing audio to audiorendere, but still tries to // sleep an correct amount for each packet -- -1.8.1.5 +1.8.1.6 -From 2cddb9d6e5fa1c7cdc22d8daa269133a9ac349c2 Mon Sep 17 00:00:00 2001 +From 9617e14e9d30492f2df8d89cf19ae6a65e2da111 Mon Sep 17 00:00:00 2001 From: FernetMenta Date: Thu, 5 Jul 2012 15:22:05 +0200 Subject: [PATCH 040/107] X11: ditch SDL for video and window events @@ -12383,10 +12383,10 @@ index 3dae22c..25faaef 100644 CCriticalSection m_resourceSection; std::vector m_resources; -- -1.8.1.5 +1.8.1.6 -From f778f3dd93caeb3df9ad5f5183f874825e3009f7 Mon Sep 17 00:00:00 2001 +From 9a9d63f1784bda2eea9db8d8b71dfed8c8d9a383 Mon Sep 17 00:00:00 2001 From: FernetMenta Date: Thu, 5 Jul 2012 15:24:22 +0200 Subject: [PATCH 041/107] X11: Add xbmc icon @@ -12575,10 +12575,10 @@ index 25faaef..c1e6cf1 100644 CStopWatch m_screensaverReset; }; -- -1.8.1.5 +1.8.1.6 -From cdfc59cffadc14880c3fbdb4da89a1ca7614acb1 Mon Sep 17 00:00:00 2001 +From 5083da87ac2af5d85a1373afc1fa1238ebe63ce4 Mon Sep 17 00:00:00 2001 From: xbmc Date: Sun, 20 May 2012 14:11:26 +0200 Subject: [PATCH 042/107] X11: add SDL joystick until we have a better solution @@ -12632,10 +12632,10 @@ index 5a8bbb8..5bc1de0 100644 } -- -1.8.1.5 +1.8.1.6 -From 8a1d5daf0ba93f2c0b33a5a1015d6b48384e64f9 Mon Sep 17 00:00:00 2001 +From 2ccf6f21dcdf0446f07225071d2633bac3110ec0 Mon Sep 17 00:00:00 2001 From: Joakim Plate Date: Thu, 5 Jul 2012 12:35:55 +0200 Subject: [PATCH 043/107] X11: factor out code handling device reset @@ -12699,10 +12699,10 @@ index c1e6cf1..041ea55 100644 protected: bool RefreshGlxContext(); -- -1.8.1.5 +1.8.1.6 -From 2bcb7eb6af883f94654bc96a2891a528c727ca2f Mon Sep 17 00:00:00 2001 +From cea17f9e47c3149ede37869e3d4d07d6a29de046 Mon Sep 17 00:00:00 2001 From: FernetMenta Date: Thu, 5 Jul 2012 15:02:00 +0200 Subject: [PATCH 044/107] X11: move xrandr events to WinEventsX11 @@ -12846,10 +12846,10 @@ index fd51dc0..d495443 100644 void CWinSystemX11::Register(IDispResource *resource) -- -1.8.1.5 +1.8.1.6 -From 6eb7be804d94e1b26af58624900ff63dd2d35c29 Mon Sep 17 00:00:00 2001 +From 0b0261524254b16e92aeb4b1b1f3ae28abcc0d7f Mon Sep 17 00:00:00 2001 From: FernetMenta Date: Thu, 12 Apr 2012 15:43:56 +0200 Subject: [PATCH 045/107] xrandr: remove method RestoreState @@ -12928,10 +12928,10 @@ index e3450fe..cf22fbf 100644 //bool Has1080p(); //bool Has720p(); -- -1.8.1.5 +1.8.1.6 -From 5bb5d4baa473de93885500a95666d219d1f8d65d Mon Sep 17 00:00:00 2001 +From a7d560c9c367a1c965b3b62ed57846a759abe592 Mon Sep 17 00:00:00 2001 From: xbmc Date: Sun, 20 May 2012 13:17:10 +0200 Subject: [PATCH 046/107] xrandr: observe orientation @@ -13146,10 +13146,10 @@ index cf22fbf..71ffab4 100644 class CXRandR -- -1.8.1.5 +1.8.1.6 -From f7a09822588ca1183819cf515568709a878852be Mon Sep 17 00:00:00 2001 +From 9df5ca0e6d4656c3070ea58aa910b1b7f59cb0f5 Mon Sep 17 00:00:00 2001 From: FernetMenta Date: Thu, 5 Jul 2012 11:54:15 +0200 Subject: [PATCH 047/107] xrandr: allow getting info for multiple screen's @@ -13324,10 +13324,10 @@ index 71ffab4..26c2653 100644 extern CXRandR g_xrandr; -- -1.8.1.5 +1.8.1.6 -From 1d41eb58d63bf3c9810bcdaecb3988934bd4623b Mon Sep 17 00:00:00 2001 +From ba137b6043ef937f6f31152d15aaba52a2a34b76 Mon Sep 17 00:00:00 2001 From: FernetMenta Date: Thu, 5 Jul 2012 11:44:00 +0200 Subject: [PATCH 048/107] X11: fix multi-head setups @@ -13346,10 +13346,10 @@ Subject: [PATCH 048/107] X11: fix multi-head setups 10 files changed, 241 insertions(+), 115 deletions(-) diff --git a/language/English/strings.po b/language/English/strings.po -index 23e503d..0646c90 100644 +index f18acfb..60b8e3c 100644 --- a/language/English/strings.po +++ b/language/English/strings.po -@@ -937,7 +937,9 @@ msgctxt "#245" +@@ -997,7 +997,9 @@ msgctxt "#245" msgid "Sizing: (%i,%i)->(%i,%i) (Zoom x%2.2f) AR:%2.2f:1 (Pixels: %2.2f:1) (VShift: %2.2f)" msgstr "" @@ -14086,10 +14086,10 @@ index 0d4436b..0336b3b 100644 private: bool IsSuitableVisual(XVisualInfo *vInfo); -- -1.8.1.5 +1.8.1.6 -From 2acf469c65a2f4f00378536f2b3a3feed5a0ff83 Mon Sep 17 00:00:00 2001 +From 1f6e1632679c0ac2a089ad8f53f54af457f8a6f4 Mon Sep 17 00:00:00 2001 From: FernetMenta Date: Thu, 5 Jul 2012 11:36:32 +0200 Subject: [PATCH 049/107] X11: remove all DefaultScreen and RootWindow macros @@ -14157,10 +14157,10 @@ index 1bea366..cc39720 100644 CLog::Log(LOGDEBUG, "GLX_EXTENSIONS:%s", m_glxext.c_str()); -- -1.8.1.5 +1.8.1.6 -From c6bc985a50a7d5638fd4b478b032ca4f3a4de66d Mon Sep 17 00:00:00 2001 +From 10af90643fb8d61bc71e93244977cfc612f927ec Mon Sep 17 00:00:00 2001 From: FernetMenta Date: Thu, 5 Jul 2012 11:45:22 +0200 Subject: [PATCH 050/107] X11: remove all DefaultScreen and RootWindow macros @@ -14232,10 +14232,10 @@ index cc20523..b70af17 100644 XRRFreeScreenConfigInfo(CurrInfo); -- -1.8.1.5 +1.8.1.6 -From f6d584d6a4350af99446db83096d35567da80c4e Mon Sep 17 00:00:00 2001 +From df540ab640e2ab40876349b577bbdf4b2636cdb9 Mon Sep 17 00:00:00 2001 From: xbmc Date: Wed, 20 Jun 2012 17:37:11 +0200 Subject: [PATCH 051/107] X11: recreate gl context after output has changed @@ -14386,10 +14386,10 @@ index cc39720..dda7b14 100644 } -- -1.8.1.5 +1.8.1.6 -From 77c8b28737e2deed0c80dbcfe4de1050a0f5689a Mon Sep 17 00:00:00 2001 +From 9fde720f97254f004705f5465e037865334f4d02 Mon Sep 17 00:00:00 2001 From: FernetMenta Date: Thu, 5 Jul 2012 12:06:25 +0200 Subject: [PATCH 052/107] X11: hook video reference clock in windowing @@ -14594,10 +14594,10 @@ index ace9bf5..5db85e5 100644 bool m_UseNvSettings; bool m_bIsATI; -- -1.8.1.5 +1.8.1.6 -From 94820cf77b222641743ca7c4fa70c4da52393fb2 Mon Sep 17 00:00:00 2001 +From cce79d6678fd6fc760e58c90fb23c9de6529c018 Mon Sep 17 00:00:00 2001 From: xbmc Date: Thu, 21 Jun 2012 17:26:51 +0200 Subject: [PATCH 053/107] X11: fix video calibrations @@ -14702,10 +14702,10 @@ index 2227320..630c0e2 100644 // Local to WinSystemX11 only Display* GetDisplay() { return m_dpy; } -- -1.8.1.5 +1.8.1.6 -From a123248db64661635e72491de434715a234996fe Mon Sep 17 00:00:00 2001 +From c12ed9e133510c67de1270be5b0e9075ffcbfa9c Mon Sep 17 00:00:00 2001 From: FernetMenta Date: Thu, 5 Jul 2012 12:00:26 +0200 Subject: [PATCH 054/107] X11: deactivate screen saver on startup @@ -14775,10 +14775,10 @@ index 630c0e2..f78f613 100644 virtual void NotifyAppActiveChange(bool bActivated); virtual void NotifyAppFocusChange(bool bGaining); -- -1.8.1.5 +1.8.1.6 -From c852395e5a23b44384b2b9cbad3a5e8d51d77358 Mon Sep 17 00:00:00 2001 +From 919407a69bd44975ac3dac96cc285514a0b5f2f2 Mon Sep 17 00:00:00 2001 From: FernetMenta Date: Thu, 5 Jul 2012 12:10:09 +0200 Subject: [PATCH 055/107] X11: change method of going full-screen @@ -14822,10 +14822,10 @@ index 706f8e4..a1ffb8d 100644 Pixmap bitmapNoData; XColor black; -- -1.8.1.5 +1.8.1.6 -From f0685bf3a51505a58d1c7cfa2d15401d604798ab Mon Sep 17 00:00:00 2001 +From beba6e3208cd5f03f3665e0c9f2c60fea1c78673 Mon Sep 17 00:00:00 2001 From: xbmc Date: Thu, 28 Jun 2012 19:12:39 +0200 Subject: [PATCH 056/107] X11: reset key repeat and key modifier on focus lost @@ -14857,10 +14857,10 @@ index c58067b..c9f8a20 100644 serial = xevent.xfocus.serial; break; -- -1.8.1.5 +1.8.1.6 -From ad1e9693f738f6c5a77f17d1302fa9bdecea8ca6 Mon Sep 17 00:00:00 2001 +From b57ce3c13b03522a174f5e2be671001c7997c171 Mon Sep 17 00:00:00 2001 From: Joakim Plate Date: Thu, 5 Jul 2012 14:18:46 +0200 Subject: [PATCH 057/107] X11: replace custom utf8 to unicode with charset @@ -15077,10 +15077,10 @@ index 6100933..72955ad 100644 XIC m_xic; XBMC_Event m_lastKey; -- -1.8.1.5 +1.8.1.6 -From 16585e28b3dfb673a1967ed87e9f3b6a6d4ba06a Mon Sep 17 00:00:00 2001 +From b432830f52db8ed392b995761624e3eb361f8988 Mon Sep 17 00:00:00 2001 From: Joakim Plate Date: Thu, 5 Jul 2012 14:23:54 +0200 Subject: [PATCH 058/107] X11: fixed invalid usage of sizeof() (squash into x11 @@ -15144,10 +15144,10 @@ index 72955ad..102a076 100644 XIC m_xic; XBMC_Event m_lastKey; -- -1.8.1.5 +1.8.1.6 -From 4e9d01ae4f4e1c80b7388d43ceef96dfddf1df16 Mon Sep 17 00:00:00 2001 +From f6af834a5fffdcd4915f8a402399b4011c6ac321 Mon Sep 17 00:00:00 2001 From: xbmc Date: Sat, 9 Jun 2012 18:23:53 +0200 Subject: [PATCH 059/107] add missing keys to xbmc keytable @@ -15170,10 +15170,10 @@ index f18e9b1..066cd77 100644 // Function keys , { XBMCK_F1, 0, 0, XBMCVK_F1, "f1"} -- -1.8.1.5 +1.8.1.6 -From 05294026bdff34f7bd4b6f84af92086d0432263d Mon Sep 17 00:00:00 2001 +From 6eabe6d1bd637e5a15eae4de18979553c42ef0be Mon Sep 17 00:00:00 2001 From: xbmc Date: Fri, 16 Mar 2012 15:57:51 +0100 Subject: [PATCH 060/107] videorefclock: temp deactivate of nv settings @@ -15196,10 +15196,10 @@ index 9b217d4..de1729b 100644 #endif } -- -1.8.1.5 +1.8.1.6 -From 4c077cc47bd900be8c5e845309ad5cdd0ab08853 Mon Sep 17 00:00:00 2001 +From c454bc996857121e8e16c955f61a7b6fbe0e4a29 Mon Sep 17 00:00:00 2001 From: xbmc Date: Mon, 20 Aug 2012 09:09:09 +0200 Subject: [PATCH 061/107] videorefclock: ask graphics context for refresh rate @@ -15230,10 +15230,10 @@ index de1729b..6f2ed8e 100644 CLog::Log(LOGDEBUG, "CVideoReferenceClock: Detected refreshrate: %i hertz", (int)m_RefreshRate); -- -1.8.1.5 +1.8.1.6 -From d4a3b7bfa1d94a0ca4f98ffab503301a321a1511 Mon Sep 17 00:00:00 2001 +From c2f6ca94ab60489ca33fcaa1711cd7734fd5a570 Mon Sep 17 00:00:00 2001 From: xbmc Date: Mon, 9 Jul 2012 14:00:18 +0200 Subject: [PATCH 062/107] X11: fix icon texture after @@ -15341,10 +15341,10 @@ index a1ffb8d..3acc5d4 100644 } -- -1.8.1.5 +1.8.1.6 -From 47ae4dab24afecd7bd19812bab3eeb752feb1d2f Mon Sep 17 00:00:00 2001 +From 8572cd9dbea0dcec7e3f30e8916272ac47c54316 Mon Sep 17 00:00:00 2001 From: xbmc Date: Tue, 10 Jul 2012 11:14:12 +0200 Subject: [PATCH 063/107] X11: check for window manager @@ -15465,10 +15465,10 @@ index f78f613..f479c27 100644 CStopWatch m_screensaverReset; }; -- -1.8.1.5 +1.8.1.6 -From b4d1f50a15a5aa4609883bce488f5575878c8076 Mon Sep 17 00:00:00 2001 +From 3efa28f76c5ef4f95562f19a977ba74b06460b23 Mon Sep 17 00:00:00 2001 From: xbmc Date: Thu, 12 Jul 2012 11:11:47 +0200 Subject: [PATCH 064/107] X11: dont set window on xrandr if no mode available @@ -15505,10 +15505,10 @@ index fea6ada..f38fb73 100644 CStdString currentOutput = g_guiSettings.GetString("videoscreen.monitor"); -- -1.8.1.5 +1.8.1.6 -From 4356cde6383625858b21131c74418c7dc760188e Mon Sep 17 00:00:00 2001 +From cc450b25fe97fedd673f2c051e8d1ef6754d94b2 Mon Sep 17 00:00:00 2001 From: xbmc Date: Thu, 26 Jul 2012 09:34:28 +0200 Subject: [PATCH 065/107] X11: fix crash after a resolution change on startup @@ -15532,10 +15532,10 @@ index f38fb73..ea47a72 100644 #endif -- -1.8.1.5 +1.8.1.6 -From a59c0465c77a43c8efb80547194b338d13b0c543 Mon Sep 17 00:00:00 2001 +From 672637abb7425282eab54110a77f6f1cad2c6911 Mon Sep 17 00:00:00 2001 From: xbmc Date: Sat, 15 Sep 2012 18:27:29 +0200 Subject: [PATCH 066/107] X11: lock graphics context in NotifyXRREvent @@ -15558,10 +15558,10 @@ index ea47a72..d0fd15a 100644 { CLog::Log(LOGERROR, "WinSystemX11::RefreshWindow - failed to query xrandr"); -- -1.8.1.5 +1.8.1.6 -From 21bfa920e82a7aae0351ef210423a455147b9cf1 Mon Sep 17 00:00:00 2001 +From c000db14290c144041f5b1d10ea66029a26ece7d Mon Sep 17 00:00:00 2001 From: Rainer Hochecker Date: Sat, 8 Oct 2011 16:45:13 +0200 Subject: [PATCH 067/107] ffmpeg: add xvba hwaccel @@ -16410,10 +16410,10 @@ index 1c00ac4..6437e29 100644 AV_PIX_FMT_YUV420P16LE, ///< planar YUV 4:2:0, 24bpp, (1 Cr & Cb sample per 2x2 Y samples), little-endian AV_PIX_FMT_YUV420P16BE, ///< planar YUV 4:2:0, 24bpp, (1 Cr & Cb sample per 2x2 Y samples), big-endian -- -1.8.1.5 +1.8.1.6 -From 50b2af5fb4e85c12ff5882e6b41c4b1361f340b4 Mon Sep 17 00:00:00 2001 +From dee6da96a02c3f6aad027a210a24ab959634331d Mon Sep 17 00:00:00 2001 From: xbmc Date: Thu, 12 Apr 2012 12:09:31 +0200 Subject: [PATCH 068/107] xvba: add decoder @@ -16533,10 +16533,10 @@ index 7fd9483..054c49d 100644 --enable-pthreads \ --enable-runtime-cpudetect \ diff --git a/language/English/strings.po b/language/English/strings.po -index 0646c90..dfd8b81 100644 +index 60b8e3c..e48ad66 100644 --- a/language/English/strings.po +++ b/language/English/strings.po -@@ -5406,7 +5406,11 @@ msgctxt "#13436" +@@ -5673,7 +5673,11 @@ msgctxt "#13436" msgid "Prefer VDPAU Video Mixer" msgstr "" @@ -16549,7 +16549,7 @@ index 0646c90..dfd8b81 100644 #: xbmc/settings/GUISettings.cpp msgctxt "#13500" -@@ -6433,7 +6437,11 @@ msgctxt "#16325" +@@ -6750,7 +6754,11 @@ msgctxt "#16325" msgid "VDPAU - Bob" msgstr "" @@ -16996,7 +16996,7 @@ index 2bf79fe..4d7dbb1 100644 struct { COpenMax *openMax; diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp -index 1a1a881..85c742a 100644 +index 37084b6..37161ee 100644 --- a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp +++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp @@ -57,6 +57,9 @@ @@ -19861,10 +19861,10 @@ index 6fe786e..2958744 100644 /* remove unsupported methods */ for(vector >::iterator it = entries.begin(); it != entries.end();) -- -1.8.1.5 +1.8.1.6 -From f6d7703f0a3eefbf09d7112b7370207a77e9f5a2 Mon Sep 17 00:00:00 2001 +From 42c4812a6b8a8ccb0a15f16f897a60e397fce217 Mon Sep 17 00:00:00 2001 From: fritsch Date: Sun, 4 Nov 2012 16:24:10 +0100 Subject: [PATCH 069/107] xvba: add string for available decoders - we are @@ -19875,7 +19875,7 @@ Subject: [PATCH 069/107] xvba: add string for available decoders - we are 1 file changed, 5 insertions(+) diff --git a/xbmc/cores/dvdplayer/DVDCodecs/DVDFactoryCodec.cpp b/xbmc/cores/dvdplayer/DVDCodecs/DVDFactoryCodec.cpp -index eedde21..6d0d9eb 100644 +index 4ea6617..ec3e392 100644 --- a/xbmc/cores/dvdplayer/DVDCodecs/DVDFactoryCodec.cpp +++ b/xbmc/cores/dvdplayer/DVDCodecs/DVDFactoryCodec.cpp @@ -171,6 +171,11 @@ CDVDVideoCodec* CDVDFactoryCodec::CreateVideoCodec(CDVDStreamInfo &hint, unsigne @@ -19891,10 +19891,10 @@ index eedde21..6d0d9eb 100644 CLog::Log(LOGDEBUG, "CDVDFactoryCodec: compiled in hardware support: %s", hwSupport.c_str()); -- -1.8.1.5 +1.8.1.6 -From d4c018cba6024a674fd99b405db26ca14c7e229a Mon Sep 17 00:00:00 2001 +From 9b9c42eff0ef16667399a8cfeab0cff3159f42ac Mon Sep 17 00:00:00 2001 From: xbmc Date: Sat, 16 Jun 2012 12:46:30 +0200 Subject: [PATCH 070/107] xvba: do not use vaapi if xvba is present @@ -19924,10 +19924,10 @@ index 0cd89e8..db251bc 100644 VAProfile profile; -- -1.8.1.5 +1.8.1.6 -From d64da78048c633070f868678c9fc4df4dc1c70ad Mon Sep 17 00:00:00 2001 +From 33965123c3e71ee49259e39fedc8ffef62a26f0f Mon Sep 17 00:00:00 2001 From: xbmc Date: Thu, 23 Aug 2012 19:39:49 +0200 Subject: [PATCH 071/107] ffmpeg: add av_find_default_stream_index to interface @@ -19973,10 +19973,10 @@ index 7fc831e..3e96bee 100644 /* dependencies of libavformat */ -- -1.8.1.5 +1.8.1.6 -From fd18999420e1087bfb60831b1fba1dc041457643 Mon Sep 17 00:00:00 2001 +From 7036f32e8dfb44f0db0aa4a3f39a1346411bf5a4 Mon Sep 17 00:00:00 2001 From: xbmc Date: Mon, 20 Aug 2012 16:06:39 +0200 Subject: [PATCH 072/107] dvdplayer: observe pts counter overflow @@ -19987,7 +19987,7 @@ Subject: [PATCH 072/107] dvdplayer: observe pts counter overflow 2 files changed, 200 insertions(+), 1 deletion(-) diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp -index a27cf1a..fc3af63 100644 +index 0f2deaf..a3b0def 100644 --- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp +++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp @@ -18,13 +18,13 @@ @@ -20261,10 +20261,10 @@ index eb2f68c..8a7a5de 100644 }; -- -1.8.1.5 +1.8.1.6 -From 1a0eaa949dd9ac5b41446809ef579f887c3ec478 Mon Sep 17 00:00:00 2001 +From 3a418ee1b2d0b9330c08a113f59ba6a848cfbbfc Mon Sep 17 00:00:00 2001 From: xbmc Date: Tue, 2 Oct 2012 13:02:10 +0200 Subject: [PATCH 073/107] dvdplayer: avoid short screen flicker caused by @@ -20297,10 +20297,10 @@ index 5bad9cf..b9ed56d 100644 m_output.extended_format = pPicture->extended_format; m_output.color_matrix = pPicture->color_matrix; -- -1.8.1.5 +1.8.1.6 -From 6519857500bce13d38e677fab3b34e2f718e97d5 Mon Sep 17 00:00:00 2001 +From 2db313624eec4d15458c2bf0423da0b875aa1745 Mon Sep 17 00:00:00 2001 From: xbmc Date: Thu, 11 Oct 2012 12:05:50 +0200 Subject: [PATCH 074/107] vdpau: advanced settings for auto deinterlacing @@ -20366,10 +20366,10 @@ index 8572436..7ac18ed 100644 bool m_videoVDPAUdeintSkipChromaHD; bool m_musicUseTimeSeeking; -- -1.8.1.5 +1.8.1.6 -From f77aedb933cba3ce6ab37db2258781b3fd295a1c Mon Sep 17 00:00:00 2001 +From 9117af579f9d4b370385684120ad7ff20f82beaa Mon Sep 17 00:00:00 2001 From: xbmc Date: Fri, 2 Nov 2012 13:20:03 +0100 Subject: [PATCH 075/107] player: fix rewind @@ -20601,10 +20601,10 @@ index f395897..c9bf2f4 100644 unsigned int m_dropRequests; bool m_requestOutputDrop; -- -1.8.1.5 +1.8.1.6 -From 53f3d923da5102d5e6f7306017b86569872b48b1 Mon Sep 17 00:00:00 2001 +From 803f52f573007dc626d67aad5606a4e9fbc55d14 Mon Sep 17 00:00:00 2001 From: xbmc Date: Fri, 23 Nov 2012 17:41:12 +0100 Subject: [PATCH 076/107] xrandr: fix query for multiple screens @@ -20645,10 +20645,10 @@ index 75c84ea..2343ec0 100644 FILE* file = popen(cmd.c_str(),"r"); if (!file) -- -1.8.1.5 +1.8.1.6 -From d10584d5297f155f5ee57be8d4ae66c8193bed46 Mon Sep 17 00:00:00 2001 +From d20814c3afddc2ba9acb77c0c0f24036ed9ff616 Mon Sep 17 00:00:00 2001 From: xbmc Date: Sun, 2 Dec 2012 15:46:55 +0100 Subject: [PATCH 077/107] X11: add debug log to print out refresh after xrr @@ -20676,10 +20676,10 @@ index d0fd15a..0c70c1f 100644 unsigned int i; bool found(false); -- -1.8.1.5 +1.8.1.6 -From bb38bd5a83757c0173ebd1c9ac74351b155d942d Mon Sep 17 00:00:00 2001 +From f497e6e82b05485ac7e0dd310717fd4aaafdd2d6 Mon Sep 17 00:00:00 2001 From: xbmc Date: Tue, 11 Dec 2012 11:08:13 +0100 Subject: [PATCH 078/107] X11: dont call XCloseDisplay on shutdown, it crashes @@ -20704,10 +20704,10 @@ index 0c70c1f..0a1bafa 100644 // m_SDLSurface is free()'d by SDL_Quit(). -- -1.8.1.5 +1.8.1.6 -From 75bee034d37803c7e78c91bc6071b4562b75086a Mon Sep 17 00:00:00 2001 +From 915cd3636419b80c242c2d3f236ccff52e2abcd4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9gory=20Coutant?= Date: Wed, 12 Dec 2012 19:49:47 +0100 Subject: [PATCH 079/107] x11: support for multiple x screens @@ -20730,10 +20730,10 @@ index 2343ec0..9fcaec5 100644 // TODO ERROR return false; -- -1.8.1.5 +1.8.1.6 -From ec99f8b64845ca249f22bdc7d7e69dc4e6279cff Mon Sep 17 00:00:00 2001 +From 635e6ccc62f5e9a0f854b15569c88251e7e59150 Mon Sep 17 00:00:00 2001 From: xbmc Date: Thu, 20 Dec 2012 19:35:38 +0100 Subject: [PATCH 080/107] fix compile error after recent change @@ -20756,10 +20756,10 @@ index 20719ba..78dccb6 100644 { control->SetDelayed(); -- -1.8.1.5 +1.8.1.6 -From 4e302b2c947ac6e3a687b15427c268380ea2c53b Mon Sep 17 00:00:00 2001 +From 373b3c8318372960af240bdf68701ac61af85dbd Mon Sep 17 00:00:00 2001 From: xbmc Date: Mon, 24 Dec 2012 16:02:42 +0100 Subject: [PATCH 081/107] pvr: increase changes counter of stream on stream @@ -20793,10 +20793,10 @@ index 58bea8d..e4d2a18 100644 else if (props.stream[i].iCodecType == AVMEDIA_TYPE_VIDEO) { -- -1.8.1.5 +1.8.1.6 -From 1a2bcb484fb0ae3eb00054e993f8aa8900ab4711 Mon Sep 17 00:00:00 2001 +From d1f7cd74378a7be912f8213e206e959a7cf8d556 Mon Sep 17 00:00:00 2001 From: xbmc Date: Thu, 17 Jan 2013 16:03:22 +0100 Subject: [PATCH 082/107] X11: add keymapping for XF86XK_Sleep @@ -20818,10 +20818,10 @@ index 4a5aab4..da5d412 100644 , {XK_Undo, XBMCK_UNDO} /* Media keys */ -- -1.8.1.5 +1.8.1.6 -From bdd8be70269b2ae502f6bc3a7d1390f1b03f7830 Mon Sep 17 00:00:00 2001 +From 0755b57fe410c9671a81fa2aab805b9bd2feac5b Mon Sep 17 00:00:00 2001 From: xbmc Date: Mon, 21 Jan 2013 09:00:19 +0100 Subject: [PATCH 083/107] X11: remove toggle full screen after resume @@ -20847,10 +20847,10 @@ index 0756b1e..0d0ba71 100644 } g_application.ResetScreenSaver(); -- -1.8.1.5 +1.8.1.6 -From fc029b5358f90f8b7945d933a5194ba6085c2019 Mon Sep 17 00:00:00 2001 +From 5cc69c4e6d60fa6662ec47ec0ed1dc04ebef14ae Mon Sep 17 00:00:00 2001 From: xbmc Date: Wed, 23 Jan 2013 17:03:02 +0100 Subject: [PATCH 084/107] xrandr: set screen on mode change command @@ -20873,10 +20873,10 @@ index 9fcaec5..b91178e 100644 return false; CLog::Log(LOGINFO, "XRANDR: %s", cmd); -- -1.8.1.5 +1.8.1.6 -From a6ec3aa66e3d13f0a4a8a991c068ac0224efc7f4 Mon Sep 17 00:00:00 2001 +From e64e22efe01a6c2b9f90c6e8db714eafbbba149a Mon Sep 17 00:00:00 2001 From: xbmc Date: Wed, 23 Jan 2013 17:03:39 +0100 Subject: [PATCH 085/107] X11: recreate glx context when output changes @@ -20927,10 +20927,10 @@ index f479c27..7345c06 100644 void OnLostDevice(); bool SetWindow(int width, int height, bool fullscreen, const CStdString &output); -- -1.8.1.5 +1.8.1.6 -From 9d028f9109f11fced42ea0bd083f9d39a17401f6 Mon Sep 17 00:00:00 2001 +From b347b4d4bdcdfa7594e493d3ac8e09045bab1e43 Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 18 Jan 2013 15:16:38 +0100 Subject: [PATCH 086/107] multi-screen: fix compilation on windows @@ -21003,10 +21003,10 @@ index 78dccb6..cafc732 100644 CDisplaySettings::Get().SetCurrentResolution(nextRes, true); g_graphicsContext.SetVideoResolution(nextRes, outputChanged); -- -1.8.1.5 +1.8.1.6 -From 2d983fbe5fdf843ec9b2ea22ebb081f690504fbb Mon Sep 17 00:00:00 2001 +From 9be18fcc345151fb3a9db3c9cff97b533acbd7ee Mon Sep 17 00:00:00 2001 From: xbmc Date: Fri, 14 Dec 2012 14:19:15 +0100 Subject: [PATCH 087/107] pvr: do not show selection dialog for a single menu @@ -21049,10 +21049,10 @@ index f3fb852..2c9b6fe 100644 client->CallMenuHook(hooks->at(selection)); } -- -1.8.1.5 +1.8.1.6 -From 6314b4eab6a35483ec7fab48a3f1c3f57bbb4a26 Mon Sep 17 00:00:00 2001 +From e12b6aa0adba68b13e481b38f11c3eaeb0391363 Mon Sep 17 00:00:00 2001 From: xbmc Date: Sun, 3 Feb 2013 08:17:16 +0100 Subject: [PATCH 088/107] X11: use default screen parameters if no output @@ -21156,10 +21156,10 @@ index cbff7e1..ea531ae 100644 mask, &swa); -- -1.8.1.5 +1.8.1.6 -From b079f11ddd4645ce5c6be8375163b60a85936bce Mon Sep 17 00:00:00 2001 +From 782fe066d31ad03ef3c285ededeccf1fccb00c9c Mon Sep 17 00:00:00 2001 From: xbmc Date: Sat, 23 Mar 2013 15:13:32 +0100 Subject: [PATCH 089/107] X11: create parent window @@ -21425,10 +21425,10 @@ index 7345c06..770ae84 100644 Display* m_dpy; Cursor m_invisibleCursor; -- -1.8.1.5 +1.8.1.6 -From 0c134bac71aa55af68cef24cfc76897c7bff1369 Mon Sep 17 00:00:00 2001 +From 885b952efb920daa5d4d4c8c13d4d464477c22c0 Mon Sep 17 00:00:00 2001 From: xbmc Date: Sun, 24 Mar 2013 12:30:12 +0100 Subject: [PATCH 090/107] X11: use system key repeat rate instead of hardcoded @@ -21630,10 +21630,10 @@ index 102a076..5b1f3fa 100644 int m_keymodState; bool m_structureChanged; -- -1.8.1.5 +1.8.1.6 -From 34f604f641d5c37de0c88925498bb1682e65dadd Mon Sep 17 00:00:00 2001 +From 8638be447e2c18a4eca720acd0bf008561f983d6 Mon Sep 17 00:00:00 2001 From: xbmc Date: Sun, 24 Mar 2013 16:04:48 +0100 Subject: [PATCH 091/107] linux: use CLOCK_MONOTONIC_RAW as this is not subject @@ -21671,10 +21671,10 @@ index 8304ef6..ba27257 100644 #endif } -- -1.8.1.5 +1.8.1.6 -From 5a90f5c3d47355cba5f8081fa3df5fba02373a3b Mon Sep 17 00:00:00 2001 +From 3a4f66b1224a35c85c359505f85cd970a9d4ebfd Mon Sep 17 00:00:00 2001 From: xbmc Date: Thu, 28 Mar 2013 15:18:05 +0100 Subject: [PATCH 092/107] OMXPlayerAudio: fix incorrect usage of flag stalled @@ -21685,18 +21685,18 @@ Subject: [PATCH 092/107] OMXPlayerAudio: fix incorrect usage of flag stalled 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/xbmc/cores/omxplayer/OMXPlayerAudio.cpp b/xbmc/cores/omxplayer/OMXPlayerAudio.cpp -index e148311..045de7d 100644 +index 3834444..0dad6c8 100644 --- a/xbmc/cores/omxplayer/OMXPlayerAudio.cpp +++ b/xbmc/cores/omxplayer/OMXPlayerAudio.cpp -@@ -80,6 +80,7 @@ class COMXMsgAudioCodecChange : public CDVDMsg - m_send_eos = false; +@@ -79,6 +79,7 @@ class COMXMsgAudioCodecChange : public CDVDMsg + m_freq = CurrentHostFrequency(); m_bad_state = false; m_hints_current.Clear(); + m_output_stalled = false; m_av_clock->SetMasterClock(false); -@@ -169,6 +170,7 @@ void OMXPlayerAudio::OpenStream(CDVDStreamInfo &hints, COMXAudioCodecOMX *codec) +@@ -167,6 +168,7 @@ void OMXPlayerAudio::OpenStream(CDVDStreamInfo &hints, COMXAudioCodecOMX *codec) m_stalled = m_messageQueue.GetPacketCount(CDVDMsg::DEMUXER_PACKET) == 0; m_use_passthrough = (g_guiSettings.GetInt("audiooutput.mode") == AUDIO_HDMI) ? true : false ; m_use_hw_decode = g_advancedSettings.m_omxHWAudioDecode; @@ -21704,7 +21704,7 @@ index e148311..045de7d 100644 } bool OMXPlayerAudio::CloseStream(bool bWaitForBuffers) -@@ -457,11 +459,11 @@ bool OMXPlayerAudio::Decode(DemuxPacket *pkt, bool bDropPacket) +@@ -455,11 +457,11 @@ bool OMXPlayerAudio::Decode(DemuxPacket *pkt, bool bDropPacket) } if(bDropPacket) @@ -21718,7 +21718,7 @@ index e148311..045de7d 100644 if(!m_av_clock->OMXAudioBuffer() && m_av_clock->HasVideo() && m_speed == DVD_PLAYSPEED_NORMAL) { clock_gettime(CLOCK_REALTIME, &m_starttime); -@@ -469,6 +471,9 @@ bool OMXPlayerAudio::Decode(DemuxPacket *pkt, bool bDropPacket) +@@ -467,6 +469,9 @@ bool OMXPlayerAudio::Decode(DemuxPacket *pkt, bool bDropPacket) } } @@ -21728,7 +21728,7 @@ index e148311..045de7d 100644 // signal to our parent that we have initialized if(m_started == false) { -@@ -493,6 +498,7 @@ void OMXPlayerAudio::Process() +@@ -491,6 +496,7 @@ void OMXPlayerAudio::Process() if (ret == MSGQ_TIMEOUT) { @@ -21736,7 +21736,7 @@ index e148311..045de7d 100644 Sleep(10); continue; } -@@ -512,12 +518,13 @@ void OMXPlayerAudio::Process() +@@ -510,12 +516,13 @@ void OMXPlayerAudio::Process() CLog::Log(LOGINFO, "Audio: dts:%.0f pts:%.0f size:%d (s:%d f:%d d:%d l:%d) s:%d %d/%d late:%d,%d", pPacket->dts, pPacket->pts, (int)pPacket->iSize, m_started, m_flush, bPacketDrop, m_stalled, m_speed, 0, 0, (int)m_omxAudio.GetAudioRenderingLatency(), (int)m_hints_current.samplerate); #endif @@ -21752,7 +21752,7 @@ index e148311..045de7d 100644 if(m_av_clock->HasVideo() && m_av_clock->OMXAudioBuffer()) m_av_clock->OMXAudioBufferStop(); } -@@ -527,7 +534,7 @@ void OMXPlayerAudio::Process() +@@ -525,7 +532,7 @@ void OMXPlayerAudio::Process() //int iLevel = min(99,m_messageQueue.GetLevel() + MathUtils::round_int(100.0/8.0*GetCacheTime())); if(/*iLevel < 10 &&*/ m_stalled && m_av_clock->OMXAudioBuffer() && (m_endtime.tv_sec - m_starttime.tv_sec) > 1) { @@ -21761,7 +21761,7 @@ index e148311..045de7d 100644 if(m_av_clock->HasVideo() && m_av_clock->OMXAudioBuffer()) m_av_clock->OMXAudioBufferStop(); } -@@ -578,6 +585,7 @@ void OMXPlayerAudio::Process() +@@ -576,6 +583,7 @@ void OMXPlayerAudio::Process() m_av_clock->UnLock(); m_syncclock = true; m_stalled = true; @@ -21770,7 +21770,7 @@ index e148311..045de7d 100644 if (m_pAudioCodec) diff --git a/xbmc/cores/omxplayer/OMXPlayerAudio.h b/xbmc/cores/omxplayer/OMXPlayerAudio.h -index 7a749dd..4f04b54 100644 +index 21d42c0..558b15c 100644 --- a/xbmc/cores/omxplayer/OMXPlayerAudio.h +++ b/xbmc/cores/omxplayer/OMXPlayerAudio.h @@ -76,6 +76,7 @@ class OMXPlayerAudio : public CThread @@ -21782,10 +21782,10 @@ index 7a749dd..4f04b54 100644 BitstreamStats m_audioStats; -- -1.8.1.5 +1.8.1.6 -From dae2edc87faddea3f838c3c5206b88609aa5a75d Mon Sep 17 00:00:00 2001 +From d3093a129ca9f0d28b8f69a36674ebef6aca0653 Mon Sep 17 00:00:00 2001 From: xbmc Date: Thu, 28 Mar 2013 15:18:53 +0100 Subject: [PATCH 093/107] OMXPlayer: some caching fixes for pvr @@ -21795,10 +21795,10 @@ Subject: [PATCH 093/107] OMXPlayer: some caching fixes for pvr 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/xbmc/cores/omxplayer/OMXPlayer.cpp b/xbmc/cores/omxplayer/OMXPlayer.cpp -index 7de531b..0171062 100644 +index 313833e..a962c19 100644 --- a/xbmc/cores/omxplayer/OMXPlayer.cpp +++ b/xbmc/cores/omxplayer/OMXPlayer.cpp -@@ -2296,7 +2296,8 @@ void COMXPlayer::HandleMessages() +@@ -2312,7 +2312,8 @@ void COMXPlayer::HandleMessages() // 1. disable audio // 2. skip frames and adjust their pts or the clock m_playSpeed = speed; @@ -21809,10 +21809,10 @@ index 7de531b..0171062 100644 m_av_clock.OMXSetSpeed(speed); m_player_audio.SetSpeed(speed); -- -1.8.1.5 +1.8.1.6 -From 6ad086b08514927becfe7603a63c71a6a20fd8a9 Mon Sep 17 00:00:00 2001 +From 6b9524130eccd72ea75ac198b7072386cf7f800c Mon Sep 17 00:00:00 2001 From: xbmc Date: Thu, 28 Mar 2013 20:50:59 +0100 Subject: [PATCH 094/107] fix incorrect display of fps when dr kicks in @@ -21842,10 +21842,10 @@ index c72def4..3962cb8 100644 g_renderManager.UpdateResolution(); -- -1.8.1.5 +1.8.1.6 -From b2b47a6166b760f956a072fe3815550e54e13f1e Mon Sep 17 00:00:00 2001 +From e287a68257e575df8d9cd76ba52cdf6be666df2f Mon Sep 17 00:00:00 2001 From: xbmc Date: Mon, 8 Apr 2013 11:18:31 +0200 Subject: [PATCH 095/107] squash to dropping control @@ -21867,10 +21867,10 @@ index ac39406..7793c88 100644 #include #include -- -1.8.1.5 +1.8.1.6 -From 9447f9d9eddbe8a97f79e5d5f9f5f43591c64738 Mon Sep 17 00:00:00 2001 +From e2a872a49b1b241b72fa33eaaca6c5e696555e80 Mon Sep 17 00:00:00 2001 From: xbmc Date: Sat, 6 Apr 2013 18:10:57 +0200 Subject: [PATCH 096/107] enable dirty regions for video full screen @@ -22164,10 +22164,10 @@ index c0df834..8668432 100644 + bool m_hasRendered; }; -- -1.8.1.5 +1.8.1.6 -From d36957b36a0d880c84868a5a4ce87f9744988e6e Mon Sep 17 00:00:00 2001 +From 92cacbad6164c9d818fecec62d126dc92fa9f86a Mon Sep 17 00:00:00 2001 From: xbmc Date: Thu, 11 Apr 2013 12:33:46 +0200 Subject: [PATCH 097/107] pvr: try SwtichChannel when selecting a channel via @@ -22192,22 +22192,345 @@ index 4dfd5fb..31e370a 100644 { CStdString msg; -- -1.8.1.5 +1.8.1.6 -From bd564ea99932bc0db954231897ad86f8f9e6e221 Mon Sep 17 00:00:00 2001 +From 1e3272a694ca5e54b1b23503186d98f674afffb5 Mon Sep 17 00:00:00 2001 +From: xbmc +Date: Fri, 12 Apr 2013 21:01:24 +0200 +Subject: [PATCH 098/107] AE: temp fix for transcode after ffmpeg update + +--- + .../cores/AudioEngine/Encoders/AEEncoderFFmpeg.cpp | 87 +++++++++++++++++++--- + xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.h | 2 + + 2 files changed, 77 insertions(+), 12 deletions(-) + +diff --git a/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.cpp b/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.cpp +index 34ddda6..b2d0b75 100644 +--- a/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.cpp ++++ b/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.cpp +@@ -143,16 +143,47 @@ bool CAEEncoderFFmpeg::Initialize(AEAudioFormat &format) + bool hasS32 = false; + bool hasS16 = false; + bool hasU8 = false; ++ m_IsPlanar = false; + + for(int i = 0; codec->sample_fmts[i] != AV_SAMPLE_FMT_NONE; ++i) + { + switch (codec->sample_fmts[i]) + { +- case AV_SAMPLE_FMT_FLT: hasFloat = true; break; +- case AV_SAMPLE_FMT_DBL: hasDouble = true; break; +- case AV_SAMPLE_FMT_S32: hasS32 = true; break; +- case AV_SAMPLE_FMT_S16: hasS16 = true; break; +- case AV_SAMPLE_FMT_U8 : hasU8 = true; break; ++ case AV_SAMPLE_FMT_FLT: ++ hasFloat = true; ++ break; ++ case AV_SAMPLE_FMT_FLTP: ++ hasFloat = true; ++ m_IsPlanar = true; ++ break; ++ case AV_SAMPLE_FMT_DBL: ++ hasDouble = true; ++ break; ++ case AV_SAMPLE_FMT_DBLP: ++ hasDouble = true; ++ m_IsPlanar = true; ++ break; ++ case AV_SAMPLE_FMT_S32: ++ hasS32 = true; ++ break; ++ case AV_SAMPLE_FMT_S32P: ++ hasS32 = true; ++ m_IsPlanar = true; ++ break; ++ case AV_SAMPLE_FMT_S16: ++ hasS16 = true; ++ break; ++ case AV_SAMPLE_FMT_S16P: ++ hasS16 = true; ++ m_IsPlanar = true; ++ break; ++ case AV_SAMPLE_FMT_U8: ++ hasU8 = true; ++ break; ++ case AV_SAMPLE_FMT_U8P: ++ hasU8 = true; ++ m_IsPlanar = true; ++ break; + + default: + return false; +@@ -161,27 +192,42 @@ bool CAEEncoderFFmpeg::Initialize(AEAudioFormat &format) + + if (hasFloat) + { +- m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_FLT; ++ if (m_IsPlanar) ++ m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_FLTP; ++ else ++ m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_FLT; + format.m_dataFormat = AE_FMT_FLOAT; + } + else if (hasDouble) + { +- m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_DBL; ++ if (m_IsPlanar) ++ m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_DBLP; ++ else ++ m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_DBL; + format.m_dataFormat = AE_FMT_DOUBLE; + } + else if (hasS32) + { +- m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_S32; ++ if (m_IsPlanar) ++ m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_S32P; ++ else ++ m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_S32; + format.m_dataFormat = AE_FMT_S32NE; + } + else if (hasS16) + { +- m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_S16; ++ if (m_IsPlanar) ++ m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_S16P; ++ else ++ m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_S16; + format.m_dataFormat = AE_FMT_S16NE; + } + else if (hasU8) + { +- m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_U8; ++ if (m_IsPlanar) ++ m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_U8P; ++ else ++ m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_U8; + format.m_dataFormat = AE_FMT_U8; + } + else +@@ -241,8 +287,25 @@ int CAEEncoderFFmpeg::Encode(float *data, unsigned int frames) + if (!m_CodecCtx || frames < m_NeededFrames) + return 0; + +- /* encode it */ +- int size = m_dllAvCodec.avcodec_encode_audio(m_CodecCtx, m_Buffer + IEC61937_DATA_OFFSET, FF_MIN_BUFFER_SIZE, (short*)data); ++ int size = 0; ++ // planar format ++ if (m_IsPlanar) ++ { ++ int src = 0; ++ int dst = 0; ++ for (int i = 0; i < 1536; i++) ++ { ++ for (int j = 0; j < 6; j++) ++ { ++ memcpy(m_PlanarBuffer+(j*1536*4+dst), (uint8_t*)data+src, 4); ++ src += 4; ++ } ++ dst += 4; ++ } ++ size = m_dllAvCodec.avcodec_encode_audio(m_CodecCtx, m_Buffer + IEC61937_DATA_OFFSET, FF_MIN_BUFFER_SIZE, (short*)m_PlanarBuffer); ++ } ++ else ++ size = m_dllAvCodec.avcodec_encode_audio(m_CodecCtx, m_Buffer + IEC61937_DATA_OFFSET, FF_MIN_BUFFER_SIZE, (short*)data); + + /* pack it into an IEC958 frame */ + m_BufferSize = m_PackFunc(NULL, size, m_Buffer); +diff --git a/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.h b/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.h +index 0cedf3f..90b0147 100644 +--- a/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.h ++++ b/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.h +@@ -65,6 +65,8 @@ class CAEEncoderFFmpeg: public IAEEncoder + double m_SampleRateMul; + + unsigned int m_NeededFrames; ++ bool m_IsPlanar; ++ uint8_t m_PlanarBuffer[1536*6*4]; + + unsigned int BuildChannelLayout(const int64_t ffmap, CAEChannelInfo& layout); + }; +-- +1.8.1.6 + + +From 865dea32e3bf42a5f01fef0b5e6ae1ccb2517359 Mon Sep 17 00:00:00 2001 +From: xbmc +Date: Sat, 13 Apr 2013 08:32:06 +0200 +Subject: [PATCH 099/107] X11: fix mouse coverage + +--- + xbmc/windowing/X11/WinSystemX11.cpp | 11 ++++++++--- + xbmc/windowing/X11/WinSystemX11.h | 1 + + 2 files changed, 9 insertions(+), 3 deletions(-) + +diff --git a/xbmc/windowing/X11/WinSystemX11.cpp b/xbmc/windowing/X11/WinSystemX11.cpp +index 2d9cf2a..d36765d 100644 +--- a/xbmc/windowing/X11/WinSystemX11.cpp ++++ b/xbmc/windowing/X11/WinSystemX11.cpp +@@ -581,10 +581,10 @@ void CWinSystemX11::NotifyAppFocusChange(bool bGaining) + + void CWinSystemX11::NotifyMouseCoverage(bool covered) + { +- if (!m_bFullScreen) ++ if (!m_bFullScreen || !m_mainWindow) + return; + +- if (covered) ++ if (covered && !m_bIsGrabbed) + { + int result = -1; + while (result != GrabSuccess && result != AlreadyGrabbed) +@@ -593,11 +593,13 @@ void CWinSystemX11::NotifyMouseCoverage(bool covered) + XbmcThreads::ThreadSleep(100); + } + XGrabKeyboard(m_dpy, m_mainWindow, True, GrabModeAsync, GrabModeAsync, CurrentTime); ++ m_bIsGrabbed = true; + } +- else ++ else if (!covered && m_bIsGrabbed) + { + XUngrabKeyboard(m_dpy, CurrentTime); + XUngrabPointer(m_dpy, CurrentTime); ++ m_bIsGrabbed = false; + } + } + +@@ -953,7 +955,10 @@ bool CWinSystemX11::SetWindow(int width, int height, bool fullscreen, const CStd + XbmcThreads::ThreadSleep(100); + } + XGrabKeyboard(m_dpy, m_mainWindow, True, GrabModeAsync, GrabModeAsync, CurrentTime); ++ m_bIsGrabbed = true; + } ++ else ++ m_bIsGrabbed = false; + + CDirtyRegionList dr; + RefreshGlxContext(!m_currentOutput.Equals(output)); +diff --git a/xbmc/windowing/X11/WinSystemX11.h b/xbmc/windowing/X11/WinSystemX11.h +index 770ae84..084f546 100644 +--- a/xbmc/windowing/X11/WinSystemX11.h ++++ b/xbmc/windowing/X11/WinSystemX11.h +@@ -88,6 +88,7 @@ class CWinSystemX11 : public CWinSystemBase + bool m_bWasFullScreenBeforeMinimize; + bool m_minimized; + bool m_bIgnoreNextFocusMessage; ++ bool m_bIsGrabbed; + int m_RREventBase; + CCriticalSection m_resourceSection; + std::vector m_resources; +-- +1.8.1.6 + + +From 135efc8e326e7d40a03eb37434bcd2101532962f Mon Sep 17 00:00:00 2001 +From: fritsch +Date: Sat, 13 Apr 2013 11:30:39 +0200 +Subject: [PATCH 100/107] XVBA: revisit draw functions + +--- + lib/ffmpeg/libavcodec/xvba_h264.c | 2 +- + lib/ffmpeg/libavcodec/xvba_vc1.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/lib/ffmpeg/libavcodec/xvba_h264.c b/lib/ffmpeg/libavcodec/xvba_h264.c +index ae45f3a..309d928 100644 +--- a/lib/ffmpeg/libavcodec/xvba_h264.c ++++ b/lib/ffmpeg/libavcodec/xvba_h264.c +@@ -160,7 +160,7 @@ static int end_frame(AVCodecContext *avctx) + h->got_first_iframe = 1; + } + +- ff_draw_horiz_band(h->avctx, &h->dsp, h->cur_pic_ptr, NULL, 0, h->avctx->height, h->picture_structure, h->first_field, 0, 0, 0, 0); ++ ff_h264_draw_horiz_band(h, 0, h->avctx->height); + + return 0; + } +diff --git a/lib/ffmpeg/libavcodec/xvba_vc1.c b/lib/ffmpeg/libavcodec/xvba_vc1.c +index bf3d9c2..ff35a28 100644 +--- a/lib/ffmpeg/libavcodec/xvba_vc1.c ++++ b/lib/ffmpeg/libavcodec/xvba_vc1.c +@@ -142,7 +142,7 @@ static int end_frame(AVCodecContext *avctx) + break; + } + +- ff_draw_horiz_band(s->avctx, &s->dsp, s->current_picture_ptr, s->last_picture_ptr, 0, s->avctx->height, s->picture_structure, s->first_field, (s->unrestricted_mv && !s->intra_only), s->low_delay, s->v_edge_pos, s->h_edge_pos); ++ ff_mpeg_draw_horiz_band(s, 0, s->avctx->height); + + return 0; + } +-- +1.8.1.6 + + +From 2b0334917bb9938daf83a961b78a09d812b0a6a7 Mon Sep 17 00:00:00 2001 +From: fritsch +Date: Sat, 13 Apr 2013 12:06:02 +0200 +Subject: [PATCH 101/107] (ffmpeg): Make XVBA codec available + +--- + lib/ffmpeg/libavcodec/vc1dec.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/lib/ffmpeg/libavcodec/vc1dec.c b/lib/ffmpeg/libavcodec/vc1dec.c +index 2130c74..4d611f9 100644 +--- a/lib/ffmpeg/libavcodec/vc1dec.c ++++ b/lib/ffmpeg/libavcodec/vc1dec.c +@@ -5807,6 +5807,9 @@ static int vc1_decode_frame(AVCodecContext *avctx, void *data, + #if CONFIG_VDPAU + AV_PIX_FMT_VDPAU, + #endif ++#if CONFIG_XVBA ++ AV_PIX_FMT_XVBA_VLD, ++#endif + AV_PIX_FMT_YUV420P, + AV_PIX_FMT_NONE + }; +-- +1.8.1.6 + + +From 9389e01331a99f5e52d65dd35577aa66cafe93b2 Mon Sep 17 00:00:00 2001 +From: fritsch +Date: Sat, 13 Apr 2013 16:38:50 +0200 +Subject: [PATCH 102/107] ffmpeg: XVBA-VC1 use v->second_field instead of + !s->first_field to make VC1 interlaced working + +--- + lib/ffmpeg/libavcodec/xvba_vc1.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/lib/ffmpeg/libavcodec/xvba_vc1.c b/lib/ffmpeg/libavcodec/xvba_vc1.c +index ff35a28..04e7983 100644 +--- a/lib/ffmpeg/libavcodec/xvba_vc1.c ++++ b/lib/ffmpeg/libavcodec/xvba_vc1.c +@@ -99,7 +99,7 @@ static int end_frame(AVCodecContext *avctx) + pic_descriptor->sps_info.vc1.psf = v->psf; + // what about if it is a frame (page 31) + // looked at xvba-driver +- pic_descriptor->sps_info.vc1.second_field = !s->first_field; ++ pic_descriptor->sps_info.vc1.second_field = v->second_field; + pic_descriptor->sps_info.vc1.xvba_vc1_sps_reserved = 0; + + // VC-1 explicit parameters see page 30 of sdk +-- +1.8.1.6 + + +From c6537645e633e6e003c70a2ea208973195815483 Mon Sep 17 00:00:00 2001 From: xbmc Date: Wed, 10 Apr 2013 14:11:40 +0200 -Subject: [PATCH 098/107] demuxer ffmpeg: move m_streams into a map, drop +Subject: [PATCH 103/107] demuxer ffmpeg: move m_streams into a map, drop MAX_STREAMS --- - .../cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp | 101 ++++++++++----------- - xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.h | 5 +- - 2 files changed, 52 insertions(+), 54 deletions(-) + .../cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp | 99 +++++++++++----------- + xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.h | 5 +- + 2 files changed, 51 insertions(+), 53 deletions(-) diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp -index fc3af63..a3c68ff 100644 +index a3b0def..5684361 100644 --- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp +++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp @@ -207,7 +207,6 @@ static offset_t dvd_file_seek(void *h, offset_t pos, int whence) @@ -22341,7 +22664,7 @@ index fc3af63..a3c68ff 100644 switch (pStream->codec->codec_type) { -@@ -1296,15 +1292,16 @@ void CDVDDemuxFFmpeg::AddStream(int iId) +@@ -1294,25 +1290,26 @@ void CDVDDemuxFFmpeg::AddStream(int iId) // generic stuff if (pStream->duration != (int64_t)AV_NOPTS_VALUE) m_streams[iId]->iDuration = (int)((pStream->duration / AV_TIME_BASE) & 0xFFFFFFFF); @@ -22364,18 +22687,10 @@ index fc3af63..a3c68ff 100644 + stream->pPrivate = pStream; + stream->flags = (CDemuxStream::EFlags)pStream->disposition; - #if LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT(52,83,0) - // API added on: 2010-10-15 -@@ -1312,16 +1309,16 @@ void CDVDDemuxFFmpeg::AddStream(int iId) - // metadata tags were not populated by default) AVDictionaryEntry *langTag = m_dllAvUtil.av_dict_get(pStream->metadata, "language", NULL, 0); if (langTag) - strncpy(m_streams[iId]->language, langTag->value, 3); + strncpy(stream->language, langTag->value, 3); - #else -- strcpy( m_streams[iId]->language, pStream->language ); -+ strcpy( stream->language, pStream->language ); - #endif if( pStream->codec->extradata && pStream->codec->extradata_size > 0 ) { @@ -22388,7 +22703,7 @@ index fc3af63..a3c68ff 100644 } #ifdef HAVE_LIBBLURAY -@@ -1333,30 +1330,30 @@ void CDVDDemuxFFmpeg::AddStream(int iId) +@@ -1324,30 +1321,30 @@ void CDVDDemuxFFmpeg::AddStream(int iId) // this stuff is really only valid for dvd's. // this is so that the physicalid matches the // id's reported from libdvdnav @@ -22451,13 +22766,13 @@ index 8a7a5de..d5ff0df 100644 AVIOContext* m_ioContext; -- -1.8.1.5 +1.8.1.6 -From 079d85e37ff031cd6a3a0f7a30ad75f44d6518a6 Mon Sep 17 00:00:00 2001 +From c3c3fae22ac4315478f6bfae1e006e552c19b889 Mon Sep 17 00:00:00 2001 From: Joakim Plate Date: Thu, 11 Apr 2013 22:21:50 +0200 -Subject: [PATCH 099/107] dvdplayer: move extradata cleanup to CDVDDemuxStream +Subject: [PATCH 104/107] dvdplayer: move extradata cleanup to CDVDDemuxStream destructor --- @@ -22493,10 +22808,10 @@ index bdad65b..cb91d27 100644 char language[4]; // ISO 639 3-letter language code (empty string if undefined) diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp -index a3c68ff..8ff2cd4 100644 +index 5684361..5f4da31 100644 --- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp +++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp -@@ -1284,10 +1284,7 @@ void CDVDDemuxFFmpeg::AddStream(int iId) +@@ -1282,10 +1282,7 @@ void CDVDDemuxFFmpeg::AddStream(int iId) // since dvdplayer uses the pointer to know // if something changed in the demuxer if (old) @@ -22561,13 +22876,13 @@ index 88daeee..9524715 100644 return true; -- -1.8.1.5 +1.8.1.6 -From 99463b3780fef421bdcd0e1ad4a1a66833a12ba9 Mon Sep 17 00:00:00 2001 +From 6702e5f7645c5fd274a7976f09aaffc9614cb223 Mon Sep 17 00:00:00 2001 From: Joakim Plate Date: Thu, 11 Apr 2013 22:26:11 +0200 -Subject: [PATCH 100/107] dvdplayer: keep temporary stream pointer in ffmpeg +Subject: [PATCH 105/107] dvdplayer: keep temporary stream pointer in ffmpeg AddStream --- @@ -22575,7 +22890,7 @@ Subject: [PATCH 100/107] dvdplayer: keep temporary stream pointer in ffmpeg 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp -index 8ff2cd4..87b432b 100644 +index 5f4da31..16d6cb4 100644 --- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp +++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp @@ -1133,6 +1133,7 @@ void CDVDDemuxFFmpeg::AddStream(int iId) @@ -22615,7 +22930,7 @@ index 8ff2cd4..87b432b 100644 break; } case AVMEDIA_TYPE_SUBTITLE: -@@ -1229,15 +1230,15 @@ void CDVDDemuxFFmpeg::AddStream(int iId) +@@ -1228,14 +1229,14 @@ void CDVDDemuxFFmpeg::AddStream(int iId) if (pStream->codec->codec_id == CODEC_ID_DVB_TELETEXT && g_guiSettings.GetBool("videoplayer.teletextenabled")) { CDemuxStreamTeletext* st = new CDemuxStreamTeletext(); @@ -22626,7 +22941,6 @@ index 8ff2cd4..87b432b 100644 break; } else - #endif { CDemuxStreamSubtitleFFmpeg* st = new CDemuxStreamSubtitleFFmpeg(this, pStream); - m_streams[iId] = st; @@ -22634,7 +22948,7 @@ index 8ff2cd4..87b432b 100644 if(m_dllAvUtil.av_dict_get(pStream->metadata, "title", NULL, 0)) st->m_description = m_dllAvUtil.av_dict_get(pStream->metadata, "title", NULL, 0)->value; -@@ -1268,14 +1269,14 @@ void CDVDDemuxFFmpeg::AddStream(int iId) +@@ -1266,14 +1267,14 @@ void CDVDDemuxFFmpeg::AddStream(int iId) file.Close(); } } @@ -22653,7 +22967,7 @@ index 8ff2cd4..87b432b 100644 break; } } -@@ -1287,9 +1288,9 @@ void CDVDDemuxFFmpeg::AddStream(int iId) +@@ -1285,9 +1286,9 @@ void CDVDDemuxFFmpeg::AddStream(int iId) delete old; // generic stuff @@ -22665,7 +22979,7 @@ index 8ff2cd4..87b432b 100644 stream->codec = pStream->codec->codec_id; stream->codec_fourcc = pStream->codec->codec_tag; stream->profile = pStream->codec->profile; -@@ -1351,6 +1352,8 @@ void CDVDDemuxFFmpeg::AddStream(int iId) +@@ -1342,6 +1343,8 @@ void CDVDDemuxFFmpeg::AddStream(int iId) } else stream->iPhysicalId = pStream->id; @@ -22675,13 +22989,13 @@ index 8ff2cd4..87b432b 100644 } -- -1.8.1.5 +1.8.1.6 -From 9e5e91f0b0873cb06e5fb0012cec04beea4cd4a5 Mon Sep 17 00:00:00 2001 +From 0abe66ca7ff49da4619f071df338a3389e08bfd0 Mon Sep 17 00:00:00 2001 From: Joakim Plate Date: Thu, 11 Apr 2013 22:40:54 +0200 -Subject: [PATCH 101/107] dvdplayer: keep ffmpeg demuxer indexes in continous +Subject: [PATCH 106/107] dvdplayer: keep ffmpeg demuxer indexes in continous order --- @@ -22690,7 +23004,7 @@ Subject: [PATCH 101/107] dvdplayer: keep ffmpeg demuxer indexes in continous 2 files changed, 49 insertions(+), 13 deletions(-) diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp -index 87b432b..897a425 100644 +index 16d6cb4..2f18062 100644 --- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp +++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp @@ -667,7 +667,7 @@ DemuxPacket* CDVDDemuxFFmpeg::Read() @@ -22753,7 +23067,7 @@ index 87b432b..897a425 100644 switch (pStream->codec->codec_type) { -@@ -1281,12 +1294,6 @@ void CDVDDemuxFFmpeg::AddStream(int iId) +@@ -1279,12 +1292,6 @@ void CDVDDemuxFFmpeg::AddStream(int iId) } } @@ -22766,7 +23080,7 @@ index 87b432b..897a425 100644 // generic stuff if (pStream->duration != (int64_t)AV_NOPTS_VALUE) stream->iDuration = (int)((pStream->duration / AV_TIME_BASE) & 0xFFFFFFFF); -@@ -1296,7 +1303,6 @@ void CDVDDemuxFFmpeg::AddStream(int iId) +@@ -1294,7 +1301,6 @@ void CDVDDemuxFFmpeg::AddStream(int iId) stream->profile = pStream->codec->profile; stream->level = pStream->codec->level; @@ -22774,7 +23088,7 @@ index 87b432b..897a425 100644 stream->source = STREAM_SOURCE_DEMUX; stream->pPrivate = pStream; stream->flags = (CDemuxStream::EFlags)pStream->disposition; -@@ -1353,10 +1359,37 @@ void CDVDDemuxFFmpeg::AddStream(int iId) +@@ -1344,10 +1350,37 @@ void CDVDDemuxFFmpeg::AddStream(int iId) else stream->iPhysicalId = pStream->id; @@ -22834,13 +23148,13 @@ index d5ff0df..353dfa4 100644 AVIOContext* m_ioContext; -- -1.8.1.5 +1.8.1.6 -From 58e0992c409275fa003c56d3891177eb25097eb5 Mon Sep 17 00:00:00 2001 +From 226035154f00b406ab4d3f4a2db02e4d2a2896a0 Mon Sep 17 00:00:00 2001 From: xbmc Date: Tue, 13 Nov 2012 14:04:49 +0100 -Subject: [PATCH 102/107] demuxer ffmpeg: handle pmt changes +Subject: [PATCH 107/107] demuxer ffmpeg: handle pmt changes --- xbmc/cores/dvdplayer/DVDDemuxers/DVDDemux.h | 3 + @@ -22870,7 +23184,7 @@ index cb91d27..e45c5d0 100644 { FLAG_NONE = 0x0000 , FLAG_DEFAULT = 0x0001 diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp -index 897a425..5d0eef8 100644 +index 2f18062..317be28 100644 --- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp +++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp @@ -212,6 +212,8 @@ static offset_t dvd_file_seek(void *h, offset_t pos, int whence) @@ -23216,7 +23530,7 @@ index 897a425..5d0eef8 100644 void CDVDDemuxFFmpeg::AddStream(int iId) { AVStream* pStream = m_pFormatContext->streams[iId]; -@@ -1294,6 +1342,9 @@ void CDVDDemuxFFmpeg::AddStream(int iId) +@@ -1292,6 +1340,9 @@ void CDVDDemuxFFmpeg::AddStream(int iId) } } @@ -23226,7 +23540,7 @@ index 897a425..5d0eef8 100644 // generic stuff if (pStream->duration != (int64_t)AV_NOPTS_VALUE) stream->iDuration = (int)((pStream->duration / AV_TIME_BASE) & 0xFFFFFFFF); -@@ -1545,3 +1596,26 @@ void CDVDDemuxFFmpeg::GetStreamCodecName(int iStreamId, CStdString &strName) +@@ -1519,3 +1570,26 @@ void CDVDDemuxFFmpeg::GetStreamCodecName(int iStreamId, CStdString &strName) strName = codec->name; } } @@ -23286,328 +23600,5 @@ index 353dfa4..f56712e 100644 }; -- -1.8.1.5 - - -From 2550c08d9cbea55665ec939946741534fe55caae Mon Sep 17 00:00:00 2001 -From: xbmc -Date: Fri, 12 Apr 2013 21:01:24 +0200 -Subject: [PATCH 103/107] AE: temp fix for transcode after ffmpeg update - ---- - .../cores/AudioEngine/Encoders/AEEncoderFFmpeg.cpp | 87 +++++++++++++++++++--- - xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.h | 2 + - 2 files changed, 77 insertions(+), 12 deletions(-) - -diff --git a/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.cpp b/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.cpp -index 34ddda6..b2d0b75 100644 ---- a/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.cpp -+++ b/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.cpp -@@ -143,16 +143,47 @@ bool CAEEncoderFFmpeg::Initialize(AEAudioFormat &format) - bool hasS32 = false; - bool hasS16 = false; - bool hasU8 = false; -+ m_IsPlanar = false; - - for(int i = 0; codec->sample_fmts[i] != AV_SAMPLE_FMT_NONE; ++i) - { - switch (codec->sample_fmts[i]) - { -- case AV_SAMPLE_FMT_FLT: hasFloat = true; break; -- case AV_SAMPLE_FMT_DBL: hasDouble = true; break; -- case AV_SAMPLE_FMT_S32: hasS32 = true; break; -- case AV_SAMPLE_FMT_S16: hasS16 = true; break; -- case AV_SAMPLE_FMT_U8 : hasU8 = true; break; -+ case AV_SAMPLE_FMT_FLT: -+ hasFloat = true; -+ break; -+ case AV_SAMPLE_FMT_FLTP: -+ hasFloat = true; -+ m_IsPlanar = true; -+ break; -+ case AV_SAMPLE_FMT_DBL: -+ hasDouble = true; -+ break; -+ case AV_SAMPLE_FMT_DBLP: -+ hasDouble = true; -+ m_IsPlanar = true; -+ break; -+ case AV_SAMPLE_FMT_S32: -+ hasS32 = true; -+ break; -+ case AV_SAMPLE_FMT_S32P: -+ hasS32 = true; -+ m_IsPlanar = true; -+ break; -+ case AV_SAMPLE_FMT_S16: -+ hasS16 = true; -+ break; -+ case AV_SAMPLE_FMT_S16P: -+ hasS16 = true; -+ m_IsPlanar = true; -+ break; -+ case AV_SAMPLE_FMT_U8: -+ hasU8 = true; -+ break; -+ case AV_SAMPLE_FMT_U8P: -+ hasU8 = true; -+ m_IsPlanar = true; -+ break; - - default: - return false; -@@ -161,27 +192,42 @@ bool CAEEncoderFFmpeg::Initialize(AEAudioFormat &format) - - if (hasFloat) - { -- m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_FLT; -+ if (m_IsPlanar) -+ m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_FLTP; -+ else -+ m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_FLT; - format.m_dataFormat = AE_FMT_FLOAT; - } - else if (hasDouble) - { -- m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_DBL; -+ if (m_IsPlanar) -+ m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_DBLP; -+ else -+ m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_DBL; - format.m_dataFormat = AE_FMT_DOUBLE; - } - else if (hasS32) - { -- m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_S32; -+ if (m_IsPlanar) -+ m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_S32P; -+ else -+ m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_S32; - format.m_dataFormat = AE_FMT_S32NE; - } - else if (hasS16) - { -- m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_S16; -+ if (m_IsPlanar) -+ m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_S16P; -+ else -+ m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_S16; - format.m_dataFormat = AE_FMT_S16NE; - } - else if (hasU8) - { -- m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_U8; -+ if (m_IsPlanar) -+ m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_U8P; -+ else -+ m_CodecCtx->sample_fmt = AV_SAMPLE_FMT_U8; - format.m_dataFormat = AE_FMT_U8; - } - else -@@ -241,8 +287,25 @@ int CAEEncoderFFmpeg::Encode(float *data, unsigned int frames) - if (!m_CodecCtx || frames < m_NeededFrames) - return 0; - -- /* encode it */ -- int size = m_dllAvCodec.avcodec_encode_audio(m_CodecCtx, m_Buffer + IEC61937_DATA_OFFSET, FF_MIN_BUFFER_SIZE, (short*)data); -+ int size = 0; -+ // planar format -+ if (m_IsPlanar) -+ { -+ int src = 0; -+ int dst = 0; -+ for (int i = 0; i < 1536; i++) -+ { -+ for (int j = 0; j < 6; j++) -+ { -+ memcpy(m_PlanarBuffer+(j*1536*4+dst), (uint8_t*)data+src, 4); -+ src += 4; -+ } -+ dst += 4; -+ } -+ size = m_dllAvCodec.avcodec_encode_audio(m_CodecCtx, m_Buffer + IEC61937_DATA_OFFSET, FF_MIN_BUFFER_SIZE, (short*)m_PlanarBuffer); -+ } -+ else -+ size = m_dllAvCodec.avcodec_encode_audio(m_CodecCtx, m_Buffer + IEC61937_DATA_OFFSET, FF_MIN_BUFFER_SIZE, (short*)data); - - /* pack it into an IEC958 frame */ - m_BufferSize = m_PackFunc(NULL, size, m_Buffer); -diff --git a/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.h b/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.h -index 0cedf3f..90b0147 100644 ---- a/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.h -+++ b/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.h -@@ -65,6 +65,8 @@ class CAEEncoderFFmpeg: public IAEEncoder - double m_SampleRateMul; - - unsigned int m_NeededFrames; -+ bool m_IsPlanar; -+ uint8_t m_PlanarBuffer[1536*6*4]; - - unsigned int BuildChannelLayout(const int64_t ffmap, CAEChannelInfo& layout); - }; --- -1.8.1.5 - - -From 2293fb4ac74721e1a3ededd1db39d76769e9092e Mon Sep 17 00:00:00 2001 -From: xbmc -Date: Sat, 13 Apr 2013 08:32:06 +0200 -Subject: [PATCH 104/107] X11: fix mouse coverage - ---- - xbmc/windowing/X11/WinSystemX11.cpp | 11 ++++++++--- - xbmc/windowing/X11/WinSystemX11.h | 1 + - 2 files changed, 9 insertions(+), 3 deletions(-) - -diff --git a/xbmc/windowing/X11/WinSystemX11.cpp b/xbmc/windowing/X11/WinSystemX11.cpp -index 2d9cf2a..d36765d 100644 ---- a/xbmc/windowing/X11/WinSystemX11.cpp -+++ b/xbmc/windowing/X11/WinSystemX11.cpp -@@ -581,10 +581,10 @@ void CWinSystemX11::NotifyAppFocusChange(bool bGaining) - - void CWinSystemX11::NotifyMouseCoverage(bool covered) - { -- if (!m_bFullScreen) -+ if (!m_bFullScreen || !m_mainWindow) - return; - -- if (covered) -+ if (covered && !m_bIsGrabbed) - { - int result = -1; - while (result != GrabSuccess && result != AlreadyGrabbed) -@@ -593,11 +593,13 @@ void CWinSystemX11::NotifyMouseCoverage(bool covered) - XbmcThreads::ThreadSleep(100); - } - XGrabKeyboard(m_dpy, m_mainWindow, True, GrabModeAsync, GrabModeAsync, CurrentTime); -+ m_bIsGrabbed = true; - } -- else -+ else if (!covered && m_bIsGrabbed) - { - XUngrabKeyboard(m_dpy, CurrentTime); - XUngrabPointer(m_dpy, CurrentTime); -+ m_bIsGrabbed = false; - } - } - -@@ -953,7 +955,10 @@ bool CWinSystemX11::SetWindow(int width, int height, bool fullscreen, const CStd - XbmcThreads::ThreadSleep(100); - } - XGrabKeyboard(m_dpy, m_mainWindow, True, GrabModeAsync, GrabModeAsync, CurrentTime); -+ m_bIsGrabbed = true; - } -+ else -+ m_bIsGrabbed = false; - - CDirtyRegionList dr; - RefreshGlxContext(!m_currentOutput.Equals(output)); -diff --git a/xbmc/windowing/X11/WinSystemX11.h b/xbmc/windowing/X11/WinSystemX11.h -index 770ae84..084f546 100644 ---- a/xbmc/windowing/X11/WinSystemX11.h -+++ b/xbmc/windowing/X11/WinSystemX11.h -@@ -88,6 +88,7 @@ class CWinSystemX11 : public CWinSystemBase - bool m_bWasFullScreenBeforeMinimize; - bool m_minimized; - bool m_bIgnoreNextFocusMessage; -+ bool m_bIsGrabbed; - int m_RREventBase; - CCriticalSection m_resourceSection; - std::vector m_resources; --- -1.8.1.5 - - -From 53b61e3b71c358df2ca7605f8d8478878862ca07 Mon Sep 17 00:00:00 2001 -From: fritsch -Date: Sat, 13 Apr 2013 11:30:39 +0200 -Subject: [PATCH 105/107] XVBA: revisit draw functions - ---- - lib/ffmpeg/libavcodec/xvba_h264.c | 2 +- - lib/ffmpeg/libavcodec/xvba_vc1.c | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/lib/ffmpeg/libavcodec/xvba_h264.c b/lib/ffmpeg/libavcodec/xvba_h264.c -index ae45f3a..309d928 100644 ---- a/lib/ffmpeg/libavcodec/xvba_h264.c -+++ b/lib/ffmpeg/libavcodec/xvba_h264.c -@@ -160,7 +160,7 @@ static int end_frame(AVCodecContext *avctx) - h->got_first_iframe = 1; - } - -- ff_draw_horiz_band(h->avctx, &h->dsp, h->cur_pic_ptr, NULL, 0, h->avctx->height, h->picture_structure, h->first_field, 0, 0, 0, 0); -+ ff_h264_draw_horiz_band(h, 0, h->avctx->height); - - return 0; - } -diff --git a/lib/ffmpeg/libavcodec/xvba_vc1.c b/lib/ffmpeg/libavcodec/xvba_vc1.c -index bf3d9c2..ff35a28 100644 ---- a/lib/ffmpeg/libavcodec/xvba_vc1.c -+++ b/lib/ffmpeg/libavcodec/xvba_vc1.c -@@ -142,7 +142,7 @@ static int end_frame(AVCodecContext *avctx) - break; - } - -- ff_draw_horiz_band(s->avctx, &s->dsp, s->current_picture_ptr, s->last_picture_ptr, 0, s->avctx->height, s->picture_structure, s->first_field, (s->unrestricted_mv && !s->intra_only), s->low_delay, s->v_edge_pos, s->h_edge_pos); -+ ff_mpeg_draw_horiz_band(s, 0, s->avctx->height); - - return 0; - } --- -1.8.1.5 - - -From af7027858d0b95dda461933ab6e02df4611378d9 Mon Sep 17 00:00:00 2001 -From: fritsch -Date: Sat, 13 Apr 2013 12:06:02 +0200 -Subject: [PATCH 106/107] (ffmpeg): Make XVBA codec available - ---- - lib/ffmpeg/libavcodec/vc1dec.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/lib/ffmpeg/libavcodec/vc1dec.c b/lib/ffmpeg/libavcodec/vc1dec.c -index 2130c74..4d611f9 100644 ---- a/lib/ffmpeg/libavcodec/vc1dec.c -+++ b/lib/ffmpeg/libavcodec/vc1dec.c -@@ -5807,6 +5807,9 @@ static int vc1_decode_frame(AVCodecContext *avctx, void *data, - #if CONFIG_VDPAU - AV_PIX_FMT_VDPAU, - #endif -+#if CONFIG_XVBA -+ AV_PIX_FMT_XVBA_VLD, -+#endif - AV_PIX_FMT_YUV420P, - AV_PIX_FMT_NONE - }; --- -1.8.1.5 - - -From ccf3ac9d3ea29eeef4ffbf1d53a5c8ea36e4d7be Mon Sep 17 00:00:00 2001 -From: fritsch -Date: Sat, 13 Apr 2013 16:38:50 +0200 -Subject: [PATCH 107/107] ffmpeg: XVBA-VC1 use v->second_field instead of - !s->first_field to make VC1 interlaced working - ---- - lib/ffmpeg/libavcodec/xvba_vc1.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/lib/ffmpeg/libavcodec/xvba_vc1.c b/lib/ffmpeg/libavcodec/xvba_vc1.c -index ff35a28..04e7983 100644 ---- a/lib/ffmpeg/libavcodec/xvba_vc1.c -+++ b/lib/ffmpeg/libavcodec/xvba_vc1.c -@@ -99,7 +99,7 @@ static int end_frame(AVCodecContext *avctx) - pic_descriptor->sps_info.vc1.psf = v->psf; - // what about if it is a frame (page 31) - // looked at xvba-driver -- pic_descriptor->sps_info.vc1.second_field = !s->first_field; -+ pic_descriptor->sps_info.vc1.second_field = v->second_field; - pic_descriptor->sps_info.vc1.xvba_vc1_sps_reserved = 0; - - // VC-1 explicit parameters see page 30 of sdk --- -1.8.1.5 +1.8.1.6 diff --git a/packages/mediacenter/xbmc/patches/74fa128/xbmc-995.10-disable-alt-tab.patch b/packages/mediacenter/xbmc/patches/83b16d0/xbmc-995.10-disable-alt-tab.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/74fa128/xbmc-995.10-disable-alt-tab.patch rename to packages/mediacenter/xbmc/patches/83b16d0/xbmc-995.10-disable-alt-tab.patch diff --git a/packages/mediacenter/xbmc/patches/74fa128/xbmc-999.01-automake-1.13.patch b/packages/mediacenter/xbmc/patches/83b16d0/xbmc-999.01-automake-1.13.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/74fa128/xbmc-999.01-automake-1.13.patch rename to packages/mediacenter/xbmc/patches/83b16d0/xbmc-999.01-automake-1.13.patch diff --git a/packages/mediacenter/xbmc/patches/74fa128/xbmc-999.04-Revert-ff_read_frame_flush-to-av_read_frame_flush-for-external-ffmpeg.patch b/packages/mediacenter/xbmc/patches/83b16d0/xbmc-999.04-Revert-ff_read_frame_flush-to-av_read_frame_flush-for-external-ffmpeg.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/74fa128/xbmc-999.04-Revert-ff_read_frame_flush-to-av_read_frame_flush-for-external-ffmpeg.patch rename to packages/mediacenter/xbmc/patches/83b16d0/xbmc-999.04-Revert-ff_read_frame_flush-to-av_read_frame_flush-for-external-ffmpeg.patch diff --git a/packages/mediacenter/xbmc/patches/74fa128/xbmc-999.07-PR2572.patch b/packages/mediacenter/xbmc/patches/83b16d0/xbmc-999.07-PR2572.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/74fa128/xbmc-999.07-PR2572.patch rename to packages/mediacenter/xbmc/patches/83b16d0/xbmc-999.07-PR2572.patch diff --git a/packages/mediacenter/xbmc/patches/74fa128/xbmc-999.08-PR2572-1.patch b/packages/mediacenter/xbmc/patches/83b16d0/xbmc-999.08-PR2572-1.patch similarity index 100% rename from packages/mediacenter/xbmc/patches/74fa128/xbmc-999.08-PR2572-1.patch rename to packages/mediacenter/xbmc/patches/83b16d0/xbmc-999.08-PR2572-1.patch