Commit 43445935 authored by Sebastian Dröge's avatar Sebastian Dröge

Moved 'deinterlace2' from -bad to -good

And rename it to deinterlace.
parent 77c15d10
......@@ -280,6 +280,7 @@ AG_GST_CHECK_PLUGIN(autodetect)
AG_GST_CHECK_PLUGIN(avi)
AG_GST_CHECK_PLUGIN(cutter)
AG_GST_CHECK_PLUGIN(debugutils)
AG_GST_CHECK_PLUGIN(deinterlace)
AG_GST_CHECK_PLUGIN(effectv)
AG_GST_CHECK_PLUGIN(equalizer)
AG_GST_CHECK_PLUGIN(flv)
......@@ -1055,7 +1056,7 @@ gst/auparse/Makefile
gst/autodetect/Makefile
gst/avi/Makefile
gst/cutter/Makefile
gst/debugutils/Makefile
gst/deinterlace/Makefile
gst/effectv/Makefile
gst/equalizer/Makefile
gst/flv/Makefile
......
......@@ -137,6 +137,7 @@ EXTRA_HFILES = \
$(top_srcdir)/gst/cutter/gstcutter.h \
$(top_srcdir)/gst/debugutils/gsttaginject.h \
$(top_srcdir)/gst/debugutils/progressreport.h \
$(top_srcdir)/gst/deinterlace/gstdeinterlace.h \
$(top_srcdir)/gst/equalizer/gstiirequalizer.h \
$(top_srcdir)/gst/equalizer/gstiirequalizer3bands.h \
$(top_srcdir)/gst/equalizer/gstiirequalizer10bands.h \
......
......@@ -50,6 +50,7 @@
<xi:include href="xml/element-cmmldec.xml" />
<xi:include href="xml/element-cmmlenc.xml" />
<xi:include href="xml/element-cutter.xml" />
<xi:include href="xml/element-deinterlace.xml" />
<xi:include href="xml/element-deinterleave.xml" />
<xi:include href="xml/element-directdrawsink.xml" />
<xi:include href="xml/element-directsoundsink.xml" />
......@@ -155,6 +156,7 @@
<xi:include href="xml/plugin-cairo.xml" />
<xi:include href="xml/plugin-cutter.xml" />
<xi:include href="xml/plugin-debug.xml" />
<xi:include href="xml/plugin-deinterlace.xml" />
<xi:include href="xml/plugin-directdraw.xml" />
<xi:include href="xml/plugin-directsound.xml" />
<xi:include href="xml/plugin-dv.xml" />
......
......@@ -464,6 +464,20 @@ GstCutterClass
gst_cutter_get_type
</SECTION>
<SECTION>
<FILE>element-deinterlace</FILE>
<TITLE>deinterlace</TITLE>
GstDeinterlace
<SUBSECTION Standard>
GstDeinterlaceClass
GST_IS_DEINTERLACE
GST_IS_DEINTERLACE_CLASS
GST_DEINTERLACE
GST_DEINTERLACE_CLASS
GST_TYPE_DEINTERLACE
gst_deinterlace_get_type
</SECTION>
<SECTION>
<FILE>element-deinterleave</FILE>
<TITLE>deinterleave</TITLE>
......
......@@ -19918,3 +19918,43 @@
<DEFAULT>TRUE</DEFAULT>
</ARG>
<ARG>
<NAME>GstDeinterlace::fields</NAME>
<TYPE>GstDeinterlaceFields</TYPE>
<RANGE></RANGE>
<FLAGS>rw</FLAGS>
<NICK>fields</NICK>
<BLURB>Fields to use for deinterlacing.</BLURB>
<DEFAULT>All fields</DEFAULT>
</ARG>
<ARG>
<NAME>GstDeinterlace::method</NAME>
<TYPE>GstDeinterlaceMethods</TYPE>
<RANGE></RANGE>
<FLAGS>rw</FLAGS>
<NICK>Method</NICK>
<BLURB>Deinterlace Method.</BLURB>
<DEFAULT>Motion Adaptive: Advanced Detection</DEFAULT>
</ARG>
<ARG>
<NAME>GstDeinterlace::mode</NAME>
<TYPE>GstDeinterlaceModes</TYPE>
<RANGE></RANGE>
<FLAGS>rw</FLAGS>
<NICK>Mode</NICK>
<BLURB>Deinterlace Mode.</BLURB>
<DEFAULT>Enfore deinterlacing</DEFAULT>
</ARG>
<ARG>
<NAME>GstDeinterlace::tff</NAME>
<TYPE>GstDeinterlaceFieldLayout</TYPE>
<RANGE></RANGE>
<FLAGS>rw</FLAGS>
<NICK>tff</NICK>
<BLURB>Deinterlace top field first.</BLURB>
<DEFAULT>Auto detection</DEFAULT>
</ARG>
......@@ -142,6 +142,8 @@ GObject
GstID3Demux
GstGoom
GstGoom2k1
GstFLVDemux
GstFlvMux
GstMultipartDemux
GstMultipartMux
GstMuLawEnc
......@@ -187,6 +189,7 @@ GObject
GstInterleave
GstDeinterleave
GstMonoscope
GstDeinterlace
GstWavEnc
GstAuParse
GstRTPDepay
......
......@@ -40,4 +40,6 @@ GstSpeexEnc GstTagSetter GstPreset
GstOssMixerElement GstImplementsInterface GstMixer
GstMatroskaMux GstTagSetter
GstVideoMixer GstChildProxy
GstFlvMux GstTagSetter
GstAviMux GstTagSetter
GstDeinterlace GstChildProxy
<plugin>
<name>deinterlace</name>
<description>Deinterlacer</description>
<filename>../../gst/deinterlace/.libs/libgstdeinterlace.so</filename>
<basename>libgstdeinterlace.so</basename>
<version>0.10.14.2</version>
<license>LGPL</license>
<source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin>
<elements>
<element>
<name>deinterlace</name>
<longname>Deinterlacer</longname>
<class>Filter/Video</class>
<description>Deinterlace Methods ported from DScaler/TvTime</description>
<author>Martin Eikermann &lt;meiker@upb.de&gt;, Sebastian Dröge &lt;slomo@circular-chaos.org&gt;</author>
<pads>
<caps>
<name>sink</name>
<direction>sink</direction>
<presence>always</presence>
<details>video/x-raw-yuv, format=(fourcc)YUY2, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-yuv, format=(fourcc)YVYU, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
</caps>
<caps>
<name>src</name>
<direction>source</direction>
<presence>always</presence>
<details>video/x-raw-yuv, format=(fourcc)YUY2, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-yuv, format=(fourcc)YVYU, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
</caps>
</pads>
</element>
</elements>
</plugin>
\ No newline at end of file
plugin_LTLIBRARIES = libgstdeinterlace2.la
plugin_LTLIBRARIES = libgstdeinterlace.la
libgstdeinterlace2_la_SOURCES = \
gstdeinterlace2.c \
libgstdeinterlace_la_SOURCES = \
gstdeinterlace.c \
tvtime/greedy.c \
tvtime/greedyh.c \
tvtime/vfir.c \
......@@ -13,15 +13,15 @@ libgstdeinterlace2_la_SOURCES = \
tvtime/linearblend.c \
tvtime/scalerbob.c
libgstdeinterlace2_la_CFLAGS = $(GST_CFLAGS) \
libgstdeinterlace_la_CFLAGS = $(GST_CFLAGS) \
$(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(LIBOIL_CFLAGS)
libgstdeinterlace2_la_LIBADD = $(GST_LIBS) \
libgstdeinterlace_la_LIBADD = $(GST_LIBS) \
$(GST_PLUGINS_BASE_LIBS) -lgstvideo-$(GST_MAJORMINOR) $(GST_BASE_LIBS) $(LIBOIL_LIBS)
libgstdeinterlace2_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
libgstdeinterlace2_la_LIBTOOLFLAGS = --tag=disable-static
libgstdeinterlace_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
libgstdeinterlace_la_LIBTOOLFLAGS = --tag=disable-static
noinst_HEADERS = \
gstdeinterlace2.h \
gstdeinterlace.h \
tvtime/mmx.h \
tvtime/sse.h \
tvtime/greedyh.asm \
......
......@@ -19,8 +19,8 @@
* Boston, MA 02111-1307, USA.
*/
#ifndef __GST_DEINTERLACE_2_H__
#define __GST_DEINTERLACE_2_H__
#ifndef __GST_DEINTERLACE_H__
#define __GST_DEINTERLACE_H__
#include <gst/gst.h>
#include <gst/base/gstbasetransform.h>
......@@ -36,19 +36,19 @@
G_BEGIN_DECLS
#define GST_TYPE_DEINTERLACE2 \
(gst_deinterlace2_get_type())
#define GST_DEINTERLACE2(obj) \
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_DEINTERLACE2,GstDeinterlace2))
#define GST_DEINTERLACE2_CLASS(klass) \
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_DEINTERLACE2,GstDeinterlace2))
#define GST_IS_DEINTERLACE2(obj) \
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_DEINTERLACE2))
#define GST_IS_DEINTERLACE2_CLASS(obj) \
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_DEINTERLACE2))
#define GST_TYPE_DEINTERLACE \
(gst_deinterlace_get_type())
#define GST_DEINTERLACE(obj) \
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_DEINTERLACE,GstDeinterlace))
#define GST_DEINTERLACE_CLASS(klass) \
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_DEINTERLACE,GstDeinterlace))
#define GST_IS_DEINTERLACE(obj) \
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_DEINTERLACE))
#define GST_IS_DEINTERLACE_CLASS(obj) \
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_DEINTERLACE))
typedef struct _GstDeinterlace2 GstDeinterlace2;
typedef struct _GstDeinterlace2Class GstDeinterlace2Class;
typedef struct _GstDeinterlace GstDeinterlace;
typedef struct _GstDeinterlaceClass GstDeinterlaceClass;
#define GST_TYPE_DEINTERLACE_METHOD (gst_deinterlace_method_get_type ())
#define GST_IS_DEINTERLACE_METHOD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_DEINTERLACE_METHOD))
......@@ -74,7 +74,7 @@ struct _GstDeinterlaceMethodClass {
guint fields_required;
guint latency;
void (*deinterlace_frame) (GstDeinterlaceMethod *self, GstDeinterlace2 * parent, GstBuffer *outbuf);
void (*deinterlace_frame) (GstDeinterlaceMethod *self, GstDeinterlace * parent, GstBuffer *outbuf);
const gchar *name;
const gchar *nick;
......@@ -137,8 +137,8 @@ struct _GstDeinterlaceSimpleMethod {
struct _GstDeinterlaceSimpleMethodClass {
GstDeinterlaceMethodClass parent_class;
void (*interpolate_scanline) (GstDeinterlaceMethod *self, GstDeinterlace2 * parent, guint8 *out, GstDeinterlaceScanlineData *scanlines, gint width);
void (*copy_scanline) (GstDeinterlaceMethod *self, GstDeinterlace2 * parent, guint8 *out, GstDeinterlaceScanlineData *scanlines, gint width);
void (*interpolate_scanline) (GstDeinterlaceMethod *self, GstDeinterlace * parent, guint8 *out, GstDeinterlaceScanlineData *scanlines, gint width);
void (*copy_scanline) (GstDeinterlaceMethod *self, GstDeinterlace * parent, guint8 *out, GstDeinterlaceScanlineData *scanlines, gint width);
};
GType gst_deinterlace_simple_method_get_type (void);
......@@ -161,39 +161,39 @@ typedef struct
typedef enum
{
GST_DEINTERLACE2_TOMSMOCOMP,
GST_DEINTERLACE2_GREEDY_H,
GST_DEINTERLACE2_GREEDY_L,
GST_DEINTERLACE2_VFIR,
GST_DEINTERLACE2_LINEAR,
GST_DEINTERLACE2_LINEAR_BLEND,
GST_DEINTERLACE2_SCALER_BOB,
GST_DEINTERLACE2_WEAVE,
GST_DEINTERLACE2_WEAVE_TFF,
GST_DEINTERLACE2_WEAVE_BFF
} GstDeinterlace2Methods;
GST_DEINTERLACE_TOMSMOCOMP,
GST_DEINTERLACE_GREEDY_H,
GST_DEINTERLACE_GREEDY_L,
GST_DEINTERLACE_VFIR,
GST_DEINTERLACE_LINEAR,
GST_DEINTERLACE_LINEAR_BLEND,
GST_DEINTERLACE_SCALER_BOB,
GST_DEINTERLACE_WEAVE,
GST_DEINTERLACE_WEAVE_TFF,
GST_DEINTERLACE_WEAVE_BFF
} GstDeinterlaceMethods;
typedef enum
{
GST_DEINTERLACE2_ALL, /* All (missing data is interp.) */
GST_DEINTERLACE2_TF, /* Top Fields Only */
GST_DEINTERLACE2_BF /* Bottom Fields Only */
} GstDeinterlace2Fields;
GST_DEINTERLACE_ALL, /* All (missing data is interp.) */
GST_DEINTERLACE_TF, /* Top Fields Only */
GST_DEINTERLACE_BF /* Bottom Fields Only */
} GstDeinterlaceFields;
typedef enum
{
GST_DEINTERLACE2_LAYOUT_AUTO,
GST_DEINTERLACE2_LAYOUT_TFF,
GST_DEINTERLACE2_LAYOUT_BFF
} GstDeinterlace2FieldLayout;
GST_DEINTERLACE_LAYOUT_AUTO,
GST_DEINTERLACE_LAYOUT_TFF,
GST_DEINTERLACE_LAYOUT_BFF
} GstDeinterlaceFieldLayout;
typedef enum {
GST_DEINTERLACE2_MODE_AUTO,
GST_DEINTERLACE2_MODE_INTERLACED,
GST_DEINTERLACE2_MODE_DISABLED
} GstDeinterlace2Mode;
GST_DEINTERLACE_MODE_AUTO,
GST_DEINTERLACE_MODE_INTERLACED,
GST_DEINTERLACE_MODE_DISABLED
} GstDeinterlaceMode;
struct _GstDeinterlace2
struct _GstDeinterlace
{
GstElement parent;
......@@ -201,9 +201,9 @@ struct _GstDeinterlace2
/* <private> */
GstDeinterlace2Mode mode;
GstDeinterlaceMode mode;
GstDeinterlace2FieldLayout field_layout;
GstDeinterlaceFieldLayout field_layout;
guint frame_size;
gint frame_rate_n, frame_rate_d;
......@@ -212,9 +212,9 @@ struct _GstDeinterlace2
/* Duration of one field */
GstClockTime field_duration;
GstDeinterlace2Fields fields;
GstDeinterlaceFields fields;
GstDeinterlace2Methods method_id;
GstDeinterlaceMethods method_id;
GstDeinterlaceMethod *method;
/* The most recent pictures
......@@ -248,12 +248,12 @@ struct _GstDeinterlace2
guint field_stride;
};
struct _GstDeinterlace2Class
struct _GstDeinterlaceClass
{
GstElementClass parent_class;
};
GType gst_deinterlace2_get_type (void);
GType gst_deinterlace_get_type (void);
G_END_DECLS
#endif /* __GST_DEINTERLACE_2_H__ */
#endif /* __GST_DEINTERLACE_H__ */
......@@ -34,7 +34,7 @@
#include "_stdint.h"
#include "gstdeinterlace2.h"
#include "gstdeinterlace.h"
#include <string.h>
#define GST_TYPE_DEINTERLACE_METHOD_GREEDY_L (gst_deinterlace_method_greedy_l_get_type ())
......@@ -335,7 +335,7 @@ deinterlace_greedy_packed422_scanline_mmxext (GstDeinterlaceMethodGreedyL *
static void
deinterlace_frame_di_greedy (GstDeinterlaceMethod * d_method,
GstDeinterlace2 * object, GstBuffer * outbuf)
GstDeinterlace * object, GstBuffer * outbuf)
{
GstDeinterlaceMethodGreedyL *self =
GST_DEINTERLACE_METHOD_GREEDY_L (d_method);
......
......@@ -37,7 +37,7 @@
#include "gst/gst.h"
#include "plugins.h"
#include "gstdeinterlace2.h"
#include "gstdeinterlace.h"
#define GST_TYPE_DEINTERLACE_METHOD_GREEDY_H (gst_deinterlace_method_greedy_h_get_type ())
#define GST_IS_DEINTERLACE_METHOD_GREEDY_H(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_DEINTERLACE_METHOD_GREEDY_H))
......@@ -235,7 +235,7 @@ greedyDScaler_C (GstDeinterlaceMethodGreedyH * self, uint8_t * L1, uint8_t * L2,
static void
deinterlace_frame_di_greedyh (GstDeinterlaceMethod * d_method,
GstDeinterlace2 * object, GstBuffer * outbuf)
GstDeinterlace * object, GstBuffer * outbuf)
{
GstDeinterlaceMethodGreedyH *self =
GST_DEINTERLACE_METHOD_GREEDY_H (d_method);
......
......@@ -23,7 +23,7 @@
#endif
#include "_stdint.h"
#include "gstdeinterlace2.h"
#include "gstdeinterlace.h"
#include <string.h>
#define GST_TYPE_DEINTERLACE_METHOD_LINEAR (gst_deinterlace_method_linear_get_type ())
......@@ -42,7 +42,7 @@ typedef GstDeinterlaceSimpleMethodClass GstDeinterlaceMethodLinearClass;
static void
deinterlace_scanline_linear_c (GstDeinterlaceMethod * self,
GstDeinterlace2 * parent, guint8 * out,
GstDeinterlace * parent, guint8 * out,
GstDeinterlaceScanlineData * scanlines, gint width)
{
gint i;
......@@ -56,7 +56,7 @@ deinterlace_scanline_linear_c (GstDeinterlaceMethod * self,
#include "mmx.h"
static void
deinterlace_scanline_linear_mmx (GstDeinterlaceMethod * self,
GstDeinterlace2 * parent, guint8 * out,
GstDeinterlace * parent, guint8 * out,
GstDeinterlaceScanlineData * scanlines, gint width)
{
const mmx_t shiftmask = { 0xfefffefffefffeffULL }; /* To avoid shifting chroma to luma. */
......@@ -128,7 +128,7 @@ deinterlace_scanline_linear_mmx (GstDeinterlaceMethod * self,
#include "sse.h"
static void
deinterlace_scanline_linear_mmxext (GstDeinterlaceMethod * self,
GstDeinterlace2 * parent, guint8 * out,
GstDeinterlace * parent, guint8 * out,
GstDeinterlaceScanlineData * scanlines, gint width)
{
gint i;
......
......@@ -27,7 +27,7 @@
#endif
#include "_stdint.h"
#include "gstdeinterlace2.h"
#include "gstdeinterlace.h"
#include <string.h>
#define GST_TYPE_DEINTERLACE_METHOD_LINEAR_BLEND (gst_deinterlace_method_linear_blend_get_type ())
......@@ -47,7 +47,7 @@ typedef GstDeinterlaceSimpleMethodClass GstDeinterlaceMethodLinearBlendClass;
static inline void
deinterlace_scanline_linear_blend_c (GstDeinterlaceMethod * self,
GstDeinterlace2 * parent, guint8 * out,
GstDeinterlace * parent, guint8 * out,
GstDeinterlaceScanlineData * scanlines, gint width)
{
guint8 *t0 = scanlines->t0;
......@@ -63,7 +63,7 @@ deinterlace_scanline_linear_blend_c (GstDeinterlaceMethod * self,
static inline void
deinterlace_scanline_linear_blend2_c (GstDeinterlaceMethod * self,
GstDeinterlace2 * parent, guint8 * out,
GstDeinterlace * parent, guint8 * out,
GstDeinterlaceScanlineData * scanlines, gint width)
{
guint8 *m0 = scanlines->m0;
......@@ -80,7 +80,7 @@ deinterlace_scanline_linear_blend2_c (GstDeinterlaceMethod * self,
#include "mmx.h"
static inline void
deinterlace_scanline_linear_blend_mmx (GstDeinterlaceMethod * self,
GstDeinterlace2 * parent, guint8 * out,
GstDeinterlace * parent, guint8 * out,
GstDeinterlaceScanlineData * scanlines, gint width)
{
guint8 *t0 = scanlines->t0;
......@@ -137,7 +137,7 @@ deinterlace_scanline_linear_blend_mmx (GstDeinterlaceMethod * self,
static inline void
deinterlace_scanline_linear_blend2_mmx (GstDeinterlaceMethod * self,
GstDeinterlace2 * parent, guint8 * out,
GstDeinterlace * parent, guint8 * out,
GstDeinterlaceScanlineData * scanlines, gint width)
{
guint8 *m0 = scanlines->m0;
......
......@@ -23,7 +23,7 @@
#endif
#include "_stdint.h"
#include "gstdeinterlace2.h"
#include "gstdeinterlace.h"
#include <string.h>
#define GST_TYPE_DEINTERLACE_METHOD_SCALER_BOB (gst_deinterlace_method_scaler_bob_get_type ())
......@@ -43,7 +43,7 @@ typedef GstDeinterlaceSimpleMethodClass GstDeinterlaceMethodScalerBobClass;
static void
deinterlace_scanline_scaler_bob (GstDeinterlaceMethod * self,
GstDeinterlace2 * parent, guint8 * out,
GstDeinterlace * parent, guint8 * out,
GstDeinterlaceScanlineData * scanlines, gint width)
{
oil_memcpy (out, scanlines->t0, parent->row_stride);
......
......@@ -26,7 +26,7 @@
#include <string.h>
#include "gst/gst.h"
#include "gstdeinterlace2.h"
#include "gstdeinterlace.h"
#include "plugins.h"
#define GST_TYPE_DEINTERLACE_METHOD_TOMSMOCOMP (gst_deinterlace_method_tomsmocomp_get_type ())
......
......@@ -61,7 +61,7 @@
#define SEFUNC(x) Search_Effort_C_##x(src_pitch, dst_pitch, rowsize, pWeaveSrc, pWeaveSrcP, pWeaveDest, IsOdd, pCopySrc, pCopySrcP, FldHeight)
#endif
void FUNCT_NAME(GstDeinterlaceMethod *d_method, GstDeinterlace2* object, GstBuffer *outbuf)
void FUNCT_NAME(GstDeinterlaceMethod *d_method, GstDeinterlace* object, GstBuffer *outbuf)
{
GstDeinterlaceMethodTomsMoComp *self = GST_DEINTERLACE_METHOD_TOMSMOCOMP (d_method);
long SearchEffort = self->search_effort;
......
......@@ -34,7 +34,7 @@
#endif
#include "_stdint.h"
#include "gstdeinterlace2.h"
#include "gstdeinterlace.h"
#include <string.h>
#define GST_TYPE_DEINTERLACE_METHOD_VFIR (gst_deinterlace_method_vfir_get_type ())
......@@ -62,7 +62,7 @@ typedef GstDeinterlaceSimpleMethodClass GstDeinterlaceMethodVFIRClass;
* C implementation.
*/
static inline void
deinterlace_line_c (GstDeinterlaceMethod * self, GstDeinterlace2 * parent,
deinterlace_line_c (GstDeinterlaceMethod * self, GstDeinterlace * parent,
guint8 * dst, GstDeinterlaceScanlineData * scanlines, gint width)
{
gint sum;
......@@ -92,7 +92,7 @@ deinterlace_line_c (GstDeinterlaceMethod * self, GstDeinterlace2 * parent,
#ifdef BUILD_X86_ASM
#include "mmx.h"
static void
deinterlace_line_mmx (GstDeinterlaceMethod * self, GstDeinterlace2 * parent,
deinterlace_line_mmx (GstDeinterlaceMethod * self, GstDeinterlace * parent,
guint8 * dst, GstDeinterlaceScanlineData * scanlines, gint width)
{
mmx_t rounder;
......
......@@ -24,7 +24,7 @@
#endif
#include "_stdint.h"
#include "gstdeinterlace2.h"
#include "gstdeinterlace.h"
#include <string.h>
#define GST_TYPE_DEINTERLACE_METHOD_WEAVE (gst_deinterlace_method_weave_get_type ())
......@@ -44,14 +44,14 @@ typedef GstDeinterlaceSimpleMethodClass GstDeinterlaceMethodWeaveClass;
static void
deinterlace_scanline_weave (GstDeinterlaceMethod * self,
GstDeinterlace2 * parent, guint8 * out,
GstDeinterlace * parent, guint8 * out,
GstDeinterlaceScanlineData * scanlines, gint width)
{
oil_memcpy (out, scanlines->m1, parent->row_stride);
}
static void
copy_scanline (GstDeinterlaceMethod * self, GstDeinterlace2 * parent,
copy_scanline (GstDeinterlaceMethod * self, GstDeinterlace * parent,
guint8 * out, GstDeinterlaceScanlineData * scanlines, gint width)
{
oil_memcpy (out, scanlines->m0, parent->row_stride);
......
......@@ -24,7 +24,7 @@
#endif
#include "_stdint.h"
#include "gstdeinterlace2.h"
#include "gstdeinterlace.h"
#include <string.h>
#define GST_TYPE_DEINTERLACE_METHOD_WEAVE_BFF (gst_deinterlace_method_weave_bff_get_type ())
......@@ -44,14 +44,14 @@ typedef GstDeinterlaceSimpleMethodClass GstDeinterlaceMethodWeaveBFFClass;
static void
deinterlace_scanline_weave (GstDeinterlaceMethod * self,
GstDeinterlace2 * parent, guint8 * out,
GstDeinterlace * parent, guint8 * out,
GstDeinterlaceScanlineData * scanlines, gint width)
{
oil_memcpy (out, scanlines->m1, parent->row_stride);
}
static void
copy_scanline (GstDeinterlaceMethod * self, GstDeinterlace2 * parent,
copy_scanline (GstDeinterlaceMethod * self, GstDeinterlace * parent,
guint8 * out, GstDeinterlaceScanlineData * scanlines, gint width)
{
/* FIXME: original code used m2 and m0 but this looks really bad */
......
......@@ -24,7 +24,7 @@
#endif
#include "_stdint.h"
#include "gstdeinterlace2.h"
#include "gstdeinterlace.h"
#include <string.h>
#define GST_TYPE_DEINTERLACE_METHOD_WEAVE_TFF (gst_deinterlace_method_weave_tff_get_type ())
......@@ -44,14 +44,14 @@ typedef GstDeinterlaceSimpleMethodClass GstDeinterlaceMethodWeaveTFFClass;
static void
deinterlace_scanline_weave (GstDeinterlaceMethod * self,
GstDeinterlace2 * parent, guint8 * out,
GstDeinterlace * parent, guint8 * out,
GstDeinterlaceScanlineData * scanlines, gint width)
{
oil_memcpy (out, scanlines->m1, parent->row_stride);
}
static void
copy_scanline (GstDeinterlaceMethod * self, GstDeinterlace2 * parent,
copy_scanline (GstDeinterlaceMethod * self, GstDeinterlace * parent,
guint8 * out, GstDeinterlaceScanlineData * scanlines, gint width)
{
/* FIXME: original code used m2 and m0 but this looks really bad */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment