Removed elements for codecs not available in ducati firmware: VP6, VP7 and RealVideo
authorOlivier Naudan <o-naudan@ti.com>
Fri, 2 Nov 2012 13:38:43 +0000 (09:38 -0400)
committerVincent Penquerc'h <vincent.penquerch@collabora.co.uk>
Mon, 19 Nov 2012 14:26:48 +0000 (14:26 +0000)
ducativp6dec, ducativp7dec and ducatirvdec are not functional

src/Makefile.am
src/gstducati.c
src/gstducatirvdec.c [deleted file]
src/gstducatirvdec.h [deleted file]
src/gstducativp6dec.c [deleted file]
src/gstducativp6dec.h [deleted file]
src/gstducativp7dec.c [deleted file]
src/gstducativp7dec.h [deleted file]

index 68069a310d5ec8efa0de7fdfcab6f47365412df3..c1a97f0b88f1761b20c2dfbaaab6826144b708f7 100644 (file)
@@ -2,9 +2,6 @@ plugin_LTLIBRARIES = libgstducati.la
 
 # headers we need but don't want installed
 noinst_HEADERS = \
-       gstducatirvdec.h \
-       gstducativp7dec.h \
-       gstducativp6dec.h \
        gstducativc1dec.h \
        gstducatimpeg2dec.h \
        gstducatimpeg4dec.h \
@@ -19,9 +16,6 @@ noinst_HEADERS = \
 
 # sources used to compile this plug-in
 libgstducati_la_SOURCES = \
-       gstducatirvdec.c \
-       gstducativp7dec.c \
-       gstducativp6dec.c \
        gstducativc1dec.c \
        gstducatimpeg2dec.c \
        gstducatimpeg4dec.c \
index 266679453c77eee99fbcdb122eef8897f1f39ed7..bdd867fbfcaa968da241685ad3bdc9643d89fdcd 100644 (file)
@@ -26,9 +26,6 @@
 #include "gstducatimpeg4dec.h"
 #include "gstducatimpeg2dec.h"
 #include "gstducativc1dec.h"
-#include "gstducativp6dec.h"
-#include "gstducativp7dec.h"
-#include "gstducatirvdec.h"
 #include "gstducatijpegdec.h"
 #include "gstducatih264enc.h"
 #include "gstducatimpeg4enc.h"
