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

Hi,

this patch series bumps ffmpeg to version 3.0 (patches 1-14).
Patches 15-19 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

v4: linphone: added patch
    ortp: removed srtp option
v3: opencv3: moved WITH_VA options (Samuel)
v2: opencv3: reworked options (Samuel)

Bernd Kuhls (16):
  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/linphone: add support for ffmpeg 3.0
  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/linphone/Config.in                         |   6 +-
 package/linphone/linphone.hash                     |   4 +
 package/linphone/linphone.mk                       |  17 +-
 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                               |   6 +-
 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 +-
 34 files changed, 1479 insertions(+), 726 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] 30+ messages in thread

* [Buildroot] [PATCH v4 01/19] package/kodi: add support for ffmpeg 3.0
  2016-03-28 19:49 [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Bernd Kuhls
@ 2016-03-28 19:49 ` Bernd Kuhls
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 02/19] package/libdcadec: bump version to v0.2.0 Bernd Kuhls
                   ` (18 subsequent siblings)
  19 siblings, 0 replies; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-28 19:49 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] 30+ messages in thread

* [Buildroot] [PATCH v4 02/19] package/libdcadec: bump version to v0.2.0
  2016-03-28 19:49 [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Bernd Kuhls
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 01/19] package/kodi: add support for ffmpeg 3.0 Bernd Kuhls
@ 2016-03-28 19:49 ` Bernd Kuhls
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 03/19] package/ortp: bump version to 0.25.0 Bernd Kuhls
                   ` (17 subsequent siblings)
  19 siblings, 0 replies; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-28 19:49 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] 30+ messages in thread

* [Buildroot] [PATCH v4 03/19] package/ortp: bump version to 0.25.0
  2016-03-28 19:49 [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Bernd Kuhls
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 01/19] package/kodi: add support for ffmpeg 3.0 Bernd Kuhls
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 02/19] package/libdcadec: bump version to v0.2.0 Bernd Kuhls
@ 2016-03-28 19:49 ` Bernd Kuhls
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 04/19] package/mediastreamer: bump version to 2.12.1 Bernd Kuhls
                   ` (16 subsequent siblings)
  19 siblings, 0 replies; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-28 19:49 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.

Removed srtp option after srtp support was removed from ortp:
https://github.com/BelledonneCommunications/ortp/commit/5e37fa55f1f15f5896d69156e64cdc95a1ff68bf

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
v4: removed srtp option
v3: no changes
v2: no changes

 package/ortp/ortp.hash | 4 ++--
 package/ortp/ortp.mk   | 6 ++----
 2 files changed, 4 insertions(+), 6 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..ca4a90d 100644
--- a/package/ortp/ortp.mk
+++ b/package/ortp/ortp.mk
@@ -4,12 +4,10 @@
 #
 ################################################################################
 
-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
-# Buildroot
-ORTP_CONF_OPTS = --disable-strict --with-srtp=none
+ORTP_CONF_OPTS = --disable-strict
 ORTP_INSTALL_STAGING = YES
 ORTP_LICENSE = LGPLv2.1+
 ORTP_LICENSE_FILES = COPYING
-- 
2.8.0.rc3

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

* [Buildroot] [PATCH v4 04/19] package/mediastreamer: bump version to 2.12.1
  2016-03-28 19:49 [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (2 preceding siblings ...)
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 03/19] package/ortp: bump version to 0.25.0 Bernd Kuhls
@ 2016-03-28 19:49 ` Bernd Kuhls
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 05/19] package/linphone: add support for ffmpeg 3.0 Bernd Kuhls
                   ` (15 subsequent siblings)
  19 siblings, 0 replies; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-28 19:49 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] 30+ messages in thread

