[packages/opal] - more ffmpeg2 fixes

baggins baggins at pld-linux.org
Thu Aug 29 18:42:42 CEST 2013


commit d8899edd8984a2f57daafe2e44d993c37acfce50
Author: Jan Rękorajski <baggins at pld-linux.org>
Date:   Thu Aug 29 18:42:34 2013 +0200

    - more ffmpeg2 fixes

 ffmpeg2.patch | 126 +++++++++++++++++++++++++++++++++-------------------------
 1 file changed, 72 insertions(+), 54 deletions(-)
---
diff --git a/ffmpeg2.patch b/ffmpeg2.patch
index 4f148e4..af29abf 100644
--- a/ffmpeg2.patch
+++ b/ffmpeg2.patch
@@ -1,28 +1,34 @@
---- opal-3.10.10/plugins/video/H.263-1998/h263-1998.h~	2013-02-20 03:18:03.000000000 +0100
-+++ opal-3.10.10/plugins/video/H.263-1998/h263-1998.h	2013-08-29 14:28:11.502340861 +0200
-@@ -115,7 +115,7 @@
-     virtual ~H263_Base_EncoderContext();
+diff -rupN a/plugins/video/common/dyna.cxx b/plugins/video/common/dyna.cxx
+--- a/plugins/video/common/dyna.cxx	2013-02-20 02:18:05.000000000 +0000
++++ b/plugins/video/common/dyna.cxx	2013-07-22 16:55:47.307946942 +0000
+@@ -210,7 +210,7 @@ static void logCallbackFFMPEG(void * avc
+ #endif
  
-     virtual bool Init() = 0;
--    virtual bool Init(CodecID codecId);
-+    virtual bool Init(AVCodecID codecId);
  
-     virtual bool SetOptions(const char * const * options);
-     virtual void SetOption(const char * option, const char * value);
---- opal-3.10.10/plugins/video/H.263-1998/h263-1998.cxx~	2013-08-29 14:21:22.604177100 +0200
-+++ opal-3.10.10/plugins/video/H.263-1998/h263-1998.cxx	2013-08-29 14:28:29.062548150 +0200
-@@ -207,7 +207,7 @@
-   PTRACE(4, m_prefix, "Encoder closed");
+-FFMPEGLibrary::FFMPEGLibrary(CodecID codec)
++FFMPEGLibrary::FFMPEGLibrary(AVCodecID codec)
+ {
+   m_codec = codec;
+   if (m_codec==CODEC_ID_H264)
+@@ -348,12 +348,12 @@ bool FFMPEGLibrary::Load()
+   return true;
  }
  
--bool H263_Base_EncoderContext::Init(CodecID codecId)
-+bool H263_Base_EncoderContext::Init(AVCodecID codecId)
+-AVCodec *FFMPEGLibrary::AvcodecFindEncoder(enum CodecID id)
++AVCodec *FFMPEGLibrary::AvcodecFindEncoder(enum AVCodecID id)
  {
-   PTRACE(5, m_prefix, "Opening encoder");
+   return Favcodec_find_encoder(id);
+ }
+ 
+-AVCodec *FFMPEGLibrary::AvcodecFindDecoder(enum CodecID id)
++AVCodec *FFMPEGLibrary::AvcodecFindDecoder(enum AVCodecID id)
+ {
+   WaitAndSignal m(processLock);
  
---- opal-3.10.10/plugins/video/common/dyna.h~	2013-02-20 03:18:05.000000000 +0100
-+++ opal-3.10.10/plugins/video/common/dyna.h	2013-08-29 14:29:42.440080869 +0200
-@@ -88,13 +88,13 @@
+diff -rupN a/plugins/video/common/dyna.h b/plugins/video/common/dyna.h
+--- a/plugins/video/common/dyna.h	2013-02-20 02:18:05.000000000 +0000
++++ b/plugins/video/common/dyna.h	2013-07-22 16:55:47.191281134 +0000
+@@ -88,13 +88,13 @@ class DynaLink
  class FFMPEGLibrary 
  {
    public:
@@ -39,7 +45,7 @@
      AVCodecContext *AvcodecAllocContext(void);
      AVFrame *AvcodecAllocFrame(void);
      int AvcodecOpen(AVCodecContext *ctx, AVCodec *codec);
-@@ -117,15 +117,15 @@
+@@ -117,15 +117,15 @@ class FFMPEGLibrary
      DynaLink m_libAvcodec;
      DynaLink m_libAvutil;
  
@@ -58,34 +64,9 @@
      AVCodecContext *(*Favcodec_alloc_context)(void);
      AVFrame *(*Favcodec_alloc_frame)(void);
      int (*Favcodec_open)(AVCodecContext *ctx, AVCodec *codec);
---- opal-3.10.10/plugins/video/common/dyna.cxx~	2013-02-20 03:18:05.000000000 +0100
-+++ opal-3.10.10/plugins/video/common/dyna.cxx	2013-08-29 14:29:20.729824652 +0200
-@@ -210,7 +210,7 @@
- #endif
- 
- 
--FFMPEGLibrary::FFMPEGLibrary(CodecID codec)
-+FFMPEGLibrary::FFMPEGLibrary(AVCodecID codec)
- {
-   m_codec = codec;
-   if (m_codec==CODEC_ID_H264)
-@@ -348,12 +348,12 @@
-   return true;
- }
- 
--AVCodec *FFMPEGLibrary::AvcodecFindEncoder(enum CodecID id)
-+AVCodec *FFMPEGLibrary::AvcodecFindEncoder(enum AVCodecID id)
- {
-   return Favcodec_find_encoder(id);
- }
- 
--AVCodec *FFMPEGLibrary::AvcodecFindDecoder(enum CodecID id)
-+AVCodec *FFMPEGLibrary::AvcodecFindDecoder(enum AVCodecID id)
- {
-   WaitAndSignal m(processLock);
- 
---- opal-3.10.10/plugins/video/common/ffmpeg/libavcodec/avcodec.h~	2013-02-20 03:18:04.000000000 +0100
-+++ opal-3.10.10/plugins/video/common/ffmpeg/libavcodec/avcodec.h	2013-08-29 14:30:51.204225613 +0200
+diff -rupN a/plugins/video/common/ffmpeg/libavcodec/avcodec.h b/plugins/video/common/ffmpeg/libavcodec/avcodec.h
+--- a/plugins/video/common/ffmpeg/libavcodec/avcodec.h	2013-02-20 02:18:04.000000000 +0000
++++ b/plugins/video/common/ffmpeg/libavcodec/avcodec.h	2013-07-22 16:55:47.167947971 +0000
 @@ -101,7 +101,7 @@
   * 1. no value of a existing codec ID changes (that would break ABI),
   * 2. it is as close as possible to similar codecs.
@@ -95,7 +76,7 @@
      CODEC_ID_NONE,
  
      /* video codecs */
-@@ -1390,7 +1390,7 @@
+@@ -1390,7 +1390,7 @@ typedef struct AVCodecContext {
  
      char codec_name[32];
      enum AVMediaType codec_type; /* see AVMEDIA_TYPE_xxx */
@@ -104,7 +85,7 @@
  
      /**
       * fourcc (LSB first, so "ABCD" -> ('D'<<24) + ('C'<<16) + ('B'<<8) + 'A').
-@@ -2843,7 +2843,7 @@
+@@ -2843,7 +2843,7 @@ typedef struct AVCodec {
       */
      const char *name;
      enum AVMediaType type;
@@ -113,7 +94,7 @@
      int priv_data_size;
      int (*init)(AVCodecContext *);
      int (*encode)(AVCodecContext *, uint8_t *buf, int buf_size, void *data);
-@@ -2898,7 +2898,7 @@
+@@ -2898,7 +2898,7 @@ typedef struct AVHWAccel {
       *
       * See CODEC_ID_xxx
       */
@@ -122,7 +103,7 @@
  
      /**
       * Supported pixel format.
-@@ -3402,10 +3402,10 @@
+@@ -3402,10 +3402,10 @@ void avcodec_register(AVCodec *codec);
  /**
   * Find a registered encoder with a matching codec ID.
   *
@@ -135,7 +116,7 @@
  
  /**
   * Find a registered encoder with the specified name.
-@@ -3418,10 +3418,10 @@
+@@ -3418,10 +3418,10 @@ AVCodec *avcodec_find_encoder_by_name(co
  /**
   * Find a registered decoder with a matching codec ID.
   *
@@ -148,7 +129,7 @@
  
  /**
   * Find a registered decoder with the specified name.
-@@ -3822,7 +3822,7 @@
+@@ -3822,7 +3822,7 @@ char av_get_pict_type_char(int pict_type
   * @param[in] codec_id the codec
   * @return Number of bits per sample or zero if unknown for the given codec.
   */
@@ -157,3 +138,40 @@
  
  #if FF_API_OLD_SAMPLE_FMT
  /**
+diff -rupN a/plugins/video/H.263-1998/h263-1998.cxx b/plugins/video/H.263-1998/h263-1998.cxx
+--- a/plugins/video/H.263-1998/h263-1998.cxx	2013-02-20 02:18:03.000000000 +0000
++++ b/plugins/video/H.263-1998/h263-1998.cxx	2013-07-22 16:55:47.314613571 +0000
+@@ -203,7 +203,7 @@ H263_Base_EncoderContext::~H263_Base_Enc
+   PTRACE(4, m_prefix, "Encoder closed");
+ }
+ 
+-bool H263_Base_EncoderContext::Init(CodecID codecId)
++bool H263_Base_EncoderContext::Init(AVCodecID codecId)
+ {
+   PTRACE(5, m_prefix, "Opening encoder");
+ 
+diff -rupN a/plugins/video/H.263-1998/h263-1998.h b/plugins/video/H.263-1998/h263-1998.h
+--- a/plugins/video/H.263-1998/h263-1998.h	2013-02-20 02:18:03.000000000 +0000
++++ b/plugins/video/H.263-1998/h263-1998.h	2013-07-22 16:55:47.307946942 +0000
+@@ -115,7 +115,7 @@ class H263_Base_EncoderContext
+     virtual ~H263_Base_EncoderContext();
+ 
+     virtual bool Init() = 0;
+-    virtual bool Init(CodecID codecId);
++    virtual bool Init(AVCodecID codecId);
+ 
+     virtual bool SetOptions(const char * const * options);
+     virtual void SetOption(const char * option, const char * value);
+diff -rupN a/plugins/video/H.264/h264-x264.cxx b/plugins/video/H.264/h264-x264.cxx
+--- a/plugins/video/H.264/h264-x264.cxx	2013-02-20 02:18:02.000000000 +0000
++++ b/plugins/video/H.264/h264-x264.cxx	2013-07-22 17:05:35.383661843 +0000
+@@ -40,6 +40,9 @@
+ #include "plugin-config.h"
+ #endif
+ 
++#define FF_IDCT_H264 11
++#define CODEC_FLAG2_SKIP_RD 0x00004000
++
+ #include <codec/opalplugin.hpp>
+ 
+ #include "../common/ffmpeg.h"
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/opal.git/commitdiff/d8899edd8984a2f57daafe2e44d993c37acfce50



More information about the pld-cvs-commit mailing list