@@ -71,9 +68,6 @@ plugin_init (GstPlugin * plugin)
 {
   GST_DEBUG_CATEGORY_INIT (gst_ducati_debug, "ducati", 0, "ducati");
 
-  /* TODO .. find some way to reasonably detect if the corresponding
-   * codecs are actually available..
-   */
   return gst_element_register (plugin, "ducatih264dec", GST_RANK_PRIMARY,
       GST_TYPE_DUCATIH264DEC) &&
       gst_element_register (plugin, "ducatimpeg4dec", GST_RANK_PRIMARY,
@@ -82,12 +76,6 @@ plugin_init (GstPlugin * plugin)
       GST_TYPE_DUCATIMPEG2DEC) &&
       gst_element_register (plugin, "ducativc1dec", GST_RANK_PRIMARY,
       GST_TYPE_DUCATIVC1DEC) &&
-      gst_element_register (plugin, "ducativp6dec", GST_RANK_PRIMARY,
-      GST_TYPE_DUCATIVP6DEC) &&
-      gst_element_register (plugin, "ducativp7dec", GST_RANK_PRIMARY,
-      GST_TYPE_DUCATIVP7DEC) &&
-      gst_element_register (plugin, "ducatirvdec", GST_RANK_PRIMARY,
-      GST_TYPE_DUCATIRVDEC) &&
       gst_element_register (plugin, "ducatijpegdec", GST_RANK_PRIMARY,
       GST_TYPE_DUCATIJPEGDEC) &&
       gst_element_register (plugin, "ducatih264enc", GST_RANK_PRIMARY + 1,
diff --git a/src/gstducatirvdec.c b/src/gstducatirvdec.c
deleted file mode 100644 (file)
index f1b650e..0000000
+++ /dev/null
@@ -1,256 +0,0 @@
-/*
- * GStreamer
- * Copyright (c) 2010, Texas Instruments Incorporated
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation
- * version 2.1 of the License.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
- */
-
-/**
- * SECTION:element-ducatirvdec
- *
- * FIXME:Describe ducatirvdec here.
- *
- * <refsect2>
- * <title>Example launch line</title>
- * |[
- * gst-launch -v -m fakesrc ! ducatirvdec ! fakesink silent=TRUE
- * ]|
- * </refsect2>
- */
-
-#ifdef HAVE_CONFIG_H
-#  include <config.h>
-#endif
-
-#include "gstducatirvdec.h"
-
-
-#define PADX  32
-#define PADY  32
-
-
-GST_BOILERPLATE (GstDucatiRVDec, gst_ducati_rvdec, GstDucatiVidDec,
-    GST_TYPE_DUCATIVIDDEC);
-
-static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE ("sink",
-    GST_PAD_SINK,
-    GST_PAD_ALWAYS,
-    GST_STATIC_CAPS ("video/x-pn-realvideo, "
-        "systemstream = (boolean)false, "
-        "rmversion = (int){ 3, 4 }, "
-        "width = (int)[ 16, 2048 ], "
-        "height = (int)[ 16, 2048 ], "
-        "framerate = (fraction)[ 0, max ];")
-    );
-
-/* GstDucatiVidDec vmethod implementations */
-
-static gboolean
-gst_ducati_rvdec_parse_caps (GstDucatiVidDec * vdec, GstStructure * s)
-{
-  GstDucatiRVDec *self = GST_DUCATIRVDEC (vdec);
-
-  if (parent_class->parse_caps (vdec, s)) {
-    gboolean ret = gst_structure_get_int (s, "rmversion", &self->rmversion);
-    if (ret) {
-      IrealVDEC_Params *params = (IrealVDEC_Params *) vdec->params;
-      GST_DEBUG_OBJECT (self, "rmversion: %d", self->rmversion);
-
-      if (self->rmversion == 3) {
-        params->stream_type = 1;
-        params->codec_version = 8;
-      } else if (self->rmversion == 4) {
-        params->stream_type = 1;
-        params->codec_version = 9;
-      } else {
-        ret = FALSE;
-      }
-    }
-
-    return ret;
-  }
-
-  return FALSE;
-}
-
-static void
-gst_ducati_rvdec_update_buffer_size (GstDucatiVidDec * self)
-{
-  /* calculate output buffer parameters: */
-  self->padded_width = ALIGN2 (self->width + (2 * PADX), 7);
-  self->padded_height = self->height + 2 * PADY;
-  self->min_buffers = 8;
-}
-
-static gboolean
-gst_ducati_rvdec_allocate_params (GstDucatiVidDec * vdec, gint params_sz,
-    gint dynparams_sz, gint status_sz, gint inargs_sz, gint outargs_sz)
-{
-  gboolean ret = parent_class->allocate_params (vdec,
-      sizeof (IrealVDEC_Params), sizeof (IrealVDEC_DynamicParams),
-      sizeof (IrealVDEC_Status), sizeof (IrealVDEC_InArgs),
-      sizeof (IrealVDEC_OutArgs));
-
-  if (ret) {
-    /*IrealVDEC_Params *params = (IrealVDEC_Params *) vdec->params;*/
-    vdec->params->displayDelay = IVIDDEC3_DISPLAY_DELAY_1;
-    vdec->dynParams->newFrameFlag = FALSE;
-    vdec->dynParams->lateAcquireArg = -1;
-    vdec->params->numInputDataUnits = 1;
-    vdec->params->numOutputDataUnits = 1;
-  }
-
-  return ret;
-}
-
-static GstBuffer *
-gst_ducati_rvdec_push_input (GstDucatiVidDec * vdec, GstBuffer * buf)
-{
-  GstDucatiRVDec *self = GST_DUCATIRVDEC (vdec);
-  guint8 *data;
-  guint8 val[4];
-  gint i, sz, slice_count;
-
-  /* *** on first buffer, build up the stream header for the codec *** */
-  if (G_UNLIKELY (vdec->first_in_buffer) && vdec->codec_data) {
-
-    sz = GST_BUFFER_SIZE (vdec->codec_data);
-    data = GST_BUFFER_DATA (vdec->codec_data);
-
-    /* header size, 4 bytes, big-endian */
-    GST_WRITE_UINT32_BE (val, sz + 26);
-    push_input (vdec, val, 4);
-
-    /* stream type */
-    if (self->rmversion == 3) {
-      push_input (vdec, (guint8 *)"VIDORV30", 8);
-    } else if (self->rmversion == 4) {
-      push_input (vdec, (guint8 *)"VIDORV40", 8);
-    }
-
-    /* horiz x vert resolution */
-    GST_WRITE_UINT16_BE (val, vdec->width);
-    push_input (vdec, val, 2);
-    GST_WRITE_UINT16_BE (val, vdec->height);
-    push_input (vdec, val, 2);
-
-    /* unknown? */
-    GST_WRITE_UINT32_BE (val, 0x000c0000);
-    push_input (vdec, val, 4);
-
-    /* unknown? may be framerate.. */
-    GST_WRITE_UINT32_BE (val, 0x0000000f);
-    push_input (vdec, val, 4);
-
-    /* unknown? */
-    GST_WRITE_UINT16_BE (val, 0x0000);
-    push_input (vdec, val, 2);
-
-    /* and rest of stream header is the codec_data */
-    push_input (vdec, data, sz);
-  }
-
-  data = GST_BUFFER_DATA (buf);
-  sz = GST_BUFFER_SIZE (buf);
-  slice_count = (*data++) + 1;
-
-  /* payload size, excluding fixed header and slice header */
-  sz -= 1 + (8 * slice_count);
-
-  /* *** insert frame header *** */
-  /* payload size */
-  GST_WRITE_UINT32_BE (val, sz);
-  push_input (vdec, val, 4);
-
-  /* unknown? may be timestamp, hopefully decoder doesn't care */
-  GST_WRITE_UINT32_BE (val, 0x00000001);
-  push_input (vdec, val, 4);
-
-  /* unknown? may be sequence number, hopefully decoder doesn't care */
-  GST_WRITE_UINT16_BE (val, 0x0000);
-  push_input (vdec, val, 2);
-
-  /* unknown? may indicate I frame, hopefully decoder doesn't care */
-  if (GST_BUFFER_FLAG_IS_SET (buf, GST_BUFFER_FLAG_DELTA_UNIT)) {
-    GST_WRITE_UINT16_BE (val, 0x0000);
-  } else {
-    GST_WRITE_UINT16_BE (val, 0x0002);
-  }
-  push_input (vdec, val, 2);
-
-  /* unknown? seems to be always zeros */
-  GST_WRITE_UINT32_BE (val, 0x00000000);
-  push_input (vdec, val, 4);
-
-  /* convert the slice_header to big endian, and note that the codec
-   * expects to get slice_count rather than slice_count-1
-   */
-  GST_WRITE_UINT32_BE (val, slice_count);
-  push_input (vdec, val, 4);
-
-  for (i = 0; i < slice_count; i++) {
-    GST_WRITE_UINT32_BE (val, 0x00000001);
-    push_input (vdec, val, 4);
-
-    data += 4;
-    GST_WRITE_UINT32_BE (val, GST_READ_UINT32_LE (data));
-    data += 4;
-    push_input (vdec, val, 4);
-  }
-
-  /* copy the payload (rest of buffer) */
-  push_input (vdec, data, sz);
-  gst_buffer_unref (buf);
-
-  return NULL;
-}
-
-/* GObject vmethod implementations */
-
-static void
-gst_ducati_rvdec_base_init (gpointer gclass)
-{
-  GstElementClass *element_class = GST_ELEMENT_CLASS (gclass);
-
-  gst_element_class_set_details_simple (element_class,
-      "DucatiRVDec",
-      "Codec/Decoder/Video",
-      "Decodes video in RealVideo (RV8/9/10) format with ducati",
-      "Rob Clark <rob@ti.com>");
-
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sink_factory));
-}
-
-static void
-gst_ducati_rvdec_class_init (GstDucatiRVDecClass * klass)
-{
-  GstDucatiVidDecClass *bclass = GST_DUCATIVIDDEC_CLASS (klass);
-  bclass->codec_name = "ivahd_realvdec";
-  bclass->parse_caps =
-      GST_DEBUG_FUNCPTR (gst_ducati_rvdec_parse_caps);
-  bclass->update_buffer_size =
-      GST_DEBUG_FUNCPTR (gst_ducati_rvdec_update_buffer_size);
-  bclass->allocate_params =
-      GST_DEBUG_FUNCPTR (gst_ducati_rvdec_allocate_params);
-  bclass->push_input =
-      GST_DEBUG_FUNCPTR (gst_ducati_rvdec_push_input);
-}
-
-static void
-gst_ducati_rvdec_init (GstDucatiRVDec * self,
-    GstDucatiRVDecClass * gclass)
-{
-}
diff --git a/src/gstducatirvdec.h b/src/gstducatirvdec.h
deleted file mode 100644 (file)
index a10e1a7..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * GStreamer
- * Copyright (c) 2010, Texas Instruments Incorporated
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation
- * version 2.1 of the License.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
- */
-
-#ifndef __GST_DUCATIRVDEC_H__
-#define __GST_DUCATIRVDEC_H__
-
-#include "gstducatividdec.h"
-
-#include <ti/sdo/codecs/realvdec/irealvdec.h>
-
-
-G_BEGIN_DECLS
-
-#define GST_TYPE_DUCATIRVDEC              (gst_ducati_rvdec_get_type())
-#define GST_DUCATIRVDEC(obj)              (G_TYPE_CHECK_INSTANCE_CAST((obj), GST_TYPE_DUCATIRVDEC, GstDucatiRVDec))
-#define GST_DUCATIRVDEC_CLASS(klass)      (G_TYPE_CHECK_CLASS_CAST((klass), GST_TYPE_DUCATIRVDEC, GstDucatiRVDecClass))
-#define GST_IS_DUCATIRVDEC(obj)           (G_TYPE_CHECK_INSTANCE_TYPE((obj), GST_TYPE_DUCATIRVDEC))
-#define GST_IS_DUCATIRVDEC_CLASS(klass)   (G_TYPE_CHECK_CLASS_TYPE((klass), GST_TYPE_DUCATIRVDEC))
-
-typedef struct _GstDucatiRVDec      GstDucatiRVDec;
-typedef struct _GstDucatiRVDecClass GstDucatiRVDecClass;
-
-struct _GstDucatiRVDec
-{
-  GstDucatiVidDec parent;
-
-  gint rmversion;
-};
-
-struct _GstDucatiRVDecClass
-{
-  GstDucatiVidDecClass parent_class;
-};
-
-GType gst_ducati_rvdec_get_type (void);
-
-G_END_DECLS
-
-#endif /* __GST_DUCATIRVDEC_H__ */
diff --git a/src/gstducativp6dec.c b/src/gstducativp6dec.c
deleted file mode 100644 (file)
index d2bcc36..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-/*
- * GStreamer
- * Copyright (c) 2010, Texas Instruments Incorporated
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation
- * version 2.1 of the License.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
- */
-
-/**
- * SECTION:element-ducativp6dec
- *
- * FIXME:Describe ducativp6dec here.
- *
- * <refsect2>
- * <title>Example launch line</title>
- * |[
- * gst-launch -v -m fakesrc ! ducativp6dec ! fakesink silent=TRUE
- * ]|
- * </refsect2>
- */
-
-#ifdef HAVE_CONFIG_H
-#  include <config.h>
-#endif
-
-#include "gstducativp6dec.h"
-
-
-#define PADX  48
-#define PADY  48
-
-
-GST_BOILERPLATE (GstDucatiVP6Dec, gst_ducati_vp6dec, GstDucatiVidDec,
-    GST_TYPE_DUCATIVIDDEC);
-
-static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE ("sink",
-    GST_PAD_SINK,
-    GST_PAD_ALWAYS,
-    GST_STATIC_CAPS ("video/x-vp6, "
-        "width = (int)[ 16, 2048 ], "
-        "height = (int)[ 16, 2048 ], "
-        "framerate = (fraction)[ 0, max ];")
-    );
-
-/* GstDucatiVidDec vmethod implementations */
-
-static void
-gst_ducati_vp6dec_update_buffer_size (GstDucatiVidDec * self)
-{
-  gint w = self->width;
-  gint h = self->height;
-
-  /* calculate output buffer parameters: */
-  self->padded_width = ALIGN2 (w + (2 * PADX), 7);
-  self->padded_height = h + 2 * PADY;
-  self->min_buffers = 8;
-}
-
-static gboolean
-gst_ducati_vp6dec_allocate_params (GstDucatiVidDec * self, gint params_sz,
-    gint dynparams_sz, gint status_sz, gint inargs_sz, gint outargs_sz)
-{
-  gboolean ret = parent_class->allocate_params (self,
-      sizeof (Ivp6VDEC_Params), sizeof (Ivp6VDEC_DynamicParams),
-      sizeof (Ivp6VDEC_Status), sizeof (Ivp6VDEC_InArgs),
-      sizeof (Ivp6VDEC_OutArgs));
-
-  if (ret) {
-    Ivp6VDEC_Params *params = (Ivp6VDEC_Params *) self->params;
-    self->params->displayDelay = IVIDDEC3_DECODE_ORDER;
-    self->dynParams->newFrameFlag = FALSE;
-    self->dynParams->lateAcquireArg = -1;
-    self->params->numInputDataUnits = 1;
-    self->params->numOutputDataUnits = 1;
-    params->ivfFormat = FALSE;
-    params->payloadHeaderPresent = TRUE;
-  }
-
-  return ret;
-}
-
-/* this should be unneeded in future codec versions: */
-static GstBuffer *
-gst_ducati_vp6dec_push_input (GstDucatiVidDec * vdec, GstBuffer * buf)
-{
-  guint32 sz;
-
-  if (G_UNLIKELY (vdec->first_in_buffer) && vdec->codec_data) {
-    // XXX none of the vp6 clips I've seen have codec_data..
-  }
-
-  /* current codec version requires size prepended on input buffer: */
-  sz = GST_BUFFER_SIZE (buf);
-  push_input (vdec, (guint8 *)&sz, 4);
-
-  push_input (vdec, GST_BUFFER_DATA (buf), sz);
-  gst_buffer_unref (buf);
-
-  return NULL;
-}
-
-
-/* GObject vmethod implementations */
-
-static void
-gst_ducati_vp6dec_base_init (gpointer gclass)
-{
-  GstElementClass *element_class = GST_ELEMENT_CLASS (gclass);
-
-  gst_element_class_set_details_simple (element_class,
-      "DucatiVP6Dec",
-      "Codec/Decoder/Video",
-      "Decodes video in On2 VP6 format with ducati",
-      "Rob Clark <rob@ti.com>");
-
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sink_factory));
-}
-
-static void
-gst_ducati_vp6dec_class_init (GstDucatiVP6DecClass * klass)
-{
-  GstDucatiVidDecClass *bclass = GST_DUCATIVIDDEC_CLASS (klass);
-  bclass->codec_name = "ivahd_vp6dec";
-  bclass->update_buffer_size =
-      GST_DEBUG_FUNCPTR (gst_ducati_vp6dec_update_buffer_size);
-  bclass->allocate_params =
-      GST_DEBUG_FUNCPTR (gst_ducati_vp6dec_allocate_params);
-  bclass->push_input =
-      GST_DEBUG_FUNCPTR (gst_ducati_vp6dec_push_input);
-}
-
-static void
-gst_ducati_vp6dec_init (GstDucatiVP6Dec * self,
-    GstDucatiVP6DecClass * gclass)
-{
-}
diff --git a/src/gstducativp6dec.h b/src/gstducativp6dec.h
deleted file mode 100644 (file)
index f2abcfb..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * GStreamer
- * Copyright (c) 2010, Texas Instruments Incorporated
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation
- * version 2.1 of the License.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
- */
-
-#ifndef __GST_DUCATIVP6DEC_H__
-#define __GST_DUCATIVP6DEC_H__
-
-#include "gstducatividdec.h"
-
-#include <ti/sdo/codecs/vp6dec/ivp6vdec.h>
-
-
-G_BEGIN_DECLS
-
-#define GST_TYPE_DUCATIVP6DEC              (gst_ducati_vp6dec_get_type())
-#define GST_DUCATIVP6DEC(obj)              (G_TYPE_CHECK_INSTANCE_CAST((obj), GST_TYPE_DUCATIVP6DEC, GstDucatiVP6Dec))
-#define GST_DUCATIVP6DEC_CLASS(klass)      (G_TYPE_CHECK_CLASS_CAST((klass), GST_TYPE_DUCATIVP6DEC, GstDucatiVP6DecClass))
-#define GST_IS_DUCATIVP6DEC(obj)           (G_TYPE_CHECK_INSTANCE_TYPE((obj), GST_TYPE_DUCATIVP6DEC))
-#define GST_IS_DUCATIVP6DEC_CLASS(klass)   (G_TYPE_CHECK_CLASS_TYPE((klass), GST_TYPE_DUCATIVP6DEC))
-
-typedef struct _GstDucatiVP6Dec      GstDucatiVP6Dec;
-typedef struct _GstDucatiVP6DecClass GstDucatiVP6DecClass;
-
-struct _GstDucatiVP6Dec
-{
-  GstDucatiVidDec parent;
-};
-
-struct _GstDucatiVP6DecClass
-{
-  GstDucatiVidDecClass parent_class;
-};
-
-GType gst_ducati_vp6dec_get_type (void);
-
-G_END_DECLS
-
-#endif /* __GST_DUCATIVP6DEC_H__ */
diff --git a/src/gstducativp7dec.c b/src/gstducativp7dec.c
deleted file mode 100644 (file)
index 6e53303..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-/*
- * GStreamer
- * Copyright (c) 2010, Texas Instruments Incorporated
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation
- * version 2.1 of the License.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
- */
-
-/**
- * SECTION:element-ducativp7dec
- *
- * FIXME:Describe ducativp7dec here.
- *
- * <refsect2>
- * <title>Example launch line</title>
- * |[
- * gst-launch -v -m fakesrc ! ducativp7dec ! fakesink silent=TRUE
- * ]|
- * </refsect2>
- */
-
-#ifdef HAVE_CONFIG_H
-#  include <config.h>
-#endif
-
-#include "gstducativp7dec.h"
-
-
-#define PADX  48
-#define PADY  48
-
-
-GST_BOILERPLATE (GstDucatiVP7Dec, gst_ducati_vp7dec, GstDucatiVidDec,
-    GST_TYPE_DUCATIVIDDEC);
-
-static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE ("sink",
-    GST_PAD_SINK,
-    GST_PAD_ALWAYS,
-    GST_STATIC_CAPS ("video/x-vp7, "
-        "width = (int)[ 16, 2048 ], "
-        "height = (int)[ 16, 2048 ], "
-        "framerate = (fraction)[ 0, max ];")
-    );
-
-/* GstDucatiVidDec vmethod implementations */
-
-static void
-gst_ducati_vp7dec_update_buffer_size (GstDucatiVidDec * self)
-{
-  gint w = self->width;
-  gint h = self->height;
-
-  /* calculate output buffer parameters: */
-  self->padded_width = ALIGN2 (w + (2 * PADX), 7);
-  self->padded_height = h + 2 * PADY;
-  self->min_buffers = 8;
-}
-
-static gboolean
-gst_ducati_vp7dec_allocate_params (GstDucatiVidDec * self, gint params_sz,
-    gint dynparams_sz, gint status_sz, gint inargs_sz, gint outargs_sz)
-{
-  gboolean ret = parent_class->allocate_params (self,
-      sizeof (Ivp7VDEC_Params), sizeof (Ivp7VDEC_DynamicParams),
-      sizeof (Ivp7VDEC_Status), sizeof (Ivp7VDEC_InArgs),
-      sizeof (Ivp7VDEC_OutArgs));
-
-  if (ret) {
-    Ivp7VDEC_Params *params = (Ivp7VDEC_Params *) self->params;
-    self->params->displayDelay = IVIDDEC3_DECODE_ORDER;
-    self->dynParams->newFrameFlag = FALSE;
-    self->dynParams->lateAcquireArg = -1;
-    self->params->numInputDataUnits = 1;
-    self->params->numOutputDataUnits = 1;
-    params->ivfFormat = FALSE;
-    params->payloadHeaderPresent = TRUE;
-  }
-
-  return ret;
-}
-
-/* this should be unneeded in future codec versions: */
-static GstBuffer *
-gst_ducati_vp7dec_push_input (GstDucatiVidDec * vdec, GstBuffer * buf)
-{
-  guint32 sz;
-
-  if (G_UNLIKELY (vdec->first_in_buffer) && vdec->codec_data) {
-    // XXX none of the vp7 clips I've seen have codec_data..
-  }
-
-  /* current codec version requires size prepended on input buffer: */
-  sz = GST_BUFFER_SIZE (buf);
-  push_input (vdec, (guint8 *)&sz, 4);
-
-  push_input (vdec, GST_BUFFER_DATA (buf), sz);
-  gst_buffer_unref (buf);
-
-  return NULL;
-}
-
-
-/* GObject vmethod implementations */
-
-static void
-gst_ducati_vp7dec_base_init (gpointer gclass)
-{
-  GstElementClass *element_class = GST_ELEMENT_CLASS (gclass);
-
-  gst_element_class_set_details_simple (element_class,
-      "DucatiVP7Dec",
-      "Codec/Decoder/Video",
-      "Decodes video in On2 VP7 format with ducati",
-      "Rob Clark <rob@ti.com>");
-
-  gst_element_class_add_pad_template (element_class,
-      gst_static_pad_template_get (&sink_factory));
-}
-
-static void
-gst_ducati_vp7dec_class_init (GstDucatiVP7DecClass * klass)
-{
-  GstDucatiVidDecClass *bclass = GST_DUCATIVIDDEC_CLASS (klass);
-  bclass->codec_name = "ivahd_vp7dec";
-  bclass->update_buffer_size =
-      GST_DEBUG_FUNCPTR (gst_ducati_vp7dec_update_buffer_size);
-  bclass->allocate_params =
-      GST_DEBUG_FUNCPTR (gst_ducati_vp7dec_allocate_params);
-  bclass->push_input =
-      GST_DEBUG_FUNCPTR (gst_ducati_vp7dec_push_input);
-}
-
-static void
-gst_ducati_vp7dec_init (GstDucatiVP7Dec * self,
-    GstDucatiVP7DecClass * gclass)
-{
-}
diff --git a/src/gstducativp7dec.h b/src/gstducativp7dec.h
deleted file mode 100644 (file)
index a1213ac..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * GStreamer
- * Copyright (c) 2010, Texas Instruments Incorporated
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation
- * version 2.1 of the License.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
- */
-
-#ifndef __GST_DUCATIVP7DEC_H__
-#define __GST_DUCATIVP7DEC_H__
-
-#include "gstducatividdec.h"
-
-#include <ti/sdo/codecs/vp7dec/ivp7vdec.h>
-
-
-G_BEGIN_DECLS
-
-#define GST_TYPE_DUCATIVP7DEC              (gst_ducati_vp7dec_get_type())
-#define GST_DUCATIVP7DEC(obj)              (G_TYPE_CHECK_INSTANCE_CAST((obj), GST_TYPE_DUCATIVP7DEC, GstDucatiVP7Dec))
-#define GST_DUCATIVP7DEC_CLASS(klass)      (G_TYPE_CHECK_CLASS_CAST((klass), GST_TYPE_DUCATIVP7DEC, GstDucatiVP7DecClass))
-#define GST_IS_DUCATIVP7DEC(obj)           (G_TYPE_CHECK_INSTANCE_TYPE((obj), GST_TYPE_DUCATIVP7DEC))
-#define GST_IS_DUCATIVP7DEC_CLASS(klass)   (G_TYPE_CHECK_CLASS_TYPE((klass), GST_TYPE_DUCATIVP7DEC))
-
-typedef struct _GstDucatiVP7Dec      GstDucatiVP7Dec;
-typedef struct _GstDucatiVP7DecClass GstDucatiVP7DecClass;
-
-struct _GstDucatiVP7Dec
-{
-  GstDucatiVidDec parent;
-};
-
-struct _GstDucatiVP7DecClass
-{
-  GstDucatiVidDecClass parent_class;
-};
-
-GType gst_ducati_vp7dec_get_type (void);
-
-G_END_DECLS
-
-#endif /* __GST_DUCATIVP7DEC_H__ */