* [Buildroot] [PATCH v4 05/19] package/linphone: add support for ffmpeg 3.0
  2016-03-28 19:49 [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (3 preceding siblings ...)
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 04/19] package/mediastreamer: bump version to 2.12.1 Bernd Kuhls
@ 2016-03-28 19:49 ` Bernd Kuhls
  2016-03-29 12:43   ` Thomas Petazzoni
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 06/19] package/opencv: bump version to 2.4.12.3 Bernd Kuhls
                   ` (14 subsequent siblings)
  19 siblings, 1 reply; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-28 19:49 UTC (permalink / raw)
  To: buildroot

Linphone 3.6 is incompatible with bumped mediastreamer and ortp
packages. Like Debian we use the bundled versions instead and add the
Debian patch series to support ffmpeg 3.0

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
v4: initial version

 package/linphone/Config.in     |  6 ++----
 package/linphone/linphone.hash |  4 ++++
 package/linphone/linphone.mk   | 17 ++++++++++++++---
 3 files changed, 20 insertions(+), 7 deletions(-)

diff --git a/package/linphone/Config.in b/package/linphone/Config.in
index 6d6ffae..2622aa4 100644
--- a/package/linphone/Config.in
+++ b/package/linphone/Config.in
@@ -2,10 +2,8 @@ config BR2_PACKAGE_LINPHONE
 	bool "linphone"
 	select BR2_PACKAGE_LIBEXOSIP2
 	select BR2_PACKAGE_SPEEX
-	select BR2_PACKAGE_ORTP
-	select BR2_PACKAGE_MEDIASTREAMER
-	depends on BR2_INSTALL_LIBSTDCPP # mediastreamer
-	depends on BR2_TOOLCHAIN_HAS_THREADS # ortp
+	depends on BR2_INSTALL_LIBSTDCPP # mediastreamer (bundled)
+	depends on BR2_TOOLCHAIN_HAS_THREADS # ortp (bundled)
 	depends on BR2_USE_MMU # libeXosip2
 	help
 	  Linphone is an internet phone or Voice Over IP phone (VoIP).
diff --git a/package/linphone/linphone.hash b/package/linphone/linphone.hash
index 9ed9d37..2e202cf 100644
--- a/package/linphone/linphone.hash
+++ b/package/linphone/linphone.hash
@@ -1,2 +1,6 @@
 # Locally calculated after checking pgp signature
 sha256	05ba81223e9378c3bce8d33080213b9925af49bd9623cd9004eb3dd22ca9d2a0	linphone-3.6.1.tar.gz
+sha256	bc4ef670c0ecc1bb60bcb79374309b555c11d154bacfa363d809a26a58780933	libav9.patch
+sha256	a50a8ac2caedb389c224f81393901a029fec055ec2ec83aa18d677e1bfe7fc73	libav10.patch
+sha256	e384775c12ea93d3bc35dccfe4ea875c38b74be8af63fcb82e6b7f06e93d1593	libav11.patch
+sha256	3367a26f65f49f4101787b1821402127d29cde9b02d3873112a5001a549cc7d9	ffmpeg_2.9.patch
diff --git a/package/linphone/linphone.mk b/package/linphone/linphone.mk
index e0d4fa3..1728d20 100644
--- a/package/linphone/linphone.mk
+++ b/package/linphone/linphone.mk
@@ -8,15 +8,18 @@ LINPHONE_VERSION_MAJOR = 3.6
 LINPHONE_VERSION = $(LINPHONE_VERSION_MAJOR).1
 LINPHONE_SITE = http://download-mirror.savannah.gnu.org/releases/linphone/$(LINPHONE_VERSION_MAJOR).x/sources
 LINPHONE_CONF_OPTS = \
-	--enable-external-ortp \
-	--enable-external-mediastreamer \
 	--disable-strict
 # configure is out of sync causing deplibs linking issues
 LINPHONE_AUTORECONF = YES
 LINPHONE_INSTALL_STAGING = YES
-LINPHONE_DEPENDENCIES = host-pkgconf ortp mediastreamer libeXosip2 speex
+LINPHONE_DEPENDENCIES = host-pkgconf libeXosip2 speex
 LINPHONE_LICENSE = GPLv2+
 LINPHONE_LICENSE_FILES = COPYING
+LINPHONE_PATCH = \
+	https://sources.debian.net/data/main/l/linphone/3.6.1-2.5/debian/patches/libav9.patch \
+	https://sources.debian.net/data/main/l/linphone/3.6.1-2.5/debian/patches/libav10.patch \
+	https://sources.debian.net/data/main/l/linphone/3.6.1-2.5/debian/patches/libav11.patch \
+	https://sources.debian.net/data/main/l/linphone/3.6.1-2.5/debian/patches/ffmpeg_2.9.patch
 
 ifeq ($(BR2_arc),y)
 # toolchain __arc__ define conflicts with libosip2 source
@@ -30,4 +33,12 @@ else
 LINPHONE_CONF_OPTS += --disable-gtk_ui
 endif
 
+# needed for bundled mediastreamer2
+ifeq ($(BR2_PACKAGE_LIBV4L),y)
+LINPHONE_CONF_OPTS += --enable-libv4l1 --enable-libv4l2
+LINPHONE_DEPENDENCIES += libv4l
+else
+LINPHONE_CONF_OPTS += --disable-libv4l1 --disable-libv4l2
+endif
+
 $(eval $(autotools-package))
-- 
2.8.0.rc3

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

* [Buildroot] [PATCH v4 06/19] package/opencv: bump version to 2.4.12.3
  2016-03-28 19:49 [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (4 preceding siblings ...)
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 05/19] package/linphone: add support for ffmpeg 3.0 Bernd Kuhls
@ 2016-03-28 19:49 ` Bernd Kuhls
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 07/19] package/opencv3: bump version to 3.1.0 Bernd Kuhls
                   ` (13 subsequent siblings)
  19 siblings, 0 replies; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-28 19:49 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] 30+ messages in thread

* [Buildroot] [PATCH v4 07/19] package/opencv3: bump version to 3.1.0
  2016-03-28 19:49 [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (5 preceding siblings ...)
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 06/19] package/opencv: bump version to 2.4.12.3 Bernd Kuhls
@ 2016-03-28 19:49 ` Bernd Kuhls
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 08/19] package/squeezelite: fix compilation with ffmpeg >= 2.9 Bernd Kuhls
                   ` (12 subsequent siblings)
  19 siblings, 0 replies; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-28 19:49 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] 30+ messages in thread

* [Buildroot] [PATCH v4 08/19] package/squeezelite: fix compilation with ffmpeg >= 2.9
  2016-03-28 19:49 [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (6 preceding siblings ...)
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 07/19] package/opencv3: bump version to 3.1.0 Bernd Kuhls
@ 2016-03-28 19:49 ` Bernd Kuhls
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 09/19] package/freerdp: bump version Bernd Kuhls
                   ` (11 subsequent siblings)
  19 siblings, 0 replies; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-28 19:49 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] 30+ messages in thread

* [Buildroot] [PATCH v4 09/19] package/freerdp: bump version
  2016-03-28 19:49 [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (7 preceding siblings ...)
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 08/19] package/squeezelite: fix compilation with ffmpeg >= 2.9 Bernd Kuhls
@ 2016-03-28 19:49 ` Bernd Kuhls
  2016-03-29 12:47   ` Thomas Petazzoni
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 10/19] package/vlc: mark as broken due to incompatibility with ffmpeg 3.0 Bernd Kuhls
                   ` (10 subsequent siblings)
  19 siblings, 1 reply; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-28 19:49 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] 30+ messages in thread

