All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v3 00/18] Bump ffmpeg to 3.0
@ 2016-03-28 18:20 Bernd Kuhls
  2016-03-28 18:20 ` [Buildroot] [PATCH v3 01/18] package/kodi: add support for ffmpeg 3.0 Bernd Kuhls
                   ` (17 more replies)
  0 siblings, 18 replies; 19+ messages in thread
From: Bernd Kuhls @ 2016-03-28 18:20 UTC (permalink / raw)
  To: buildroot

Hi,

this patch series bumps ffmpeg to version 3.0 (patches 1-13).
Patches 14-18 are unrelated bumps, while being at it, you know ;)

This cover letter collects the changelog of individual patches.
Packages not mentioned are unchanged.

Regards, Bernd

v3: opencv3: moved WITH_VA options (Samuel)
v2: opencv3: reworked options (Samuel)


Bernd Kuhls (15):
  package/kodi: add support for ffmpeg 3.0
  package/libdcadec: bump version to v0.2.0
  package/ortp: bump version to 0.25.0
  package/mediastreamer: bump version to 2.12.1
  package/opencv: bump version to 2.4.12.3
  package/opencv3: bump version to 3.1.0
  package/squeezelite: fix compilation with ffmpeg >= 2.9
  package/freerdp: bump version
  package/vlc: mark as broken due to incompatibility with ffmpeg 3.0
  package/ffmpeg: Add patch required by Kodi 16.0-Jarvis
  package/x264: bump version
  package/x265: bump version to 1.9
  package/dtv-scan-tables: bump version
  package/tvheadend: bump version
  package/live555: bump version to 2016.03.16

Vicente Olivert Riera (3):
  package/ffmpeg: bump to version 3.0
  package/ffmpeg: cosmetic change for the mips fpu option
  package/ffmpeg: default to --cpu=generic for MIPS architecture

 package/dtv-scan-tables/dtv-scan-tables.mk         |   2 +-
 .../ffmpeg/0013-hevc-support-main10-decoding.patch |  77 +++
 package/ffmpeg/ffmpeg.hash                         |   4 +-
 package/ffmpeg/ffmpeg.mk                           |  24 +-
 package/freerdp/freerdp.mk                         |   2 +-
 package/kodi/0007-ffmpeg30.patch                   | 646 +++++++++++++++++++++
 package/libdcadec/libdcadec.hash                   |   2 +
 package/libdcadec/libdcadec.mk                     |   2 +-
 package/live555/live555.hash                       |   4 +-
 package/live555/live555.mk                         |   2 +-
 package/mediastreamer/0001-misc-fixes.patch        | 156 -----
 package/mediastreamer/mediastreamer.hash           |   4 +-
 package/mediastreamer/mediastreamer.mk             |   2 +-
 .../0001-core-fix-x86-PIC-code-compilation.patch   |  49 --
 package/opencv/0001-ffmpeg30.patch                 | 638 ++++++++++++++++++++
 ...ix-return-type-value-VideoFrameSource_GPU.patch |  40 --
 ...VGenPkgconfig.cmake-rework-opencv.pc-gene.patch | 156 -----
 package/opencv/opencv.mk                           |   2 +-
 ...pthread-based-parallel_for-with-gcc-4.4.3.patch |  62 --
 ...002-fix-support-for-pthreads-parallel_for.patch | 212 -------
 package/opencv3/Config.in                          |   1 +
 package/opencv3/opencv3.mk                         |  11 +-
 package/ortp/ortp.hash                             |   4 +-
 package/ortp/ortp.mk                               |   2 +-
 package/squeezelite/0003-ffmpeg_2_9.patch          |  57 ++
 package/tvheadend/tvheadend.hash                   |   2 +-
 package/tvheadend/tvheadend.mk                     |   4 +-
 package/vlc/Config.in                              |   1 +
 package/x264/x264.mk                               |   2 +-
 package/x265/x265.hash                             |   2 +-
 package/x265/x265.mk                               |   2 +-
 31 files changed, 1458 insertions(+), 716 deletions(-)
 create mode 100644 package/ffmpeg/0013-hevc-support-main10-decoding.patch
 create mode 100644 package/kodi/0007-ffmpeg30.patch
 create mode 100644 package/libdcadec/libdcadec.hash
 delete mode 100644 package/mediastreamer/0001-misc-fixes.patch
 delete mode 100644 package/opencv/0001-core-fix-x86-PIC-code-compilation.patch
 create mode 100644 package/opencv/0001-ffmpeg30.patch
 delete mode 100644 package/opencv/0002-superres-Fix-return-type-value-VideoFrameSource_GPU.patch
 delete mode 100644 package/opencv/0003-cmake-OpenCVGenPkgconfig.cmake-rework-opencv.pc-gene.patch
 delete mode 100644 package/opencv3/0001-Fixed-compilation-of-pthread-based-parallel_for-with-gcc-4.4.3.patch
 delete mode 100644 package/opencv3/0002-fix-support-for-pthreads-parallel_for.patch
 create mode 100644 package/squeezelite/0003-ffmpeg_2_9.patch

-- 
2.8.0.rc3

^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Buildroot] [PATCH v3 01/18] package/kodi: add support for ffmpeg 3.0
  2016-03-28 18:20 [Buildroot] [PATCH v3 00/18] Bump ffmpeg to 3.0 Bernd Kuhls