* [Buildroot] [PATCH v4 10/19] package/vlc: mark as broken due to incompatibility with ffmpeg 3.0
  2016-03-28 19:49 [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (8 preceding siblings ...)
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 09/19] package/freerdp: bump version Bernd Kuhls
@ 2016-03-28 19:49 ` Bernd Kuhls
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 11/19] package/ffmpeg: bump to version 3.0 Bernd Kuhls
                   ` (9 subsequent siblings)
  19 siblings, 0 replies; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-28 19:49 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] 30+ messages in thread

* [Buildroot] [PATCH v4 11/19] package/ffmpeg: bump to version 3.0
  2016-03-28 19:49 [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (9 preceding siblings ...)
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 10/19] package/vlc: mark as broken due to incompatibility with ffmpeg 3.0 Bernd Kuhls
@ 2016-03-28 19:49 ` Bernd Kuhls
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 12/19] package/ffmpeg: cosmetic change for the mips fpu option Bernd Kuhls
                   ` (8 subsequent siblings)
  19 siblings, 0 replies; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-28 19:49 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] 30+ messages in thread

* [Buildroot] [PATCH v4 12/19] package/ffmpeg: cosmetic change for the mips fpu option
  2016-03-28 19:49 [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (10 preceding siblings ...)
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 11/19] package/ffmpeg: bump to version 3.0 Bernd Kuhls
@ 2016-03-28 19:49 ` Bernd Kuhls
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 13/19] package/ffmpeg: default to --cpu=generic for MIPS architecture Bernd Kuhls
                   ` (7 subsequent siblings)
  19 siblings, 0 replies; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-28 19:49 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] 30+ messages in thread