@ 2016-03-28 18:20 ` Bernd Kuhls
  2016-03-28 18:20 ` [Buildroot] [PATCH v3 02/18] package/libdcadec: bump version to v0.2.0 Bernd Kuhls
                   ` (16 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: Bernd Kuhls @ 2016-03-28 18:20 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
 package/kodi/0007-ffmpeg30.patch | 646 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 646 insertions(+)
 create mode 100644 package/kodi/0007-ffmpeg30.patch

diff --git a/package/kodi/0007-ffmpeg30.patch b/package/kodi/0007-ffmpeg30.patch
new file mode 100644
index 0000000..9164d48
--- /dev/null
+++ b/package/kodi/0007-ffmpeg30.patch
@@ -0,0 +1,646 @@
+Add support for ffmpeg 3.0
+
+Changes from original commit are only in file paths & quilt refresh.
+
+commit c31b7d374062f87c7512d9872cbceac920465913
+Author: Philip Langdale <philipl@overt.org>
+Date:   Mon Sep 21 19:49:36 2015 -0700
+
+    ffmpeg: Update AVPixelFormat and AV_PIX_FMT_* to compile with master
+    
+    The deprecated PixelFormat and PIX_FMT_* names have been removed in
+    ffmpeg master.
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+[Downloaded from
+https://gitweb.gentoo.org/repo/gentoo.git/tree/media-tv/kodi/files/kodi-16-ffmpeg3.patch]
+
+Index: xbmc-16.0-Jarvis/xbmc/cores/FFmpeg.h
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/FFmpeg.h
++++ xbmc-16.0-Jarvis/xbmc/cores/FFmpeg.h
+@@ -24,7 +24,6 @@
+ #include "utils/CPUInfo.h"
+ 
+ extern "C" {
+-#include "libswscale/swscale.h"
+ #include "libavcodec/avcodec.h"
+ #include "libavformat/avformat.h"
+ #include "libavutil/avutil.h"
+@@ -33,23 +32,6 @@ extern "C" {
+ #include "libpostproc/postprocess.h"
+ }
+ 
+-inline int SwScaleCPUFlags()
+-{
+-  unsigned int cpuFeatures = g_cpuInfo.GetCPUFeatures();
+-  int flags = 0;
+-
+-  if (cpuFeatures & CPU_FEATURE_MMX)
+-    flags |= SWS_CPU_CAPS_MMX;
+-  if (cpuFeatures & CPU_FEATURE_MMX2)
+-    flags |= SWS_CPU_CAPS_MMX2;
+-  if (cpuFeatures & CPU_FEATURE_3DNOW)
+-    flags |= SWS_CPU_CAPS_3DNOW;
+-  if (cpuFeatures & CPU_FEATURE_ALTIVEC)
+-    flags |= SWS_CPU_CAPS_ALTIVEC;
+-
+-  return flags;
+-}
+-
+ inline int PPCPUFlags()
+ {
+   unsigned int cpuFeatures = g_cpuInfo.GetCPUFeatures();
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/DVDCodecUtils.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/DVDCodecUtils.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/DVDCodecUtils.cpp
+@@ -39,7 +39,7 @@ extern "C" {
+ #include "libswscale/swscale.h"
+ }
+ 
+-// allocate a new picture (PIX_FMT_YUV420P)
++// allocate a new picture (AV_PIX_FMT_YUV420P)
+ DVDVideoPicture* CDVDCodecUtils::AllocatePicture(int iWidth, int iHeight)
+ {
+   DVDVideoPicture* pPicture = new DVDVideoPicture;
+@@ -264,13 +264,13 @@ DVDVideoPicture* CDVDCodecUtils::Convert
+ 
+         int dstformat;
+         if (format == RENDER_FMT_UYVY422)
+-          dstformat = PIX_FMT_UYVY422;
++          dstformat = AV_PIX_FMT_UYVY422;
+         else
+-          dstformat = PIX_FMT_YUYV422;
++          dstformat = AV_PIX_FMT_YUYV422;
+ 
+-        struct SwsContext *ctx = sws_getContext(pSrc->iWidth, pSrc->iHeight, PIX_FMT_YUV420P,
++        struct SwsContext *ctx = sws_getContext(pSrc->iWidth, pSrc->iHeight, AV_PIX_FMT_YUV420P,
+                                                            pPicture->iWidth, pPicture->iHeight, (AVPixelFormat)dstformat,
+-                                                           SWS_BILINEAR | SwScaleCPUFlags(), NULL, NULL, NULL);
++                                                           SWS_BILINEAR, NULL, NULL, NULL);
+         sws_scale(ctx, src, srcStride, 0, pSrc->iHeight, dst, dstStride);
+         sws_freeContext(ctx);
+       }
+@@ -403,25 +403,25 @@ double CDVDCodecUtils::NormalizeFramedur
+ }
+ 
+ struct EFormatMap {
+-  PixelFormat   pix_fmt;
++  AVPixelFormat   pix_fmt;
+   ERenderFormat format;
+ };
+ 
+ static const EFormatMap g_format_map[] = {
+-   { PIX_FMT_YUV420P,     RENDER_FMT_YUV420P    }
+-,  { PIX_FMT_YUVJ420P,    RENDER_FMT_YUV420P    }
+-,  { PIX_FMT_YUV420P10,   RENDER_FMT_YUV420P10  }
+-,  { PIX_FMT_YUV420P16,   RENDER_FMT_YUV420P16  }
+-,  { PIX_FMT_UYVY422,     RENDER_FMT_UYVY422    }
+-,  { PIX_FMT_YUYV422,     RENDER_FMT_YUYV422    }
+-,  { PIX_FMT_VAAPI_VLD,   RENDER_FMT_VAAPI      }
+-,  { PIX_FMT_DXVA2_VLD,   RENDER_FMT_DXVA       }
+-,  { PIX_FMT_NONE     ,   RENDER_FMT_NONE       }
++   { AV_PIX_FMT_YUV420P,     RENDER_FMT_YUV420P    }
++,  { AV_PIX_FMT_YUVJ420P,    RENDER_FMT_YUV420P    }
++,  { AV_PIX_FMT_YUV420P10,   RENDER_FMT_YUV420P10  }
++,  { AV_PIX_FMT_YUV420P16,   RENDER_FMT_YUV420P16  }
++,  { AV_PIX_FMT_UYVY422,     RENDER_FMT_UYVY422    }
++,  { AV_PIX_FMT_YUYV422,     RENDER_FMT_YUYV422    }
++,  { AV_PIX_FMT_VAAPI_VLD,   RENDER_FMT_VAAPI      }
++,  { AV_PIX_FMT_DXVA2_VLD,   RENDER_FMT_DXVA       }
++,  { AV_PIX_FMT_NONE     ,   RENDER_FMT_NONE       }
+ };
+ 
+ ERenderFormat CDVDCodecUtils::EFormatFromPixfmt(int fmt)
+ {
+-  for(const EFormatMap *p = g_format_map; p->pix_fmt != PIX_FMT_NONE; ++p)
++  for(const EFormatMap *p = g_format_map; p->pix_fmt != AV_PIX_FMT_NONE; ++p)
+   {
+     if(p->pix_fmt == fmt)
+       return p->format;
+@@ -431,10 +431,10 @@ ERenderFormat CDVDCodecUtils::EFormatFro
+ 
+ int CDVDCodecUtils::PixfmtFromEFormat(ERenderFormat fmt)
+ {
+-  for(const EFormatMap *p = g_format_map; p->pix_fmt != PIX_FMT_NONE; ++p)
++  for(const EFormatMap *p = g_format_map; p->pix_fmt != AV_PIX_FMT_NONE; ++p)
+   {
+     if(p->format == fmt)
+       return p->pix_fmt;
+   }
+-  return PIX_FMT_NONE;
++  return AV_PIX_FMT_NONE;
+ }
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
+@@ -77,8 +77,8 @@ enum DecoderState
+   STATE_SW_MULTI
+ };
+ 
+-enum PixelFormat CDVDVideoCodecFFmpeg::GetFormat( struct AVCodecContext * avctx
+-                                                , const PixelFormat * fmt )
++enum AVPixelFormat CDVDVideoCodecFFmpeg::GetFormat( struct AVCodecContext * avctx
++                                                , const AVPixelFormat * fmt )
+ {
+   CDVDVideoCodecFFmpeg* ctx  = (CDVDVideoCodecFFmpeg*)avctx->opaque;
+ 
+@@ -104,8 +104,8 @@ enum PixelFormat CDVDVideoCodecFFmpeg::G
+     avctx->hwaccel_context = 0;
+   }
+ 
+-  const PixelFormat * cur = fmt;
+-  while(*cur != PIX_FMT_NONE)
++  const AVPixelFormat * cur = fmt;
++  while(*cur != AV_PIX_FMT_NONE)
+   {
+ #ifdef HAVE_LIBVDPAU
+     if(VDPAU::CDecoder::IsVDPAUFormat(*cur) && CSettings::GetInstance().GetBool(CSettings::SETTING_VIDEOPLAYER_USEVDPAU))
+@@ -137,7 +137,7 @@ enum PixelFormat CDVDVideoCodecFFmpeg::G
+ #endif
+ #ifdef HAVE_LIBVA
+     // mpeg4 vaapi decoding is disabled
+-    if(*cur == PIX_FMT_VAAPI_VLD && CSettings::GetInstance().GetBool(CSettings::SETTING_VIDEOPLAYER_USEVAAPI))
++    if(*cur == AV_PIX_FMT_VAAPI_VLD && CSettings::GetInstance().GetBool(CSettings::SETTING_VIDEOPLAYER_USEVAAPI))
+     {
+       VAAPI::CDecoder* dec = new VAAPI::CDecoder();
+       if(dec->Open(avctx, ctx->m_pCodecContext, *cur, ctx->m_uSurfacesCount) == true)
+@@ -214,11 +214,11 @@ bool CDVDVideoCodecFFmpeg::Open(CDVDStre
+ 
+   for(std::vector<ERenderFormat>::iterator it = options.m_formats.begin(); it != options.m_formats.end(); ++it)
+   {
+-    m_formats.push_back((PixelFormat)CDVDCodecUtils::PixfmtFromEFormat(*it));
++    m_formats.push_back((AVPixelFormat)CDVDCodecUtils::PixfmtFromEFormat(*it));
+     if(*it == RENDER_FMT_YUV420P)
+-      m_formats.push_back(PIX_FMT_YUVJ420P);
++      m_formats.push_back(AV_PIX_FMT_YUVJ420P);
+   }
+-  m_formats.push_back(PIX_FMT_NONE); /* always add none to get a terminated list in ffmpeg world */
++  m_formats.push_back(AV_PIX_FMT_NONE); /* always add none to get a terminated list in ffmpeg world */
+ 
+   pCodec = avcodec_find_decoder(hints.codec);
+ 
+@@ -655,7 +655,7 @@ bool CDVDVideoCodecFFmpeg::GetPictureCom
+   pDvdVideoPicture->color_transfer = m_pCodecContext->color_trc;
+   pDvdVideoPicture->color_matrix = m_pCodecContext->colorspace;
+   if(m_pCodecContext->color_range == AVCOL_RANGE_JPEG
+-  || m_pCodecContext->pix_fmt     == PIX_FMT_YUVJ420P)
++  || m_pCodecContext->pix_fmt     == AV_PIX_FMT_YUVJ420P)
+     pDvdVideoPicture->color_range = 1;
+   else
+     pDvdVideoPicture->color_range = 0;
+@@ -738,8 +738,8 @@ bool CDVDVideoCodecFFmpeg::GetPicture(DV
+   pDvdVideoPicture->iFlags |= pDvdVideoPicture->data[0] ? 0 : DVP_FLAG_DROPPED;
+   pDvdVideoPicture->extended_format = 0;
+ 
+-  PixelFormat pix_fmt;
+-  pix_fmt = (PixelFormat)m_pFrame->format;
++  AVPixelFormat pix_fmt;
++  pix_fmt = (AVPixelFormat)m_pFrame->format;
+ 
+   pDvdVideoPicture->format = CDVDCodecUtils::EFormatFromPixfmt(pix_fmt);
+   return true;
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.h
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.h
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.h
+@@ -46,7 +46,7 @@ public:
+     public:
+              IHardwareDecoder() {}
+     virtual ~IHardwareDecoder() {};
+-    virtual bool Open      (AVCodecContext* avctx, AVCodecContext* mainctx, const enum PixelFormat, unsigned int surfaces) = 0;
++    virtual bool Open      (AVCodecContext* avctx, AVCodecContext* mainctx, const enum AVPixelFormat, unsigned int surfaces) = 0;
+     virtual int  Decode    (AVCodecContext* avctx, AVFrame* frame) = 0;
+     virtual bool GetPicture(AVCodecContext* avctx, AVFrame* frame, DVDVideoPicture* picture) = 0;
+     virtual int  Check     (AVCodecContext* avctx) = 0;
+@@ -77,7 +77,7 @@ public:
+   void               SetHardware(IHardwareDecoder* hardware);
+ 
+ protected:
+-  static enum PixelFormat GetFormat(struct AVCodecContext * avctx, const PixelFormat * fmt);
++  static enum AVPixelFormat GetFormat(struct AVCodecContext * avctx, const AVPixelFormat * fmt);
+ 
+   int  FilterOpen(const std::string& filters, bool scale);
+   void FilterClose();
+@@ -119,7 +119,7 @@ protected:
+   int m_iLastKeyframe;
+   double m_dts;
+   bool   m_started;
+-  std::vector<PixelFormat> m_formats;
++  std::vector<AVPixelFormat> m_formats;
+   double m_decoderPts;
+   int    m_skippedDeint;
+   bool   m_requestSkipDeint;
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecVDA.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecVDA.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecVDA.cpp
+@@ -554,11 +554,11 @@ void CDVDVideoCodecVDA::DisplayQueuePop(
+ 
+ void CDVDVideoCodecVDA::UYVY422_to_YUV420P(uint8_t *yuv422_ptr, int yuv422_stride, DVDVideoPicture *picture)
+ {
+-  // convert PIX_FMT_UYVY422 to PIX_FMT_YUV420P.
++  // convert AV_PIX_FMT_UYVY422 to AV_PIX_FMT_YUV420P.
+   struct SwsContext *swcontext = sws_getContext(
+-    m_videobuffer.iWidth, m_videobuffer.iHeight, PIX_FMT_UYVY422, 
+-    m_videobuffer.iWidth, m_videobuffer.iHeight, PIX_FMT_YUV420P, 
+-    SWS_FAST_BILINEAR | SwScaleCPUFlags(), NULL, NULL, NULL);
++    m_videobuffer.iWidth, m_videobuffer.iHeight, AV_PIX_FMT_UYVY422,
++    m_videobuffer.iWidth, m_videobuffer.iHeight, AV_PIX_FMT_YUV420P,
++    SWS_FAST_BILINEAR, NULL, NULL, NULL);
+   if (swcontext)
+   {
+     uint8_t  *src[] = { yuv422_ptr, 0, 0, 0 };
+@@ -574,11 +574,11 @@ void CDVDVideoCodecVDA::UYVY422_to_YUV42
+ 
+ void CDVDVideoCodecVDA::BGRA_to_YUV420P(uint8_t *bgra_ptr, int bgra_stride, DVDVideoPicture *picture)
+ {
+-  // convert PIX_FMT_BGRA to PIX_FMT_YUV420P.
++  // convert AV_PIX_FMT_BGRA to AV_PIX_FMT_YUV420P.
+   struct SwsContext *swcontext = sws_getContext(
+-    m_videobuffer.iWidth, m_videobuffer.iHeight, PIX_FMT_BGRA, 
+-    m_videobuffer.iWidth, m_videobuffer.iHeight, PIX_FMT_YUV420P, 
+-    SWS_FAST_BILINEAR | SwScaleCPUFlags(), NULL, NULL, NULL);
++    m_videobuffer.iWidth, m_videobuffer.iHeight, AV_PIX_FMT_BGRA,
++    m_videobuffer.iWidth, m_videobuffer.iHeight, AV_PIX_FMT_YUV420P,
++    SWS_FAST_BILINEAR, NULL, NULL, NULL);
+   if (swcontext)
+   {
+     uint8_t  *src[] = { bgra_ptr, 0, 0, 0 };
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/DXVA.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/DXVA.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/DXVA.cpp
+@@ -886,7 +886,7 @@ static bool CheckCompatibility(AVCodecCo
+   return true;
+ }
+ 
+-bool CDecoder::Open(AVCodecContext *avctx, AVCodecContext* mainctx, enum PixelFormat fmt, unsigned int surfaces)
++bool CDecoder::Open(AVCodecContext *avctx, AVCodecContext* mainctx, enum AVPixelFormat fmt, unsigned int surfaces)
+ {
+   if (!CheckCompatibility(avctx))
+     return false;
+@@ -1135,9 +1135,9 @@ bool CDecoder::OpenDecoder()
+   return true;
+ }
+ 
+-bool CDecoder::Supports(enum PixelFormat fmt)
++bool CDecoder::Supports(enum AVPixelFormat fmt)
+ {
+-  if(fmt == PIX_FMT_DXVA2_VLD)
++  if(fmt == AV_PIX_FMT_DXVA2_VLD)
+     return true;
+   return false;
+ }
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/DXVA.h
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/DXVA.h
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/DXVA.h
+@@ -141,7 +141,7 @@ class CDecoder
+ public:
+   CDecoder();
+  ~CDecoder();
+-  virtual bool Open      (AVCodecContext* avctx, AVCodecContext* mainctx, const enum PixelFormat, unsigned int surfaces);
++  virtual bool Open      (AVCodecContext* avctx, AVCodecContext* mainctx, const enum AVPixelFormat, unsigned int surfaces);
+   virtual int  Decode    (AVCodecContext* avctx, AVFrame* frame);
+   virtual bool GetPicture(AVCodecContext* avctx, AVFrame* frame, DVDVideoPicture* picture);
+   virtual int  Check     (AVCodecContext* avctx);
+@@ -154,7 +154,7 @@ public:
+   int   GetBuffer(AVCodecContext *avctx, AVFrame *pic, int flags);
+   void  RelBuffer(uint8_t *data);
+ 
+-  static bool      Supports(enum PixelFormat fmt);
++  static bool      Supports(enum AVPixelFormat fmt);
+ 
+   void CloseDXVADecoder();
+ 
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp
+@@ -479,7 +479,7 @@ CDecoder::~CDecoder()
+   Close();
+ }
+ 
+-bool CDecoder::Open(AVCodecContext* avctx, AVCodecContext* mainctx, const enum PixelFormat fmt, unsigned int surfaces)
++bool CDecoder::Open(AVCodecContext* avctx, AVCodecContext* mainctx, const enum AVPixelFormat fmt, unsigned int surfaces)
+ {
+   // don't support broken wrappers by default
+   // nvidia cards with a vaapi to vdpau wrapper
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.h
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.h
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.h
+@@ -406,7 +406,7 @@ public:
+   CDecoder();
+   virtual ~CDecoder();
+ 
+-  virtual bool Open      (AVCodecContext* avctx, AVCodecContext* mainctx, const enum PixelFormat, unsigned int surfaces = 0);
++  virtual bool Open      (AVCodecContext* avctx, AVCodecContext* mainctx, const enum AVPixelFormat, unsigned int surfaces = 0);
+   virtual int  Decode    (AVCodecContext* avctx, AVFrame* frame);
+   virtual bool GetPicture(AVCodecContext* avctx, AVFrame* frame, DVDVideoPicture* picture);
+   virtual void Reset();
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VDA.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/VDA.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VDA.cpp
+@@ -186,7 +186,7 @@ void CDecoder::Close()
+   m_bitstream = NULL;
+ }
+ 
+-bool CDecoder::Open(AVCodecContext *avctx, AVCodecContext* mainctx, enum PixelFormat fmt, unsigned int surfaces)
++bool CDecoder::Open(AVCodecContext *avctx, AVCodecContext* mainctx, enum AVPixelFormat fmt, unsigned int surfaces)
+ {
+   Close();
+ 
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VDA.h
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/VDA.h
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VDA.h
+@@ -35,7 +35,7 @@ class CDecoder
+ public:
+   CDecoder();
+  ~CDecoder();
+-  virtual bool Open(AVCodecContext* avctx, AVCodecContext* mainctx, const enum PixelFormat, unsigned int surfaces = 0);
++  virtual bool Open(AVCodecContext* avctx, AVCodecContext* mainctx, const enum AVPixelFormat, unsigned int surfaces = 0);
+   virtual int Decode(AVCodecContext* avctx, AVFrame* frame);
+   virtual bool GetPicture(AVCodecContext* avctx, AVFrame* frame, DVDVideoPicture* picture);
+   virtual int Check(AVCodecContext* avctx);
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VDPAU.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/VDPAU.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VDPAU.cpp
+@@ -486,7 +486,7 @@ CDecoder::CDecoder() : m_vdpauOutput(&m_
+   m_vdpauConfig.context = 0;
+ }
+ 
+-bool CDecoder::Open(AVCodecContext* avctx, AVCodecContext* mainctx, const enum PixelFormat fmt, unsigned int surfaces)
++bool CDecoder::Open(AVCodecContext* avctx, AVCodecContext* mainctx, const enum AVPixelFormat fmt, unsigned int surfaces)
+ {
+   // check if user wants to decode this format with VDPAU
+   std::string gpuvendor = g_Windowing.GetRenderVendor();
+@@ -760,7 +760,7 @@ int CDecoder::Check(AVCodecContext* avct
+   return 0;
+ }
+ 
+-bool CDecoder::IsVDPAUFormat(PixelFormat format)
++bool CDecoder::IsVDPAUFormat(AVPixelFormat format)
+ {
+   if (format == AV_PIX_FMT_VDPAU)
+     return true;
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VDPAU.h
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/VDPAU.h
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDCodecs/Video/VDPAU.h
+@@ -556,7 +556,7 @@ public:
+   CDecoder();
+   virtual ~CDecoder();
+ 
+-  virtual bool Open      (AVCodecContext* avctx, AVCodecContext* mainctx, const enum PixelFormat, unsigned int surfaces = 0);
++  virtual bool Open      (AVCodecContext* avctx, AVCodecContext* mainctx, const enum AVPixelFormat, unsigned int surfaces = 0);
+   virtual int  Decode    (AVCodecContext* avctx, AVFrame* frame);
+   virtual bool GetPicture(AVCodecContext* avctx, AVFrame* frame, DVDVideoPicture* picture);
+   virtual void Reset();
+@@ -571,7 +571,7 @@ public:
+   bool Supports(VdpVideoMixerFeature feature);
+   bool Supports(EINTERLACEMETHOD method);
+   EINTERLACEMETHOD AutoInterlaceMethod();
+-  static bool IsVDPAUFormat(PixelFormat fmt);
++  static bool IsVDPAUFormat(AVPixelFormat fmt);
+ 
+   static void FFReleaseBuffer(void *opaque, uint8_t *data);
+   static int FFGetBuffer(AVCodecContext *avctx, AVFrame *pic, int flags);
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
+@@ -1638,7 +1638,7 @@ void CDVDDemuxFFmpeg::ParsePacket(AVPack
+ 
+   // for video we need a decoder to get desired information into codec context
+   if (st->codec->codec_type == AVMEDIA_TYPE_VIDEO && st->codec->extradata &&
+-      (!st->codec->width || st->codec->pix_fmt == PIX_FMT_NONE))
++      (!st->codec->width || st->codec->pix_fmt == AV_PIX_FMT_NONE))
+   {
+     // open a decoder, it will be cleared down by ffmpeg on closing the stream
+     if (!st->codec->codec)
+@@ -1695,7 +1695,7 @@ bool CDVDDemuxFFmpeg::IsVideoReady()
+       st = m_pFormatContext->streams[idx];
+       if (st->codec->codec_type == AVMEDIA_TYPE_VIDEO)
+       {
+-        if (st->codec->width && st->codec->pix_fmt != PIX_FMT_NONE)
++        if (st->codec->width && st->codec->pix_fmt != AV_PIX_FMT_NONE)
+           return true;
+         hasVideo = true;
+       }
+@@ -1708,7 +1708,7 @@ bool CDVDDemuxFFmpeg::IsVideoReady()
+       st = m_pFormatContext->streams[i];
+       if (st->codec->codec_type == AVMEDIA_TYPE_VIDEO)
+       {
+-        if (st->codec->width && st->codec->pix_fmt != PIX_FMT_NONE)
++        if (st->codec->width && st->codec->pix_fmt != AV_PIX_FMT_NONE)
+           return true;
+         hasVideo = true;
+       }
+Index: xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDFileInfo.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/dvdplayer/DVDFileInfo.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/dvdplayer/DVDFileInfo.cpp
+@@ -275,7 +275,7 @@ bool CDVDFileInfo::ExtractThumb(const st
+ 
+             uint8_t *pOutBuf = new uint8_t[nWidth * nHeight * 4];
+             struct SwsContext *context = sws_getContext(picture.iWidth, picture.iHeight,
+-                  PIX_FMT_YUV420P, nWidth, nHeight, PIX_FMT_BGRA, SWS_FAST_BILINEAR | SwScaleCPUFlags(), NULL, NULL, NULL);
++                  AV_PIX_FMT_YUV420P, nWidth, nHeight, AV_PIX_FMT_BGRA, SWS_FAST_BILINEAR, NULL, NULL, NULL);
+ 
+             if (context)
+             {
+Index: xbmc-16.0-Jarvis/xbmc/cores/VideoRenderers/LinuxRendererGL.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/VideoRenderers/LinuxRendererGL.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/VideoRenderers/LinuxRendererGL.cpp
+@@ -2932,7 +2932,7 @@ void CLinuxRendererGL::ToRGBFrame(YV12Im
+   }
+   else if (m_format == RENDER_FMT_NV12)
+   {
+-    srcFormat = PIX_FMT_NV12;
++    srcFormat = AV_PIX_FMT_NV12;
+     for (int i = 0; i < 2; i++)
+     {
+       src[i]       = im->plane[i];
+@@ -2941,13 +2941,13 @@ void CLinuxRendererGL::ToRGBFrame(YV12Im
+   }
+   else if (m_format == RENDER_FMT_YUYV422)
+   {
+-    srcFormat    = PIX_FMT_YUYV422;
++    srcFormat    = AV_PIX_FMT_YUYV422;
+     src[0]       = im->plane[0];
+     srcStride[0] = im->stride[0];
+   }
+   else if (m_format == RENDER_FMT_UYVY422)
+   {
+-    srcFormat    = PIX_FMT_UYVY422;
++    srcFormat    = AV_PIX_FMT_UYVY422;
+     src[0]       = im->plane[0];
+     srcStride[0] = im->stride[0];
+   }
+@@ -2965,8 +2965,8 @@ void CLinuxRendererGL::ToRGBFrame(YV12Im
+ 
+   m_context = sws_getCachedContext(m_context,
+                                                  im->width, im->height, (AVPixelFormat)srcFormat,
+-                                                 im->width, im->height, (AVPixelFormat)PIX_FMT_BGRA,
+-                                                 SWS_FAST_BILINEAR | SwScaleCPUFlags(), NULL, NULL, NULL);
++                                                 im->width, im->height, (AVPixelFormat)AV_PIX_FMT_BGRA,
++                                                 SWS_FAST_BILINEAR, NULL, NULL, NULL);
+ 
+   uint8_t *dst[]       = { m_rgbBuffer, 0, 0, 0 };
+   int      dstStride[] = { (int)m_sourceWidth * 4, 0, 0, 0 };
+@@ -2995,7 +2995,7 @@ void CLinuxRendererGL::ToRGBFields(YV12I
+ 
+   if (m_format == RENDER_FMT_YUV420P)
+   {
+-    srcFormat = PIX_FMT_YUV420P;
++    srcFormat = AV_PIX_FMT_YUV420P;
+     for (int i = 0; i < 3; i++)
+     {
+       srcTop[i]       = im->plane[i];
+@@ -3006,7 +3006,7 @@ void CLinuxRendererGL::ToRGBFields(YV12I
+   }
+   else if (m_format == RENDER_FMT_NV12)
+   {
+-    srcFormat = PIX_FMT_NV12;
++    srcFormat = AV_PIX_FMT_NV12;
+     for (int i = 0; i < 2; i++)
+     {
+       srcTop[i]       = im->plane[i];
+@@ -3017,7 +3017,7 @@ void CLinuxRendererGL::ToRGBFields(YV12I
+   }
+   else if (m_format == RENDER_FMT_YUYV422)
+   {
+-    srcFormat       = PIX_FMT_YUYV422;
++    srcFormat       = AV_PIX_FMT_YUYV422;
+     srcTop[0]       = im->plane[0];
+     srcStrideTop[0] = im->stride[0] * 2;
+     srcBot[0]       = im->plane[0] + im->stride[0];
+@@ -3025,7 +3025,7 @@ void CLinuxRendererGL::ToRGBFields(YV12I
+   }
+   else if (m_format == RENDER_FMT_UYVY422)
+   {
+-    srcFormat       = PIX_FMT_UYVY422;
++    srcFormat       = AV_PIX_FMT_UYVY422;
+     srcTop[0]       = im->plane[0];
+     srcStrideTop[0] = im->stride[0] * 2;
+     srcBot[0]       = im->plane[0] + im->stride[0];
+@@ -3045,8 +3045,8 @@ void CLinuxRendererGL::ToRGBFields(YV12I
+ 
+   m_context = sws_getCachedContext(m_context,
+                                                  im->width, im->height >> 1, (AVPixelFormat)srcFormat,
+-                                                 im->width, im->height >> 1, (AVPixelFormat)PIX_FMT_BGRA,
+-                                                 SWS_FAST_BILINEAR | SwScaleCPUFlags(), NULL, NULL, NULL);
++                                                 im->width, im->height >> 1, (AVPixelFormat)AV_PIX_FMT_BGRA,
++                                                 SWS_FAST_BILINEAR, NULL, NULL, NULL);
+   uint8_t *dstTop[]    = { m_rgbBuffer, 0, 0, 0 };
+   uint8_t *dstBot[]    = { m_rgbBuffer + m_sourceWidth * m_sourceHeight * 2, 0, 0, 0 };
+   int      dstStride[] = { (int)m_sourceWidth * 4, 0, 0, 0 };
+Index: xbmc-16.0-Jarvis/xbmc/cores/VideoRenderers/LinuxRendererGLES.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/VideoRenderers/LinuxRendererGLES.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/VideoRenderers/LinuxRendererGLES.cpp
+@@ -2006,8 +2006,8 @@ void CLinuxRendererGLES::UploadYV12Textu
+ #endif
+     {
+       m_sw_context = sws_getCachedContext(m_sw_context,
+-        im->width, im->height, PIX_FMT_YUV420P,
+-        im->width, im->height, PIX_FMT_RGBA,
++        im->width, im->height, AV_PIX_FMT_YUV420P,
++        im->width, im->height, AV_PIX_FMT_RGBA,
+         SWS_FAST_BILINEAR, NULL, NULL, NULL);
+ 
+       uint8_t *src[]  = { im->plane[0], im->plane[1], im->plane[2], 0 };
+Index: xbmc-16.0-Jarvis/xbmc/cores/VideoRenderers/WinRenderer.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/cores/VideoRenderers/WinRenderer.cpp
++++ xbmc-16.0-Jarvis/xbmc/cores/VideoRenderers/WinRenderer.cpp
+@@ -94,16 +94,16 @@ CWinRenderer::~CWinRenderer()
+   UnInit();
+ }
+ 
+-static enum PixelFormat PixelFormatFromFormat(ERenderFormat format)
++static enum AVPixelFormat PixelFormatFromFormat(ERenderFormat format)
+ {
+-  if (format == RENDER_FMT_DXVA)      return PIX_FMT_NV12;
+-  if (format == RENDER_FMT_YUV420P)   return PIX_FMT_YUV420P;
+-  if (format == RENDER_FMT_YUV420P10) return PIX_FMT_YUV420P10;
+-  if (format == RENDER_FMT_YUV420P16) return PIX_FMT_YUV420P16;
+-  if (format == RENDER_FMT_NV12)      return PIX_FMT_NV12;
+-  if (format == RENDER_FMT_UYVY422)   return PIX_FMT_UYVY422;
+-  if (format == RENDER_FMT_YUYV422)   return PIX_FMT_YUYV422;
+-  return PIX_FMT_NONE;
++  if (format == RENDER_FMT_DXVA)      return AV_PIX_FMT_NV12;
++  if (format == RENDER_FMT_YUV420P)   return AV_PIX_FMT_YUV420P;
++  if (format == RENDER_FMT_YUV420P10) return AV_PIX_FMT_YUV420P10;
++  if (format == RENDER_FMT_YUV420P16) return AV_PIX_FMT_YUV420P16;
++  if (format == RENDER_FMT_NV12)      return AV_PIX_FMT_NV12;
++  if (format == RENDER_FMT_UYVY422)   return AV_PIX_FMT_UYVY422;
++  if (format == RENDER_FMT_YUYV422)   return AV_PIX_FMT_YUYV422;
++  return AV_PIX_FMT_NONE;
+ }
+ 
+ void CWinRenderer::ManageTextures()
+@@ -719,13 +719,13 @@ void CWinRenderer::Render(DWORD flags)
+ 
+ void CWinRenderer::RenderSW()
+ {
+-  enum PixelFormat format = PixelFormatFromFormat(m_format);
++  enum AVPixelFormat format = PixelFormatFromFormat(m_format);
+ 
+   // 1. convert yuv to rgb
+   m_sw_scale_ctx = sws_getCachedContext(m_sw_scale_ctx,
+                                         m_sourceWidth, m_sourceHeight, format,
+-                                        m_sourceWidth, m_sourceHeight, PIX_FMT_BGRA,
+-                                        SWS_FAST_BILINEAR | SwScaleCPUFlags(), NULL, NULL, NULL);
++                                        m_sourceWidth, m_sourceHeight, AV_PIX_FMT_BGRA,
++                                        SWS_FAST_BILINEAR, NULL, NULL, NULL);
+ 
+   YUVBuffer* buf = (YUVBuffer*)m_VideoBuffers[m_iYV12RenderBuffer];
+ 
+Index: xbmc-16.0-Jarvis/xbmc/pictures/Picture.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/pictures/Picture.cpp
++++ xbmc-16.0-Jarvis/xbmc/pictures/Picture.cpp
+@@ -342,9 +342,9 @@ bool CPicture::ScaleImage(uint8_t *in_pi
+                           uint8_t *out_pixels, unsigned int out_width, unsigned int out_height, unsigned int out_pitch,
+                           CPictureScalingAlgorithm::Algorithm scalingAlgorithm /* = CPictureScalingAlgorithm::NoAlgorithm */)
+ {
+-  struct SwsContext *context = sws_getContext(in_width, in_height, PIX_FMT_BGRA,
+-                                                         out_width, out_height, PIX_FMT_BGRA,
+-                                                         CPictureScalingAlgorithm::ToSwscale(scalingAlgorithm) | SwScaleCPUFlags(), NULL, NULL, NULL);
++  struct SwsContext *context = sws_getContext(in_width, in_height, AV_PIX_FMT_BGRA,
++                                                         out_width, out_height, AV_PIX_FMT_BGRA,
++                                                         CPictureScalingAlgorithm::ToSwscale(scalingAlgorithm), NULL, NULL, NULL);
+ 
+   uint8_t *src[] = { in_pixels, 0, 0, 0 };
+   int     srcStride[] = { (int)in_pitch, 0, 0, 0 };
+Index: xbmc-16.0-Jarvis/xbmc/video/FFmpegVideoDecoder.cpp
+===================================================================
+--- xbmc-16.0-Jarvis.orig/xbmc/video/FFmpegVideoDecoder.cpp
++++ xbmc-16.0-Jarvis/xbmc/video/FFmpegVideoDecoder.cpp
+@@ -252,7 +252,7 @@ bool FFmpegVideoDecoder::nextFrame( CBas
+       return false;
+ 
+     // Due to a bug in swsscale we need to allocate one extra line of data
+-    if ( avpicture_alloc( m_pFrameRGB, PIX_FMT_RGB32, m_frameRGBwidth, m_frameRGBheight + 1 ) < 0 )
++    if ( avpicture_alloc( m_pFrameRGB, AV_PIX_FMT_RGB32, m_frameRGBwidth, m_frameRGBheight + 1 ) < 0 )
+       return false;
+   }
+ 
+@@ -287,7 +287,7 @@ bool FFmpegVideoDecoder::nextFrame( CBas
+ 
+   // We got the video frame, render it into the picture buffer
+   struct SwsContext * context = sws_getContext( m_pCodecCtx->width, m_pCodecCtx->height, m_pCodecCtx->pix_fmt,
+-                           m_frameRGBwidth, m_frameRGBheight, PIX_FMT_RGB32, SWS_FAST_BILINEAR, NULL, NULL, NULL );
++                           m_frameRGBwidth, m_frameRGBheight, AV_PIX_FMT_RGB32, SWS_FAST_BILINEAR, NULL, NULL, NULL );
+ 
+   sws_scale( context, m_pFrame->data, m_pFrame->linesize, 0, m_pCodecCtx->height,
+                                                                      m_pFrameRGB->data, m_pFrameRGB->linesize );
-- 
2.8.0.rc3

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [Buildroot] [PATCH v3 02/18] package/libdcadec: bump version to v0.2.0
  2016-03-28 18:20 [Buildroot] [PATCH v3 00/18] Bump ffmpeg to 3.0 Bernd Kuhls
  2016-03-28 18:20 ` [Buildroot] [PATCH v3 01/18] package/kodi: add support for ffmpeg 3.0 Bernd Kuhls