* [Buildroot] [PATCH v4 13/19] package/ffmpeg: default to --cpu=generic for MIPS architecture
  2016-03-28 19:49 [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (11 preceding siblings ...)
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 12/19] package/ffmpeg: cosmetic change for the mips fpu option Bernd Kuhls
@ 2016-03-28 19:49 ` Bernd Kuhls
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 14/19] package/ffmpeg: Add patch required by Kodi 16.0-Jarvis Bernd Kuhls
                   ` (6 subsequent siblings)
  19 siblings, 0 replies; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-28 19:49 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] 30+ messages in thread

* [Buildroot] [PATCH v4 14/19] package/ffmpeg: Add patch required by Kodi 16.0-Jarvis
  2016-03-28 19:49 [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (12 preceding siblings ...)
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 13/19] package/ffmpeg: default to --cpu=generic for MIPS architecture Bernd Kuhls
@ 2016-03-28 19:49 ` Bernd Kuhls
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 15/19] package/x264: bump version Bernd Kuhls
                   ` (5 subsequent siblings)
  19 siblings, 0 replies; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-28 19:49 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] 30+ messages in thread

* [Buildroot] [PATCH v4 15/19] package/x264: bump version
  2016-03-28 19:49 [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (13 preceding siblings ...)
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 14/19] package/ffmpeg: Add patch required by Kodi 16.0-Jarvis Bernd Kuhls
@ 2016-03-28 19:49 ` Bernd Kuhls
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 16/19] package/x265: bump version to 1.9 Bernd Kuhls
                   ` (4 subsequent siblings)
  19 siblings, 0 replies; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-28 19:49 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] 30+ messages in thread

* [Buildroot] [PATCH v4 16/19] package/x265: bump version to 1.9
  2016-03-28 19:49 [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (14 preceding siblings ...)
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 15/19] package/x264: bump version Bernd Kuhls
@ 2016-03-28 19:49 ` Bernd Kuhls
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 17/19] package/dtv-scan-tables: bump version Bernd Kuhls
                   ` (3 subsequent siblings)
  19 siblings, 0 replies; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-28 19:49 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] 30+ messages in thread

* [Buildroot] [PATCH v4 17/19] package/dtv-scan-tables: bump version
  2016-03-28 19:49 [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (15 preceding siblings ...)
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 16/19] package/x265: bump version to 1.9 Bernd Kuhls
@ 2016-03-28 19:49 ` Bernd Kuhls
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 18/19] package/tvheadend: " Bernd Kuhls
                   ` (2 subsequent siblings)
  19 siblings, 0 replies; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-28 19:49 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] 30+ messages in thread

* [Buildroot] [PATCH v4 18/19] package/tvheadend: bump version
  2016-03-28 19:49 [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (16 preceding siblings ...)
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 17/19] package/dtv-scan-tables: bump version Bernd Kuhls
@ 2016-03-28 19:49 ` Bernd Kuhls
  2016-03-29 12:45   ` Thomas Petazzoni
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 19/19] package/live555: bump version to 2016.03.16 Bernd Kuhls
  2016-03-29  1:24 ` [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Thomas Petazzoni
  19 siblings, 1 reply; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-28 19:49 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] 30+ messages in thread

* [Buildroot] [PATCH v4 19/19] package/live555: bump version to 2016.03.16
  2016-03-28 19:49 [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (17 preceding siblings ...)
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 18/19] package/tvheadend: " Bernd Kuhls
@ 2016-03-28 19:49 ` Bernd Kuhls
  2016-03-29  1:24 ` [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Thomas Petazzoni
  19 siblings, 0 replies; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-28 19:49 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] 30+ messages in thread

* [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0
  2016-03-28 19:49 [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Bernd Kuhls
                   ` (18 preceding siblings ...)
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 19/19] package/live555: bump version to 2016.03.16 Bernd Kuhls
@ 2016-03-29  1:24 ` Thomas Petazzoni
  2016-03-29  5:55   ` Bernd Kuhls
  19 siblings, 1 reply; 30+ messages in thread
From: Thomas Petazzoni @ 2016-03-29  1:24 UTC (permalink / raw)
  To: buildroot

Hello,

On Mon, 28 Mar 2016 21:49:26 +0200, Bernd Kuhls wrote:

> Bernd Kuhls (16):
>   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/linphone: add support for ffmpeg 3.0
>   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

I've applied all those ones. Regarding linphone, I'm not too happy to
use the bundled versions of ortp and mediastreamer, but oh well, if we
don't have the choice and Debian does it, so be it.

>   package/vlc: mark as broken due to incompatibility with ffmpeg 3.0

This is rather annoying IMO. I don't think it's really reasonable to
mark VLC as broken. When is VLC 3.0 due to be released ?

If ffmpeg 3 is such a major change, I am wondering if we need to add it
as a separate package called ffmpeg3.

>   package/ffmpeg: Add patch required by Kodi 16.0-Jarvis

Not paplied for now.

>   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

I've applied those ones.

> 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

Not applied for now, since there is the VLC issue to be resolved first.

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0
  2016-03-29  1:24 ` [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Thomas Petazzoni
@ 2016-03-29  5:55   ` Bernd Kuhls
  2016-03-29 14:20     ` Vicente Olivert Riera
  0 siblings, 1 reply; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-29  5:55 UTC (permalink / raw)
  To: buildroot

Am Tue, 29 Mar 2016 03:24:39 +0200 schrieb Thomas Petazzoni:

>>   package/vlc: mark as broken due to incompatibility with ffmpeg 3.0
> 
> This is rather annoying IMO. I don't think it's really reasonable to
> mark VLC as broken. When is VLC 3.0 due to be released ?

Hi,

it seems the build error I saw using uClibc-ng does not occur with glibc.

Here is the trac ticket I created:
https://trac.videolan.org/vlc/ticket/16768

I will send a new patch series bumping vlc to its master branch and 
disabling it with uclibc-ng for now, ok?

Regards, Bernd

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

* [Buildroot] [PATCH v4 05/19] package/linphone: add support for ffmpeg 3.0
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 05/19] package/linphone: add support for ffmpeg 3.0 Bernd Kuhls
@ 2016-03-29 12:43   ` Thomas Petazzoni
  0 siblings, 0 replies; 30+ messages in thread
From: Thomas Petazzoni @ 2016-03-29 12:43 UTC (permalink / raw)
  To: buildroot