@ 2016-03-28 18:20 ` Bernd Kuhls
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 03/18] package/ortp: bump version to 0.25.0 Bernd Kuhls
                   ` (15 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: Bernd Kuhls @ 2016-03-28 18:20 UTC (permalink / raw)
  To: buildroot

This version bump is needed by ffmpeg 3.0:
http://git.videolan.org/?p=ffmpeg.git;a=blobdiff;f=configure;h=a30d831c97575858c760694f191b4efe71360301;hp=8cbd5e574979e1a9492754aa41fcff233ee8da33;hb=27ce53b52d0d5f2c1d59da13491b74fe73cde964;hpb=26a84e2dae4007628d30cae746822486076767ee

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
 package/libdcadec/libdcadec.hash | 2 ++
 package/libdcadec/libdcadec.mk   | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)
 create mode 100644 package/libdcadec/libdcadec.hash

diff --git a/package/libdcadec/libdcadec.hash b/package/libdcadec/libdcadec.hash
new file mode 100644
index 0000000..dda58d1
--- /dev/null
+++ b/package/libdcadec/libdcadec.hash
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256	ed9d207fde3e8d576f3af8b0d1235b3371e315175757173689104efcaebf0d44	libdcadec-v0.2.0.tar.gz
diff --git a/package/libdcadec/libdcadec.mk b/package/libdcadec/libdcadec.mk
index 2b391fc..48e4a12 100644
--- a/package/libdcadec/libdcadec.mk
+++ b/package/libdcadec/libdcadec.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-LIBDCADEC_VERSION = 2a9186e34ce557d3af1a20f5b558d1e6687708b9
+LIBDCADEC_VERSION = v0.2.0
 LIBDCADEC_SITE = $(call github,foo86,dcadec,$(LIBDCADEC_VERSION))
 LIBDCADEC_LICENSE = LGPLv2.1+
 LIBDCADEC_LICENSE_FILES = COPYING.LGPLv2.1
-- 
2.8.0.rc3

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [Buildroot] [PATCH v3 03/18] package/ortp: bump version to 0.25.0
  2016-03-28 18:20 [Buildroot] [PATCH v3 00/18] Bump ffmpeg to 3.0 Bernd Kuhls
  2016-03-28 18:20 ` [Buildroot] [PATCH v3 01/18] package/kodi: add support for ffmpeg 3.0 Bernd Kuhls
  2016-03-28 18:20 ` [Buildroot] [PATCH v3 02/18] package/libdcadec: bump version to v0.2.0 Bernd Kuhls