Hello,

On Mon, 28 Mar 2016 21:49:31 +0200, Bernd Kuhls wrote:
> Linphone 3.6 is incompatible with bumped mediastreamer and ortp
> packages. Like Debian we use the bundled versions instead and add the
> Debian patch series to support ffmpeg 3.0
> 
> Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>

This is causing a number of build failures:

  http://autobuild.buildroot.org/?reason=linphone-3.6.1

Could you have a look?

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH v4 18/19] package/tvheadend: bump version
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 18/19] package/tvheadend: " Bernd Kuhls
@ 2016-03-29 12:45   ` Thomas Petazzoni
  2016-03-30 15:54     ` Thomas Petazzoni
  0 siblings, 1 reply; 30+ messages in thread
From: Thomas Petazzoni @ 2016-03-29 12:45 UTC (permalink / raw)
  To: buildroot

Hello,

On Mon, 28 Mar 2016 21:49:44 +0200, Bernd Kuhls wrote:
> 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>

This is causing some build failures:

   http://autobuild.buildroot.org/results/32c/32c6e6eece7e3b4f428524114f92e9a8999568e4/build-end.log

It seems like tvheadend is no longer compatible with the current ffmpeg
version, since we haven't bumped to ffmpeg 3.0.

I guess I should revert the tvheadend bump for now?

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH v4 09/19] package/freerdp: bump version
  2016-03-28 19:49 ` [Buildroot] [PATCH v4 09/19] package/freerdp: bump version Bernd Kuhls
@ 2016-03-29 12:47   ` Thomas Petazzoni
  0 siblings, 0 replies; 30+ messages in thread
From: Thomas Petazzoni @ 2016-03-29 12:47 UTC (permalink / raw)
  To: buildroot

Hello,

On Mon, 28 Mar 2016 21:49:35 +0200, Bernd Kuhls wrote:
> 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(-)

This commit is apparently causing some build issues:

  http://autobuild.buildroot.org/results/1ab/1abc713a58d21c71678aab9b21ac1cfac23684f5/build-end.log

(Though I haven't checked if freerdp had those build issues before this
commit or not). Could you have a look?

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0
  2016-03-29  5:55   ` Bernd Kuhls
@ 2016-03-29 14:20     ` Vicente Olivert Riera
  0 siblings, 0 replies; 30+ messages in thread
From: Vicente Olivert Riera @ 2016-03-29 14:20 UTC (permalink / raw)
  To: buildroot

Hi Bernd,

just FYI, ffmpeg-3.0.1 has been released.

Regards,

Vincent.

On 29/03/16 06:55, Bernd Kuhls wrote:
> Am Tue, 29 Mar 2016 03:24:39 +0200 schrieb Thomas Petazzoni:
> 
>>>   package/vlc: mark as broken due to incompatibility with ffmpeg 3.0
>>
>> This is rather annoying IMO. I don't think it's really reasonable to
>> mark VLC as broken. When is VLC 3.0 due to be released ?
> 
> Hi,
> 
> it seems the build error I saw using uClibc-ng does not occur with glibc.
> 
> Here is the trac ticket I created:
> https://trac.videolan.org/vlc/ticket/16768
> 
> I will send a new patch series bumping vlc to its master branch and 
> disabling it with uclibc-ng for now, ok?
> 
> Regards, Bernd
> 
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
> 

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

* [Buildroot] [PATCH v4 18/19] package/tvheadend: bump version
  2016-03-29 12:45   ` Thomas Petazzoni
@ 2016-03-30 15:54     ` Thomas Petazzoni
  2016-03-30 17:39       ` Bernd Kuhls
       [not found]       ` <E1alK55-0006sQ-Lb@fli4l.lan.fli4l>
  0 siblings, 2 replies; 30+ messages in thread
From: Thomas Petazzoni @ 2016-03-30 15:54 UTC (permalink / raw)
  To: buildroot

Hello,

On Tue, 29 Mar 2016 14:45:10 +0200, Thomas Petazzoni wrote:
> Hello,
> 
> On Mon, 28 Mar 2016 21:49:44 +0200, Bernd Kuhls wrote:
> > 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>
> 
> This is causing some build failures:
> 
>    http://autobuild.buildroot.org/results/32c/32c6e6eece7e3b4f428524114f92e9a8999568e4/build-end.log
> 
> It seems like tvheadend is no longer compatible with the current ffmpeg
> version, since we haven't bumped to ffmpeg 3.0.
> 
> I guess I should revert the tvheadend bump for now?

Bernd, what do you think?

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH v4 18/19] package/tvheadend: bump version
  2016-03-30 15:54     ` Thomas Petazzoni
@ 2016-03-30 17:39       ` Bernd Kuhls
       [not found]       ` <E1alK55-0006sQ-Lb@fli4l.lan.fli4l>
  1 sibling, 0 replies; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-30 17:39 UTC (permalink / raw)
  To: buildroot

[posted and mailed]

Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote
in news:20160330175440.5bb5dc43 at free-electrons.com: 

>> It seems like tvheadend is no longer compatible with the current ffmpeg
>> version, since we haven't bumped to ffmpeg 3.0.
>> 
>> I guess I should revert the tvheadend bump for now?
> 
> Bernd, what do you think?

Hi Thomas,

instead of reverting the tvheadend bump my new ffmpeg 3.0 patch series
could be committed, it includes a uclibc-ng compilable vlc ;)

Regards, Bernd

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

* [Buildroot] [PATCH v4 18/19] package/tvheadend: bump version
       [not found]       ` <E1alK55-0006sQ-Lb@fli4l.lan.fli4l>
@ 2016-03-30 17:47         ` Thomas Petazzoni
  2016-03-30 19:44           ` Bernd Kuhls
  0 siblings, 1 reply; 30+ messages in thread
From: Thomas Petazzoni @ 2016-03-30 17:47 UTC (permalink / raw)
  To: buildroot

Hello,

On Wed, 30 Mar 2016 19:38:59 +0200, Bernd Kuhls wrote:

> instead of reverting the tvheadend bump my new ffmpeg 3.0 patch series
> could be committed, it includes a uclibc-ng compilable vlc ;)

When is VLC 3.0 due to be released?

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH v4 18/19] package/tvheadend: bump version
  2016-03-30 17:47         ` Thomas Petazzoni
@ 2016-03-30 19:44           ` Bernd Kuhls
  0 siblings, 0 replies; 30+ messages in thread
From: Bernd Kuhls @ 2016-03-30 19:44 UTC (permalink / raw)
  To: buildroot

[posted and mailed]

Thomas Petazzoni <thomas.petazzoni-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8
@public.gmane.org> wrote in news:20160330194721.32f45091 at free-electrons.com:

> Hello,
> 
> On Wed, 30 Mar 2016 19:38:59 +0200, Bernd Kuhls wrote:
> 
>> instead of reverting the tvheadend bump my new ffmpeg 3.0 patch series
>> could be committed, it includes a uclibc-ng compilable vlc ;)
> 
> When is VLC 3.0 due to be released?

Hi Thomas,

according to https://trac.videolan.org/vlc/roadmap the release is overdue.

Phoronix does not mention a release date:
http://www.phoronix.com/scan.php?page=news_item&px=VLC-3.0-Still-Being-
Developed
http://www.phoronix.com/scan.php?page=news_item&px=VLC-3.0-2016-Update

Since 2014-02-25 we carry a "big fat warning" about know issues with vlc:
https://git.busybox.net/buildroot/commit/package/vlc/Config.in?
id=e33019aaa0409e35b725dddffe09e3e2a42959d1

Recently I thought about removing it but now I suggest to keep the warning 
and bump vlc to its git master branch to free the way for ffmpeg 3.0 ;)