@ 2016-03-28 18:21 ` Bernd Kuhls
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 04/18] package/mediastreamer: bump version to 2.12.1 Bernd Kuhls
                   ` (14 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: Bernd Kuhls @ 2016-03-28 18:21 UTC (permalink / raw)
  To: buildroot

This version bump is needed by mediastreamer 2.12.1, the mediastreamer
bump is needed to provide support for ffmpeg 3.0.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
 package/ortp/ortp.hash | 4 ++--
 package/ortp/ortp.mk   | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/package/ortp/ortp.hash b/package/ortp/ortp.hash
index 728a0d1..8b099a7 100644
--- a/package/ortp/ortp.hash
+++ b/package/ortp/ortp.hash
@@ -1,2 +1,2 @@
-# Locally calculated after checking pgp signature
-sha256	6e37e29b3c3559bac1f2ae0c977f6ceb4d4ce8dc713b691dea8bae57bda92d0b	ortp-0.22.0.tar.gz
+# Locally calculated
+sha256	0deb826b79b1fd329f7638821d5439dc343bc55bb122daa6c90d19116cfe8d9a	ortp-0.25.0.tar.gz
diff --git a/package/ortp/ortp.mk b/package/ortp/ortp.mk
index 89bfc06..158b212 100644
--- a/package/ortp/ortp.mk
+++ b/package/ortp/ortp.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ORTP_VERSION = 0.22.0
+ORTP_VERSION = 0.25.0
 ORTP_SITE = http://download.savannah.nongnu.org/releases/linphone/ortp/sources
 
 # ortp is not happy with the libsrtp implementation packaged in
-- 
2.8.0.rc3

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [Buildroot] [PATCH v3 04/18] package/mediastreamer: bump version to 2.12.1
  2016-03-28 18:20 [Buildroot] [PATCH v3 00/18] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (2 preceding siblings ...)
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 03/18] package/ortp: bump version to 0.25.0 Bernd Kuhls
@ 2016-03-28 18:21 ` Bernd Kuhls
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 05/18] package/opencv: bump version to 2.4.12.3 Bernd Kuhls
                   ` (13 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: Bernd Kuhls @ 2016-03-28 18:21 UTC (permalink / raw)
  To: buildroot

The version bump is needed to provide support for ffmpeg 3.0.

Removed 0001-misc-fixes.patch which previously provided patches to
support newer ffmpeg versions. This is not needed anymore after
this upstream commit:
https://github.com/BelledonneCommunications/mediastreamer2/commit/5e653bfe4c8ea27d09c80d91794f0178a454851e

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
 package/mediastreamer/0001-misc-fixes.patch | 156 ----------------------------
 package/mediastreamer/mediastreamer.hash    |   4 +-
 package/mediastreamer/mediastreamer.mk      |   2 +-
 3 files changed, 3 insertions(+), 159 deletions(-)
 delete mode 100644 package/mediastreamer/0001-misc-fixes.patch

diff --git a/package/mediastreamer/0001-misc-fixes.patch b/package/mediastreamer/0001-misc-fixes.patch
deleted file mode 100644
index 84c9948..0000000
--- a/package/mediastreamer/0001-misc-fixes.patch
+++ /dev/null
@@ -1,156 +0,0 @@
-Fix linphone compile with newer ffmpeg versions, downloaded from
-https://github.com/dankamongmen/mediastreamer2/commit/4f438eb8e132a3119284be771e0daad143597ebd
-
-Fixes
-http://autobuild.buildroot.net/results/b72/b72b1f6287986af3d686cc3c8b9c1b3fd9419d29/
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
-
-From 4f438eb8e132a3119284be771e0daad143597ebd Mon Sep 17 00:00:00 2001
-From: nick black <nick.black@sprezzatech.com>
-Date: Mon, 28 Jan 2013 23:54:17 -0500
-Subject: [PATCH] adapt to new libav API
-
----
- src/utils/ffmpeg-priv.h       | 1 +
- src/videofilters/h264dec.c    | 6 +++---
- src/videofilters/jpegwriter.c | 6 +++---
- src/videofilters/nowebcam.c   | 6 +++---
- src/videofilters/videodec.c   | 8 ++++----
- src/videofilters/videoenc.c   | 6 +++---
- 6 files changed, 17 insertions(+), 16 deletions(-)
-
-diff --git a/src/utils/ffmpeg-priv.h b/src/utils/ffmpeg-priv.h
-index 0eab098..a405c05 100644
---- a/src/utils/ffmpeg-priv.h
-+++ b/src/utils/ffmpeg-priv.h
-@@ -35,6 +35,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
- /* new layout */
- # include <libavcodec/avcodec.h>
- # include <libavutil/avutil.h>
-+# include <libavutil/mem.h>
- #else
- /* old layout */
- # include <ffmpeg/avcodec.h>
-diff --git a/src/videofilters/h264dec.c b/src/videofilters/h264dec.c
-index 5229b5e..7059634 100644
---- a/src/videofilters/h264dec.c
-+++ b/src/videofilters/h264dec.c
-@@ -58,10 +58,10 @@ static void dec_open(DecData *d){
- 	int error;
- 	codec=avcodec_find_decoder(CODEC_ID_H264);
- 	if (codec==NULL) ms_fatal("Could not find H264 decoder in ffmpeg.");
--	avcodec_get_context_defaults(&d->av_context);
--	error=avcodec_open(&d->av_context,codec);
-+	avcodec_get_context_defaults3(&d->av_context, codec);
-+	error=avcodec_open2(&d->av_context,codec, NULL);
- 	if (error!=0){
--		ms_fatal("avcodec_open() failed.");
-+		ms_fatal("avcodec_open2() failed.");
- 	}
- }
- 
-diff --git a/src/videofilters/jpegwriter.c b/src/videofilters/jpegwriter.c
-index cca79c5..daf3cdb 100644
---- a/src/videofilters/jpegwriter.c
-+++ b/src/videofilters/jpegwriter.c
-@@ -90,7 +90,7 @@ static void jpg_process(MSFilter *f){
- 			mblk_t *jpegm;
- 			struct SwsContext *sws_ctx;
- 			
--			AVCodecContext *avctx=avcodec_alloc_context();
-+			AVCodecContext *avctx=avcodec_alloc_context3(NULL);
- 			
- 			avctx->width=yuvbuf.w;
- 			avctx->height=yuvbuf.h;
-@@ -98,9 +98,9 @@ static void jpg_process(MSFilter *f){
- 			avctx->time_base.den =1;
- 			avctx->pix_fmt=PIX_FMT_YUVJ420P;
- 
--			error=avcodec_open(avctx,s->codec);
-+			error=avcodec_open2(avctx,s->codec,NULL);
- 			if (error!=0) {
--				ms_error("avcodec_open() failed: %i",error);
-+				ms_error("avcodec_open2() failed: %i",error);
- 				cleanup(s,NULL);
- 				av_free(avctx);
- 				return;
-diff --git a/src/videofilters/nowebcam.c b/src/videofilters/nowebcam.c
-index f1c10de..b45f89f 100644
---- a/src/videofilters/nowebcam.c
-+++ b/src/videofilters/nowebcam.c
-@@ -68,9 +68,9 @@ static mblk_t *jpeg2yuv(uint8_t *jpgbuf, int bufsize, MSVideoSize *reqsize){
- 		return NULL;
- 	}
- 
--	avcodec_get_context_defaults(&av_context);
--	if (avcodec_open(&av_context,codec)<0){
--		ms_error("jpeg2yuv: avcodec_open failed");
-+	avcodec_get_context_defaults3(&av_context,NULL);
-+	if (avcodec_open2(&av_context,codec,NULL)<0){
-+		ms_error("jpeg2yuv: avcodec_open2 failed");
- 		return NULL;
- 	}
- 	av_init_packet(&pkt);
-diff --git a/src/videofilters/videodec.c b/src/videofilters/videodec.c
-index 9807214..2f1b452 100644
---- a/src/videofilters/videodec.c
-+++ b/src/videofilters/videodec.c
-@@ -53,7 +53,7 @@ static void dec_init(MSFilter *f, enum CodecID cid){
- 	DecState *s=(DecState *)ms_new0(DecState,1);
- 	ms_ffmpeg_check_init();
- 	
--	avcodec_get_context_defaults(&s->av_context);
-+	avcodec_get_context_defaults3(&s->av_context,NULL);
- 	s->av_codec=NULL;
- 	s->codec=cid;
- 	s->input=NULL;
-@@ -135,7 +135,7 @@ static void dec_preprocess(MSFilter *f){
- 	if (s->av_context.codec==NULL){
- 		/* we must know picture size before initializing snow decoder*/
- 		if (s->codec!=CODEC_ID_SNOW){
--			error=avcodec_open(&s->av_context, s->av_codec);
-+			error=avcodec_open2(&s->av_context, s->av_codec, NULL);
- 			if (error!=0) ms_error("avcodec_open() failed: %i",error);
- 			if (s->codec==CODEC_ID_MPEG4 && s->dci_size>0){
- 				s->av_context.extradata=s->dci;
-@@ -225,8 +225,8 @@ static mblk_t * parse_snow_header(DecState *s,mblk_t *inm){
- 			int error;
- 			s->av_context.width=h>>16;
- 			s->av_context.height=h&0xffff;
--			error=avcodec_open(&s->av_context, s->av_codec);
--			if (error!=0) ms_error("avcodec_open() failed for snow: %i",error);
-+			error=avcodec_open2(&s->av_context, s->av_codec, NULL);
-+			if (error!=0) ms_error("avcodec_open2() failed for snow: %i",error);
- 			else {
- 				s->snow_initialized=TRUE;
- 				ms_message("Snow decoder initialized,size=%ix%i",
-diff --git a/src/videofilters/videoenc.c b/src/videofilters/videoenc.c
-index da35592..4101772 100644
---- a/src/videofilters/videoenc.c
-+++ b/src/videofilters/videoenc.c
-@@ -242,7 +242,7 @@ static void prepare(EncState *s){
- 	AVCodecContext *c=&s->av_context;
- 	const int max_br_vbv=128000;
- 
--	avcodec_get_context_defaults(c);
-+	avcodec_get_context_defaults3(c,NULL);
- 	if (s->codec==CODEC_ID_MJPEG)
- 	{
- 		ms_message("Codec bitrate set to %i",c->bit_rate);
-@@ -348,9 +348,9 @@ static void enc_preprocess(MSFilter *f){
- 		ms_error("could not find encoder for codec id %i",s->codec);
- 		return;
- 	}
--	error=avcodec_open(&s->av_context, s->av_codec);
-+	error=avcodec_open2(&s->av_context, s->av_codec, NULL);
- 	if (error!=0) {
--		ms_error("avcodec_open() failed: %i",error);
-+		ms_error("avcodec_open2() failed: %i",error);
- 		return;
- 	}
- 	video_starter_init(&s->starter);
--- 
-2.0.3
-
diff --git a/package/mediastreamer/mediastreamer.hash b/package/mediastreamer/mediastreamer.hash
index 44849ac..21964a8 100644
--- a/package/mediastreamer/mediastreamer.hash
+++ b/package/mediastreamer/mediastreamer.hash
@@ -1,2 +1,2 @@
-# Locally calculated after checking pgp signature
-sha256	c245b9444c2abb4c84433606e01f0b3ce29ce78de0afe1e191f4f3c62656acd5	mediastreamer-2.9.0.tar.gz
+# Locally calculated
+sha256	0dbf8d4f721a04db9ec0982e98a4e852ad2d3acbcbd25edd96a66164a980f2e7	mediastreamer-2.12.1.tar.gz
diff --git a/package/mediastreamer/mediastreamer.mk b/package/mediastreamer/mediastreamer.mk
index 81f5b50..a12bfb4 100644
--- a/package/mediastreamer/mediastreamer.mk
+++ b/package/mediastreamer/mediastreamer.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-MEDIASTREAMER_VERSION = 2.9.0
+MEDIASTREAMER_VERSION = 2.12.1
 MEDIASTREAMER_SITE = http://download.savannah.nongnu.org/releases/linphone/mediastreamer
 MEDIASTREAMER_INSTALL_STAGING = YES
 MEDIASTREAMER_DEPENDENCIES = host-intltool host-pkgconf ortp host-gettext
-- 
2.8.0.rc3

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [Buildroot] [PATCH v3 05/18] package/opencv: bump version to 2.4.12.3
  2016-03-28 18:20 [Buildroot] [PATCH v3 00/18] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (3 preceding siblings ...)
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 04/18] package/mediastreamer: bump version to 2.12.1 Bernd Kuhls
@ 2016-03-28 18:21 ` Bernd Kuhls
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 06/18] package/opencv3: bump version to 3.1.0 Bernd Kuhls
                   ` (12 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: Bernd Kuhls @ 2016-03-28 18:21 UTC (permalink / raw)
  To: buildroot

Removed patches applied upstream:
https://github.com/Itseez/opencv/commit/ea50be0529c248961e1b66293f8a9e4b807294a6
https://github.com/Itseez/opencv/commit/2e393ab83362743ba1825ad4b31d4a2925c606b4
https://github.com/Itseez/opencv/commit/eceada586bbf18fc267e437522ec4f1f23ddc656

Added upstream patch to support ffmpeg 3.0.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
 .../0001-core-fix-x86-PIC-code-compilation.patch   |  49 --
 package/opencv/0001-ffmpeg30.patch                 | 638 +++++++++++++++++++++
 ...ix-return-type-value-VideoFrameSource_GPU.patch |  40 --
 ...VGenPkgconfig.cmake-rework-opencv.pc-gene.patch | 156 -----
 package/opencv/opencv.mk                           |   2 +-
 5 files changed, 639 insertions(+), 246 deletions(-)
 delete mode 100644 package/opencv/0001-core-fix-x86-PIC-code-compilation.patch
 create mode 100644 package/opencv/0001-ffmpeg30.patch
 delete mode 100644 package/opencv/0002-superres-Fix-return-type-value-VideoFrameSource_GPU.patch
 delete mode 100644 package/opencv/0003-cmake-OpenCVGenPkgconfig.cmake-rework-opencv.pc-gene.patch

diff --git a/package/opencv/0001-core-fix-x86-PIC-code-compilation.patch b/package/opencv/0001-core-fix-x86-PIC-code-compilation.patch
deleted file mode 100644
index 9e8c2e9..0000000
--- a/package/opencv/0001-core-fix-x86-PIC-code-compilation.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From ea50be0529c248961e1b66293f8a9e4b807294a6 Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Sun, 12 Oct 2014 10:17:23 +0200
-Subject: [PATCH] core: fix x86 PIC code compilation
-
-This bug was triggered by Buildroot autobuilders [1,2], causing this
-kind of failures [3,4]:
-
-  [ 14%] Building CXX object modules/core/CMakeFiles/opencv_core.dir/src/system.cpp.o
-  /home/test/autobuild/instance-0/output/build/opencv-2.4.10/modules/core/src/system.cpp: In function '(static initializers for /home/test/autobuild/instance-0/output/build/opencv-2.4.10/modules/core/src/system.cpp)':
-  /home/test/autobuild/instance-0/output/build/opencv-2.4.10/modules/core/src/system.cpp:280:10: error: inconsistent operand constraints in an 'asm'
-  make[3]: *** [modules/core/CMakeFiles/opencv_core.dir/src/system.cpp.o] Error 1
-
-[1] http://buildroot.org/
-[2] http://autobuild.buildroot.org/
-[3] http://autobuild.buildroot.org/?reason=opencv-2.4.10
-[4] http://autobuild.buildroot.org/results/483/4838285b25d6293a5cf0bb9eadd5040a7c75d766/build-end.log
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- modules/core/src/system.cpp | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/modules/core/src/system.cpp b/modules/core/src/system.cpp
-index 5a970d5..e9ffdc7 100644
---- a/modules/core/src/system.cpp
-+++ b/modules/core/src/system.cpp
-@@ -267,14 +267,17 @@ struct HWFeatures
-          : "cc"
-         );
-         #else
-+        // We need to preserve ebx since we are compiling PIC code.
-+        // This means we cannot use "=b" for the 2nd output register.
-         asm volatile
-         (
-          "pushl %%ebx\n\t"
-          "movl $7,%%eax\n\t"
-          "movl $0,%%ecx\n\t"
-          "cpuid\n\t"
-+         "movl %%ebx,%1\n\t"
-          "popl %%ebx\n\t"
--         : "=a"(cpuid_data[0]), "=b"(cpuid_data[1]), "=c"(cpuid_data[2]), "=d"(cpuid_data[3])
-+         : "=a"(cpuid_data[0]), "=r"(cpuid_data[1]), "=c"(cpuid_data[2]), "=d"(cpuid_data[3])
-          :
-          : "cc"
-         );
--- 
-2.1.2
-
diff --git a/package/opencv/0001-ffmpeg30.patch b/package/opencv/0001-ffmpeg30.patch
new file mode 100644
index 0000000..70b6510
--- /dev/null
+++ b/package/opencv/0001-ffmpeg30.patch
@@ -0,0 +1,638 @@
+From a61b19b524cd2b66a7c43e67edd7cc780bf46cbb Mon Sep 17 00:00:00 2001
+From: Alexander Alekhin <alexander.alekhin@itseez.com>
+Date: Wed, 2 Mar 2016 17:54:17 +0300
+Subject: [PATCH] backport ffmpeg fixes
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+Downloaded from upstream commit:
+https://github.com/Itseez/opencv/commit/a61b19b524cd2b66a7c43e67edd7cc780bf46cbb
+---
+ modules/highgui/src/cap_ffmpeg_impl.hpp | 364 +++++++++++++++++++++++++++-----
+ 1 file changed, 314 insertions(+), 50 deletions(-)
+
+diff --git a/modules/highgui/src/cap_ffmpeg_impl.hpp b/modules/highgui/src/cap_ffmpeg_impl.hpp
+index 1b79870..6df542a 100644
+--- a/modules/highgui/src/cap_ffmpeg_impl.hpp
++++ b/modules/highgui/src/cap_ffmpeg_impl.hpp
+@@ -118,11 +118,6 @@ extern "C" {
+ #define CV_WARN(message) fprintf(stderr, "warning: %s (%s:%d)\n", message, __FILE__, __LINE__)
+ #endif
+ 
+-/* PIX_FMT_RGBA32 macro changed in newer ffmpeg versions */
+-#ifndef PIX_FMT_RGBA32
+-#define PIX_FMT_RGBA32 PIX_FMT_RGB32
+-#endif
+-
+ #define CALC_FFMPEG_VERSION(a,b,c) ( a<<16 | b<<8 | c )
+ 
+ #if defined WIN32 || defined _WIN32
+@@ -132,6 +127,11 @@ extern "C" {
+     #include <stdio.h>
+     #include <sys/types.h>
+     #include <sys/sysctl.h>
++    #include <sys/time.h>
++#if defined __APPLE__
++    #include <mach/clock.h>
++    #include <mach/mach.h>
++#endif
+ #endif
+ 
+ #ifndef MIN
+@@ -156,6 +156,155 @@ extern "C" {
+ #  define CV_CODEC(name) name
+ #endif
+ 
++#if LIBAVUTIL_BUILD < (LIBAVUTIL_VERSION_MICRO >= 100 \
++    ? CALC_FFMPEG_VERSION(51, 74, 100) : CALC_FFMPEG_VERSION(51, 42, 0))
++#define AVPixelFormat PixelFormat
++#define AV_PIX_FMT_BGR24 PIX_FMT_BGR24
++#define AV_PIX_FMT_RGB24 PIX_FMT_RGB24
++#define AV_PIX_FMT_GRAY8 PIX_FMT_GRAY8
++#define AV_PIX_FMT_YUV422P PIX_FMT_YUV422P
++#define AV_PIX_FMT_YUV420P PIX_FMT_YUV420P
++#define AV_PIX_FMT_YUV444P PIX_FMT_YUV444P
++#define AV_PIX_FMT_YUVJ420P PIX_FMT_YUVJ420P
++#define AV_PIX_FMT_GRAY16LE PIX_FMT_GRAY16LE
++#define AV_PIX_FMT_GRAY16BE PIX_FMT_GRAY16BE
++#endif
++
++#if LIBAVUTIL_BUILD >= (LIBAVUTIL_VERSION_MICRO >= 100 \
++    ? CALC_FFMPEG_VERSION(52, 38, 100) : CALC_FFMPEG_VERSION(52, 13, 0))
++#define USE_AV_FRAME_GET_BUFFER 1
++#else
++#define USE_AV_FRAME_GET_BUFFER 0
++#ifndef AV_NUM_DATA_POINTERS // required for 0.7.x/0.8.x ffmpeg releases
++#define AV_NUM_DATA_POINTERS 4
++#endif
++#endif
++
++
++#ifndef USE_AV_INTERRUPT_CALLBACK
++#if LIBAVFORMAT_BUILD >= CALC_FFMPEG_VERSION(53, 21, 0)
++#define USE_AV_INTERRUPT_CALLBACK 1
++#else
++#define USE_AV_INTERRUPT_CALLBACK 0
++#endif
++#endif
++
++#if USE_AV_INTERRUPT_CALLBACK
++#define LIBAVFORMAT_INTERRUPT_TIMEOUT_MS 30000
++
++#ifdef WIN32
++// http://stackoverflow.com/questions/5404277/porting-clock-gettime-to-windows
++
++static
++inline LARGE_INTEGER get_filetime_offset()
++{
++    SYSTEMTIME s;
++    FILETIME f;
++    LARGE_INTEGER t;
++
++    s.wYear = 1970;
++    s.wMonth = 1;
++    s.wDay = 1;
++    s.wHour = 0;
++    s.wMinute = 0;
++    s.wSecond = 0;
++    s.wMilliseconds = 0;
++    SystemTimeToFileTime(&s, &f);
++    t.QuadPart = f.dwHighDateTime;
++    t.QuadPart <<= 32;
++    t.QuadPart |= f.dwLowDateTime;
++    return t;
++}
++
++static
++inline void get_monotonic_time(timespec *tv)
++{
++    LARGE_INTEGER           t;
++    FILETIME				f;
++    double                  microseconds;
++    static LARGE_INTEGER    offset;
++    static double           frequencyToMicroseconds;
++    static int              initialized = 0;
++    static BOOL             usePerformanceCounter = 0;
++
++    if (!initialized)
++    {
++        LARGE_INTEGER performanceFrequency;
++        initialized = 1;
++        usePerformanceCounter = QueryPerformanceFrequency(&performanceFrequency);
++        if (usePerformanceCounter)
++        {
++            QueryPerformanceCounter(&offset);
++            frequencyToMicroseconds = (double)performanceFrequency.QuadPart / 1000000.;
++        }
++        else
++        {
++            offset = get_filetime_offset();
++            frequencyToMicroseconds = 10.;
++        }
++    }
++
++    if (usePerformanceCounter)
++    {
++        QueryPerformanceCounter(&t);
++    } else {
++        GetSystemTimeAsFileTime(&f);
++        t.QuadPart = f.dwHighDateTime;
++        t.QuadPart <<= 32;
++        t.QuadPart |= f.dwLowDateTime;
++    }
++
++    t.QuadPart -= offset.QuadPart;
++    microseconds = (double)t.QuadPart / frequencyToMicroseconds;
++    t.QuadPart = microseconds;
++    tv->tv_sec = t.QuadPart / 1000000;
++    tv->tv_nsec = (t.QuadPart % 1000000) * 1000;
++}
++#else
++static
++inline void get_monotonic_time(timespec *time)
++{
++#if defined(__APPLE__) && defined(__MACH__)
++    clock_serv_t cclock;
++    mach_timespec_t mts;
++    host_get_clock_service(mach_host_self(), CALENDAR_CLOCK, &cclock);
++    clock_get_time(cclock, &mts);
++    mach_port_deallocate(mach_task_self(), cclock);
++    time->tv_sec = mts.tv_sec;
++    time->tv_nsec = mts.tv_nsec;
++#else
++    clock_gettime(CLOCK_MONOTONIC, time);
++#endif
++}
++#endif
++
++static
++inline timespec get_monotonic_time_diff(timespec start, timespec end)
++{
++    timespec temp;
++    if (end.tv_nsec - start.tv_nsec < 0)
++    {
++        temp.tv_sec = end.tv_sec - start.tv_sec - 1;
++        temp.tv_nsec = 1000000000 + end.tv_nsec - start.tv_nsec;
++    }
++    else
++    {
++        temp.tv_sec = end.tv_sec - start.tv_sec;
++        temp.tv_nsec = end.tv_nsec - start.tv_nsec;
++    }
++    return temp;
++}
++
++static
++inline double get_monotonic_time_diff_ms(timespec time1, timespec time2)
++{
++    timespec delta = get_monotonic_time_diff(time1, time2);
++    double milliseconds = delta.tv_sec * 1000 + (double)delta.tv_nsec / 1000000.0;
++
++    return milliseconds;
++}
++#endif // USE_AV_INTERRUPT_CALLBACK
++
+ static int get_number_of_cpus(void)
+ {
+ #if LIBAVFORMAT_BUILD < CALC_FFMPEG_VERSION(52, 111, 0)
+@@ -205,12 +354,36 @@ struct Image_FFMPEG
+ };
+ 
+ 
++#if USE_AV_INTERRUPT_CALLBACK
++struct AVInterruptCallbackMetadata
++{
++    timespec value;
++    unsigned int timeout_after_ms;
++    int timeout;
++};
++
++static
+ inline void _opencv_ffmpeg_free(void** ptr)
+ {
+     if(*ptr) free(*ptr);
+     *ptr = 0;
+ }
+ 
++static
++inline int _opencv_ffmpeg_interrupt_callback(void *ptr)
++{
++    AVInterruptCallbackMetadata* metadata = (AVInterruptCallbackMetadata*)ptr;
++    assert(metadata);
++
++    timespec now;
++    get_monotonic_time(&now);
++
++    metadata->timeout = get_monotonic_time_diff_ms(metadata->value, now) > metadata->timeout_after_ms;
++
++    return metadata->timeout ? -1 : 0;
++}
++#endif
++
+ 
+ struct CvCapture_FFMPEG
+ {
+@@ -264,6 +437,10 @@ struct CvCapture_FFMPEG
+ #if LIBAVFORMAT_BUILD >= CALC_FFMPEG_VERSION(52, 111, 0)
+     AVDictionary *dict;
+ #endif
++
++#if USE_AV_INTERRUPT_CALLBACK
++    AVInterruptCallbackMetadata interrupt_metadata;
++#endif
+ };
+ 
+ void CvCapture_FFMPEG::init()
+@@ -301,8 +478,10 @@ void CvCapture_FFMPEG::close()
+ 
+     if( picture )
+     {
+-        // FFmpeg and Libav added avcodec_free_frame in different versions.
+ #if LIBAVCODEC_BUILD >= (LIBAVCODEC_VERSION_MICRO >= 100 \
++    ? CALC_FFMPEG_VERSION(55, 45, 101) : CALC_FFMPEG_VERSION(55, 28, 1))
++        av_frame_free(&picture);
++#elif LIBAVCODEC_BUILD >= (LIBAVCODEC_VERSION_MICRO >= 100 \
+     ? CALC_FFMPEG_VERSION(54, 59, 100) : CALC_FFMPEG_VERSION(54, 28, 0))
+         avcodec_free_frame(&picture);
+ #else
+@@ -333,11 +512,15 @@ void CvCapture_FFMPEG::close()
+         ic = NULL;
+     }
+ 
++#if USE_AV_FRAME_GET_BUFFER
++    av_frame_unref(&rgb_picture);
++#else
+     if( rgb_picture.data[0] )
+     {
+         free( rgb_picture.data[0] );
+         rgb_picture.data[0] = 0;
+     }
++#endif
+ 
+     // free last packet if exist
+     if (packet.data) {
+@@ -556,6 +739,16 @@ bool CvCapture_FFMPEG::open( const char* _filename )
+ 
+     close();
+ 
++#if USE_AV_INTERRUPT_CALLBACK
++    /* interrupt callback */
++    interrupt_metadata.timeout_after_ms = LIBAVFORMAT_INTERRUPT_TIMEOUT_MS;
++    get_monotonic_time(&interrupt_metadata.value);
++
++    ic = avformat_alloc_context();
++    ic->interrupt_callback.callback = _opencv_ffmpeg_interrupt_callback;
++    ic->interrupt_callback.opaque = &interrupt_metadata;
++#endif
++
+ #if LIBAVFORMAT_BUILD >= CALC_FFMPEG_VERSION(52, 111, 0)
+     av_dict_set(&dict, "rtsp_transport", "tcp", 0);
+     int err = avformat_open_input(&ic, _filename, NULL, &dict);
+@@ -619,19 +812,18 @@ bool CvCapture_FFMPEG::open( const char* _filename )
+ 
+             video_stream = i;
+             video_st = ic->streams[i];
++#if LIBAVCODEC_BUILD >= (LIBAVCODEC_VERSION_MICRO >= 100 \
++    ? CALC_FFMPEG_VERSION(55, 45, 101) : CALC_FFMPEG_VERSION(55, 28, 1))
++            picture = av_frame_alloc();
++#else
+             picture = avcodec_alloc_frame();
+-
+-            rgb_picture.data[0] = (uint8_t*)malloc(
+-                    avpicture_get_size( PIX_FMT_BGR24,
+-                                        enc->width, enc->height ));
+-            avpicture_fill( (AVPicture*)&rgb_picture, rgb_picture.data[0],
+-                            PIX_FMT_BGR24, enc->width, enc->height );
++#endif
+ 
+             frame.width = enc->width;
+             frame.height = enc->height;
+             frame.cn = 3;
+-            frame.step = rgb_picture.linesize[0];
+-            frame.data = rgb_picture.data[0];
++            frame.step = 0;
++            frame.data = NULL;
+             break;
+         }
+     }
+@@ -668,6 +860,16 @@ bool CvCapture_FFMPEG::grabFrame()
+     // get the next frame
+     while (!valid)
+     {
++        av_free_packet (&packet);
++
++#if USE_AV_INTERRUPT_CALLBACK
++        if (interrupt_metadata.timeout)
++        {
++            valid = false;
++            break;
++        }
++#endif
++
+         int ret = av_read_frame(ic, &packet);
+         if (ret == AVERROR(EAGAIN)) continue;
+ 
+@@ -703,6 +905,11 @@ bool CvCapture_FFMPEG::grabFrame()
+                 picture_pts = packet.pts != AV_NOPTS_VALUE_ && packet.pts != 0 ? packet.pts : packet.dts;
+             frame_number++;
+             valid = true;
++
++#if USE_AV_INTERRUPT_CALLBACK
++            // update interrupt value
++            get_monotonic_time(&interrupt_metadata.value);
++#endif
+         }
+         else
+         {
+@@ -727,38 +934,59 @@ bool CvCapture_FFMPEG::retrieveFrame(int, unsigned char** data, int* step, int*
+     if( !video_st || !picture->data[0] )
+         return false;
+ 
+-    avpicture_fill((AVPicture*)&rgb_picture, rgb_picture.data[0], PIX_FMT_RGB24,
+-                   video_st->codec->width, video_st->codec->height);
+-
+     if( img_convert_ctx == NULL ||
+         frame.width != video_st->codec->width ||
+-        frame.height != video_st->codec->height )
++        frame.height != video_st->codec->height ||
++        frame.data == NULL )
+     {
+-        if( img_convert_ctx )
+-            sws_freeContext(img_convert_ctx);
+-
+-        frame.width = video_st->codec->width;
+-        frame.height = video_st->codec->height;
++        // Some sws_scale optimizations have some assumptions about alignment of data/step/width/height
++        // Also we use coded_width/height to workaround problem with legacy ffmpeg versions (like n0.8)
++        int buffer_width = video_st->codec->coded_width, buffer_height = video_st->codec->coded_height;
+ 
+         img_convert_ctx = sws_getCachedContext(
+-                NULL,
+-                video_st->codec->width, video_st->codec->height,
++                img_convert_ctx,
++                buffer_width, buffer_height,
+                 video_st->codec->pix_fmt,
+-                video_st->codec->width, video_st->codec->height,
+-                PIX_FMT_BGR24,
++                buffer_width, buffer_height,
++                AV_PIX_FMT_BGR24,
+                 SWS_BICUBIC,
+                 NULL, NULL, NULL
+                 );
+ 
+         if (img_convert_ctx == NULL)
+             return false;//CV_Error(0, "Cannot initialize the conversion context!");
++
++#if USE_AV_FRAME_GET_BUFFER
++        av_frame_unref(&rgb_picture);
++        rgb_picture.format = AV_PIX_FMT_BGR24;
++        rgb_picture.width = buffer_width;
++        rgb_picture.height = buffer_height;
++        if (0 != av_frame_get_buffer(&rgb_picture, 32))
++        {
++            CV_WARN("OutOfMemory");
++            return false;
++        }
++#else
++        int aligns[AV_NUM_DATA_POINTERS];
++        avcodec_align_dimensions2(video_st->codec, &buffer_width, &buffer_height, aligns);
++        rgb_picture.data[0] = (uint8_t*)realloc(rgb_picture.data[0],
++                avpicture_get_size( AV_PIX_FMT_BGR24,
++                                    buffer_width, buffer_height ));
++        avpicture_fill( (AVPicture*)&rgb_picture, rgb_picture.data[0],
++                        AV_PIX_FMT_BGR24, buffer_width, buffer_height );
++#endif
++        frame.width = video_st->codec->width;
++        frame.height = video_st->codec->height;
++        frame.cn = 3;
++        frame.data = rgb_picture.data[0];
++        frame.step = rgb_picture.linesize[0];
+     }
+ 
+     sws_scale(
+             img_convert_ctx,
+             picture->data,
+             picture->linesize,
+-            0, video_st->codec->height,
++            0, video_st->codec->coded_height,
+             rgb_picture.data,
+             rgb_picture.linesize
+             );
+@@ -1099,10 +1327,20 @@ static AVFrame * icv_alloc_picture_FFMPEG(int pix_fmt, int width, int height, bo
+     uint8_t * picture_buf;
+     int size;
+ 
++#if LIBAVCODEC_BUILD >= (LIBAVCODEC_VERSION_MICRO >= 100 \
++    ? CALC_FFMPEG_VERSION(55, 45, 101) : CALC_FFMPEG_VERSION(55, 28, 1))
++    picture = av_frame_alloc();
++#else
+     picture = avcodec_alloc_frame();
++#endif
+     if (!picture)
+         return NULL;
+-    size = avpicture_get_size( (PixelFormat) pix_fmt, width, height);
++
++    picture->format = pix_fmt;
++    picture->width = width;
++    picture->height = height;
++
++    size = avpicture_get_size( (AVPixelFormat) pix_fmt, width, height);
+     if(alloc){
+         picture_buf = (uint8_t *) malloc(size);
+         if (!picture_buf)
+@@ -1111,7 +1349,7 @@ static AVFrame * icv_alloc_picture_FFMPEG(int pix_fmt, int width, int height, bo
+             return NULL;
+         }
+         avpicture_fill((AVPicture *)picture, picture_buf,
+-                       (PixelFormat) pix_fmt, width, height);
++                       (AVPixelFormat) pix_fmt, width, height);
+     }
+     else {
+     }
+@@ -1211,7 +1449,7 @@ static AVStream *icv_add_video_stream_FFMPEG(AVFormatContext *oc,
+ #endif
+ 
+     c->gop_size = 12; /* emit one intra frame every twelve frames at most */
+-    c->pix_fmt = (PixelFormat) pixel_format;
++    c->pix_fmt = (AVPixelFormat) pixel_format;
+ 
+     if (c->codec_id == CV_CODEC(CODEC_ID_MPEG2VIDEO)) {
+         c->max_b_frames = 2;
+@@ -1372,12 +1610,12 @@ bool CvVideoWriter_FFMPEG::writeFrame( const unsigned char* data, int step, int
+ #endif
+ 
+     // check parameters
+-    if (input_pix_fmt == PIX_FMT_BGR24) {
++    if (input_pix_fmt == AV_PIX_FMT_BGR24) {
+         if (cn != 3) {
+             return false;
+         }
+     }
+-    else if (input_pix_fmt == PIX_FMT_GRAY8) {
++    else if (input_pix_fmt == AV_PIX_FMT_GRAY8) {
+         if (cn != 1) {
+             return false;
+         }
+@@ -1390,13 +1628,13 @@ bool CvVideoWriter_FFMPEG::writeFrame( const unsigned char* data, int step, int
+         assert( input_picture );
+         // let input_picture point to the raw data buffer of 'image'
+         avpicture_fill((AVPicture *)input_picture, (uint8_t *) data,
+-                       (PixelFormat)input_pix_fmt, width, height);
++                       (AVPixelFormat)input_pix_fmt, width, height);
+ 
+         if( !img_convert_ctx )
+         {
+             img_convert_ctx = sws_getContext(width,
+                                              height,
+-                                             (PixelFormat)input_pix_fmt,
++                                             (AVPixelFormat)input_pix_fmt,
+                                              c->width,
+                                              c->height,
+                                              c->pix_fmt,
+@@ -1414,7 +1652,7 @@ bool CvVideoWriter_FFMPEG::writeFrame( const unsigned char* data, int step, int
+     }
+     else{
+         avpicture_fill((AVPicture *)picture, (uint8_t *) data,
+-                       (PixelFormat)input_pix_fmt, width, height);
++                       (AVPixelFormat)input_pix_fmt, width, height);
+     }
+ 
+     picture->pts = frame_idx;
+@@ -1547,10 +1785,10 @@ bool CvVideoWriter_FFMPEG::open( const char * filename, int fourcc,
+ 
+     /* determine optimal pixel format */
+     if (is_color) {
+-        input_pix_fmt = PIX_FMT_BGR24;
++        input_pix_fmt = AV_PIX_FMT_BGR24;
+     }
+     else {
+-        input_pix_fmt = PIX_FMT_GRAY8;
++        input_pix_fmt = AV_PIX_FMT_GRAY8;
+     }
+ 
+     /* Lookup codec_id for given fourcc */
+@@ -1587,21 +1825,21 @@ bool CvVideoWriter_FFMPEG::open( const char * filename, int fourcc,
+         break;
+ #endif
+     case CV_CODEC(CODEC_ID_HUFFYUV):
+-        codec_pix_fmt = PIX_FMT_YUV422P;
++        codec_pix_fmt = AV_PIX_FMT_YUV422P;
+         break;
+     case CV_CODEC(CODEC_ID_MJPEG):
+     case CV_CODEC(CODEC_ID_LJPEG):
+-        codec_pix_fmt = PIX_FMT_YUVJ420P;
++        codec_pix_fmt = AV_PIX_FMT_YUVJ420P;
+         bitrate_scale = 3;
+         break;
+     case CV_CODEC(CODEC_ID_RAWVIDEO):
+-        codec_pix_fmt = input_pix_fmt == PIX_FMT_GRAY8 ||
+-                        input_pix_fmt == PIX_FMT_GRAY16LE ||
+-                        input_pix_fmt == PIX_FMT_GRAY16BE ? input_pix_fmt : PIX_FMT_YUV420P;
++        codec_pix_fmt = input_pix_fmt == AV_PIX_FMT_GRAY8 ||
++                        input_pix_fmt == AV_PIX_FMT_GRAY16LE ||
++                        input_pix_fmt == AV_PIX_FMT_GRAY16BE ? input_pix_fmt : AV_PIX_FMT_YUV420P;
+         break;
+     default:
+         // good for lossy formats, MPEG, etc.
+-        codec_pix_fmt = PIX_FMT_YUV420P;
++        codec_pix_fmt = AV_PIX_FMT_YUV420P;
+         break;
+     }
+ 
+@@ -1826,7 +2064,7 @@ struct OutputMediaStream_FFMPEG
+     void write(unsigned char* data, int size, int keyFrame);
+ 
+     // add a video output stream to the container
+-    static AVStream* addVideoStream(AVFormatContext *oc, CV_CODEC_ID codec_id, int w, int h, int bitrate, double fps, PixelFormat pixel_format);
++    static AVStream* addVideoStream(AVFormatContext *oc, CV_CODEC_ID codec_id, int w, int h, int bitrate, double fps, AVPixelFormat pixel_format);
+ 
+     AVOutputFormat* fmt_;
+     AVFormatContext* oc_;
+@@ -1873,7 +2111,7 @@ void OutputMediaStream_FFMPEG::close()
+     }
+ }
+ 
+-AVStream* OutputMediaStream_FFMPEG::addVideoStream(AVFormatContext *oc, CV_CODEC_ID codec_id, int w, int h, int bitrate, double fps, PixelFormat pixel_format)
++AVStream* OutputMediaStream_FFMPEG::addVideoStream(AVFormatContext *oc, CV_CODEC_ID codec_id, int w, int h, int bitrate, double fps, AVPixelFormat pixel_format)
+ {
+     #if LIBAVFORMAT_BUILD >= CALC_FFMPEG_VERSION(53, 10, 0)
+         AVStream* st = avformat_new_stream(oc, 0);
+@@ -2011,7 +2249,7 @@ bool OutputMediaStream_FFMPEG::open(const char* fileName, int width, int height,
+     oc_->max_delay = (int)(0.7 * AV_TIME_BASE); // This reduces buffer underrun warnings with MPEG
+ 
+     // set a few optimal pixel formats for lossless codecs of interest..
+-    PixelFormat codec_pix_fmt = PIX_FMT_YUV420P;
++    AVPixelFormat codec_pix_fmt = AV_PIX_FMT_YUV420P;
+     int bitrate_scale = 64;
+ 
+     // TODO -- safe to ignore output audio stream?
+@@ -2150,6 +2388,10 @@ struct InputMediaStream_FFMPEG
+     AVFormatContext* ctx_;
+     int video_stream_id_;
+     AVPacket pkt_;
++
++#if USE_AV_INTERRUPT_CALLBACK
++    AVInterruptCallbackMetadata interrupt_metadata;
++#endif
+ };
+ 
+ bool InputMediaStream_FFMPEG::open(const char* fileName, int* codec, int* chroma_format, int* width, int* height)
+@@ -2160,6 +2402,16 @@ bool InputMediaStream_FFMPEG::open(const char* fileName, int* codec, int* chroma
+     video_stream_id_ = -1;
+     memset(&pkt_, 0, sizeof(AVPacket));
+ 
++#if USE_AV_INTERRUPT_CALLBACK
++    /* interrupt callback */
++    interrupt_metadata.timeout_after_ms = LIBAVFORMAT_INTERRUPT_TIMEOUT_MS;
++    get_monotonic_time(&interrupt_metadata.value);
++
++    ctx_ = avformat_alloc_context();
++    ctx_->interrupt_callback.callback = _opencv_ffmpeg_interrupt_callback;
++    ctx_->interrupt_callback.opaque = &interrupt_metadata;
++#endif
++
+     #if LIBAVFORMAT_BUILD >= CALC_FFMPEG_VERSION(53, 13, 0)
+         avformat_network_init();
+     #endif
+@@ -2220,15 +2472,15 @@ bool InputMediaStream_FFMPEG::open(const char* fileName, int* codec, int* chroma
+ 
+             switch (enc->pix_fmt)
+             {
+-            case PIX_FMT_YUV420P:
++            case AV_PIX_FMT_YUV420P:
+                 *chroma_format = ::VideoChromaFormat_YUV420;
+                 break;
+ 
+-            case PIX_FMT_YUV422P:
++            case AV_PIX_FMT_YUV422P:
+                 *chroma_format = ::VideoChromaFormat_YUV422;
+                 break;
+ 
+-            case PIX_FMT_YUV444P:
++            case AV_PIX_FMT_YUV444P:
+                 *chroma_format = ::VideoChromaFormat_YUV444;
+                 break;
+ 
+@@ -2276,11 +2528,23 @@ bool InputMediaStream_FFMPEG::read(unsigned char** data, int* size, int* endOfFi
+     // get the next frame
+     for (;;)
+     {
++#if USE_AV_INTERRUPT_CALLBACK
++        if(interrupt_metadata.timeout)
++        {
++            break;
++        }
++#endif
++
+         int ret = av_read_frame(ctx_, &pkt_);
+ 
+         if (ret == AVERROR(EAGAIN))
+             continue;
+ 
++#if USE_AV_INTERRUPT_CALLBACK
++        // update interrupt value
++        get_monotonic_time(&interrupt_metadata.value);
++#endif
++
+         if (ret < 0)
+         {
+             if (ret == (int)AVERROR_EOF)
diff --git a/package/opencv/0002-superres-Fix-return-type-value-VideoFrameSource_GPU.patch b/package/opencv/0002-superres-Fix-return-type-value-VideoFrameSource_GPU.patch
deleted file mode 100644
index d71235d..0000000
--- a/package/opencv/0002-superres-Fix-return-type-value-VideoFrameSource_GPU.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-superres: Fix return value VideoFrameSource_GPU
-
-Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
-
-From 2e393ab83362743ba1825ad4b31d4a2925c606b4 Mon Sep 17 00:00:00 2001
-From: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
-Date: Mon, 27 Oct 2014 13:39:35 +0000
-Subject: [PATCH] superres: Fix return value VideoFrameSource_GPU
-
-superres module fails to compile with the following error messages:
-
-[100%] Building CXX object modules/superres/CMakeFiles/opencv_superres.dir/src/super_resolution.cpp.o
-/opencv-2.4.10/modules/superres/src/frame_source.cpp: In function 'cv::Ptr<cv::superres::FrameSource> cv::superres::createFrameSource_Video_GPU(const string&)':
-/opencv-2.4.10/modules/superres/src/frame_source.cpp:263:16: error: expected type-specifier before 'VideoFrameSource'
-/opencv-2.4.10/modules/superres/src/frame_source.cpp:263:16: error: could not convert '(int*)operator new(4ul)' from 'int*' to 'cv::Ptr<cv::superres::FrameSource>'
-/opencv-2.4.10/modules/superres/src/frame_source.cpp:263:16: error: expected ';' before 'VideoFrameSource'
-/opencv-2.4.10/modules/superres/src/frame_source.cpp:263:41: error: 'VideoFrameSource' was not declared in this scope
-/opencv-2.4.10/modules/superres/src/frame_source.cpp:264:1: error: control reaches end of non-void function [-Werror=return-type]
-cc1plus: some warnings being treated as errors
-make[3]: *** [modules/superres/CMakeFiles/opencv_superres.dir/src/frame_source.cpp.o] Error 1
-make[3]: *** Waiting for unfinished jobs....
-
-This is caused because the return value of the createFrameSource_Video_GPU function should be a VideoFrameSource_GPU object.
----
- modules/superres/src/frame_source.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/modules/superres/src/frame_source.cpp b/modules/superres/src/frame_source.cpp
-index 5f59a98..c5b2e76 100644
---- a/modules/superres/src/frame_source.cpp
-+++ b/modules/superres/src/frame_source.cpp
-@@ -260,7 +260,7 @@ namespace
- 
- Ptr<FrameSource> cv::superres::createFrameSource_Video_GPU(const string& fileName)
- {
--    return new VideoFrameSource(fileName);
-+    return new VideoFrameSource_GPU(fileName);
- }
- 
- #endif // HAVE_OPENCV_GPU
diff --git a/package/opencv/0003-cmake-OpenCVGenPkgconfig.cmake-rework-opencv.pc-gene.patch b/package/opencv/0003-cmake-OpenCVGenPkgconfig.cmake-rework-opencv.pc-gene.patch
deleted file mode 100644
index 768f08d..0000000
--- a/package/opencv/0003-cmake-OpenCVGenPkgconfig.cmake-rework-opencv.pc-gene.patch
+++ /dev/null
@@ -1,156 +0,0 @@
-From eceada586bbf18fc267e437522ec4f1f23ddc656 Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Fri, 3 Oct 2014 00:32:40 +0200
-Subject: [PATCH] cmake/OpenCVGenPkgconfig.cmake: rework opencv.pc generation
-
-Using absolute path to locate the components in the "Libs:" field of the
-*.pc can badly break cross-compilation, especially when building
-statically linked objects.
-
-Indeed, pkg-config automatically replaces the '-I...' and '-L...' paths
-when the PKG_CONFIG_SYSROOT_DIR and PKG_CONFIG_LIBDIR environment
-variables are set [1]. This feature is very helpful and common in
-cross-compilation framework like Buildroot [2,3].
-
-When there are absolute paths in the *.pc files, pkg-config won't be
-able to do the path substitions for these paths when the afromentioned
-environment variables are set.
-In such case, since the prefix is the target one, not the sysroot one,
-these libraries' abolute paths will point to:
-- in the best case: a non-existing file (i.e. these files do not exists
-  on the host system;
-- at worst: the host system's libraries. This will make the linking
-  failed because these host system's libraries will most likely not be
-  build for the target architecture [4].
-
-So, this patch replace the components' absolute paths by the form:
-  -L<libdir> -l<libname>
-
-This way, the linker will be able to resolve each dependency path,
-whatever the kind of objects/build (shared object or static build) it
-is dealing with.
-
-Note that for static link, the library order does matter [5]. The order
-of the opencv components has been carefully chosen to comply with this
-requirement.
-
-Fixes #3931
-
-[1] http://linux.die.net/man/1/pkg-config
-[2] http://buildroot.org/
-[3] http://git.buildroot.net/buildroot/tree/package/pkgconf/pkg-config.in
-[4] http://autobuild.buildroot.net/results/e8a/e8a859276db34aff87ef181b0cce98916b0afc90/build-end.log
-[5] http://stackoverflow.com/questions/45135/linker-order-gcc
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
-
----
-Note: this patch properly applies on top of the master branch, though it
-      has been written on top of the 2.4 branch.
----
- cmake/OpenCVGenPkgconfig.cmake | 64 +++++++++++++++++++++++++++---------------
- 1 file changed, 42 insertions(+), 22 deletions(-)
-
-diff --git a/cmake/OpenCVGenPkgconfig.cmake b/cmake/OpenCVGenPkgconfig.cmake
-index fa57db9..183c56d 100644
---- a/cmake/OpenCVGenPkgconfig.cmake
-+++ b/cmake/OpenCVGenPkgconfig.cmake
-@@ -8,10 +8,6 @@
- #
- # ${BIN_DIR}/unix-install/opencv.pc -> For use *with* "make install"
- # -------------------------------------------------------------------------------------------
--set(prefix      "${CMAKE_INSTALL_PREFIX}")
--set(exec_prefix "\${prefix}")
--set(libdir      "") #TODO: need link paths for OpenCV_EXTRA_COMPONENTS
--set(includedir  "\${prefix}/${OPENCV_INCLUDE_INSTALL_PATH}")
- 
- if(CMAKE_BUILD_TYPE MATCHES "Release")
-   set(ocv_optkind OPT)
-@@ -35,42 +31,66 @@ ocv_list_reverse(OpenCV_LIB_COMPONENTS)
- ocv_list_reverse(OpenCV_EXTRA_COMPONENTS)
- 
- #build the list of components
--set(OpenCV_LIB_COMPONENTS_ "")
--foreach(CVLib ${OpenCV_LIB_COMPONENTS})
--  get_target_property(libpath ${CVLib} LOCATION_${CMAKE_BUILD_TYPE})
--  get_filename_component(libname "${libpath}" NAME)
- 
--  if(INSTALL_TO_MANGLED_PATHS)
--    set(libname "${libname}.${OPENCV_VERSION}")
--  endif()
-+# Note:
-+#   when linking against static libraries, if libfoo depends on libbar, then
-+#   libfoo must come first in the linker flags.
-+
-+# world is a special target whose library should come first, especially for
-+# static link.
-+if(OpenCV_LIB_COMPONENTS MATCHES "opencv_world")
-+  list(REMOVE_ITEM OpenCV_LIB_COMPONENTS "opencv_world")
-+  list(INSERT OpenCV_LIB_COMPONENTS 0 "opencv_world")
-+endif()
-+
-+set(OpenCV_LIB_COMPONENTS_)
-+foreach(CVLib ${OpenCV_LIB_COMPONENTS})
- 
--  #need better solution....
--  if(libpath MATCHES "3rdparty")
--    set(installDir "share/OpenCV/3rdparty/${OPENCV_LIB_INSTALL_PATH}")
-+  get_target_property(libloc ${CVLib} LOCATION_${CMAKE_BUILD_TYPE})
-+  if(libloc MATCHES "3rdparty")
-+    set(libpath "\${exec_prefix}/share/OpenCV/3rdparty/${OPENCV_LIB_INSTALL_PATH}")
-   else()
--    set(installDir "${OPENCV_LIB_INSTALL_PATH}")
-+    set(libpath "\${exec_prefix}/${OPENCV_LIB_INSTALL_PATH}")
-   endif()
-+  list(APPEND OpenCV_LIB_COMPONENTS_ "-L${libpath}")
-+
-+  get_filename_component(libname ${CVLib} NAME_WE)
-+  string(REGEX REPLACE "^lib" "" libname "${libname}")
-+  list(APPEND OpenCV_LIB_COMPONENTS_ "-l${libname}")
- 
--  set(OpenCV_LIB_COMPONENTS_ "${OpenCV_LIB_COMPONENTS_} \${exec_prefix}/${installDir}/${libname}")
- endforeach()
- 
- # add extra dependencies required for OpenCV
--set(OpenCV_LIB_COMPONENTS ${OpenCV_LIB_COMPONENTS_})
- if(OpenCV_EXTRA_COMPONENTS)
-   foreach(extra_component ${OpenCV_EXTRA_COMPONENTS})
- 
--    if(extra_component MATCHES "^-[lL]" OR extra_component MATCHES "[\\/]")
--      set(maybe_l_prefix "")
-+    if(extra_component MATCHES "^-[lL]")
-+      set(libprefix "")
-+      set(libname "${extra_component}")
-+    elseif(extra_component MATCHES "[\\/]")
-+      get_filename_component(libdir "${extra_component}" PATH)
-+      list(APPEND OpenCV_LIB_COMPONENTS_ "-L${libdir}")
-+      get_filename_component(libname "${extra_component}" NAME_WE)
-+      string(REGEX REPLACE "^lib" "" libname "${libname}")
-+      set(libprefix "-l")
-     else()
--      set(maybe_l_prefix "-l")
-+      set(libprefix "-l")
-+      set(libname "${extra_component}")
-     endif()
--
--    set(OpenCV_LIB_COMPONENTS "${OpenCV_LIB_COMPONENTS} ${maybe_l_prefix}${extra_component}")
-+    list(APPEND OpenCV_LIB_COMPONENTS_ "${libprefix}${libname}")
- 
-   endforeach()
- endif()
- 
-+list(REMOVE_DUPLICATES OpenCV_LIB_COMPONENTS_)
-+string(REPLACE ";" " " OpenCV_LIB_COMPONENTS "${OpenCV_LIB_COMPONENTS_}")
-+
- #generate the .pc file
-+set(prefix      "${CMAKE_INSTALL_PREFIX}")
-+set(exec_prefix "\${prefix}")
-+set(libdir      "\${exec_prefix}/${OPENCV_LIB_INSTALL_PATH}")
-+set(includedir  "\${prefix}/${OPENCV_INCLUDE_INSTALL_PATH}")
-+
- if(INSTALL_TO_MANGLED_PATHS)
-   set(OPENCV_PC_FILE_NAME "opencv-${OPENCV_VERSION}.pc")
- else()
--- 
-2.4.1
-
diff --git a/package/opencv/opencv.mk b/package/opencv/opencv.mk
index 21c0268..2ae95a0 100644
--- a/package/opencv/opencv.mk
+++ b/package/opencv/opencv.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-OPENCV_VERSION = 2.4.10
+OPENCV_VERSION = 2.4.12.3
 OPENCV_SITE = $(call github,itseez,opencv,$(OPENCV_VERSION))
 OPENCV_INSTALL_STAGING = YES
 OPENCV_LICENSE = BSD-3c
-- 
2.8.0.rc3

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [Buildroot] [PATCH v3 06/18] package/opencv3: bump version to 3.1.0
  2016-03-28 18:20 [Buildroot] [PATCH v3 00/18] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (4 preceding siblings ...)
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 05/18] package/opencv: bump version to 2.4.12.3 Bernd Kuhls
@ 2016-03-28 18:21 ` Bernd Kuhls
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 07/18] package/squeezelite: fix compilation with ffmpeg >= 2.9 Bernd Kuhls
                   ` (11 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: Bernd Kuhls @ 2016-03-28 18:21 UTC (permalink / raw)
  To: buildroot

Removed patches applied upstream. This version bump is needed to
provide support for ffmpeg 3.0:
https://github.com/Itseez/opencv/commit/278747ba458c9097aa72bf664c7a8df96d3a56fa

Use BR2_PACKAGE_FFMPEG_AVRESAMPLE by default because OpenCV can use it
after
https://github.com/Itseez/opencv/commit/2b2e3ee93c6788b892b084cc04d0ead5ab75c197

Before this patch:
--     FFMPEG:                      YES
--       codec:                     YES (ver 57.24.103)
--       format:                    YES (ver 57.25.100)
--       util:                      YES (ver 55.17.103)
--       swscale:                   YES (ver 4.0.100)
--       resample:                  NO

After this patch:
--     FFMPEG:                      YES
--       codec:                     YES (ver 57.24.103)
--       format:                    YES (ver 57.25.100)
--       util:                      YES (ver 55.17.103)
--       swscale:                   YES (ver 4.0.100)
--       resample:                  YES (ver 3.0.0)

Disabled new options:
WITH_MATLAB, WITH_VA, WITH_VA_INTEL, DOWNLOAD_EXTERNAL_TEST_DATA

Removed obsolete option BUILD_opencv_hal

Removed options WITH_OPENGL & WITH_OPENMP from the "Disabled features"
block because they have their own ifeq-block later on.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
v3: moved WITH_VA options (Samuel)
v2: reworked options (Samuel)

 ...pthread-based-parallel_for-with-gcc-4.4.3.patch |  62 ------
 ...002-fix-support-for-pthreads-parallel_for.patch | 212 ---------------------
 package/opencv3/Config.in                          |   1 +
 package/opencv3/opencv3.mk                         |  11 +-
 4 files changed, 7 insertions(+), 279 deletions(-)
 delete mode 100644 package/opencv3/0001-Fixed-compilation-of-pthread-based-parallel_for-with-gcc-4.4.3.patch
 delete mode 100644 package/opencv3/0002-fix-support-for-pthreads-parallel_for.patch

diff --git a/package/opencv3/0001-Fixed-compilation-of-pthread-based-parallel_for-with-gcc-4.4.3.patch b/package/opencv3/0001-Fixed-compilation-of-pthread-based-parallel_for-with-gcc-4.4.3.patch
deleted file mode 100644
index 2be8f33..0000000
--- a/package/opencv3/0001-Fixed-compilation-of-pthread-based-parallel_for-with-gcc-4.4.3.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-Backport from https://github.com/Itseez/opencv/commit/1f983ec39c97298b0c8ce409a1cc229ecf14e55c
-
-From 1f983ec39c97298b0c8ce409a1cc229ecf14e55c Mon Sep 17 00:00:00 2001
-From: Maksim Shabunin <maksim.shabunin@itseez.com>
-Date: Tue, 9 Jun 2015 13:59:48 +0300
-Subject: [PATCH] Fixed compilation of pthread-based parallel_for with gcc
- 4.4.3
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- modules/core/src/parallel.cpp | 12 +++++++-----
- 1 file changed, 7 insertions(+), 5 deletions(-)
-
-diff --git a/modules/core/src/parallel.cpp b/modules/core/src/parallel.cpp
-index b1e7567..0b593ee 100644
---- a/modules/core/src/parallel.cpp
-+++ b/modules/core/src/parallel.cpp
-@@ -132,8 +132,14 @@
- namespace cv
- {
-     ParallelLoopBody::~ParallelLoopBody() {}
-+#if defined HAVE_PTHREADS && HAVE_PTHREADS
-+    void parallel_for_pthreads(const cv::Range& range, const cv::ParallelLoopBody& body, double nstripes);
-+    size_t parallel_pthreads_get_threads_num();
-+    void parallel_pthreads_set_threads_num(int num);
-+#endif
- }
- 
-+
- namespace
- {
- #ifdef CV_PARALLEL_FRAMEWORK
-@@ -301,7 +307,7 @@ void cv::parallel_for_(const cv::Range& range, const cv::ParallelLoopBody& body,
-         }
- 
- #elif defined HAVE_PTHREADS
--        void parallel_for_pthreads(const Range& range, const ParallelLoopBody& body, double nstripes);
-+
-         parallel_for_pthreads(range, body, nstripes);
- 
- #else
-@@ -361,8 +367,6 @@ int cv::getNumThreads(void)
- 
- #elif defined HAVE_PTHREADS
- 
--        size_t parallel_pthreads_get_threads_num();
--
-         return parallel_pthreads_get_threads_num();
- 
- #else
-@@ -424,8 +428,6 @@ void cv::setNumThreads( int threads )
- 
- #elif defined HAVE_PTHREADS
- 
--    void parallel_pthreads_set_threads_num(int num);
--
-     parallel_pthreads_set_threads_num(threads);
- 
- #endif
--- 
-2.4.4
-
diff --git a/package/opencv3/0002-fix-support-for-pthreads-parallel_for.patch b/package/opencv3/0002-fix-support-for-pthreads-parallel_for.patch
deleted file mode 100644
index 6eeb270..0000000
--- a/package/opencv3/0002-fix-support-for-pthreads-parallel_for.patch
+++ /dev/null
@@ -1,212 +0,0 @@
-Backport from https://github.com/Itseez/opencv/commit/a482dcce464acbd5368fb93c6c3d52ba8401776a
-
-From a482dcce464acbd5368fb93c6c3d52ba8401776a Mon Sep 17 00:00:00 2001
-From: Alexander Alekhin <alexander.alekhin@itseez.com>
-Date: Thu, 11 Jun 2015 16:53:07 +0300
-Subject: [PATCH] fix support for pthreads parallel_for
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- CMakeLists.txt                         | 29 ++++++++++++++++++++++-------
- cmake/OpenCVFindLibsPerf.cmake         | 14 +++++++++-----
- cmake/templates/cvconfig.h.in          |  6 ++++++
- modules/core/src/parallel.cpp          | 13 ++++++++-----
- modules/core/src/parallel_pthreads.cpp |  2 +-
- modules/core/src/precomp.hpp           |  6 ------
- 6 files changed, 46 insertions(+), 24 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index d9a17b3..27d8470 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -188,7 +188,7 @@ OCV_OPTION(WITH_QUICKTIME      "Use QuickTime for Video I/O insted of QTKit" OFF
- OCV_OPTION(WITH_TBB            "Include Intel TBB support"                   OFF  IF (NOT IOS AND NOT WINRT) )
- OCV_OPTION(WITH_OPENMP         "Include OpenMP support"                      OFF)
- OCV_OPTION(WITH_CSTRIPES       "Include C= support"                          OFF  IF (WIN32 AND NOT WINRT)  )
--OCV_OPTION(WITH_PTHREADS_PF    "Use pthreads-based parallel_for"             OFF  IF (NOT WIN32) )
-+OCV_OPTION(WITH_PTHREADS_PF    "Use pthreads-based parallel_for"             ON   IF (NOT WIN32) )
- OCV_OPTION(WITH_TIFF           "Include TIFF support"                        ON   IF (NOT IOS) )
- OCV_OPTION(WITH_UNICAP         "Include Unicap support (GPL)"                OFF  IF (UNIX AND NOT APPLE AND NOT ANDROID) )
- OCV_OPTION(WITH_V4L            "Include Video 4 Linux support"               ON   IF (UNIX AND NOT ANDROID) )
-@@ -1026,6 +1026,27 @@ if(DEFINED WITH_GPHOTO2)
- endif(DEFINED WITH_GPHOTO2)
- 
- 
-+# Order is similar to CV_PARALLEL_FRAMEWORK in core/src/parallel.cpp
-+ocv_clear_vars(CV_PARALLEL_FRAMEWORK)
-+if(HAVE_TBB)
-+  set(CV_PARALLEL_FRAMEWORK "TBB (ver ${TBB_VERSION_MAJOR}.${TBB_VERSION_MINOR} interface ${TBB_INTERFACE_VERSION})")
-+elseif(HAVE_CSTRIPES)
-+  set(CV_PARALLEL_FRAMEWORK "C=")
-+elseif(HAVE_OPENMP)
-+  set(CV_PARALLEL_FRAMEWORK "OpenMP")
-+elseif(HAVE_GCD)
-+  set(CV_PARALLEL_FRAMEWORK "GCD")
-+elseif(WINRT OR HAVE_CONCURRENCY)
-+  set(CV_PARALLEL_FRAMEWORK "Concurrency")
-+elseif(HAVE_PTHREADS_PF)
-+  set(CV_PARALLEL_FRAMEWORK "pthreads")
-+else()
-+  set(CV_PARALLEL_FRAMEWORK "none")
-+endif()
-+status("")
-+status("  Parallel framework:" TRUE THEN "${CV_PARALLEL_FRAMEWORK}" ELSE NO)
-+
-+
- # ========================== Other third-party libraries ==========================
- status("")
- status("  Other third-party libraries:")
-@@ -1045,12 +1066,6 @@ status("    Use IPP Async:"  HAVE_IPP_A       THEN "YES" ELSE NO)
- endif(DEFINED WITH_IPP_A)
- 
- status("    Use Eigen:"      HAVE_EIGEN       THEN "YES (ver ${EIGEN_WORLD_VERSION}.${EIGEN_MAJOR_VERSION}.${EIGEN_MINOR_VERSION})" ELSE NO)
--status("    Use TBB:"        HAVE_TBB         THEN "YES (ver ${TBB_VERSION_MAJOR}.${TBB_VERSION_MINOR} interface ${TBB_INTERFACE_VERSION})" ELSE NO)
--status("    Use OpenMP:"     HAVE_OPENMP      THEN YES ELSE NO)
--status("    Use GCD"         HAVE_GCD         THEN YES ELSE NO)
--status("    Use Concurrency" HAVE_CONCURRENCY THEN YES ELSE NO)
--status("    Use C=:"         HAVE_CSTRIPES    THEN YES ELSE NO)
--status("    Use pthreads for parallel for:"   HAVE_PTHREADS_PF THEN YES ELSE NO)
- status("    Use Cuda:"       HAVE_CUDA        THEN "YES (ver ${CUDA_VERSION_STRING})" ELSE NO)
- status("    Use OpenCL:"     HAVE_OPENCL      THEN YES ELSE NO)
- 
-diff --git a/cmake/OpenCVFindLibsPerf.cmake b/cmake/OpenCVFindLibsPerf.cmake
-index bda5d79..d1bc541 100644
---- a/cmake/OpenCVFindLibsPerf.cmake
-+++ b/cmake/OpenCVFindLibsPerf.cmake
-@@ -120,12 +120,16 @@ if(WITH_OPENMP)
-   set(HAVE_OPENMP "${OPENMP_FOUND}")
- endif()
- 
--if(UNIX OR ANDROID)
--if(NOT APPLE AND NOT HAVE_TBB AND NOT HAVE_OPENMP)
--  set(HAVE_PTHREADS_PF 1)
--else()
--  set(HAVE_PTHREADS_PF 0)
-+if(NOT MSVC AND NOT DEFINED HAVE_PTHREADS)
-+  set(_fname "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/pthread_test.cpp")
-+  file(WRITE "${_fname}" "#include <pthread.h>\nint main() { (void)pthread_self(); return 0; }\n")
-+  try_compile(HAVE_PTHREADS "${CMAKE_BINARY_DIR}" "${_fname}")
-+  file(REMOVE "${_fname}")
- endif()
-+
-+ocv_clear_vars(HAVE_PTHREADS_PF)
-+if(WITH_PTHREADS_PF)
-+  set(HAVE_PTHREADS_PF ${HAVE_PTHREADS})
- else()
-   set(HAVE_PTHREADS_PF 0)
- endif()
-diff --git a/cmake/templates/cvconfig.h.in b/cmake/templates/cvconfig.h.in
-index 4a1d1c6..3330774 100644
---- a/cmake/templates/cvconfig.h.in
-+++ b/cmake/templates/cvconfig.h.in
-@@ -139,6 +139,12 @@
- /* PNG codec */
- #cmakedefine HAVE_PNG
- 
-+/* Posix threads (pthreads) */
-+#cmakedefine HAVE_PTHREADS
-+
-+/* parallel_for with pthreads */
-+#cmakedefine HAVE_PTHREADS_PF
-+
- /* Qt support */
- #cmakedefine HAVE_QT
- 
-diff --git a/modules/core/src/parallel.cpp b/modules/core/src/parallel.cpp
-index 0b593ee..caa8129 100644
---- a/modules/core/src/parallel.cpp
-+++ b/modules/core/src/parallel.cpp
-@@ -80,6 +80,7 @@
-    4. HAVE_GCD         - system wide, used automatically        (APPLE only)
-    5. WINRT            - system wide, used automatically        (Windows RT only)
-    6. HAVE_CONCURRENCY - part of runtime, used automatically    (Windows only - MSVS 10, MSVS 11)
-+   7. HAVE_PTHREADS_PF - pthreads if available
- */
- 
- #if defined HAVE_TBB
-@@ -125,14 +126,14 @@
- #  define CV_PARALLEL_FRAMEWORK "winrt-concurrency"
- #elif defined HAVE_CONCURRENCY
- #  define CV_PARALLEL_FRAMEWORK "ms-concurrency"
--#elif defined HAVE_PTHREADS
-+#elif defined HAVE_PTHREADS_PF
- #  define CV_PARALLEL_FRAMEWORK "pthreads"
- #endif
- 
- namespace cv
- {
-     ParallelLoopBody::~ParallelLoopBody() {}
--#if defined HAVE_PTHREADS && HAVE_PTHREADS
-+#ifdef HAVE_PTHREADS_PF
-     void parallel_for_pthreads(const cv::Range& range, const cv::ParallelLoopBody& body, double nstripes);
-     size_t parallel_pthreads_get_threads_num();
-     void parallel_pthreads_set_threads_num(int num);
-@@ -306,7 +307,7 @@ void cv::parallel_for_(const cv::Range& range, const cv::ParallelLoopBody& body,
-             Concurrency::CurrentScheduler::Detach();
-         }
- 
--#elif defined HAVE_PTHREADS
-+#elif defined HAVE_PTHREADS_PF
- 
-         parallel_for_pthreads(range, body, nstripes);
- 
-@@ -365,7 +366,7 @@ int cv::getNumThreads(void)
-         ? Concurrency::CurrentScheduler::Get()->GetNumberOfVirtualProcessors()
-         : pplScheduler->GetNumberOfVirtualProcessors());
- 
--#elif defined HAVE_PTHREADS
-+#elif defined HAVE_PTHREADS_PF
- 
-         return parallel_pthreads_get_threads_num();
- 
-@@ -426,7 +427,7 @@ void cv::setNumThreads( int threads )
-                        Concurrency::MaxConcurrency, threads-1));
-     }
- 
--#elif defined HAVE_PTHREADS
-+#elif defined HAVE_PTHREADS_PF
- 
-     parallel_pthreads_set_threads_num(threads);
- 
-@@ -452,6 +453,8 @@ int cv::getThreadNum(void)
-     return 0;
- #elif defined HAVE_CONCURRENCY
-     return std::max(0, (int)Concurrency::Context::VirtualProcessorId()); // zero for master thread, unique number for others but not necessary 1,2,3,...
-+#elif defined HAVE_PTHREADS_PF
-+    return (int)(size_t)(void*)pthread_self(); // no zero-based indexing
- #else
-     return 0;
- #endif
-diff --git a/modules/core/src/parallel_pthreads.cpp b/modules/core/src/parallel_pthreads.cpp
-index 8c34959..091ea2d 100644
---- a/modules/core/src/parallel_pthreads.cpp
-+++ b/modules/core/src/parallel_pthreads.cpp
-@@ -42,7 +42,7 @@
- 
- #include "precomp.hpp"
- 
--#if defined HAVE_PTHREADS && HAVE_PTHREADS
-+#ifdef HAVE_PTHREADS_PF
- 
- #include <algorithm>
- #include <pthread.h>
-diff --git a/modules/core/src/precomp.hpp b/modules/core/src/precomp.hpp
-index d463126..88b60e4 100644
---- a/modules/core/src/precomp.hpp
-+++ b/modules/core/src/precomp.hpp
-@@ -292,12 +292,6 @@ TLSData<CoreTLSData>& getCoreTlsData();
- #define CL_RUNTIME_EXPORT
- #endif
- 
--#ifndef HAVE_PTHREADS
--#if !(defined WIN32 || defined _WIN32 || defined WINCE || defined HAVE_WINRT)
--#define HAVE_PTHREADS 1
--#endif
--#endif
--
- extern bool __termination; // skip some cleanups, because process is terminating
-                            // (for example, if ExitProcess() was already called)
- 
--- 
-2.4.4
-
diff --git a/package/opencv3/Config.in b/package/opencv3/Config.in
index 3a185d6..31fd98a 100644
--- a/package/opencv3/Config.in
+++ b/package/opencv3/Config.in
@@ -243,6 +243,7 @@ config BR2_PACKAGE_OPENCV3_WITH_FFMPEG
 	bool "ffmpeg support"
 	select BR2_PACKAGE_BZIP2
 	select BR2_PACKAGE_FFMPEG
+	select BR2_PACKAGE_FFMPEG_AVRESAMPLE
 	select BR2_PACKAGE_FFMPEG_SWSCALE
 	depends on !BR2_nios2 # ffmpeg
 	help
diff --git a/package/opencv3/opencv3.mk b/package/opencv3/opencv3.mk
index 3ce78b5..91cdfe6 100644
--- a/package/opencv3/opencv3.mk
+++ b/package/opencv3/opencv3.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-OPENCV3_VERSION = 3.0.0
+OPENCV3_VERSION = 3.1.0
 OPENCV3_SITE = $(call github,itseez,opencv,$(OPENCV3_VERSION))
 OPENCV3_INSTALL_STAGING = YES
 OPENCV3_LICENSE = BSD-3c
@@ -15,7 +15,8 @@ OPENCV3_CONF_OPTS += \
 	-DBUILD_DOCS=OFF \
 	-DBUILD_PERF_TESTS=$(if $(BR2_PACKAGE_OPENCV3_BUILD_PERF_TESTS),ON,OFF) \
 	-DBUILD_TESTS=$(if $(BR2_PACKAGE_OPENCV3_BUILD_TESTS),ON,OFF) \
-	-DBUILD_WITH_DEBUG_INFO=OFF
+	-DBUILD_WITH_DEBUG_INFO=OFF \
+	-DDOWNLOAD_EXTERNAL_TEST_DATA=OFF
 
 ifeq ($(BR2_PACKAGE_OPENCV3_BUILD_TESTS)$(BR2_PACKAGE_OPENCV3_BUILD_PERF_TESTS),)
 OPENCV3_CONF_OPTS += -DINSTALL_TEST=OFF
@@ -70,7 +71,6 @@ OPENCV3_CONF_OPTS += \
 	-DBUILD_opencv_core=ON \
 	-DBUILD_opencv_features2d=$(if $(BR2_PACKAGE_OPENCV3_LIB_FEATURES2D),ON,OFF) \
 	-DBUILD_opencv_flann=$(if $(BR2_PACKAGE_OPENCV3_LIB_FLANN),ON,OFF) \
-	-DBUILD_opencv_hal=ON \
 	-DBUILD_opencv_highgui=$(if $(BR2_PACKAGE_OPENCV3_LIB_HIGHGUI),ON,OFF) \
 	-DBUILD_opencv_imgcodecs=$(if $(BR2_PACKAGE_OPENCV3_LIB_IMGCODECS),ON,OFF) \
 	-DBUILD_opencv_imgproc=$(if $(BR2_PACKAGE_OPENCV3_LIB_IMGPROC),ON,OFF) \
@@ -201,14 +201,15 @@ OPENCV3_CONF_OPTS += \
 	-DWITH_EIGEN=OFF \
 	-DWITH_GDAL=OFF \
 	-DWITH_GPHOTO2=OFF \
+	-DWITH_MATLAB=OFF \
 	-DWITH_OPENCL=OFF \
 	-DWITH_OPENCL_SVM=OFF \
 	-DWITH_OPENEXR=OFF \
-	-DWITH_OPENGL=OFF \
-	-DWITH_OPENMP=OFF \
 	-DWITH_OPENNI2=OFF \
 	-DWITH_OPENNI=OFF \
 	-DWITH_UNICAP=OFF \
+	-DWITH_VA=OFF \
+	-DWITH_VA_INTEL=OFF \
 	-DWITH_VTK=OFF \
 	-DWITH_WEBP=OFF \
 	-DWITH_XINE=OFF
-- 
2.8.0.rc3

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [Buildroot] [PATCH v3 07/18] package/squeezelite: fix compilation with ffmpeg >= 2.9
  2016-03-28 18:20 [Buildroot] [PATCH v3 00/18] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (5 preceding siblings ...)
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 06/18] package/opencv3: bump version to 3.1.0 Bernd Kuhls
@ 2016-03-28 18:21 ` Bernd Kuhls
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 08/18] package/freerdp: bump version Bernd Kuhls
                   ` (10 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: Bernd Kuhls @ 2016-03-28 18:21 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
 package/squeezelite/0003-ffmpeg_2_9.patch | 57 +++++++++++++++++++++++++++++++
 1 file changed, 57 insertions(+)
 create mode 100644 package/squeezelite/0003-ffmpeg_2_9.patch

diff --git a/package/squeezelite/0003-ffmpeg_2_9.patch b/package/squeezelite/0003-ffmpeg_2_9.patch
new file mode 100644
index 0000000..f69b829
--- /dev/null
+++ b/package/squeezelite/0003-ffmpeg_2_9.patch
@@ -0,0 +1,57 @@
+Fix compilation with ffmpeg >= 2.9
+
+Downloaded from Debian:
+https://sources.debian.net/src/squeezelite/1.8-3/debian/patches/ffmpeg_2.9.patch/
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+
+
+Description: Replace deprecated FFmpeg API
+Author: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
+Last-Update: <2015-11-02>
+
+--- squeezelite-1.8.orig/ffmpeg.c
++++ squeezelite-1.8/ffmpeg.c
+@@ -52,8 +52,8 @@ struct ff_s {
+ 	unsigned (* avcodec_version)(void);
+ 	AVCodec * (* avcodec_find_decoder)(int);
+ 	int attribute_align_arg (* avcodec_open2)(AVCodecContext *, const AVCodec *, AVDictionary **);
+-	AVFrame * (* avcodec_alloc_frame)(void);
+-	void (* avcodec_free_frame)(AVFrame **);
++	AVFrame * (* av_frame_alloc)(void);
++	void (* av_frame_free)(AVFrame **);
+ 	int attribute_align_arg (* avcodec_decode_audio4)(AVCodecContext *, AVFrame *, int *, const AVPacket *);
+ 	// ffmpeg symbols to be dynamically loaded from libavformat
+ 	unsigned (* avformat_version)(void);
+@@ -324,7 +324,7 @@ static decode_state ff_decode(void) {
+ 
+ 		AVCODEC(ff, open2, ff->codecC, codec, NULL);
+ 
+-		ff->frame = AVCODEC(ff, alloc_frame);
++		ff->frame = AV(ff, frame_alloc);
+ 
+ 		ff->avpkt = AV(ff, malloc, sizeof(AVPacket));
+ 		if (ff->avpkt == NULL) {
+@@ -520,9 +520,9 @@ static void _free_ff_data(void) {
+ 	if (ff->frame) {
+ 		// ffmpeg version dependant free function
+ #if !LINKALL
+-		ff->avcodec_free_frame ? AVCODEC(ff, free_frame, &ff->frame) : AV(ff, freep, &ff->frame);
++		ff->av_frame_free ? AV(ff, frame_free, &ff->frame) : AV(ff, freep, &ff->frame);
+ #elif LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(54,28,0)
+-		AVCODEC(ff, free_frame, &ff->frame);
++		AV(ff, frame_free, &ff->frame);
+ #else
+ 		AV(ff, freep, &ff->frame);
+ #endif
+@@ -607,8 +607,8 @@ static bool load_ff() {
+ 	ff->avcodec_version = dlsym(handle_codec, "avcodec_version");
+ 	ff->avcodec_find_decoder = dlsym(handle_codec, "avcodec_find_decoder");
+ 	ff->avcodec_open2 = dlsym(handle_codec, "avcodec_open2");
+-	ff->avcodec_alloc_frame = dlsym(handle_codec, "avcodec_alloc_frame");
+-	ff->avcodec_free_frame = dlsym(handle_codec, "avcodec_free_frame");
++	ff->av_frame_alloc = dlsym(handle_codec, "av_frame_alloc");
++	ff->av_frame_free = dlsym(handle_codec, "av_frame_free");
+ 	ff->avcodec_decode_audio4 = dlsym(handle_codec, "avcodec_decode_audio4");
+ 	ff->av_init_packet = dlsym(handle_codec, "av_init_packet");
+ 	ff->av_free_packet = dlsym(handle_codec, "av_free_packet");
-- 
2.8.0.rc3

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [Buildroot] [PATCH v3 08/18] package/freerdp: bump version
  2016-03-28 18:20 [Buildroot] [PATCH v3 00/18] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (6 preceding siblings ...)
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 07/18] package/squeezelite: fix compilation with ffmpeg >= 2.9 Bernd Kuhls
@ 2016-03-28 18:21 ` Bernd Kuhls
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 09/18] package/vlc: mark as broken due to incompatibility with ffmpeg 3.0 Bernd Kuhls
                   ` (9 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: Bernd Kuhls @ 2016-03-28 18:21 UTC (permalink / raw)
  To: buildroot

This version bump is needed to provide support for ffmpeg 3.0, added
Sep, 17th, 2015: https://github.com/FreeRDP/FreeRDP/pull/2895

Please note the we can not bump to a newer version of freerdp atm
because the next commit in the master branch

https://github.com/FreeRDP/FreeRDP/commit/8206ae440f905b123cb92c7abf8c861070ea8cd8

bumped the version number to 2.x which will provide freerdp2.pc instead
of freerdp.pc, this is incompatible with vlc atm:

http://git.videolan.org/?p=vlc/vlc-2.2.git;a=blob;f=configure.ac;h=bb5d1dde2ef9828b0ba92c62dbd1143f984f45f2;hb=HEAD#l1890
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
 package/freerdp/freerdp.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/package/freerdp/freerdp.mk b/package/freerdp/freerdp.mk
index e8e5be4..a795ed3 100644
--- a/package/freerdp/freerdp.mk
+++ b/package/freerdp/freerdp.mk
@@ -5,7 +5,7 @@
 ################################################################################
 
 # Changeset on the master branch
-FREERDP_VERSION = 17834af7bb378f85a3b3cc4dcadaa5125a337e16
+FREERDP_VERSION = 2ac195e8eb2c5fbbe8f2abeac92b0c8effef0e34
 FREERDP_SITE = $(call github,FreeRDP,FreeRDP,$(FREERDP_VERSION))
 FREERDP_DEPENDENCIES = libglib2 openssl zlib
 FREERDP_LICENSE = Apache-2.0
-- 
2.8.0.rc3

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [Buildroot] [PATCH v3 09/18] package/vlc: mark as broken due to incompatibility with ffmpeg 3.0
  2016-03-28 18:20 [Buildroot] [PATCH v3 00/18] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (7 preceding siblings ...)
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 08/18] package/freerdp: bump version Bernd Kuhls
@ 2016-03-28 18:21 ` Bernd Kuhls
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 10/18] package/ffmpeg: bump to version 3.0 Bernd Kuhls
                   ` (8 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: Bernd Kuhls @ 2016-03-28 18:21 UTC (permalink / raw)
  To: buildroot

Upcoming vlc 3.0 will have support for ffmpeg 3.0 again, backporting
the changes to 2.2.x is not easily possible:
https://trac.macports.org/ticket/50697#comment:3

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
 package/vlc/Config.in | 1 +
 1 file changed, 1 insertion(+)

diff --git a/package/vlc/Config.in b/package/vlc/Config.in
index 166e7d2..d25305b 100644
--- a/package/vlc/Config.in
+++ b/package/vlc/Config.in
@@ -11,6 +11,7 @@ config BR2_PACKAGE_VLC
 	depends on BR2_USE_WCHAR
 	depends on BR2_TOOLCHAIN_HAS_THREADS
 	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7
+	depends on BROKEN # ffmpeg 3.0
 	select BR2_PACKAGE_LIBVORBIS if BR2_PACKAGE_OPUS
 	select BR2_PACKAGE_VLC_OPENCV_BACKEND if BR2_PACKAGE_OPENCV
 	select BR2_PACKAGE_VLC_OPENCV3_BACKEND if BR2_PACKAGE_OPENCV3
-- 
2.8.0.rc3

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [Buildroot] [PATCH v3 10/18] package/ffmpeg: bump to version 3.0
  2016-03-28 18:20 [Buildroot] [PATCH v3 00/18] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (8 preceding siblings ...)
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 09/18] package/vlc: mark as broken due to incompatibility with ffmpeg 3.0 Bernd Kuhls
@ 2016-03-28 18:21 ` Bernd Kuhls
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 11/18] package/ffmpeg: cosmetic change for the mips fpu option Bernd Kuhls
                   ` (7 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: Bernd Kuhls @ 2016-03-28 18:21 UTC (permalink / raw)
  To: buildroot

From: Vicente Olivert Riera <Vincent.Riera@imgtec.com>

- Remove non-existen configure options:
  - --disable-mips32r2
  - --disable-libvo-aacenc

- Amend renamed configure options:
  - --disable-mipsdspr1 has been renamed to --disable-mipsdsp

Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
 package/ffmpeg/ffmpeg.hash |  4 ++--
 package/ffmpeg/ffmpeg.mk   | 13 ++-----------
 2 files changed, 4 insertions(+), 13 deletions(-)

diff --git a/package/ffmpeg/ffmpeg.hash b/package/ffmpeg/ffmpeg.hash
index 8643bff..3456883 100644
--- a/package/ffmpeg/ffmpeg.hash
+++ b/package/ffmpeg/ffmpeg.hash
@@ -1,2 +1,2 @@
-# Locally calculated
-sha256	25bcedbdafadac3d09c325c1d46a51f53d858b26a260d5aed6b4f17fea6e07fa	ffmpeg-2.8.6.tar.xz
+# Locally calculated (PGP Signature: https://ffmpeg.org/releases/ffmpeg-3.0.tar.xz.asc)
+sha256 12f32cee41c74435f608c30793fd616bdf53467bb513278e273e135a4c58e470 ffmpeg-3.0.tar.xz
diff --git a/package/ffmpeg/ffmpeg.mk b/package/ffmpeg/ffmpeg.mk
index ddfac20..75c0128 100644
--- a/package/ffmpeg/ffmpeg.mk
+++ b/package/ffmpeg/ffmpeg.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-FFMPEG_VERSION = 2.8.6
+FFMPEG_VERSION = 3.0
 FFMPEG_SOURCE = ffmpeg-$(FFMPEG_VERSION).tar.xz
 FFMPEG_SITE = http://ffmpeg.org/releases
 FFMPEG_INSTALL_STAGING = YES
@@ -41,7 +41,7 @@ FFMPEG_CONF_OPTS = \
 	--enable-runtime-cpudetect \
 	--disable-hardcoded-tables \
 	--disable-memalign-hack \
-	--disable-mipsdspr1 \
+	--disable-mipsdsp \
 	--disable-mipsdspr2 \
 	--disable-msa \
 	--enable-hwaccels \
@@ -58,7 +58,6 @@ FFMPEG_CONF_OPTS = \
 	--disable-libnut \
 	--disable-libopenjpeg \
 	--disable-libschroedinger \
-	--disable-libvo-aacenc \
 	--disable-libvo-amrwbenc \
 	--disable-symver \
 	--disable-doc
@@ -437,14 +436,6 @@ FFMPEG_CONF_OPTS += \
 	--enable-mipsfpu
 endif
 
-ifeq ($(BR2_mips_32r2),y)
-FFMPEG_CONF_OPTS += \
-	--enable-mips32r2
-else
-FFMPEG_CONF_OPTS += \
-	--disable-mips32r2
-endif
-
 ifeq ($(BR2_POWERPC_CPU_HAS_ALTIVEC),y)
 FFMPEG_CONF_OPTS += --enable-altivec
 else
-- 
2.8.0.rc3

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [Buildroot] [PATCH v3 11/18] package/ffmpeg: cosmetic change for the mips fpu option
  2016-03-28 18:20 [Buildroot] [PATCH v3 00/18] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (9 preceding siblings ...)
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 10/18] package/ffmpeg: bump to version 3.0 Bernd Kuhls
@ 2016-03-28 18:21 ` Bernd Kuhls
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 12/18] package/ffmpeg: default to --cpu=generic for MIPS architecture Bernd Kuhls
                   ` (6 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: Bernd Kuhls @ 2016-03-28 18:21 UTC (permalink / raw)
  To: buildroot

From: Vicente Olivert Riera <Vincent.Riera@imgtec.com>

Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
 package/ffmpeg/ffmpeg.mk | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/package/ffmpeg/ffmpeg.mk b/package/ffmpeg/ffmpeg.mk
index 75c0128..3115fc7 100644
--- a/package/ffmpeg/ffmpeg.mk
+++ b/package/ffmpeg/ffmpeg.mk
@@ -429,11 +429,9 @@ FFMPEG_CONF_OPTS += --enable-neon
 endif
 
 ifeq ($(BR2_MIPS_SOFT_FLOAT),y)
-FFMPEG_CONF_OPTS += \
-	--disable-mipsfpu
+FFMPEG_CONF_OPTS += --disable-mipsfpu
 else
-FFMPEG_CONF_OPTS += \
-	--enable-mipsfpu
+FFMPEG_CONF_OPTS += --enable-mipsfpu
 endif
 
 ifeq ($(BR2_POWERPC_CPU_HAS_ALTIVEC),y)
-- 
2.8.0.rc3

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [Buildroot] [PATCH v3 12/18] package/ffmpeg: default to --cpu=generic for MIPS architecture
  2016-03-28 18:20 [Buildroot] [PATCH v3 00/18] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (10 preceding siblings ...)
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 11/18] package/ffmpeg: cosmetic change for the mips fpu option Bernd Kuhls
@ 2016-03-28 18:21 ` Bernd Kuhls
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 13/18] package/ffmpeg: Add patch required by Kodi 16.0-Jarvis Bernd Kuhls
                   ` (5 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: Bernd Kuhls @ 2016-03-28 18:21 UTC (permalink / raw)
  To: buildroot

From: Vicente Olivert Riera <Vincent.Riera@imgtec.com>

This option is needed to prevent this message from configure:

WARNING: unknown CPU. Disabling all MIPS optimizations.

Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
 package/ffmpeg/ffmpeg.mk | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/package/ffmpeg/ffmpeg.mk b/package/ffmpeg/ffmpeg.mk
index 3115fc7..f96213e 100644
--- a/package/ffmpeg/ffmpeg.mk
+++ b/package/ffmpeg/ffmpeg.mk
@@ -452,6 +452,11 @@ else ifneq ($(call qstrip,$(BR2_GCC_TARGET_ARCH)),)
 FFMPEG_CONF_OPTS += --cpu=$(BR2_GCC_TARGET_ARCH)
 endif
 
+# Default to --cpu=generic for MIPS architecture
+ifeq ($(BR2_mips)$(BR2_mipsel)$(BR2_mips64)$(BR2_mips64el),y)
+FFMPEG_CONF_OPTS += --cpu=generic
+endif
+
 FFMPEG_CONF_OPTS += $(call qstrip,$(BR2_PACKAGE_FFMPEG_EXTRACONF))
 
 # Override FFMPEG_CONFIGURE_CMDS: FFmpeg does not support --target and others
-- 
2.8.0.rc3

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [Buildroot] [PATCH v3 13/18] package/ffmpeg: Add patch required by Kodi 16.0-Jarvis
  2016-03-28 18:20 [Buildroot] [PATCH v3 00/18] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (11 preceding siblings ...)
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 12/18] package/ffmpeg: default to --cpu=generic for MIPS architecture Bernd Kuhls
@ 2016-03-28 18:21 ` Bernd Kuhls
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 14/18] package/x264: bump version Bernd Kuhls
                   ` (4 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: Bernd Kuhls @ 2016-03-28 18:21 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
 .../ffmpeg/0013-hevc-support-main10-decoding.patch | 77 ++++++++++++++++++++++
 1 file changed, 77 insertions(+)
 create mode 100644 package/ffmpeg/0013-hevc-support-main10-decoding.patch

diff --git a/package/ffmpeg/0013-hevc-support-main10-decoding.patch b/package/ffmpeg/0013-hevc-support-main10-decoding.patch
new file mode 100644
index 0000000..ef42394
--- /dev/null
+++ b/package/ffmpeg/0013-hevc-support-main10-decoding.patch
@@ -0,0 +1,77 @@
+From bbab50b66f61f38415ea1fbc93314712b90901e2 Mon Sep 17 00:00:00 2001
+From: Hendrik Leppkes <h.leppkes@gmail.com>
+Date: Sat, 30 Jan 2016 17:10:56 +0100
+Subject: [PATCH] hevc: support Main10 decoding through dxva2
+
+Patch is part of the Kodi patch set for ffmpeg, downloaded from
+https://github.com/xbmc/FFmpeg/.
+
+Patch was backported from upstream commit:
+http://git.videolan.org/?p=ffmpeg.git;a=commitdiff;h=ccb94789e2968329947f1c2e00d019f387f9c409
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+---
+ Changelog            |  4 ++++
+ libavcodec/hevc.c    | 13 ++++++++++++-
+ libavcodec/version.h |  2 +-
+ 3 files changed, 17 insertions(+), 2 deletions(-)
+
+diff --git a/Changelog b/Changelog
+index 2e1cd36..1c60cde 100644
+--- a/Changelog
++++ b/Changelog
+@@ -1,6 +1,10 @@
+ Entries are sorted chronologically from oldest to youngest within each release,
+ releases are sorted from youngest to oldest.
+ 
++version <next>:
++- DXVA2-accelerated HEVC Main10 decoding
++
++
+ version 3.0:
+ - Common Encryption (CENC) MP4 encoding and decoding support
+ - DXV decoding
+diff --git a/libavcodec/hevc.c b/libavcodec/hevc.c
+index 203f90a..0d53a33 100644
+--- a/libavcodec/hevc.c
++++ b/libavcodec/hevc.c
+@@ -347,7 +347,9 @@ static int set_sps(HEVCContext *s, const HEVCSPS *sps, enum AVPixelFormat pix_fm
+ 
+     export_stream_params(s->avctx, &s->ps, sps);
+ 
+-    if (sps->pix_fmt == AV_PIX_FMT_YUV420P || sps->pix_fmt == AV_PIX_FMT_YUVJ420P) {
++    switch (sps->pix_fmt) {
++    case AV_PIX_FMT_YUV420P:
++    case AV_PIX_FMT_YUVJ420P:
+ #if CONFIG_HEVC_DXVA2_HWACCEL
+         *fmt++ = AV_PIX_FMT_DXVA2_VLD;
+ #endif
+@@ -360,6 +362,15 @@ static int set_sps(HEVCContext *s, const HEVCSPS *sps, enum AVPixelFormat pix_fm
+ #if CONFIG_HEVC_VDPAU_HWACCEL
+         *fmt++ = AV_PIX_FMT_VDPAU;
+ #endif
++        break;
++    case AV_PIX_FMT_YUV420P10:
++#if CONFIG_HEVC_DXVA2_HWACCEL
++        *fmt++ = AV_PIX_FMT_DXVA2_VLD;
++#endif
++#if CONFIG_HEVC_D3D11VA_HWACCEL
++        *fmt++ = AV_PIX_FMT_D3D11VA_VLD;
++#endif
++        break;
+     }
+ 
+     if (pix_fmt == AV_PIX_FMT_NONE) {
+diff --git a/libavcodec/version.h b/libavcodec/version.h
+index 37a35e0..08140b0 100644
+--- a/libavcodec/version.h
++++ b/libavcodec/version.h
+@@ -30,7 +30,7 @@
+ 
+ #define LIBAVCODEC_VERSION_MAJOR  57
+ #define LIBAVCODEC_VERSION_MINOR  24
+-#define LIBAVCODEC_VERSION_MICRO 102
++#define LIBAVCODEC_VERSION_MICRO 103
+ 
+ #define LIBAVCODEC_VERSION_INT  AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
+                                                LIBAVCODEC_VERSION_MINOR, \
-- 
2.8.0.rc3

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [Buildroot] [PATCH v3 14/18] package/x264: bump version
  2016-03-28 18:20 [Buildroot] [PATCH v3 00/18] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (12 preceding siblings ...)
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 13/18] package/ffmpeg: Add patch required by Kodi 16.0-Jarvis Bernd Kuhls
@ 2016-03-28 18:21 ` Bernd Kuhls
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 15/18] package/x265: bump version to 1.9 Bernd Kuhls
                   ` (3 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: Bernd Kuhls @ 2016-03-28 18:21 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
 package/x264/x264.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/package/x264/x264.mk b/package/x264/x264.mk
index 7e7e597..cf5e385 100644
--- a/package/x264/x264.mk
+++ b/package/x264/x264.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-X264_VERSION = e86f3a1993234e8f26050c243aa253651200fa6b
+X264_VERSION = a01e33913655f983df7a4d64b0a4178abb1eb618
 X264_SITE = git://git.videolan.org/x264.git
 X264_LICENSE = GPLv2+
 X264_DEPENDENCIES = host-pkgconf
-- 
2.8.0.rc3

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [Buildroot] [PATCH v3 15/18] package/x265: bump version to 1.9
  2016-03-28 18:20 [Buildroot] [PATCH v3 00/18] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (13 preceding siblings ...)
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 14/18] package/x264: bump version Bernd Kuhls
@ 2016-03-28 18:21 ` Bernd Kuhls
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 16/18] package/dtv-scan-tables: bump version Bernd Kuhls
                   ` (2 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: Bernd Kuhls @ 2016-03-28 18:21 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
 package/x265/x265.hash | 2 +-
 package/x265/x265.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/x265/x265.hash b/package/x265/x265.hash
index 714ec2a..92b5bea 100644
--- a/package/x265/x265.hash
+++ b/package/x265/x265.hash
@@ -1,2 +1,2 @@
 # Locally generated
-sha256 760e6280c688f1ea90c492d19fc6d4084ca1c4b0ea9b2e3c736d32565c30d857 x265_1.8.tar.gz
+sha256	3e4654133ed957a98708fdb4cb9a154d9e80922b84e26e43fc462a101c5b15c8	x265_1.9.tar.gz
diff --git a/package/x265/x265.mk b/package/x265/x265.mk
index 45c86f1..e737c31 100644
--- a/package/x265/x265.mk
+++ b/package/x265/x265.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-X265_VERSION = 1.8
+X265_VERSION = 1.9
 X265_SOURCE = x265_$(X265_VERSION).tar.gz
 X265_SITE = https://bitbucket.org/multicoreware/x265/downloads
 X265_LICENSE = GPLv2+
-- 
2.8.0.rc3

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [Buildroot] [PATCH v3 16/18] package/dtv-scan-tables: bump version
  2016-03-28 18:20 [Buildroot] [PATCH v3 00/18] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (14 preceding siblings ...)
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 15/18] package/x265: bump version to 1.9 Bernd Kuhls
@ 2016-03-28 18:21 ` Bernd Kuhls
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 17/18] package/tvheadend: " Bernd Kuhls
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 18/18] package/live555: bump version to 2016.03.16 Bernd Kuhls
  17 siblings, 0 replies; 19+ messages in thread
From: Bernd Kuhls @ 2016-03-28 18:21 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
 package/dtv-scan-tables/dtv-scan-tables.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/package/dtv-scan-tables/dtv-scan-tables.mk b/package/dtv-scan-tables/dtv-scan-tables.mk
index ab6a36c..d78dd82 100644
--- a/package/dtv-scan-tables/dtv-scan-tables.mk
+++ b/package/dtv-scan-tables/dtv-scan-tables.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-DTV_SCAN_TABLES_VERSION = 6da0f5e851dd5e51e43b87136228a88705a7ba69
+DTV_SCAN_TABLES_VERSION = 61c8339d686b2d98d5604c26a777cb3c1f3d84a1
 DTV_SCAN_TABLES_SITE = http://git.linuxtv.org/cgit.cgi/dtv-scan-tables.git
 DTV_SCAN_TABLES_SITE_METHOD = git
 
-- 
2.8.0.rc3

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [Buildroot] [PATCH v3 17/18] package/tvheadend: bump version
  2016-03-28 18:20 [Buildroot] [PATCH v3 00/18] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (15 preceding siblings ...)
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 16/18] package/dtv-scan-tables: bump version Bernd Kuhls
@ 2016-03-28 18:21 ` Bernd Kuhls
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 18/18] package/live555: bump version to 2016.03.16 Bernd Kuhls
  17 siblings, 0 replies; 19+ messages in thread
From: Bernd Kuhls @ 2016-03-28 18:21 UTC (permalink / raw)
  To: buildroot

Updated ffmpeg option name after upstream renamed it:
https://github.com/tvheadend/tvheadend/commit/1359effe28a0381b8c9cbd362d6e144fb87b00fc#diff-e2d5a00791bce9a01f99bc6fd613a39dR37

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
 package/tvheadend/tvheadend.hash | 2 +-
 package/tvheadend/tvheadend.mk   | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/package/tvheadend/tvheadend.hash b/package/tvheadend/tvheadend.hash
index 14d0fb0..9406d08 100644
--- a/package/tvheadend/tvheadend.hash
+++ b/package/tvheadend/tvheadend.hash
@@ -1,2 +1,2 @@
 # Locally computed
-sha256	9f25c79247ba59a6eb9ff8b9843b2e6cbc2702fa339a0ed89d24beb9017066e3	tvheadend-7adea4a102475fbeb0267a9ab160e1e0644f11c2.tar.gz
+sha256	50ada2f30387f9526e1ed453f778686b443e599841a73a031cdd543b65e7a502	tvheadend-cd9f07fb865e5700156546ee326fbaf42ee99cf8.tar.gz
diff --git a/package/tvheadend/tvheadend.mk b/package/tvheadend/tvheadend.mk
index 3398faf..a7a8218 100644
--- a/package/tvheadend/tvheadend.mk
+++ b/package/tvheadend/tvheadend.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-TVHEADEND_VERSION = 7adea4a102475fbeb0267a9ab160e1e0644f11c2
+TVHEADEND_VERSION = cd9f07fb865e5700156546ee326fbaf42ee99cf8
 TVHEADEND_SITE = $(call github,tvheadend,tvheadend,$(TVHEADEND_VERSION))
 TVHEADEND_LICENSE = GPLv3+
 TVHEADEND_LICENSE_FILES = LICENSE.md
@@ -81,7 +81,7 @@ define TVHEADEND_CONFIGURE_CMDS
 			--python="$(HOST_DIR)/usr/bin/python"	\
 			--enable-dvbscan			\
 			--enable-bundle				\
-			--disable-libffmpeg_static		\
+			--disable-ffmpeg_static			\
 			--disable-hdhomerun_static		\
 			$(TVHEADEND_CONF_OPTS)			\
 	)
-- 
2.8.0.rc3

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [Buildroot] [PATCH v3 18/18] package/live555: bump version to 2016.03.16
  2016-03-28 18:20 [Buildroot] [PATCH v3 00/18] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (16 preceding siblings ...)
  2016-03-28 18:21 ` [Buildroot] [PATCH v3 17/18] package/tvheadend: " Bernd Kuhls
@ 2016-03-28 18:21 ` Bernd Kuhls
  17 siblings, 0 replies; 19+ messages in thread
From: Bernd Kuhls @ 2016-03-28 18:21 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
 package/live555/live555.hash | 4 ++--
 package/live555/live555.mk   | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/package/live555/live555.hash b/package/live555/live555.hash
index 813a5b4..16f7077 100644
--- a/package/live555/live555.hash
+++ b/package/live555/live555.hash
@@ -1,4 +1,4 @@
 # From http://live555.com/liveMedia/public/live555-latest-md5.txt
-md5	6275484ab763673ad3144648bf1015cb	live.2016.01.29.tar.gz
+md5	df4ad1d60c2f5ae8155fb077bb011ab3	live.2016.03.16.tar.gz
 # Locally generated
-sha256	44243a962adae64703c00264dd2333cfee15d7edbd79de4e5b47fd486df9ecd1	live.2016.01.29.tar.gz
+sha256	6f98a96d4cf6e986c7711f0a2431c02cb807a8107d6715eb491a6ed9d0446cf6	live.2016.03.16.tar.gz
diff --git a/package/live555/live555.mk b/package/live555/live555.mk
index d40cbaa..3ccba63 100644
--- a/package/live555/live555.mk
+++ b/package/live555/live555.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-LIVE555_VERSION = 2016.01.29
+LIVE555_VERSION = 2016.03.16
 LIVE555_SOURCE = live.$(LIVE555_VERSION).tar.gz
 LIVE555_SITE = http://www.live555.com/liveMedia/public
 LIVE555_LICENSE = LGPLv2.1+
-- 
2.8.0.rc3

^ permalink raw reply related	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2016-03-28 18:21 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-03-28 18:20 [Buildroot] [PATCH v3 00/18] Bump ffmpeg to 3.0 Bernd Kuhls
2016-03-28 18:20 ` [Buildroot] [PATCH v3 01/18] package/kodi: add support for ffmpeg 3.0 Bernd Kuhls
2016-03-28 18:20 ` [Buildroot] [PATCH v3 02/18] package/libdcadec: bump version to v0.2.0 Bernd Kuhls
2016-03-28 18:21 ` [Buildroot] [PATCH v3 03/18] package/ortp: bump version to 0.25.0 Bernd Kuhls
2016-03-28 18:21 ` [Buildroot] [PATCH v3 04/18] package/mediastreamer: bump version to 2.12.1 Bernd Kuhls
2016-03-28 18:21 ` [Buildroot] [PATCH v3 05/18] package/opencv: bump version to 2.4.12.3 Bernd Kuhls
2016-03-28 18:21 ` [Buildroot] [PATCH v3 06/18] package/opencv3: bump version to 3.1.0 Bernd Kuhls
2016-03-28 18:21 ` [Buildroot] [PATCH v3 07/18] package/squeezelite: fix compilation with ffmpeg >= 2.9 Bernd Kuhls
2016-03-28 18:21 ` [Buildroot] [PATCH v3 08/18] package/freerdp: bump version Bernd Kuhls
2016-03-28 18:21 ` [Buildroot] [PATCH v3 09/18] package/vlc: mark as broken due to incompatibility with ffmpeg 3.0 Bernd Kuhls
2016-03-28 18:21 ` [Buildroot] [PATCH v3 10/18] package/ffmpeg: bump to version 3.0 Bernd Kuhls
2016-03-28 18:21 ` [Buildroot] [PATCH v3 11/18] package/ffmpeg: cosmetic change for the mips fpu option Bernd Kuhls
2016-03-28 18:21 ` [Buildroot] [PATCH v3 12/18] package/ffmpeg: default to --cpu=generic for MIPS architecture Bernd Kuhls
2016-03-28 18:21 ` [Buildroot] [PATCH v3 13/18] package/ffmpeg: Add patch required by Kodi 16.0-Jarvis Bernd Kuhls
2016-03-28 18:21 ` [Buildroot] [PATCH v3 14/18] package/x264: bump version Bernd Kuhls
2016-03-28 18:21 ` [Buildroot] [PATCH v3 15/18] package/x265: bump version to 1.9 Bernd Kuhls
2016-03-28 18:21 ` [Buildroot] [PATCH v3 16/18] package/dtv-scan-tables: bump version Bernd Kuhls
2016-03-28 18:21 ` [Buildroot] [PATCH v3 17/18] package/tvheadend: " Bernd Kuhls
2016-03-28 18:21 ` [Buildroot] [PATCH v3 18/18] package/live555: bump version to 2016.03.16 Bernd Kuhls

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.