Regards, Bernd

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

end of thread, other threads:[~2016-03-30 19:44 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-03-28 19:49 [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Bernd Kuhls
2016-03-28 19:49 ` [Buildroot] [PATCH v4 01/19] package/kodi: add support for ffmpeg 3.0 Bernd Kuhls
2016-03-28 19:49 ` [Buildroot] [PATCH v4 02/19] package/libdcadec: bump version to v0.2.0 Bernd Kuhls
2016-03-28 19:49 ` [Buildroot] [PATCH v4 03/19] package/ortp: bump version to 0.25.0 Bernd Kuhls
2016-03-28 19:49 ` [Buildroot] [PATCH v4 04/19] package/mediastreamer: bump version to 2.12.1 Bernd Kuhls
2016-03-28 19:49 ` [Buildroot] [PATCH v4 05/19] package/linphone: add support for ffmpeg 3.0 Bernd Kuhls
2016-03-29 12:43   ` Thomas Petazzoni
2016-03-28 19:49 ` [Buildroot] [PATCH v4 06/19] package/opencv: bump version to 2.4.12.3 Bernd Kuhls
2016-03-28 19:49 ` [Buildroot] [PATCH v4 07/19] package/opencv3: bump version to 3.1.0 Bernd Kuhls
2016-03-28 19:49 ` [Buildroot] [PATCH v4 08/19] package/squeezelite: fix compilation with ffmpeg >= 2.9 Bernd Kuhls
2016-03-28 19:49 ` [Buildroot] [PATCH v4 09/19] package/freerdp: bump version Bernd Kuhls
2016-03-29 12:47   ` Thomas Petazzoni
2016-03-28 19:49 ` [Buildroot] [PATCH v4 10/19] package/vlc: mark as broken due to incompatibility with ffmpeg 3.0 Bernd Kuhls
2016-03-28 19:49 ` [Buildroot] [PATCH v4 11/19] package/ffmpeg: bump to version 3.0 Bernd Kuhls
2016-03-28 19:49 ` [Buildroot] [PATCH v4 12/19] package/ffmpeg: cosmetic change for the mips fpu option Bernd Kuhls
2016-03-28 19:49 ` [Buildroot] [PATCH v4 13/19] package/ffmpeg: default to --cpu=generic for MIPS architecture Bernd Kuhls
2016-03-28 19:49 ` [Buildroot] [PATCH v4 14/19] package/ffmpeg: Add patch required by Kodi 16.0-Jarvis Bernd Kuhls
2016-03-28 19:49 ` [Buildroot] [PATCH v4 15/19] package/x264: bump version Bernd Kuhls
2016-03-28 19:49 ` [Buildroot] [PATCH v4 16/19] package/x265: bump version to 1.9 Bernd Kuhls
2016-03-28 19:49 ` [Buildroot] [PATCH v4 17/19] package/dtv-scan-tables: bump version Bernd Kuhls
2016-03-28 19:49 ` [Buildroot] [PATCH v4 18/19] package/tvheadend: " Bernd Kuhls
2016-03-29 12:45   ` Thomas Petazzoni
2016-03-30 15:54     ` Thomas Petazzoni
2016-03-30 17:39       ` Bernd Kuhls
     [not found]       ` <E1alK55-0006sQ-Lb@fli4l.lan.fli4l>
2016-03-30 17:47         ` Thomas Petazzoni
2016-03-30 19:44           ` Bernd Kuhls
2016-03-28 19:49 ` [Buildroot] [PATCH v4 19/19] package/live555: bump version to 2016.03.16 Bernd Kuhls
2016-03-29  1:24 ` [Buildroot] [PATCH v4 00/19] Bump ffmpeg to 3.0 Thomas Petazzoni
2016-03-29  5:55   ` Bernd Kuhls
2016-03-29 14:20     ` Vicente Olivert Riera

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.