remove gst-libs from gst-plugins module as it is in gst-plugins-base now
authorChristian Schaller <uraeus@gnome.org>
Fri, 6 May 2005 11:41:28 +0000 (11:41 +0000)
committerChristian Schaller <uraeus@gnome.org>
Fri, 6 May 2005 11:41:28 +0000 (11:41 +0000)
Original commit message from CVS:
remove gst-libs from gst-plugins module as it is in gst-plugins-base now

113 files changed:
ChangeLog
gst-libs/Makefile.am [deleted file]
gst-libs/README [new file with mode: 0644]
gst-libs/ext/Makefile.am [deleted file]
gst-libs/gst/audio/Makefile.am [deleted file]
gst-libs/gst/audio/audio.c [deleted file]
gst-libs/gst/audio/audio.def [deleted file]
gst-libs/gst/audio/audio.h [deleted file]
gst-libs/gst/audio/audio.vcproj [deleted file]
gst-libs/gst/audio/audioclock.c [deleted file]
gst-libs/gst/audio/audioclock.h [deleted file]
gst-libs/gst/audio/audiofilter.vcproj [deleted file]
gst-libs/gst/audio/gstaudiofilter.c [deleted file]
gst-libs/gst/audio/gstaudiofilter.h [deleted file]
gst-libs/gst/audio/gstaudiofiltertemplate.c [deleted file]
gst-libs/gst/audio/make_filter [deleted file]
gst-libs/gst/audio/multichannel.c [deleted file]
gst-libs/gst/audio/multichannel.h [deleted file]
gst-libs/gst/audio/testchannels.c [deleted file]
gst-libs/gst/colorbalance/Makefile.am [deleted file]
gst-libs/gst/colorbalance/colorbalance-marshal.list [deleted file]
gst-libs/gst/colorbalance/colorbalance.c [deleted file]
gst-libs/gst/colorbalance/colorbalance.h [deleted file]
gst-libs/gst/colorbalance/colorbalance.vcproj [deleted file]
gst-libs/gst/colorbalance/colorbalancechannel.c [deleted file]
gst-libs/gst/colorbalance/colorbalancechannel.h [deleted file]
gst-libs/gst/floatcast/Makefile.am [deleted file]
gst-libs/gst/floatcast/floatcast.h [deleted file]
gst-libs/gst/gconf/Makefile.am [deleted file]
gst-libs/gst/gconf/gconf.c [deleted file]
gst-libs/gst/gconf/gconf.h [deleted file]
gst-libs/gst/gconf/test-gconf.c [deleted file]
gst-libs/gst/idct/Makefile.am [deleted file]
gst-libs/gst/idct/README [deleted file]
gst-libs/gst/idct/dct.h [deleted file]
gst-libs/gst/idct/doieee [deleted file]
gst-libs/gst/idct/fastintidct.c [deleted file]
gst-libs/gst/idct/floatidct.c [deleted file]
gst-libs/gst/idct/idct.c [deleted file]
gst-libs/gst/idct/idct.h [deleted file]
gst-libs/gst/idct/idtc.vcproj [deleted file]
gst-libs/gst/idct/ieeetest.c [deleted file]
gst-libs/gst/idct/intidct.c [deleted file]
gst-libs/gst/media-info/Makefile.am [deleted file]
gst-libs/gst/media-info/README [deleted file]
gst-libs/gst/media-info/media-info-priv.c [deleted file]
gst-libs/gst/media-info/media-info-priv.h [deleted file]
gst-libs/gst/media-info/media-info-test.c [deleted file]
gst-libs/gst/media-info/media-info.c [deleted file]
gst-libs/gst/media-info/media-info.h [deleted file]
gst-libs/gst/media-info/media-info.vcproj [deleted file]
gst-libs/gst/mixer/Makefile.am [deleted file]
gst-libs/gst/mixer/mixer-marshal.list [deleted file]
gst-libs/gst/mixer/mixer.c [deleted file]
gst-libs/gst/mixer/mixer.h [deleted file]
gst-libs/gst/mixer/mixer.vcproj [deleted file]
gst-libs/gst/mixer/mixeroptions.c [deleted file]
gst-libs/gst/mixer/mixeroptions.h [deleted file]
gst-libs/gst/mixer/mixertrack.c [deleted file]
gst-libs/gst/mixer/mixertrack.h [deleted file]
gst-libs/gst/navigation/Makefile.am [deleted file]
gst-libs/gst/navigation/navigation.c [deleted file]
gst-libs/gst/navigation/navigation.h [deleted file]
gst-libs/gst/navigation/navigation.vcproj [deleted file]
gst-libs/gst/play/Makefile.am [deleted file]
gst-libs/gst/play/play.c [deleted file]
gst-libs/gst/propertyprobe/Makefile.am [deleted file]
gst-libs/gst/propertyprobe/propertyprobe.c [deleted file]
gst-libs/gst/propertyprobe/propertyprobe.h [deleted file]
gst-libs/gst/propertyprobe/propertyprobe.vcproj [deleted file]
gst-libs/gst/resample/Makefile.am [deleted file]
gst-libs/gst/resample/README [deleted file]
gst-libs/gst/resample/dtof.c [deleted file]
gst-libs/gst/resample/dtos.c [deleted file]
gst-libs/gst/resample/functable.c [deleted file]
gst-libs/gst/resample/private.h [deleted file]
gst-libs/gst/resample/resample.c [deleted file]
gst-libs/gst/resample/resample.h [deleted file]
gst-libs/gst/resample/resample.vcproj [deleted file]
gst-libs/gst/resample/test.c [deleted file]
gst-libs/gst/riff/Makefile.am [deleted file]
gst-libs/gst/riff/riff-ids.h [deleted file]
gst-libs/gst/riff/riff-media.c [deleted file]
gst-libs/gst/riff/riff-media.h [deleted file]
gst-libs/gst/riff/riff-read.c [deleted file]
gst-libs/gst/riff/riff-read.h [deleted file]
gst-libs/gst/riff/riff.c [deleted file]
gst-libs/gst/riff/riff.def [deleted file]
gst-libs/gst/riff/riff.vcproj [deleted file]
gst-libs/gst/tag/Makefile.am [deleted file]
gst-libs/gst/tag/tag.h [deleted file]
gst-libs/gst/tuner/Makefile.am [deleted file]
gst-libs/gst/tuner/tuner-marshal.list [deleted file]
gst-libs/gst/tuner/tuner.c [deleted file]
gst-libs/gst/tuner/tuner.h [deleted file]
gst-libs/gst/tuner/tuner.vcproj [deleted file]
gst-libs/gst/tuner/tunerchannel.c [deleted file]
gst-libs/gst/tuner/tunerchannel.h [deleted file]
gst-libs/gst/tuner/tunernorm.c [deleted file]
gst-libs/gst/tuner/tunernorm.h [deleted file]
gst-libs/gst/video/Makefile.am [deleted file]
gst-libs/gst/video/gstvideosink.c [deleted file]
gst-libs/gst/video/video.c [deleted file]
gst-libs/gst/video/video.h [deleted file]
gst-libs/gst/video/video.vcproj [deleted file]
gst-libs/gst/video/videosink.h [deleted file]
gst-libs/gst/xoverlay/Makefile.am [deleted file]
gst-libs/gst/xoverlay/xoverlay.c [deleted file]
gst-libs/gst/xoverlay/xoverlay.h [deleted file]
gst-libs/gst/xoverlay/xoverlay.vcproj [deleted file]
gst-libs/gst/xwindowlistener/Makefile.am [deleted file]
gst-libs/gst/xwindowlistener/xwindowlistener.c [deleted file]
gst-libs/gst/xwindowlistener/xwindowlistener.h [deleted file]

index 0a98f78..f83f6e3 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2005-05-06  Christian Schaller  <uraeus@gnome.org>
+
+       * gst-libs: Remove all files as this is in gst-plugins-base now
+       * gst-libs/README: add a remove informing of this move
+
 2005-05-06  Christian Schaller <uraeus@gnome.org> 
 
        * PORTED_09: update to add videofilter
diff --git a/gst-libs/Makefile.am b/gst-libs/Makefile.am
deleted file mode 100644 (file)
index 4a2c7b6..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-SUBDIRS = gst ext
-
-DIST_SUBDIRS = gst ext
diff --git a/gst-libs/README b/gst-libs/README
new file mode 100644 (file)
index 0000000..1a7c92f
--- /dev/null
@@ -0,0 +1 @@
+Everything that used to be here is now in gst-plugins-base module
diff --git a/gst-libs/ext/Makefile.am b/gst-libs/ext/Makefile.am
deleted file mode 100644 (file)
index f9beb01..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-SUBDIRS =
-DIST_SUBDIRS =
diff --git a/gst-libs/gst/audio/Makefile.am b/gst-libs/gst/audio/Makefile.am
deleted file mode 100644 (file)
index f00717b..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-# variables used for enum/marshal generation
-glib_enum_headers=multichannel.h
-glib_enum_define=GST_AUDIO
-glib_enum_prefix=gst_audio
-
-built_sources = multichannel-enumtypes.c
-built_headers = multichannel-enumtypes.h
-BUILT_SOURCES = $(built_sources) $(built_headers)
-
-librarydir = $(libdir)/gstreamer-@GST_MAJORMINOR@
-
-library_LTLIBRARIES = libgstaudio.la libgstaudiofilter.la
-noinst_LTLIBRARIES = libgstaudiofilterexample.la
-
-EXTRA_DIST = gstaudiofiltertemplate.c make_filter
-CLEANFILES = gstaudiofilterexample.c \
-       $(BUILT_SOURCES)
-
-libgstaudio_la_SOURCES = audio.c audioclock.c \
-       multichannel.c
-nodist_libgstaudio_la_SOURCES = $(built_sources)
-
-libgstaudioincludedir = $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/audio
-libgstaudioinclude_HEADERS = \
-       audio.h \
-       audioclock.h \
-       gstaudiofilter.h \
-       multichannel.h
-
-nodist_libgstaudioinclude_HEADERS = \
-       multichannel-enumtypes.h
-
-libgstaudio_la_LIBADD =
-libgstaudio_la_CFLAGS = $(GST_CFLAGS)
-libgstaudio_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
-
-libgstaudiofilter_la_SOURCES = gstaudiofilter.c gstaudiofilter.h
-libgstaudiofilter_la_CFLAGS = $(GST_CFLAGS)
-libgstaudiofilter_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
-
-libgstaudiofilterexample_la_SOURCES = gstaudiofilterexample.c
-libgstaudiofilterexample_la_CFLAGS = $(GST_CFLAGS)
-libgstaudiofilterexample_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
-
-gstaudiofilterexample.c: $(srcdir)/make_filter $(srcdir)/gstaudiofiltertemplate.c
-       $(srcdir)/make_filter AudiofilterExample $(srcdir)/gstaudiofiltertemplate.c
-
-noinst_PROGRAMS = testchannels
-testchannels_SOURCES = testchannels.c
-testchannels_CFLAGS = $(GST_CFLAGS)
-testchannels_LDFLAGS = $(GST_LIBS)
-
-include $(top_srcdir)/common/glib-gen.mak
diff --git a/gst-libs/gst/audio/audio.c b/gst-libs/gst/audio/audio.c
deleted file mode 100644 (file)
index b6a1edb..0000000
+++ /dev/null
@@ -1,280 +0,0 @@
-/* GStreamer
- * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#  include "config.h"
-#endif
-
-#include "audio.h"
-#include "multichannel-enumtypes.h"
-
-#include <gst/gststructure.h>
-
-int
-gst_audio_frame_byte_size (GstPad * pad)
-{
-/* calculate byte size of an audio frame
- * this should be moved closer to the gstreamer core
- * and be implemented for every mime type IMO
- * returns -1 if there's an error (to avoid division by zero), 
- * or the byte size if everything's ok
- */
-
-  int width = 0;
-  int channels = 0;
-  const GstCaps *caps = NULL;
-  GstStructure *structure;
-
-  /* get caps of pad */
-  caps = GST_PAD_CAPS (pad);
-
-  if (caps == NULL) {
-    /* ERROR: could not get caps of pad */
-    g_warning ("gstaudio: could not get caps of pad %s:%s\n",
-        GST_ELEMENT_NAME (gst_pad_get_parent (pad)), GST_PAD_NAME (pad));
-    return 0;
-  }
-
-  structure = gst_caps_get_structure (caps, 0);
-
-  gst_structure_get_int (structure, "width", &width);
-  gst_structure_get_int (structure, "channels", &channels);
-  return (width / 8) * channels;
-}
-
-long
-gst_audio_frame_length (GstPad * pad, GstBuffer * buf)
-/* calculate length of buffer in frames
- * this should be moved closer to the gstreamer core
- * and be implemented for every mime type IMO
- * returns 0 if there's an error, or the number of frames if everything's ok
- */
-{
-  int frame_byte_size = 0;
-
-  frame_byte_size = gst_audio_frame_byte_size (pad);
-  if (frame_byte_size == 0)
-    /* error */
-    return 0;
-  /* FIXME: this function assumes the buffer size to be a whole multiple
-   *        of the frame byte size
-   */
-  return GST_BUFFER_SIZE (buf) / frame_byte_size;
-}
-
-long
-gst_audio_frame_rate (GstPad * pad)
-/*
- * calculate frame rate (based on caps of pad)
- * returns 0 if failed, rate if success
- */
-{
-  const GstCaps *caps = NULL;
-  gint rate;
-  GstStructure *structure;
-
-  /* get caps of pad */
-  caps = GST_PAD_CAPS (pad);
-
-  if (caps == NULL) {
-    /* ERROR: could not get caps of pad */
-    g_warning ("gstaudio: could not get caps of pad %s:%s\n",
-        GST_ELEMENT_NAME (gst_pad_get_parent (pad)), GST_PAD_NAME (pad));
-    return 0;
-  } else {
-    structure = gst_caps_get_structure (caps, 0);
-    gst_structure_get_int (structure, "rate", &rate);
-    return rate;
-  }
-}
-
-double
-gst_audio_length (GstPad * pad, GstBuffer * buf)
-{
-/* calculate length in seconds
- * of audio buffer buf
- * based on capabilities of pad
- */
-
-  long bytes = 0;
-  int width = 0;
-  int channels = 0;
-  int rate = 0;
-
-  double length;
-
-  const GstCaps *caps = NULL;
-  GstStructure *structure;
-
-  g_assert (GST_IS_BUFFER (buf));
-  /* get caps of pad */
-  caps = GST_PAD_CAPS (pad);
-  if (caps == NULL) {
-    /* ERROR: could not get caps of pad */
-    g_warning ("gstaudio: could not get caps of pad %s:%s\n",
-        GST_ELEMENT_NAME (gst_pad_get_parent (pad)), GST_PAD_NAME (pad));
-    length = 0.0;
-  } else {
-    structure = gst_caps_get_structure (caps, 0);
-    bytes = GST_BUFFER_SIZE (buf);
-    gst_structure_get_int (structure, "width", &width);
-    gst_structure_get_int (structure, "channels", &channels);
-    gst_structure_get_int (structure, "rate", &rate);
-
-    g_assert (bytes != 0);
-    g_assert (width != 0);
-    g_assert (channels != 0);
-    g_assert (rate != 0);
-    length = (bytes * 8.0) / (double) (rate * channels * width);
-  }
-  /* g_print ("DEBUG: audio: returning length of %f\n", length); */
-  return length;
-}
-
-long
-gst_audio_highest_sample_value (GstPad * pad)
-/* calculate highest possible sample value
- * based on capabilities of pad
- */
-{
-  gboolean is_signed = FALSE;
-  gint width = 0;
-  const GstCaps *caps = NULL;
-  GstStructure *structure;
-
-  caps = GST_PAD_CAPS (pad);
-  if (caps == NULL) {
-    g_warning ("gstaudio: could not get caps of pad %s:%s\n",
-        GST_ELEMENT_NAME (gst_pad_get_parent (pad)), GST_PAD_NAME (pad));
-  }
-
-  structure = gst_caps_get_structure (caps, 0);
-  gst_structure_get_int (structure, "width", &width);
-  gst_structure_get_boolean (structure, "signed", &is_signed);
-
-  if (is_signed)
-    --width;
-  /* example : 16 bit, signed : samples between -32768 and 32767 */
-  return ((long) (1 << width));
-}
-
-gboolean
-gst_audio_is_buffer_framed (GstPad * pad, GstBuffer * buf)
-/* check if the buffer size is a whole multiple of the frame size */
-{
-  if (GST_BUFFER_SIZE (buf) % gst_audio_frame_byte_size (pad) == 0)
-    return TRUE;
-  else
-    return FALSE;
-}
-
-/* _getcaps helper functions
- * sets structure fields to default for audio type
- * flag determines which structure fields to set to default
- * keep these functions in sync with the templates in audio.h
- */
-
-/* private helper function
- * sets a list on the structure
- * pass in structure, fieldname for the list, type of the list values,
- * number of list values, and each of the values, terminating with NULL
- */
-static void
-_gst_audio_structure_set_list (GstStructure * structure,
-    const gchar * fieldname, GType type, int number, ...)
-{
-  va_list varargs;
-  GValue value = { 0 };
-  GArray *array;
-  int j;
-
-  g_return_if_fail (structure != NULL);
-
-  g_value_init (&value, GST_TYPE_LIST);
-  array = g_value_peek_pointer (&value);
-
-  va_start (varargs, number);
-
-  for (j = 0; j < number; ++j) {
-    int i;
-    gboolean b;
-
-    GValue list_value = { 0 };
-
-    switch (type) {
-      case G_TYPE_INT:
-        i = va_arg (varargs, int);
-
-        g_value_init (&list_value, G_TYPE_INT);
-        g_value_set_int (&list_value, i);
-        break;
-      case G_TYPE_BOOLEAN:
-        b = va_arg (varargs, gboolean);
-        g_value_init (&list_value, G_TYPE_BOOLEAN);
-        g_value_set_boolean (&list_value, b);
-        break;
-      default:
-        g_warning
-            ("_gst_audio_structure_set_list: LIST of given type not implemented.");
-    }
-    g_array_append_val (array, list_value);
-
-  }
-  gst_structure_set_value (structure, fieldname, &value);
-  va_end (varargs);
-}
-
-void
-gst_audio_structure_set_int (GstStructure * structure, GstAudioFieldFlag flag)
-{
-  if (flag & GST_AUDIO_FIELD_RATE)
-    gst_structure_set (structure, "rate", GST_TYPE_INT_RANGE, 1, G_MAXINT,
-        NULL);
-  if (flag & GST_AUDIO_FIELD_CHANNELS)
-    gst_structure_set (structure, "channels", GST_TYPE_INT_RANGE, 1, G_MAXINT,
-        NULL);
-  if (flag & GST_AUDIO_FIELD_ENDIANNESS)
-    _gst_audio_structure_set_list (structure, "endianness", G_TYPE_INT, 2,
-        G_LITTLE_ENDIAN, G_BIG_ENDIAN, NULL);
-  if (flag & GST_AUDIO_FIELD_WIDTH)
-    _gst_audio_structure_set_list (structure, "width", G_TYPE_INT, 3, 8, 16, 32,
-        NULL);
-  if (flag & GST_AUDIO_FIELD_DEPTH)
-    gst_structure_set (structure, "depth", GST_TYPE_INT_RANGE, 1, 32, NULL);
-  if (flag & GST_AUDIO_FIELD_SIGNED)
-    _gst_audio_structure_set_list (structure, "signed", G_TYPE_BOOLEAN, 2, TRUE,
-        FALSE, NULL);
-  if (flag & GST_AUDIO_FIELD_BUFFER_FRAMES)
-    gst_structure_set (structure, "buffer-frames", GST_TYPE_INT_RANGE, 1,
-        G_MAXINT, NULL);
-}
-
-static gboolean
-plugin_init (GstPlugin * plugin)
-{
-  gst_audio_channel_position_get_type ();
-
-  return TRUE;
-}
-
-GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
-    GST_VERSION_MINOR,
-    "gstaudio",
-    "Support services for audio plugins",
-    plugin_init, VERSION, GST_LICENSE, GST_PACKAGE, GST_ORIGIN);
diff --git a/gst-libs/gst/audio/audio.def b/gst-libs/gst/audio/audio.def
deleted file mode 100644 (file)
index 96a3ac0..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-EXPORTS
-    gst_plugin_desc
-    gst_audio_length
-    gst_audio_is_buffer_framed
-    gst_audio_highest_sample_value
diff --git a/gst-libs/gst/audio/audio.h b/gst-libs/gst/audio/audio.h
deleted file mode 100644 (file)
index 8556ce1..0000000
+++ /dev/null
@@ -1,131 +0,0 @@
-/* GStreamer
- * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
- * Library       <2001> Thomas Vander Stichele <thomas@apestaart.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#include <gst/gst.h>
-
-#include <gst/audio/audioclock.h>
-
-#ifndef __GST_AUDIO_AUDIO_H__
-#define __GST_AUDIO_AUDIO_H__
-
-G_BEGIN_DECLS
-
-/* For people that are looking at this source: the purpose of these defines is
- * to make GstCaps a bit easier, in that you don't have to know all of the
- * properties that need to be defined. you can just use these macros. currently
- * (8/01) the only plugins that use these are the passthrough, speed, volume,
- * adder, and [de]interleave plugins. These are for convenience only, and do not
- * specify the 'limits' of GStreamer. you might also use these definitions as a
- * base for making your own caps, if need be.
- *
- * For example, to make a source pad that can output streams of either mono
- * float or any channel int:
- *
- *  template = gst_pad_template_new
- *    ("sink", GST_PAD_SINK, GST_PAD_ALWAYS,
- *    gst_caps_append(gst_caps_new ("sink_int",  "audio/x-raw-int",
- *                                  GST_AUDIO_INT_PAD_TEMPLATE_PROPS),
- *                    gst_caps_new ("sink_float", "audio/x-raw-float",
- *                                  GST_AUDIO_FLOAT_PAD_TEMPLATE_PROPS)),
- *    NULL);
- *
- *  sinkpad = gst_pad_new_from_template(template, "sink");
- *
- * Andy Wingo, 18 August 2001
- * Thomas, 6 September 2002 */
-
-#define GST_AUDIO_DEF_RATE 44100
-
-#define GST_AUDIO_INT_PAD_TEMPLATE_CAPS \
-  "audio/x-raw-int, " \
-  "rate = (int) [ 1, MAX ], " \
-  "channels = (int) [ 1, MAX ], " \
-  "endianness = (int) { LITTLE_ENDIAN, BIG_ENDIAN }, " \
-  "width = (int) { 8, 16, 24, 32 }, " \
-  "depth = (int) [ 1, 32 ], " \
-  "signed = (boolean) { true, false }" 
-
-
-/* "standard" int audio is native order, 16 bit stereo. */
-#define GST_AUDIO_INT_STANDARD_PAD_TEMPLATE_CAPS \
-  "audio/x-raw-int, " \
-  "rate = (int) [ 1, MAX ], " \
-  "channels = (int) 2, " \
-  "endianness = (int) BYTE_ORDER, " \
-  "width = (int) 16, " \
-  "depth = (int) 16, " \
-  "signed = (boolean) true" 
-
-#define GST_AUDIO_FLOAT_PAD_TEMPLATE_CAPS \
-  "audio/x-raw-float, " \
-  "rate = (int) [ 1, MAX ], " \
-  "channels = (int) [ 1, MAX ], " \
-  "endianness = (int) { LITTLE_ENDIAN , BIG_ENDIAN }, " \
-  "width = (int) { 32, 64 }, " \
-  "buffer-frames = (int) [ 1, MAX]"
-
-/* "standard" float audio is native order, 32 bit mono. */
-#define GST_AUDIO_FLOAT_STANDARD_PAD_TEMPLATE_CAPS \
-  "audio/x-raw-float, " \
-  "width = (int) 32, " \
-  "rate = (int) [ 1, MAX ], " \
-  "channels = (int) 1, " \
-  "endianness = (int) BYTE_ORDER, " \
-  "buffer-frames = (int) [ 1, MAX]"
-
-/*
- * this library defines and implements some helper functions for audio
- * handling
- */
-
-/* get byte size of audio frame (based on caps of pad */
-int      gst_audio_frame_byte_size      (GstPad* pad);
-
-/* get length in frames of buffer */
-long     gst_audio_frame_length         (GstPad* pad, GstBuffer* buf);
-
-/* get frame rate based on caps */
-long     gst_audio_frame_rate           (GstPad *pad);
-
-/* calculate length in seconds of audio buffer buf based on caps of pad */
-double   gst_audio_length               (GstPad* pad, GstBuffer* buf);
-
-/* calculate highest possible sample value based on capabilities of pad */
-long     gst_audio_highest_sample_value (GstPad* pad);
-
-/* check if the buffer size is a whole multiple of the frame size */
-gboolean gst_audio_is_buffer_framed     (GstPad* pad, GstBuffer* buf);
-
-/* functions useful for _getcaps functions */
-typedef enum {
-  GST_AUDIO_FIELD_RATE          = (1 << 0),
-  GST_AUDIO_FIELD_CHANNELS      = (1 << 1),
-  GST_AUDIO_FIELD_ENDIANNESS    = (1 << 2),
-  GST_AUDIO_FIELD_WIDTH         = (1 << 3),
-  GST_AUDIO_FIELD_DEPTH         = (1 << 4),
-  GST_AUDIO_FIELD_SIGNED        = (1 << 5),
-  GST_AUDIO_FIELD_BUFFER_FRAMES = (1 << 6)
-} GstAudioFieldFlag;
-
-void gst_audio_structure_set_int (GstStructure *structure, GstAudioFieldFlag flag);
-
-G_END_DECLS
-
-#endif /* __GST_AUDIO_AUDIO_H__ */
diff --git a/gst-libs/gst/audio/audio.vcproj b/gst-libs/gst/audio/audio.vcproj
deleted file mode 100644 (file)
index 2111531..0000000
+++ /dev/null
@@ -1,153 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
-       ProjectType="Visual C++"
-       Version="7.10"
-       Name="audio"
-       ProjectGUID="{979C216F-0ACF-4956-AE00-055A42D67893}"
-       RootNamespace="audio"
-       Keyword="Win32Proj">
-       <Platforms>
-               <Platform
-                       Name="Win32"/>
-       </Platforms>
-       <Configurations>
-               <Configuration
-                       Name="Debug|Win32"
-                       OutputDirectory="../../../win32/Debug"
-                       IntermediateDirectory="../../../win32/Debug"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               Optimization="0"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;AUDIO_EXPORTS;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               MinimalRebuild="TRUE"
-                               BasicRuntimeChecks="3"
-                               RuntimeLibrary="3"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="4"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstaudio.dll"
-                               LinkIncremental="2"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Debug;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile="audio.def"
-                               GenerateDebugInformation="TRUE"
-                               ProgramDatabaseFile="$(OutDir)/audio.pdb"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               ImportLibrary="$(OutDir)/gstaudio.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-               <Configuration
-                       Name="Release|Win32"
-                       OutputDirectory="../../../win32/Release"
-                       IntermediateDirectory="../../../win32/Release"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;NDEBUG;GST_DISABLE_GST_DEBUG;_WINDOWS;_USRDLL;AUDIO_EXPORTS;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               RuntimeLibrary="2"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="3"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstaudio.dll"
-                               LinkIncremental="1"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Release;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile="audio.def"
-                               GenerateDebugInformation="TRUE"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               EnableCOMDATFolding="2"
-                               ImportLibrary="$(OutDir)/gstaudio.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-       </Configurations>
-       <References>
-       </References>
-       <Files>
-               <Filter
-                       Name="Source Files"
-                       Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
-                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
-                       <File
-                               RelativePath=".\audio.c">
-                       </File>
-                       <File
-                               RelativePath=".\audio.def">
-                       </File>
-                       <File
-                               RelativePath=".\audioclock.c">
-                       </File>
-               </Filter>
-               <Filter
-                       Name="Header Files"
-                       Filter="h;hpp;hxx;hm;inl;inc;xsd"
-                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
-                       <File
-                               RelativePath=".\audio.h">
-                       </File>
-                       <File
-                               RelativePath=".\audioclock.h">
-                       </File>
-               </Filter>
-       </Files>
-       <Globals>
-       </Globals>
-</VisualStudioProject>
diff --git a/gst-libs/gst/audio/audioclock.c b/gst-libs/gst/audio/audioclock.c
deleted file mode 100644 (file)
index 65d2694..0000000
+++ /dev/null
@@ -1,205 +0,0 @@
-/* GStreamer
- * Copyright (C) 1999,2000 Erik Walthinsen <omega@cse.ogi.edu>
- *                    2000 Wim Taymans <wtay@chello.be>
- *
- * audioclock.c: Clock for use by audio plugins
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "audioclock.h"
-
-static void gst_audio_clock_class_init (GstAudioClockClass * klass);
-static void gst_audio_clock_init (GstAudioClock * clock);
-
-static GstClockTime gst_audio_clock_get_internal_time (GstClock * clock);
-static GstClockEntryStatus gst_audio_clock_id_wait_async (GstClock * clock,
-    GstClockEntry * entry);
-static void gst_audio_clock_id_unschedule (GstClock * clock,
-    GstClockEntry * entry);
-
-static GstSystemClockClass *parent_class = NULL;
-
-/* static guint gst_audio_clock_signals[LAST_SIGNAL] = { 0 }; */
-
-GType
-gst_audio_clock_get_type (void)
-{
-  static GType clock_type = 0;
-
-  if (!clock_type) {
-    static const GTypeInfo clock_info = {
-      sizeof (GstAudioClockClass),
-      NULL,
-      NULL,
-      (GClassInitFunc) gst_audio_clock_class_init,
-      NULL,
-      NULL,
-      sizeof (GstAudioClock),
-      4,
-      (GInstanceInitFunc) gst_audio_clock_init,
-      NULL
-    };
-
-    clock_type = g_type_register_static (GST_TYPE_SYSTEM_CLOCK, "GstAudioClock",
-        &clock_info, 0);
-  }
-  return clock_type;
-}
-
-
-static void
-gst_audio_clock_class_init (GstAudioClockClass * klass)
-{
-  GObjectClass *gobject_class;
-  GstObjectClass *gstobject_class;
-  GstClockClass *gstclock_class;
-
-  gobject_class = (GObjectClass *) klass;
-  gstobject_class = (GstObjectClass *) klass;
-  gstclock_class = (GstClockClass *) klass;
-
-  parent_class = g_type_class_ref (GST_TYPE_SYSTEM_CLOCK);
-
-  gstclock_class->get_internal_time = gst_audio_clock_get_internal_time;
-  gstclock_class->wait_async = gst_audio_clock_id_wait_async;
-  gstclock_class->unschedule = gst_audio_clock_id_unschedule;
-}
-
-static void
-gst_audio_clock_init (GstAudioClock * clock)
-{
-  gst_object_set_name (GST_OBJECT (clock), "GstAudioClock");
-
-  clock->prev1 = 0;
-  clock->prev2 = 0;
-}
-
-GstClock *
-gst_audio_clock_new (gchar * name, GstAudioClockGetTimeFunc func,
-    gpointer user_data)
-{
-  GstAudioClock *aclock =
-      GST_AUDIO_CLOCK (g_object_new (GST_TYPE_AUDIO_CLOCK, NULL));
-
-  aclock->func = func;
-  aclock->user_data = user_data;
-  aclock->adjust = 0;
-
-  return (GstClock *) aclock;
-}
-
-void
-gst_audio_clock_set_active (GstAudioClock * aclock, gboolean active)
-{
-  GstClockTime audio_time, system_time;
-  GstClock *clock;
-  GTimeVal timeval;
-
-  g_return_if_fail (GST_IS_AUDIO_CLOCK (aclock));
-  clock = GST_CLOCK (aclock);
-
-  if (active == aclock->active) {
-    /* Nothing to do. */
-    return;
-  }
-
-  audio_time = aclock->func (clock, aclock->user_data);
-
-  g_get_current_time (&timeval);
-  system_time = GST_TIMEVAL_TO_TIME (timeval);
-
-  /* Set the new adjust value in such a way that there's no abrupt
-     discontinuity, i.e. if gst_audio_clock_get_internal_time is
-     invoked right before and right after (de)activating the clock,
-     the values returned will be close to each other, and the second
-     value will be greater than or equal than the first. */
-  if (active) {
-    aclock->adjust = aclock->adjust + system_time - audio_time;
-  } else {
-    aclock->adjust = aclock->adjust + audio_time - system_time;
-  }
-
-  aclock->active = active;
-}
-
-static GstClockTime
-gst_audio_clock_get_internal_time (GstClock * clock)
-{
-  GstAudioClock *aclock = GST_AUDIO_CLOCK (clock);
-
-  if (aclock->active) {
-    return aclock->func (clock, aclock->user_data) + aclock->adjust;
-  } else {
-    GTimeVal timeval;
-
-    g_get_current_time (&timeval);
-    return GST_TIMEVAL_TO_TIME (timeval) + aclock->adjust;
-  }
-}
-
-void
-gst_audio_clock_update_time (GstAudioClock * aclock, GstClockTime time)
-{
-  /* I don't know of a purpose in updating these; perhaps they can be removed */
-  aclock->prev2 = aclock->prev1;
-  aclock->prev1 = time;
-
-  /* FIXME: the wait_async subsystem should be made threadsafe, but I don't want
-   * to lock and unlock a mutex on every iteration... */
-  while (aclock->async_entries) {
-    GstClockEntry *entry = (GstClockEntry *) aclock->async_entries->data;
-
-    if (entry->time > time)
-      break;
-
-    entry->func ((GstClock *) aclock, time, entry, entry->user_data);
-
-    aclock->async_entries = g_slist_delete_link (aclock->async_entries,
-        aclock->async_entries);
-    /* do I need to free the entry? */
-  }
-}
-
-static gint
-compare_clock_entries (GstClockEntry * entry1, GstClockEntry * entry2)
-{
-  return entry1->time - entry2->time;
-}
-
-static GstClockEntryStatus
-gst_audio_clock_id_wait_async (GstClock * clock, GstClockEntry * entry)
-{
-  GstAudioClock *aclock = (GstAudioClock *) clock;
-
-  aclock->async_entries = g_slist_insert_sorted (aclock->async_entries,
-      entry, (GCompareFunc) compare_clock_entries);
-
-  /* is this the proper return val? */
-  return GST_CLOCK_EARLY;
-}
-
-static void
-gst_audio_clock_id_unschedule (GstClock * clock, GstClockEntry * entry)
-{
-  GstAudioClock *aclock = (GstAudioClock *) clock;
-
-  aclock->async_entries = g_slist_remove (aclock->async_entries, entry);
-}
diff --git a/gst-libs/gst/audio/audioclock.h b/gst-libs/gst/audio/audioclock.h
deleted file mode 100644 (file)
index 1743924..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-/* GStreamer
- * Copyright (C) 1999,2000 Erik Walthinsen <omega@cse.ogi.edu>
- *                    2000 Wim Taymans <wtay@chello.be>
- *
- * audioclock.h: Clock for use by audio plugins
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-
-#ifndef __GST_AUDIO_CLOCK_H__
-#define __GST_AUDIO_CLOCK_H__
-
-#include <gst/gstsystemclock.h>
-
-G_BEGIN_DECLS
-
-#define GST_TYPE_AUDIO_CLOCK \
-  (gst_audio_clock_get_type())
-#define GST_AUDIO_CLOCK(obj) \
-  (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_AUDIO_CLOCK,GstAudioClock))
-#define GST_AUDIO_CLOCK_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_AUDIO_CLOCK,GstAudioClockClass))
-#define GST_IS_AUDIO_CLOCK(obj) \
-  (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_AUDIO_CLOCK))
-#define GST_IS_AUDIO_CLOCK_CLASS(obj) \
-  (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_AUDIO_CLOCK))
-
-typedef struct _GstAudioClock GstAudioClock;
-typedef struct _GstAudioClockClass GstAudioClockClass;
-
-typedef GstClockTime (*GstAudioClockGetTimeFunc) (GstClock *clock, gpointer user_data);
-
-
-struct _GstAudioClock {
-  GstSystemClock clock;
-
-  GstClockTime prev1, prev2;
-
-  /* --- protected --- */
-  GstAudioClockGetTimeFunc func;
-  gpointer user_data;
-
-  GstClockTimeDiff adjust;
-
-  GSList *async_entries;
-
-  gboolean active;
-
-  gpointer _gst_reserved[GST_PADDING];
-};
-
-struct _GstAudioClockClass {
-  GstSystemClockClass parent_class;
-
-  gpointer _gst_reserved[GST_PADDING];
-};
-
-GType           gst_audio_clock_get_type       (void);
-GstClock*      gst_audio_clock_new             (gchar *name, GstAudioClockGetTimeFunc func,
-                                                 gpointer user_data);
-void           gst_audio_clock_set_active      (GstAudioClock *aclock, gboolean active);
-
-void           gst_audio_clock_update_time     (GstAudioClock *aclock, GstClockTime time);
-
-G_END_DECLS
-
-#endif /* __GST_AUDIO_CLOCK_H__ */
diff --git a/gst-libs/gst/audio/audiofilter.vcproj b/gst-libs/gst/audio/audiofilter.vcproj
deleted file mode 100644 (file)
index d551260..0000000
+++ /dev/null
@@ -1,144 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
-       ProjectType="Visual C++"
-       Version="7.10"
-       Name="audiofilter"
-       ProjectGUID="{979C216F-0ACF-4956-AE00-055A42D67894}"
-       RootNamespace="audiofilter"
-       Keyword="Win32Proj">
-       <Platforms>
-               <Platform
-                       Name="Win32"/>
-       </Platforms>
-       <Configurations>
-               <Configuration
-                       Name="Debug|Win32"
-                       OutputDirectory="../../../win32/Debug"
-                       IntermediateDirectory="../../../win32/Debug"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               Optimization="0"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;AUDIOFILTER_EXPORTS;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               MinimalRebuild="TRUE"
-                               BasicRuntimeChecks="3"
-                               RuntimeLibrary="3"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="4"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstaudiofilter.dll"
-                               LinkIncremental="2"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Debug;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile="audio.def"
-                               GenerateDebugInformation="TRUE"
-                               ProgramDatabaseFile="$(OutDir)/audiofilter.pdb"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               ImportLibrary="$(OutDir)/gstaudiofilter.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-               <Configuration
-                       Name="Release|Win32"
-                       OutputDirectory="../../../win32/Release"
-                       IntermediateDirectory="../../../win32/Release"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;NDEBUG;GST_DISABLE_GST_DEBUG;_WINDOWS;_USRDLL;AUDIOFILTER_EXPORTS;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               RuntimeLibrary="2"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="3"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstaudiofilter.dll"
-                               LinkIncremental="1"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Release;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile="audio.def"
-                               GenerateDebugInformation="TRUE"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               EnableCOMDATFolding="2"
-                               ImportLibrary="$(OutDir)/gstaudiofilter.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-       </Configurations>
-       <References>
-       </References>
-       <Files>
-               <Filter
-                       Name="Source Files"
-                       Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
-                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
-                       <File
-                               RelativePath=".\gstaudiofilter.c">
-                       </File>
-               </Filter>
-               <Filter
-                       Name="Header Files"
-                       Filter="h;hpp;hxx;hm;inl;inc;xsd"
-                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
-                       <File
-                               RelativePath=".\gstaudiofilter.h">
-                       </File>
-               </Filter>
-       </Files>
-       <Globals>
-       </Globals>
-</VisualStudioProject>
diff --git a/gst-libs/gst/audio/gstaudiofilter.c b/gst-libs/gst/audio/gstaudiofilter.c
deleted file mode 100644 (file)
index 70ae6bf..0000000
+++ /dev/null
@@ -1,313 +0,0 @@
-/* GStreamer
- * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
- * Copyright (C) <2003> David Schleef <ds@schleef.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-/*#define DEBUG_ENABLED */
-#include "gstaudiofilter.h"
-
-#include <string.h>
-
-
-/* GstAudiofilter signals and args */
-enum
-{
-  /* FILL ME */
-  LAST_SIGNAL
-};
-
-enum
-{
-  ARG_0,
-  ARG_METHOD
-      /* FILL ME */
-};
-
-static void gst_audiofilter_base_init (gpointer g_class);
-static void gst_audiofilter_class_init (gpointer g_class, gpointer class_data);
-static void gst_audiofilter_init (GTypeInstance * instance, gpointer g_class);
-
-static void gst_audiofilter_set_property (GObject * object, guint prop_id,
-    const GValue * value, GParamSpec * pspec);
-static void gst_audiofilter_get_property (GObject * object, guint prop_id,
-    GValue * value, GParamSpec * pspec);
-
-static void gst_audiofilter_chain (GstPad * pad, GstData * _data);
-GstCaps *gst_audiofilter_class_get_capslist (GstAudiofilterClass * klass);
-
-static GstElementClass *parent_class = NULL;
-
-GType
-gst_audiofilter_get_type (void)
-{
-  static GType audiofilter_type = 0;
-
-  if (!audiofilter_type) {
-    static const GTypeInfo audiofilter_info = {
-      sizeof (GstAudiofilterClass),
-      gst_audiofilter_base_init,
-      NULL,
-      gst_audiofilter_class_init,
-      NULL,
-      NULL,
-      sizeof (GstAudiofilter),
-      0,
-      gst_audiofilter_init,
-    };
-
-    audiofilter_type = g_type_register_static (GST_TYPE_ELEMENT,
-        "GstAudiofilter", &audiofilter_info, G_TYPE_FLAG_ABSTRACT);
-  }
-  return audiofilter_type;
-}
-
-static void
-gst_audiofilter_base_init (gpointer g_class)
-{
-  static GstElementDetails audiofilter_details = {
-    "Audio filter base class",
-    "Filter/Effect/Audio",
-    "Filters audio",
-    "David Schleef <ds@schleef.org>"
-  };
-  GstAudiofilterClass *klass = (GstAudiofilterClass *) g_class;
-  GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
-
-  gst_element_class_set_details (element_class, &audiofilter_details);
-}
-
-static void
-gst_audiofilter_class_init (gpointer g_class, gpointer class_data)
-{
-  GObjectClass *gobject_class;
-  GstElementClass *gstelement_class;
-  GstAudiofilterClass *klass;
-
-  klass = (GstAudiofilterClass *) g_class;
-  gobject_class = (GObjectClass *) klass;
-  gstelement_class = (GstElementClass *) klass;
-
-  parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
-
-  gobject_class->set_property = gst_audiofilter_set_property;
-  gobject_class->get_property = gst_audiofilter_get_property;
-}
-
-static GstPadLinkReturn
-gst_audiofilter_link (GstPad * pad, const GstCaps * caps)
-{
-  GstAudiofilter *audiofilter;
-  GstPadLinkReturn ret;
-  GstPadLinkReturn link_ret;
-  GstStructure *structure;
-  GstAudiofilterClass *audiofilter_class;
-
-  GST_DEBUG ("gst_audiofilter_link");
-  audiofilter = GST_AUDIOFILTER (gst_pad_get_parent (pad));
-  audiofilter_class = GST_AUDIOFILTER_CLASS (G_OBJECT_GET_CLASS (audiofilter));
-
-  ret = GST_PAD_LINK_DELAYED;   /* intialise with dummy value */
-  if (pad == audiofilter->srcpad) {
-    link_ret = gst_pad_try_set_caps (audiofilter->sinkpad, caps);
-  } else {
-    link_ret = gst_pad_try_set_caps (audiofilter->srcpad, caps);
-  }
-
-  if (GST_PAD_LINK_FAILED (link_ret)) {
-    return link_ret;
-  }
-
-  structure = gst_caps_get_structure (caps, 0);
-
-  if (strcmp (gst_structure_get_name (structure), "audio/x-raw-int") == 0) {
-    ret = gst_structure_get_int (structure, "depth", &audiofilter->depth);
-    ret &= gst_structure_get_int (structure, "width", &audiofilter->width);
-  } else if (strcmp (gst_structure_get_name (structure), "audio/x-raw-float")
-      == 0) {
-    ret &= gst_structure_get_int (structure, "width", &audiofilter->width);
-  } else {
-    g_assert_not_reached ();
-  }
-  ret &= gst_structure_get_int (structure, "rate", &audiofilter->rate);
-  ret &= gst_structure_get_int (structure, "channels", &audiofilter->channels);
-
-  if (!ret)
-    return GST_PAD_LINK_REFUSED;
-
-  audiofilter->bytes_per_sample = (audiofilter->width / 8) *
-      audiofilter->channels;
-
-  if (audiofilter_class->setup)
-    (audiofilter_class->setup) (audiofilter);
-
-  return GST_PAD_LINK_OK;
-}
-
-static void
-gst_audiofilter_init (GTypeInstance * instance, gpointer g_class)
-{
-  GstAudiofilter *audiofilter = GST_AUDIOFILTER (instance);
-  GstPadTemplate *pad_template;
-
-  GST_DEBUG ("gst_audiofilter_init");
-
-  pad_template =
-      gst_element_class_get_pad_template (GST_ELEMENT_CLASS (g_class), "sink");
-  g_return_if_fail (pad_template != NULL);
-  audiofilter->sinkpad = gst_pad_new_from_template (pad_template, "sink");
-  gst_element_add_pad (GST_ELEMENT (audiofilter), audiofilter->sinkpad);
-  gst_pad_set_chain_function (audiofilter->sinkpad, gst_audiofilter_chain);
-  gst_pad_set_link_function (audiofilter->sinkpad, gst_audiofilter_link);
-  gst_pad_set_getcaps_function (audiofilter->sinkpad, gst_pad_proxy_getcaps);
-
-  pad_template =
-      gst_element_class_get_pad_template (GST_ELEMENT_CLASS (g_class), "src");
-  g_return_if_fail (pad_template != NULL);
-  audiofilter->srcpad = gst_pad_new_from_template (pad_template, "src");
-  gst_element_add_pad (GST_ELEMENT (audiofilter), audiofilter->srcpad);
-  gst_pad_set_link_function (audiofilter->srcpad, gst_audiofilter_link);
-  gst_pad_set_getcaps_function (audiofilter->srcpad, gst_pad_proxy_getcaps);
-
-  audiofilter->inited = FALSE;
-}
-
-static void
-gst_audiofilter_chain (GstPad * pad, GstData * data)
-{
-  GstBuffer *inbuf = GST_BUFFER (data);
-  GstAudiofilter *audiofilter;
-  GstBuffer *outbuf;
-  GstAudiofilterClass *audiofilter_class;
-
-  GST_DEBUG ("gst_audiofilter_chain");
-
-  g_return_if_fail (pad != NULL);
-  g_return_if_fail (GST_IS_PAD (pad));
-  g_return_if_fail (inbuf != NULL);
-
-  audiofilter = GST_AUDIOFILTER (gst_pad_get_parent (pad));
-  //g_return_if_fail (audiofilter->inited);
-  audiofilter_class = GST_AUDIOFILTER_CLASS (G_OBJECT_GET_CLASS (audiofilter));
-
-  GST_DEBUG ("gst_audiofilter_chain: got buffer of %d bytes in '%s'",
-      GST_BUFFER_SIZE (inbuf), GST_OBJECT_NAME (audiofilter));
-
-  if (audiofilter->passthru) {
-    gst_pad_push (audiofilter->srcpad, data);
-    return;
-  }
-
-  audiofilter->size = GST_BUFFER_SIZE (inbuf);
-  audiofilter->n_samples = audiofilter->size / audiofilter->bytes_per_sample;
-
-  if (gst_data_is_writable (data)) {
-    if (audiofilter_class->filter_inplace) {
-      (audiofilter_class->filter_inplace) (audiofilter, inbuf);
-      outbuf = inbuf;
-    } else {
-      outbuf = gst_buffer_new_and_alloc (GST_BUFFER_SIZE (inbuf));
-      GST_BUFFER_DURATION (outbuf) = GST_BUFFER_DURATION (inbuf);
-      GST_BUFFER_TIMESTAMP (outbuf) = GST_BUFFER_TIMESTAMP (inbuf);
-
-      (audiofilter_class->filter) (audiofilter, outbuf, inbuf);
-      gst_buffer_unref (inbuf);
-    }
-  } else {
-    outbuf = gst_buffer_new_and_alloc (GST_BUFFER_SIZE (inbuf));
-    GST_BUFFER_DURATION (outbuf) = GST_BUFFER_DURATION (inbuf);
-    GST_BUFFER_TIMESTAMP (outbuf) = GST_BUFFER_TIMESTAMP (inbuf);
-    if (audiofilter_class->filter) {
-      (audiofilter_class->filter) (audiofilter, outbuf, inbuf);
-    } else {
-      memcpy (GST_BUFFER_DATA (outbuf), GST_BUFFER_DATA (inbuf),
-          GST_BUFFER_SIZE (inbuf));
-
-      (audiofilter_class->filter_inplace) (audiofilter, outbuf);
-    }
-    gst_buffer_unref (inbuf);
-  }
-
-  gst_pad_push (audiofilter->srcpad, GST_DATA (outbuf));
-}
-
-static void
-gst_audiofilter_set_property (GObject * object, guint prop_id,
-    const GValue * value, GParamSpec * pspec)
-{
-  GstAudiofilter *src;
-
-  /* it's not null if we got it, but it might not be ours */
-  g_return_if_fail (GST_IS_AUDIOFILTER (object));
-  src = GST_AUDIOFILTER (object);
-
-  GST_DEBUG ("gst_audiofilter_set_property");
-  switch (prop_id) {
-    default:
-      break;
-  }
-}
-
-static void
-gst_audiofilter_get_property (GObject * object, guint prop_id, GValue * value,
-    GParamSpec * pspec)
-{
-  GstAudiofilter *src;
-
-  /* it's not null if we got it, but it might not be ours */
-  g_return_if_fail (GST_IS_AUDIOFILTER (object));
-  src = GST_AUDIOFILTER (object);
-
-  switch (prop_id) {
-    default:
-      G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
-      break;
-  }
-}
-
-void
-gst_audiofilter_class_add_pad_templates (GstAudiofilterClass *
-    audiofilter_class, const GstCaps * caps)
-{
-  GstElementClass *element_class = GST_ELEMENT_CLASS (audiofilter_class);
-
-  audiofilter_class->caps = gst_caps_copy (caps);
-
-  gst_element_class_add_pad_template (element_class,
-      gst_pad_template_new ("src", GST_PAD_SRC, GST_PAD_ALWAYS,
-          gst_caps_copy (caps)));
-
-  gst_element_class_add_pad_template (element_class,
-      gst_pad_template_new ("sink", GST_PAD_SINK, GST_PAD_ALWAYS,
-          gst_caps_copy (caps)));
-}
-
-static gboolean
-plugin_init (GstPlugin * plugin)
-{
-  return TRUE;
-}
-
-GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
-    GST_VERSION_MINOR,
-    "gstaudiofilter",
-    "Audio filter parent class",
-    plugin_init, VERSION, "LGPL", GST_PACKAGE, GST_ORIGIN)
diff --git a/gst-libs/gst/audio/gstaudiofilter.h b/gst-libs/gst/audio/gstaudiofilter.h
deleted file mode 100644 (file)
index 9786e16..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-/* GStreamer
- * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-
-#ifndef __GST_AUDIOFILTER_H__
-#define __GST_AUDIOFILTER_H__
-
-
-#include <gst/gst.h>
-
-
-G_BEGIN_DECLS
-
-typedef struct _GstAudiofilter GstAudiofilter;
-typedef struct _GstAudiofilterClass GstAudiofilterClass;
-
-typedef void (*GstAudiofilterFilterFunc)(GstAudiofilter *filter,
-    GstBuffer *outbuf, GstBuffer *inbuf);
-typedef void (*GstAudiofilterInplaceFilterFunc)(GstAudiofilter *filter,
-    GstBuffer *buffer);
-
-typedef void (*GstAudiofilterSetupFunc) (GstAudiofilter *filter);
-
-
-#define GST_TYPE_AUDIOFILTER \
-  (gst_audiofilter_get_type())
-#define GST_AUDIOFILTER(obj) \
-  (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_AUDIOFILTER,GstAudiofilter))
-#define GST_AUDIOFILTER_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_AUDIOFILTER,GstAudiofilterClass))
-#define GST_IS_AUDIOFILTER(obj) \
-  (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_AUDIOFILTER))
-#define GST_IS_AUDIOFILTER_CLASS(obj) \
-  (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_AUDIOFILTER))
-
-struct _GstAudiofilter {
-  GstElement element;
-
-  GstPad *sinkpad,*srcpad;
-
-  /* audio state */
-  gboolean inited;
-  gboolean passthru;
-
-  int rate;
-  int width;
-  int channels;
-  int depth;
-
-  int n_samples;
-  int size;
-  int bytes_per_sample;
-};
-
-struct _GstAudiofilterClass {
-  GstElementClass parent_class;
-
-  GstCaps *caps;
-  GstAudiofilterSetupFunc setup;
-  GstAudiofilterInplaceFilterFunc filter_inplace;
-  GstAudiofilterFilterFunc filter;
-};
-
-GType gst_audiofilter_get_type(void);
-
-void gst_audiofilter_class_add_pad_templates (GstAudiofilterClass *audiofilterclass, const GstCaps *caps);
-
-G_END_DECLS
-
-#endif /* __GST_AUDIOFILTER_H__ */
-
diff --git a/gst-libs/gst/audio/gstaudiofiltertemplate.c b/gst-libs/gst/audio/gstaudiofiltertemplate.c
deleted file mode 100644 (file)
index f185203..0000000
+++ /dev/null
@@ -1,270 +0,0 @@
-/* GStreamer
- * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
- * Copyright (C) <2003> David Schleef <ds@schleef.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-/*
- * This file was (probably) generated from
- * $Id$
- * and
- * MAKEFILTERVERSION
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <gst/gst.h>
-#include <gst/audio/audio.h>
-#include <gst/audio/gstaudiofilter.h>
-#include <string.h>
-
-typedef struct _GstAudiofilterTemplate GstAudiofilterTemplate;
-typedef struct _GstAudiofilterTemplateClass GstAudiofilterTemplateClass;
-
-#define GST_TYPE_AUDIOFILTER_TEMPLATE \
-  (gst_audiofilter_template_get_type())
-#define GST_AUDIOFILTER_TEMPLATE(obj) \
-  (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_AUDIOFILTER_TEMPLATE,GstAudiofilterTemplate))
-#define GST_AUDIOFILTER_TEMPLATE_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_AUDIOFILTER_TEMPLATE,GstAudiofilterTemplateClass))
-#define GST_IS_AUDIOFILTER_TEMPLATE(obj) \
-  (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_AUDIOFILTER_TEMPLATE))
-#define GST_IS_AUDIOFILTER_TEMPLATE_CLASS(obj) \
-  (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_AUDIOFILTER_TEMPLATE))
-
-struct _GstAudiofilterTemplate
-{
-  GstAudiofilter audiofilter;
-
-};
-
-struct _GstAudiofilterTemplateClass
-{
-  GstAudiofilterClass parent_class;
-
-};
-
-
-enum
-{
-  /* FILL ME */
-  LAST_SIGNAL
-};
-
-enum
-{
-  ARG_0
-      /* FILL ME */
-};
-
-static void gst_audiofilter_template_base_init (gpointer g_class);
-static void gst_audiofilter_template_class_init (gpointer g_class,
-    gpointer class_data);
-static void gst_audiofilter_template_init (GTypeInstance * instance,
-    gpointer g_class);
-
-static void gst_audiofilter_template_set_property (GObject * object,
-    guint prop_id, const GValue * value, GParamSpec * pspec);
-static void gst_audiofilter_template_get_property (GObject * object,
-    guint prop_id, GValue * value, GParamSpec * pspec);
-
-static void gst_audiofilter_template_setup (GstAudiofilter * audiofilter);
-static void gst_audiofilter_template_filter (GstAudiofilter * audiofilter,
-    GstBuffer * outbuf, GstBuffer * inbuf);
-static void gst_audiofilter_template_filter_inplace (GstAudiofilter *
-    audiofilter, GstBuffer * buf);
-
-GType
-gst_audiofilter_template_get_type (void)
-{
-  static GType audiofilter_template_type = 0;
-
-  if (!audiofilter_template_type) {
-    static const GTypeInfo audiofilter_template_info = {
-      sizeof (GstAudiofilterTemplateClass),
-      gst_audiofilter_template_base_init,
-      NULL,
-      gst_audiofilter_template_class_init,
-      NULL,
-      gst_audiofilter_template_init,
-      sizeof (GstAudiofilterTemplate),
-      0,
-      NULL,
-    };
-
-    audiofilter_template_type = g_type_register_static (GST_TYPE_AUDIOFILTER,
-        "GstAudiofilterTemplate", &audiofilter_template_info, 0);
-  }
-  return audiofilter_template_type;
-}
-
-static void
-gst_audiofilter_template_base_init (gpointer g_class)
-{
-  static GstElementDetails audiofilter_template_details = {
-    "Audio filter template",
-    "Filter/Effect/Audio",
-    "Filters audio",
-    "David Schleef <ds@schleef.org>"
-  };
-  GstAudiofilterTemplateClass *klass = (GstAudiofilterTemplateClass *) g_class;
-  GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
-
-  gst_element_class_set_details (element_class, &audiofilter_template_details);
-
-  gst_audiofilter_class_add_pad_templates (GST_AUDIOFILTER_CLASS (g_class),
-      gst_caps_from_string (GST_AUDIO_INT_STANDARD_PAD_TEMPLATE_CAPS));
-}
-
-static void
-gst_audiofilter_template_class_init (gpointer g_class, gpointer class_data)
-{
-  GObjectClass *gobject_class;
-  GstElementClass *gstelement_class;
-  GstAudiofilterTemplateClass *klass;
-  GstAudiofilterClass *audiofilter_class;
-
-  klass = (GstAudiofilterTemplateClass *) g_class;
-  gobject_class = (GObjectClass *) klass;
-  gstelement_class = (GstElementClass *) klass;
-  audiofilter_class = (GstAudiofilterClass *) g_class;
-
-#if 0
-  g_object_class_install_property (gobject_class, ARG_METHOD,
-      g_param_spec_enum ("method", "method", "method",
-          GST_TYPE_AUDIOTEMPLATE_METHOD, GST_AUDIOTEMPLATE_METHOD_1,
-          G_PARAM_READWRITE));
-#endif
-
-  gobject_class->set_property = gst_audiofilter_template_set_property;
-  gobject_class->get_property = gst_audiofilter_template_get_property;
-
-  audiofilter_class->setup = gst_audiofilter_template_setup;
-  audiofilter_class->filter = gst_audiofilter_template_filter;
-  audiofilter_class->filter_inplace = gst_audiofilter_template_filter_inplace;
-  audiofilter_class->filter = NULL;
-}
-
-static void
-gst_audiofilter_template_init (GTypeInstance * instance, gpointer g_class)
-{
-  //GstAudiofilterTemplate *audiofilter_template = GST_AUDIOFILTER_TEMPLATE (instance);
-  //GstAudiofilter *audiofilter = GST_AUDIOFILTER (instance);
-
-  GST_DEBUG ("gst_audiofilter_template_init");
-
-  /* do stuff */
-
-}
-
-static void
-gst_audiofilter_template_set_property (GObject * object, guint prop_id,
-    const GValue * value, GParamSpec * pspec)
-{
-  GstAudiofilterTemplate *src;
-
-  /* it's not null if we got it, but it might not be ours */
-  g_return_if_fail (GST_IS_AUDIOFILTER_TEMPLATE (object));
-  src = GST_AUDIOFILTER_TEMPLATE (object);
-
-  GST_DEBUG ("gst_audiofilter_template_set_property");
-  switch (prop_id) {
-    default:
-      break;
-  }
-}
-
-static void
-gst_audiofilter_template_get_property (GObject * object, guint prop_id,
-    GValue * value, GParamSpec * pspec)
-{
-  GstAudiofilterTemplate *src;
-
-  /* it's not null if we got it, but it might not be ours */
-  g_return_if_fail (GST_IS_AUDIOFILTER_TEMPLATE (object));
-  src = GST_AUDIOFILTER_TEMPLATE (object);
-
-  switch (prop_id) {
-    default:
-      G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
-      break;
-  }
-}
-
-static gboolean
-plugin_init (GstPlugin * plugin)
-{
-  if (!gst_library_load ("gstaudiofilter"))
-    return FALSE;
-
-  return gst_element_register (plugin, "audiofiltertemplate", GST_RANK_NONE,
-      GST_TYPE_AUDIOFILTER_TEMPLATE);
-}
-
-GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
-    GST_VERSION_MINOR,
-    "gstaudiofilter_template",
-    "Audio filter template",
-    plugin_init, VERSION, "LGPL", GST_PACKAGE, GST_ORIGIN)
-
-     static void gst_audiofilter_template_setup (GstAudiofilter * audiofilter)
-{
-  GstAudiofilterTemplate *audiofilter_template;
-
-  g_return_if_fail (GST_IS_AUDIOFILTER_TEMPLATE (audiofilter));
-  audiofilter_template = GST_AUDIOFILTER_TEMPLATE (audiofilter);
-
-  /* if any setup needs to be done, do it here */
-
-}
-
-/* You may choose to implement either a copying filter or an
- * in-place filter (or both).  Implementing only one will give
- * full functionality, however, implementing both will cause
- * audiofilter to use the optimal function in every situation,
- * with a minimum of memory copies. */
-
-static void
-gst_audiofilter_template_filter (GstAudiofilter * audiofilter,
-    GstBuffer * outbuf, GstBuffer * inbuf)
-{
-  GstAudiofilterTemplate *audiofilter_template;
-
-  g_return_if_fail (GST_IS_AUDIOFILTER_TEMPLATE (audiofilter));
-  audiofilter_template = GST_AUDIOFILTER_TEMPLATE (audiofilter);
-
-  /* do something interesting here.  This simply copies the source
-   * to the destination. */
-
-  memcpy (GST_BUFFER_DATA (outbuf), GST_BUFFER_DATA (inbuf), audiofilter->size);
-}
-
-static void
-gst_audiofilter_template_filter_inplace (GstAudiofilter * audiofilter,
-    GstBuffer * buf)
-{
-  GstAudiofilterTemplate *audiofilter_template;
-
-  g_return_if_fail (GST_IS_AUDIOFILTER_TEMPLATE (audiofilter));
-  audiofilter_template = GST_AUDIOFILTER_TEMPLATE (audiofilter);
-
-  /* do something interesting here.  This simply copies the source
-   * to the destination. */
-
-}
diff --git a/gst-libs/gst/audio/make_filter b/gst-libs/gst/audio/make_filter
deleted file mode 100755 (executable)
index eaeaa06..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-#!/bin/sh
-
-LANG=C
-LC_COLLATE=C
-export LANG
-export LC_COLLATE
-
-Template=$1;
-srcfile=$2;
-
-if test x"$1" = x ; then
-       echo "$0 Objectname [srcfile]\n";
-       echo "  creates gstobjectname.{c,h} implementing GstObjectname,\n";
-       echo "  subclassing GstAudiofilter.\n";
-       exit 1;
-fi
-
-if test x"$2" = x ; then
-       srcfile="gstaudiofiltertemplate.c"
-fi
-
-id=`echo '$Id$' | sed \
-       -e 's/\$I[d]: \([^$]*\)\$/\1/g'`
-echo $id
-
-TEMPLATE=`echo $Template | tr [:lower:] [:upper:]`
-template=`echo $Template | tr [:upper:] [:lower:]`
-
-echo TEMPLATE $TEMPLATE
-echo template $template
-
-# remember to break up the Id: in the line below
-sed \
-       -e 's/gstaudiofiltertemplate\.c/SOURCEFILE/g' \
-       -e "s/AudiofilterTemplate/$Template/g" \
-       -e "s/audiofiltertemplate/$template/g" \
-       -e "s/VIDEOFILTERTEMPLATE/$TEMPLATE/g" \
-       -e 's/\$I[d]: \([^$]*\)\$/\1/g' \
-       -e 's/SOURCEFILE/gstaudiofiltertemplate\.c/g' \
-       -e "s%MAKEFILTERVERSION%$id%g" \
-       $srcfile >gst$template.c.tmp && mv gst$template.c.tmp gst$template.c
-
diff --git a/gst-libs/gst/audio/multichannel.c b/gst-libs/gst/audio/multichannel.c
deleted file mode 100644 (file)
index 67c055d..0000000
+++ /dev/null
@@ -1,634 +0,0 @@
-/* GStreamer Multichannel-Audio helper functions
- * (c) 2004 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#include "multichannel.h"
-
-#define GST_AUDIO_CHANNEL_POSITIONS_PROPERTY_NAME "channel-positions"
-
-/*
- * This function checks if basic assumptions apply:
- *  - does each position occur at most once?
- *  - do conflicting positions occur?
- *     + front_mono vs. front_left/right
- *     + front_center vs. front_left/right_of_center
- *     + rear_center vs. rear_left/right
- * It also adds some hacks that 0.8.x needs for compatibility:
- *  - if channels == 1, are we really mono?
- *  - if channels == 2, are we really stereo?
- */
-
-static gboolean
-gst_audio_check_channel_positions (const GstAudioChannelPosition * pos,
-    gint channels)
-{
-  gint i, n;
-  struct
-  {
-    GstAudioChannelPosition pos1[2];
-    GstAudioChannelPosition pos2[1];
-  } conf[] = {
-    /* front: mono <-> stereo */
-    { {
-    GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT,
-            GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT}, {
-    GST_AUDIO_CHANNEL_POSITION_FRONT_MONO}},
-        /* front center: 2 <-> 1 */
-    { {
-    GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT_OF_CENTER,
-            GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT_OF_CENTER}, {
-    GST_AUDIO_CHANNEL_POSITION_FRONT_CENTER}},
-        /* rear: 2 <-> 1 */
-    { {
-    GST_AUDIO_CHANNEL_POSITION_REAR_LEFT,
-            GST_AUDIO_CHANNEL_POSITION_REAR_RIGHT}, {
-    GST_AUDIO_CHANNEL_POSITION_REAR_CENTER}}, { {
-    GST_AUDIO_CHANNEL_POSITION_INVALID}}
-  };
-
-  /* check for invalid channel positions */
-  for (n = 0; n < channels; n++) {
-    if (pos[n] == GST_AUDIO_CHANNEL_POSITION_INVALID) {
-      g_warning ("Position %d is invalid, not allowed", n);
-      return FALSE;
-    }
-  }
-
-  /* check for multiple position occurrences */
-  for (i = GST_AUDIO_CHANNEL_POSITION_INVALID + 1;
-      i < GST_AUDIO_CHANNEL_POSITION_NUM; i++) {
-    gint count = 0;
-
-    for (n = 0; n < channels; n++) {
-      if (pos[n] == i)
-        count++;
-    }
-
-    if (count > 1) {
-      g_warning ("Channel position %d occurred %d times, not allowed",
-          i, count);
-      return FALSE;
-    }
-  }
-
-  /* check for position conflicts */
-  for (i = 0; conf[i].pos1[0] != GST_AUDIO_CHANNEL_POSITION_INVALID; i++) {
-    gboolean found1 = FALSE, found2 = FALSE;
-
-    for (n = 0; n < channels; n++) {
-      if (pos[n] == conf[i].pos1[0] || pos[n] == conf[i].pos1[1])
-        found1 = TRUE;
-      else if (pos[n] == conf[i].pos2[0])
-        found2 = TRUE;
-    }
-
-    if (found1 && found2) {
-      g_warning ("Found conflicting channel positions %d/%d and %d",
-          conf[i].pos1[0], conf[i].pos1[1], conf[i].pos2[0]);
-      return FALSE;
-    }
-  }
-
-  /* 0.8.x evilry */
-  if ((channels == 1 && pos[0] != GST_AUDIO_CHANNEL_POSITION_FRONT_MONO) ||
-      (channels == 2 && (pos[0] != GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT ||
-              pos[1] != GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT))) {
-    g_warning ("0.8.x: channels=1 implies mono; channels=2 implies stereo");
-    return FALSE;
-  }
-
-  return TRUE;
-}
-
-/**
- * gst_audio_get_channel_positions:
- * @str: A #GstStructure to retrieve channel positions from.
- *
- * Retrieves a number of (fixed!) audio channel positions from
- * the provided #GstStructure and returns it as a newly allocated
- * array. The caller should g_free () this array. The caller
- * should also check that the members in this #GstStructure are
- * indeed "fixed" before calling this function.
- *
- * Returns: a newly allocated array containing the channel
- * positions as provided in the given #GstStructure. Returns
- * NULL on error.
- */
-
-GstAudioChannelPosition *
-gst_audio_get_channel_positions (GstStructure * str)
-{
-  GstAudioChannelPosition *pos;
-  gint channels, n;
-  const GValue *pos_val_arr, *pos_val_entry;
-  gboolean res;
-  GType t;
-
-  /* get number of channels, general type checkups */
-  g_return_val_if_fail (str != NULL, NULL);
-  res = gst_structure_get_int (str, "channels", &channels);
-  g_return_val_if_fail (res, NULL);
-  g_return_val_if_fail (channels > 0, NULL);
-  pos_val_arr = gst_structure_get_value (str,
-      GST_AUDIO_CHANNEL_POSITIONS_PROPERTY_NAME);
-
-  /* The following checks are here to retain compatibility for plugins not
-   * implementing this property. They expect that channels=1 implies mono
-   * and channels=2 implies stereo, so we follow that.
-   * This might be removed during 0.9.x. */
-  if (!pos_val_arr && (channels == 1 || channels == 2)) {
-    pos = g_new (GstAudioChannelPosition, channels);
-    if (channels == 1) {
-      pos[0] = GST_AUDIO_CHANNEL_POSITION_FRONT_MONO;
-    } else {
-      pos[0] = GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT;
-      pos[1] = GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT;
-    }
-    return pos;
-  }
-  g_return_val_if_fail (pos_val_arr != NULL, NULL);
-  g_return_val_if_fail (gst_value_list_get_size (pos_val_arr) == channels,
-      NULL);
-  for (n = 0; n < channels; n++) {
-    t = G_VALUE_TYPE (gst_value_list_get_value (pos_val_arr, n));
-    g_return_val_if_fail (t == GST_TYPE_AUDIO_CHANNEL_POSITION, NULL);
-  }
-
-  /* ... and fill array */
-  pos = g_new (GstAudioChannelPosition, channels);
-  for (n = 0; n < channels; n++) {
-    pos_val_entry = gst_value_list_get_value (pos_val_arr, n);
-    pos[n] = g_value_get_enum (pos_val_entry);
-  }
-
-  if (!gst_audio_check_channel_positions (pos, channels)) {
-    g_free (pos);
-    return NULL;
-  }
-
-  return pos;
-}
-
-/**
- * gst_audio_set_channel_positions:
- * @str: A #GstStructure to retrieve channel positions from.
- * @pos: an array of channel positions. The number of members
- *       in this array should be equal to the (fixed!) number
- *       of the "channels" property in the given #GstStructure.
- *
- * Adds a "channel-positions" property to the given #GstStructure,
- * which will represent the channel positions as given in the
- * provided #GstAudioChannelPosition array.
- */
-
-void
-gst_audio_set_channel_positions (GstStructure * str,
-    const GstAudioChannelPosition * pos)
-{
-  GValue pos_val_arr = { 0 }, pos_val_entry = {
-  0};
-  gint channels, n;
-  gboolean res;
-
-  /* get number of channels, checkups */
-  g_return_if_fail (str != NULL);
-  g_return_if_fail (pos != NULL);
-  res = gst_structure_get_int (str, "channels", &channels);
-  g_return_if_fail (res);
-  g_return_if_fail (channels > 0);
-  if (!gst_audio_check_channel_positions (pos, channels))
-    return;
-
-  /* build gvaluearray from positions */
-  g_value_init (&pos_val_entry, GST_TYPE_AUDIO_CHANNEL_POSITION);
-  g_value_init (&pos_val_arr, GST_TYPE_FIXED_LIST);
-  for (n = 0; n < channels; n++) {
-    g_value_set_enum (&pos_val_entry, pos[n]);
-    gst_value_list_append_value (&pos_val_arr, &pos_val_entry);
-  }
-  g_value_unset (&pos_val_entry);
-
-  /* add to structure */
-  gst_structure_set_value (str,
-      GST_AUDIO_CHANNEL_POSITIONS_PROPERTY_NAME, &pos_val_arr);
-  g_value_unset (&pos_val_arr);
-}
-
-/**
- * gst_audio_set_structure_channel_positions_list:
- * @str: #GstStructure to set the list of channel positions
- *       on.
- * @pos: the array containing one or more possible audio
- *       channel positions that we should add in each value
- *       of the array in the given structure.
- * @num_positions: the number of values in pos.
- *
- * Sets a (possibly non-fixed) list of possible audio channel
- * positions (given in pos) on the given structure. The
- * structure, after this function has been called, will contain
- * a "channel-positions" property with an array of the size of
- * the "channels" property value in the given structure (note
- * that this means that the channels property in the provided
- * structure should be fixed!). Each value in the array will
- * contain each of the values given in the pos array.
- */
-
-void
-gst_audio_set_structure_channel_positions_list (GstStructure * str,
-    const GstAudioChannelPosition * pos, gint num_positions)
-{
-  gint channels, n, c;
-  GValue pos_val_arr = { 0 }, pos_val_list = {
-  0}, pos_val_entry = {
-  0};
-  gboolean res;
-
-  /* get number of channels, general type checkups */
-  g_return_if_fail (str != NULL);
-  g_return_if_fail (num_positions > 0);
-  g_return_if_fail (pos != NULL);
-  res = gst_structure_get_int (str, "channels", &channels);
-  g_return_if_fail (res);
-  g_return_if_fail (channels > 0);
-
-  /* 0.8.x: channels=1 or channels=2 is mono/stereo, no positions needed
-   * there (we discard them anyway) */
-  if (channels == 1 || channels == 2)
-    return;
-
-  /* create the array of lists */
-  g_value_init (&pos_val_arr, GST_TYPE_FIXED_LIST);
-  g_value_init (&pos_val_entry, GST_TYPE_AUDIO_CHANNEL_POSITION);
-  for (n = 0; n < channels; n++) {
-    g_value_init (&pos_val_list, GST_TYPE_LIST);
-    for (c = 0; c < num_positions; c++) {
-      g_value_set_enum (&pos_val_entry, pos[c]);
-      gst_value_list_append_value (&pos_val_list, &pos_val_entry);
-    }
-    gst_value_list_append_value (&pos_val_arr, &pos_val_list);
-    g_value_unset (&pos_val_list);
-  }
-  g_value_unset (&pos_val_entry);
-  gst_structure_set_value (str, GST_AUDIO_CHANNEL_POSITIONS_PROPERTY_NAME,
-      &pos_val_arr);
-  g_value_unset (&pos_val_arr);
-}
-
-/*
- * Helper function for below. The structure will be conserved,
- * but might be cut down. Any additional structures that were
- * created will be stored in the returned caps.
- */
-
-static GstCaps *
-add_list_to_struct (GstStructure * str,
-    const GstAudioChannelPosition * pos, gint num_positions)
-{
-  GstCaps *caps = gst_caps_new_empty ();
-  const GValue *chan_val;
-
-  chan_val = gst_structure_get_value (str, "channels");
-  if (G_VALUE_TYPE (chan_val) == G_TYPE_INT) {
-    gst_audio_set_structure_channel_positions_list (str, pos, num_positions);
-  } else if (G_VALUE_TYPE (chan_val) == GST_TYPE_LIST) {
-    gint size;
-    const GValue *sub_val;
-
-    size = gst_value_list_get_size (chan_val);
-    sub_val = gst_value_list_get_value (chan_val, 0);
-    gst_structure_set_value (str, "channels", sub_val);
-    gst_caps_append (caps, add_list_to_struct (str, pos, num_positions));
-    while (--size > 0) {
-      str = gst_structure_copy (str);
-      sub_val = gst_value_list_get_value (chan_val, size);
-      gst_structure_set_value (str, "channels", sub_val);
-      gst_caps_append (caps, add_list_to_struct (str, pos, num_positions));
-      gst_caps_append_structure (caps, str);
-    }
-  } else if (G_VALUE_TYPE (chan_val) == GST_TYPE_INT_RANGE) {
-    gint min, max;
-
-    min = gst_value_get_int_range_min (chan_val);
-    max = gst_value_get_int_range_max (chan_val);
-
-    gst_structure_set (str, "channels", G_TYPE_INT, min, NULL);
-    gst_audio_set_structure_channel_positions_list (str, pos, num_positions);
-    for (++min; min < max; min++) {
-      str = gst_structure_copy (str);
-      gst_structure_set (str, "channels", G_TYPE_INT, min, NULL);
-      gst_audio_set_structure_channel_positions_list (str, pos, num_positions);
-      gst_caps_append_structure (caps, str);
-    }
-  } else {
-    g_warning ("Unknown value type for channels property");
-  }
-
-  return caps;
-}
-
-/**
- * gst_audio_set_caps_channel_positions_list:
- * @caps: #GstCaps to set the list of channel positions on.
- * @pos: the array containing one or more possible audio
- *       channel positions that we should add in each value
- *       of the array in the given structure.
- * @num_positions: the number of values in pos.
- *
- * Sets a (possibly non-fixed) list of possible audio channel
- * positions (given in pos) on the given caps. Each of the
- * structures of the caps, after this function has been called,
- * will contain a "channel-positions" property with an array.
- * Each value in the array will contain each of the values given
- * in the pos array. Note that the size of the caps might be
- * increased by this, since each structure with a "channel-
- * positions" property needs to have a fixed "channels" property.
- * The input caps is not required to have this.
- */
-
-void
-gst_audio_set_caps_channel_positions_list (GstCaps * caps,
-    const GstAudioChannelPosition * pos, gint num_positions)
-{
-  gint size, n;
-
-  /* get number of channels, general type checkups */
-  g_return_if_fail (caps != NULL);
-  g_return_if_fail (num_positions > 0);
-  g_return_if_fail (pos != NULL);
-
-  size = gst_caps_get_size (caps);
-  for (n = 0; n < size; n++) {
-    gst_caps_append (caps, add_list_to_struct (gst_caps_get_structure (caps,
-                n), pos, num_positions));
-  }
-}
-
-/**
- * gst_audio_fixate_channel_positions:
- * @str: a #GstStructure containing a (possibly unfixed)
- *       "channel-positions" property.
- *
- * Custom fixate function. Elements that implement some sort of
- * channel conversion algorhithm should use this function for
- * fixating on GstAudioChannelPosition properties. It will take
- * care of equal channel positioning (left/right). Caller g_free()s
- * the return value. The input properties may be (and are supposed
- * to be) unfixed.
- * Note that this function is mostly a hack because we currently
- * have no way to add default fixation functions for new GTypes.
- *
- * Returns: fixed values that the caller could use as a fixed
- * set of #GstAudioChannelPosition values.
- */
-
-GstAudioChannelPosition *
-gst_audio_fixate_channel_positions (GstStructure * str)
-{
-  GstAudioChannelPosition *pos;
-  gint channels, n, num_unfixed = 0, i, c;
-  const GValue *pos_val_arr, *pos_val_entry, *pos_val;
-  gboolean res, is_stereo = TRUE;
-  GType t;
-
-  /*
-   * We're going to do this cluelessly. We'll make an array of values that
-   * conflict with each other and, for each iteration in this array, pick
-   * either one until all unknown values are filled. This might not work in
-   * corner cases but should work OK for the general case.
-   */
-  struct
-  {
-    GstAudioChannelPosition pos1[2];
-    GstAudioChannelPosition pos2[1];
-  } conf[] = {
-    /* front: mono <-> stereo */
-    { {
-    GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT,
-            GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT}, {
-    GST_AUDIO_CHANNEL_POSITION_FRONT_MONO}},
-        /* front center: 2 <-> 1 */
-    { {
-    GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT_OF_CENTER,
-            GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT_OF_CENTER}, {
-    GST_AUDIO_CHANNEL_POSITION_FRONT_CENTER}},
-        /* rear: 2 <-> 1 */
-    { {
-    GST_AUDIO_CHANNEL_POSITION_REAR_LEFT,
-            GST_AUDIO_CHANNEL_POSITION_REAR_RIGHT}, {
-    GST_AUDIO_CHANNEL_POSITION_REAR_CENTER}}, { {
-    GST_AUDIO_CHANNEL_POSITION_INVALID, GST_AUDIO_CHANNEL_POSITION_INVALID}, {
-    GST_AUDIO_CHANNEL_POSITION_LFE}}, { {
-    GST_AUDIO_CHANNEL_POSITION_SIDE_LEFT,
-            GST_AUDIO_CHANNEL_POSITION_SIDE_RIGHT}, {
-    GST_AUDIO_CHANNEL_POSITION_INVALID}}, { {
-    GST_AUDIO_CHANNEL_POSITION_INVALID, GST_AUDIO_CHANNEL_POSITION_INVALID}, {
-    GST_AUDIO_CHANNEL_POSITION_INVALID}}
-  };
-  struct
-  {
-    gint num_opt[3];
-    guint num_opts[3];
-    gboolean is_fixed[3];
-    gint choice;                /* -1 is none, 0 is the two, 1 is the one */
-  } opt;
-
-  /* get number of channels, general type checkups */
-  g_return_val_if_fail (str != NULL, NULL);
-  res = gst_structure_get_int (str, "channels", &channels);
-  g_return_val_if_fail (res, NULL);
-  g_return_val_if_fail (channels > 0, NULL);
-
-  /* 0.8.x mono/stereo checks */
-  pos_val_arr = gst_structure_get_value (str,
-      GST_AUDIO_CHANNEL_POSITIONS_PROPERTY_NAME);
-  if (!pos_val_arr && (channels == 1 || channels == 2)) {
-    pos = g_new (GstAudioChannelPosition, channels);
-    if (channels == 1) {
-      pos[0] = GST_AUDIO_CHANNEL_POSITION_FRONT_MONO;
-    } else {
-      pos[0] = GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT;
-      pos[1] = GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT;
-    }
-    return pos;
-  }
-  g_return_val_if_fail (pos_val_arr != NULL, NULL);
-  g_return_val_if_fail (gst_value_list_get_size (pos_val_arr) == channels,
-      NULL);
-  for (n = 0; n < channels; n++) {
-    t = G_VALUE_TYPE (gst_value_list_get_value (pos_val_arr, n));
-    g_return_val_if_fail (t == GST_TYPE_LIST ||
-        t == GST_TYPE_AUDIO_CHANNEL_POSITION, NULL);
-  }
-
-  /* all unknown, to start with */
-  pos = g_new (GstAudioChannelPosition, channels);
-  for (n = 0; n < channels; n++)
-    pos[n] = GST_AUDIO_CHANNEL_POSITION_INVALID;
-  num_unfixed = channels;
-
-  /* Iterate the array of conflicting values */
-  for (i = 0; conf[i].pos1[0] != GST_AUDIO_CHANNEL_POSITION_INVALID ||
-      conf[i].pos2[0] != GST_AUDIO_CHANNEL_POSITION_INVALID; i++) {
-    /* front/center only important if not mono (obviously) */
-    if (conf[i].pos1[0] == GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT_OF_CENTER &&
-        !is_stereo)
-      continue;
-
-    /* init values */
-    for (n = 0; n < 3; n++) {
-      opt.num_opt[n] = -1;
-      opt.num_opts[n] = -1;
-      opt.is_fixed[n] = FALSE;
-    }
-
-    /* Now, we'll see for each channel if it allows for any of the values in
-     * the set of conflicting audio channel positions and keep scores. */
-    for (n = 0; n < channels; n++) {
-      /* if the channel is already taken, don't bother */
-      if (pos[n] != GST_AUDIO_CHANNEL_POSITION_INVALID)
-        continue;
-
-      pos_val_entry = gst_value_list_get_value (pos_val_arr, n);
-      t = G_VALUE_TYPE (pos_val_entry);
-      if (t == GST_TYPE_LIST) {
-        /* This algorhythm is suboptimal. */
-        for (c = 0; c < gst_value_list_get_size (pos_val_entry); c++) {
-          pos_val = gst_value_list_get_value (pos_val_entry, c);
-          if (g_value_get_enum (pos_val) == conf[i].pos1[0] &&
-              opt.num_opts[0] > gst_value_list_get_size (pos_val_entry) &&
-              !opt.is_fixed[0]) {
-            /* Now test if the old position of num_opt[0] also allows for
-             * the other channel (which was skipped previously). If so,
-             * keep score. */
-            if (opt.num_opt[0] != -1) {
-              gint c1;
-
-              pos_val_entry = gst_value_list_get_value (pos_val_arr,
-                  opt.num_opt[0]);
-              if (G_VALUE_TYPE (pos_val_entry) == GST_TYPE_LIST) {
-                for (c1 = 0; c1 < gst_value_list_get_size (pos_val_entry); c1++) {
-                  pos_val = gst_value_list_get_value (pos_val_entry, c1);
-                  if (g_value_get_enum (pos_val) == conf[i].pos1[1] &&
-                      opt.num_opts[1] > opt.num_opts[0] && !opt.is_fixed[1]) {
-                    opt.num_opts[1] = opt.num_opts[0];
-                    opt.num_opt[1] = opt.num_opt[0];
-                  }
-                }
-                pos_val = gst_value_list_get_value (pos_val_entry, c);
-              }
-              pos_val_entry = gst_value_list_get_value (pos_val_arr, n);
-            }
-
-            /* and save values */
-            opt.num_opts[0] = gst_value_list_get_size (pos_val_entry);
-            opt.num_opt[0] = n;
-          } else if (g_value_get_enum (pos_val) == conf[i].pos1[1] &&
-              opt.num_opts[1] > gst_value_list_get_size (pos_val_entry) &&
-              !opt.is_fixed[1] && n != opt.num_opt[0]) {
-            opt.num_opts[1] = gst_value_list_get_size (pos_val_entry);
-            opt.num_opt[1] = n;
-          }
-
-          /* 2 goes separately, because 0/1 vs. 2 are separate */
-          if (g_value_get_enum (pos_val) == conf[i].pos2[0] &&
-              opt.num_opts[2] > gst_value_list_get_size (pos_val_entry) &&
-              !opt.is_fixed[2]) {
-            opt.num_opts[2] = gst_value_list_get_size (pos_val_entry);
-            opt.num_opt[2] = n;
-          }
-        }
-      } else {
-        if (g_value_get_enum (pos_val_entry) == conf[i].pos1[0]) {
-          opt.num_opt[0] = n;
-          opt.is_fixed[0] = TRUE;
-        } else if (g_value_get_enum (pos_val_entry) == conf[i].pos1[1]) {
-          opt.num_opt[1] = n;
-          opt.is_fixed[1] = TRUE;
-        } else if (g_value_get_enum (pos_val_entry) == conf[i].pos2[0]) {
-          opt.num_opt[2] = n;
-          opt.is_fixed[2] = TRUE;
-        }
-      }
-    }
-
-    /* check our results and choose either one */
-    if ((opt.is_fixed[0] || opt.is_fixed[1]) && opt.is_fixed[2]) {
-      g_warning ("Pre-fixated on both %d/%d and %d - conflict!",
-          conf[i].pos1[0], conf[i].pos1[1], conf[i].pos2[0]);
-      g_free (pos);
-      return NULL;
-    } else if ((opt.is_fixed[0] && opt.num_opt[1] == -1) ||
-        (opt.is_fixed[1] && opt.num_opt[0] == -1)) {
-      g_warning ("Pre-fixated one side, but other side n/a of %d/%d",
-          conf[i].pos1[0], conf[i].pos1[1]);
-      g_free (pos);
-      return NULL;
-    } else if (opt.is_fixed[0] || opt.is_fixed[1]) {
-      opt.choice = 0;
-    } else if (opt.is_fixed[2]) {
-      opt.choice = 1;
-    } else if (opt.num_opt[0] != -1 && opt.num_opt[1] != -1) {
-      opt.choice = 0;
-    } else if (opt.num_opt[2] != -1) {
-      opt.choice = 1;
-    } else {
-      opt.choice = -1;
-    }
-
-    /* stereo? Note that we keep is_stereo to TRUE if we didn't decide on
-     * any arrangement. The mono/stereo channels might be handled elsewhere
-     * which is clearly outside the scope of this element, so we cannot
-     * know and expect the application to handle that then. */
-    if (conf[i].pos2[0] == GST_AUDIO_CHANNEL_POSITION_FRONT_MONO &&
-        opt.choice == 1) {
-      is_stereo = FALSE;
-    }
-
-    /* now actually decide what we'll do and fixate on that */
-    if (opt.choice == 0) {
-      g_assert (conf[i].pos1[0] != GST_AUDIO_CHANNEL_POSITION_INVALID &&
-          conf[i].pos1[1] != GST_AUDIO_CHANNEL_POSITION_INVALID);
-      pos[opt.num_opt[0]] = conf[i].pos1[0];
-      pos[opt.num_opt[1]] = conf[i].pos1[1];
-      num_unfixed -= 2;
-    } else if (opt.choice == 1) {
-      g_assert (conf[i].pos2[0] != GST_AUDIO_CHANNEL_POSITION_INVALID);
-      pos[opt.num_opt[2]] = conf[i].pos2[0];
-      num_unfixed--;
-    }
-  }
-
-  /* safety check */
-  if (num_unfixed > 0) {
-    g_warning ("%d unfixed channel positions left after fixation!",
-        num_unfixed);
-    g_free (pos);
-    return NULL;
-  }
-
-  if (!gst_audio_check_channel_positions (pos, channels)) {
-    g_free (pos);
-    return NULL;
-  }
-
-  return pos;
-}
diff --git a/gst-libs/gst/audio/multichannel.h b/gst-libs/gst/audio/multichannel.h
deleted file mode 100644 (file)
index 3b32222..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-/* GStreamer Multichannel-Audio helper functions
- * (c) 2004 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __GST_AUDIO_MULTICHANNEL_H__
-#define __GST_AUDIO_MULTICHANNEL_H__
-
-#include <gst/audio/audio.h>
-#include <gst/audio/multichannel-enumtypes.h>
-
-G_BEGIN_DECLS
-
-typedef enum {
-  GST_AUDIO_CHANNEL_POSITION_INVALID = -1,
-
-  /* Main front speakers. Mono and left/right are mututally exclusive! */
-  GST_AUDIO_CHANNEL_POSITION_FRONT_MONO,
-  GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT,
-  GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT,
-
-  /* rear. Left/right and center are mututally exclusive! */
-  GST_AUDIO_CHANNEL_POSITION_REAR_CENTER,
-  GST_AUDIO_CHANNEL_POSITION_REAR_LEFT,
-  GST_AUDIO_CHANNEL_POSITION_REAR_RIGHT,
-
-  /* subwoofer/low-frequency */
-  GST_AUDIO_CHANNEL_POSITION_LFE,
-
-  /* Center front speakers. Center and left/right_of_center cannot be
-   * used together! */
-  GST_AUDIO_CHANNEL_POSITION_FRONT_CENTER,
-  GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT_OF_CENTER,
-  GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT_OF_CENTER,
-
-  /* sides */
-  GST_AUDIO_CHANNEL_POSITION_SIDE_LEFT,
-  GST_AUDIO_CHANNEL_POSITION_SIDE_RIGHT,
-
-  /* don't use - counter */
-  GST_AUDIO_CHANNEL_POSITION_NUM
-} GstAudioChannelPosition;
-
-/* Retrieves or sets the positions from/to a GstStructure. Only
- * works with fixed caps, caller should check for that! Caller
- * g_free()s result of the getter. */
-GstAudioChannelPosition *
-       gst_audio_get_channel_positions (GstStructure *str);
-void   gst_audio_set_channel_positions (GstStructure *str,
-                                        const GstAudioChannelPosition *pos);
-
-/* Sets a (non-fixed) list of possible audio channel positions
- * on a structure (this requires the "channels" property to
- * be fixed!) or on a caps (here, the "channels" property may be
- * unfixed and the caps may even contain multiple structures). */
-void   gst_audio_set_structure_channel_positions_list
-                                       (GstStructure *str,
-                                        const GstAudioChannelPosition *pos,
-                                        gint          num_positions);
-void   gst_audio_set_caps_channel_positions_list
-                                       (GstCaps      *caps,
-                                        const GstAudioChannelPosition *pos,
-                                        gint          num_positions);
-
-/* Custom fixate function. Elements that implement some sort of
- * channel conversion algorhithm should use this function for
- * fixating on GstAudioChannelPosition properties. It will take
- * care of equal channel positioning (left/right). Caller g_free()s
- * the return value. The input properties may be (and are supposed
- * to be) unfixed. */
-GstAudioChannelPosition *
-       gst_audio_fixate_channel_positions (GstStructure *str);
-
-G_END_DECLS
-
-#endif /* __GST_AUDIO_MULTICHANNEL_H__ */
diff --git a/gst-libs/gst/audio/testchannels.c b/gst-libs/gst/audio/testchannels.c
deleted file mode 100644 (file)
index b886c82..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-/* GStreamer Multichannel Test
- * (c) 2004 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#include <gst/gst.h>
-
-#include <multichannel.c>
-#include <multichannel-enumtypes.c>
-
-gint
-main (gint argc, gchar * argv[])
-{
-  gchar *str;
-  GstCaps *caps;
-  GstAudioChannelPosition pos[2] = { GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT,
-    GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT
-  };
-
-  /* register multichannel type */
-  gst_init (&argc, &argv);
-  gst_audio_channel_position_get_type ();
-
-  /* test some caps-string conversions */
-  caps = gst_caps_new_simple ("audio/x-raw-int",
-      "channels", G_TYPE_INT, 2, NULL);
-  str = gst_caps_to_string (caps);
-  g_print ("Test caps #1: %s\n", str);
-  g_free (str);
-  gst_audio_set_channel_positions (gst_caps_get_structure (caps, 0), pos);
-  str = gst_caps_to_string (caps);
-  g_print ("Test caps #2: %s\n", str);
-  g_free (str);
-  gst_caps_free (caps);
-
-  return 0;
-}
diff --git a/gst-libs/gst/colorbalance/Makefile.am b/gst-libs/gst/colorbalance/Makefile.am
deleted file mode 100644 (file)
index 5888fb5..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-# variables used for enum/marshal generation
-glib_enum_headers=$(colorbalance_headers)
-glib_enum_define=GST_COLOR_BALANCE
-glib_enum_prefix=gst_color_balance
-
-libgstcolorbalanceincludedir = \
-       $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/colorbalance
-
-colorbalance_headers = \
-       colorbalance.h \
-       colorbalancechannel.h
-
-built_sources =        \
-       colorbalance-marshal.c \
-       colorbalance-enumtypes.c
-
-built_headers =        \
-       colorbalance-marshal.h \
-       colorbalance-enumtypes.h
-
-libgstcolorbalanceinclude_HEADERS = \
-       $(colorbalance_headers)
-
-nodist_libgstcolorbalanceinclude_HEADERS = \
-       colorbalance-enumtypes.h
-
-noinst_LTLIBRARIES = libgstcolorbalance.la
-
-libgstcolorbalance_la_SOURCES = \
-       colorbalance.c \
-       colorbalancechannel.c
-
-nodist_libgstcolorbalance_la_SOURCES = \
-        $(built_sources) \
-       colorbalance-marshal.h
-
-libgstcolorbalance_la_CFLAGS = $(GST_CFLAGS)
-
-BUILT_SOURCES = \
-        $(built_sources) \
-        $(built_headers)
-
-EXTRA_DIST = colorbalance-marshal.list
-
-CLEANFILES = $(BUILT_SOURCES)
-
-include $(top_srcdir)/common/glib-gen.mak
diff --git a/gst-libs/gst/colorbalance/colorbalance-marshal.list b/gst-libs/gst/colorbalance/colorbalance-marshal.list
deleted file mode 100644 (file)
index b9d0c49..0000000
+++ /dev/null
@@ -1 +0,0 @@
-VOID:OBJECT,INT
diff --git a/gst-libs/gst/colorbalance/colorbalance.c b/gst-libs/gst/colorbalance/colorbalance.c
deleted file mode 100644 (file)
index ac6e511..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
-/* GStreamer Color Balance
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * colorbalance.c: image color balance interface design
- *                virtual class function wrappers
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "colorbalance.h"
-#include "colorbalance-marshal.h"
-
-enum
-{
-  VALUE_CHANGED,
-  LAST_SIGNAL
-};
-
-static void gst_color_balance_class_init (GstColorBalanceClass * klass);
-
-static guint gst_color_balance_signals[LAST_SIGNAL] = { 0 };
-
-GType
-gst_color_balance_get_type (void)
-{
-  static GType gst_color_balance_type = 0;
-
-  if (!gst_color_balance_type) {
-    static const GTypeInfo gst_color_balance_info = {
-      sizeof (GstColorBalanceClass),
-      (GBaseInitFunc) gst_color_balance_class_init,
-      NULL,
-      NULL,
-      NULL,
-      NULL,
-      0,
-      0,
-      NULL,
-    };
-
-    gst_color_balance_type = g_type_register_static (G_TYPE_INTERFACE,
-        "GstColorBalance", &gst_color_balance_info, 0);
-    g_type_interface_add_prerequisite (gst_color_balance_type,
-        GST_TYPE_IMPLEMENTS_INTERFACE);
-  }
-
-  return gst_color_balance_type;
-}
-
-static void
-gst_color_balance_class_init (GstColorBalanceClass * klass)
-{
-  static gboolean initialized = FALSE;
-
-  if (!initialized) {
-    gst_color_balance_signals[VALUE_CHANGED] =
-        g_signal_new ("value-changed",
-        GST_TYPE_COLOR_BALANCE, G_SIGNAL_RUN_LAST,
-        G_STRUCT_OFFSET (GstColorBalanceClass, value_changed),
-        NULL, NULL,
-        gst_color_balance_marshal_VOID__OBJECT_INT,
-        G_TYPE_NONE, 2, GST_TYPE_COLOR_BALANCE_CHANNEL, G_TYPE_INT);
-
-    initialized = TRUE;
-  }
-
-  klass->balance_type = GST_COLOR_BALANCE_SOFTWARE;
-
-  /* default virtual functions */
-  klass->list_channels = NULL;
-  klass->set_value = NULL;
-  klass->get_value = NULL;
-}
-
-const GList *
-gst_color_balance_list_channels (GstColorBalance * balance)
-{
-  GstColorBalanceClass *klass = GST_COLOR_BALANCE_GET_CLASS (balance);
-
-  if (klass->list_channels) {
-    return klass->list_channels (balance);
-  }
-
-  return NULL;
-}
-
-void
-gst_color_balance_set_value (GstColorBalance * balance,
-    GstColorBalanceChannel * channel, gint value)
-{
-  GstColorBalanceClass *klass = GST_COLOR_BALANCE_GET_CLASS (balance);
-
-  if (klass->set_value) {
-    klass->set_value (balance, channel, value);
-  }
-}
-
-gint
-gst_color_balance_get_value (GstColorBalance * balance,
-    GstColorBalanceChannel * channel)
-{
-  GstColorBalanceClass *klass = GST_COLOR_BALANCE_GET_CLASS (balance);
-
-  if (klass->get_value) {
-    return klass->get_value (balance, channel);
-  }
-
-  return channel->min_value;
-}
-
-void
-gst_color_balance_value_changed (GstColorBalance * balance,
-    GstColorBalanceChannel * channel, gint value)
-{
-  g_signal_emit (G_OBJECT (balance),
-      gst_color_balance_signals[VALUE_CHANGED], 0, channel, value);
-
-  g_signal_emit_by_name (G_OBJECT (channel), "value_changed", value);
-}
diff --git a/gst-libs/gst/colorbalance/colorbalance.h b/gst-libs/gst/colorbalance/colorbalance.h
deleted file mode 100644 (file)
index d7b9217..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-/* GStreamer Color Balance
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * color-balance.h: image color balance interface design
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __GST_COLOR_BALANCE_H__
-#define __GST_COLOR_BALANCE_H__
-
-#include <gst/gst.h>
-#include <gst/colorbalance/colorbalancechannel.h>
-#include <gst/colorbalance/colorbalance-enumtypes.h>
-
-G_BEGIN_DECLS
-
-#define GST_TYPE_COLOR_BALANCE \
-  (gst_color_balance_get_type ())
-#define GST_COLOR_BALANCE(obj) \
-  (GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_COLOR_BALANCE, \
-                                                GstColorBalance))
-#define GST_COLOR_BALANCE_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_COLOR_BALANCE, \
-                           GstColorBalanceClass))
-#define GST_IS_COLOR_BALANCE(obj) \
-  (GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_COLOR_BALANCE))
-#define GST_IS_COLOR_BALANCE_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_COLOR_BALANCE))
-#define GST_COLOR_BALANCE_GET_CLASS(inst) \
-  (G_TYPE_INSTANCE_GET_INTERFACE ((inst), GST_TYPE_COLOR_BALANCE, GstColorBalanceClass))
-  
-#define GST_COLOR_BALANCE_TYPE(klass) (klass->balance_type)
-
-typedef struct _GstColorBalance GstColorBalance;
-  
-typedef enum
-{
-  GST_COLOR_BALANCE_HARDWARE,
-  GST_COLOR_BALANCE_SOFTWARE
-} GstColorBalanceType;
-
-typedef struct _GstColorBalanceClass {
-  GTypeInterface klass;
-
-  GstColorBalanceType balance_type;
-  
-  /* virtual functions */
-  const GList * (* list_channels) (GstColorBalance        *balance);
-
-  void          (* set_value)     (GstColorBalance        *balance,
-                                  GstColorBalanceChannel *channel,
-                                  gint                    value);
-  gint          (* get_value)     (GstColorBalance        *balance,
-                                  GstColorBalanceChannel *channel);
-
-  /* signals */
-  void (* value_changed) (GstColorBalance        *balance,
-                         GstColorBalanceChannel *channel,
-                         gint                    value);
-
-  gpointer _gst_reserved[GST_PADDING];
-} GstColorBalanceClass;
-
-GType  gst_color_balance_get_type      (void);
-
-/* virtual class function wrappers */
-const GList *
-       gst_color_balance_list_channels (GstColorBalance        *balance);
-void   gst_color_balance_set_value     (GstColorBalance        *balance,
-                                        GstColorBalanceChannel *channel,
-                                        gint                    value);
-gint   gst_color_balance_get_value     (GstColorBalance        *balance,
-                                        GstColorBalanceChannel *channel);
-
-/* trigger signal */
-void   gst_color_balance_value_changed (GstColorBalance        *balance,
-                                        GstColorBalanceChannel *channel,
-                                        gint                    value);
-
-G_END_DECLS
-
-#endif /* __GST_COLOR_BALANCE_H__ */
diff --git a/gst-libs/gst/colorbalance/colorbalance.vcproj b/gst-libs/gst/colorbalance/colorbalance.vcproj
deleted file mode 100644 (file)
index 33980ed..0000000
+++ /dev/null
@@ -1,150 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
-       ProjectType="Visual C++"
-       Version="7.10"
-       Name="colorbalance"
-       ProjectGUID="{979C216F-0ACF-4956-AE00-055A42D67894}"
-       RootNamespace="colorbalance"
-       Keyword="Win32Proj">
-       <Platforms>
-               <Platform
-                       Name="Win32"/>
-       </Platforms>
-       <Configurations>
-               <Configuration
-                       Name="Debug|Win32"
-                       OutputDirectory="../../../win32/Debug"
-                       IntermediateDirectory="../../../win32/Debug"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               Optimization="0"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               MinimalRebuild="TRUE"
-                               BasicRuntimeChecks="3"
-                               RuntimeLibrary="3"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="4"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstcolorbalance.dll"
-                               LinkIncremental="2"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Debug;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile="colorbalance.def"
-                               GenerateDebugInformation="TRUE"
-                               ProgramDatabaseFile="$(OutDir)/colorbalance.pdb"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               ImportLibrary="$(OutDir)/gstcolorbalance.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-               <Configuration
-                       Name="Release|Win32"
-                       OutputDirectory="../../../win32/Release"
-                       IntermediateDirectory="../../../win32/Release"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;NDEBUG;GST_DISABLE_GST_DEBUG;_WINDOWS;_USRDLL;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               RuntimeLibrary="2"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="3"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstcolorbalance.dll"
-                               LinkIncremental="1"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Release;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile="colorbalance.def"
-                               GenerateDebugInformation="TRUE"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               EnableCOMDATFolding="2"
-                               ImportLibrary="$(OutDir)/gstcolorbalance.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-       </Configurations>
-       <References>
-       </References>
-       <Files>
-               <Filter
-                       Name="Source Files"
-                       Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
-                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
-                       <File
-                               RelativePath=".\colorbalance.c">
-                       </File>
-                       <File
-                               RelativePath=".\colorbalancechannel.c">
-                       </File>
-               </Filter>
-               <Filter
-                       Name="Header Files"
-                       Filter="h;hpp;hxx;hm;inl;inc;xsd"
-                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
-                       <File
-                               RelativePath=".\colorbalance.h">
-                       </File>
-                       <File
-                               RelativePath=".\colorbalancechannel.h">
-                       </File>
-               </Filter>
-       </Files>
-       <Globals>
-       </Globals>
-</VisualStudioProject>
diff --git a/gst-libs/gst/colorbalance/colorbalancechannel.c b/gst-libs/gst/colorbalance/colorbalancechannel.c
deleted file mode 100644 (file)
index 4fd0ea8..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-/* GStreamer Color Balance
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * colorbalancechannel.c: colorbalance channel object design
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "colorbalancechannel.h"
-
-enum
-{
-  /* FILL ME */
-  SIGNAL_VALUE_CHANGED,
-  LAST_SIGNAL
-};
-
-static void gst_color_balance_channel_class_init (GstColorBalanceChannelClass *
-    klass);
-static void gst_color_balance_channel_init (GstColorBalanceChannel * balance);
-static void gst_color_balance_channel_dispose (GObject * object);
-
-static GObjectClass *parent_class = NULL;
-static guint signals[LAST_SIGNAL] = { 0 };
-
-GType
-gst_color_balance_channel_get_type (void)
-{
-  static GType gst_color_balance_channel_type = 0;
-
-  if (!gst_color_balance_channel_type) {
-    static const GTypeInfo color_balance_channel_info = {
-      sizeof (GstColorBalanceChannelClass),
-      NULL,
-      NULL,
-      (GClassInitFunc) gst_color_balance_channel_class_init,
-      NULL,
-      NULL,
-      sizeof (GstColorBalanceChannel),
-      0,
-      (GInstanceInitFunc) gst_color_balance_channel_init,
-      NULL
-    };
-
-    gst_color_balance_channel_type =
-        g_type_register_static (G_TYPE_OBJECT,
-        "GstColorBalanceChannel", &color_balance_channel_info, 0);
-  }
-
-  return gst_color_balance_channel_type;
-}
-
-static void
-gst_color_balance_channel_class_init (GstColorBalanceChannelClass * klass)
-{
-  GObjectClass *object_klass = (GObjectClass *) klass;
-
-  parent_class = g_type_class_ref (G_TYPE_OBJECT);
-
-  signals[SIGNAL_VALUE_CHANGED] =
-      g_signal_new ("value-changed", G_TYPE_FROM_CLASS (klass),
-      G_SIGNAL_RUN_LAST,
-      G_STRUCT_OFFSET (GstColorBalanceChannelClass,
-          value_changed),
-      NULL, NULL, g_cclosure_marshal_VOID__INT, G_TYPE_NONE, 1, G_TYPE_INT);
-
-  object_klass->dispose = gst_color_balance_channel_dispose;
-}
-
-static void
-gst_color_balance_channel_init (GstColorBalanceChannel * channel)
-{
-  channel->label = NULL;
-  channel->min_value = channel->max_value = 0;
-}
-
-static void
-gst_color_balance_channel_dispose (GObject * object)
-{
-  GstColorBalanceChannel *channel = GST_COLOR_BALANCE_CHANNEL (object);
-
-  if (channel->label)
-    g_free (channel->label);
-
-  channel->label = NULL;
-
-  if (parent_class->dispose)
-    parent_class->dispose (object);
-}
diff --git a/gst-libs/gst/colorbalance/colorbalancechannel.h b/gst-libs/gst/colorbalance/colorbalancechannel.h
deleted file mode 100644 (file)
index 23f73f8..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-/* GStreamer Color Balance
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * colorbalancechannel.h: individual channel object
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __GST_COLOR_BALANCE_CHANNEL_H__
-#define __GST_COLOR_BALANCE_CHANNEL_H__
-
-#include <gst/gst.h>
-
-G_BEGIN_DECLS
-
-#define GST_TYPE_COLOR_BALANCE_CHANNEL \
-  (gst_color_balance_channel_get_type ())
-#define GST_COLOR_BALANCE_CHANNEL(obj) \
-  (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_COLOR_BALANCE_CHANNEL, \
-                              GstColorBalanceChannel))
-#define GST_COLOR_BALANCE_CHANNEL_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_COLOR_BALANCE_CHANNEL, \
-                           GstColorBalanceChannelClass))
-#define GST_IS_COLOR_BALANCE_CHANNEL(obj) \
-  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_COLOR_BALANCE_CHANNEL))
-#define GST_IS_COLOR_BALANCE_CHANNEL_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_COLOR_BALANCE_CHANNEL))
-
-typedef struct _GstColorBalanceChannel {
-  GObject parent;
-
-  gchar  *label;
-  gint    min_value,
-         max_value;
-} GstColorBalanceChannel;
-
-typedef struct _GstColorBalanceChannelClass {
-  GObjectClass parent;
-
-  /* signals */
-  void (* value_changed) (GstColorBalanceChannel *channel,
-                         gint                    value);
-
-  gpointer _gst_reserved[GST_PADDING];
-} GstColorBalanceChannelClass;
-
-GType  gst_color_balance_channel_get_type (void);
-
-G_END_DECLS
-
-#endif /* __GST_COLOR_BALANCE_CHANNEL_H__ */
diff --git a/gst-libs/gst/floatcast/Makefile.am b/gst-libs/gst/floatcast/Makefile.am
deleted file mode 100644 (file)
index b18029c..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-floatcastincludedir = $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/floatcast
-floatcastinclude_HEADERS = floatcast.h
diff --git a/gst-libs/gst/floatcast/floatcast.h b/gst-libs/gst/floatcast/floatcast.h
deleted file mode 100644 (file)
index ae87a43..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-/* GStreamer
- * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
- * Library       <2002> Steve Baker <stevebaker_org@yahoo.co.uk>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __FLOATCAST_H__
-#define __FLOATCAST_H__
-
-#ifdef HAVE_CONFIG_H
-#  include "config.h"
-#endif
-
-#include <string.h>
-#include <glib/gtypes.h>
-
-G_BEGIN_DECLS
-
-#if (HAVE_LRINT && HAVE_LRINTF)
-
-       /*      These defines enable functionality introduced with the 1999 ISO C
-       **      standard. They must be defined before the inclusion of math.h to
-       **      engage them. If optimisation is enabled, these functions will be 
-       **      inlined. With optimisation switched off, you have to link in the
-       **      maths library using -lm.
-       */
-
-       #define _ISOC9X_SOURCE  1
-       #define _ISOC99_SOURCE  1
-
-       #define __USE_ISOC9X    1
-       #define __USE_ISOC99    1
-
-       #include        <math.h>
-
-       #define gst_cast_float(x)       ((gint)lrintf(x))
-       #define gst_cast_double(x)      ((gint)lrint(x))
-
-#else
-       /* use a standard c cast, but do rounding correctly */
-       #define gst_cast_float(x)       ((gint)floor((x)+0.5))
-       #define gst_cast_double(x)      ((gint)floor((x)+0.5))
-
-#endif
-
-inline static gfloat
-GFLOAT_SWAP_LE_BE(gfloat in)
-{
-  gint32 swap;
-  gfloat out;
-  memcpy(&swap, &in, 4);
-  swap = GUINT32_SWAP_LE_BE_CONSTANT (swap);
-  memcpy(&out, &swap, 4);
-  return out;
-}
-
-inline static gdouble
-GDOUBLE_SWAP_LE_BE(gdouble in)
-{
-  gint64 swap;
-  gdouble out;
-  memcpy(&swap, &in, 8);
-  swap = GUINT64_SWAP_LE_BE_CONSTANT (swap);
-  memcpy(&out, &swap, 8);
-  return out;
-}
-
-#if G_BYTE_ORDER == G_LITTLE_ENDIAN
-#define GFLOAT_TO_LE(val)    ((gfloat) (val))
-#define GFLOAT_TO_BE(val)    (GFLOAT_SWAP_LE_BE (val))
-#define GDOUBLE_TO_LE(val)   ((gdouble) (val))
-#define GDOUBLE_TO_BE(val)   (GDOUBLE_SWAP_LE_BE (val))
-
-#elif G_BYTE_ORDER == G_BIG_ENDIAN
-#define GFLOAT_TO_LE(val)    (GFLOAT_SWAP_LE_BE (val))
-#define GFLOAT_TO_BE(val)    ((gfloat) (val))
-#define GDOUBLE_TO_LE(val)   (GDOUBLE_SWAP_LE_BE (val))
-#define GDOUBLE_TO_BE(val)   ((gdouble) (val))
-
-#else /* !G_LITTLE_ENDIAN && !G_BIG_ENDIAN */
-#error unknown ENDIAN type
-#endif /* !G_LITTLE_ENDIAN && !G_BIG_ENDIAN */
-
-#define GFLOAT_FROM_LE(val)  (GFLOAT_TO_LE (val))
-#define GFLOAT_FROM_BE(val)  (GDOUBLE_TO_BE (val))
-#define GDOUBLE_FROM_LE(val) (GFLOAT_TO_LE (val))
-#define GDOUBLE_FROM_BE(val) (GDOUBLE_TO_BE (val))
-
-G_END_DECLS
-
-#endif /* __FLOATCAST_H__ */
-
diff --git a/gst-libs/gst/gconf/Makefile.am b/gst-libs/gst/gconf/Makefile.am
deleted file mode 100644 (file)
index f816f94..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-librarydir = $(libdir)
-
-library_LTLIBRARIES = libgstgconf-@GST_MAJORMINOR@.la
-
-libgstgconf_@GST_MAJORMINOR@_la_SOURCES = gconf.c
-
-libgstgconf_@GST_MAJORMINOR@includedir = $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/gconf
-libgstgconf_@GST_MAJORMINOR@include_HEADERS = gconf.h
-
-noinst_PROGRAMS = test-gconf
-
-# add define for GST_GCONF_DIR
-DIR_CFLAGS=-DGST_GCONF_DIR=\"/system/gstreamer/@GST_MAJORMINOR@\"
-
-test_gconf_CFLAGS = $(GST_CFLAGS) $(GCONF_CFLAGS) $(DIR_CFLAGS)
-test_gconf_LDADD = $(GST_LIBS) $(GCONF_LIBS) libgstgconf-@GST_MAJORMINOR@.la
-
-libgstgconf_@GST_MAJORMINOR@_la_LIBADD = $(GST_LIBS) $(GCONF_LIBS)
-libgstgconf_@GST_MAJORMINOR@_la_CFLAGS = $(GST_CFLAGS) $(GCONF_CFLAGS) $(DIR_CFLAGS)
-libgstgconf_@GST_MAJORMINOR@_la_LDFLAGS = @GST_PLUGINS_LT_LDFLAGS@ -version-info @GST_PLUGINS_LIBVERSION@
diff --git a/gst-libs/gst/gconf/gconf.c b/gst-libs/gst/gconf/gconf.c
deleted file mode 100644 (file)
index de3182f..0000000
+++ /dev/null
@@ -1,318 +0,0 @@
-/* GStreamer
- * Copyright (C) <2002> Thomas Vander Stichele <thomas@apestaart.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-/*
- * this library handles interaction with GConf
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "gconf.h"
-
-#ifndef GST_GCONF_DIR
-#error "GST_GCONF_DIR is not defined !"
-#endif
-
-static GConfClient *_gst_gconf_client = NULL;   /* GConf connection */
-
-
-/* internal functions */
-
-static GConfClient *
-gst_gconf_get_client (void)
-{
-  if (!_gst_gconf_client)
-    _gst_gconf_client = gconf_client_get_default ();
-
-  return _gst_gconf_client;
-}
-
-/* go through a bin, finding the one pad that is unconnected in the given
- *  * direction, and return that pad */
-static GstPad *
-gst_bin_find_unconnected_pad (GstBin * bin, GstPadDirection direction)
-{
-  GstPad *pad = NULL;
-  GList *elements = NULL;
-  const GList *pads = NULL;
-  GstElement *element = NULL;
-
-  elements = (GList *) gst_bin_get_list (bin);
-  /* traverse all elements looking for unconnected pads */
-  while (elements && pad == NULL) {
-    element = GST_ELEMENT (elements->data);
-    pads = gst_element_get_pad_list (element);
-    while (pads) {
-      /* check if the direction matches */
-      if (GST_PAD_DIRECTION (GST_PAD (pads->data)) == direction) {
-        if (GST_PAD_PEER (GST_PAD (pads->data)) == NULL) {
-          /* found it ! */
-          pad = GST_PAD (pads->data);
-        }
-      }
-      if (pad)
-        break;                  /* found one already */
-      pads = g_list_next (pads);
-    }
-    elements = g_list_next (elements);
-  }
-  return pad;
-}
-
-/* external functions */
-
-/**
- * gst_gconf_get_string:
- * @key: a #gchar corresponding to the key you want to get.
- *
- * Get GConf key @key's string value.
- *
- * Returns: a newly allocated #gchar string containing @key's value,
- * or NULL in the case of an error..
- */
-gchar *
-gst_gconf_get_string (const gchar * key)
-{
-  GError *error = NULL;
-  gchar *value = NULL;
-  gchar *full_key = g_strdup_printf ("%s/%s", GST_GCONF_DIR, key);
-
-
-  value = gconf_client_get_string (gst_gconf_get_client (), full_key, &error);
-  g_free (full_key);
-
-  if (error) {
-    g_warning ("gst_gconf_get_string: error: %s\n", error->message);
-    g_error_free (error);
-    return NULL;
-  }
-
-  return value;
-}
-
-/**
- * gst_gconf_set_string:
- * @key: a #gchar corresponding to the key you want to set.
- * @value: a #gchar containing key value.
- *
- * Set GConf key @key to string value @value.
- */
-void
-gst_gconf_set_string (const gchar * key, const gchar * value)
-{
-  GError *error = NULL;
-  gchar *full_key = g_strdup_printf ("%s/%s", GST_GCONF_DIR, key);
-
-  gconf_client_set_string (gst_gconf_get_client (), full_key, value, &error);
-  if (error) {
-    GST_ERROR ("gst_gconf_set_string: error: %s\n", error->message);
-    g_error_free (error);
-  }
-  g_free (full_key);
-}
-
-/**
- * gst_gconf_render_bin_from_description:
- * @description: a #gchar string describing the bin.
- *
- * Render bin from description @description.
- *
- * Returns: a #GstElement containing the rendered bin.
- */
-GstElement *
-gst_gconf_render_bin_from_description (const gchar * description)
-{
-  GstElement *bin = NULL;
-  GstPad *pad = NULL;
-  GError *error = NULL;
-  gchar *desc = NULL;
-
-  /* parse the pipeline to a bin */
-  desc = g_strdup_printf ("bin.( %s )", description);
-  bin = GST_ELEMENT (gst_parse_launch (desc, &error));
-  g_free (desc);
-  if (error) {
-    GST_ERROR ("gstgconf: error parsing pipeline %s\n%s\n",
-        description, error->message);
-    g_error_free (error);
-    return NULL;
-  }
-
-  /* find pads and ghost them if necessary */
-  if ((pad = gst_bin_find_unconnected_pad (GST_BIN (bin), GST_PAD_SRC))) {
-    gst_element_add_ghost_pad (bin, pad, "src");
-  }
-  if ((pad = gst_bin_find_unconnected_pad (GST_BIN (bin), GST_PAD_SINK))) {
-    gst_element_add_ghost_pad (bin, pad, "sink");
-  }
-  return bin;
-}
-
-/**
- * gst_gconf_render_bin_from_key:
- * @key: a #gchar string corresponding to a GConf key.
- *
- * Render bin from GConf key @key.
- *
- * Returns: a #GstElement containing the rendered bin.
- */
-GstElement *
-gst_gconf_render_bin_from_key (const gchar * key)
-{
-  GstElement *bin = NULL;
-  gchar *value;
-
-  value = gst_gconf_get_string (key);
-  if (value)
-    bin = gst_gconf_render_bin_from_description (value);
-  g_free (value);
-  return bin;
-}
-
-/**
- * gst_gconf_get_default_audio_sink:
- *
- * Render audio output bin from GStreamer GConf key : "default/audiosink".
- * If key is invalid, the default audio sink for the platform is used
- * (typically osssink or sunaudiosink).
- *
- * Returns: a #GstElement containing the audio output bin, or NULL if
- * everything failed.
- */
-GstElement *
-gst_gconf_get_default_audio_sink (void)
-{
-  GstElement *ret = gst_gconf_render_bin_from_key ("default/audiosink");
-
-  if (!ret) {
-    ret = gst_element_factory_make (DEFAULT_AUDIOSINK, NULL);
-
-    if (!ret)
-      g_warning ("No GConf default audio sink key and %s doesn't work",
-          DEFAULT_AUDIOSINK);
-  }
-
-  return ret;
-}
-
-/**
- * gst_gconf_get_default_video_sink:
- *
- * Render video output bin from GStreamer GConf key : "default/videosink".
- * If key is invalid, the default video sink for the platform is used
- * (typically xvimagesink or ximagesink).
- *
- * Returns: a #GstElement containing the video output bin, or NULL if
- * everything failed.
- */
-GstElement *
-gst_gconf_get_default_video_sink (void)
-{
-  GstElement *ret = gst_gconf_render_bin_from_key ("default/videosink");
-
-  if (!ret) {
-    ret = gst_element_factory_make (DEFAULT_VIDEOSINK, NULL);
-
-    if (!ret)
-      g_warning ("No GConf default video sink key and %s doesn't work",
-          DEFAULT_VIDEOSINK);
-  }
-
-  return ret;
-}
-
-/**
- * gst_gconf_get_default_audio_src:
- *
- * Render audio acquisition bin from GStreamer GConf key : "default/audiosrc".
- * If key is invalid, the default audio source for the plaform is used.
- * (typically osssrc or sunaudiosrc).
- *
- * Returns: a #GstElement containing the audio source bin, or NULL if
- * everything failed.
- */
-GstElement *
-gst_gconf_get_default_audio_src (void)
-{
-  GstElement *ret = gst_gconf_render_bin_from_key ("default/audiosrc");
-
-  if (!ret) {
-    ret = gst_element_factory_make (DEFAULT_AUDIOSRC, NULL);
-
-    if (!ret)
-      g_warning ("No GConf default audio src key and %s doesn't work",
-          DEFAULT_AUDIOSRC);
-  }
-
-  return ret;
-}
-
-/**
- * gst_gconf_get_default_video_src:
- *
- * Render video acquisition bin from GStreamer GConf key :
- * "default/videosrc". If key is invalid, the default video source
- * for the platform is used (typically videotestsrc).
- *
- * Returns: a #GstElement containing the video source bin, or NULL if
- * everything failed.
- */
-GstElement *
-gst_gconf_get_default_video_src (void)
-{
-  GstElement *ret = gst_gconf_render_bin_from_key ("default/videosrc");
-
-  if (!ret) {
-    ret = gst_element_factory_make (DEFAULT_VIDEOSRC, NULL);
-
-    if (!ret)
-      g_warning ("No GConf default video src key and %s doesn't work",
-          DEFAULT_VIDEOSRC);
-  }
-
-  return ret;
-}
-
-/**
- * gst_gconf_get_default_visualization_element:
- *
- * Render visualization bin from GStreamer GConf key : "default/visualization".
- * If key is invalid, the default visualization element is used.
- *
- * Returns: a #GstElement containing the visualization bin, or NULL if
- * everything failed.
- */
-GstElement *
-gst_gconf_get_default_visualization_element (void)
-{
-  GstElement *ret = gst_gconf_render_bin_from_key ("default/visualization");
-
-  if (!ret) {
-    ret = gst_element_factory_make (DEFAULT_VISUALIZER, NULL);
-
-    if (!ret)
-      g_warning
-          ("No GConf default visualization plugin key and %s doesn't work",
-          DEFAULT_VISUALIZER);
-  }
-
-  return ret;
-}
diff --git a/gst-libs/gst/gconf/gconf.h b/gst-libs/gst/gconf/gconf.h
deleted file mode 100644 (file)
index 7dce40b..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-/* GStreamer
- * Copyright (C) <2002> Thomas Vander Stichele <thomas@apestaart.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef GST_GCONF_H
-#define GST_GCONF_H
-
-/*
- * this library handles interaction with GConf
- */
-
-#include <gst/gst.h>
-#include <gconf/gconf-client.h>
-
-G_BEGIN_DECLS
-
-gchar *                gst_gconf_get_string            (const gchar *key);
-void           gst_gconf_set_string            (const gchar *key, 
-                                                 const gchar *value);
-
-GstElement *   gst_gconf_render_bin_from_key           (const gchar *key);
-GstElement *   gst_gconf_render_bin_from_description   (const gchar *description);
-
-GstElement *   gst_gconf_get_default_video_sink (void);
-GstElement *   gst_gconf_get_default_audio_sink (void);
-GstElement *   gst_gconf_get_default_video_src (void);
-GstElement *   gst_gconf_get_default_audio_src (void);
-GstElement *   gst_gconf_get_default_visualization_element (void);
-
-G_END_DECLS
-
-#endif /* GST_GCONF_H */
diff --git a/gst-libs/gst/gconf/test-gconf.c b/gst-libs/gst/gconf/test-gconf.c
deleted file mode 100644 (file)
index bfc8cab..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-/* GStreamer
- * Copyright (C) <2002> Thomas Vander Stichele <thomas@apestaart.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#include "gconf.h"
-
-int
-main (int argc, char *argv[])
-{
-  gst_init (&argc, &argv);
-
-  printf ("Default video sink : %s\n",
-      gst_gconf_get_string ("default/videosink"));
-  printf ("Default audio sink : %s\n",
-      gst_gconf_get_string ("default/audiosink"));
-  printf ("Default video src : %s\n",
-      gst_gconf_get_string ("default/videosrc"));
-  printf ("Default audio src : %s\n",
-      gst_gconf_get_string ("default/audiosrc"));
-  return 0;
-}
diff --git a/gst-libs/gst/idct/Makefile.am b/gst-libs/gst/idct/Makefile.am
deleted file mode 100644 (file)
index d8ddf8d..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-
-librarydir = $(libdir)/gstreamer-@GST_MAJORMINOR@
-
-library_LTLIBRARIES = libgstidct.la
-
-libgstidct_la_SOURCES = \
-        fastintidct.c \
-       floatidct.c \
-       idct.c \
-       intidct.c
-
-libgstidctincludedir = $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/idct
-libgstidctinclude_HEADERS = idct.h
-noinst_HEADERS = dct.h
-
-## check_PROGRAMS = ieeetest
-
-## ieeetest_SOURCES = ieeetest.c
-## ieeetest_LDADD = libgstidct.la
-## ieeetest_CFLAGS = $(GST_CFLAGS)
-## ieeetest_LDFLAGS = $(GST_LIBS)
-
-
-libgstidct_la_LIBADD =
-libgstidct_la_CFLAGS = $(GST_CFLAGS)
-libgstidct_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
diff --git a/gst-libs/gst/idct/README b/gst-libs/gst/idct/README
deleted file mode 100644 (file)
index 600f3da..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-This archive contains a quick & dirty implementation of the IEEE Standard
-1180-1990 accuracy test for inverse DCT.  It is not guaranteed to be
-correct ... but if you find any bugs, please let me know (by email to
-tgl@cs.cmu.edu).
-
-The test harness consists of the C program ieeetest.c and shell script
-doieee.  For comparison purposes I have also supplied a copy of jrevdct.c,
-the inverse DCT routine from release 4 of the Independent JPEG Group's
-free JPEG software.  (jrevdct.c is slightly modified from the IJG release
-so that it will compile without the IJG include files.)  jrevdct.c passes
-the 1180 test --- or at least, this program thinks so.  jrevdct.out is
-the output from a test run.
-
-Note that numerical results may vary somewhat across machines.  This appears
-to be mostly due to differing results from the cosine function.
-
-
-INSTALLATION:
-  Check the Makefile, change CC and CFLAGS if needed.  Then say "make".
-If your C compiler is non-ANSI, you may need to change includes and/or
-function headers.
-
-  To test a different IDCT routine, link with that routine instead of
-jrevdct.o.  You will need to modify dct.h and/or ieeetest.c if your
-routine's calling convention is not in-place modification of an array
-of 64 "short"s.
-
-
-USAGE:
-  The standard test procedure is
-       doieee ieeetest >outputfile
-Expect it to take a while (almost 80 minutes on my old 68030 box).
-Each of the six passes will emit a row of 100 dots as it runs.
-
-You can grep the output for the word FAILS if you just want to know
-yea or nay.
-
-
-LEGAL MUMBO-JUMBO:
-  I hereby release the test harness to the public domain.
-                       Thomas G. Lane, 22 Nov 1993
-
-IMPORTANT: jrevdct.c is NOT public domain, but is copyrighted free software
-(not the same thing at all).  It is subject to IJG's distribution terms, which
-primarily state that if you incorporate it into a program you must acknowledge
-IJG's contribution in your program documentation.  For more details and the
-complete IJG software, see the IJG FTP archive at ftp.uu.net, in directory
-/graphics/jpeg.
diff --git a/gst-libs/gst/idct/dct.h b/gst-libs/gst/idct/dct.h
deleted file mode 100644 (file)
index ea453cd..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* define DCT types */
-
-/*
- * DCTSIZE      underlying (1d) transform size
- * DCTSIZE2     DCTSIZE squared
- */
-
-#define DCTSIZE      (8)
-#define DCTSIZE2     (DCTSIZE*DCTSIZE)
-
-#define EIGHT_BIT_SAMPLES      /* needed in jrevdct.c */
-
-typedef short DCTELEM;         /* must be at least 16 bits */
-
-typedef DCTELEM DCTBLOCK[DCTSIZE2];
-
-typedef long INT32;            /* must be at least 32 bits */
-
-extern void gst_idct_int_idct();
-
-extern void gst_idct_init_fast_int_idct (void);
-extern void gst_idct_fast_int_idct (short *block);
-
-extern void gst_idct_init_float_idct(void);
-extern void gst_idct_float_idct (short *block);
-
diff --git a/gst-libs/gst/idct/doieee b/gst-libs/gst/idct/doieee
deleted file mode 100755 (executable)
index 1d5ff87..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-# perform IEEE 1180 test series
-# Typical usage:
-#    doieee  >outfile
-# where progname is ieeetest or a variant
-
-for i in 1 2 3 4 5; 
-do
-time ./ieeetest $i -256 255 1 10000
-time ./ieeetest $i -5 5     1 10000
-time ./ieeetest $i -300 300 1 10000
-
-time ./ieeetest $i -256 255 -1 10000
-time ./ieeetest $i -5 5     -1 10000
-time ./ieeetest $i -300 300 -1 10000
-done
diff --git a/gst-libs/gst/idct/fastintidct.c b/gst-libs/gst/idct/fastintidct.c
deleted file mode 100644 (file)
index d4caaf3..0000000
+++ /dev/null
@@ -1,215 +0,0 @@
-/* idct.c, inverse fast discrete cosine transform                           */
-
-/* Copyright (C) 1996, MPEG Software Simulation Group. All Rights Reserved. */
-
-/*
- * Disclaimer of Warranty
- *
- * These software programs are available to the user without any license fee or
- * royalty on an "as is" basis.  The MPEG Software Simulation Group disclaims
- * any and all warranties, whether express, implied, or statuary, including any
- * implied warranties or merchantability or of fitness for a particular
- * purpose.  In no event shall the copyright-holder be liable for any
- * incidental, punitive, or consequential damages of any kind whatsoever
- * arising from the use of these programs.
- *
- * This disclaimer of warranty extends to the user of these programs and user's
- * customers, employees, agents, transferees, successors, and assigns.
- *
- * The MPEG Software Simulation Group does not represent or warrant that the
- * programs furnished hereunder are free of infringement of any third-party
- * patents.
- *
- * Commercial implementations of MPEG-1 and MPEG-2 video, including shareware,
- * are subject to royalty fees to patent holders.  Many of these patents are
- * general enough such that they are unavoidable regardless of implementation
- * design.
- *
- */
-
-/**********************************************************/
-/* inverse two dimensional DCT, Chen-Wang algorithm       */
-/* (cf. IEEE ASSP-32, pp. 803-816, Aug. 1984)             */
-/* 32-bit integer arithmetic (8 bit coefficients)         */
-/* 11 mults, 29 adds per DCT                              */
-/*                                      sE, 18.8.91       */
-/**********************************************************/
-/* coefficients extended to 12 bit for IEEE1180-1990      */
-/* compliance                           sE,  2.1.94       */
-/**********************************************************/
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-/* this code assumes >> to be a two's-complement arithmetic */
-/* right shift: (-2)>>1 == -1 , (-3)>>1 == -2               */
-
-#define W1 2841                 /* 2048*sqrt(2)*cos(1*pi/16) */
-#define W2 2676                 /* 2048*sqrt(2)*cos(2*pi/16) */
-#define W3 2408                 /* 2048*sqrt(2)*cos(3*pi/16) */
-#define W5 1609                 /* 2048*sqrt(2)*cos(5*pi/16) */
-#define W6 1108                 /* 2048*sqrt(2)*cos(6*pi/16) */
-#define W7 565                  /* 2048*sqrt(2)*cos(7*pi/16) */
-
-#include "dct.h"
-
-/* private data */
-static short iclip[1024];       /* clipping table */
-static short *iclp;
-
-/* private prototypes */
-static void idctrow (short *blk);
-static void idctcol (short *blk);
-
-/* row (horizontal) IDCT
- *
- *           7                       pi         1
- * dst[k] = sum c[l] * src[l] * cos( -- * ( k + - ) * l )
- *          l=0                      8          2
- *
- * where: c[0]    = 128
- *        c[1..7] = 128*sqrt(2)
- */
-
-static void
-idctrow (blk)
-     short *blk;
-{
-  int x0, x1, x2, x3, x4, x5, x6, x7, x8;
-
-  /* shortcut */
-  if (!((x1 = blk[4] << 11) | (x2 = blk[6]) | (x3 = blk[2]) |
-          (x4 = blk[1]) | (x5 = blk[7]) | (x6 = blk[5]) | (x7 = blk[3]))) {
-    blk[0] = blk[1] = blk[2] = blk[3] = blk[4] = blk[5] = blk[6] = blk[7] =
-        blk[0] << 3;
-    return;
-  }
-
-  x0 = (blk[0] << 11) + 128;    /* for proper rounding in the fourth stage */
-
-  /* first stage */
-  x8 = W7 * (x4 + x5);
-  x4 = x8 + (W1 - W7) * x4;
-  x5 = x8 - (W1 + W7) * x5;
-  x8 = W3 * (x6 + x7);
-  x6 = x8 - (W3 - W5) * x6;
-  x7 = x8 - (W3 + W5) * x7;
-
-  /* second stage */
-  x8 = x0 + x1;
-  x0 -= x1;
-  x1 = W6 * (x3 + x2);
-  x2 = x1 - (W2 + W6) * x2;
-  x3 = x1 + (W2 - W6) * x3;
-  x1 = x4 + x6;
-  x4 -= x6;
-  x6 = x5 + x7;
-  x5 -= x7;
-
-  /* third stage */
-  x7 = x8 + x3;
-  x8 -= x3;
-  x3 = x0 + x2;
-  x0 -= x2;
-  x2 = (181 * (x4 + x5) + 128) >> 8;
-  x4 = (181 * (x4 - x5) + 128) >> 8;
-
-  /* fourth stage */
-  blk[0] = (x7 + x1) >> 8;
-  blk[1] = (x3 + x2) >> 8;
-  blk[2] = (x0 + x4) >> 8;
-  blk[3] = (x8 + x6) >> 8;
-  blk[4] = (x8 - x6) >> 8;
-  blk[5] = (x0 - x4) >> 8;
-  blk[6] = (x3 - x2) >> 8;
-  blk[7] = (x7 - x1) >> 8;
-}
-
-/* column (vertical) IDCT
- *
- *             7                         pi         1
- * dst[8*k] = sum c[l] * src[8*l] * cos( -- * ( k + - ) * l )
- *            l=0                        8          2
- *
- * where: c[0]    = 1/1024
- *        c[1..7] = (1/1024)*sqrt(2)
- */
-static void
-idctcol (blk)
-     short *blk;
-{
-  int x0, x1, x2, x3, x4, x5, x6, x7, x8;
-
-  /* shortcut */
-  if (!((x1 = (blk[8 * 4] << 8)) | (x2 = blk[8 * 6]) | (x3 = blk[8 * 2]) |
-          (x4 = blk[8 * 1]) | (x5 = blk[8 * 7]) | (x6 = blk[8 * 5]) | (x7 =
-              blk[8 * 3]))) {
-    blk[8 * 0] = blk[8 * 1] = blk[8 * 2] = blk[8 * 3] = blk[8 * 4] =
-        blk[8 * 5] = blk[8 * 6] = blk[8 * 7] = iclp[(blk[8 * 0] + 32) >> 6];
-    return;
-  }
-
-  x0 = (blk[8 * 0] << 8) + 8192;
-
-  /* first stage */
-  x8 = W7 * (x4 + x5) + 4;
-  x4 = (x8 + (W1 - W7) * x4) >> 3;
-  x5 = (x8 - (W1 + W7) * x5) >> 3;
-  x8 = W3 * (x6 + x7) + 4;
-  x6 = (x8 - (W3 - W5) * x6) >> 3;
-  x7 = (x8 - (W3 + W5) * x7) >> 3;
-
-  /* second stage */
-  x8 = x0 + x1;
-  x0 -= x1;
-  x1 = W6 * (x3 + x2) + 4;
-  x2 = (x1 - (W2 + W6) * x2) >> 3;
-  x3 = (x1 + (W2 - W6) * x3) >> 3;
-  x1 = x4 + x6;
-  x4 -= x6;
-  x6 = x5 + x7;
-  x5 -= x7;
-
-  /* third stage */
-  x7 = x8 + x3;
-  x8 -= x3;
-  x3 = x0 + x2;
-  x0 -= x2;
-  x2 = (181 * (x4 + x5) + 128) >> 8;
-  x4 = (181 * (x4 - x5) + 128) >> 8;
-
-  /* fourth stage */
-  blk[8 * 0] = iclp[(x7 + x1) >> 14];
-  blk[8 * 1] = iclp[(x3 + x2) >> 14];
-  blk[8 * 2] = iclp[(x0 + x4) >> 14];
-  blk[8 * 3] = iclp[(x8 + x6) >> 14];
-  blk[8 * 4] = iclp[(x8 - x6) >> 14];
-  blk[8 * 5] = iclp[(x0 - x4) >> 14];
-  blk[8 * 6] = iclp[(x3 - x2) >> 14];
-  blk[8 * 7] = iclp[(x7 - x1) >> 14];
-}
-
-/* two dimensional inverse discrete cosine transform */
-void
-gst_idct_fast_int_idct (block)
-     short *block;
-{
-  int i;
-
-  for (i = 0; i < 8; i++)
-    idctrow (block + 8 * i);
-
-  for (i = 0; i < 8; i++)
-    idctcol (block + i);
-}
-
-void
-gst_idct_init_fast_int_idct ()
-{
-  int i;
-
-  iclp = iclip + 512;
-  for (i = -512; i < 512; i++)
-    iclp[i] = (i < -256) ? -256 : ((i > 255) ? 255 : i);
-}
diff --git a/gst-libs/gst/idct/floatidct.c b/gst-libs/gst/idct/floatidct.c
deleted file mode 100644 (file)
index 65e01d4..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-/* Reference_IDCT.c, Inverse Discrete Fourier Transform, double precision          */
-
-/* Copyright (C) 1996, MPEG Software Simulation Group. All Rights Reserved. */
-
-/*
- * Disclaimer of Warranty
- *
- * These software programs are available to the user without any license fee or
- * royalty on an "as is" basis.  The MPEG Software Simulation Group disclaims
- * any and all warranties, whether express, implied, or statuary, including any
- * implied warranties or merchantability or of fitness for a particular
- * purpose.  In no event shall the copyright-holder be liable for any
- * incidental, punitive, or consequential damages of any kind whatsoever
- * arising from the use of these programs.
- *
- * This disclaimer of warranty extends to the user of these programs and user's
- * customers, employees, agents, transferees, successors, and assigns.
- *
- * The MPEG Software Simulation Group does not represent or warrant that the
- * programs furnished hereunder are free of infringement of any third-party
- * patents.
- *
- * Commercial implementations of MPEG-1 and MPEG-2 video, including shareware,
- * are subject to royalty fees to patent holders.  Many of these patents are
- * general enough such that they are unavoidable regardless of implementation
- * design.
- *
- */
-
-/*  Perform IEEE 1180 reference (64-bit floating point, separable 8x1
- *  direct matrix multiply) Inverse Discrete Cosine Transform
-*/
-
-
-/* Here we use math.h to generate constants.  Compiler results may
-   vary a little */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <math.h>
-
-#ifndef PI
-# ifdef M_PI
-#  define PI M_PI
-# else
-#  define PI 3.14159265358979323846
-# endif
-#endif
-
-/* private data */
-
-/* cosine transform matrix for 8x1 IDCT */
-static double gst_idct_float_c[8][8];
-
-/* initialize DCT coefficient matrix */
-
-void
-gst_idct_init_float_idct ()
-{
-  int freq, time;
-  double scale;
-
-  for (freq = 0; freq < 8; freq++) {
-    scale = (freq == 0) ? sqrt (0.125) : 0.5;
-    for (time = 0; time < 8; time++)
-      gst_idct_float_c[freq][time] =
-          scale * cos ((PI / 8.0) * freq * (time + 0.5));
-  }
-}
-
-/* perform IDCT matrix multiply for 8x8 coefficient block */
-
-void
-gst_idct_float_idct (block)
-     short *block;
-{
-  int i, j, k, v;
-  double partial_product;
-  double tmp[64];
-
-  for (i = 0; i < 8; i++)
-    for (j = 0; j < 8; j++) {
-      partial_product = 0.0;
-
-      for (k = 0; k < 8; k++)
-        partial_product += gst_idct_float_c[k][j] * block[8 * i + k];
-
-      tmp[8 * i + j] = partial_product;
-    }
-
-  /* Transpose operation is integrated into address mapping by switching 
-     loop order of i and j */
-
-  for (j = 0; j < 8; j++)
-    for (i = 0; i < 8; i++) {
-      partial_product = 0.0;
-
-      for (k = 0; k < 8; k++)
-        partial_product += gst_idct_float_c[k][i] * tmp[8 * k + j];
-
-      v = (int) floor (partial_product + 0.5);
-      block[8 * i + j] = (v < -256) ? -256 : ((v > 255) ? 255 : v);
-    }
-}
diff --git a/gst-libs/gst/idct/idct.c b/gst-libs/gst/idct/idct.c
deleted file mode 100644 (file)
index ea24d44..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
-/* GStreamer
- * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#  include "config.h"
-#endif
-
-#include <gst/gst.h>
-#include <gst/idct/idct.h>
-#include "dct.h"
-
-static void gst_idct_int_sparse_idct (short *data);
-
-GstIDCT *
-gst_idct_new (GstIDCTMethod method)
-{
-  GstIDCT *new = g_malloc (sizeof (GstIDCT));
-
-  new->need_transpose = FALSE;
-
-  if (method == GST_IDCT_DEFAULT) {
-    method = GST_IDCT_FAST_INT;
-  }
-
-  new->convert_sparse = gst_idct_int_sparse_idct;
-
-  switch (method) {
-    case GST_IDCT_FAST_INT:
-      GST_INFO ("using fast_int_idct");
-      gst_idct_init_fast_int_idct ();
-      new->convert = gst_idct_fast_int_idct;
-      break;
-    case GST_IDCT_INT:
-      GST_INFO ("using int_idct");
-      new->convert = gst_idct_int_idct;
-      break;
-    case GST_IDCT_FLOAT:
-      GST_INFO ("using float_idct");
-      gst_idct_init_float_idct ();
-      new->convert = gst_idct_float_idct;
-      break;
-    default:
-      GST_INFO ("method not supported");
-      g_free (new);
-      return NULL;
-  }
-  return new;
-}
-
-static void
-gst_idct_int_sparse_idct (short *data)
-{
-  short val;
-  gint32 v, *dp = (guint32 *) data;
-
-  v = *data;
-
-  if (v < 0) {
-    val = -v;
-    val += (8 >> 1);
-    val /= 8;
-    val = -val;
-  } else {
-    val = (v + (8 >> 1)) / 8;
-  }
-  v = ((val & 0xffff) | (val << 16));
-
-  dp[0] = v;
-  dp[1] = v;
-  dp[2] = v;
-  dp[3] = v;
-  dp[4] = v;
-  dp[5] = v;
-  dp[6] = v;
-  dp[7] = v;
-  dp[8] = v;
-  dp[9] = v;
-  dp[10] = v;
-  dp[11] = v;
-  dp[12] = v;
-  dp[13] = v;
-  dp[14] = v;
-  dp[15] = v;
-  dp[16] = v;
-  dp[17] = v;
-  dp[18] = v;
-  dp[19] = v;
-  dp[20] = v;
-  dp[21] = v;
-  dp[22] = v;
-  dp[23] = v;
-  dp[24] = v;
-  dp[25] = v;
-  dp[26] = v;
-  dp[27] = v;
-  dp[28] = v;
-  dp[29] = v;
-  dp[30] = v;
-  dp[31] = v;
-}
-
-void
-gst_idct_destroy (GstIDCT * idct)
-{
-  g_return_if_fail (idct != NULL);
-
-  g_free (idct);
-}
-
-static gboolean
-plugin_init (GstPlugin * plugin)
-{
-  return TRUE;
-}
-
-GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
-    GST_VERSION_MINOR,
-    "gstidct",
-    "Accelerated IDCT routines",
-    plugin_init, VERSION, GST_LICENSE, GST_PACKAGE, GST_ORIGIN)
diff --git a/gst-libs/gst/idct/idct.h b/gst-libs/gst/idct/idct.h
deleted file mode 100644 (file)
index 290ca9d..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-/* GStreamer
- * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-
-#ifndef __GST_IDCT_H__
-#define __GST_IDCT_H__
-
-#include <glib.h>
-
-G_BEGIN_DECLS
-
-typedef enum {
-  GST_IDCT_DEFAULT,    
-  GST_IDCT_INT,        
-  GST_IDCT_FAST_INT, 
-  GST_IDCT_FLOAT,   
-} GstIDCTMethod;
-
-typedef struct _GstIDCT GstIDCT;
-typedef void (*GstIDCTFunction) (gshort *block);
-
-#define GST_IDCT_TRANSPOSE(idct) ((idct)->need_transpose)
-
-struct _GstIDCT {
-  /* private */
-  GstIDCTFunction convert;
-  GstIDCTFunction convert_sparse;
-  gboolean need_transpose;
-};
-
-
-GstIDCT *gst_idct_new(GstIDCTMethod method);
-#define gst_idct_convert(idct, blocks) (idct)->convert((blocks))
-#define gst_idct_convert_sparse(idct, blocks) (idct)->convert_sparse((blocks))
-void gst_idct_destroy(GstIDCT *idct);
-
-G_END_DECLS
-
-#endif /* __GST_IDCT_H__ */
diff --git a/gst-libs/gst/idct/idtc.vcproj b/gst-libs/gst/idct/idtc.vcproj
deleted file mode 100644 (file)
index 0ce4e2a..0000000
+++ /dev/null
@@ -1,156 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
-       ProjectType="Visual C++"
-       Version="7.10"
-       Name="idtc"
-       ProjectGUID="{979C216F-0ACF-4956-AE00-055A42D67895}"
-       RootNamespace="idtc"
-       Keyword="Win32Proj">
-       <Platforms>
-               <Platform
-                       Name="Win32"/>
-       </Platforms>
-       <Configurations>
-               <Configuration
-                       Name="Debug|Win32"
-                       OutputDirectory="../../../win32/Debug"
-                       IntermediateDirectory="../../../win32/Debug"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               Optimization="0"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               MinimalRebuild="TRUE"
-                               BasicRuntimeChecks="3"
-                               RuntimeLibrary="3"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="4"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstidtc.dll"
-                               LinkIncremental="2"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Debug;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile=""
-                               GenerateDebugInformation="TRUE"
-                               ProgramDatabaseFile="$(OutDir)/idtc.pdb"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               ImportLibrary="$(OutDir)/gstidtc.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-               <Configuration
-                       Name="Release|Win32"
-                       OutputDirectory="../../../win32/Release"
-                       IntermediateDirectory="../../../win32/Release"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;NDEBUG;GST_DISABLE_GST_DEBUG;_WINDOWS;_USRDLL;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               RuntimeLibrary="2"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="3"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstidtc.dll"
-                               LinkIncremental="1"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Release;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile=""
-                               GenerateDebugInformation="TRUE"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               EnableCOMDATFolding="2"
-                               ImportLibrary="$(OutDir)/gstidtc.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-       </Configurations>
-       <References>
-       </References>
-       <Files>
-               <Filter
-                       Name="Source Files"
-                       Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
-                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
-                       <File
-                               RelativePath=".\fastintidct.c">
-                       </File>
-                       <File
-                               RelativePath=".\floatidct.c">
-                       </File>
-                       <File
-                               RelativePath=".\idct.c">
-                       </File>
-                       <File
-                               RelativePath=".\intidct.c">
-                       </File>
-               </Filter>
-               <Filter
-                       Name="Header Files"
-                       Filter="h;hpp;hxx;hm;inl;inc;xsd"
-                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
-                       <File
-                               RelativePath=".\dct.h">
-                       </File>
-                       <File
-                               RelativePath=".\idtc.h">
-                       </File>
-               </Filter>
-       </Files>
-       <Globals>
-       </Globals>
-</VisualStudioProject>
diff --git a/gst-libs/gst/idct/ieeetest.c b/gst-libs/gst/idct/ieeetest.c
deleted file mode 100644 (file)
index 7af101e..0000000
+++ /dev/null
@@ -1,366 +0,0 @@
-/*
- * ieeetest.c --- test IDCT code against the IEEE Std 1180-1990 spec
- *
- * Note that this does only one pass of the test.
- * Six invocations of ieeetest are needed to complete the entire spec.
- * The shell script "doieee" performs the complete test.
- *
- * Written by Tom Lane (tgl@cs.cmu.edu).
- * Released to public domain 11/22/93.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-#include <math.h>
-
-#include <gst/gst.h>
-#include <gst/idct/idct.h>
-#include "dct.h"
-
-
-/* prototypes */
-
-void usage (char *msg);
-long ieeerand (long L, long H);
-void dct_init (void);
-void ref_fdct (DCTELEM block[8][8]);
-void ref_idct (DCTELEM block[8][8]);
-
-/* error stat accumulators -- assume initialized to 0 */
-
-long sumerrs[DCTSIZE2];
-long sumsqerrs[DCTSIZE2];
-int maxerr[DCTSIZE2];
-
-
-char *
-meets (double val, double limit)
-{
-  return ((fabs (val) <= limit) ? "meets" : "FAILS");
-}
-
-int
-main (int argc, char **argv)
-{
-  long minpix, maxpix, sign;
-  long curiter, niters;
-  int i, j;
-  double max, total;
-  int method;
-  DCTELEM block[DCTSIZE2];      /* random source data */
-  DCTELEM refcoefs[DCTSIZE2];   /* coefs from reference FDCT */
-  DCTELEM refout[DCTSIZE2];     /* output from reference IDCT */
-  DCTELEM testout[DCTSIZE2];    /* output from test IDCT */
-  GstIDCT *idct;
-  guint64 tscstart, tscmin = ~0, tscmax = 0;
-  guint64 tscstop;
-
-  /* Argument parsing --- not very bulletproof at all */
-
-  if (argc != 6)
-    usage (NULL);
-
-  method = atoi (argv[1]);
-  minpix = atoi (argv[2]);
-  maxpix = atoi (argv[3]);
-  sign = atoi (argv[4]);
-  niters = atol (argv[5]);
-
-  gst_library_load ("gstidct");
-
-  idct = gst_idct_new (method);
-  if (idct == 0) {
-    printf ("method not available\n\n\n");
-
-    return 0;
-  }
-
-  dct_init ();
-
-  /* Loop once per generated random-data block */
-
-  for (curiter = 0; curiter < niters; curiter++) {
-
-    /* generate a pseudo-random block of data */
-    for (i = 0; i < DCTSIZE2; i++)
-      block[i] = (DCTELEM) (ieeerand (-minpix, maxpix) * sign);
-
-    /* perform reference FDCT */
-    memcpy (refcoefs, block, sizeof (DCTELEM) * DCTSIZE2);
-    ref_fdct ((DCTELEM **) & refcoefs);
-    /* clip */
-    for (i = 0; i < DCTSIZE2; i++) {
-      if (refcoefs[i] < -2048)
-        refcoefs[i] = -2048;
-      else if (refcoefs[i] > 2047)
-        refcoefs[i] = 2047;
-    }
-
-    /* perform reference IDCT */
-    memcpy (refout, refcoefs, sizeof (DCTELEM) * DCTSIZE2);
-    ref_idct (refout);
-    /* clip */
-    for (i = 0; i < DCTSIZE2; i++) {
-      if (refout[i] < -256)
-        refout[i] = -256;
-      else if (refout[i] > 255)
-        refout[i] = 255;
-    }
-
-    /* perform test IDCT */
-    if (GST_IDCT_TRANSPOSE (idct)) {
-      for (j = 0; j < DCTSIZE; j++) {
-        for (i = 0; i < DCTSIZE; i++) {
-          testout[i * DCTSIZE + j] = refcoefs[j * DCTSIZE + i];
-        }
-      }
-    } else {
-      memcpy (testout, refcoefs, sizeof (DCTELEM) * DCTSIZE2);
-    }
-
-    gst_trace_read_tsc (&tscstart);
-    gst_idct_convert (idct, testout);
-    gst_trace_read_tsc (&tscstop);
-    /*printf("time %llu, %llu %lld\n", tscstart, tscstop, tscstop-tscstart); */
-    if (tscstop - tscstart < tscmin)
-      tscmin = tscstop - tscstart;
-    if (tscstop - tscstart > tscmax)
-      tscmax = tscstop - tscstart;
-
-    /* clip */
-    for (i = 0; i < DCTSIZE2; i++) {
-      if (testout[i] < -256)
-        testout[i] = -256;
-      else if (testout[i] > 255)
-        testout[i] = 255;
-    }
-
-    /* accumulate error stats */
-    for (i = 0; i < DCTSIZE2; i++) {
-      register int err = testout[i] - refout[i];
-
-      sumerrs[i] += err;
-      sumsqerrs[i] += err * err;
-      if (err < 0)
-        err = -err;
-      if (maxerr[i] < err)
-        maxerr[i] = err;
-    }
-
-    if (curiter % 100 == 99) {
-      fprintf (stderr, ".");
-      fflush (stderr);
-    }
-  }
-  fprintf (stderr, "\n");
-
-  /* print results */
-
-  printf
-      ("IEEE test conditions: -L = %ld, +H = %ld, sign = %ld, #iters = %ld\n",
-      minpix, maxpix, sign, niters);
-
-  printf ("Speed, min time %lld, max %lld\n", tscmin, tscmax);
-
-  printf ("Peak absolute values of errors:\n");
-  for (i = 0, j = 0; i < DCTSIZE2; i++) {
-    if (j < maxerr[i])
-      j = maxerr[i];
-    printf ("%4d", maxerr[i]);
-    if ((i % DCTSIZE) == DCTSIZE - 1)
-      printf ("\n");
-  }
-  printf ("Worst peak error = %d  (%s spec limit 1)\n\n", j,
-      meets ((double) j, 1.0));
-
-  printf ("Mean square errors:\n");
-  max = total = 0.0;
-  for (i = 0; i < DCTSIZE2; i++) {
-    double err = (double) sumsqerrs[i] / ((double) niters);
-
-    total += (double) sumsqerrs[i];
-    if (max < err)
-      max = err;
-    printf (" %8.4f", err);
-    if ((i % DCTSIZE) == DCTSIZE - 1)
-      printf ("\n");
-  }
-  printf ("Worst pmse = %.6f  (%s spec limit 0.06)\n", max, meets (max, 0.06));
-  total /= (double) (64 * niters);
-  printf ("Overall mse = %.6f  (%s spec limit 0.02)\n\n", total,
-      meets (total, 0.02));
-
-  printf ("Mean errors:\n");
-  max = total = 0.0;
-  for (i = 0; i < DCTSIZE2; i++) {
-    double err = (double) sumerrs[i] / ((double) niters);
-
-    total += (double) sumerrs[i];
-    printf (" %8.4f", err);
-    if (err < 0.0)
-      err = -err;
-    if (max < err)
-      max = err;
-    if ((i % DCTSIZE) == DCTSIZE - 1)
-      printf ("\n");
-  }
-  printf ("Worst mean error = %.6f  (%s spec limit 0.015)\n", max,
-      meets (max, 0.015));
-  total /= (double) (64 * niters);
-  printf ("Overall mean error = %.6f  (%s spec limit 0.0015)\n\n", total,
-      meets (total, 0.0015));
-
-  /* test for 0 input giving 0 output */
-  memset (testout, 0, sizeof (DCTELEM) * DCTSIZE2);
-  gst_idct_convert (idct, testout);
-  for (i = 0, j = 0; i < DCTSIZE2; i++) {
-    if (testout[i]) {
-      printf ("Position %d of IDCT(0) = %d (FAILS)\n", i, testout[i]);
-      j++;
-    }
-  }
-  printf ("%d elements of IDCT(0) were not zero\n\n\n", j);
-
-  exit (0);
-  return 0;
-}
-
-
-void
-usage (char *msg)
-{
-  if (msg != NULL)
-    fprintf (stderr, "\nerror: %s\n", msg);
-
-  fprintf (stderr, "\n");
-  fprintf (stderr, "usage: ieeetest minpix maxpix sign niters\n");
-  fprintf (stderr, "\n");
-  fprintf (stderr, "  test = 1 - 5\n");
-  fprintf (stderr, "  minpix = -L value per IEEE spec\n");
-  fprintf (stderr, "  maxpix =  H value per IEEE spec\n");
-  fprintf (stderr, "  sign = +1 for normal, -1 to run negated test\n");
-  fprintf (stderr, "  niters = # iterations (10000 for full test)\n");
-  fprintf (stderr, "\n");
-
-  exit (1);
-}
-
-
-/* Pseudo-random generator specified by IEEE 1180 */
-
-long
-ieeerand (long L, long H)
-{
-  static long randx = 1;
-  static double z = (double) 0x7fffffff;
-
-  long i, j;
-  double x;
-
-  randx = (randx * 1103515245) + 12345;
-  i = randx & 0x7ffffffe;
-  x = ((double) i) / z;
-  x *= (L + H + 1);
-  j = x;
-  return j - L;
-}
-
-
-/* Reference double-precision FDCT and IDCT */
-
-
-/* The cosine lookup table */
-/* coslu[a][b] = C(b)/2 * cos[(2a+1)b*pi/16] */
-double coslu[8][8];
-
-
-/* Routine to initialise the cosine lookup table */
-void
-dct_init (void)
-{
-  int a, b;
-  double tmp;
-
-  for (a = 0; a < 8; a++)
-    for (b = 0; b < 8; b++) {
-      tmp = cos ((double) ((a + a + 1) * b) * (3.14159265358979323846 / 16.0));
-      if (b == 0)
-        tmp /= sqrt (2.0);
-      coslu[a][b] = tmp * 0.5;
-    }
-}
-
-
-void
-ref_fdct (DCTELEM block[8][8])
-{
-  int x, y, u, v;
-  double tmp, tmp2;
-  double res[8][8];
-
-  for (v = 0; v < 8; v++) {
-    for (u = 0; u < 8; u++) {
-      tmp = 0.0;
-      for (y = 0; y < 8; y++) {
-        tmp2 = 0.0;
-        for (x = 0; x < 8; x++) {
-          tmp2 += (double) block[y][x] * coslu[x][u];
-        }
-        tmp += coslu[y][v] * tmp2;
-      }
-      res[v][u] = tmp;
-    }
-  }
-
-  for (v = 0; v < 8; v++) {
-    for (u = 0; u < 8; u++) {
-      tmp = res[v][u];
-      if (tmp < 0.0) {
-        x = -((int) (0.5 - tmp));
-      } else {
-        x = (int) (tmp + 0.5);
-      }
-      block[v][u] = (DCTELEM) x;
-    }
-  }
-}
-
-
-void
-ref_idct (DCTELEM block[8][8])
-{
-  int x, y, u, v;
-  double tmp, tmp2;
-  double res[8][8];
-
-  for (y = 0; y < 8; y++) {
-    for (x = 0; x < 8; x++) {
-      tmp = 0.0;
-      for (v = 0; v < 8; v++) {
-        tmp2 = 0.0;
-        for (u = 0; u < 8; u++) {
-          tmp2 += (double) block[v][u] * coslu[x][u];
-        }
-        tmp += coslu[y][v] * tmp2;
-      }
-      res[y][x] = tmp;
-    }
-  }
-
-  for (v = 0; v < 8; v++) {
-    for (u = 0; u < 8; u++) {
-      tmp = res[v][u];
-      if (tmp < 0.0) {
-        x = -((int) (0.5 - tmp));
-      } else {
-        x = (int) (tmp + 0.5);
-      }
-      block[v][u] = (DCTELEM) x;
-    }
-  }
-}
diff --git a/gst-libs/gst/idct/intidct.c b/gst-libs/gst/idct/intidct.c
deleted file mode 100644 (file)
index d294534..0000000
+++ /dev/null
@@ -1,380 +0,0 @@
-/*
- * jrevdct.c
- *
- * Copyright (C) 1991, 1992, Thomas G. Lane.
- * This file is part of the Independent JPEG Group's software.
- * For conditions of distribution and use, see the accompanying README file.
- *
- * This file contains the basic inverse-DCT transformation subroutine.
- *
- * This implementation is based on an algorithm described in
- *   C. Loeffler, A. Ligtenberg and G. Moschytz, "Practical Fast 1-D DCT
- *   Algorithms with 11 Multiplications", Proc. Int'l. Conf. on Acoustics,
- *   Speech, and Signal Processing 1989 (ICASSP '89), pp. 988-991.
- * The primary algorithm described there uses 11 multiplies and 29 adds.
- * We use their alternate method with 12 multiplies and 32 adds.
- * The advantage of this method is that no data path contains more than one
- * multiplication; this allows a very simple and accurate implementation in
- * scaled fixed-point arithmetic, with a minimal number of shifts.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "dct.h"
-
-/* We assume that right shift corresponds to signed division by 2 with
- * rounding towards minus infinity.  This is correct for typical "arithmetic
- * shift" instructions that shift in copies of the sign bit.  But some
- * C compilers implement >> with an unsigned shift.  For these machines you
- * must define RIGHT_SHIFT_IS_UNSIGNED.
- * RIGHT_SHIFT provides a proper signed right shift of an INT32 quantity.
- * It is only applied with constant shift counts.  SHIFT_TEMPS must be
- * included in the variables of any routine using RIGHT_SHIFT.
- */
-
-#ifdef RIGHT_SHIFT_IS_UNSIGNED
-#define SHIFT_TEMPS    INT32 shift_temp;
-#define RIGHT_SHIFT(x,shft)  \
-       ((shift_temp = (x)) < 0 ? \
-        (shift_temp >> (shft)) | ((~((INT32) 0)) << (32-(shft))) : \
-        (shift_temp >> (shft)))
-#else
-#define SHIFT_TEMPS
-#define RIGHT_SHIFT(x,shft)    ((x) >> (shft))
-#endif
-
-
-/*
- * This routine is specialized to the case DCTSIZE = 8.
- */
-
-#if DCTSIZE != 8
-Sorry, this code only copes with 8 x8 DCTs.     /* deliberate syntax err */
-#endif
-/*
- * A 2-D IDCT can be done by 1-D IDCT on each row followed by 1-D IDCT
- * on each column.  Direct algorithms are also available, but they are
- * much more complex and seem not to be any faster when reduced to code.
- *
- * The poop on this scaling stuff is as follows:
- *
- * Each 1-D IDCT step produces outputs which are a factor of sqrt(N)
- * larger than the true IDCT outputs.  The final outputs are therefore
- * a factor of N larger than desired; since N=8 this can be cured by
- * a simple right shift at the end of the algorithm.  The advantage of
- * this arrangement is that we save two multiplications per 1-D IDCT,
- * because the y0 and y4 inputs need not be divided by sqrt(N).
- *
- * We have to do addition and subtraction of the integer inputs, which
- * is no problem, and multiplication by fractional constants, which is
- * a problem to do in integer arithmetic.  We multiply all the constants
- * by CONST_SCALE and convert them to integer constants (thus retaining
- * CONST_BITS bits of precision in the constants).  After doing a
- * multiplication we have to divide the product by CONST_SCALE, with proper
- * rounding, to produce the correct output.  This division can be done
- * cheaply as a right shift of CONST_BITS bits.  We postpone shifting
- * as long as possible so that partial sums can be added together with
- * full fractional precision.
- *
- * The outputs of the first pass are scaled up by PASS1_BITS bits so that
- * they are represented to better-than-integral precision.  These outputs
- * require BITS_IN_JSAMPLE + PASS1_BITS + 3 bits; this fits in a 16-bit word
- * with the recommended scaling.  (To scale up 12-bit sample data further, an
- * intermediate INT32 array would be needed.)
- *
- * To avoid overflow of the 32-bit intermediate results in pass 2, we must
- * have BITS_IN_JSAMPLE + CONST_BITS + PASS1_BITS <= 26.  Error analysis
- * shows that the values given below are the most effective.
- */
-#ifdef EIGHT_BIT_SAMPLES
-#define CONST_BITS  13
-#define PASS1_BITS  2
-#else
-#define CONST_BITS  13
-#define PASS1_BITS  1           /* lose a little precision to avoid overflow */
-#endif
-#define ONE    ((INT32) 1)
-#define CONST_SCALE (ONE << CONST_BITS)
-/* Convert a positive real constant to an integer scaled by CONST_SCALE. */
-#define FIX(x) ((INT32) ((x) * CONST_SCALE + 0.5))
-/* Some C compilers fail to reduce "FIX(constant)" at compile time, thus
- * causing a lot of useless floating-point operations at run time.
- * To get around this we use the following pre-calculated constants.
- * If you change CONST_BITS you may want to add appropriate values.
- * (With a reasonable C compiler, you can just rely on the FIX() macro...)
- */
-#if CONST_BITS == 13
-#define FIX_0_298631336  ((INT32)  2446)        /* FIX(0.298631336) */
-#define FIX_0_390180644  ((INT32)  3196)        /* FIX(0.390180644) */
-#define FIX_0_541196100  ((INT32)  4433)        /* FIX(0.541196100) */
-#define FIX_0_765366865  ((INT32)  6270)        /* FIX(0.765366865) */
-#define FIX_0_899976223  ((INT32)  7373)        /* FIX(0.899976223) */
-#define FIX_1_175875602  ((INT32)  9633)        /* FIX(1.175875602) */
-#define FIX_1_501321110  ((INT32)  12299)       /* FIX(1.501321110) */
-#define FIX_1_847759065  ((INT32)  15137)       /* FIX(1.847759065) */
-#define FIX_1_961570560  ((INT32)  16069)       /* FIX(1.961570560) */
-#define FIX_2_053119869  ((INT32)  16819)       /* FIX(2.053119869) */
-#define FIX_2_562915447  ((INT32)  20995)       /* FIX(2.562915447) */
-#define FIX_3_072711026  ((INT32)  25172)       /* FIX(3.072711026) */
-#else
-#define FIX_0_298631336  FIX(0.298631336)
-#define FIX_0_390180644  FIX(0.390180644)
-#define FIX_0_541196100  FIX(0.541196100)
-#define FIX_0_765366865  FIX(0.765366865)
-#define FIX_0_899976223  FIX(0.899976223)
-#define FIX_1_175875602  FIX(1.175875602)
-#define FIX_1_501321110  FIX(1.501321110)
-#define FIX_1_847759065  FIX(1.847759065)
-#define FIX_1_961570560  FIX(1.961570560)
-#define FIX_2_053119869  FIX(2.053119869)
-#define FIX_2_562915447  FIX(2.562915447)
-#define FIX_3_072711026  FIX(3.072711026)
-#endif
-/* Descale and correctly round an INT32 value that's scaled by N bits.
- * We assume RIGHT_SHIFT rounds towards minus infinity, so adding
- * the fudge factor is correct for either sign of X.
- */
-#define DESCALE(x,n)  RIGHT_SHIFT((x) + (ONE << ((n)-1)), n)
-/* Multiply an INT32 variable by an INT32 constant to yield an INT32 result.
- * For 8-bit samples with the recommended scaling, all the variable
- * and constant values involved are no more than 16 bits wide, so a
- * 16x16->32 bit multiply can be used instead of a full 32x32 multiply;
- * this provides a useful speedup on many machines.
- * There is no way to specify a 16x16->32 multiply in portable C, but
- * some C compilers will do the right thing if you provide the correct
- * combination of casts.
- * NB: for 12-bit samples, a full 32-bit multiplication will be needed.
- */
-#ifdef EIGHT_BIT_SAMPLES
-#ifdef SHORTxSHORT_32           /* may work if 'int' is 32 bits */
-#define MULTIPLY(var,const)  (((INT16) (var)) * ((INT16) (const)))
-#endif
-#ifdef SHORTxLCONST_32          /* known to work with Microsoft C 6.0 */
-#define MULTIPLY(var,const)  (((INT16) (var)) * ((INT32) (const)))
-#endif
-#endif
-#ifndef MULTIPLY                /* default definition */
-#define MULTIPLY(var,const)  ((var) * (const))
-#endif
-/*
- * Perform the inverse DCT on one block of coefficients.
- */
-    void
-gst_idct_int_idct (DCTBLOCK data)
-{
-  INT32 tmp0, tmp1, tmp2, tmp3;
-  INT32 tmp10, tmp11, tmp12, tmp13;
-  INT32 z1, z2, z3, z4, z5;
-  register DCTELEM *dataptr;
-  int rowctr;
-
-  SHIFT_TEMPS
-      /* Pass 1: process rows. */
-      /* Note results are scaled up by sqrt(8) compared to a true IDCT; */
-      /* furthermore, we scale the results by 2**PASS1_BITS. */
-      dataptr = data;
-  for (rowctr = DCTSIZE - 1; rowctr >= 0; rowctr--) {
-    /* Due to quantization, we will usually find that many of the input
-     * coefficients are zero, especially the AC terms.  We can exploit this
-     * by short-circuiting the IDCT calculation for any row in which all
-     * the AC terms are zero.  In that case each output is equal to the
-     * DC coefficient (with scale factor as needed).
-     * With typical images and quantization tables, half or more of the
-     * row DCT calculations can be simplified this way.
-     */
-
-    if ((dataptr[1] | dataptr[2] | dataptr[3] | dataptr[4] |
-            dataptr[5] | dataptr[6] | dataptr[7]) == 0) {
-      /* AC terms all zero */
-      DCTELEM dcval = (DCTELEM) (dataptr[0] << PASS1_BITS);
-
-      dataptr[0] = dcval;
-      dataptr[1] = dcval;
-      dataptr[2] = dcval;
-      dataptr[3] = dcval;
-      dataptr[4] = dcval;
-      dataptr[5] = dcval;
-      dataptr[6] = dcval;
-      dataptr[7] = dcval;
-
-      dataptr += DCTSIZE;       /* advance pointer to next row */
-      continue;
-    }
-
-    /* Even part: reverse the even part of the forward DCT. */
-    /* The rotator is sqrt(2)*c(-6). */
-
-    z2 = (INT32) dataptr[2];
-    z3 = (INT32) dataptr[6];
-
-    z1 = MULTIPLY (z2 + z3, FIX_0_541196100);
-    tmp2 = z1 + MULTIPLY (z3, -FIX_1_847759065);
-    tmp3 = z1 + MULTIPLY (z2, FIX_0_765366865);
-
-    tmp0 = ((INT32) dataptr[0] + (INT32) dataptr[4]) << CONST_BITS;
-    tmp1 = ((INT32) dataptr[0] - (INT32) dataptr[4]) << CONST_BITS;
-
-    tmp10 = tmp0 + tmp3;
-    tmp13 = tmp0 - tmp3;
-    tmp11 = tmp1 + tmp2;
-    tmp12 = tmp1 - tmp2;
-
-    /* Odd part per figure 8; the matrix is unitary and hence its
-     * transpose is its inverse.  i0..i3 are y7,y5,y3,y1 respectively.
-     */
-
-    tmp0 = (INT32) dataptr[7];
-    tmp1 = (INT32) dataptr[5];
-    tmp2 = (INT32) dataptr[3];
-    tmp3 = (INT32) dataptr[1];
-
-    z1 = tmp0 + tmp3;
-    z2 = tmp1 + tmp2;
-    z3 = tmp0 + tmp2;
-    z4 = tmp1 + tmp3;
-    z5 = MULTIPLY (z3 + z4, FIX_1_175875602);   /* sqrt(2) * c3 */
-
-    tmp0 = MULTIPLY (tmp0, FIX_0_298631336);    /* sqrt(2) * (-c1+c3+c5-c7) */
-    tmp1 = MULTIPLY (tmp1, FIX_2_053119869);    /* sqrt(2) * ( c1+c3-c5+c7) */
-    tmp2 = MULTIPLY (tmp2, FIX_3_072711026);    /* sqrt(2) * ( c1+c3+c5-c7) */
-    tmp3 = MULTIPLY (tmp3, FIX_1_501321110);    /* sqrt(2) * ( c1+c3-c5-c7) */
-    z1 = MULTIPLY (z1, -FIX_0_899976223);       /* sqrt(2) * (c7-c3) */
-    z2 = MULTIPLY (z2, -FIX_2_562915447);       /* sqrt(2) * (-c1-c3) */
-    z3 = MULTIPLY (z3, -FIX_1_961570560);       /* sqrt(2) * (-c3-c5) */
-    z4 = MULTIPLY (z4, -FIX_0_390180644);       /* sqrt(2) * (c5-c3) */
-
-    z3 += z5;
-    z4 += z5;
-
-    tmp0 += z1 + z3;
-    tmp1 += z2 + z4;
-    tmp2 += z2 + z3;
-    tmp3 += z1 + z4;
-
-    /* Final output stage: inputs are tmp10..tmp13, tmp0..tmp3 */
-
-    dataptr[0] = (DCTELEM) DESCALE (tmp10 + tmp3, CONST_BITS - PASS1_BITS);
-    dataptr[7] = (DCTELEM) DESCALE (tmp10 - tmp3, CONST_BITS - PASS1_BITS);
-    dataptr[1] = (DCTELEM) DESCALE (tmp11 + tmp2, CONST_BITS - PASS1_BITS);
-    dataptr[6] = (DCTELEM) DESCALE (tmp11 - tmp2, CONST_BITS - PASS1_BITS);
-    dataptr[2] = (DCTELEM) DESCALE (tmp12 + tmp1, CONST_BITS - PASS1_BITS);
-    dataptr[5] = (DCTELEM) DESCALE (tmp12 - tmp1, CONST_BITS - PASS1_BITS);
-    dataptr[3] = (DCTELEM) DESCALE (tmp13 + tmp0, CONST_BITS - PASS1_BITS);
-    dataptr[4] = (DCTELEM) DESCALE (tmp13 - tmp0, CONST_BITS - PASS1_BITS);
-
-    dataptr += DCTSIZE;         /* advance pointer to next row */
-  }
-
-  /* Pass 2: process columns. */
-  /* Note that we must descale the results by a factor of 8 == 2**3, */
-  /* and also undo the PASS1_BITS scaling. */
-
-  dataptr = data;
-  for (rowctr = DCTSIZE - 1; rowctr >= 0; rowctr--) {
-    /* Columns of zeroes can be exploited in the same way as we did with rows.
-     * However, the row calculation has created many nonzero AC terms, so the
-     * simplification applies less often (typically 5% to 10% of the time).
-     * On machines with very fast multiplication, it's possible that the
-     * test takes more time than it's worth.  In that case this section
-     * may be commented out.
-     */
-
-#ifndef NO_ZERO_COLUMN_TEST
-    if ((dataptr[DCTSIZE * 1] | dataptr[DCTSIZE * 2] | dataptr[DCTSIZE * 3] |
-            dataptr[DCTSIZE * 4] | dataptr[DCTSIZE * 5] | dataptr[DCTSIZE * 6] |
-            dataptr[DCTSIZE * 7]) == 0) {
-      /* AC terms all zero */
-      DCTELEM dcval = (DCTELEM) DESCALE ((INT32) dataptr[0], PASS1_BITS + 3);
-
-      dataptr[DCTSIZE * 0] = dcval;
-      dataptr[DCTSIZE * 1] = dcval;
-      dataptr[DCTSIZE * 2] = dcval;
-      dataptr[DCTSIZE * 3] = dcval;
-      dataptr[DCTSIZE * 4] = dcval;
-      dataptr[DCTSIZE * 5] = dcval;
-      dataptr[DCTSIZE * 6] = dcval;
-      dataptr[DCTSIZE * 7] = dcval;
-
-      dataptr++;                /* advance pointer to next column */
-      continue;
-    }
-#endif
-
-    /* Even part: reverse the even part of the forward DCT. */
-    /* The rotator is sqrt(2)*c(-6). */
-
-    z2 = (INT32) dataptr[DCTSIZE * 2];
-    z3 = (INT32) dataptr[DCTSIZE * 6];
-
-    z1 = MULTIPLY (z2 + z3, FIX_0_541196100);
-    tmp2 = z1 + MULTIPLY (z3, -FIX_1_847759065);
-    tmp3 = z1 + MULTIPLY (z2, FIX_0_765366865);
-
-    tmp0 =
-        ((INT32) dataptr[DCTSIZE * 0] +
-        (INT32) dataptr[DCTSIZE * 4]) << CONST_BITS;
-    tmp1 =
-        ((INT32) dataptr[DCTSIZE * 0] -
-        (INT32) dataptr[DCTSIZE * 4]) << CONST_BITS;
-
-    tmp10 = tmp0 + tmp3;
-    tmp13 = tmp0 - tmp3;
-    tmp11 = tmp1 + tmp2;
-    tmp12 = tmp1 - tmp2;
-
-    /* Odd part per figure 8; the matrix is unitary and hence its
-     * transpose is its inverse.  i0..i3 are y7,y5,y3,y1 respectively.
-     */
-
-    tmp0 = (INT32) dataptr[DCTSIZE * 7];
-    tmp1 = (INT32) dataptr[DCTSIZE * 5];
-    tmp2 = (INT32) dataptr[DCTSIZE * 3];
-    tmp3 = (INT32) dataptr[DCTSIZE * 1];
-
-    z1 = tmp0 + tmp3;
-    z2 = tmp1 + tmp2;
-    z3 = tmp0 + tmp2;
-    z4 = tmp1 + tmp3;
-    z5 = MULTIPLY (z3 + z4, FIX_1_175875602);   /* sqrt(2) * c3 */
-
-    tmp0 = MULTIPLY (tmp0, FIX_0_298631336);    /* sqrt(2) * (-c1+c3+c5-c7) */
-    tmp1 = MULTIPLY (tmp1, FIX_2_053119869);    /* sqrt(2) * ( c1+c3-c5+c7) */
-    tmp2 = MULTIPLY (tmp2, FIX_3_072711026);    /* sqrt(2) * ( c1+c3+c5-c7) */
-    tmp3 = MULTIPLY (tmp3, FIX_1_501321110);    /* sqrt(2) * ( c1+c3-c5-c7) */
-    z1 = MULTIPLY (z1, -FIX_0_899976223);       /* sqrt(2) * (c7-c3) */
-    z2 = MULTIPLY (z2, -FIX_2_562915447);       /* sqrt(2) * (-c1-c3) */
-    z3 = MULTIPLY (z3, -FIX_1_961570560);       /* sqrt(2) * (-c3-c5) */
-    z4 = MULTIPLY (z4, -FIX_0_390180644);       /* sqrt(2) * (c5-c3) */
-
-    z3 += z5;
-    z4 += z5;
-
-    tmp0 += z1 + z3;
-    tmp1 += z2 + z4;
-    tmp2 += z2 + z3;
-    tmp3 += z1 + z4;
-
-    /* Final output stage: inputs are tmp10..tmp13, tmp0..tmp3 */
-
-    dataptr[DCTSIZE * 0] = (DCTELEM) DESCALE (tmp10 + tmp3,
-        CONST_BITS + PASS1_BITS + 3);
-    dataptr[DCTSIZE * 7] = (DCTELEM) DESCALE (tmp10 - tmp3,
-        CONST_BITS + PASS1_BITS + 3);
-    dataptr[DCTSIZE * 1] = (DCTELEM) DESCALE (tmp11 + tmp2,
-        CONST_BITS + PASS1_BITS + 3);
-    dataptr[DCTSIZE * 6] = (DCTELEM) DESCALE (tmp11 - tmp2,
-        CONST_BITS + PASS1_BITS + 3);
-    dataptr[DCTSIZE * 2] = (DCTELEM) DESCALE (tmp12 + tmp1,
-        CONST_BITS + PASS1_BITS + 3);
-    dataptr[DCTSIZE * 5] = (DCTELEM) DESCALE (tmp12 - tmp1,
-        CONST_BITS + PASS1_BITS + 3);
-    dataptr[DCTSIZE * 3] = (DCTELEM) DESCALE (tmp13 + tmp0,
-        CONST_BITS + PASS1_BITS + 3);
-    dataptr[DCTSIZE * 4] = (DCTELEM) DESCALE (tmp13 - tmp0,
-        CONST_BITS + PASS1_BITS + 3);
-
-    dataptr++;                  /* advance pointer to next column */
-  }
-}
diff --git a/gst-libs/gst/media-info/Makefile.am b/gst-libs/gst/media-info/Makefile.am
deleted file mode 100644 (file)
index c3df487..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-lib_LTLIBRARIES = libgstmedia-info-@GST_MAJORMINOR@.la
-
-libgstmedia_info_@GST_MAJORMINOR@_la_SOURCES = media-info.c media-info-priv.c
-
-libgstmedia_info_@GST_MAJORMINOR@_la_CFLAGS = $(GST_CFLAGS) $(GST_PLUGIN_CFLAGS)
-libgstmedia_info_@GST_MAJORMINOR@_la_LIBADD = \
-       $(GST_LIBS) $(GST_PLUGIN_LIBS)
-libgstmedia_info_@GST_MAJORMINOR@_la_LDFLAGS = \
-       -version-info @GST_PLUGINS_LIBVERSION@
-
-
-libincludedir = $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/media-info
-libinclude_HEADERS = media-info.h
-
-noinst_PROGRAMS = media-info-test
-noinst_HEADERS = media-info-priv.h
-
-media_info_test_SOURCES = media-info-test.c
-media_info_test_CFLAGS = $(GST_CFLAGS)
-media_info_test_LDADD = $(GST_LIBS) libgstmedia-info-@GST_MAJORMINOR@.la
diff --git a/gst-libs/gst/media-info/README b/gst-libs/gst/media-info/README
deleted file mode 100644 (file)
index f17f570..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-* media-info is a library to collect metadata and streaminfo from media
-  files
-
-* the current implementation is idler-based.
-
-* you create a new media_info object
-* you set the string name of a source element to use using g_object_set or
-  gst_media_info_set_source
-* you declare you'll read a given file by using gst_media_info_read_with_idler
-* you loop gst_media_info_read_idler (info, &stream) as long as it returns TRUE
-  and as long as stream is still NULL
-
-
-* INTERNALS:
-  - instance_init sets up the media info reader, its elements, and connects
-    the deep_notify callback
-  - read_with_idler resets the media info reader object,
-    and sets location and flags
-
-  - read_idler runs through a state machine:
-    NULL - TYPEFIND - STREAM - METADATA - STREAMINFO - FORMAT
-
-  - NULL: just returns find_type_pre, which moves state to TYPEFIND
-  - TYPEFIND:
-    - iterates as long as it can until it has priv->type 
-    - find_type_post
-    - call gmi_set_mime which creates a pipeline to decode stuff
-    - move to STREAM
-
-  - STREAM 
diff --git a/gst-libs/gst/media-info/media-info-priv.c b/gst-libs/gst/media-info/media-info-priv.c
deleted file mode 100644 (file)
index 27fadde..0000000
+++ /dev/null
@@ -1,775 +0,0 @@
-/* GStreamer
- * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-/* media-info-priv.c - handling of internal stuff */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <gst/gst.h>
-#include <string.h>
-#include "media-info.h"
-#include "media-info-priv.h"
-
-
-/* helper structs bits */
-GstMediaInfoStream *
-gmi_stream_new (void)
-{
-  GstMediaInfoStream *stream;
-
-  stream = (GstMediaInfoStream *) g_malloc (sizeof (GstMediaInfoStream));
-
-  stream->length_tracks = 0;
-  stream->length_time = 0;
-  stream->bitrate = 0;
-  stream->seekable = FALSE;
-  stream->path = NULL;
-  stream->mime = NULL;
-  stream->tracks = NULL;
-
-  return stream;
-}
-
-void
-gmi_stream_free (GstMediaInfoStream * stream)
-{
-  if (stream->mime)
-    g_free (stream->mime);
-  /* FIXME: free tracks */
-  g_free (stream);
-}
-
-GstMediaInfoTrack *
-gmi_track_new (void)
-{
-  GstMediaInfoTrack *track;
-
-  track = g_malloc (sizeof (GstMediaInfoTrack));
-
-  track->metadata = NULL;
-  track->streaminfo = NULL;
-  track->format = NULL;
-  track->length_time = 0;
-  track->con_streams = NULL;
-
-  return track;
-}
-
-/**
- * private functions
- */
-
-/* callbacks */
-static void
-have_type_callback (GstElement * typefind, guint probability, GstCaps * type,
-    GstMediaInfoPriv * priv)
-{
-  GstStructure *str;
-  const gchar *mime;
-
-  priv->type = gst_caps_copy (type);
-  str = gst_caps_get_structure (type, 0);
-  mime = gst_structure_get_name (str);
-  GST_DEBUG ("caps %p, mime %s", type, mime);
-
-  /* FIXME: this code doesn't yet work, test it later */
-#ifdef DONTWORK
-  if (strcmp (mime, "application/x-id3") == 0) {
-    /* dig a little deeper */
-    GST_DEBUG ("dealing with id3, digging deeper");
-    gst_element_set_state (priv->pipeline, GST_STATE_READY);
-    gst_element_unlink (priv->source, priv->typefind);
-    g_assert (priv->decontainer == NULL);
-    priv->decontainer = gst_element_factory_make ("id3tag", "decontainer");
-    gst_bin_add (GST_BIN (priv->pipeline), priv->decontainer);
-    if (priv->decontainer == NULL)
-      /* FIXME: signal error */
-      g_warning ("Couldn't create id3tag");
-    if (!gst_element_link_many (priv->source, priv->decontainer, priv->typefind,
-            NULL));
-    g_warning ("Couldn't link in id3tag");
-
-    if (gst_element_set_state (priv->pipeline, GST_STATE_PLAYING)
-        == GST_STATE_FAILURE)
-      g_warning ("Couldn't set to playing");
-  }
-#endif
-}
-
-void
-deep_notify_callback (GObject * object, GstObject * origin,
-    GParamSpec * pspec, GstMediaInfoPriv * priv)
-{
-  GValue value = { 0, };
-
-  /* we only care about pad notifies */
-  if (!GST_IS_PAD (origin))
-    return;
-
-  /*
-     GST_DEBUG ("DEBUG: deep_notify: have notify of %s from object %s:%s !",
-     pspec->name, gst_element_get_name (gst_pad_get_parent (GST_PAD (origin))),
-     gst_object_get_name (origin));
-   */
-  else if (strcmp (pspec->name, "caps") == 0) {
-    /* check if we're getting it from fakesink */
-    if (GST_IS_PAD (origin) && GST_PAD_PARENT (origin) == priv->fakesink) {
-      GST_DEBUG ("have caps on fakesink pad !");
-      g_value_init (&value, pspec->value_type);
-      g_object_get_property (G_OBJECT (origin), pspec->name, &value);
-      priv->format = g_value_peek_pointer (&value);
-      GST_DEBUG ("caps: %" GST_PTR_FORMAT, priv->format);
-    } else
-      GST_DEBUG ("ignoring caps on object %s:%s",
-          gst_object_get_name (gst_object_get_parent (origin)),
-          gst_object_get_name (origin));
-  } else if (strcmp (pspec->name, "offset") == 0) {
-    /* we REALLY ignore offsets, we hate them */
-  }
-  //else GST_DEBUG ("ignoring notify of %s", pspec->name);
-}
-
-typedef struct
-{
-  guint meta;
-  guint encoded;
-}
-TagFlagScore;
-
-static void
-tag_flag_score (const GstTagList * list, const gchar * tag, gpointer user_data)
-{
-  TagFlagScore *score = (TagFlagScore *) user_data;
-  GstTagFlag flag;
-
-  flag = gst_tag_get_flag (tag);
-  if (flag == GST_TAG_FLAG_META)
-    score->meta++;
-  if (flag == GST_TAG_FLAG_ENCODED)
-    score->encoded++;
-}
-
-void
-found_tag_callback (GObject * pipeline, GstElement * source, GstTagList * tags,
-    GstMediaInfoPriv * priv)
-{
-  TagFlagScore score;
-
-  score.meta = 0;
-  score.encoded = 0;
-  GST_DEBUG ("element %s found tag", GST_STR_NULL (GST_ELEMENT_NAME (source)));
-
-  /* decide if it's likely to be metadata or streaminfo */
-  /* FIXME: this is a hack, there must be a better way,
-     but as long as elements can report both mixed we need to do this */
-
-  gst_tag_list_foreach (tags, tag_flag_score, &score);
-
-  if (score.meta > score.encoded) {
-    GST_DEBUG ("found tags from decoder, adding them as metadata");
-    priv->metadata = gst_tag_list_copy (tags);
-  } else {
-    GST_DEBUG ("found tags, adding them as streaminfo");
-    priv->streaminfo = gst_tag_list_copy (tags);
-  }
-}
-
-void
-error_callback (GObject * element, GstElement * source, GError * error,
-    gchar * debug, GstMediaInfoPriv * priv)
-{
-  g_print ("ERROR: %s\n", error->message);
-  g_error_free (error);
-}
-
-/* helpers */
-
-/* General GError creation */
-static void
-gst_media_info_error_create (GError ** error, const gchar * message)
-{
-  /* check if caller wanted an error reported */
-  if (error == NULL)
-    return;
-
-  *error = g_error_new (GST_MEDIA_INFO_ERROR, 0, message);
-  return;
-}
-
-/* GError creation when element is missing */
-static void
-gst_media_info_error_element (const gchar * element, GError ** error)
-{
-  gchar *message;
-
-  message = g_strdup_printf ("The %s element could not be found. "
-      "This element is essential for reading. "
-      "Please install the right plug-in and verify "
-      "that it works by running 'gst-inspect %s'", element, element);
-  gst_media_info_error_create (error, message);
-  g_free (message);
-  return;
-}
-
-/* initialise priv; done the first time */
-gboolean
-gmip_init (GstMediaInfoPriv * priv, GError ** error)
-{
-#define GST_MEDIA_INFO_MAKE_OR_ERROR(el, factory, name, error)  \
-G_STMT_START {                                                  \
-  el = gst_element_factory_make (factory, name);                \
-  if (!GST_IS_ELEMENT (el))                                     \
-  {                                                             \
-    gst_media_info_error_element (factory, error);              \
-    return FALSE;                                               \
-  }                                                             \
-} G_STMT_END
-  /* create the typefind element and make sure it stays around by reffing */
-  GST_MEDIA_INFO_MAKE_OR_ERROR (priv->typefind, "typefind", "typefind", error);
-  gst_object_ref (GST_OBJECT (priv->typefind));
-
-  /* create the fakesink element and make sure it stays around by reffing */
-  GST_MEDIA_INFO_MAKE_OR_ERROR (priv->fakesink, "fakesink", "fakesink", error);
-  gst_object_ref (GST_OBJECT (priv->fakesink));
-  /* source element for media info reading */
-  priv->source = NULL;
-  priv->source_name = NULL;
-  return TRUE;
-}
-
-/* called at the beginning of each use cycle */
-/* reset info to a state where it can be used to query for media info */
-void
-gmip_reset (GstMediaInfoPriv * priv)
-{
-
-#define STRING_RESET(string)   \
-G_STMT_START {                 \
-  if (string) g_free (string); \
-  string = NULL;               \
-} G_STMT_END
-
-  STRING_RESET (priv->pipeline_desc);
-  STRING_RESET (priv->location);
-#undef STRING_RESET
-
-#define CAPS_RESET(target)             \
-G_STMT_START {                         \
-  if (target) gst_caps_free (target);  \
-  target = NULL;                       \
-} G_STMT_END
-  CAPS_RESET (priv->type);
-  CAPS_RESET (priv->format);
-#undef CAPS_RESET
-
-#define TAGS_RESET(target)             \
-G_STMT_START {                         \
-  if (target)                          \
-    gst_tag_list_free (target);                \
-  target = NULL;                       \
-} G_STMT_END
-  TAGS_RESET (priv->metadata);
-  TAGS_RESET (priv->streaminfo);
-#undef TAGS_RESET
-
-  if (priv->stream) {
-    gmi_stream_free (priv->stream);
-    priv->stream = NULL;
-  }
-  priv->flags = 0;
-  priv->state = GST_MEDIA_INFO_STATE_NULL;
-
-  priv->error = NULL;
-}
-
-/* seek to a track and reset metadata and streaminfo structs */
-gboolean
-gmi_seek_to_track (GstMediaInfo * info, long track)
-{
-  GstEvent *event;
-  GstFormat track_format = 0;
-  GstMediaInfoPriv *priv = info->priv;
-  gboolean res;
-
-  /* FIXME: consider more nicks as "track" */
-  track_format = gst_format_get_by_nick ("logical_stream");
-  if (track_format == 0)
-    return FALSE;
-  GST_DEBUG ("Track format: %d", track_format);
-
-  if (gst_element_set_state (priv->pipeline, GST_STATE_PLAYING)
-      == GST_STATE_FAILURE)
-    g_warning ("Couldn't set to play");
-  g_assert (GST_IS_PAD (info->priv->decoder_pad));
-  event = gst_event_new_seek (track_format |
-      GST_SEEK_METHOD_SET | GST_SEEK_FLAG_FLUSH, track);
-  res = gst_pad_send_event (info->priv->decoder_pad, event);
-  if (!res) {
-    g_warning ("seek to logical track on pad %s:%s failed",
-        GST_DEBUG_PAD_NAME (info->priv->decoder_pad));
-    return FALSE;
-  }
-  /* clear structs because of the seek */
-  if (priv->metadata) {
-    gst_tag_list_free (priv->metadata);
-    priv->metadata = NULL;
-  }
-  if (priv->streaminfo) {
-    gst_tag_list_free (priv->streaminfo);
-    priv->streaminfo = NULL;
-  }
-  return TRUE;
-}
-
-/* set the mime type on the media info getter */
-gboolean
-gmi_set_mime (GstMediaInfo * info, const char *mime)
-{
-  gchar *desc = NULL;
-  GError *error = NULL;
-  GstMediaInfoPriv *priv = info->priv;
-
-  /* FIXME: please figure out proper mp3 mimetypes */
-  if ((strcmp (mime, "application/x-ogg") == 0) ||
-      (strcmp (mime, "application/ogg") == 0))
-    desc =
-        g_strdup_printf
-        ("%s name=source ! oggdemux ! vorbisdec name=decoder ! fakesink name=sink",
-        priv->source_name);
-  else if ((strcmp (mime, "audio/mpeg") == 0)
-      || (strcmp (mime, "audio/x-mp3") == 0)
-      || (strcmp (mime, "audio/mp3") == 0)
-      || (strcmp (mime, "application/x-id3") == 0)
-      || (strcmp (mime, "audio/x-id3") == 0))
-    desc =
-        g_strdup_printf
-        ("%s name=source ! id3tag ! mad name=decoder ! audio/x-raw-int ! fakesink name=sink",
-        priv->source_name);
-  else if ((strcmp (mime, "application/x-flac") == 0)
-      || (strcmp (mime, "audio/x-flac") == 0))
-    desc =
-        g_strdup_printf
-        ("%s name=source ! flacdec name=decoder ! audio/x-raw-int ! fakesink name=sink",
-        priv->source_name);
-  else if ((strcmp (mime, "audio/wav") == 0)
-      || (strcmp (mime, "audio/x-wav") == 0))
-    desc =
-        g_strdup_printf
-        ("%s name=source ! wavparse name=decoder ! audio/x-raw-int ! fakesink name=sink",
-        priv->source_name);
-  else if (strcmp (mime, "audio/x-mod") == 0
-      || strcmp (mime, "audio/x-s3m") == 0 || strcmp (mime, "audio/x-xm") == 0
-      || strcmp (mime, "audio/x-it") == 0)
-    desc =
-        g_strdup_printf
-        ("%s name=source ! modplug name=decoder ! audio/x-raw-int ! fakesink name=sink",
-        priv->source_name);
-  else
-    return FALSE;
-
-  GST_DEBUG ("using description %s", desc);
-  priv->pipeline_desc = desc;
-  priv->pipeline = gst_parse_launch (desc, &error);
-  if (error) {
-    g_warning ("Error parsing pipeline description: %s\n", error->message);
-    g_error_free (error);
-    return FALSE;
-  }
-  /* get a bunch of elements from the bin */
-  priv->source = gst_bin_get_by_name (GST_BIN (priv->pipeline), "source");
-  if (!GST_IS_ELEMENT (priv->source))
-    g_error ("Could not create source element '%s'", priv->source_name);
-
-  g_assert (GST_IS_ELEMENT (priv->source));
-  g_object_set (G_OBJECT (priv->source), "location", priv->location, NULL);
-  priv->decoder = gst_bin_get_by_name (GST_BIN (priv->pipeline), "decoder");
-  g_assert (GST_IS_ELEMENT (priv->decoder));
-  priv->fakesink = gst_bin_get_by_name (GST_BIN (priv->pipeline), "sink");
-  g_assert (GST_IS_ELEMENT (priv->fakesink));
-
-  /* get the "source " source pad */
-  priv->source_pad = gst_element_get_pad (priv->source, "src");
-  g_assert (GST_IS_PAD (priv->source_pad));
-  /* get the "decoder" source pad */
-  priv->decoder_pad = gst_element_get_pad (priv->decoder, "src");
-  g_assert (GST_IS_PAD (priv->decoder_pad));
-  GST_DEBUG ("decoder pad: %s:%s",
-      gst_object_get_name (gst_object_get_parent (GST_OBJECT (priv->
-                  decoder_pad))), gst_pad_get_name (priv->decoder_pad));
-
-  /* attach notify handler */
-  g_signal_connect (G_OBJECT (info->priv->pipeline), "deep_notify",
-      G_CALLBACK (deep_notify_callback), info->priv);
-  g_signal_connect (G_OBJECT (info->priv->pipeline), "found-tag",
-      G_CALLBACK (found_tag_callback), info->priv);
-  g_signal_connect (G_OBJECT (info->priv->pipeline), "error",
-      G_CALLBACK (error_callback), info->priv);
-
-  return TRUE;
-}
-
-/* clear the decoding pipeline */
-void
-gmi_clear_decoder (GstMediaInfo * info)
-{
-  if (info->priv->pipeline) {
-    GST_DEBUG ("Unreffing pipeline");
-    gst_object_unref (GST_OBJECT (info->priv->pipeline));
-  }
-  info->priv->pipeline = NULL;
-}
-
-/****
- *  typefind functions
- * find the type of a file and store it in the caps of the info
- * FIXME: we might better return GstCaps instead of storing them
- * internally */
-
-/* prepare for typefind, move from NULL to TYPEFIND */
-gboolean
-gmip_find_type_pre (GstMediaInfoPriv * priv, GError ** error)
-{
-  g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-  GST_DEBUG ("gmip_find_type_pre: start");
-  /* find out type */
-  /* FIXME: we could move caps for typefind out of struct and
-   * just use it through this function only */
-
-  priv->pipeline = gst_pipeline_new ("pipeline-typefind");
-  if (!GST_IS_PIPELINE (priv->pipeline)) {
-    gst_media_info_error_create (error, "Internal GStreamer error.");
-    return FALSE;
-  }
-  gst_bin_add (GST_BIN (priv->pipeline), priv->typefind);
-  GST_MEDIA_INFO_MAKE_OR_ERROR (priv->source, priv->source_name, "source",
-      error);
-  g_object_set (G_OBJECT (priv->source), "location", priv->location, NULL);
-  gst_bin_add (GST_BIN (priv->pipeline), priv->source);
-  if (!gst_element_link (priv->source, priv->typefind))
-    g_warning ("Couldn't connect source and typefind\n");
-  g_signal_connect (G_OBJECT (priv->typefind), "have-type",
-      G_CALLBACK (have_type_callback), priv);
-  if (gst_element_set_state (priv->pipeline, GST_STATE_PLAYING)
-      == GST_STATE_FAILURE) {
-    g_warning ("Couldn't set to play");
-    return FALSE;
-  }
-  GST_DEBUG ("moving to STATE_TYPEFIND\n");
-  priv->state = GST_MEDIA_INFO_STATE_TYPEFIND;
-  return TRUE;
-}
-
-/* finish off typefind */
-gboolean
-gmip_find_type_post (GstMediaInfoPriv * priv)
-{
-  /*clear up typefind */
-  gst_element_set_state (priv->pipeline, GST_STATE_READY);
-  if (priv->decontainer) {
-    gst_element_unlink (priv->source, priv->decontainer);
-    gst_element_unlink (priv->decontainer, priv->typefind);
-    gst_bin_remove (GST_BIN (priv->pipeline), priv->decontainer);
-  } else {
-    gst_element_unlink (priv->source, priv->typefind);
-  }
-  gst_bin_remove (GST_BIN (priv->pipeline), priv->typefind);
-
-  if (priv->type == NULL) {
-    g_warning ("iteration ended, type not found !\n");
-    return FALSE;
-  }
-  GST_DEBUG ("moving to STATE_STREAM\n");
-  priv->state = GST_MEDIA_INFO_STATE_STREAM;
-  return TRUE;
-}
-
-/* complete version */
-gboolean
-gmip_find_type (GstMediaInfoPriv * priv, GError ** error)
-{
-  if (!gmip_find_type_pre (priv, error))
-    return FALSE;
-  GST_DEBUG ("gmip_find_type: iterating");
-  while ((priv->type == NULL) && gst_bin_iterate (GST_BIN (priv->pipeline)))
-    GMI_DEBUG ("+");
-  GMI_DEBUG ("\n");
-  return gmip_find_type_post (priv);
-}
-
-/* FIXME: why not have these functions work on priv types ? */
-gboolean
-gmip_find_stream_pre (GstMediaInfoPriv * priv)
-{
-  if (gst_element_set_state (priv->pipeline, GST_STATE_PLAYING)
-      == GST_STATE_FAILURE) {
-    g_warning ("Couldn't set to play");
-    return FALSE;
-  }
-  priv->state = GST_MEDIA_INFO_STATE_STREAM;
-  return TRUE;
-}
-
-gboolean
-gmip_find_stream_post (GstMediaInfoPriv * priv)
-{
-  GstMediaInfoStream *stream = priv->stream;
-  const GstFormat *formats;
-  GstFormat track_format = 0;
-  GstFormat format;
-  gint64 value;
-  gboolean res;
-  glong bytes = 0;
-
-
-  GST_DEBUG ("gmip_find_stream_post: start");
-  /* find a format that matches the "track" concept */
-  /* FIXME: this is used in vorbis, but we might have to loop when
-   * more codecs have tracks */
-  track_format = gst_format_get_by_nick ("logical_stream");
-
-  /* get supported formats on decoder pad */
-  formats = gst_pad_get_formats (priv->decoder_pad);
-  while (*formats) {
-    const GstFormatDefinition *definition;
-
-    format = *formats;
-
-    g_assert (GST_IS_PAD (priv->decoder_pad));
-    definition = gst_format_get_details (*formats);
-    GST_DEBUG ("trying to figure out length for format %s", definition->nick);
-
-    res = gst_pad_query (priv->decoder_pad, GST_QUERY_TOTAL, &format, &value);
-
-    if (res) {
-      switch (format) {
-        case GST_FORMAT_TIME:
-          stream->length_time = value;
-          GST_DEBUG ("  total %s: %lld", definition->nick, value);
-          break;
-        case GST_FORMAT_DEFAULT:
-        case GST_FORMAT_BYTES:
-          break;
-        default:
-          /* separation is necessary because track_format doesn't resolve to
-           * int */
-          if (format == track_format) {
-            stream->length_tracks = value;
-            GST_DEBUG ("  total %s: %lld", definition->nick, value);
-          } else
-            GST_DEBUG ("unhandled format %s", definition->nick);
-      }
-    } else
-      GST_DEBUG ("query didn't return result for %s", definition->nick);
-
-    formats++;
-  }
-  if (stream->length_tracks == 0)
-    stream->length_tracks = 1;
-
-  /* now get number of bytes from the sink pad to get the bitrate */
-  format = GST_FORMAT_BYTES;
-  g_assert (GST_IS_PAD (priv->source_pad));
-  res = gst_pad_query (priv->source_pad, GST_QUERY_TOTAL, &format, &value);
-  if (!res)
-    g_warning ("Failed to query on sink pad !");
-  bytes = value;
-  GST_DEBUG ("bitrate calc: bytes gotten: %ld", bytes);
-
-  if (bytes) {
-    double seconds = (double) stream->length_time / GST_SECOND;
-    double bits = bytes * 8;
-
-    stream->bitrate = (long) (bits / seconds);
-  }
-  GST_DEBUG ("moving to STATE_METADATA\n");
-  priv->state = GST_MEDIA_INFO_STATE_METADATA;  /* metadata of first track */
-  return TRUE;
-}
-
-/* get properties of complete physical stream
- * and return them in pre-alloced stream struct in priv->stream */
-gboolean
-gmip_find_stream (GstMediaInfoPriv * priv)
-{
-  GST_DEBUG ("mip_find_stream start");
-
-  gmip_find_stream_pre (priv);
-  /* iterate until caps are found */
-  /* FIXME: this should be done through the plugin sending some signal
-   * that it is ready for queries */
-  while (gst_bin_iterate (GST_BIN (priv->pipeline)) && priv->format == NULL);
-  if (gst_element_set_state (priv->pipeline, GST_STATE_PAUSED)
-      == GST_STATE_FAILURE)
-    g_warning ("Couldn't set to paused");
-
-  if (priv->format == NULL) {
-    GMI_DEBUG ("gmip_find_stream: couldn't get caps !");
-    return FALSE;
-  }
-  return gmip_find_stream_post (priv);
-}
-
-/* find metadata encoded in media and store in priv->metadata */
-gboolean
-gmip_find_track_metadata_pre (GstMediaInfoPriv * priv)
-{
-  /* FIXME: this is a hack to set max allowed iterations for metadata
-   * querying - we should make gst smarter by itself instead */
-  priv->metadata_iters = 0;
-  if (gst_element_set_state (priv->pipeline, GST_STATE_PLAYING)
-      == GST_STATE_FAILURE) {
-    g_warning ("Couldn't set to play");
-    return FALSE;
-  }
-  return TRUE;
-}
-
-gboolean
-gmip_find_track_metadata_post (GstMediaInfoPriv * priv)
-{
-  if (gst_element_set_state (priv->pipeline, GST_STATE_PAUSED)
-      == GST_STATE_FAILURE)
-    return FALSE;
-  priv->current_track->metadata = priv->metadata;
-  priv->metadata = NULL;
-  return TRUE;
-}
-
-gboolean
-gmip_find_track_metadata (GstMediaInfoPriv * priv)
-{
-  gmip_find_track_metadata_pre (priv);
-  GST_DEBUG ("gmip_find_metadata: iterating");
-  while ((priv->metadata == NULL) && gst_bin_iterate (GST_BIN (priv->pipeline)))
-    GMI_DEBUG ("+");
-  GMI_DEBUG ("\n");
-  gmip_find_track_metadata_post (priv);
-
-  return TRUE;
-}
-
-/* find streaminfo found by decoder and store in priv->streaminfo */
-/* FIXME: this is an exact copy, so reuse this function instead */
-gboolean
-gmip_find_track_streaminfo_pre (GstMediaInfoPriv * priv)
-{
-  if (gst_element_set_state (priv->pipeline, GST_STATE_PLAYING)
-      == GST_STATE_FAILURE) {
-    g_warning ("Couldn't set to play");
-    return FALSE;
-  }
-  return TRUE;
-}
-
-gboolean
-gmip_find_track_streaminfo_post (GstMediaInfoPriv * priv)
-{
-  GstFormat format, track_format;
-
-  gst_element_set_state (priv->pipeline, GST_STATE_PAUSED);
-
-  /* now add total length to this, and maybe even bitrate ? FIXME */
-  track_format = gst_format_get_by_nick ("logical_stream");
-  if (track_format == 0) {
-    g_print ("FIXME: implement getting length of whole track\n");
-  } else {
-    /* which one are we at ? */
-    long track_num;
-    gint64 value_start, value_end;
-    gboolean res;
-
-    res = gst_pad_query (priv->decoder_pad, GST_QUERY_POSITION,
-        &track_format, &value_start);
-    if (res) {
-      format = GST_FORMAT_TIME;
-      track_num = value_start;
-      GST_DEBUG ("we are currently at %ld", track_num);
-      res = gst_pad_convert (priv->decoder_pad,
-          track_format, track_num, &format, &value_start);
-      res &= gst_pad_convert (priv->decoder_pad,
-          track_format, track_num + 1, &format, &value_end);
-      if (res) {
-        /* substract to get the length */
-        GST_DEBUG ("start %lld, end %lld", value_start, value_end);
-        value_end -= value_start;
-        /* FIXME: check units; this is in seconds */
-
-        gst_tag_list_add (priv->streaminfo, GST_TAG_MERGE_REPLACE,
-            GST_TAG_DURATION, (int) (value_end / 1E6), NULL);
-      }
-    }
-  }
-  priv->current_track->streaminfo = priv->streaminfo;
-  priv->streaminfo = NULL;
-
-  return TRUE;
-}
-
-gboolean
-gmip_find_track_streaminfo (GstMediaInfoPriv * priv)
-{
-  gmip_find_track_streaminfo_pre (priv);
-  GST_DEBUG ("DEBUG: gmip_find_streaminfo: iterating");
-  while ((priv->streaminfo == NULL) &&
-      gst_bin_iterate (GST_BIN (priv->pipeline)))
-    GMI_DEBUG ("+");
-  GMI_DEBUG ("\n");
-  gmip_find_track_streaminfo_post (priv);
-
-  return TRUE;
-}
-
-/* find format found by decoder and store in priv->format */
-gboolean
-gmip_find_track_format_pre (GstMediaInfoPriv * priv)
-{
-  if (gst_element_set_state (priv->pipeline, GST_STATE_PLAYING)
-      == GST_STATE_FAILURE) {
-    g_warning ("Couldn't set to play");
-    return FALSE;
-  }
-  return TRUE;
-}
-
-gboolean
-gmip_find_track_format_post (GstMediaInfoPriv * priv)
-{
-  if (gst_element_set_state (priv->pipeline, GST_STATE_PAUSED)
-      == GST_STATE_FAILURE)
-    return FALSE;
-  priv->current_track->format = priv->format;
-  priv->format = NULL;
-  return TRUE;
-}
-
-gboolean
-gmip_find_track_format (GstMediaInfoPriv * priv)
-{
-  gmip_find_track_format_pre (priv);
-  GST_DEBUG ("DEBUG: gmip_find_format: iterating");
-  while ((priv->format == NULL) && gst_bin_iterate (GST_BIN (priv->pipeline)))
-    GMI_DEBUG ("+");
-  GMI_DEBUG ("\n");
-  gmip_find_track_format_post (priv);
-
-  return TRUE;
-}
diff --git a/gst-libs/gst/media-info/media-info-priv.h b/gst-libs/gst/media-info/media-info-priv.h
deleted file mode 100644 (file)
index 0c65da9..0000000
+++ /dev/null
@@ -1,159 +0,0 @@
-/* GStreamer
- * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-/* media-info-priv.h: private stuff */
-
-#ifndef __GST_MEDIA_INFO_PRIV_H__
-#define __GST_MEDIA_INFO_PRIV_H__
-
-#include <gst/gst.h>
-#include <glib/gprintf.h>
-
-G_BEGIN_DECLS
-
-/* debug */
-GST_DEBUG_CATEGORY_EXTERN (gst_media_info_debug);
-#define GST_CAT_DEFAULT gst_media_info_debug
-
-//#define DEBUG
-#ifdef DEBUG
-static gboolean _gmi_debug = TRUE;
-#else
-static gboolean _gmi_debug = FALSE;
-#endif
-
-#ifdef G_HAVE_ISO_VARARGS
-
-#define GMI_DEBUG(...) \
-  { if (_gmi_debug) { g_print ( __VA_ARGS__ ); }}
-
-#elif defined(G_HAVE_GNUC_VARARGS)
-
-#define GMI_DEBUG(format, args...) \
-  { if (_gmi_debug) { g_print ( format , ## args ); }}
-
-#else 
-
-static inline void
-GMI_DEBUG (const char *format, ...)
-{
-  va_list varargs;
-
-  if (_gmi_debug) {
-    va_start (varargs, format);
-    g_vprintf ( format, varargs);
-    va_end (varargs);
-  }
-}
-
-#endif
-
-
-/* state machine enum; FIXME: can we move this to priv.c ? */
-typedef enum
-{
-  GST_MEDIA_INFO_STATE_NULL,
-  GST_MEDIA_INFO_STATE_TYPEFIND,
-  GST_MEDIA_INFO_STATE_STREAM,
-  GST_MEDIA_INFO_STATE_METADATA,
-  GST_MEDIA_INFO_STATE_STREAMINFO,
-  GST_MEDIA_INFO_STATE_FORMAT,
-  GST_MEDIA_INFO_STATE_DONE
-} GstMediaInfoState;
-
-/* private structure */
-struct GstMediaInfoPriv
-{
-  GstElement *typefind;
-
-  GstCaps *type;
-
-  GstCaps *format;
-  GstTagList *metadata;
-  gint metadata_iters;
-  GstTagList *streaminfo;
-
-  GstElement *pipeline;                 /* will be != NULL during collection */
-  gchar *pipeline_desc;                 /* will be != NULL during collection */
-  GstElement *fakesink;                        /* so we can get caps from the
-                                           decoder sink pad */
-  gchar *source_name;                   /* type of element used as source */
-  GstElement *source;
-  GstPad *source_pad;                   /* pad for querying encoded caps */
-  GstElement *decoder;
-  GstPad *decoder_pad;                  /* pad for querying decoded caps */
-  GstElement *decontainer;             /* element to typefind in containers */
-
-  GstMediaInfoState state;              /* current state of state machine */
-  gchar *location;                      /* location set on the info object */
-  guint16 flags;                        /* flags supplied for detection */
-  GstMediaInfoTrack *current_track;     /* track pointer under inspection */
-  glong current_track_num;              /* current track under inspection */
-
-  GstMediaInfoStream *stream;           /* total stream properties */
-  char *cache;                          /* location of cache */
-
-  GError *error;                       /* error for creation problems */
-};
-
-/* declarations */
-GstMediaInfoStream *
-               gmi_stream_new                  (void);
-void           gmi_stream_free                 (GstMediaInfoStream *stream);
-
-GstMediaInfoTrack *
-               gmi_track_new                   (void);
-
-void           gmip_reset                      (GstMediaInfoPriv *priv);
-gboolean       gmip_init                       (GstMediaInfoPriv *priv, GError **error);
-
-void           gmi_clear_decoder               (GstMediaInfo *info);
-
-gboolean       gmi_seek_to_track               (GstMediaInfo *info,
-                                                long track);
-
-gboolean       gmi_set_mime                    (GstMediaInfo *info,
-                                                const char *mime);
-
-void           deep_notify_callback            (GObject *object,
-                                                GstObject *origin,
-                                                GParamSpec *pspec,
-                                                GstMediaInfoPriv *priv);
-void           found_tag_callback              (GObject *pipeline, GstElement *source, GstTagList *tags, GstMediaInfoPriv *priv);
-void           error_callback                  (GObject *element, GstElement *source, GError *error, gchar *debug, GstMediaInfoPriv *priv);
-
-gboolean       gmip_find_type_pre              (GstMediaInfoPriv *priv, GError **error);
-gboolean       gmip_find_type_post             (GstMediaInfoPriv *priv);
-gboolean       gmip_find_type                  (GstMediaInfoPriv *priv, GError **error);
-gboolean       gmip_find_stream_pre            (GstMediaInfoPriv *priv);
-gboolean       gmip_find_stream_post           (GstMediaInfoPriv *priv);
-gboolean       gmip_find_stream                        (GstMediaInfoPriv *priv);
-gboolean       gmip_find_track_metadata_pre    (GstMediaInfoPriv *priv);
-gboolean       gmip_find_track_metadata_post   (GstMediaInfoPriv *priv);
-gboolean       gmip_find_track_metadata                (GstMediaInfoPriv *priv);
-gboolean       gmip_find_track_streaminfo_pre  (GstMediaInfoPriv *priv);
-gboolean       gmip_find_track_streaminfo_post (GstMediaInfoPriv *priv);
-gboolean       gmip_find_track_streaminfo      (GstMediaInfoPriv *priv);
-gboolean       gmip_find_track_format_pre      (GstMediaInfoPriv *priv);
-gboolean       gmip_find_track_format_post     (GstMediaInfoPriv *priv);
-gboolean       gmip_find_track_format          (GstMediaInfoPriv *priv);
-
-G_END_DECLS
-
-#endif /* __GST_MEDIA_INFO_PRIV_H__ */
diff --git a/gst-libs/gst/media-info/media-info-test.c b/gst-libs/gst/media-info/media-info-test.c
deleted file mode 100644 (file)
index 4013b3e..0000000
+++ /dev/null
@@ -1,120 +0,0 @@
-/* media-info test app */
-
-#include <gst/gst.h>
-#include <string.h>
-#include "media-info.h"
-
-static void
-print_tag (const GstTagList * list, const gchar * tag, gpointer unused)
-{
-  gint i, count;
-
-  count = gst_tag_list_get_tag_size (list, tag);
-
-  for (i = 0; i < count; i++) {
-    gchar *str;
-
-    if (gst_tag_get_type (tag) == G_TYPE_STRING) {
-      if (!gst_tag_list_get_string_index (list, tag, i, &str))
-        g_assert_not_reached ();
-    } else {
-      str =
-          g_strdup_value_contents (gst_tag_list_get_value_index (list, tag, i));
-    }
-
-    if (i == 0) {
-      g_print ("%15s: %s\n", gst_tag_get_nick (tag), str);
-    } else {
-      g_print ("               : %s\n", str);
-    }
-
-    g_free (str);
-  }
-}
-
-static void
-info_print (GstMediaInfoStream * stream)
-{
-  int i;
-  GList *p;
-  GstMediaInfoTrack *track;
-
-  g_print ("- mime type: %s\n", stream->mime);
-  g_print ("- length: %.3f seconds\n",
-      (gdouble) stream->length_time / GST_SECOND);
-  g_print ("- bitrate: %.3f kbps\n", stream->bitrate / 1000.0);
-  g_print ("- number of tracks: %ld\n", stream->length_tracks);
-  p = stream->tracks;
-  if (p == NULL) {
-    g_print ("- no track information, probably an error\n");
-    return;
-  }
-  for (i = 0; i < stream->length_tracks; ++i) {
-    g_print ("- track %d\n", i);
-    track = (GstMediaInfoTrack *) p->data;
-    g_print ("  - metadata:\n");
-    if (track->metadata)
-      gst_tag_list_foreach (track->metadata, print_tag, NULL);
-    else
-      g_print ("  (none found)\n");
-    g_print ("  - streaminfo:\n");
-    gst_tag_list_foreach (track->streaminfo, print_tag, NULL);
-    g_print ("  - format:\n");
-    g_print ("%s\n", gst_caps_to_string (track->format));
-    p = p->next;
-  }
-}
-
-int
-main (int argc, char *argv[])
-{
-  GstMediaInfo *info;
-  GstMediaInfoStream *stream = NULL;
-  GError *error = NULL;
-  gint i;
-
-  g_assert (argc > 1);
-
-  gst_media_info_init ();
-  gst_init (&argc, &argv);
-
-  info = gst_media_info_new (&error);
-  if (error != NULL) {
-    g_print ("Error creating media-info object: %s\n", error->message);
-    g_error_free (error);
-    return -1;
-  }
-
-  g_assert (G_IS_OBJECT (info));
-  if (!gst_media_info_set_source (info, "gnomevfssrc", &error)) {
-    g_print ("Could not set gnomevfssrc as a source\n");
-    g_print ("reason: %s\n", error->message);
-    g_error_free (error);
-    return -1;
-  }
-
-  g_print ("stream: %p, &stream: %p\n", stream, &stream);
-  for (i = 1; i < argc; ++i) {
-
-    /*
-       stream = gst_media_info_read (info, argv[i], GST_MEDIA_INFO_ALL);
-     */
-    gst_media_info_read_with_idler (info, argv[i], GST_MEDIA_INFO_ALL, &error);
-    while (gst_media_info_read_idler (info, &stream, &error) && stream == NULL)
-      /* keep idling */
-      g_print ("+");
-    g_print ("\nFILE: %s\n", argv[i]);
-    g_print ("stream: %p, &stream: %p\n", stream, &stream);
-    if (error) {
-      g_print ("Error reading media info: %s\n", error->message);
-      g_error_free (error);
-    }
-    if (stream)
-      info_print (stream);
-    else
-      g_print ("no media info found.\n");
-    stream = NULL;
-  }
-
-  return 0;
-}
diff --git a/gst-libs/gst/media-info/media-info.c b/gst-libs/gst/media-info/media-info.c
deleted file mode 100644 (file)
index 16a6625..0000000
+++ /dev/null
@@ -1,428 +0,0 @@
-/* GStreamer media-info library
- * Copyright (C) 2003,2004 Thomas Vander Stichele <thomas@apestaart.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <gst/gst.h>
-#include <string.h>
-#include "media-info.h"
-#include "media-info-priv.h"
-
-static void gst_media_info_class_init (GstMediaInfoClass * klass);
-static void gst_media_info_instance_init (GstMediaInfo * info);
-
-static void gst_media_info_get_property (GObject * object, guint prop_id,
-    GValue * value, GParamSpec * pspec);
-
-
-static gboolean _media_info_inited = FALSE;
-
-/* FIXME: this is a lousy hack that needs to go */
-#define MAX_METADATA_ITERS 5
-
-/* GObject-y bits */
-
-/* signal stuff */
-enum
-{
-  MEDIA_INFO_SIGNAL,
-  LAST_SIGNAL
-};
-
-static guint gst_media_info_signals[LAST_SIGNAL] = { 0 };
-
-/*
- * all GError stuff
- */
-
-enum
-{
-  MEDIA_INFO_ERROR_FILE
-};
-
-/* GError quark stuff */
-GQuark
-gst_media_info_error_quark (void)
-{
-  static GQuark quark = 0;
-
-  if (quark == 0)
-    quark = g_quark_from_static_string ("gst-media-info-error-quark");
-  return quark;
-}
-
-/*
- * GObject type stuff
- */
-
-enum
-{
-  PROP_SOURCE
-};
-
-static GObjectClass *parent_class = NULL;
-
-GST_DEBUG_CATEGORY (gst_media_info_debug);
-
-/* initialize the media-info library */
-void
-gst_media_info_init (void)
-{
-  if (_media_info_inited)
-    return;
-
-  /* register our debugging category */
-  GST_DEBUG_CATEGORY_INIT (gst_media_info_debug, "GST_MEDIA_INFO", 0,
-      "GStreamer media-info library");
-  GST_DEBUG ("Initialized media-info library");
-  _media_info_inited = TRUE;
-}
-
-GType
-gst_media_info_get_type (void)
-{
-  static GType gst_media_info_type = 0;
-
-  if (!gst_media_info_type) {
-    static const GTypeInfo gst_media_info_info = {
-      sizeof (GstMediaInfoClass),
-      (GBaseInitFunc) NULL,
-      (GBaseFinalizeFunc) NULL,
-      (GClassInitFunc) gst_media_info_class_init,
-      NULL, NULL,
-      sizeof (GstMediaInfo),
-      0,
-      (GInstanceInitFunc) gst_media_info_instance_init,
-      NULL
-    };
-
-    gst_media_info_type = g_type_register_static (G_TYPE_OBJECT,
-        "GstMediaInfo", &gst_media_info_info, 0);
-  }
-  return gst_media_info_type;
-}
-
-static void
-gst_media_info_class_init (GstMediaInfoClass * klass)
-{
-  GObjectClass *g_object_class = G_OBJECT_CLASS (klass);
-
-  parent_class = g_type_class_ref (G_TYPE_OBJECT);
-  //parent_class = g_type_class_peek_parent (klass);
-
-
-  /*
-     object_class->finalize = gst_media_info_finalize;
-     object_class->dispose  = gst_media_info_dispose;
-   */
-
-  /*
-     g_object_class->set_property = gst_media_info_set_property;
-   */
-  g_object_class->get_property = gst_media_info_get_property;
-
-  klass->media_info_signal = NULL;
-
-  gst_media_info_signals[MEDIA_INFO_SIGNAL] =
-      g_signal_new ("media-info",
-      G_TYPE_FROM_CLASS (klass),
-      G_SIGNAL_RUN_LAST,
-      G_STRUCT_OFFSET (GstMediaInfoClass, media_info_signal),
-      NULL, NULL, gst_marshal_VOID__VOID, G_TYPE_NONE, 0);
-}
-
-static void
-gst_media_info_instance_init (GstMediaInfo * info)
-{
-  GError **error;
-
-  info->priv = g_new0 (GstMediaInfoPriv, 1);
-  error = &info->priv->error;
-
-  if (!_media_info_inited) {
-    gst_media_info_init ();
-  }
-
-  gmip_init (info->priv, error);
-  gmip_reset (info->priv);
-}
-
-/* get/set */
-static void
-gst_media_info_get_property (GObject * object, guint prop_id,
-    GValue * value, GParamSpec * pspec)
-{
-  GstMediaInfo *info = GST_MEDIA_INFO (object);
-
-  switch (prop_id) {
-    case PROP_SOURCE:
-      g_value_set_string (value, info->priv->source_name);
-      break;
-    default:
-      G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
-      break;
-  }
-}
-
-GstMediaInfo *
-gst_media_info_new (GError ** error)
-{
-  GstMediaInfo *info = g_object_new (GST_MEDIA_INFO_TYPE, NULL);
-
-  if (info->priv->error) {
-    if (error) {
-      *error = info->priv->error;
-      info->priv->error = NULL;
-    } else {
-      g_warning ("Error creating GstMediaInfo object.\n%s",
-          info->priv->error->message);
-      g_error_free (info->priv->error);
-    }
-  }
-  return info;
-}
-
-/**
- * public methods
- */
-gboolean
-gst_media_info_set_source (GstMediaInfo * info, const char *source,
-    GError ** error)
-{
-  info->priv->source_name = g_strdup (source);
-  return TRUE;
-}
-
-/* idler-based implementation
- * set up read on a given location
- * FIXME: maybe we should check if the info is cleared when calling this
- * function ? What happens if it gets called again on same info before
- * previous one is done ?
- */
-void
-gst_media_info_read_with_idler (GstMediaInfo * info, const char *location,
-    guint16 flags, GError ** error)
-{
-  GstMediaInfoPriv *priv = info->priv;
-
-  gmip_reset (info->priv);      /* reset all structs */
-  priv->location = g_strdup (location);
-  priv->flags = flags;
-}
-
-/* an idler which does the work of actually collecting all data
- * this must be called repeatedly, until streamp is set to a non-NULL value
- * returns: TRUE if it was able to idle, FALSE if there was an error
- */
-gboolean
-gst_media_info_read_idler (GstMediaInfo * info, GstMediaInfoStream ** streamp,
-    GError ** error)
-{
-  GstMediaInfoPriv *priv;
-
-  /* if it's NULL then we're sure something went wrong higher up) */
-  if (info == NULL)
-    return FALSE;
-  g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-  priv = info->priv;
-
-  g_assert (streamp != NULL);
-  g_assert (priv);
-
-  switch (priv->state) {
-    case GST_MEDIA_INFO_STATE_NULL:
-      /* make sure we have a source */
-      if (!priv->source_name) {
-        *error = g_error_new (GST_MEDIA_INFO_ERROR, 0,
-            "No source set on media info.");
-        return FALSE;
-      }
-
-      /* need to find type */
-      GST_DEBUG ("idler: NULL, need to find type, priv %p", priv);
-      return gmip_find_type_pre (priv, error);
-
-    case GST_MEDIA_INFO_STATE_TYPEFIND:
-    {
-      gchar *mime;
-
-      GST_LOG ("STATE_TYPEFIND");
-      if ((priv->type == NULL) && gst_bin_iterate (GST_BIN (priv->pipeline))) {
-        GST_DEBUG ("iterating while in STATE_TYPEFIND");
-        GMI_DEBUG ("?");
-        return TRUE;
-      }
-      if (priv->type == NULL) {
-        g_warning ("Couldn't find type\n");
-        return FALSE;
-      }
-      /* do the state transition */
-      GST_DEBUG ("doing find_type_post");
-      gmip_find_type_post (priv);
-      GST_DEBUG ("finding out mime type");
-      mime =
-          g_strdup (gst_structure_get_name (gst_caps_get_structure (priv->type,
-                  0)));
-      GST_DEBUG ("found out mime type: %s", mime);
-      if (!gmi_set_mime (info, mime)) {
-        /* FIXME: pop up error */
-        GST_DEBUG ("no decoder pipeline found for mime %s", mime);
-        return FALSE;
-      }
-      priv->stream = gmi_stream_new ();
-      GST_DEBUG ("new stream: %p", priv->stream);
-      priv->stream->mime = mime;
-      priv->stream->path = priv->location;
-
-      gmip_find_stream_pre (priv);
-    }
-    case GST_MEDIA_INFO_STATE_STREAM:
-    {
-      GST_LOG ("STATE_STREAM");
-      if ((priv->format == NULL) && gst_bin_iterate (GST_BIN (priv->pipeline))) {
-        GMI_DEBUG ("?");
-        return TRUE;
-      }
-      if (priv->format == NULL) {
-        g_warning ("Couldn't find format\n");
-        return FALSE;
-      }
-      /* do state transition; stream -> first track metadata */
-      priv->current_track_num = 0;
-      gmip_find_stream_post (priv);
-      priv->current_track = gmi_track_new ();
-      gmip_find_track_metadata_pre (priv);
-      return TRUE;
-    }
-      /* these ones are repeated per track */
-    case GST_MEDIA_INFO_STATE_METADATA:
-    {
-      if ((priv->metadata == NULL) &&
-          gst_bin_iterate (GST_BIN (priv->pipeline)) &&
-          priv->metadata_iters < MAX_METADATA_ITERS) {
-        GMI_DEBUG ("?");
-        priv->metadata_iters++;
-        return TRUE;
-      }
-      if (priv->metadata_iters == MAX_METADATA_ITERS)
-        g_print ("iterated a few times, didn't find metadata\n");
-      if (priv->metadata == NULL) {
-        /* this is not a permanent failure */
-        GST_DEBUG ("Couldn't find metadata");
-      }
-      GST_DEBUG ("found metadata of track %ld", priv->current_track_num);
-      if (!gmip_find_track_metadata_post (priv))
-        return FALSE;
-      GST_DEBUG ("METADATA: going to STREAMINFO\n");
-      priv->state = GST_MEDIA_INFO_STATE_STREAMINFO;
-      return gmip_find_track_streaminfo_pre (priv);
-    }
-    case GST_MEDIA_INFO_STATE_STREAMINFO:
-    {
-      if ((priv->streaminfo == NULL) &&
-          gst_bin_iterate (GST_BIN (priv->pipeline))) {
-        GMI_DEBUG ("?");
-        return TRUE;
-      }
-      if (priv->streaminfo == NULL) {
-        /* this is not a permanent failure */
-        GST_DEBUG ("Couldn't find streaminfo");
-      } else
-        GST_DEBUG ("found streaminfo of track %ld", priv->current_track_num);
-      if (!gmip_find_track_streaminfo_post (priv))
-        return FALSE;
-      priv->state = GST_MEDIA_INFO_STATE_FORMAT;
-      return gmip_find_track_format_pre (priv);
-    }
-    case GST_MEDIA_INFO_STATE_FORMAT:
-    {
-      if ((priv->format == NULL) && gst_bin_iterate (GST_BIN (priv->pipeline))) {
-        GMI_DEBUG ("?");
-        return TRUE;
-      }
-      if (priv->format == NULL) {
-        g_warning ("Couldn't find format\n");
-        return FALSE;
-      }
-      GST_DEBUG ("found format of track %ld", priv->current_track_num);
-      if (!gmip_find_track_format_post (priv))
-        return FALSE;
-      /* save the track info */
-      priv->stream->tracks = g_list_append (priv->stream->tracks,
-          priv->current_track);
-      /* these alloc'd data types have been handed off */
-      priv->current_track = NULL;
-      priv->location = NULL;
-      /* now see if we need to seek to a next track or not */
-      priv->current_track_num++;
-      if (priv->current_track_num < priv->stream->length_tracks) {
-        gmi_seek_to_track (info, priv->current_track_num);
-        priv->current_track = gmi_track_new ();
-        if (!gmip_find_track_metadata_pre (priv)) {
-          g_free (priv->current_track);
-          return FALSE;
-        }
-        priv->state = GST_MEDIA_INFO_STATE_METADATA;
-        return TRUE;
-      }
-      priv->state = GST_MEDIA_INFO_STATE_DONE;
-      gmi_clear_decoder (info);
-      GST_DEBUG ("TOTALLY DONE, setting pointer *streamp to %p", *streamp);
-      *streamp = priv->stream;
-      priv->stream = NULL;
-      return TRUE;
-    }
-    case GST_MEDIA_INFO_STATE_DONE:
-      return TRUE;
-    default:
-      g_warning ("don't know what to do\n");
-      return FALSE;
-  }
-}
-
-/* main function
- * read all possible info from the file pointed to by location
- * use flags to limit the type of information searched for */
-GstMediaInfoStream *
-gst_media_info_read (GstMediaInfo * info, const char *location, guint16 flags,
-    GError ** error)
-{
-  GstMediaInfoStream *stream = NULL;
-
-  gst_media_info_read_with_idler (info, location, flags, error);
-  if (*error)
-    return FALSE;
-  while (gst_media_info_read_idler (info, &stream, error) && stream == NULL)
-    /* keep looping */ ;
-  if (*error)
-    return NULL;
-
-  return stream;
-}
-
-
-/*
- * FIXME: reset ?
-gboolean       gst_media_info_write    (GstMediaInfo *media_info,
-                                         const char *location,
-                                        GstCaps *media_info);
-                                        */
diff --git a/gst-libs/gst/media-info/media-info.h b/gst-libs/gst/media-info/media-info.h
deleted file mode 100644 (file)
index c134999..0000000
+++ /dev/null
@@ -1,140 +0,0 @@
-/* GStreamer
- * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-
-#ifndef __GST_MEDIA_INFO_H__
-#define __GST_MEDIA_INFO_H__
-
-#include <gst/gst.h>
-
-G_BEGIN_DECLS
-
-typedef struct GstMediaInfoPriv                GstMediaInfoPriv;
-typedef struct _GstMediaInfo            GstMediaInfo;
-typedef struct _GstMediaInfoClass       GstMediaInfoClass;
-
-struct _GstMediaInfo
-{
-  GObject parent;
-
-  GstMediaInfoPriv *priv;
-
-  gpointer _gst_reserved[GST_PADDING];
-};
-
-struct _GstMediaInfoClass
-{
-  GObjectClass parent_class;
-
-  /* signals */
-  void (*media_info_signal)            (GstMediaInfo *gst_media_info);
-  void (*error_signal)                 (GstMediaInfo *gst_media_info, GError *error, const gchar *debug);
-
-  gpointer _gst_reserved[GST_PADDING];
-};
-
-/* structure for "physical" stream,
- * which can contain multiple sequential ones */
-typedef struct
-{
-  gboolean seekable;
-  gchar *mime;
-  gchar *path;
-  GstCaps *caps;               /* properties of the complete bitstream */
-
-  guint64 length_time;
-  glong length_tracks;
-  glong bitrate;
-
-  GList *tracks;
-} GstMediaInfoStream;
-
-/* structure for "logical" stream or track,
- * or one of a set of sequentially muxed streams */
-typedef struct
-{
-  GstTagList *metadata;                /* changeable metadata or tags */
-  GstTagList *streaminfo;      /* codec property stuff */
-  GstCaps *format;             /* properties of the logical stream */
-
-  guint64 length_time;
-
-  GList *con_streams;          /* list of concurrent streams in this
-                                  sequential stream */
-} GstMediaInfoTrack;
-
-typedef struct
-{
-  GstCaps *caps;               /* properties of the muxed concurrent stream */
-} GstMediaInfoConcurrent;
-
-#define GST_MEDIA_INFO_ERROR           gst_media_info_error_quark ()
-
-#define GST_MEDIA_INFO_TYPE            (gst_media_info_get_type ())
-#define GST_MEDIA_INFO(obj)             (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_MEDIA_INFO_TYPE, GstMediaInfo))
-#define GST_MEDIA_INFO_CLASS(klass)     (G_TYPE_CHECK_CLASS_CAST ((klass), GST_MEDIA_INFO_TYPE, GstMediaInfoClass))
-#define IS_GST_MEDIA_INFO(obj)          (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_MEDIA_INFO_TYPE))
-#define IS_GST_MEDIA_INFO_CLASS(obj)    (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_MEDIA_INFO_TYPE))
-#define GST_MEDIA_INFO_GET_CLASS(obj)   (G_TYPE_INSTANCE_GET_CLASS ((obj), GST_MEDIA_INFO_TYPE, GstMediaInfoClass))
-
-#define GST_MEDIA_INFO_STREAM          1 << 1
-#define GST_MEDIA_INFO_MIME            1 << 2
-#define GST_MEDIA_INFO_METADATA                1 << 3
-#define GST_MEDIA_INFO_STREAMINFO      1 << 4
-#define GST_MEDIA_INFO_FORMAT          1 << 5
-#define GST_MEDIA_INFO_ALL             ((1 << 6) - 1)
-
-GQuark         gst_media_info_error_quark      (void);
-
-void           gst_media_info_init             (void);
-GType           gst_media_info_get_type                (void);
-
-GstMediaInfo * gst_media_info_new              (GError **error);
-
-gboolean       gst_media_info_set_source       (GstMediaInfo *info,
-                                                const char *source,
-                                                GError **error);
-void           gst_media_info_read_with_idler  (GstMediaInfo *media_info,
-                                                const char *location,
-                                                guint16 GST_MEDIA_INFO_FLAGS,
-                                                GError **error);
-gboolean       gst_media_info_read_idler       (GstMediaInfo *media_info,
-                                                GstMediaInfoStream **streamp,
-                                                GError **error);
-GstMediaInfoStream *
-               gst_media_info_read             (GstMediaInfo *media_info,
-                                                const char *location,
-                                                guint16 GST_MEDIA_INFO_FLAGS,
-                                                GError **error);
-gboolean       gst_media_info_read_many        (GstMediaInfo *media_info,
-                                                GList *locations,
-                                                guint16 GST_MEDIA_INFO_FLAGS,
-                                                GError **error);
-GstCaps *      gst_media_info_get_next         (GstMediaInfo *media_info,
-                                                GError **error);
-/*
- * FIXME: reset ?
-gboolean       gst_media_info_write    (GstMediaInfo *media_info,
-                                         const char *location,
-                                        GstCaps *media_info);
-                                        */
-
-G_END_DECLS
-
-#endif /* __GST_MEDIA_INFO_H__ */
diff --git a/gst-libs/gst/media-info/media-info.vcproj b/gst-libs/gst/media-info/media-info.vcproj
deleted file mode 100644 (file)
index 5551d8d..0000000
+++ /dev/null
@@ -1,150 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
-       ProjectType="Visual C++"
-       Version="7.10"
-       Name="media-info"
-       ProjectGUID="{979C216F-0ACF-4956-AE00-055A42D67896}"
-       RootNamespace="media-info"
-       Keyword="Win32Proj">
-       <Platforms>
-               <Platform
-                       Name="Win32"/>
-       </Platforms>
-       <Configurations>
-               <Configuration
-                       Name="Debug|Win32"
-                       OutputDirectory="../../../win32/Debug"
-                       IntermediateDirectory="../../../win32/Debug"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               Optimization="0"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               MinimalRebuild="TRUE"
-                               BasicRuntimeChecks="3"
-                               RuntimeLibrary="3"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="4"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstmedia-info.dll"
-                               LinkIncremental="2"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Debug;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile=""
-                               GenerateDebugInformation="TRUE"
-                               ProgramDatabaseFile="$(OutDir)/media-info.pdb"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               ImportLibrary="$(OutDir)/gstmedia-info.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-               <Configuration
-                       Name="Release|Win32"
-                       OutputDirectory="../../../win32/Release"
-                       IntermediateDirectory="../../../win32/Release"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;NDEBUG;GST_DISABLE_GST_DEBUG;_WINDOWS;_USRDLL;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               RuntimeLibrary="2"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="3"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstmedia-info.dll"
-                               LinkIncremental="1"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Release;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile=""
-                               GenerateDebugInformation="TRUE"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               EnableCOMDATFolding="2"
-                               ImportLibrary="$(OutDir)/gstmedia-info.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-       </Configurations>
-       <References>
-       </References>
-       <Files>
-               <Filter
-                       Name="Source Files"
-                       Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
-                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
-                       <File
-                               RelativePath=".\media-info-priv.c">
-                       </File>
-                       <File
-                               RelativePath=".\media-info.c">
-                       </File>
-               </Filter>
-               <Filter
-                       Name="Header Files"
-                       Filter="h;hpp;hxx;hm;inl;inc;xsd"
-                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
-                       <File
-                               RelativePath=".\media-info-priv.h">
-                       </File>
-                       <File
-                               RelativePath=".\media-info.h">
-                       </File>
-               </Filter>
-       </Files>
-       <Globals>
-       </Globals>
-</VisualStudioProject>
diff --git a/gst-libs/gst/mixer/Makefile.am b/gst-libs/gst/mixer/Makefile.am
deleted file mode 100644 (file)
index 1c71b0b..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-# variables used for enum/marshal generation
-glib_enum_headers=$(mixer_headers)
-glib_enum_define=GST_MIXER
-glib_enum_prefix=gst_mixer
-
-
-libgstmixerincludedir = \
-       $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/mixer
-
-mixer_headers = \
-       mixer.h \
-       mixeroptions.h \
-       mixertrack.h
-
-built_sources = \
-       mixer-marshal.c \
-       mixer-enumtypes.c
-
-built_headers =        \
-       mixer-marshal.h \
-       mixer-enumtypes.h
-
-libgstmixerinclude_HEADERS = \
-       $(mixer_headers)
-
-nodist_libgstmixerinclude_HEADERS = \
-       mixer-enumtypes.h
-
-noinst_LTLIBRARIES = libgstmixer.la
-
-libgstmixer_la_SOURCES = \
-       mixer.c \
-       mixeroptions.c \
-       mixertrack.c
-
-nodist_libgstmixer_la_SOURCES = \
-       $(built_sources)
-
-libgstmixer_la_CFLAGS = $(GST_CFLAGS)
-
-BUILT_SOURCES = \
-       $(built_sources) \
-        $(built_headers)
-
-EXTRA_DIST = mixer-marshal.list
-
-CLEANFILES = $(BUILT_SOURCES)
-
-include $(top_srcdir)/common/glib-gen.mak
diff --git a/gst-libs/gst/mixer/mixer-marshal.list b/gst-libs/gst/mixer/mixer-marshal.list
deleted file mode 100644 (file)
index 3bcfd83..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-VOID:OBJECT,BOOLEAN
-VOID:OBJECT,POINTER
-VOID:OBJECT,STRING
diff --git a/gst-libs/gst/mixer/mixer.c b/gst-libs/gst/mixer/mixer.c
deleted file mode 100644 (file)
index 158c2ad..0000000
+++ /dev/null
@@ -1,317 +0,0 @@
-/* GStreamer Mixer
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * mixer.c: mixer design virtual class function wrappers
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "mixer.h"
-#include "mixer-marshal.h"
-
-enum
-{
-  SIGNAL_MUTE_TOGGLED,
-  SIGNAL_RECORD_TOGGLED,
-  SIGNAL_VOLUME_CHANGED,
-  SIGNAL_OPTION_CHANGED,
-  LAST_SIGNAL
-};
-
-static void gst_mixer_class_init (GstMixerClass * klass);
-
-static guint gst_mixer_signals[LAST_SIGNAL] = { 0 };
-
-GType
-gst_mixer_get_type (void)
-{
-  static GType gst_mixer_type = 0;
-
-  if (!gst_mixer_type) {
-    static const GTypeInfo gst_mixer_info = {
-      sizeof (GstMixerClass),
-      (GBaseInitFunc) gst_mixer_class_init,
-      NULL,
-      NULL,
-      NULL,
-      NULL,
-      0,
-      0,
-      NULL,
-    };
-
-    gst_mixer_type = g_type_register_static (G_TYPE_INTERFACE,
-        "GstMixer", &gst_mixer_info, 0);
-    g_type_interface_add_prerequisite (gst_mixer_type,
-        GST_TYPE_IMPLEMENTS_INTERFACE);
-  }
-
-  return gst_mixer_type;
-}
-
-static void
-gst_mixer_class_init (GstMixerClass * klass)
-{
-  static gboolean initialized = FALSE;
-
-  if (!initialized) {
-    gst_mixer_signals[SIGNAL_RECORD_TOGGLED] =
-        g_signal_new ("record-toggled",
-        GST_TYPE_MIXER, G_SIGNAL_RUN_LAST,
-        G_STRUCT_OFFSET (GstMixerClass, record_toggled),
-        NULL, NULL,
-        gst_mixer_marshal_VOID__OBJECT_BOOLEAN, G_TYPE_NONE, 2,
-        GST_TYPE_MIXER_TRACK, G_TYPE_BOOLEAN);
-    gst_mixer_signals[SIGNAL_MUTE_TOGGLED] =
-        g_signal_new ("mute-toggled",
-        GST_TYPE_MIXER, G_SIGNAL_RUN_LAST,
-        G_STRUCT_OFFSET (GstMixerClass, mute_toggled),
-        NULL, NULL,
-        gst_mixer_marshal_VOID__OBJECT_BOOLEAN, G_TYPE_NONE, 2,
-        GST_TYPE_MIXER_TRACK, G_TYPE_BOOLEAN);
-    gst_mixer_signals[SIGNAL_VOLUME_CHANGED] =
-        g_signal_new ("volume-changed",
-        GST_TYPE_MIXER, G_SIGNAL_RUN_LAST,
-        G_STRUCT_OFFSET (GstMixerClass, volume_changed),
-        NULL, NULL,
-        gst_mixer_marshal_VOID__OBJECT_POINTER, G_TYPE_NONE, 2,
-        GST_TYPE_MIXER_TRACK, G_TYPE_POINTER);
-    gst_mixer_signals[SIGNAL_OPTION_CHANGED] =
-        g_signal_new ("option-changed",
-        GST_TYPE_MIXER, G_SIGNAL_RUN_LAST,
-        G_STRUCT_OFFSET (GstMixerClass, option_changed),
-        NULL, NULL,
-        gst_mixer_marshal_VOID__OBJECT_STRING, G_TYPE_NONE, 2,
-        GST_TYPE_MIXER_OPTIONS, G_TYPE_STRING);
-
-    initialized = TRUE;
-  }
-
-  klass->mixer_type = GST_MIXER_SOFTWARE;
-
-  /* default virtual functions */
-  klass->list_tracks = NULL;
-  klass->set_volume = NULL;
-  klass->get_volume = NULL;
-  klass->set_mute = NULL;
-  klass->set_record = NULL;
-  klass->set_option = NULL;
-  klass->get_option = NULL;
-}
-
-/**
- * gst_mixer_list_tracks:
- * @mixer: the #GstMixer (a #GstElement) to get the tracks from.
- *
- * Returns a list of available tracks for this mixer/element. Note
- * that it is allowed for sink (output) elements to only provide
- * the output tracks in this list. Likewise, for sources (inputs),
- * it is allowed to only provide input elements in this list.
- *
- * Returns: A #GList consisting of zero or more #GstMixerTracks.
- */
-
-const GList *
-gst_mixer_list_tracks (GstMixer * mixer)
-{
-  GstMixerClass *klass = GST_MIXER_GET_CLASS (mixer);
-
-  if (klass->list_tracks) {
-    return klass->list_tracks (mixer);
-  }
-
-  return NULL;
-}
-
-/**
- * gst_mixer_set_volume:
- * @mixer: The #GstMixer (a #GstElement) that owns the track.
- * @track: The #GstMixerTrack to set the volume on.
- * @volumes: an array of integers (of size track->num_channels)
- *           that gives the wanted volume for each channel in
- *           this track.
- *
- * Sets the volume on each channel in a track. Short note about
- * naming: a track is defined as one separate stream owned by
- * the mixer/element, such as 'Line-in' or 'Microphone'. A
- * channel is said to be a mono-stream inside this track. A
- * stereo track thus contains two channels.
- */
-
-void
-gst_mixer_set_volume (GstMixer * mixer, GstMixerTrack * track, gint * volumes)
-{
-  GstMixerClass *klass = GST_MIXER_GET_CLASS (mixer);
-
-  if (klass->set_volume) {
-    klass->set_volume (mixer, track, volumes);
-  }
-}
-
-/*
- * gst_mixer_get_volume:
- * @mixer: the #GstMixer (a #GstElement) that owns the track
- * @track: the GstMixerTrack to get the volume from.
- * @volumes: a pre-allocated array of integers (of size
- *           track->num_channels) to store the current volume
- *           of each channel in the given track in.
- *
- * Get the current volume(s) on the given track.
- */
-
-void
-gst_mixer_get_volume (GstMixer * mixer, GstMixerTrack * track, gint * volumes)
-{
-  GstMixerClass *klass = GST_MIXER_GET_CLASS (mixer);
-
-  if (klass->get_volume) {
-    klass->get_volume (mixer, track, volumes);
-  } else {
-    gint i;
-
-    for (i = 0; i < track->num_channels; i++) {
-      volumes[i] = 0;
-    }
-  }
-}
-
-/**
- * gst_mixer_set_mute:
- * @mixer: the #GstMixer (a #GstElement) that owns the track.
- * @track: the #GstMixerTrack to operate on.
- * @mute: a boolean value indicating whether to turn on or off
- *        muting.
- *
- * Mutes or unmutes the given channel. To find out whether a
- * track is currently muted, use GST_MIXER_TRACK_HAS_FLAG ().
- */
-
-void
-gst_mixer_set_mute (GstMixer * mixer, GstMixerTrack * track, gboolean mute)
-{
-  GstMixerClass *klass = GST_MIXER_GET_CLASS (mixer);
-
-  if (klass->set_mute) {
-    klass->set_mute (mixer, track, mute);
-  }
-}
-
-/**
- * gst_mixer_set_record:
- * @mixer: The #GstMixer (a #GstElement) that owns the track.
- * @track: the #GstMixerTrack to operate on.
- * @record: a boolean value that indicates whether to turn on
- *          or off recording.
- *
- * Enables or disables recording on the given track. Note that
- * this is only possible on input tracks, not on output tracks
- * (see GST_MIXER_TRACK_HAS_FLAG () and the GST_MIXER_TRACK_INPUT
- * flag).
- */
-
-void
-gst_mixer_set_record (GstMixer * mixer, GstMixerTrack * track, gboolean record)
-{
-  GstMixerClass *klass = GST_MIXER_GET_CLASS (mixer);
-
-  if (klass->set_record) {
-    klass->set_record (mixer, track, record);
-  }
-}
-
-/**
- * gst_mixer_set_option:
- * @mixer: The #GstMixer (a #GstElement) that owns the optionlist.
- * @opts: The #GstMixerOptions that we operate on.
- * @value: The requested new option value.
- *
- * Sets a name/value option in the mixer to the requested value.
- */
-
-void
-gst_mixer_set_option (GstMixer * mixer, GstMixerOptions * opts, gchar * value)
-{
-  GstMixerClass *klass = GST_MIXER_GET_CLASS (mixer);
-
-  if (klass->set_option) {
-    klass->set_option (mixer, opts, value);
-  }
-}
-
-/**
- * gst_mixer_get_option:
- * @mixer: The #GstMixer (a #GstElement) that owns the optionlist.
- * @opts: The #GstMixerOptions that we operate on.
- *
- * Get the current value of a name/value option in the mixer.
- *
- * Returns: current value of the name/value option.
- */
-
-const gchar *
-gst_mixer_get_option (GstMixer * mixer, GstMixerOptions * opts)
-{
-  GstMixerClass *klass = GST_MIXER_GET_CLASS (mixer);
-
-  if (klass->get_option) {
-    return klass->get_option (mixer, opts);
-  }
-
-  return NULL;
-}
-
-void
-gst_mixer_mute_toggled (GstMixer * mixer, GstMixerTrack * track, gboolean mute)
-{
-  g_signal_emit (G_OBJECT (mixer),
-      gst_mixer_signals[SIGNAL_MUTE_TOGGLED], 0, track, mute);
-
-  g_signal_emit_by_name (G_OBJECT (track), "mute_toggled", mute);
-}
-
-void
-gst_mixer_record_toggled (GstMixer * mixer,
-    GstMixerTrack * track, gboolean record)
-{
-  g_signal_emit (G_OBJECT (mixer),
-      gst_mixer_signals[SIGNAL_RECORD_TOGGLED], 0, track, record);
-
-  g_signal_emit_by_name (G_OBJECT (track), "record_toggled", record);
-}
-
-void
-gst_mixer_volume_changed (GstMixer * mixer,
-    GstMixerTrack * track, gint * volumes)
-{
-  g_signal_emit (G_OBJECT (mixer),
-      gst_mixer_signals[SIGNAL_VOLUME_CHANGED], 0, track, volumes);
-
-  g_signal_emit_by_name (G_OBJECT (track), "volume_changed", volumes);
-}
-
-void
-gst_mixer_option_changed (GstMixer * mixer,
-    GstMixerOptions * opts, gchar * value)
-{
-  g_signal_emit (G_OBJECT (mixer),
-      gst_mixer_signals[SIGNAL_OPTION_CHANGED], 0, opts, value);
-
-  g_signal_emit_by_name (G_OBJECT (opts), "value_changed", value);
-}
diff --git a/gst-libs/gst/mixer/mixer.h b/gst-libs/gst/mixer/mixer.h
deleted file mode 100644 (file)
index 85ff107..0000000
+++ /dev/null
@@ -1,141 +0,0 @@
-/* GStreamer Mixer
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * mixer.h: mixer interface design
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __GST_MIXER_H__
-#define __GST_MIXER_H__
-
-#include <gst/gst.h>
-#include <gst/mixer/mixeroptions.h>
-#include <gst/mixer/mixertrack.h>
-#include <gst/mixer/mixer-enumtypes.h>
-
-G_BEGIN_DECLS
-
-#define GST_TYPE_MIXER \
-  (gst_mixer_get_type ())
-#define GST_MIXER(obj) \
-  (GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_MIXER, GstMixer))
-#define GST_MIXER_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_MIXER, GstMixerClass))
-#define GST_IS_MIXER(obj) \
-  (GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_MIXER))
-#define GST_IS_MIXER_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_MIXER))
-#define GST_MIXER_GET_CLASS(inst) \
-  (G_TYPE_INSTANCE_GET_INTERFACE ((inst), GST_TYPE_MIXER, GstMixerClass))
-
-#define GST_MIXER_TYPE(klass) (klass->mixer_type)
-
-typedef struct _GstMixer GstMixer;
-typedef struct _GstMixerClass GstMixerClass;
-
-typedef enum
-{
-  GST_MIXER_HARDWARE,
-  GST_MIXER_SOFTWARE
-} GstMixerType;
-
-struct _GstMixerClass {
-  GTypeInterface klass;
-
-  GstMixerType mixer_type;
-  
-  /* virtual functions */
-  const GList *  (* list_tracks)   (GstMixer      *mixer);
-
-  void           (* set_volume)    (GstMixer      *mixer,
-                                   GstMixerTrack *track,
-                                   gint          *volumes);
-  void           (* get_volume)    (GstMixer      *mixer,
-                                   GstMixerTrack *track,
-                                   gint          *volumes);
-
-  void           (* set_mute)      (GstMixer      *mixer,
-                                   GstMixerTrack *track,
-                                   gboolean       mute);
-  void           (* set_record)    (GstMixer      *mixer,
-                                   GstMixerTrack *track,
-                                   gboolean       record);
-
-  /* signals */
-  void (* mute_toggled)   (GstMixer      *mixer,
-                          GstMixerTrack *channel,
-                          gboolean       mute);
-  void (* record_toggled) (GstMixer      *mixer,
-                          GstMixerTrack *channel,
-                          gboolean       record);
-  void (* volume_changed) (GstMixer      *mixer,
-                          GstMixerTrack *channel,
-                          gint          *volumes);
-
-  /* use padding */
-  void         (* set_option)     (GstMixer      *mixer,
-                                   GstMixerOptions *opts,
-                                   gchar         *value);
-  const gchar *        (* get_option)     (GstMixer      *mixer,
-                                   GstMixerOptions *opts);
-
-  void (* option_changed) (GstMixer      *mixer,
-                          GstMixerOptions *opts,
-                          gchar         *option);
-
-  gpointer _gst_reserved[GST_PADDING-3];
-};
-
-GType          gst_mixer_get_type      (void);
-
-/* virtual class function wrappers */
-const GList *  gst_mixer_list_tracks    (GstMixer      *mixer);
-void           gst_mixer_set_volume     (GstMixer      *mixer,
-                                         GstMixerTrack *track,
-                                         gint          *volumes);
-void           gst_mixer_get_volume     (GstMixer      *mixer,
-                                         GstMixerTrack *track,
-                                         gint          *volumes);
-void           gst_mixer_set_mute       (GstMixer      *mixer,
-                                         GstMixerTrack *track,
-                                         gboolean       mute);
-void           gst_mixer_set_record     (GstMixer      *mixer,
-                                         GstMixerTrack *track,
-                                         gboolean       record);
-void           gst_mixer_set_option     (GstMixer      *mixer,
-                                         GstMixerOptions *opts,
-                                         gchar         *value);
-const gchar *  gst_mixer_get_option     (GstMixer      *mixer,
-                                         GstMixerOptions *opts);
-
-/* trigger signals */
-void           gst_mixer_mute_toggled   (GstMixer      *mixer,
-                                         GstMixerTrack *track,
-                                         gboolean       mute);
-void           gst_mixer_record_toggled (GstMixer      *mixer,
-                                         GstMixerTrack *track,
-                                         gboolean       record);
-void           gst_mixer_volume_changed (GstMixer      *mixer,
-                                         GstMixerTrack *track,
-                                         gint          *volumes);
-void           gst_mixer_option_changed (GstMixer      *mixer,
-                                         GstMixerOptions *opts,
-                                         gchar         *value);
-
-G_END_DECLS
-
-#endif /* __GST_MIXER_H__ */
diff --git a/gst-libs/gst/mixer/mixer.vcproj b/gst-libs/gst/mixer/mixer.vcproj
deleted file mode 100644 (file)
index bd3e47c..0000000
+++ /dev/null
@@ -1,156 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
-       ProjectType="Visual C++"
-       Version="7.10"
-       Name="mixer"
-       ProjectGUID="{979C216F-0ACF-4956-AE00-055A42D67897}"
-       RootNamespace="mixer"
-       Keyword="Win32Proj">
-       <Platforms>
-               <Platform
-                       Name="Win32"/>
-       </Platforms>
-       <Configurations>
-               <Configuration
-                       Name="Debug|Win32"
-                       OutputDirectory="../../../win32/Debug"
-                       IntermediateDirectory="../../../win32/Debug"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               Optimization="0"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               MinimalRebuild="TRUE"
-                               BasicRuntimeChecks="3"
-                               RuntimeLibrary="3"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="4"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstmixer.dll"
-                               LinkIncremental="2"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Debug;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile="mixer.def"
-                               GenerateDebugInformation="TRUE"
-                               ProgramDatabaseFile="$(OutDir)/mixer.pdb"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               ImportLibrary="$(OutDir)/gstmixer.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-               <Configuration
-                       Name="Release|Win32"
-                       OutputDirectory="../../../win32/Release"
-                       IntermediateDirectory="../../../win32/Release"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;NDEBUG;GST_DISABLE_GST_DEBUG;_WINDOWS;_USRDLL;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               RuntimeLibrary="2"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="3"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstmixer.dll"
-                               LinkIncremental="1"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Release;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile="mixer.def"
-                               GenerateDebugInformation="TRUE"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               EnableCOMDATFolding="2"
-                               ImportLibrary="$(OutDir)/gstmixer.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-       </Configurations>
-       <References>
-       </References>
-       <Files>
-               <Filter
-                       Name="Source Files"
-                       Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
-                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
-                       <File
-                               RelativePath=".\mixer.c">
-                       </File>
-                       <File
-                               RelativePath=".\mixeroptions.c">
-                       </File>
-                       <File
-                               RelativePath=".\mixertrack.c">
-                       </File>
-               </Filter>
-               <Filter
-                       Name="Header Files"
-                       Filter="h;hpp;hxx;hm;inl;inc;xsd"
-                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
-                       <File
-                               RelativePath=".\mixer.h">
-                       </File>
-                       <File
-                               RelativePath=".\mixeroptions.h">
-                       </File>
-                       <File
-                               RelativePath=".\mixertrack.h">
-                       </File>
-               </Filter>
-       </Files>
-       <Globals>
-       </Globals>
-</VisualStudioProject>
diff --git a/gst-libs/gst/mixer/mixeroptions.c b/gst-libs/gst/mixer/mixeroptions.c
deleted file mode 100644 (file)
index 35d8ceb..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-/* GStreamer Mixer
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * mixeroptions.c: mixer track options object design
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "mixeroptions.h"
-
-enum
-{
-  /* FILL ME */
-  SIGNAL_OPTION_CHANGED,
-  LAST_SIGNAL
-};
-
-static void gst_mixer_options_class_init (GstMixerOptionsClass * klass);
-static void gst_mixer_options_init (GstMixerOptions * mixer);
-static void gst_mixer_options_dispose (GObject * object);
-
-static GObjectClass *parent_class = NULL;
-static guint signals[LAST_SIGNAL] = { 0 };
-
-GType
-gst_mixer_options_get_type (void)
-{
-  static GType gst_mixer_options_type = 0;
-
-  if (!gst_mixer_options_type) {
-    static const GTypeInfo mixer_options_info = {
-      sizeof (GstMixerOptionsClass),
-      NULL,
-      NULL,
-      (GClassInitFunc) gst_mixer_options_class_init,
-      NULL,
-      NULL,
-      sizeof (GstMixerOptions),
-      0,
-      (GInstanceInitFunc) gst_mixer_options_init,
-      NULL
-    };
-
-    gst_mixer_options_type =
-        g_type_register_static (GST_TYPE_MIXER_TRACK,
-        "GstMixerOptions", &mixer_options_info, 0);
-  }
-
-  return gst_mixer_options_type;
-}
-
-static void
-gst_mixer_options_class_init (GstMixerOptionsClass * klass)
-{
-  GObjectClass *object_klass = (GObjectClass *) klass;
-
-  parent_class = g_type_class_ref (GST_TYPE_MIXER_TRACK);
-
-  signals[SIGNAL_OPTION_CHANGED] =
-      g_signal_new ("option_changed", G_TYPE_FROM_CLASS (klass),
-      G_SIGNAL_RUN_LAST,
-      G_STRUCT_OFFSET (GstMixerOptionsClass, option_changed),
-      NULL, NULL, g_cclosure_marshal_VOID__STRING,
-      G_TYPE_NONE, 1, G_TYPE_STRING);
-
-  object_klass->dispose = gst_mixer_options_dispose;
-}
-
-static void
-gst_mixer_options_init (GstMixerOptions * mixer_options)
-{
-  mixer_options->values = NULL;
-}
-
-/**
- * gst_mixer_options_get_values:
- * @mixer_optnios: The #GstMixerOptions item that owns the values.
- *
- * Get the values for the mixer option.
- *
- * Returns: A list of all the possible values for the mixer option.
- */
-
-GList *
-gst_mixer_options_get_values (GstMixerOptions * mixer_options)
-{
-  if (!mixer_options->values)
-    return NULL;
-
-  return (GList *) mixer_options->values;
-}
-
-
-static void
-gst_mixer_options_dispose (GObject * object)
-{
-  GstMixerOptions *opts = GST_MIXER_OPTIONS (object);
-
-  g_list_foreach (opts->values, (GFunc) g_free, NULL);
-  g_list_free (opts->values);
-  opts->values = NULL;
-
-  if (parent_class->dispose)
-    parent_class->dispose (object);
-}
diff --git a/gst-libs/gst/mixer/mixeroptions.h b/gst-libs/gst/mixer/mixeroptions.h
deleted file mode 100644 (file)
index d0a309e..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-/* GStreamer Mixer
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * mixeroptions.h: mixer track options object
- * This should be a subclass of MixerItem, along with MixerOptions,
- * but that's not possible because of API/ABI in 0.8.x. FIXME.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __GST_MIXER_OPTIONS_H__
-#define __GST_MIXER_OPTIONS_H__
-
-#include <gst/gst.h>
-#include <gst/mixer/mixertrack.h>
-
-G_BEGIN_DECLS
-
-#define GST_TYPE_MIXER_OPTIONS \
-  (gst_mixer_options_get_type ())
-#define GST_MIXER_OPTIONS(obj) \
-  (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_MIXER_OPTIONS, \
-                              GstMixerOptions))
-#define GST_MIXER_OPTIONS_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_MIXER_OPTIONS, \
-                           GstMixerOptionsClass))
-#define GST_IS_MIXER_OPTIONS(obj) \
-  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_MIXER_OPTIONS))
-#define GST_IS_MIXER_OPTIONS_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_MIXER_OPTIONS))
-
-typedef struct _GstMixerOptions GstMixerOptions;
-typedef struct _GstMixerOptionsClass GstMixerOptionsClass;
-
-struct _GstMixerOptions {
-  GstMixerTrack parent;
-
-  /* list of strings */
-  GList        *values;
-
-  gpointer _gst_reserved[GST_PADDING];
-};
-
-struct _GstMixerOptionsClass {
-  GstMixerTrackClass parent;
-
-  /* signals */
-  void (* option_changed) (GstMixerOptions *opts,
-                          gchar           *value);
-
-  gpointer _gst_reserved[GST_PADDING];
-};
-
-GType          gst_mixer_options_get_type      (void);
-
-GList * gst_mixer_options_get_values (GstMixerOptions *mixer_options);
-
-G_END_DECLS
-
-#endif /* __GST_MIXER_OPTIONS_H__ */
diff --git a/gst-libs/gst/mixer/mixertrack.c b/gst-libs/gst/mixer/mixertrack.c
deleted file mode 100644 (file)
index 36ce288..0000000
+++ /dev/null
@@ -1,193 +0,0 @@
-/* GStreamer Mixer
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * mixertrack.c: mixer track object design
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "mixertrack.h"
-
-enum
-{
-  /* FILL ME */
-  SIGNAL_VOLUME_CHANGED,
-  SIGNAL_RECORD_TOGGLED,
-  SIGNAL_MUTE_TOGGLED,
-  LAST_SIGNAL
-};
-
-enum
-{
-  ARG_0,
-  ARG_LABEL,
-  ARG_MIN_VOLUME,
-  ARG_MAX_VOLUME,
-  ARG_FLAGS,
-  ARG_NUM_CHANNELS
-};
-
-static void gst_mixer_track_class_init (GstMixerTrackClass * klass);
-static void gst_mixer_track_init (GstMixerTrack * mixer);
-static void gst_mixer_track_dispose (GObject * object);
-
-static void gst_mixer_track_get_property (GObject * object, guint prop_id,
-    GValue * value, GParamSpec * pspec);
-
-static GObjectClass *parent_class = NULL;
-static guint signals[LAST_SIGNAL] = { 0 };
-
-GType
-gst_mixer_track_get_type (void)
-{
-  static GType gst_mixer_track_type = 0;
-
-  if (!gst_mixer_track_type) {
-    static const GTypeInfo mixer_track_info = {
-      sizeof (GstMixerTrackClass),
-      NULL,
-      NULL,
-      (GClassInitFunc) gst_mixer_track_class_init,
-      NULL,
-      NULL,
-      sizeof (GstMixerTrack),
-      0,
-      (GInstanceInitFunc) gst_mixer_track_init,
-      NULL
-    };
-
-    gst_mixer_track_type =
-        g_type_register_static (G_TYPE_OBJECT,
-        "GstMixerTrack", &mixer_track_info, 0);
-  }
-
-  return gst_mixer_track_type;
-}
-
-static void
-gst_mixer_track_class_init (GstMixerTrackClass * klass)
-{
-  GObjectClass *object_klass = G_OBJECT_CLASS (klass);
-
-  parent_class = g_type_class_ref (G_TYPE_OBJECT);
-
-  object_klass->get_property = gst_mixer_track_get_property;
-
-  g_object_class_install_property (object_klass, ARG_LABEL,
-      g_param_spec_string ("label", "Track label",
-          "The label assigned to the track", NULL, G_PARAM_READABLE));
-
-  g_object_class_install_property (object_klass, ARG_MIN_VOLUME,
-      g_param_spec_int ("min_volume", "Minimum volume level",
-          "The minimum possible volume level", G_MININT, G_MAXINT,
-          0, G_PARAM_READABLE));
-
-  g_object_class_install_property (object_klass, ARG_MAX_VOLUME,
-      g_param_spec_int ("max_volume", "Maximum volume level",
-          "The maximum possible volume level", G_MININT, G_MAXINT,
-          0, G_PARAM_READABLE));
-
-  g_object_class_install_property (object_klass, ARG_FLAGS,
-      g_param_spec_uint ("flags", "Flags",
-          "Flags indicating the type of mixer track",
-          0, G_MAXUINT, 0, G_PARAM_READABLE));
-
-  g_object_class_install_property (object_klass, ARG_NUM_CHANNELS,
-      g_param_spec_int ("num_channels", "Number of channels",
-          "The number of channels contained within the track",
-          0, G_MAXINT, 0, G_PARAM_READABLE));
-
-  signals[SIGNAL_RECORD_TOGGLED] =
-      g_signal_new ("record_toggled", G_TYPE_FROM_CLASS (klass),
-      G_SIGNAL_RUN_LAST,
-      G_STRUCT_OFFSET (GstMixerTrackClass,
-          record_toggled),
-      NULL, NULL, g_cclosure_marshal_VOID__BOOLEAN,
-      G_TYPE_NONE, 1, G_TYPE_BOOLEAN);
-  signals[SIGNAL_MUTE_TOGGLED] =
-      g_signal_new ("mute_toggled", G_TYPE_FROM_CLASS (klass),
-      G_SIGNAL_RUN_LAST,
-      G_STRUCT_OFFSET (GstMixerTrackClass,
-          mute_toggled),
-      NULL, NULL, g_cclosure_marshal_VOID__BOOLEAN,
-      G_TYPE_NONE, 1, G_TYPE_BOOLEAN);
-  signals[SIGNAL_VOLUME_CHANGED] =
-      g_signal_new ("volume_changed", G_TYPE_FROM_CLASS (klass),
-      G_SIGNAL_RUN_LAST,
-      G_STRUCT_OFFSET (GstMixerTrackClass,
-          volume_changed),
-      NULL, NULL, g_cclosure_marshal_VOID__POINTER,
-      G_TYPE_NONE, 1, G_TYPE_POINTER);
-
-  object_klass->dispose = gst_mixer_track_dispose;
-}
-
-static void
-gst_mixer_track_init (GstMixerTrack * mixer_track)
-{
-  mixer_track->label = NULL;
-  mixer_track->min_volume = mixer_track->max_volume = 0;
-  mixer_track->flags = 0;
-  mixer_track->num_channels = 0;
-}
-
-static void
-gst_mixer_track_get_property (GObject * object, guint prop_id, GValue * value,
-    GParamSpec * pspec)
-{
-  GstMixerTrack *mixer_track;
-
-  mixer_track = GST_MIXER_TRACK (object);
-
-  switch (prop_id) {
-    case ARG_LABEL:
-      g_value_set_string (value, mixer_track->label);
-      break;
-    case ARG_MIN_VOLUME:
-      g_value_set_int (value, mixer_track->min_volume);
-      break;
-    case ARG_MAX_VOLUME:
-      g_value_set_int (value, mixer_track->max_volume);
-      break;
-    case ARG_FLAGS:
-      g_value_set_uint (value, (guint32) mixer_track->flags);
-      break;
-    case ARG_NUM_CHANNELS:
-      g_value_set_int (value, mixer_track->num_channels);
-      break;
-    default:
-      G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
-      break;
-  }
-}
-
-static void
-gst_mixer_track_dispose (GObject * object)
-{
-  GstMixerTrack *channel = GST_MIXER_TRACK (object);
-
-  if (channel->label) {
-    g_free (channel->label);
-    channel->label = NULL;
-  }
-
-  if (parent_class->dispose)
-    parent_class->dispose (object);
-}
diff --git a/gst-libs/gst/mixer/mixertrack.h b/gst-libs/gst/mixer/mixertrack.h
deleted file mode 100644 (file)
index 7bebf3d..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-/* GStreamer Mixer
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * mixertrack.h: mixer track object
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __GST_MIXER_TRACK_H__
-#define __GST_MIXER_TRACK_H__
-
-#include <gst/gst.h>
-
-G_BEGIN_DECLS
-
-#define GST_TYPE_MIXER_TRACK \
-  (gst_mixer_track_get_type ())
-#define GST_MIXER_TRACK(obj) \
-  (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_MIXER_TRACK, \
-                              GstMixerTrack))
-#define GST_MIXER_TRACK_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_MIXER_TRACK, \
-                           GstMixerTrackClass))
-#define GST_IS_MIXER_TRACK(obj) \
-  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_MIXER_TRACK))
-#define GST_IS_MIXER_TRACK_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_MIXER_TRACK))
-
-/*
- * Naming:
- *
- * A track is a single input/output stream (e.g. line-in,
- * microphone, etc.). Channels are then single streams
- * within a track. A mono stream has one channel, a stereo
- * stream has two, etc.
- *
- * Input tracks can have 'recording' enabled, which means
- * that any input will be hearable into the speakers that
- * are attached to the output. Mute is obvious. A track
- * flagged as master is the master volume track on this
- * mixer, which means that setting this track will change
- * the hearable volume on any output.
- */
-
-typedef enum {
-  GST_MIXER_TRACK_INPUT  = (1<<0),
-  GST_MIXER_TRACK_OUTPUT = (1<<1),
-  GST_MIXER_TRACK_MUTE   = (1<<2),
-  GST_MIXER_TRACK_RECORD = (1<<3),
-  GST_MIXER_TRACK_MASTER = (1<<4),
-  GST_MIXER_TRACK_SOFTWARE = (1<<5)
-} GstMixerTrackFlags;
-
-#define GST_MIXER_TRACK_HAS_FLAG(channel, flag) \
-  ((channel)->flags & flag)
-
-typedef struct _GstMixerTrack GstMixerTrack;
-typedef struct _GstMixerTrackClass GstMixerTrackClass;
-
-struct _GstMixerTrack {
-  GObject            parent;
-
-  gchar             *label;
-  /* FIXME: flags should be guint32. Change in 0.9 */
-  GstMixerTrackFlags flags;
-  gint               num_channels,
-                    min_volume,
-                    max_volume;
-};
-
-struct _GstMixerTrackClass {
-  GObjectClass parent;
-
-  /* signals */
-  void (* mute_toggled)   (GstMixerTrack *channel,
-                          gboolean       mute);
-  void (* record_toggled) (GstMixerTrack *channel,
-                          gboolean       record);
-  void (* volume_changed) (GstMixerTrack *channel,
-                          gint          *volumes);
-
-  gpointer _gst_reserved[GST_PADDING];
-};
-
-GType          gst_mixer_track_get_type        (void);
-
-G_END_DECLS
-
-#endif /* __GST_MIXER_TRACK_H__ */
diff --git a/gst-libs/gst/navigation/Makefile.am b/gst-libs/gst/navigation/Makefile.am
deleted file mode 100644 (file)
index b06e2ec..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-noinst_LTLIBRARIES = libgstnavigation.la
-
-libgstnavigation_la_SOURCES = navigation.c
-
-libgstnavigationincludedir = $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/navigation
-libgstnavigationinclude_HEADERS = navigation.h
-
-libgstnavigation_la_CFLAGS = $(GST_CFLAGS) 
diff --git a/gst-libs/gst/navigation/navigation.c b/gst-libs/gst/navigation/navigation.c
deleted file mode 100644 (file)
index ac0b9e5..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-/* GStreamer Navigation
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * navigation.c: navigation design virtual class function wrappers
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <gst/navigation/navigation.h>
-
-static void gst_navigation_class_init (GstNavigationInterface * iface);
-
-GType
-gst_navigation_get_type (void)
-{
-  static GType gst_navigation_type = 0;
-
-  if (!gst_navigation_type) {
-    static const GTypeInfo gst_navigation_info = {
-      sizeof (GstNavigationInterface),
-      (GBaseInitFunc) gst_navigation_class_init,
-      NULL,
-      NULL,
-      NULL,
-      NULL,
-      0,
-      0,
-      NULL,
-    };
-
-    gst_navigation_type = g_type_register_static (G_TYPE_INTERFACE,
-        "GstNavigation", &gst_navigation_info, 0);
-  }
-
-  return gst_navigation_type;
-}
-
-static void
-gst_navigation_class_init (GstNavigationInterface * iface)
-{
-  /* default virtual functions */
-  iface->send_event = NULL;
-}
-
-/* The interface implementer should make sure that the object can handle
- * the event. */
-void
-gst_navigation_send_event (GstNavigation * navigation, GstStructure * structure)
-{
-  GstNavigationInterface *iface = GST_NAVIGATION_GET_IFACE (navigation);
-
-  if (iface->send_event) {
-    iface->send_event (navigation, structure);
-  }
-}
-
-void
-gst_navigation_send_key_event (GstNavigation * navigation, const char *event,
-    const char *key)
-{
-  gst_navigation_send_event (navigation,
-      gst_structure_new ("application/x-gst-navigation", "event", G_TYPE_STRING,
-          event, "key", G_TYPE_STRING, key, NULL));
-}
-
-void
-gst_navigation_send_mouse_event (GstNavigation * navigation, const char *event,
-    int button, double x, double y)
-{
-  gst_navigation_send_event (navigation,
-      gst_structure_new ("application/x-gst-navigation", "event", G_TYPE_STRING,
-          event, "button", G_TYPE_INT, button, "pointer_x", G_TYPE_DOUBLE, x,
-          "pointer_y", G_TYPE_DOUBLE, y, NULL));
-}
diff --git a/gst-libs/gst/navigation/navigation.h b/gst-libs/gst/navigation/navigation.h
deleted file mode 100644 (file)
index 5ccaf74..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-/* GStreamer Navigation
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- * Copyright (C) 2003 David A. Schleef <ds@schleef.org>
- *
- * navigation.h: navigation interface design
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __GST_NAVIGATION_H__
-#define __GST_NAVIGATION_H__
-
-#include <gst/gst.h>
-
-G_BEGIN_DECLS
-
-#define GST_TYPE_NAVIGATION \
-  (gst_navigation_get_type ())
-#define GST_NAVIGATION(obj) \
-    (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_NAVIGATION, GstNavigation))
-#define GST_IS_NAVIGATION(obj) \
-      (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_NAVIGATION))
-#define GST_NAVIGATION_GET_IFACE(obj) \
-    (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GST_TYPE_NAVIGATION, GstNavigationInterface))
-
-typedef struct _GstNavigation GstNavigation;
-
-typedef struct _GstNavigationInterface {
-  GTypeInterface g_iface;
-
-  /* virtual functions */
-  void (*send_event) (GstNavigation *navigation, GstStructure *structure);
-  
-  gpointer _gst_reserved[GST_PADDING];
-} GstNavigationInterface;
-
-GType          gst_navigation_get_type (void);
-
-/* virtual class function wrappers */
-void gst_navigation_send_event (GstNavigation *navigation, GstStructure *structure);
-
-void gst_navigation_send_key_event (GstNavigation *navigation, 
-       const char *event, const char *key);
-void gst_navigation_send_mouse_event (GstNavigation *navigation, 
-       const char *event, int button, double x, double y);
-
-G_END_DECLS
-
-#endif /* __GST_NAVIGATION_H__ */
diff --git a/gst-libs/gst/navigation/navigation.vcproj b/gst-libs/gst/navigation/navigation.vcproj
deleted file mode 100644 (file)
index 4691ebb..0000000
+++ /dev/null
@@ -1,144 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
-       ProjectType="Visual C++"
-       Version="7.10"
-       Name="navigation"
-       ProjectGUID="{979C216F-0ACF-4956-AE00-055A42D67898}"
-       RootNamespace="navigation"
-       Keyword="Win32Proj">
-       <Platforms>
-               <Platform
-                       Name="Win32"/>
-       </Platforms>
-       <Configurations>
-               <Configuration
-                       Name="Debug|Win32"
-                       OutputDirectory="../../../win32/Debug"
-                       IntermediateDirectory="../../../win32/Debug"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               Optimization="0"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               MinimalRebuild="TRUE"
-                               BasicRuntimeChecks="3"
-                               RuntimeLibrary="3"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="4"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstnavigation.dll"
-                               LinkIncremental="2"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Debug;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile=""
-                               GenerateDebugInformation="TRUE"
-                               ProgramDatabaseFile="$(OutDir)/navigation.pdb"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               ImportLibrary="$(OutDir)/gstnavigation.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-               <Configuration
-                       Name="Release|Win32"
-                       OutputDirectory="../../../win32/Release"
-                       IntermediateDirectory="../../../win32/Release"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;NDEBUG;GST_DISABLE_GST_DEBUG;_WINDOWS;_USRDLL;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               RuntimeLibrary="2"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="3"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstnavigation.dll"
-                               LinkIncremental="1"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Release;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile=""
-                               GenerateDebugInformation="TRUE"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               EnableCOMDATFolding="2"
-                               ImportLibrary="$(OutDir)/gstnavigation.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-       </Configurations>
-       <References>
-       </References>
-       <Files>
-               <Filter
-                       Name="Source Files"
-                       Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
-                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
-                       <File
-                               RelativePath=".\navigation.c">
-                       </File>
-               </Filter>
-               <Filter
-                       Name="Header Files"
-                       Filter="h;hpp;hxx;hm;inl;inc;xsd"
-                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
-                       <File
-                               RelativePath=".\navigation.h">
-                       </File>
-               </Filter>
-       </Files>
-       <Globals>
-       </Globals>
-</VisualStudioProject>
diff --git a/gst-libs/gst/play/Makefile.am b/gst-libs/gst/play/Makefile.am
deleted file mode 100644 (file)
index a06e1d9..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-# variables used for enum generation
-glib_enum_headers=$(play_headers)
-glib_enum_define=GST_PLAY
-glib_enum_prefix=gst_play
-
-librarydir = $(libdir)
-
-play_headers = \
-       play.h
-
-built_headers = \
-       play-enumtypes.h
-
-library_LTLIBRARIES = libgstplay-@GST_MAJORMINOR@.la
-
-libgstplay_@GST_MAJORMINOR@_la_SOURCES = play.c 
-nodist_libgstplay_@GST_MAJORMINOR@_la_SOURCES = play-enumtypes.c
-
-libgstplay_@GST_MAJORMINOR@includedir = $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/play
-libgstplay_@GST_MAJORMINOR@include_HEADERS = $(play_headers)
-nodist_libgstplay_@GST_MAJORMINOR@include_HEADERS = $(built_headers)
-
-libgstplay_@GST_MAJORMINOR@_la_CFLAGS = $(GST_CFLAGS) $(GST_PLUGINS_CFLAGS)
-libgstplay_@GST_MAJORMINOR@_la_LIBADD =        \
-       $(GST_LIBS) $(GST_PLUGINS_LIBS) \
-       $(GST_CONTROL_LIBS) \
-        $(top_builddir)/gst-libs/gst/libgstinterfaces-$(GST_MAJORMINOR).la
-libgstplay_@GST_MAJORMINOR@_la_LDFLAGS = \
-               -version-info @GST_PLUGINS_LIBVERSION@
-
-BUILT_SOURCES = \
-       play-enumtypes.c \
-       $(built_headers)
-
-CLEANFILES = $(BUILT_SOURCES)
-
-include $(top_srcdir)/common/glib-gen.mak
diff --git a/gst-libs/gst/play/play.c b/gst-libs/gst/play/play.c
deleted file mode 100644 (file)
index d41c69a..0000000
+++ /dev/null
@@ -1,758 +0,0 @@
-/* GStreamer
- * Copyright (C) 2003 Julien Moutte <julien@moutte.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <string.h>
-#include <unistd.h>
-#include <gst/gst.h>
-#include <gst/gst-i18n-plugin.h>
-
-#include "play.h"
-
-#define TICK_INTERVAL_MSEC 200
-
-GST_DEBUG_CATEGORY_STATIC (play_debug);
-#define GST_CAT_DEFAULT play_debug
-
-enum
-{
-  TIME_TICK,
-  STREAM_LENGTH,
-  HAVE_VIDEO_SIZE,
-  LAST_SIGNAL
-};
-
-struct _GstPlayPrivate
-{
-  /* progress indicators */
-  guint64 time_nanos;
-  guint64 length_nanos;
-  gint get_length_attempt;
-  guint tick_id;
-
-  /* playbin object */
-  GstElement *playbin;
-
-  /* visualization */
-  gboolean enable_vis;
-  GstElement *vis_element;
-
-  /* location */
-  char *location;
-};
-
-static guint gst_play_signals[LAST_SIGNAL] = { 0 };
-
-static GstPipelineClass *parent_class = NULL;
-
-/* ======================================================= */
-/*                                                         */
-/*                    Private Methods                      */
-/*                                                         */
-/* ======================================================= */
-
-static void
-caps_set (GstPad * pad, GParamSpec * pspec, GstPlay * play)
-{
-  const GstCaps *caps = GST_PAD_CAPS (pad);
-  GstStructure *s = gst_caps_get_structure (caps, 0);
-
-  if (s) {
-    const GValue *par;
-    gint w, h;
-
-    /* get effective size */
-    gst_structure_get_int (s, "width", &w);
-    gst_structure_get_int (s, "height", &h);
-    if ((par = gst_structure_get_value (s, "pixel-aspect-ratio"))) {
-      gint num = gst_value_get_fraction_numerator (par),
-          den = gst_value_get_fraction_denominator (par);
-
-      if (num > den)
-        w *= (gfloat) num / den;
-      else
-        h *= (gfloat) den / num;
-    }
-
-    g_signal_emit (play, gst_play_signals[HAVE_VIDEO_SIZE], 0, w, h);
-    g_signal_handlers_disconnect_by_func (pad, caps_set, play);
-  }
-}
-
-static void
-setup_size (GstPlay * play)
-{
-  const GList *streaminfo = NULL;
-  GstPad *pad = NULL;
-
-  g_object_get (G_OBJECT (play->priv->playbin),
-      "stream-info", &streaminfo, NULL);
-
-  for (; streaminfo != NULL; streaminfo = streaminfo->next) {
-    GObject *info = streaminfo->data;
-    gint type;
-    GParamSpec *pspec;
-    GEnumValue *val;
-
-    g_object_get (info, "type", &type, NULL);
-    pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (info), "type");
-    val = g_enum_get_value (G_PARAM_SPEC_ENUM (pspec)->enum_class, type);
-
-    if (g_strrstr (val->value_name, "VIDEO")) {
-      g_object_get (info, "object", &pad, NULL);
-      pad = (GstPad *) GST_PAD_REALIZE (pad);
-      break;
-    }
-  }
-
-  if (pad) {
-    /* handle explicit caps as well - they're set later */
-    if (GST_PAD_CAPS (pad))
-      caps_set (pad, NULL, play);
-    else
-      g_signal_connect (pad, "notify::caps", G_CALLBACK (caps_set), play);
-  }
-}
-
-static gboolean
-gst_play_tick_callback (GstPlay * play)
-{
-  GstFormat fmt = GST_FORMAT_TIME;
-  gint64 value;
-
-  /* check length/pos of stream */
-  if (!GST_CLOCK_TIME_IS_VALID (play->priv->length_nanos) &&
-      play->priv->get_length_attempt < 16) {
-    if (gst_element_query (GST_ELEMENT (play->priv->playbin),
-            GST_QUERY_TOTAL, &fmt, &value)) {
-      play->priv->length_nanos = value;
-      g_signal_emit (G_OBJECT (play), gst_play_signals[STREAM_LENGTH],
-          0, play->priv->length_nanos);
-    }
-    play->priv->get_length_attempt++;
-  }
-  if (gst_element_query (GST_ELEMENT (play->priv->playbin),
-          GST_QUERY_POSITION, &fmt, &value)) {
-    play->priv->time_nanos = value;
-    g_signal_emit (G_OBJECT (play), gst_play_signals[TIME_TICK],
-        0, play->priv->time_nanos);
-  }
-
-  return TRUE;
-}
-
-/*
- * Virtual function.
- */
-
-static void
-gst_play_change_state (GstElement * element,
-    GstElementState old, GstElementState new, gpointer data)
-{
-  GstPlay *play = GST_PLAY (data);
-  gint t = (old << 8) | new;
-
-  /* now set up tickers */
-  switch (t) {
-    case GST_STATE_PAUSED_TO_PLAYING:
-      play->priv->tick_id = g_timeout_add (TICK_INTERVAL_MSEC,
-          (GSourceFunc) gst_play_tick_callback, play);
-      break;
-    case GST_STATE_PLAYING_TO_PAUSED:
-      if (play->priv->tick_id != 0) {
-        g_source_remove (play->priv->tick_id);
-        play->priv->tick_id = 0;
-      }
-      break;
-    case GST_STATE_PAUSED_TO_READY:
-      play->priv->length_nanos = GST_CLOCK_TIME_NONE;
-      play->priv->time_nanos = GST_CLOCK_TIME_NONE;
-      play->priv->get_length_attempt = 0;
-      break;
-    case GST_STATE_READY_TO_PAUSED:
-      setup_size (play);
-      break;
-    default:
-      break;
-  }
-}
-
-/* =========================================== */
-/*                                             */
-/*         Init & Dispose & Class init         */
-/*                                             */
-/* =========================================== */
-
-static void
-gst_play_dispose (GObject * object)
-{
-  GstPlay *play = GST_PLAY (object);
-
-  /* reset */
-  gst_element_set_state (GST_ELEMENT (play), GST_STATE_NULL);
-
-  /* no vis */
-  if (play->priv->vis_element) {
-    gst_object_unref (GST_OBJECT (play->priv->vis_element));
-    play->priv->vis_element = NULL;
-  }
-
-  g_free (play->priv->location);
-  play->priv->location = NULL;
-
-  /* parent will clean up the rest */
-  G_OBJECT_CLASS (parent_class)->dispose (object);
-}
-
-static void
-gst_play_init (GstPlay * play)
-{
-  play->priv = g_new0 (GstPlayPrivate, 1);
-
-  /* default */
-  play->priv->length_nanos = GST_CLOCK_TIME_NONE;
-  play->priv->time_nanos = GST_CLOCK_TIME_NONE;
-  play->priv->tick_id = 0;
-  play->priv->get_length_attempt = 0;
-
-  play->priv->enable_vis = FALSE;
-  play->priv->vis_element = NULL;
-
-  play->priv->location = NULL;
-
-  /* make playbin */
-  play->priv->playbin = gst_element_factory_make ("playbin", "player");
-  if (play->priv->playbin) {
-    gst_bin_add (GST_BIN (play), play->priv->playbin);
-    g_signal_connect (play->priv->playbin, "state-change",
-        G_CALLBACK (gst_play_change_state), play);
-  }
-}
-
-static void
-gst_play_class_init (GstPlayClass * klass)
-{
-  GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
-
-  parent_class = g_type_class_ref (GST_TYPE_PIPELINE);
-
-  gobject_class->dispose = gst_play_dispose;
-
-  gst_play_signals[TIME_TICK] =
-      g_signal_new ("time-tick", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_FIRST,
-      G_STRUCT_OFFSET (GstPlayClass, time_tick), NULL, NULL,
-      gst_marshal_VOID__INT64, G_TYPE_NONE, 1, G_TYPE_INT64);
-  gst_play_signals[STREAM_LENGTH] =
-      g_signal_new ("stream-length", G_TYPE_FROM_CLASS (klass),
-      G_SIGNAL_RUN_FIRST,
-      G_STRUCT_OFFSET (GstPlayClass, stream_length), NULL, NULL,
-      gst_marshal_VOID__INT64, G_TYPE_NONE, 1, G_TYPE_INT64);
-  gst_play_signals[HAVE_VIDEO_SIZE] =
-      g_signal_new ("have-video-size", G_TYPE_FROM_CLASS (klass),
-      G_SIGNAL_RUN_FIRST,
-      G_STRUCT_OFFSET (GstPlayClass, have_video_size), NULL, NULL,
-      gst_marshal_VOID__INT_INT, G_TYPE_NONE, 2, G_TYPE_INT, G_TYPE_INT);
-
-  GST_DEBUG_CATEGORY_INIT (play_debug, "GST_PLAY", 0, "GStreamer Play library");
-
-  GST_DEBUG ("Play class initialized");
-}
-
-/* ======================================================= */
-/*                                                         */
-/*                     Public Methods                      */
-/*                                                         */
-/* ======================================================= */
-
-/**
- * gst_play_set_location:
- * @play: a #GstPlay.
- * @location: a const #char* indicating location to play
- *
- * Set location of @play to @location.
- *
- * Returns: TRUE if location was set successfully.
- */
-
-gboolean
-gst_play_set_location (GstPlay * play, const char *location)
-{
-  char *uri;
-
-  g_return_val_if_fail (play != NULL, FALSE);
-  g_return_val_if_fail (GST_IS_PLAY (play), FALSE);
-  g_return_val_if_fail (location != NULL, FALSE);
-
-  /* cache */
-  if (play->priv->location)
-    g_free (play->priv->location);
-  play->priv->location = g_strdup (location);
-
-  /* get file */
-  gst_element_set_state (play->priv->playbin, GST_STATE_READY);
-  if (strchr (location, ':'))
-    uri = g_strdup (location);
-  else if (location[0] == '/')
-    uri = g_strdup_printf ("file://%s", location);
-  else {
-    char cwd[256];
-
-    getcwd (cwd, 255);
-    uri = g_strdup_printf ("file://%s/%s", cwd, location);
-  }
-  g_object_set (play->priv->playbin, "uri", uri, NULL);
-  g_free (uri);
-
-  /* open */
-  if (gst_element_set_state (play->priv->playbin,
-          GST_STATE_PAUSED) != GST_STATE_SUCCESS) {
-    return FALSE;
-  }
-
-  return TRUE;
-}
-
-/**
- * gst_play_get_location:
- * @play: a #GstPlay.
- *
- * Get current location of @play.
- *
- * Returns: a #char* pointer to current location.
- */
-
-char *
-gst_play_get_location (GstPlay * play)
-{
-  g_return_val_if_fail (play != NULL, NULL);
-  g_return_val_if_fail (GST_IS_PLAY (play), NULL);
-
-  return g_strdup (play->priv->location);
-}
-
-/**
- * gst_play_seek_to_time:
- * @play: a #GstPlay.
- * @time_nanos: a #gint64 indicating a time position.
- *
- * Performs a seek on @play until @time_nanos.
- */
-
-/*
- * FIXME: use GstClockTime for 0.9
- */
-
-gboolean
-gst_play_seek_to_time (GstPlay * play, gint64 time_nanos)
-{
-  return gst_element_seek (play->priv->playbin,
-      GST_SEEK_METHOD_SET | GST_SEEK_FLAG_FLUSH, time_nanos);
-}
-
-/**
- * gst_play_set_data_src:
- * @play: a #GstPlay.
- * @data_src: a #GstElement.
- *
- * Set @data_src as the source element of @play.
- *
- * Returns: TRUE if call succeeded.
- */
-
-gboolean
-gst_play_set_data_src (GstPlay * play, GstElement * data_src)
-{
-  /* deprecated - use URIs */
-  return FALSE;
-}
-
-/**
- * gst_play_set_video_sink:
- * @play: a #GstPlay.
- * @video_sink: a #GstElement.
- *
- * Set @video_sink as the video sink element of @play.
- *
- * Returns: TRUE if call succeeded.
- */
-
-gboolean
-gst_play_set_video_sink (GstPlay * play, GstElement * video_sink)
-{
-  g_object_set (G_OBJECT (play->priv->playbin), "video-sink", video_sink, NULL);
-
-  return TRUE;
-}
-
-/**
- * gst_play_set_audio_sink:
- * @play: a #GstPlay.
- * @audio_sink: a #GstElement.
- *
- * Set @audio_sink as the audio sink element of @play.
- *
- * Returns: TRUE if call succeeded.
- */
-
-gboolean
-gst_play_set_audio_sink (GstPlay * play, GstElement * audio_sink)
-{
-  g_object_set (G_OBJECT (play->priv->playbin), "audio-sink", audio_sink, NULL);
-
-  return TRUE;
-}
-
-/**
- * gst_play_set_visualization:
- * @play: a #GstPlay.
- * @element: a #GstElement.
- *
- * Set @video_sink as the video sink element of @play.
- *
- * Returns: TRUE if call succeeded.
- */
-
-gboolean
-gst_play_set_visualization (GstPlay * play, GstElement * vis_element)
-{
-  /* unset old */
-  if (play->priv->vis_element) {
-    gst_object_unref (GST_OBJECT (play->priv->vis_element));
-    play->priv->vis_element = NULL;
-  }
-
-  /* set new */
-  if (vis_element) {
-    gst_object_ref (GST_OBJECT (vis_element));
-    play->priv->vis_element = vis_element;
-  }
-
-  /* use */
-  if (play->priv->vis_element && play->priv->enable_vis) {
-    g_object_set (G_OBJECT (play->priv->playbin),
-        "vis-plugin", vis_element, NULL);
-  } else {
-    g_object_set (G_OBJECT (play->priv->playbin), "vis-plugin", NULL, NULL);
-  }
-
-  return TRUE;
-}
-
-/**
- * gst_play_connect_visualization:
- * @play: a #GstPlay.
- * @connect: a #gboolean indicating wether or not
- * visualization should be connected.
- *
- * Connect or disconnect visualization bin in @play.
- *
- * Returns: TRUE if call succeeded.
- */
-
-gboolean
-gst_play_connect_visualization (GstPlay * play, gboolean connect)
-{
-  play->priv->enable_vis = connect;
-
-  /* use */
-  if (play->priv->vis_element && play->priv->enable_vis) {
-    g_object_set (G_OBJECT (play->priv->playbin),
-        "vis-plugin", play->priv->vis_element, NULL);
-  } else {
-    g_object_set (G_OBJECT (play->priv->playbin), "vis-plugin", NULL, NULL);
-  }
-
-  return TRUE;
-}
-
-/**
- * gst_play_get_framerate:
- * @play: a #GstPlay.
- *
- * Get the video framerate from @play.
- *
- * Returns: a #gdouble indicating video framerate in frame per second.
- */
-
-gdouble
-gst_play_get_framerate (GstPlay * play)
-{
-  const GList *streaminfo = NULL;
-  const GstStructure *str = NULL;
-  gdouble value;
-
-  g_object_get (G_OBJECT (play->priv->playbin),
-      "stream-info", &streaminfo, NULL);
-
-  for (; streaminfo != NULL; streaminfo = streaminfo->next) {
-    GObject *info = streaminfo->data;
-    gint type;
-    GParamSpec *pspec;
-    GEnumValue *val;
-
-    g_object_get (info, "type", &type, NULL);
-    pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (info), "type");
-    val = g_enum_get_value (G_PARAM_SPEC_ENUM (pspec)->enum_class, type);
-
-    if (strstr (val->value_name, "VIDEO")) {
-      const GstCaps *caps = NULL;
-      GstPad *pad = NULL;
-
-      g_object_get (info, "object", &pad, NULL);
-      g_assert (GST_IS_PAD (pad));
-      pad = (GstPad *) GST_PAD_REALIZE (pad);
-      caps = GST_PAD_CAPS (pad);
-      str = gst_caps_get_structure (caps, 0);
-      break;
-    }
-  }
-
-  if (!str)
-    return 0.;
-
-  gst_structure_get_double (str, "framerate", &value);
-
-  return value;
-}
-
-/**
- * gst_play_get_sink_element:
- * @play: a #GstPlay.
- * @element: a #GstElement.
- * @sink_type: a #GstPlaySinkType.
- *
- * Searches recursively for a sink #GstElement with
- * type @sink_type in @element which is supposed to be a #GstBin.
- *
- * Returns: the sink #GstElement of @element.
- */
-
-/*
- * (Ronald) what is this?
- */
-
-GstElement *
-gst_play_get_sink_element (GstPlay * play,
-    GstElement * element, GstPlaySinkType sink_type)
-{
-  GList *elements = NULL;
-  const GList *pads = NULL;
-  gboolean has_src, has_correct_type;
-
-  g_return_val_if_fail (GST_IS_PLAY (play), NULL);
-  g_return_val_if_fail (GST_IS_ELEMENT (element), NULL);
-
-  GST_DEBUG_OBJECT (play, "looking for sink element in %s",
-      GST_ELEMENT_NAME (element));
-
-  if (!GST_IS_BIN (element)) {
-    /* since its not a bin, we'll assume this
-     * element is a sink element */
-    GST_DEBUG_OBJECT (play, "not a bin, returning %s as sink element",
-        GST_ELEMENT_NAME (element));
-    return element;
-  }
-
-  elements = (GList *) gst_bin_get_list (GST_BIN (element));
-
-  /* traverse all elements looking for one without src pad */
-
-  while (elements) {
-    element = GST_ELEMENT (elements->data);
-    GST_DEBUG_OBJECT (play, "looking at element %s",
-        GST_ELEMENT_NAME (element));
-
-    /* Recursivity :) */
-
-    if (GST_IS_BIN (element)) {
-      element = gst_play_get_sink_element (play, element, sink_type);
-      if (GST_IS_ELEMENT (element))
-        return element;
-    } else {
-      pads = gst_element_get_pad_list (element);
-      has_src = FALSE;
-      has_correct_type = FALSE;
-      while (pads) {
-        /* check for src pad */
-        if (GST_PAD_DIRECTION (GST_PAD (pads->data)) == GST_PAD_SRC) {
-          GST_DEBUG_OBJECT (play, "element %s has a src pad",
-              GST_ELEMENT_NAME (element));
-          has_src = TRUE;
-          break;
-        } else {
-          /* If not a src pad checking caps */
-          GstPad *pad;
-          GstCaps *caps;
-          GstStructure *structure;
-          int i;
-          gboolean has_video_cap = FALSE;
-          gboolean has_audio_cap = FALSE;
-
-          pad = GST_PAD (pads->data);
-          caps = gst_pad_get_caps (pad);
-          /* loop over all caps members to find mime types */
-          for (i = 0; i < gst_caps_get_size (caps); ++i) {
-            structure = gst_caps_get_structure (caps, i);
-
-            GST_DEBUG_OBJECT (play,
-                "looking at caps %d pad %s:%s on element %s with mime %s", i,
-                GST_DEBUG_PAD_NAME (pad),
-                GST_ELEMENT_NAME (element), gst_structure_get_name (structure));
-
-            if (strcmp (gst_structure_get_name (structure),
-                    "audio/x-raw-int") == 0) {
-              has_audio_cap = TRUE;
-            }
-
-            if (strcmp (gst_structure_get_name (structure),
-                    "video/x-raw-yuv") == 0 ||
-                strcmp (gst_structure_get_name (structure),
-                    "video/x-raw-rgb") == 0) {
-              has_video_cap = TRUE;
-            }
-          }
-
-          gst_caps_free (caps);
-
-          switch (sink_type) {
-            case GST_PLAY_SINK_TYPE_AUDIO:
-              if (has_audio_cap)
-                has_correct_type = TRUE;
-              break;
-            case GST_PLAY_SINK_TYPE_VIDEO:
-              if (has_video_cap)
-                has_correct_type = TRUE;
-              break;
-            case GST_PLAY_SINK_TYPE_ANY:
-              if ((has_video_cap) || (has_audio_cap))
-                has_correct_type = TRUE;
-              break;
-            default:
-              has_correct_type = FALSE;
-          }
-        }
-
-        pads = g_list_next (pads);
-
-      }
-
-      if ((!has_src) && (has_correct_type)) {
-        GST_DEBUG_OBJECT (play, "found %s with src pad and correct type",
-            GST_ELEMENT_NAME (element));
-        return element;
-      }
-    }
-
-    elements = g_list_next (elements);
-  }
-
-  /* we didn't find a sink element */
-
-  return NULL;
-}
-
-/**
- * gst_play_get_all_by_interface:
- * @play: a #GstPlay.
- * @interface: an interface.
- *
- * Returns all elements that are used by @play implementing the given interface.
- *
- * Returns: a #GList of #GstElement implementing the interface.
- */
-
-GList *
-gst_play_get_all_by_interface (GstPlay * play, GType interface_type)
-{
-  GstElement *videosink = NULL, *audiosink = NULL;
-  GList *res = NULL;
-
-  g_object_get (G_OBJECT (play->priv->playbin),
-      "video-sink", &videosink, "audio-sink", &audiosink, NULL);
-
-  /* ehw... */
-  if (videosink && GST_IS_BIN (videosink)) {
-    res = gst_bin_get_all_by_interface (GST_BIN (videosink), interface_type);
-  }
-  if (!res && audiosink && GST_IS_BIN (audiosink)) {
-    res = gst_bin_get_all_by_interface (GST_BIN (audiosink), interface_type);
-  }
-
-  return res;
-}
-
-/**
- * gst_play_new:
- * @error: a pointer to a #GError, which will be filled in on error.
- *
- * Creates a new GstPlay object.
- *
- * Returns: a newly created #GstPlay, or NULL on error (the #GError
- *          will be set accordingly).
- */
-
-GstPlay *
-gst_play_new (GError ** error)
-{
-  GstPlay *play = g_object_new (GST_TYPE_PLAY, NULL);
-
-  if (!play->priv->playbin) {
-    g_set_error (error, 0, 0, _("Failed to create playbin object"));
-    g_object_unref (G_OBJECT (play));
-
-    return NULL;
-  }
-
-  return play;
-}
-
-/* =========================================== */
-/*                                             */
-/*          Object typing & Creation           */
-/*                                             */
-/* =========================================== */
-
-GType
-gst_play_get_type (void)
-{
-  static GType play_type = 0;
-
-  if (!play_type) {
-    static const GTypeInfo play_info = {
-      sizeof (GstPlayClass),
-      NULL,
-      NULL,
-      (GClassInitFunc) gst_play_class_init,
-      NULL,
-      NULL,
-      sizeof (GstPlay),
-      0,
-      (GInstanceInitFunc) gst_play_init,
-      NULL
-    };
-
-    play_type = g_type_register_static (GST_TYPE_PIPELINE, "GstPlay",
-        &play_info, 0);
-  }
-
-  return play_type;
-}
diff --git a/gst-libs/gst/propertyprobe/Makefile.am b/gst-libs/gst/propertyprobe/Makefile.am
deleted file mode 100644 (file)
index 65f2bf4..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-noinst_LTLIBRARIES = libgstpropertyprobe.la
-
-libgstpropertyprobe_la_SOURCES = propertyprobe.c
-
-libgstpropertyprobeincludedir = $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/propertyprobe
-libgstpropertyprobeinclude_HEADERS = propertyprobe.h
-
-libgstpropertyprobe_la_CFLAGS = $(GST_CFLAGS)
-
diff --git a/gst-libs/gst/propertyprobe/propertyprobe.c b/gst-libs/gst/propertyprobe/propertyprobe.c
deleted file mode 100644 (file)
index 730151e..0000000
+++ /dev/null
@@ -1,345 +0,0 @@
-/* GStreamer PropertyProbe
- * Copyright (C) 2003 David Schleef <ds@schleef.org>
- *
- * property_probe.c: property_probe design virtual class function wrappers
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <string.h>
-
-#include "propertyprobe.h"
-
-enum
-{
-  SIGNAL_PROBE_NEEDED,
-  LAST_SIGNAL
-};
-
-static void gst_property_probe_iface_init (GstPropertyProbeInterface * iface);
-
-static guint gst_property_probe_signals[LAST_SIGNAL] = { 0 };
-
-GType
-gst_property_probe_get_type (void)
-{
-  static GType gst_property_probe_type = 0;
-
-  if (!gst_property_probe_type) {
-    static const GTypeInfo gst_property_probe_info = {
-      sizeof (GstPropertyProbeInterface),
-      (GBaseInitFunc) gst_property_probe_iface_init,
-      NULL,
-      NULL,
-      NULL,
-      NULL,
-      0,
-      0,
-      NULL,
-    };
-
-    gst_property_probe_type =
-        g_type_register_static (G_TYPE_INTERFACE,
-        "GstPropertyProbe", &gst_property_probe_info, 0);
-  }
-
-  return gst_property_probe_type;
-}
-
-static void
-gst_property_probe_iface_init (GstPropertyProbeInterface * iface)
-{
-  static gboolean initialized = FALSE;
-
-  if (!initialized) {
-    gst_property_probe_signals[SIGNAL_PROBE_NEEDED] =
-        g_signal_new ("probe-needed", G_TYPE_FROM_CLASS (iface),
-        G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GstPropertyProbeInterface,
-            probe_needed), NULL, NULL, g_cclosure_marshal_VOID__POINTER,
-        G_TYPE_NONE, 1, G_TYPE_POINTER);
-    initialized = TRUE;
-  }
-
-  /* default virtual functions */
-  iface->get_properties = NULL;
-  iface->get_values = NULL;
-}
-
-/**
- * gst_property_probe_get_properties:
- * @probe: the #GstPropertyProbe to get the properties for.
- *
- * Get a list of properties for which probing is supported.
- *
- * Returns the list of properties for which probing is supported
- * by this element.
- */
-
-const GList *
-gst_property_probe_get_properties (GstPropertyProbe * probe)
-{
-  GstPropertyProbeInterface *iface;
-
-  g_return_val_if_fail (probe != NULL, NULL);
-
-  iface = GST_PROPERTY_PROBE_GET_IFACE (probe);
-
-  if (iface->get_properties)
-    return iface->get_properties (probe);
-
-  return NULL;
-}
-
-const GParamSpec *
-gst_property_probe_get_property (GstPropertyProbe * probe, const gchar * name)
-{
-  const GList *pspecs = gst_property_probe_get_properties (probe);
-
-  g_return_val_if_fail (probe != NULL, NULL);
-  g_return_val_if_fail (name != NULL, NULL);
-
-  while (pspecs) {
-    const GParamSpec *pspec = pspecs->data;
-
-    if (!strcmp (pspec->name, name))
-      return pspec;
-
-    pspecs = pspecs->next;
-  }
-
-  return NULL;
-}
-
-void
-gst_property_probe_probe_property (GstPropertyProbe * probe,
-    const GParamSpec * pspec)
-{
-  GstPropertyProbeInterface *iface;
-
-  g_return_if_fail (probe != NULL);
-  g_return_if_fail (pspec != NULL);
-
-  iface = GST_PROPERTY_PROBE_GET_IFACE (probe);
-
-  if (iface->probe_property)
-    iface->probe_property (probe, pspec->param_id, pspec);
-}
-
-/**
- * gst_property_probe_probe_property_name:
- * @probe: the #GstPropertyProbe to check.
- * @name: name of the property to return.
- *
- * Returns the #GParamSpec for the given property. It's similar to
- * g_object_class_find_property (), except that this function only
- * takes "probe'able" properties into account.
- *
- * Returns: the #GParamSpec that belongs to the given property.
- */
-
-void
-gst_property_probe_probe_property_name (GstPropertyProbe * probe,
-    const gchar * name)
-{
-  const GParamSpec *pspec;
-
-  g_return_if_fail (probe != NULL);
-  g_return_if_fail (name != NULL);
-
-  pspec = g_object_class_find_property (G_OBJECT_CLASS (probe), name);
-  if (!pspec) {
-    g_warning ("No such property %s", name);
-    return;
-  }
-
-  gst_property_probe_probe_property (probe, pspec);
-}
-
-/**
- * gst_property_probe_needs_probe:
- * @probe: the #GstPropertyProbe object to which the given property belongs.
- * @pspec: a #GParamSpec that identifies the property to check.
- *
- * Checks whether a property needs a probe. This might be because
- * the property wasn't initialized before, or because host setup
- * changed. This might be, for example, because a new device was
- * added, and thus device probing needs to be refreshed to display
- * the new device.
- *
- * Returns: TRUE if the property needs a new probe, FALSE if not.
- */
-
-gboolean
-gst_property_probe_needs_probe (GstPropertyProbe * probe,
-    const GParamSpec * pspec)
-{
-  GstPropertyProbeInterface *iface;
-
-  g_return_val_if_fail (probe != NULL, FALSE);
-  g_return_val_if_fail (pspec != NULL, FALSE);
-
-  iface = GST_PROPERTY_PROBE_GET_IFACE (probe);
-
-  if (iface->needs_probe)
-    return iface->needs_probe (probe, pspec->param_id, pspec);
-
-  return FALSE;
-}
-
-/**
- * gst_property_probe_needs_probe_name:
- * @probe: the #GstPropertyProbe object to which the given property belongs.
- * @name: the name of the property to check.
- *
- * Same as gst_property_probe_needs_probe ().
- *
- * Returns: TRUE if the property needs a new probe, FALSE if not.
- */
-
-gboolean
-gst_property_probe_needs_probe_name (GstPropertyProbe * probe,
-    const gchar * name)
-{
-  const GParamSpec *pspec;
-
-  g_return_val_if_fail (probe != NULL, FALSE);
-  g_return_val_if_fail (name != NULL, FALSE);
-
-  pspec = g_object_class_find_property (G_OBJECT_CLASS (probe), name);
-  if (!pspec) {
-    g_warning ("No such property %s", name);
-    return FALSE;
-  }
-
-  return gst_property_probe_needs_probe (probe, pspec);
-}
-
-/**
- * gst_property_probe_get_values:
- * @probe: the #GstPropertyProbe object.
- * @pspec: the #GParamSpec property identifier.
- *
- * Gets the possible (probed) values for the given property,
- * requires the property to have been probed before.
- *
- * Returns: A list of valid values for the given property.
- */
-
-GValueArray *
-gst_property_probe_get_values (GstPropertyProbe * probe,
-    const GParamSpec * pspec)
-{
-  GstPropertyProbeInterface *iface;
-
-  g_return_val_if_fail (probe != NULL, NULL);
-  g_return_val_if_fail (pspec != NULL, NULL);
-
-  iface = GST_PROPERTY_PROBE_GET_IFACE (probe);
-
-  if (iface->get_values)
-    return iface->get_values (probe, pspec->param_id, pspec);
-
-  return NULL;
-}
-
-/**
- * gst_property_probe_get_values_name:
- * @probe: the #GstPropertyProbe object.
- * @name: the name of the property to get values for.
- *
- * Same as gst_property_probe_get_values ().
- *
- * Returns: A list of valid values for the given property.
- */
-
-GValueArray *
-gst_property_probe_get_values_name (GstPropertyProbe * probe,
-    const gchar * name)
-{
-  const GParamSpec *pspec;
-
-  g_return_val_if_fail (probe != NULL, NULL);
-  g_return_val_if_fail (name != NULL, NULL);
-
-  pspec = g_object_class_find_property (G_OBJECT_CLASS (probe), name);
-  if (!pspec) {
-    g_warning ("No such property %s", name);
-    return NULL;
-  }
-
-  return gst_property_probe_get_values (probe, pspec);
-}
-
-/**
- * gst_property_probe_probe_and_get_values:
- * @probe: the #GstPropertyProbe object.
- * @pspec: The #GParamSpec property identifier.
- *
- * Check whether the given property requires a new probe. If so,
- * fo the probe. After that, retrieve a value list. Meant as a
- * utility function that wraps the above functions.
- *
- * Return: the list of valid values for this property.
- */
-
-GValueArray *
-gst_property_probe_probe_and_get_values (GstPropertyProbe * probe,
-    const GParamSpec * pspec)
-{
-  GstPropertyProbeInterface *iface;
-
-  g_return_val_if_fail (probe != NULL, NULL);
-  g_return_val_if_fail (pspec != NULL, NULL);
-
-  iface = GST_PROPERTY_PROBE_GET_IFACE (probe);
-
-  if (gst_property_probe_needs_probe (probe, pspec))
-    gst_property_probe_probe_property (probe, pspec);
-
-  return gst_property_probe_get_values (probe, pspec);
-}
-
-/**
- * gst_property_probe_probe_and_get_values_name:
- * @probe: the #GstPropertyProbe object.
- * @name: the name of the property to get values for.
- *
- * Same as gst_property_probe_probe_and_get_values ().
- *
- * Return: the list of valid values for this property.
- */
-
-GValueArray *
-gst_property_probe_probe_and_get_values_name (GstPropertyProbe * probe,
-    const gchar * name)
-{
-  const GParamSpec *pspec;
-
-  g_return_val_if_fail (probe != NULL, NULL);
-  g_return_val_if_fail (name != NULL, NULL);
-
-  pspec = g_object_class_find_property (G_OBJECT_CLASS (probe), name);
-  if (!pspec) {
-    g_warning ("No such property %s", name);
-    return NULL;
-  }
-
-  return gst_property_probe_probe_and_get_values (probe, pspec);
-}
diff --git a/gst-libs/gst/propertyprobe/propertyprobe.h b/gst-libs/gst/propertyprobe/propertyprobe.h
deleted file mode 100644 (file)
index 695aa4d..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-/* GStreamer PropertyProbe
- * Copyright (C) 2003 David A. Schleef <ds@schleef.org>
- *
- * property_probe.h: property_probe interface design
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __GST_PROPERTY_PROBE_H__
-#define __GST_PROPERTY_PROBE_H__
-
-#include <gst/gst.h>
-
-G_BEGIN_DECLS
-
-#define GST_TYPE_PROPERTY_PROBE \
-  (gst_property_probe_get_type ())
-#define GST_PROPERTY_PROBE(obj) \
-  (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_PROPERTY_PROBE, GstPropertyProbe))
-#define GST_IS_PROPERTY_PROBE(obj) \
-  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_PROPERTY_PROBE))
-#define GST_PROPERTY_PROBE_GET_IFACE(obj) \
-  (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GST_TYPE_PROPERTY_PROBE, GstPropertyProbeInterface))
-
-typedef struct _GstPropertyProbe GstPropertyProbe; /* dummy typedef */
-
-typedef struct _GstPropertyProbeInterface {
-  GTypeInterface klass;
-
-  /* signals */
-  void          (*probe_needed)   (GstPropertyProbe *probe,
-                                  const GParamSpec *pspec);
-
-  /* virtual functions */
-  const GList * (*get_properties) (GstPropertyProbe *probe);
-  gboolean      (*needs_probe)    (GstPropertyProbe *probe,
-                                  guint             prop_id,
-                                  const GParamSpec *pspec);
-  void          (*probe_property) (GstPropertyProbe *probe,
-                                  guint             prop_id,
-                                  const GParamSpec *pspec);
-  GValueArray * (*get_values)     (GstPropertyProbe *probe,
-                                  guint             prop_id,
-                                  const GParamSpec *pspec);
-
-  gpointer _gst_reserved[GST_PADDING];
-} GstPropertyProbeInterface;
-
-GType       gst_property_probe_get_type       (void);
-
-/* virtual class function wrappers */
-
-/* returns list of GParamSpecs */
-const GList *     gst_property_probe_get_properties      (GstPropertyProbe *probe);
-const GParamSpec *gst_property_probe_get_property        (GstPropertyProbe *probe,
-                                                         const gchar      *name);
-
-/* probe one property */
-void             gst_property_probe_probe_property      (GstPropertyProbe *probe,
-                                                         const GParamSpec *pspec);
-void             gst_property_probe_probe_property_name (GstPropertyProbe *probe,
-                                                         const gchar      *name);
-
-/* do we need a probe? */
-gboolean         gst_property_probe_needs_probe         (GstPropertyProbe *probe,
-                                                         const GParamSpec *pspec);
-gboolean         gst_property_probe_needs_probe_name    (GstPropertyProbe *probe,
-                                                         const gchar      *name);
-
-/* returns list of GValues */
-GValueArray *     gst_property_probe_get_values          (GstPropertyProbe *probe,
-                                                         const GParamSpec *pspec);
-GValueArray *     gst_property_probe_get_values_name     (GstPropertyProbe *probe,
-                                                         const gchar      *name);
-
-/* sugar */
-GValueArray *     gst_property_probe_probe_and_get_values (GstPropertyProbe *probe,
-                                                         const GParamSpec *pspec);
-GValueArray *     gst_property_probe_probe_and_get_values_name (GstPropertyProbe *probe,
-                                                         const gchar      *name);
-
-G_END_DECLS
-
-#endif /* __GST_PROPERTY_PROBE_H__ */
diff --git a/gst-libs/gst/propertyprobe/propertyprobe.vcproj b/gst-libs/gst/propertyprobe/propertyprobe.vcproj
deleted file mode 100644 (file)
index ef167ef..0000000
+++ /dev/null
@@ -1,144 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
-       ProjectType="Visual C++"
-       Version="7.10"
-       Name="propertyprobe"
-       ProjectGUID="{979C216F-0ACF-4956-AE00-055A42D6789A}"
-       RootNamespace="propertyprobe"
-       Keyword="Win32Proj">
-       <Platforms>
-               <Platform
-                       Name="Win32"/>
-       </Platforms>
-       <Configurations>
-               <Configuration
-                       Name="Debug|Win32"
-                       OutputDirectory="../../../win32/Debug"
-                       IntermediateDirectory="../../../win32/Debug"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               Optimization="0"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               MinimalRebuild="TRUE"
-                               BasicRuntimeChecks="3"
-                               RuntimeLibrary="3"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="4"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstpropertyprobe.dll"
-                               LinkIncremental="2"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Debug;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile=""
-                               GenerateDebugInformation="TRUE"
-                               ProgramDatabaseFile="$(OutDir)/propertyprobe.pdb"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               ImportLibrary="$(OutDir)/gstpropertyprobe.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-               <Configuration
-                       Name="Release|Win32"
-                       OutputDirectory="../../../win32/Release"
-                       IntermediateDirectory="../../../win32/Release"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;NDEBUG;GST_DISABLE_GST_DEBUG;_WINDOWS;_USRDLL;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               RuntimeLibrary="2"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="3"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstpropertyprobe.dll"
-                               LinkIncremental="1"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Release;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile=""
-                               GenerateDebugInformation="TRUE"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               EnableCOMDATFolding="2"
-                               ImportLibrary="$(OutDir)/gstpropertyprobe.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-       </Configurations>
-       <References>
-       </References>
-       <Files>
-               <Filter
-                       Name="Source Files"
-                       Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
-                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
-                       <File
-                               RelativePath=".\propertyprobe.c">
-                       </File>
-               </Filter>
-               <Filter
-                       Name="Header Files"
-                       Filter="h;hpp;hxx;hm;inl;inc;xsd"
-                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
-                       <File
-                               RelativePath=".\propertyprobe.h">
-                       </File>
-               </Filter>
-       </Files>
-       <Globals>
-       </Globals>
-</VisualStudioProject>
diff --git a/gst-libs/gst/resample/Makefile.am b/gst-libs/gst/resample/Makefile.am
deleted file mode 100644 (file)
index 94ebea5..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-librarydir = $(libdir)/gstreamer-@GST_MAJORMINOR@
-
-library_LTLIBRARIES = libgstresample.la
-
-libgstresample_la_SOURCES = dtos.c dtof.c functable.c resample.c resample.h
-libgstresample_la_LIBADD =
-libgstresample_la_CFLAGS = $(GST_CFLAGS)
-libgstresample_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
-
-libgstresampleincludedir = $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/resample
-libgstresampleinclude_HEADERS = resample.h
-
-noinst_HEADERS = private.h
-
diff --git a/gst-libs/gst/resample/README b/gst-libs/gst/resample/README
deleted file mode 100644 (file)
index f7db110..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-
-This is a snapshot of my current work developing an audio
-resampling library.  While working on this library, I started
-writing lots of general purpose functions that should really
-be part of a larger library.  Rather than have a constantly
-changing library, and since the current code is capable, I
-decided to freeze this codebase for use with gstreamer, and
-move active development of the code elsewhere.
-
-The algorithm used is based on Shannon's theorem, which says
-that you can recreate an input signal from equidistant samples
-using a sin(x)/x filter; thus, you can create new samples from
-the regenerated input signal.  Since sin(x)/x is expensive to
-evaluate, an interpolated lookup table is used.  Also, a
-windowing function (1-x^2)^2 is used, which aids the convergence
-of sin(x)/x for lower frequencies at the expense of higher.
-
-There is one tunable parameter, which is the filter length.
-Longer filter lengths are obviously slower, but more accurate.
-There's not much reason to use a filter length longer than 64,
-since other approximations start to dominate.  Filter lengths
-as short as 8 are audially acceptable, but should not be
-considered for serious work.
-
-Performance:  A PowerPC G4 at 400 Mhz can resample 2 audio
-channels at almost 10x speed with a filter length of 64, without
-using Altivec extensions.  (My goal was 10x speed, which I almost
-reached.  Maybe later.)
-
-Limitations: Currently only supports streams in the form of
-interleaved signed 16-bit samples.
-
-The test.c program is a simple regression test.  It creates a
-test input pattern (1 sec at 48 khz) that is a frequency ramp
-from 0 to 24000 hz, and then converts it to 44100 hz using a
-filter length of 64.  It then compares the result to the same
-pattern generated at 44100 hz, and outputs the result to the
-file "out".
-
-A graph of the correct output should have field 2 and field 4
-almost equal (plus/minus 1) up to about sample 40000 (which
-corresponds to 20 khz), and then field 2 should be close to 0
-above that.  Running the test program will print to stdout
-something like the following:
-
-  time 0.112526
-  average error 10k=0.4105 22k=639.34
-
-The average error is RMS error over the range [0-10khz] and
-[0-22khz], and is expressed in sample values, for an input
-amplitude of 16000.  Note that RMS errors below 1.0 can't
-really be compared, but basically this shows that below
-10 khz, the resampler is nearly perfect.  Most of the error
-is concentrated above 20 khz.
-
-If the average error is significantly larger after modifying
-the code, it's probably not good.
-
-
-
-dave...
-
diff --git a/gst-libs/gst/resample/dtof.c b/gst-libs/gst/resample/dtof.c
deleted file mode 100644 (file)
index 8353492..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-/* Resampling library
- * Copyright (C) <2001> David A. Schleef <ds@schleef.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <string.h>
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-
-/*#include <ml.h> */
-#include "private.h"
-
-void
-conv_double_float_ref (double *dest, float *src, int n)
-{
-  int i;
-
-  for (i = 0; i < n; i++) {
-    dest[i] = src[i];
-  }
-}
-
-void
-conv_float_double_ref (float *dest, double *src, int n)
-{
-  int i;
-
-  for (i = 0; i < n; i++) {
-    dest[i] = src[i];
-  }
-}
-
-void
-conv_double_float_dstr (double *dest, float *src, int n, int dstr)
-{
-  int i;
-  void *d = dest;
-
-  for (i = 0; i < n; i++) {
-    (*(double *) d) = *src++;
-    d += dstr;
-  }
-}
-
-void
-conv_float_double_sstr (float *dest, double *src, int n, int sstr)
-{
-  int i;
-  void *s = src;
-
-  for (i = 0; i < n; i++) {
-    *dest++ = *(double *) s;
-    s += sstr;
-  }
-}
diff --git a/gst-libs/gst/resample/dtos.c b/gst-libs/gst/resample/dtos.c
deleted file mode 100644 (file)
index f1e2278..0000000
+++ /dev/null
@@ -1,217 +0,0 @@
-/* Resampling library
- * Copyright (C) <2001> David A. Schleef <ds@schleef.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#include <string.h>
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-
-/*#include <ml.h> */
-#include <resample.h>
-
-
-
-#define short_to_double_table
-/*#define short_to_double_altivec */
-#define short_to_double_unroll
-
-#ifdef short_to_double_table
-static float ints_high[256];
-static float ints_low[256];
-
-void
-conv_double_short_table (double *dest, short *src, int n)
-{
-  static int init = 0;
-  int i;
-  unsigned int idx;
-
-  if (!init) {
-    for (i = 0; i < 256; i++) {
-      ints_high[i] = 256.0 * ((i < 128) ? i : i - 256);
-      ints_low[i] = i;
-    }
-    init = 1;
-  }
-
-  if (n & 1) {
-    idx = (unsigned short) *src++;
-    *dest++ = ints_high[(idx >> 8)] + ints_low[(idx & 0xff)];
-    n -= 1;
-  }
-  for (i = 0; i < n; i += 2) {
-    idx = (unsigned short) *src++;
-    *dest++ = ints_high[(idx >> 8)] + ints_low[(idx & 0xff)];
-    idx = (unsigned short) *src++;
-    *dest++ = ints_high[(idx >> 8)] + ints_low[(idx & 0xff)];
-  }
-}
-
-#endif
-
-#ifdef short_to_double_unroll
-void
-conv_double_short_unroll (double *dest, short *src, int n)
-{
-  if (n & 1) {
-    *dest++ = *src++;
-    n--;
-  }
-  if (n & 2) {
-    *dest++ = *src++;
-    *dest++ = *src++;
-    n -= 2;
-  }
-  while (n > 0) {
-    *dest++ = *src++;
-    *dest++ = *src++;
-    *dest++ = *src++;
-    *dest++ = *src++;
-    n -= 4;
-  }
-}
-#endif
-
-void
-conv_double_short_ref (double *dest, short *src, int n)
-{
-  int i;
-
-  for (i = 0; i < n; i++) {
-    dest[i] = src[i];
-  }
-}
-
-#ifdef HAVE_CPU_PPC
-#if 0
-static union
-{
-  int i[4];
-  float f[4];
-}
-av_tmp __attribute__ ((__aligned__ (16)));
-
-void
-conv_double_short_altivec (double *dest, short *src, int n)
-{
-  int i;
-
-  for (i = 0; i < n; i += 4) {
-    av_tmp.i[0] = src[0];
-    av_tmp.i[1] = src[1];
-    av_tmp.i[2] = src[2];
-    av_tmp.i[3] = src[3];
-
-  asm ("       lvx 0,0,%0\n" " vcfsx 1,0,0\n" "        stvx 1,0,%0\n": :"r" (&av_tmp)
-        );
-
-    dest[0] = av_tmp.f[0];
-    dest[1] = av_tmp.f[1];
-    dest[2] = av_tmp.f[2];
-    dest[3] = av_tmp.f[3];
-    src += 4;
-    dest += 4;
-  }
-}
-#endif
-#endif
-
-
-
-/* double to short */
-
-void
-conv_short_double_ref (short *dest, double *src, int n)
-{
-  int i;
-  double x;
-
-  for (i = 0; i < n; i++) {
-    x = *src++;
-    if (x < -32768.0)
-      x = -32768.0;
-    if (x > 32767.0)
-      x = 32767.0;
-    *dest++ = rint (x);
-  }
-}
-
-/* #ifdef HAVE_CPU_PPC */
-#if 0
-void
-conv_short_double_ppcasm (short *dest, double *src, int n)
-{
-  int tmp[2];
-  double min = -32768.0;
-  double max = 32767.0;
-  double ftmp0, ftmp1;
-
-  asm __volatile__ ("\taddic. %3,%3,-8\n"
-      "\taddic. %6,%6,-2\n"
-      "loop:\n"
-      "\tlfdu %0,8(%3)\n"
-      "\tfsub %1,%0,%4\n"
-      "\tfsel %0,%1,%0,%4\n"
-      "\tfsub %1,%0,%5\n"
-      "\tfsel %0,%1,%5,%0\n"
-      "\tfctiw %1,%0\n"
-      "\taddic. 5,5,-1\n"
-      "\tstfd %1,0(%2)\n"
-      "\tlhz 9,6(%2)\n"
-      "\tsthu 9,2(%6)\n" "\tbne loop\n":"=&f" (ftmp0), "=&f" (ftmp1)
-      :"b" (tmp), "r" (src), "f" (min), "f" (max), "r" (dest)
-      :"r9", "r5");
-
-}
-#endif
-
-
-void
-conv_double_short_dstr (double *dest, short *src, int n, int dstr)
-{
-  int i;
-  void *d = dest;
-
-  for (i = 0; i < n; i++) {
-    (*(double *) d) = *src++;
-    d += dstr;
-  }
-}
-
-void
-conv_short_double_sstr (short *dest, double *src, int n, int sstr)
-{
-  int i;
-  double x;
-  void *s = src;
-
-  for (i = 0; i < n; i++) {
-    x = *(double *) s;
-    if (x < -32768.0)
-      x = -32768.0;
-    if (x > 32767.0)
-      x = 32767.0;
-    *dest++ = rint (x);
-    s += sstr;
-  }
-}
diff --git a/gst-libs/gst/resample/functable.c b/gst-libs/gst/resample/functable.c
deleted file mode 100644 (file)
index 29ce041..0000000
+++ /dev/null
@@ -1,322 +0,0 @@
-/* Resampling library
- * Copyright (C) <2001> David A. Schleef <ds@schleef.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <string.h>
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-
-#include "private.h"
-
-
-
-double
-functable_sinc (void *p, double x)
-{
-  if (x == 0)
-    return 1;
-  return sin (x) / x;
-}
-
-double
-functable_dsinc (void *p, double x)
-{
-  if (x == 0)
-    return 0;
-  return cos (x) / x - sin (x) / (x * x);
-}
-
-double
-functable_window_boxcar (void *p, double x)
-{
-  if (x < -1 || x > 1)
-    return 0;
-  return 1;
-}
-
-double
-functable_window_dboxcar (void *p, double x)
-{
-  return 0;
-}
-
-double
-functable_window_std (void *p, double x)
-{
-  if (x < -1 || x > 1)
-    return 0;
-  return (1 - x * x) * (1 - x * x);
-}
-
-double
-functable_window_dstd (void *p, double x)
-{
-  if (x < -1 || x > 1)
-    return 0;
-  return -4 * x * (1 - x * x);
-}
-
-
-
-void
-functable_init (functable_t * t)
-{
-  int i;
-  double x;
-
-  t->fx = malloc (sizeof (double) * (t->len + 1));
-  t->fdx = malloc (sizeof (double) * (t->len + 1));
-
-  t->invoffset = 1.0 / t->offset;
-
-  for (i = 0; i < t->len + 1; i++) {
-    x = t->start + t->offset * i;
-    x *= t->scale;
-
-    t->fx[i] = t->func_x (t->priv, x);
-    t->fdx[i] = t->scale * t->func_dx (t->priv, x);
-  }
-  if (t->func2_x) {
-    double f1x, f1dx;
-    double f2x, f2dx;
-
-    for (i = 0; i < t->len + 1; i++) {
-      x = t->start + t->offset * i;
-      x *= t->scale2;
-
-      f2x = t->func2_x (t->priv, x);
-      f2dx = t->scale2 * t->func2_dx (t->priv, x);
-
-      f1x = t->fx[i];
-      f1dx = t->fdx[i];
-
-      t->fx[i] = f1x * f2x;
-      t->fdx[i] = f1x * f2dx + f1dx * f2x;
-    }
-  }
-}
-
-double
-functable_eval (functable_t * t, double x)
-{
-  int i;
-  double f0, f1, w0, w1;
-  double x2, x3;
-  double w;
-
-  if (x < t->start || x > (t->start + (t->len + 1) * t->offset)) {
-    printf ("x out of range %g\n", x);
-  }
-  x -= t->start;
-  x /= t->offset;
-  i = floor (x);
-  x -= i;
-
-  x2 = x * x;
-  x3 = x2 * x;
-
-  f1 = 3 * x2 - 2 * x3;
-  f0 = 1 - f1;
-  w0 = (x - 2 * x2 + x3) * t->offset;
-  w1 = (-x2 + x3) * t->offset;
-
-  /*printf("i=%d x=%g f0=%g f1=%g w0=%g w1=%g\n",i,x,f0,f1,w0,w1); */
-
-  w = t->fx[i] * f0 + t->fx[i + 1] * f1 + t->fdx[i] * w0 + t->fdx[i + 1] * w1;
-
-  /*w = t->fx[i] * (1-x) + t->fx[i+1] * x; */
-
-  return w;
-}
-
-
-double
-functable_fir (functable_t * t, double x, int n, double *data, int len)
-{
-  int i, j;
-  double f0, f1, w0, w1;
-  double x2, x3;
-  double w;
-  double sum;
-
-  x -= t->start;
-  x /= t->offset;
-  i = floor (x);
-  x -= i;
-
-  x2 = x * x;
-  x3 = x2 * x;
-
-  f1 = 3 * x2 - 2 * x3;
-  f0 = 1 - f1;
-  w0 = (x - 2 * x2 + x3) * t->offset;
-  w1 = (-x2 + x3) * t->offset;
-
-  sum = 0;
-  for (j = 0; j < len; j++) {
-    w = t->fx[i] * f0 + t->fx[i + 1] * f1 + t->fdx[i] * w0 + t->fdx[i + 1] * w1;
-    sum += data[j * 2] * w;
-    i += n;
-  }
-
-  return sum;
-}
-
-void
-functable_fir2 (functable_t * t, double *r0, double *r1, double x,
-    int n, double *data, int len)
-{
-  int i, j;
-  double f0, f1, w0, w1;
-  double x2, x3;
-  double w;
-  double sum0, sum1;
-  double floor_x;
-
-  x -= t->start;
-  x *= t->invoffset;
-  floor_x = floor (x);
-  i = floor_x;
-  x -= floor_x;
-
-  x2 = x * x;
-  x3 = x2 * x;
-
-  f1 = 3 * x2 - 2 * x3;
-  f0 = 1 - f1;
-  w0 = (x - 2 * x2 + x3) * t->offset;
-  w1 = (-x2 + x3) * t->offset;
-
-  sum0 = 0;
-  sum1 = 0;
-  for (j = 0; j < len; j++) {
-    w = t->fx[i] * f0 + t->fx[i + 1] * f1 + t->fdx[i] * w0 + t->fdx[i + 1] * w1;
-    sum0 += data[j * 2] * w;
-    sum1 += data[j * 2 + 1] * w;
-    i += n;
-
-#define unroll2
-#define unroll3
-#define unroll4
-#ifdef unroll2
-    j++;
-
-    w = t->fx[i] * f0 + t->fx[i + 1] * f1 + t->fdx[i] * w0 + t->fdx[i + 1] * w1;
-    sum0 += data[j * 2] * w;
-    sum1 += data[j * 2 + 1] * w;
-    i += n;
-#endif
-#ifdef unroll3
-    j++;
-
-    w = t->fx[i] * f0 + t->fx[i + 1] * f1 + t->fdx[i] * w0 + t->fdx[i + 1] * w1;
-    sum0 += data[j * 2] * w;
-    sum1 += data[j * 2 + 1] * w;
-    i += n;
-#endif
-#ifdef unroll4
-    j++;
-
-    w = t->fx[i] * f0 + t->fx[i + 1] * f1 + t->fdx[i] * w0 + t->fdx[i + 1] * w1;
-    sum0 += data[j * 2] * w;
-    sum1 += data[j * 2 + 1] * w;
-    i += n;
-#endif
-  }
-
-  *r0 = sum0;
-  *r1 = sum1;
-}
-
-
-
-#ifdef unused
-void
-functable_fir2_altivec (functable_t * t, float *r0, float *r1,
-    double x, int n, float *data, int len)
-{
-  int i, j;
-  double f0, f1, w0, w1;
-  double x2, x3;
-  double w;
-  double sum0, sum1;
-  double floor_x;
-
-  x -= t->start;
-  x *= t->invoffset;
-  floor_x = floor (x);
-  i = floor_x;
-  x -= floor_x;
-
-  x2 = x * x;
-  x3 = x2 * x;
-
-  f1 = 3 * x2 - 2 * x3;
-  f0 = 1 - f1;
-  w0 = (x - 2 * x2 + x3) * t->offset;
-  w1 = (-x2 + x3) * t->offset;
-
-  sum0 = 0;
-  sum1 = 0;
-  for (j = 0; j < len; j++) {
-    /* t->fx, t->fdx needs to be multiplexed by n */
-    /* we need 5 consecutive floats, which fit into 2 vecs */
-    /* load v0, t->fx[i] */
-    /* load v1, t->fx[i+n] */
-    /* v2 = v0 (not correct) */
-    /* v3 = (v0>>32) || (v1<<3*32) (not correct) */
-    /* */
-    /* load v4, t->dfx[i] */
-    /* load v5, t->dfx[i+n] */
-    /* v6 = v4 (not correct) */
-    /* v7 = (v4>>32) || (v5<<3*32) (not correct) */
-    /*  */
-    /* v8 = splat(f0) */
-    /* v9 = splat(f1) */
-    /* v10 = splat(w0) */
-    /* v11 = splat(w1) */
-    /* */
-    /* v12 = v2 * v8 */
-    /* v12 += v3 * v9 */
-    /* v12 += v6 * v10 */
-    /* v12 += v7 * v11 */
-
-    w = t->fx[i] * f0 + t->fx[i + 1] * f1 + t->fdx[i] * w0 + t->fdx[i + 1] * w1;
-
-    /* v13 = data[j*2] */
-    /* v14 = data[j*2+4] */
-    /* v15 = deinterlace_high(v13,v14) */
-    /* v16 = deinterlace_low(v13,v14) */
-    /* (sum0) v17 += multsum(v13,v15) */
-    /* (sum1) v18 += multsum(v14,v16) */
-
-    sum0 += data[j * 2] * w;
-    sum1 += data[j * 2 + 1] * w;
-    i += n;
-
-  }
-
-  *r0 = sum0;
-  *r1 = sum1;
-}
-#endif
diff --git a/gst-libs/gst/resample/private.h b/gst-libs/gst/resample/private.h
deleted file mode 100644 (file)
index 20339c1..0000000
+++ /dev/null
@@ -1,118 +0,0 @@
-/* Resampling library
- * Copyright (C) <2001> David Schleef <ds@schleef.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-
-#ifndef __PRIVATE_H__
-#define __PRIVATE_H__
-
-#include "resample.h"
-
-G_BEGIN_DECLS
-
-void gst_resample_nearest_s16(gst_resample_t *r);
-void gst_resample_bilinear_s16(gst_resample_t *r);
-void gst_resample_sinc_s16(gst_resample_t *r);
-void gst_resample_sinc_slow_s16(gst_resample_t *r);
-void gst_resample_sinc_ft_s16(gst_resample_t * r);
-
-void gst_resample_nearest_float(gst_resample_t *r);
-void gst_resample_bilinear_float(gst_resample_t *r);
-void gst_resample_sinc_float(gst_resample_t *r);
-void gst_resample_sinc_slow_float(gst_resample_t *r);
-void gst_resample_sinc_ft_float(gst_resample_t * r);
-
-
-typedef struct functable_s functable_t;
-struct functable_s {
-       double start;
-       double offset;
-       int len;
-
-       double invoffset;
-
-       double scale;
-       double scale2;
-
-       double (*func_x)(void *,double x);
-       double (*func_dx)(void *,double x);
-
-       double (*func2_x)(void *,double x);
-       double (*func2_dx)(void *,double x);
-
-       double *fx;
-       double *fdx;
-
-       void *priv;
-};
-
-void functable_init(functable_t *t);
-double functable_eval(functable_t *t,double x);
-
-double functable_fir(functable_t *t,double x0,int n,double *data,int len);
-void functable_fir2(functable_t *t,double *r0, double *r1, double x0,
-       int n,double *data,int len);
-
-double functable_sinc(void *p, double x);
-double functable_dsinc(void *p, double x);
-double functable_window_std(void *p, double x);
-double functable_window_dstd(void *p, double x);
-double functable_window_boxcar(void *p, double x);
-double functable_window_dboxcar(void *p, double x);
-
-/* math lib stuff */
-
-void conv_double_short_table(double *dest, short *src, int n);
-void conv_double_short_unroll(double *dest, short *src, int n);
-void conv_double_short_ref(double *dest, short *src, int n);
-#ifdef HAVE_CPU_PPC
-void conv_double_short_altivec(double *dest, short *src, int n);
-#endif
-
-void conv_short_double_ref(short *dest, double *src, int n);
-#ifdef HAVE_CPU_PPC
-void conv_short_double_ppcasm(short *dest, double *src, int n);
-#endif
-
-#ifdef HAVE_CPU_PPC
-#  define conv_double_short conv_double_short_table
-#  if 0
-/* disabled as in .c */
-#    define conv_short_double conv_short_double_ppcasm
-#  else
-#    define conv_short_double conv_short_double_ref
-#  endif
-#else
-#  define conv_double_short conv_double_short_ref
-#  define conv_short_double conv_short_double_ref
-#endif
-
-#define conv_double_float conv_double_float_ref
-#define conv_float_double conv_float_double_ref
-
-void conv_double_short_dstr(double *dest, short *src, int n, int dstr);
-void conv_short_double_sstr(short *dest, double *src, int n, int dstr);
-
-void conv_double_float_ref(double *dest, float *src, int n);
-void conv_float_double_ref(float *dest, double *src, int n);
-void conv_double_float_dstr(double *dest, float *src, int n, int dstr);
-void conv_float_double_sstr(float *dest, double *src, int n, int sstr);
-
-G_END_DECLS
-
-#endif /* __PRIVATE_H__ */
diff --git a/gst-libs/gst/resample/resample.c b/gst-libs/gst/resample/resample.c
deleted file mode 100644 (file)
index c73b118..0000000
+++ /dev/null
@@ -1,929 +0,0 @@
-/* Resampling library
- * Copyright (C) <2001> David A. Schleef <ds@schleef.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <string.h>
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-
-#include "private.h"
-#include <gst/gstplugin.h>
-#include <gst/gstversion.h>
-
-inline double
-sinc (double x)
-{
-  if (x == 0)
-    return 1;
-  return sin (x) / x;
-}
-
-inline double
-window_func (double x)
-{
-  x = 1 - x * x;
-  return x * x;
-}
-
-signed short
-double_to_s16 (double x)
-{
-  if (x < -32768) {
-    printf ("clipped\n");
-    return -32768;
-  }
-  if (x > 32767) {
-    printf ("clipped\n");
-    return -32767;
-  }
-  return rint (x);
-}
-
-signed short
-double_to_s16_ppcasm (double x)
-{
-  if (x < -32768) {
-    return -32768;
-  }
-  if (x > 32767) {
-    return -32767;
-  }
-  return rint (x);
-}
-
-void
-gst_resample_init (gst_resample_t * r)
-{
-  r->i_start = 0;
-  if (r->filter_length & 1) {
-    r->o_start = 0;
-  } else {
-    r->o_start = r->o_inc * 0.5;
-  }
-
-  memset (r->acc, 0, sizeof (r->acc));
-
-  gst_resample_reinit (r);
-}
-
-void
-gst_resample_reinit (gst_resample_t * r)
-{
-  /* i_inc is the number of samples that the output increments for
-   * each input sample.  o_inc is the opposite. */
-  r->i_inc = (double) r->o_rate / r->i_rate;
-  r->o_inc = (double) r->i_rate / r->o_rate;
-
-  r->halftaps = (r->filter_length - 1.0) * 0.5;
-
-  if (r->format == GST_RESAMPLE_S16) {
-    switch (r->method) {
-      default:
-      case GST_RESAMPLE_NEAREST:
-        r->scale = gst_resample_nearest_s16;
-        break;
-      case GST_RESAMPLE_BILINEAR:
-        r->scale = gst_resample_bilinear_s16;
-        break;
-      case GST_RESAMPLE_SINC_SLOW:
-        r->scale = gst_resample_sinc_s16;
-        break;
-      case GST_RESAMPLE_SINC:
-        r->scale = gst_resample_sinc_ft_s16;
-        break;
-    }
-  } else if (r->format == GST_RESAMPLE_FLOAT) {
-    switch (r->method) {
-      default:
-      case GST_RESAMPLE_NEAREST:
-        r->scale = gst_resample_nearest_float;
-        break;
-      case GST_RESAMPLE_BILINEAR:
-        r->scale = gst_resample_bilinear_float;
-        break;
-      case GST_RESAMPLE_SINC_SLOW:
-        r->scale = gst_resample_sinc_float;
-        break;
-      case GST_RESAMPLE_SINC:
-        r->scale = gst_resample_sinc_ft_float;
-        break;
-    }
-  } else {
-    fprintf (stderr, "gst_resample: Unexpected format \"%d\"\n", r->format);
-  }
-}
-
-void
-gst_resample_close (gst_resample_t * r)
-{
-  if (r->buffer) {
-    free (r->buffer);
-    r->buffer = NULL;
-    r->buffer_len = 0;
-  }
-  if (r->hack_union.s.out_tmp) {
-    free (r->hack_union.s.out_tmp);
-    r->hack_union.s.out_tmp = NULL;
-    r->hack_union.s.out_tmp_len = 0;
-  }
-
-}
-
-/*
- * Prepare to be confused.
- *
- * We keep a "timebase" that is based on output samples.  The zero
- * of the timebase cooresponds to the next output sample that will
- * be written.
- *
- * i_start is the "time" that corresponds to the first input sample
- * in an incoming buffer.  Since the output depends on input samples
- * ahead in time, i_start will tend to be around halftaps.
- *
- * i_start_buf is the time of the first sample in the temporary
- * buffer.
- */
-void
-gst_resample_scale (gst_resample_t * r, void *i_buf, unsigned int i_size)
-{
-  int o_size;
-
-  r->i_buf = i_buf;
-
-  r->i_samples = i_size / 2 / r->channels;
-
-  r->i_start_buf = r->i_start - r->filter_length * r->i_inc;
-
-  /* i_start is the offset (in a given output sample) that is the
-   * beginning of the current input buffer */
-  r->i_end = r->i_start + r->i_inc * r->i_samples;
-
-  r->o_samples = floor (r->i_end - r->halftaps * r->i_inc);
-
-  o_size = r->o_samples * r->channels * 2;
-  r->o_buf = r->get_buffer (r->priv, o_size);
-
-  if (r->verbose) {
-    printf ("gst_resample_scale: i_buf=%p i_size=%d\n", i_buf, i_size);
-    printf ("gst_resample_scale: i_samples=%d o_samples=%d i_inc=%g o_buf=%p\n",
-        r->i_samples, r->o_samples, r->i_inc, r->o_buf);
-    printf ("gst_resample_scale: i_start=%g i_end=%g o_start=%g\n",
-        r->i_start, r->i_end, r->o_start);
-  }
-
-  if ((r->filter_length + r->i_samples) * sizeof (double) * 2 > r->buffer_len) {
-    int size = (r->filter_length + r->i_samples) * sizeof (double) * 2;
-
-    if (r->verbose) {
-      printf ("gst_resample temp buffer size=%d\n", size);
-    }
-    if (r->buffer)
-      free (r->buffer);
-    r->buffer_len = size;
-    r->buffer = malloc (size);
-    memset (r->buffer, 0, size);
-  }
-
-  if (r->format == GST_RESAMPLE_S16) {
-    if (r->channels == 2) {
-      conv_double_short (r->buffer + r->filter_length * sizeof (double) * 2,
-          r->i_buf, r->i_samples * 2);
-    } else {
-      conv_double_short_dstr (r->buffer +
-          r->filter_length * sizeof (double) * 2, r->i_buf, r->i_samples,
-          sizeof (double) * 2);
-    }
-  } else if (r->format == GST_RESAMPLE_FLOAT) {
-    if (r->channels == 2) {
-      conv_double_float (r->buffer + r->filter_length * sizeof (double) * 2,
-          r->i_buf, r->i_samples * 2);
-    } else {
-      conv_double_float_dstr (r->buffer +
-          r->filter_length * sizeof (double) * 2, r->i_buf, r->i_samples,
-          sizeof (double) * 2);
-    }
-  }
-
-  r->scale (r);
-
-  memcpy (r->buffer,
-      r->buffer + r->i_samples * sizeof (double) * 2,
-      r->filter_length * sizeof (double) * 2);
-
-  /* updating times */
-  r->i_start += r->i_samples * r->i_inc;
-  r->o_start += r->o_samples * r->o_inc - r->i_samples;
-
-  /* adjusting timebase zero */
-  r->i_start -= r->o_samples;
-}
-
-void
-gst_resample_nearest_s16 (gst_resample_t * r)
-{
-  signed short *i_ptr, *o_ptr;
-  int i_count = 0;
-  double a;
-  int i;
-
-  i_ptr = (signed short *) r->i_buf;
-  o_ptr = (signed short *) r->o_buf;
-
-  a = r->o_start;
-  i_count = 0;
-#define SCALE_LOOP(COPY,INC) \
-       for (i = 0; i < r->o_samples; i++) {    \
-               COPY;                                                   \
-               a += r->o_inc;                                          \
-               while (a >= 1) {                                \
-                       a -= 1;                                         \
-                       i_ptr+=INC;                                     \
-                       i_count++;                                      \
-               }                                                               \
-               o_ptr+=INC;                                             \
-       }
-
-  switch (r->channels) {
-    case 1:
-      SCALE_LOOP (o_ptr[0] = i_ptr[0], 1);
-      break;
-    case 2:
-      SCALE_LOOP (o_ptr[0] = i_ptr[0];
-          o_ptr[1] = i_ptr[1], 2);
-      break;
-    default:
-    {
-      int n, n_chan = r->channels;
-
-      SCALE_LOOP (for (n = 0; n < n_chan; n++) o_ptr[n] = i_ptr[n], n_chan);
-    }
-  }
-  if (i_count != r->i_samples) {
-    printf ("handled %d in samples (expected %d)\n", i_count, r->i_samples);
-  }
-}
-
-void
-gst_resample_bilinear_s16 (gst_resample_t * r)
-{
-  signed short *i_ptr, *o_ptr;
-  int o_count = 0;
-  double b;
-  int i;
-  double acc0, acc1;
-
-  i_ptr = (signed short *) r->i_buf;
-  o_ptr = (signed short *) r->o_buf;
-
-  acc0 = r->acc[0];
-  acc1 = r->acc[1];
-  b = r->i_start;
-  for (i = 0; i < r->i_samples; i++) {
-    b += r->i_inc;
-    /*printf("in %d\n",i_ptr[0]); */
-    if (b >= 2) {
-      printf ("not expecting b>=2\n");
-    }
-    if (b >= 1) {
-      acc0 += (1.0 - (b - r->i_inc)) * i_ptr[0];
-      acc1 += (1.0 - (b - r->i_inc)) * i_ptr[1];
-
-      o_ptr[0] = rint (acc0);
-      /*printf("out %d\n",o_ptr[0]); */
-      o_ptr[1] = rint (acc1);
-      o_ptr += 2;
-      o_count++;
-
-      b -= 1.0;
-
-      acc0 = b * i_ptr[0];
-      acc1 = b * i_ptr[1];
-    } else {
-      acc0 += i_ptr[0] * r->i_inc;
-      acc1 += i_ptr[1] * r->i_inc;
-    }
-    i_ptr += 2;
-  }
-  r->acc[0] = acc0;
-  r->acc[1] = acc1;
-
-  if (o_count != r->o_samples) {
-    printf ("handled %d out samples (expected %d)\n", o_count, r->o_samples);
-  }
-}
-
-void
-gst_resample_sinc_slow_s16 (gst_resample_t * r)
-{
-  signed short *i_ptr, *o_ptr;
-  int i, j;
-  double c0, c1;
-  double a;
-  int start;
-  double center;
-  double weight;
-
-  if (!r->buffer) {
-    int size = r->filter_length * 2 * r->channels;
-
-    printf ("gst_resample temp buffer\n");
-    r->buffer = malloc (size);
-    memset (r->buffer, 0, size);
-  }
-
-  i_ptr = (signed short *) r->i_buf;
-  o_ptr = (signed short *) r->o_buf;
-
-  a = r->i_start;
-#define GETBUF(index,chan) (((index)<0) \
-                       ? ((short *)(r->buffer))[((index)+r->filter_length)*2+(chan)] \
-                       : i_ptr[(index)*2+(chan)])
-  {
-    double sinx, cosx, sind, cosd;
-    double x, d;
-    double t;
-
-    for (i = 0; i < r->o_samples; i++) {
-      start = floor (a) - r->filter_length;
-      center = a - r->halftaps;
-      x = M_PI * (start - center) * r->o_inc;
-      sinx = sin (M_PI * (start - center) * r->o_inc);
-      cosx = cos (M_PI * (start - center) * r->o_inc);
-      d = M_PI * r->o_inc;
-      sind = sin (M_PI * r->o_inc);
-      cosd = cos (M_PI * r->o_inc);
-      c0 = 0;
-      c1 = 0;
-      for (j = 0; j < r->filter_length; j++) {
-        weight = (x == 0) ? 1 : (sinx / x);
-/*printf("j %d sin %g cos %g\n",j,sinx,cosx); */
-/*printf("j %d sin %g x %g sinc %g\n",j,sinx,x,weight); */
-        c0 += weight * GETBUF ((start + j), 0);
-        c1 += weight * GETBUF ((start + j), 1);
-        t = cosx * cosd - sinx * sind;
-        sinx = cosx * sind + sinx * cosd;
-        cosx = t;
-        x += d;
-      }
-      o_ptr[0] = rint (c0);
-      o_ptr[1] = rint (c1);
-      o_ptr += 2;
-      a += r->o_inc;
-    }
-  }
-#undef GETBUF
-
-  memcpy (r->buffer,
-      i_ptr + (r->i_samples - r->filter_length) * r->channels,
-      r->filter_length * 2 * r->channels);
-}
-
-/* only works for channels == 2 ???? */
-void
-gst_resample_sinc_s16 (gst_resample_t * r)
-{
-  double *ptr;
-  signed short *o_ptr;
-  int i, j;
-  double c0, c1;
-  double a;
-  int start;
-  double center;
-  double weight;
-  double x0, x, d;
-  double scale;
-
-  ptr = (double *) r->buffer;
-  o_ptr = (signed short *) r->o_buf;
-
-  /* scale provides a cutoff frequency for the low
-   * pass filter aspects of sinc().  scale=M_PI
-   * will cut off at the input frequency, which is
-   * good for up-sampling, but will cause aliasing
-   * for downsampling.  Downsampling needs to be
-   * cut off at o_rate, thus scale=M_PI*r->i_inc. */
-  /* actually, it needs to be M_PI*r->i_inc*r->i_inc.
-   * Need to research why. */
-  scale = M_PI * r->i_inc;
-  for (i = 0; i < r->o_samples; i++) {
-    a = r->o_start + i * r->o_inc;
-    start = floor (a - r->halftaps);
-/*printf("%d: a=%g start=%d end=%d\n",i,a,start,start+r->filter_length-1); */
-    center = a;
-    /*x = M_PI * (start - center) * r->o_inc; */
-    /*d = M_PI * r->o_inc; */
-    /*x = (start - center) * r->o_inc; */
-    x0 = (start - center) * r->o_inc;
-    d = r->o_inc;
-    c0 = 0;
-    c1 = 0;
-    for (j = 0; j < r->filter_length; j++) {
-      x = x0 + d * j;
-      weight = sinc (x * scale * r->i_inc) * scale / M_PI;
-      weight *= window_func (x / r->halftaps * r->i_inc);
-      c0 += weight * ptr[(start + j + r->filter_length) * 2 + 0];
-      c1 += weight * ptr[(start + j + r->filter_length) * 2 + 1];
-    }
-    o_ptr[0] = double_to_s16 (c0);
-    o_ptr[1] = double_to_s16 (c1);
-    o_ptr += 2;
-  }
-}
-
-/*
- * Resampling audio is best done using a sinc() filter.
- *
- *
- *  out[t] = Sum( in[t'] * sinc((t-t')/delta_t), all t')
- *
- * The immediate problem with this algorithm is that it involves a
- * sum over an infinite number of input samples, both in the past
- * and future.  Note that even though sinc(x) is bounded by 1/x,
- * and thus decays to 0 for large x, since sum(x,{x=0,1..,n}) diverges
- * as log(n), we need to be careful about convergence.  This is
- * typically done by using a windowing function, which also makes
- * the sum over a finite number of input samples.
- *
- * The next problem is computational:  sinc(), and especially
- * sinc() multiplied by a non-trivial windowing function is expensive
- * to calculate, and also difficult to find SIMD optimizations.  Since
- * the time increment on input and output is different, it is not
- * possible to use a FIR filter, because the taps would have to be
- * recalculated for every t.
- *
- * To get around the expense of calculating sinc() for every point,
- * we pre-calculate sinc() at a number of points, and then interpolate
- * for the values we want in calculations.  The interpolation method
- * chosen is bi-cubic, which requires both the evalated function and
- * its derivative at every pre-sampled point.  Also, if the sampled
- * points are spaced commensurate with the input delta_t, we notice
- * that the interpolating weights are the same for every input point.
- * This decreases the number of operations to 4 multiplies and 4 adds
- * for each tap, regardless of the complexity of the filtering function.
- * 
- * At this point, it is possible to rearrange the problem as the sum
- * of 4 properly weghted FIR filters.  Typical SIMD computation units
- * are highly optimized for FIR filters, making long filter lengths
- * reasonable.
- */
-
-static functable_t *ft;
-
-void
-gst_resample_sinc_ft_s16 (gst_resample_t * r)
-{
-  double *ptr;
-  signed short *o_ptr;
-  int i;
-
-  /*int j; */
-  double c0, c1;
-
-  /*double a; */
-  double start_f, start_x;
-  int start;
-  double center;
-
-  /*double weight; */
-  double x, d;
-  double scale;
-  int n = 4;
-  double *out_tmp;
-
-  if (r->hack_union.s.out_tmp_len < r->o_samples) {
-    r->hack_union.s.out_tmp = realloc (r->hack_union.s.out_tmp,
-        r->o_samples * 2 * sizeof (double));
-    r->hack_union.s.out_tmp_len = r->o_samples;
-  }
-  out_tmp = r->hack_union.s.out_tmp;
-
-  scale = r->i_inc;             /* cutoff at 22050 */
-  /*scale = 1.0;          // cutoff at 24000 */
-  /*scale = r->i_inc * 0.5;       // cutoff at 11025 */
-
-  if (!ft) {
-    ft = malloc (sizeof (*ft));
-    memset (ft, 0, sizeof (*ft));
-
-    ft->len = (r->filter_length + 2) * n;
-    ft->offset = 1.0 / n;
-    ft->start = -ft->len * 0.5 * ft->offset;
-
-    ft->func_x = functable_sinc;
-    ft->func_dx = functable_dsinc;
-    ft->scale = M_PI * scale;
-
-    ft->func2_x = functable_window_std;
-    ft->func2_dx = functable_window_dstd;
-    ft->scale2 = 1.0 / r->halftaps;
-
-    functable_init (ft);
-
-    /*printf("len=%d offset=%g start=%g\n",ft->len,ft->offset,ft->start); */
-  }
-
-  ptr = r->buffer;
-  o_ptr = (signed short *) r->o_buf;
-
-  center = r->o_start;
-  while (center - r->halftaps < -1 * r->filter_length)
-    center += 1.0;
-  start_x = center - r->halftaps;
-  start_f = floor (start_x);
-  start_x -= start_f;
-  start = start_f;
-  for (i = 0; i < r->o_samples; i++) {
-    /*start_f = floor(center - r->halftaps); */
-/*printf("%d: a=%g start=%d end=%d\n",i,a,start,start+r->filter_length-1); */
-    x = start_f - center;
-    d = 1;
-    c0 = 0;
-    c1 = 0;
-/*#define slow */
-#ifdef slow
-    for (j = 0; j < r->filter_length; j++) {
-      weight = functable_eval (ft, x) * scale;
-      /*weight = sinc(M_PI * scale * x)*scale*r->i_inc; */
-      /*weight *= window_func(x / r->halftaps); */
-      c0 += weight * ptr[(start + j + r->filter_length) * 2 + 0];
-      c1 += weight * ptr[(start + j + r->filter_length) * 2 + 1];
-      x += d;
-    }
-#else
-    functable_fir2 (ft,
-        &c0, &c1, x, n, ptr + (start + r->filter_length) * 2, r->filter_length);
-    c0 *= scale;
-    c1 *= scale;
-#endif
-
-    out_tmp[2 * i + 0] = c0;
-    out_tmp[2 * i + 1] = c1;
-    center += r->o_inc;
-    start_x += r->o_inc;
-    while (start_x >= 1.0) {
-      start_f++;
-      start_x -= 1.0;
-      start++;
-    }
-  }
-
-  if (r->channels == 2) {
-    conv_short_double (r->o_buf, out_tmp, 2 * r->o_samples);
-  } else {
-    conv_short_double_sstr (r->o_buf, out_tmp, r->o_samples,
-        2 * sizeof (double));
-  }
-}
-
-/********
- ** float code below
- ********/
-
-
-void
-gst_resample_nearest_float (gst_resample_t * r)
-{
-  float *i_ptr, *o_ptr;
-  int i_count = 0;
-  double a;
-  int i;
-
-  i_ptr = (float *) r->i_buf;
-  o_ptr = (float *) r->o_buf;
-
-  a = r->o_start;
-  i_count = 0;
-#define SCALE_LOOP(COPY,INC) \
-       for (i = 0; i < r->o_samples; i++) {    \
-               COPY;                                                   \
-               a += r->o_inc;                                          \
-               while (a >= 1) {                                \
-                       a -= 1;                                         \
-                       i_ptr+=INC;                                     \
-                       i_count++;                                      \
-               }                                                               \
-               o_ptr+=INC;                                             \
-       }
-
-  switch (r->channels) {
-    case 1:
-      SCALE_LOOP (o_ptr[0] = i_ptr[0], 1);
-      break;
-    case 2:
-      SCALE_LOOP (o_ptr[0] = i_ptr[0];
-          o_ptr[1] = i_ptr[1], 2);
-      break;
-    default:
-    {
-      int n, n_chan = r->channels;
-
-      SCALE_LOOP (for (n = 0; n < n_chan; n++) o_ptr[n] = i_ptr[n], n_chan);
-    }
-  }
-  if (i_count != r->i_samples) {
-    printf ("handled %d in samples (expected %d)\n", i_count, r->i_samples);
-  }
-}
-
-void
-gst_resample_bilinear_float (gst_resample_t * r)
-{
-  float *i_ptr, *o_ptr;
-  int o_count = 0;
-  double b;
-  int i;
-  double acc0, acc1;
-
-  i_ptr = (float *) r->i_buf;
-  o_ptr = (float *) r->o_buf;
-
-  acc0 = r->acc[0];
-  acc1 = r->acc[1];
-  b = r->i_start;
-  for (i = 0; i < r->i_samples; i++) {
-    b += r->i_inc;
-    /*printf("in %d\n",i_ptr[0]); */
-    if (b >= 2) {
-      printf ("not expecting b>=2\n");
-    }
-    if (b >= 1) {
-      acc0 += (1.0 - (b - r->i_inc)) * i_ptr[0];
-      acc1 += (1.0 - (b - r->i_inc)) * i_ptr[1];
-
-      o_ptr[0] = acc0;
-      /*printf("out %d\n",o_ptr[0]); */
-      o_ptr[1] = acc1;
-      o_ptr += 2;
-      o_count++;
-
-      b -= 1.0;
-
-      acc0 = b * i_ptr[0];
-      acc1 = b * i_ptr[1];
-    } else {
-      acc0 += i_ptr[0] * r->i_inc;
-      acc1 += i_ptr[1] * r->i_inc;
-    }
-    i_ptr += 2;
-  }
-  r->acc[0] = acc0;
-  r->acc[1] = acc1;
-
-  if (o_count != r->o_samples) {
-    printf ("handled %d out samples (expected %d)\n", o_count, r->o_samples);
-  }
-}
-
-void
-gst_resample_sinc_slow_float (gst_resample_t * r)
-{
-  float *i_ptr, *o_ptr;
-  int i, j;
-  double c0, c1;
-  double a;
-  int start;
-  double center;
-  double weight;
-
-  if (!r->buffer) {
-    int size = r->filter_length * sizeof (float) * r->channels;
-
-    printf ("gst_resample temp buffer\n");
-    r->buffer = malloc (size);
-    memset (r->buffer, 0, size);
-  }
-
-  i_ptr = (float *) r->i_buf;
-  o_ptr = (float *) r->o_buf;
-
-  a = r->i_start;
-#define GETBUF(index,chan) (((index)<0) \
-                       ? ((float *)(r->buffer))[((index)+r->filter_length)*2+(chan)] \
-                       : i_ptr[(index)*2+(chan)])
-  {
-    double sinx, cosx, sind, cosd;
-    double x, d;
-    double t;
-
-    for (i = 0; i < r->o_samples; i++) {
-      start = floor (a) - r->filter_length;
-      center = a - r->halftaps;
-      x = M_PI * (start - center) * r->o_inc;
-      sinx = sin (M_PI * (start - center) * r->o_inc);
-      cosx = cos (M_PI * (start - center) * r->o_inc);
-      d = M_PI * r->o_inc;
-      sind = sin (M_PI * r->o_inc);
-      cosd = cos (M_PI * r->o_inc);
-      c0 = 0;
-      c1 = 0;
-      for (j = 0; j < r->filter_length; j++) {
-        weight = (x == 0) ? 1 : (sinx / x);
-/*printf("j %d sin %g cos %g\n",j,sinx,cosx); */
-/*printf("j %d sin %g x %g sinc %g\n",j,sinx,x,weight); */
-        c0 += weight * GETBUF ((start + j), 0);
-        c1 += weight * GETBUF ((start + j), 1);
-        t = cosx * cosd - sinx * sind;
-        sinx = cosx * sind + sinx * cosd;
-        cosx = t;
-        x += d;
-      }
-      o_ptr[0] = c0;
-      o_ptr[1] = c1;
-      o_ptr += 2;
-      a += r->o_inc;
-    }
-  }
-#undef GETBUF
-
-  memcpy (r->buffer,
-      i_ptr + (r->i_samples - r->filter_length) * r->channels,
-      r->filter_length * sizeof (float) * r->channels);
-}
-
-/* only works for channels == 2 ???? */
-void
-gst_resample_sinc_float (gst_resample_t * r)
-{
-  double *ptr;
-  float *o_ptr;
-  int i, j;
-  double c0, c1;
-  double a;
-  int start;
-  double center;
-  double weight;
-  double x0, x, d;
-  double scale;
-
-  ptr = (double *) r->buffer;
-  o_ptr = (float *) r->o_buf;
-
-  /* scale provides a cutoff frequency for the low
-   * pass filter aspects of sinc().  scale=M_PI
-   * will cut off at the input frequency, which is
-   * good for up-sampling, but will cause aliasing
-   * for downsampling.  Downsampling needs to be
-   * cut off at o_rate, thus scale=M_PI*r->i_inc. */
-  /* actually, it needs to be M_PI*r->i_inc*r->i_inc.
-   * Need to research why. */
-  scale = M_PI * r->i_inc;
-  for (i = 0; i < r->o_samples; i++) {
-    a = r->o_start + i * r->o_inc;
-    start = floor (a - r->halftaps);
-/*printf("%d: a=%g start=%d end=%d\n",i,a,start,start+r->filter_length-1); */
-    center = a;
-    /*x = M_PI * (start - center) * r->o_inc; */
-    /*d = M_PI * r->o_inc; */
-    /*x = (start - center) * r->o_inc; */
-    x0 = (start - center) * r->o_inc;
-    d = r->o_inc;
-    c0 = 0;
-    c1 = 0;
-    for (j = 0; j < r->filter_length; j++) {
-      x = x0 + d * j;
-      weight = sinc (x * scale * r->i_inc) * scale / M_PI;
-      weight *= window_func (x / r->halftaps * r->i_inc);
-      c0 += weight * ptr[(start + j + r->filter_length) * 2 + 0];
-      c1 += weight * ptr[(start + j + r->filter_length) * 2 + 1];
-    }
-    o_ptr[0] = c0;
-    o_ptr[1] = c1;
-    o_ptr += 2;
-  }
-}
-
-void
-gst_resample_sinc_ft_float (gst_resample_t * r)
-{
-  double *ptr;
-  float *o_ptr;
-  int i;
-
-  /*int j; */
-  double c0, c1;
-
-  /*double a; */
-  double start_f, start_x;
-  int start;
-  double center;
-
-  /*double weight; */
-  double x, d;
-  double scale;
-  int n = 4;
-  double *out_tmp;
-
-  if (r->hack_union.s.out_tmp_len < r->o_samples) {
-    r->hack_union.s.out_tmp = realloc (r->hack_union.s.out_tmp,
-        r->o_samples * 2 * sizeof (double));
-    r->hack_union.s.out_tmp_len = r->o_samples;
-  }
-  out_tmp = r->hack_union.s.out_tmp;
-
-  scale = r->i_inc;             /* cutoff at 22050 */
-  /*scale = 1.0;          // cutoff at 24000 */
-  /*scale = r->i_inc * 0.5;       // cutoff at 11025 */
-
-  if (!ft) {
-    ft = malloc (sizeof (*ft));
-    memset (ft, 0, sizeof (*ft));
-
-    ft->len = (r->filter_length + 2) * n;
-    ft->offset = 1.0 / n;
-    ft->start = -ft->len * 0.5 * ft->offset;
-
-    ft->func_x = functable_sinc;
-    ft->func_dx = functable_dsinc;
-    ft->scale = M_PI * scale;
-
-    ft->func2_x = functable_window_std;
-    ft->func2_dx = functable_window_dstd;
-    ft->scale2 = 1.0 / r->halftaps;
-
-    functable_init (ft);
-
-    /*printf("len=%d offset=%g start=%g\n",ft->len,ft->offset,ft->start); */
-  }
-
-  ptr = r->buffer;
-  o_ptr = (float *) r->o_buf;
-
-  center = r->o_start;
-  start_x = center - r->halftaps;
-  start_f = floor (start_x);
-  start_x -= start_f;
-  start = start_f;
-  for (i = 0; i < r->o_samples; i++) {
-    /*start_f = floor(center - r->halftaps); */
-/*printf("%d: a=%g start=%d end=%d\n",i,a,start,start+r->filter_length-1); */
-    x = start_f - center;
-    d = 1;
-    c0 = 0;
-    c1 = 0;
-/*#define slow */
-#ifdef slow
-    for (j = 0; j < r->filter_length; j++) {
-      weight = functable_eval (ft, x) * scale;
-      /*weight = sinc(M_PI * scale * x)*scale*r->i_inc; */
-      /*weight *= window_func(x / r->halftaps); */
-      c0 += weight * ptr[(start + j + r->filter_length) * 2 + 0];
-      c1 += weight * ptr[(start + j + r->filter_length) * 2 + 1];
-      x += d;
-    }
-#else
-    functable_fir2 (ft,
-        &c0, &c1, x, n, ptr + (start + r->filter_length) * 2, r->filter_length);
-    c0 *= scale;
-    c1 *= scale;
-#endif
-
-    out_tmp[2 * i + 0] = c0;
-    out_tmp[2 * i + 1] = c1;
-    center += r->o_inc;
-    start_x += r->o_inc;
-    while (start_x >= 1.0) {
-      start_f++;
-      start_x -= 1.0;
-      start++;
-    }
-  }
-
-  if (r->channels == 2) {
-    conv_float_double (r->o_buf, out_tmp, 2 * r->o_samples);
-  } else {
-    conv_float_double_sstr (r->o_buf, out_tmp, r->o_samples,
-        2 * sizeof (double));
-  }
-}
-
-static gboolean
-plugin_init (GstPlugin * plugin)
-{
-  return TRUE;
-}
-
-GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
-    GST_VERSION_MINOR,
-    "gstresample",
-    "Resampling routines for use in audio plugins",
-    plugin_init, VERSION, GST_LICENSE, GST_PACKAGE, GST_ORIGIN);
diff --git a/gst-libs/gst/resample/resample.h b/gst-libs/gst/resample/resample.h
deleted file mode 100644 (file)
index 111c201..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-/* Resampling library
- * Copyright (C) <2001> David Schleef <ds@schleef.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-
-#ifndef __GST_RESAMPLE_H__
-#define __GST_RESAMPLE_H__
-
-#include <glib.h>
-
-G_BEGIN_DECLS
-
-typedef enum {
-       GST_RESAMPLE_NEAREST = 0,
-       GST_RESAMPLE_BILINEAR,
-       GST_RESAMPLE_SINC_SLOW,
-       GST_RESAMPLE_SINC,
-} gst_resample_method;
-
-typedef enum {
-       GST_RESAMPLE_S16 = 0,
-       GST_RESAMPLE_FLOAT
-} gst_resample_format;
-
-typedef struct gst_resample_s gst_resample_t;
-
-struct gst_resample_s {
-       /* parameters */
-
-       gst_resample_method method;
-       int channels;
-       int verbose;
-       gst_resample_format format;
-
-       int filter_length;
-
-       double i_rate;
-       double o_rate;
-
-       void *priv;
-
-       void *(*get_buffer)(void *priv, unsigned int size);
-
-       /* internal parameters */
-
-       double halftaps;
-
-       /* filter state */
-
-       void *buffer;
-       int buffer_len;
-
-       double i_start;
-       double o_start;
-
-       double i_start_buf;
-       double i_end_buf;
-
-       double i_inc;
-       double o_inc;
-
-       double i_end;
-       double o_end;
-
-       int i_samples;
-       int o_samples;
-
-       void *i_buf, *o_buf;
-
-       double acc[2];
-        union {
-          struct {
-            double *out_tmp;
-            int out_tmp_len;
-          } s;
-          double padding[8];
-        } hack_union;
-
-       /* methods */
-       void (*scale)(gst_resample_t *r);
-
-       double ack;
-
-};
-
-void gst_resample_init(gst_resample_t *r);
-
-void gst_resample_reinit(gst_resample_t *r);
-
-void gst_resample_close (gst_resample_t * r);
-
-void gst_resample_scale(gst_resample_t *r, void *i_buf, unsigned int size);
-
-G_END_DECLS
-
-#endif /* __GST_RESAMPLE_H__ */
diff --git a/gst-libs/gst/resample/resample.vcproj b/gst-libs/gst/resample/resample.vcproj
deleted file mode 100644 (file)
index 18d8812..0000000
+++ /dev/null
@@ -1,156 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
-       ProjectType="Visual C++"
-       Version="7.10"
-       Name="resample"
-       ProjectGUID="{979C216F-0ACF-4956-AE00-055A42D6789B}"
-       RootNamespace="resample"
-       Keyword="Win32Proj">
-       <Platforms>
-               <Platform
-                       Name="Win32"/>
-       </Platforms>
-       <Configurations>
-               <Configuration
-                       Name="Debug|Win32"
-                       OutputDirectory="../../../win32/Debug"
-                       IntermediateDirectory="../../../win32/Debug"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               Optimization="0"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               MinimalRebuild="TRUE"
-                               BasicRuntimeChecks="3"
-                               RuntimeLibrary="3"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="4"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstresample.dll"
-                               LinkIncremental="2"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Debug;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile="resample.def"
-                               GenerateDebugInformation="TRUE"
-                               ProgramDatabaseFile="$(OutDir)/resample.pdb"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               ImportLibrary="$(OutDir)/gstresample.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-               <Configuration
-                       Name="Release|Win32"
-                       OutputDirectory="../../../win32/Release"
-                       IntermediateDirectory="../../../win32/Release"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;NDEBUG;GST_DISABLE_GST_DEBUG;_WINDOWS;_USRDLL;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               RuntimeLibrary="2"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="3"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstresample.dll"
-                               LinkIncremental="1"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Release;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile="resample.def"
-                               GenerateDebugInformation="TRUE"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               EnableCOMDATFolding="2"
-                               ImportLibrary="$(OutDir)/gstresample.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-       </Configurations>
-       <References>
-       </References>
-       <Files>
-               <Filter
-                       Name="Source Files"
-                       Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
-                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
-                       <File
-                               RelativePath=".\resample.c">
-                       </File>
-                       <File
-                               RelativePath=".\dtos.c">
-                       </File>
-                       <File
-                               RelativePath=".\dtof.c">
-                       </File>
-                       <File
-                               RelativePath=".\functable.c">
-                       </File>
-               </Filter>
-               <Filter
-                       Name="Header Files"
-                       Filter="h;hpp;hxx;hm;inl;inc;xsd"
-                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
-                       <File
-                               RelativePath=".\resample.h">
-                       </File>
-                       <File
-                               RelativePath=".\private.h">
-                       </File>
-               </Filter>
-       </Files>
-       <Globals>
-       </Globals>
-</VisualStudioProject>
diff --git a/gst-libs/gst/resample/test.c b/gst-libs/gst/resample/test.c
deleted file mode 100644 (file)
index d6785ae..0000000
+++ /dev/null
@@ -1,375 +0,0 @@
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <math.h>
-#include <sys/time.h>
-
-#include <resample.h>
-
-#define AMP 16000
-#define I_RATE 48000
-#define O_RATE 44100
-/*#define O_RATE 24000 */
-
-/*#define test_func(x) 1 */
-/*#define test_func(x) sin(2*M_PI*(x)*10) */
-/*#define test_func(x) sin(2*M_PI*(x)*(x)*1000) */
-#define test_func(x) sin(2*M_PI*(x)*(x)*12000)
-
-short i_buf[I_RATE * 2 * 2];
-short o_buf[O_RATE * 2 * 2];
-
-static int i_offset;
-static int o_offset;
-
-FILE *out;
-
-void test_res1 (void);
-void test_res2 (void);
-void test_res3 (void);
-void test_res4 (void);
-void test_res5 (void);
-void test_res6 (void);
-void test_res7 (void);
-
-int
-main (int argc, char *argv[])
-{
-  out = fopen ("out", "w");
-
-  test_res7 ();
-
-  return 0;
-}
-
-void *
-get_buffer (void *priv, unsigned int size)
-{
-  void *ret;
-
-  ret = ((void *) o_buf) + o_offset;
-  o_offset += size;
-  return ret;
-}
-
-struct timeval start_time;
-void
-start_timer (void)
-{
-  gettimeofday (&start_time, NULL);
-  /*printf("start %ld.%06ld\n",start_time.tv_sec,start_time.tv_usec); */
-}
-
-void
-end_timer (void)
-{
-  struct timeval end_time;
-  double diff;
-
-  gettimeofday (&end_time, NULL);
-  /*printf("end %ld.%06ld\n",end_time.tv_sec,end_time.tv_usec); */
-  diff = (end_time.tv_sec - start_time.tv_sec) +
-      1e-6 * (end_time.tv_usec - start_time.tv_usec);
-
-  printf ("time %g\n", diff);
-
-}
-
-void
-test_res1 (void)
-{
-  resample_t *r;
-  int i;
-  double sum10k, sum22k;
-  double f;
-  int n10k, n22k;
-  double x;
-
-  for (i = 0; i < I_RATE; i++) {
-    i_buf[i * 2 + 0] = rint (AMP * test_func ((double) i / I_RATE));
-    /*i_buf[i*2+1] = rint(AMP * test_func((double)i/I_RATE)); */
-    i_buf[i * 2 + 1] = (i < 1000) ? AMP : 0;
-  }
-
-  r = malloc (sizeof (resample_t));
-  memset (r, 0, sizeof (resample_t));
-
-  r->i_rate = I_RATE;
-  r->o_rate = O_RATE;
-  /*r->method = RESAMPLE_SINC_SLOW; */
-  r->method = RESAMPLE_SINC;
-  r->channels = 2;
-  /*r->verbose = 1; */
-  r->filter_length = 64;
-  r->get_buffer = get_buffer;
-
-  resample_init (r);
-
-  start_timer ();
-#define blocked
-#ifdef blocked
-  for (i = 0; i + 256 < I_RATE; i += 256) {
-    resample_scale (r, i_buf + i * 2, 256 * 2 * 2);
-  }
-  if (I_RATE - i) {
-    resample_scale (r, i_buf + i * 2, (I_RATE - i) * 2 * 2);
-  }
-#else
-  resample_scale (r, i_buf, I_RATE * 2 * 2);
-#endif
-  end_timer ();
-
-  for (i = 0; i < O_RATE; i++) {
-    f = AMP * test_func ((double) i / O_RATE);
-    /*f = rint(AMP*test_func((double)i/O_RATE)); */
-    fprintf (out, "%d %d %d %g %g\n", i,
-        o_buf[2 * i + 0], o_buf[2 * i + 1], f, o_buf[2 * i + 0] - f);
-  }
-
-  sum10k = 0;
-  sum22k = 0;
-  n10k = 0;
-  n22k = 0;
-  for (i = 0; i < O_RATE; i++) {
-    f = AMP * test_func ((double) i / O_RATE);
-    /*f = rint(AMP*test_func((double)i/O_RATE)); */
-    x = o_buf[2 * i + 0] - f;
-    if (((0.5 * i) / O_RATE * I_RATE) < 10000) {
-      sum10k += x * x;
-      n10k++;
-    }
-    if (((0.5 * i) / O_RATE * I_RATE) < 22050) {
-      sum22k += x * x;
-      n22k++;
-    }
-  }
-  printf ("average error 10k=%g 22k=%g\n",
-      sqrt (sum10k / n10k), sqrt (sum22k / n22k));
-}
-
-
-void
-test_res2 (void)
-{
-  functable_t *t;
-  int i;
-  double x;
-  double f1, f2;
-
-  t = malloc (sizeof (*t));
-  memset (t, 0, sizeof (*t));
-
-  t->start = -50.0;
-  t->offset = 1;
-  t->len = 100;
-
-  t->func_x = functable_sinc;
-  t->func_dx = functable_dsinc;
-
-  functable_init (t);
-
-  for (i = 0; i < 1000; i++) {
-    x = -50.0 + 0.1 * i;
-    f1 = functable_sinc (NULL, x);
-    f2 = functable_eval (t, x);
-    fprintf (out, "%d %g %g %g\n", i, f1, f2, f1 - f2);
-  }
-}
-
-void
-test_res3 (void)
-{
-  functable_t *t;
-  int i;
-  double x;
-  double f1, f2;
-  int n = 1;
-
-  t = malloc (sizeof (*t));
-  memset (t, 0, sizeof (*t));
-
-  t->start = -50.0;
-  t->offset = 1.0 / n;
-  t->len = 100 * n;
-
-  t->func_x = functable_sinc;
-  t->func_dx = functable_dsinc;
-
-  t->func2_x = functable_window_std;
-  t->func2_dx = functable_window_dstd;
-
-  t->scale = 1.0;
-  t->scale2 = 1.0 / (M_PI * 16);
-
-  functable_init (t);
-
-  for (i = 0; i < 1000 * n; i++) {
-    x = -50.0 + 0.1 / n * i;
-    f1 = functable_sinc (NULL, t->scale * x) *
-        functable_window_std (NULL, t->scale2 * x);
-    f2 = functable_eval (t, x);
-    fprintf (out, "%d %g %g %g\n", i, f1, f2, f2 - f1);
-  }
-}
-
-double
-sinc_poly (double x)
-{
-#define INV3FAC 1.66666666666666666e-1
-#define INV5FAC 8.33333333333333333e-3
-#define INV7FAC 1.984126984e-4
-#define INV9FAC 2.755731922e-6
-#define INV11FAC 2.505210839e-8
-  double x2 = x * x;
-
-  return 1 - x2 * INV3FAC + x2 * x2 * INV5FAC - x2 * x2 * x2 * INV7FAC;
-  /*+ x2 * x2 * x2 * x2 * INV9FAC */
-                /*- x2 * x2 * x2 * x2 * x2 * INV11FAC; */
-}
-
-void
-test_res4 (void)
-{
-  int i;
-  double x, f1, f2;
-
-  for (i = 1; i < 100; i++) {
-    x = 0.01 * i;
-    f1 = 1 - sin (x) / x;
-    f2 = 1 - sinc_poly (x);
-
-    fprintf (out, "%g %.20g %.20g %.20g\n", x, f1, f2, f2 - f1);
-  }
-}
-
-
-void
-test_res5 (void)
-{
-  int i;
-  double sum;
-
-  start_timer ();
-  sum = 0;
-  for (i = 0; i < I_RATE; i++) {
-    sum += i_buf[i * 2];
-  }
-  end_timer ();
-  i_buf[0] = sum;
-}
-
-
-void
-short_to_double (double *d, short *x)
-{
-  *d = *x;
-}
-
-void
-short_to_float (float *f, short *x)
-{
-  *f = *x;
-}
-
-void
-float_to_double (double *f, float *x)
-{
-  *f = *x;
-}
-
-void
-double_to_short (short *f, double *x)
-{
-  *f = *x;
-}
-
-double res6_tmp[1000];
-
-void
-test_res6 (void)
-{
-  int i;
-
-  for (i = 0; i < I_RATE; i++) {
-    i_buf[i] = rint (AMP * test_func ((double) i / I_RATE));
-  }
-
-  conv_double_short_ref (res6_tmp, i_buf, 1000);
-  for (i = 0; i < 1000; i++) {
-    res6_tmp[i] *= 3.0;
-  }
-  conv_short_double_ppcasm (o_buf, res6_tmp, 1000);
-
-  for (i = 0; i < 1000; i++) {
-    fprintf (out, "%d %d %g %d\n", i, i_buf[i], res6_tmp[i], o_buf[i]);
-  }
-}
-
-void
-test_res7 (void)
-{
-  resample_t *r;
-  int i;
-  double sum10k, sum22k;
-  double f;
-  int n10k, n22k;
-  double x;
-
-  for (i = 0; i < I_RATE; i++) {
-    i_buf[i] = rint (AMP * test_func ((double) i / I_RATE));
-  }
-
-  r = malloc (sizeof (resample_t));
-  memset (r, 0, sizeof (resample_t));
-
-  r->i_rate = I_RATE;
-  r->o_rate = O_RATE;
-  /*r->method = RESAMPLE_SINC_SLOW; */
-  r->method = RESAMPLE_SINC;
-  r->channels = 1;
-  /*r->verbose = 1; */
-  r->filter_length = 64;
-  r->get_buffer = get_buffer;
-
-  resample_init (r);
-
-  start_timer ();
-#define blocked
-#ifdef blocked
-  for (i = 0; i + 256 < I_RATE; i += 256) {
-    resample_scale (r, i_buf + i, 256 * 2);
-  }
-  if (I_RATE - i) {
-    resample_scale (r, i_buf + i, (I_RATE - i) * 2);
-  }
-#else
-  resample_scale (r, i_buf, I_RATE * 2);
-#endif
-  end_timer ();
-
-  for (i = 0; i < O_RATE; i++) {
-    f = AMP * test_func ((double) i / O_RATE);
-    /*f = rint(AMP*test_func((double)i/O_RATE)); */
-    fprintf (out, "%d %d %d %g %g\n", i, o_buf[i], 0, f, o_buf[i] - f);
-  }
-
-  sum10k = 0;
-  sum22k = 0;
-  n10k = 0;
-  n22k = 0;
-  for (i = 0; i < O_RATE; i++) {
-    f = AMP * test_func ((double) i / O_RATE);
-    /*f = rint(AMP*test_func((double)i/O_RATE)); */
-    x = o_buf[i] - f;
-    if (((0.5 * i) / O_RATE * I_RATE) < 10000) {
-      sum10k += x * x;
-      n10k++;
-    }
-    if (((0.5 * i) / O_RATE * I_RATE) < 22050) {
-      sum22k += x * x;
-      n22k++;
-    }
-  }
-  printf ("average error 10k=%g 22k=%g\n",
-      sqrt (sum10k / n10k), sqrt (sum22k / n22k));
-}
diff --git a/gst-libs/gst/riff/Makefile.am b/gst-libs/gst/riff/Makefile.am
deleted file mode 100644 (file)
index 03cd8d5..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-plugin_LTLIBRARIES = libgstriff.la
-
-libgstriff_la_SOURCES = \
-       riff.c \
-       riff-media.c \
-       riff-read.c
-
-libgstriffincludedir = $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/riff
-libgstriffinclude_HEADERS = \
-       riff-ids.h \
-       riff-media.h \
-       riff-read.h
-
-libgstriff_la_LIBADD =
-libgstriff_la_CFLAGS = $(GST_CFLAGS)
-libgstriff_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
diff --git a/gst-libs/gst/riff/riff-ids.h b/gst-libs/gst/riff/riff-ids.h
deleted file mode 100644 (file)
index e311f9e..0000000
+++ /dev/null
@@ -1,335 +0,0 @@
-/* GStreamer RIFF I/O
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * riff-ids.h: RIFF IDs and structs
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __GST_RIFF_IDS_H__
-#define __GST_RIFF_IDS_H__
-
-#include <gst/gst.h>
-
-G_BEGIN_DECLS
-
-/* RIFF types */
-#define GST_RIFF_RIFF_WAVE GST_MAKE_FOURCC ('W','A','V','E')
-#define GST_RIFF_RIFF_AVI  GST_MAKE_FOURCC ('A','V','I',' ')
-#define GST_RIFF_RIFF_CDXA GST_MAKE_FOURCC ('C','D','X','A')
-
-/* tags */
-#define GST_RIFF_TAG_RIFF GST_MAKE_FOURCC ('R','I','F','F')
-#define GST_RIFF_TAG_RIFX GST_MAKE_FOURCC ('R','I','F','X')
-#define GST_RIFF_TAG_LIST GST_MAKE_FOURCC ('L','I','S','T')
-#define GST_RIFF_TAG_avih GST_MAKE_FOURCC ('a','v','i','h')
-#define GST_RIFF_TAG_strd GST_MAKE_FOURCC ('s','t','r','d')
-#define GST_RIFF_TAG_strn GST_MAKE_FOURCC ('s','t','r','n')
-#define GST_RIFF_TAG_strh GST_MAKE_FOURCC ('s','t','r','h')
-#define GST_RIFF_TAG_strf GST_MAKE_FOURCC ('s','t','r','f')
-#define GST_RIFF_TAG_vedt GST_MAKE_FOURCC ('v','e','d','t')
-#define GST_RIFF_TAG_JUNK GST_MAKE_FOURCC ('J','U','N','K')
-#define GST_RIFF_TAG_idx1 GST_MAKE_FOURCC ('i','d','x','1')
-#define GST_RIFF_TAG_dmlh GST_MAKE_FOURCC ('d','m','l','h')
-/* WAV stuff */
-#define GST_RIFF_TAG_fmt  GST_MAKE_FOURCC ('f','m','t',' ')
-#define GST_RIFF_TAG_data GST_MAKE_FOURCC ('d','a','t','a')
-#define GST_RIFF_TAG_plst GST_MAKE_FOURCC ('p','l','s','t')
-#define GST_RIFF_TAG_cue  GST_MAKE_FOURCC ('c','u','e',' ')
-/* LIST types */
-#define GST_RIFF_LIST_movi GST_MAKE_FOURCC ('m','o','v','i')
-#define GST_RIFF_LIST_hdrl GST_MAKE_FOURCC ('h','d','r','l')
-#define GST_RIFF_LIST_odml GST_MAKE_FOURCC ('o','d','m','l')
-#define GST_RIFF_LIST_strl GST_MAKE_FOURCC ('s','t','r','l')
-#define GST_RIFF_LIST_INFO GST_MAKE_FOURCC ('I','N','F','O')
-#define GST_RIFF_LIST_AVIX GST_MAKE_FOURCC ('A','V','I','X')
-#define GST_RIFF_LIST_adtl GST_MAKE_FOURCC ('a','d','t','l')
-
-/* fcc types */
-#define GST_RIFF_FCC_vids GST_MAKE_FOURCC ('v','i','d','s')
-#define GST_RIFF_FCC_auds GST_MAKE_FOURCC ('a','u','d','s')
-#define GST_RIFF_FCC_pads GST_MAKE_FOURCC ('p','a','d','s')
-#define GST_RIFF_FCC_txts GST_MAKE_FOURCC ('t','x','t','s')
-#define GST_RIFF_FCC_vidc GST_MAKE_FOURCC ('v','i','d','c')
-#define GST_RIFF_FCC_iavs GST_MAKE_FOURCC ('i','a','v','s')
-/* fcc handlers */
-#define GST_RIFF_FCCH_RLE  GST_MAKE_FOURCC ('R','L','E',' ')
-#define GST_RIFF_FCCH_msvc GST_MAKE_FOURCC ('m','s','v','c')
-#define GST_RIFF_FCCH_MSVC GST_MAKE_FOURCC ('M','S','V','C')
-
-/* INFO types - see http://www.saettler.com/RIFFMCI/riffmci.html */
-#define GST_RIFF_INFO_IARL GST_MAKE_FOURCC ('I','A','R','L') /* location */
-#define GST_RIFF_INFO_IART GST_MAKE_FOURCC ('I','A','R','T') /* artist */
-#define GST_RIFF_INFO_ICMS GST_MAKE_FOURCC ('I','C','M','S') /* commissioned */
-#define GST_RIFF_INFO_ICMT GST_MAKE_FOURCC ('I','C','M','T') /* comment */
-#define GST_RIFF_INFO_ICOP GST_MAKE_FOURCC ('I','C','O','P') /* copyright */
-#define GST_RIFF_INFO_ICRD GST_MAKE_FOURCC ('I','C','R','D') /* creation date */
-#define GST_RIFF_INFO_ICRP GST_MAKE_FOURCC ('I','C','R','P') /* cropped */
-#define GST_RIFF_INFO_IDIM GST_MAKE_FOURCC ('I','D','I','M') /* dimensions */
-#define GST_RIFF_INFO_IDPI GST_MAKE_FOURCC ('I','D','P','I') /* dots-per-inch */
-#define GST_RIFF_INFO_IENG GST_MAKE_FOURCC ('I','E','N','G') /* engineer(s) */
-#define GST_RIFF_INFO_IGNR GST_MAKE_FOURCC ('I','G','N','R') /* genre */
-#define GST_RIFF_INFO_IKEY GST_MAKE_FOURCC ('I','K','E','Y') /* keywords */
-#define GST_RIFF_INFO_ILGT GST_MAKE_FOURCC ('I','L','G','T') /* lightness */
-#define GST_RIFF_INFO_IMED GST_MAKE_FOURCC ('I','M','E','D') /* medium */
-#define GST_RIFF_INFO_INAM GST_MAKE_FOURCC ('I','N','A','M') /* name */
-#define GST_RIFF_INFO_IPLT GST_MAKE_FOURCC ('I','P','L','T') /* palette setting */
-#define GST_RIFF_INFO_IPRD GST_MAKE_FOURCC ('I','P','R','D') /* product */
-#define GST_RIFF_INFO_ISBJ GST_MAKE_FOURCC ('I','S','B','J') /* subject */
-#define GST_RIFF_INFO_ISFT GST_MAKE_FOURCC ('I','S','F','T') /* software */
-#define GST_RIFF_INFO_ISHP GST_MAKE_FOURCC ('I','S','H','P') /* sharpness */
-#define GST_RIFF_INFO_ISRC GST_MAKE_FOURCC ('I','S','R','C') /* source */
-#define GST_RIFF_INFO_ISRF GST_MAKE_FOURCC ('I','S','R','F') /* source form */
-#define GST_RIFF_INFO_ITCH GST_MAKE_FOURCC ('I','T','C','H') /* technician(s) */
-
-/*********Chunk Names***************/
-#define GST_RIFF_FF00 GST_MAKE_FOURCC (0xFF,0xFF,0x00,0x00)
-#define GST_RIFF_00   GST_MAKE_FOURCC ('0', '0',0x00,0x00)
-#define GST_RIFF_01   GST_MAKE_FOURCC ('0', '1',0x00,0x00)
-#define GST_RIFF_02   GST_MAKE_FOURCC ('0', '2',0x00,0x00)
-#define GST_RIFF_03   GST_MAKE_FOURCC ('0', '3',0x00,0x00)
-#define GST_RIFF_04   GST_MAKE_FOURCC ('0', '4',0x00,0x00)
-#define GST_RIFF_05   GST_MAKE_FOURCC ('0', '5',0x00,0x00)
-#define GST_RIFF_06   GST_MAKE_FOURCC ('0', '6',0x00,0x00)
-#define GST_RIFF_07   GST_MAKE_FOURCC ('0', '7',0x00,0x00)
-#define GST_RIFF_00pc GST_MAKE_FOURCC ('0', '0', 'p', 'c')
-#define GST_RIFF_01pc GST_MAKE_FOURCC ('0', '1', 'p', 'c')
-#define GST_RIFF_00dc GST_MAKE_FOURCC ('0', '0', 'd', 'c')
-#define GST_RIFF_00dx GST_MAKE_FOURCC ('0', '0', 'd', 'x')
-#define GST_RIFF_00db GST_MAKE_FOURCC ('0', '0', 'd', 'b')
-#define GST_RIFF_00xx GST_MAKE_FOURCC ('0', '0', 'x', 'x')
-#define GST_RIFF_00id GST_MAKE_FOURCC ('0', '0', 'i', 'd')
-#define GST_RIFF_00rt GST_MAKE_FOURCC ('0', '0', 'r', 't')
-#define GST_RIFF_0021 GST_MAKE_FOURCC ('0', '0', '2', '1')
-#define GST_RIFF_00iv GST_MAKE_FOURCC ('0', '0', 'i', 'v')
-#define GST_RIFF_0031 GST_MAKE_FOURCC ('0', '0', '3', '1')
-#define GST_RIFF_0032 GST_MAKE_FOURCC ('0', '0', '3', '2')
-#define GST_RIFF_00vc GST_MAKE_FOURCC ('0', '0', 'v', 'c')
-#define GST_RIFF_00xm GST_MAKE_FOURCC ('0', '0', 'x', 'm')
-#define GST_RIFF_01wb GST_MAKE_FOURCC ('0', '1', 'w', 'b')
-#define GST_RIFF_01dc GST_MAKE_FOURCC ('0', '1', 'd', 'c')
-#define GST_RIFF_00__ GST_MAKE_FOURCC ('0', '0', '_', '_')
-
-/*********VIDEO CODECS**************/
-#define GST_RIFF_cram GST_MAKE_FOURCC ('c', 'r', 'a', 'm')
-#define GST_RIFF_CRAM GST_MAKE_FOURCC ('C', 'R', 'A', 'M')
-#define GST_RIFF_wham GST_MAKE_FOURCC ('w', 'h', 'a', 'm')
-#define GST_RIFF_WHAM GST_MAKE_FOURCC ('W', 'H', 'A', 'M')
-#define GST_RIFF_rgb  GST_MAKE_FOURCC (0x00,0x00,0x00,0x00)
-#define GST_RIFF_RGB  GST_MAKE_FOURCC ('R', 'G', 'B', ' ')
-#define GST_RIFF_rle8 GST_MAKE_FOURCC (0x01,0x00,0x00,0x00)
-#define GST_RIFF_RLE8 GST_MAKE_FOURCC ('R', 'L', 'E', '8')
-#define GST_RIFF_rle4 GST_MAKE_FOURCC (0x02,0x00,0x00,0x00)
-#define GST_RIFF_RLE4 GST_MAKE_FOURCC ('R', 'L', 'E', '4')
-#define GST_RIFF_none GST_MAKE_FOURCC (0x00,0x00,0xFF,0xFF)
-#define GST_RIFF_NONE GST_MAKE_FOURCC ('N', 'O', 'N', 'E')
-#define GST_RIFF_pack GST_MAKE_FOURCC (0x01,0x00,0xFF,0xFF)
-#define GST_RIFF_PACK GST_MAKE_FOURCC ('P', 'A', 'C', 'K')
-#define GST_RIFF_tran GST_MAKE_FOURCC (0x02,0x00,0xFF,0xFF)
-#define GST_RIFF_TRAN GST_MAKE_FOURCC ('T', 'R', 'A', 'N')
-#define GST_RIFF_ccc  GST_MAKE_FOURCC (0x03,0x00,0xFF,0xFF)
-#define GST_RIFF_CCC  GST_MAKE_FOURCC ('C', 'C', 'C', ' ')
-#define GST_RIFF_cyuv GST_MAKE_FOURCC ('c', 'y', 'u', 'v')
-#define GST_RIFF_CYUV GST_MAKE_FOURCC ('C', 'Y', 'U', 'V')
-#define GST_RIFF_jpeg GST_MAKE_FOURCC (0x04,0x00,0xFF,0xFF)
-#define GST_RIFF_JPEG GST_MAKE_FOURCC ('J', 'P', 'E', 'G')
-#define GST_RIFF_MJPG GST_MAKE_FOURCC ('M', 'J', 'P', 'G')
-#define GST_RIFF_mJPG GST_MAKE_FOURCC ('m', 'J', 'P', 'G')
-#define GST_RIFF_IJPG GST_MAKE_FOURCC ('I', 'J', 'P', 'G')
-#define GST_RIFF_rt21 GST_MAKE_FOURCC ('r', 't', '2', '1')
-#define GST_RIFF_RT21 GST_MAKE_FOURCC ('R', 'T', '2', '1')
-#define GST_RIFF_iv31 GST_MAKE_FOURCC ('i', 'v', '3', '1')
-#define GST_RIFF_IV31 GST_MAKE_FOURCC ('I', 'V', '3', '1')
-#define GST_RIFF_iv32 GST_MAKE_FOURCC ('i', 'v', '3', '2')
-#define GST_RIFF_IV32 GST_MAKE_FOURCC ('I', 'V', '3', '2')
-#define GST_RIFF_iv41 GST_MAKE_FOURCC ('i', 'v', '4', '1')
-#define GST_RIFF_IV41 GST_MAKE_FOURCC ('I', 'V', '4', '1')
-#define GST_RIFF_iv50 GST_MAKE_FOURCC ('i', 'v', '5', '0')
-#define GST_RIFF_IV50 GST_MAKE_FOURCC ('I', 'V', '5', '0')
-#define GST_RIFF_cvid GST_MAKE_FOURCC ('c', 'v', 'i', 'd')
-#define GST_RIFF_CVID GST_MAKE_FOURCC ('C', 'V', 'I', 'D')
-#define GST_RIFF_ULTI GST_MAKE_FOURCC ('U', 'L', 'T', 'I')
-#define GST_RIFF_ulti GST_MAKE_FOURCC ('u', 'l', 't', 'i')
-#define GST_RIFF_YUV9 GST_MAKE_FOURCC ('Y', 'V', 'U', '9')
-#define GST_RIFF_YVU9 GST_MAKE_FOURCC ('Y', 'U', 'V', '9')
-#define GST_RIFF_XMPG GST_MAKE_FOURCC ('X', 'M', 'P', 'G')
-#define GST_RIFF_xmpg GST_MAKE_FOURCC ('x', 'm', 'p', 'g')
-#define GST_RIFF_VDOW GST_MAKE_FOURCC ('V', 'D', 'O', 'W')
-#define GST_RIFF_MVI1 GST_MAKE_FOURCC ('M', 'V', 'I', '1')
-#define GST_RIFF_v422 GST_MAKE_FOURCC ('v', '4', '2', '2')
-#define GST_RIFF_V422 GST_MAKE_FOURCC ('V', '4', '2', '2')
-#define GST_RIFF_mvi1 GST_MAKE_FOURCC ('m', 'v', 'i', '1')
-#define GST_RIFF_MPIX GST_MAKE_FOURCC (0x04,0x00, 'i', '1')     /* MotionPixels munged their id */
-#define GST_RIFF_AURA GST_MAKE_FOURCC ('A', 'U', 'R', 'A')
-#define GST_RIFF_DMB1 GST_MAKE_FOURCC ('D', 'M', 'B', '1')
-#define GST_RIFF_dmb1 GST_MAKE_FOURCC ('d', 'm', 'b', '1')
-
-#define GST_RIFF_BW10 GST_MAKE_FOURCC ('B', 'W', '1', '0')
-#define GST_RIFF_bw10 GST_MAKE_FOURCC ('b', 'w', '1', '0')
-
-#define GST_RIFF_yuy2 GST_MAKE_FOURCC ('y', 'u', 'y', '2')
-#define GST_RIFF_YUY2 GST_MAKE_FOURCC ('Y', 'U', 'Y', '2')
-#define GST_RIFF_YUV8 GST_MAKE_FOURCC ('Y', 'U', 'V', '8')
-#define GST_RIFF_WINX GST_MAKE_FOURCC ('W', 'I', 'N', 'X')
-#define GST_RIFF_WPY2 GST_MAKE_FOURCC ('W', 'P', 'Y', '2')
-#define GST_RIFF_m263 GST_MAKE_FOURCC ('m', '2', '6', '3')
-#define GST_RIFF_M263 GST_MAKE_FOURCC ('M', '2', '6', '3')
-#define GST_RIFF_H263 GST_MAKE_FOURCC ('H', '2', '6', '3')
-#define GST_RIFF_i263 GST_MAKE_FOURCC ('i', '2', '6', '3')
-#define GST_RIFF_L263 GST_MAKE_FOURCC ('L', '2', '6', '3')
-#define GST_RIFF_x263 GST_MAKE_FOURCC ('x', '2', '6', '3')
-#define GST_RIFF_VSSH GST_MAKE_FOURCC ( 'V', 'S', 'S', 'H') /* H2.64 */
-
-#define GST_RIFF_Q1_0 GST_MAKE_FOURCC ('Q', '1',0x2e, '0')
-#define GST_RIFF_SFMC GST_MAKE_FOURCC ('S', 'F', 'M', 'C')
-
-#define GST_RIFF_y41p GST_MAKE_FOURCC ('y', '4', '1', 'p')
-#define GST_RIFF_Y41P GST_MAKE_FOURCC ('Y', '4', '1', 'P')
-#define GST_RIFF_yv12 GST_MAKE_FOURCC ('y', 'v', '1', '2')
-#define GST_RIFF_YV12 GST_MAKE_FOURCC ('Y', 'V', '1', '2')
-#define GST_RIFF_vixl GST_MAKE_FOURCC ('v', 'i', 'x', 'l')
-#define GST_RIFF_VIXL GST_MAKE_FOURCC ('V', 'I', 'X', 'L')
-#define GST_RIFF_iyuv GST_MAKE_FOURCC ('i', 'y', 'u', 'v')
-#define GST_RIFF_IYUV GST_MAKE_FOURCC ('I', 'Y', 'U', 'V')
-#define GST_RIFF_i420 GST_MAKE_FOURCC ('i', '4', '2', '0')
-#define GST_RIFF_I420 GST_MAKE_FOURCC ('I', '4', '2', '0')
-#define GST_RIFF_vyuy GST_MAKE_FOURCC ('v', 'y', 'u', 'y')
-#define GST_RIFF_VYUY GST_MAKE_FOURCC ('V', 'Y', 'U', 'Y')
-
-#define GST_RIFF_DIV3 GST_MAKE_FOURCC ('D', 'I', 'V', '3')
-
-#define GST_RIFF_rpza GST_MAKE_FOURCC ('r', 'p', 'z', 'a')
-/* And this here's the mistakes that need to be supported */
-#define GST_RIFF_azpr GST_MAKE_FOURCC ('a', 'z', 'p', 'r')  /* recognize Apple's rpza mangled? */
-
-/*********** FND in MJPG **********/
-#define GST_RIFF_ISFT GST_MAKE_FOURCC ('I', 'S', 'F', 'T')
-#define GST_RIFF_IDIT GST_MAKE_FOURCC ('I', 'D', 'I', 'T')
-
-#define GST_RIFF_00AM GST_MAKE_FOURCC ('0', '0', 'A', 'M')
-#define GST_RIFF_DISP GST_MAKE_FOURCC ('D', 'I', 'S', 'P')
-#define GST_RIFF_ISBJ GST_MAKE_FOURCC ('I', 'S', 'B', 'J')
-
-#define GST_RIFF_rec  GST_MAKE_FOURCC ('r', 'e', 'c', ' ')
-
-/* common data structures */
-typedef struct _gst_riff_strh {
-  guint32 type;             /* stream type */
-  guint32 fcc_handler;       /* fcc_handler */
-  guint32 flags;
-/* flags values */
-#define GST_RIFF_STRH_DISABLED        0x000000001
-#define GST_RIFF_STRH_VIDEOPALCHANGES 0x000010000
-  guint32 priority;
-  guint32 init_frames;       /* initial frames (???) */
-  guint32 scale;
-  guint32 rate;
-  guint32 start;
-  guint32 length;
-  guint32 bufsize;           /* suggested buffer size */
-  guint32 quality;
-  guint32 samplesize;
-  /* XXX 16 bytes ? */
-} gst_riff_strh;
-
-typedef struct _gst_riff_strf_vids {       /* == BitMapInfoHeader */
-  guint32 size;
-  guint32 width;
-  guint32 height;
-  guint16 planes;
-  guint16 bit_cnt;
-  guint32 compression;
-  guint32 image_size;
-  guint32 xpels_meter;
-  guint32 ypels_meter;
-  guint32 num_colors;        /* used colors */
-  guint32 imp_colors;        /* important colors */
-  /* may be more for some codecs */
-} gst_riff_strf_vids;
-
-
-typedef struct _gst_riff_strf_auds {       /* == WaveHeader (?) */
-  guint16 format;
-/**** from public Microsoft RIFF docs ******/
-#define GST_RIFF_WAVE_FORMAT_UNKNOWN        (0x0000)
-#define GST_RIFF_WAVE_FORMAT_PCM            (0x0001)
-#define GST_RIFF_WAVE_FORMAT_ADPCM          (0x0002)
-#define GST_RIFF_WAVE_FORMAT_IBM_CVSD       (0x0005)
-#define GST_RIFF_WAVE_FORMAT_ALAW           (0x0006)
-#define GST_RIFF_WAVE_FORMAT_MULAW          (0x0007)
-#define GST_RIFF_WAVE_FORMAT_OKI_ADPCM      (0x0010)
-#define GST_RIFF_WAVE_FORMAT_DVI_ADPCM      (0x0011)
-#define GST_RIFF_WAVE_FORMAT_DIGISTD        (0x0015)
-#define GST_RIFF_WAVE_FORMAT_DIGIFIX        (0x0016)
-#define GST_RIFF_WAVE_FORMAT_YAMAHA_ADPCM   (0x0020)
-#define GST_RIFF_WAVE_FORMAT_DSP_TRUESPEECH (0x0022)
-#define GST_RIFF_WAVE_FORMAT_GSM610         (0x0031)
-#define GST_RIFF_WAVE_FORMAT_MSN            (0x0032)
-#define GST_RIFF_WAVE_FORMAT_ITU_G721_ADPCM (0x0040)
-#define GST_RIFF_WAVE_FORMAT_MPEGL12        (0x0050)
-#define GST_RIFF_WAVE_FORMAT_MPEGL3         (0x0055)
-#define GST_RIFF_IBM_FORMAT_MULAW           (0x0101)
-#define GST_RIFF_IBM_FORMAT_ALAW            (0x0102)
-#define GST_RIFF_IBM_FORMAT_ADPCM           (0x0103)
-#define GST_RIFF_WAVE_FORMAT_WMAV1          (0x0160)
-#define GST_RIFF_WAVE_FORMAT_WMAV2          (0x0161)
-#define GST_RIFF_WAVE_FORMAT_WMAV3          (0x0162)
-#define GST_RIFF_WAVE_FORMAT_SONY_ATRAC3    (0x0270)
-#define GST_RIFF_WAVE_FORMAT_A52            (0x2000)
-#define GST_RIFF_WAVE_FORMAT_VORBIS1        (0x674f)
-#define GST_RIFF_WAVE_FORMAT_VORBIS2        (0x6750)
-#define GST_RIFF_WAVE_FORMAT_VORBIS3        (0x6751)
-#define GST_RIFF_WAVE_FORMAT_VORBIS1PLUS    (0x676f)
-#define GST_RIFF_WAVE_FORMAT_VORBIS2PLUS    (0x6770)
-#define GST_RIFF_WAVE_FORMAT_VORBIS3PLUS    (0x6771)
-#define GST_RIFF_WAVE_FORMAT_GSM_AMR_CBR    (0x7A21)
-#define GST_RIFF_WAVE_FORMAT_GSM_AMR_VBR    (0x7A22)
-  guint16 channels;
-  guint32 rate;
-  guint32 av_bps;
-  guint16 blockalign;
-  guint16 size;
-} gst_riff_strf_auds;
-
-typedef struct _gst_riff_strf_iavs {    
-  guint32 DVAAuxSrc;
-  guint32 DVAAuxCtl;
-  guint32 DVAAuxSrc1;
-  guint32 DVAAuxCtl1;
-  guint32 DVVAuxSrc;
-  guint32 DVVAuxCtl;
-  guint32 DVReserved1;
-  guint32 DVReserved2;
-} gst_riff_strf_iavs;
-
-typedef struct _gst_riff_index_entry {  
-  guint32 id;
-  guint32 flags;
-#define GST_RIFF_IF_LIST               (0x00000001L)
-#define GST_RIFF_IF_KEYFRAME           (0x00000010L)
-#define GST_RIFF_IF_NO_TIME            (0x00000100L)
-#define GST_RIFF_IF_COMPUSE            (0x0FFF0000L)
-  guint32 offset;
-  guint32 size;
-} gst_riff_index_entry;
-
-typedef struct _gst_riff_dmlh {
-  guint32 totalframes;
-} gst_riff_dmlh;
-
-G_END_DECLS
-
-#endif /* __GST_RIFF_IDS_H__ */
diff --git a/gst-libs/gst/riff/riff-media.c b/gst-libs/gst/riff/riff-media.c
deleted file mode 100644 (file)
index 2d3ac28..0000000
+++ /dev/null
@@ -1,713 +0,0 @@
-/* GStreamer RIFF I/O
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * riff-media.h: RIFF-id to/from caps routines
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "riff-ids.h"
-#include "riff-media.h"
-
-/**
- * gst_riff_create_video_caps_with_data:
- * @codec_fcc: fourCC codec for this codec.
- * @strh: pointer to the strh stream header structure.
- * @strf: pointer to the strf stream header structure, including any
- *        data that is within the range of strf.size, but excluding any
- *        additional data withint this chunk but outside strf.size.
- * @strf_data: a #GstBuffer containing the additional data in the strf
- *             chunk outside reach of strf.size. Ususally a palette.
- * @strd_data: a #GstBuffer containing the data in the strd stream header
- *             chunk. Usually codec initialization data.
- * @codec_name: if given, will be filled with a human-readable codec name.
- */
-
-GstCaps *
-gst_riff_create_video_caps_with_data (guint32 codec_fcc,
-    gst_riff_strh * strh, gst_riff_strf_vids * strf,
-    GstBuffer * strf_data, GstBuffer * strd_data, char **codec_name)
-{
-  GstCaps *caps = NULL;
-  GstBuffer *palette = NULL;
-
-  switch (codec_fcc) {
-    case GST_MAKE_FOURCC ('D', 'I', 'B', ' '):
-      caps = gst_caps_new_simple ("video/x-raw-rgb",
-          "bpp", G_TYPE_INT, 8,
-          "depth", G_TYPE_INT, 8, "endianness", G_TYPE_INT, G_BYTE_ORDER, NULL);
-      palette = strf_data;
-      strf_data = NULL;
-      if (codec_name)
-        *codec_name = g_strdup ("Palettized 8-bit RGB");
-      break;
-
-    case GST_MAKE_FOURCC ('I', '4', '2', '0'):
-      caps = gst_caps_new_simple ("video/x-raw-yuv",
-          "format", GST_TYPE_FOURCC, codec_fcc, NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Uncompressed planar YUV 4:2:0");
-      break;
-
-    case GST_MAKE_FOURCC ('Y', 'U', 'Y', '2'):
-      caps = gst_caps_new_simple ("video/x-raw-yuv",
-          "format", GST_TYPE_FOURCC, codec_fcc, NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Uncompressed packed YUV 4:2:2");
-      break;
-
-    case GST_MAKE_FOURCC ('M', 'J', 'P', 'G'): /* YUY2 MJPEG */
-      caps = gst_caps_new_simple ("image/jpeg", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Motion JPEG");
-      break;
-
-    case GST_MAKE_FOURCC ('J', 'P', 'E', 'G'): /* generic (mostly RGB) MJPEG */
-      caps = gst_caps_new_simple ("image/jpeg", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("JPEG Still Image");
-      break;
-
-    case GST_MAKE_FOURCC ('P', 'I', 'X', 'L'): /* Miro/Pinnacle fourccs */
-    case GST_MAKE_FOURCC ('V', 'I', 'X', 'L'): /* Miro/Pinnacle fourccs */
-      caps = gst_caps_new_simple ("image/jpeg", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Miro/Pinnacle Motion JPEG Video");
-      break;
-
-    case GST_MAKE_FOURCC ('H', 'F', 'Y', 'U'):
-      caps = gst_caps_new_simple ("video/x-huffyuv", NULL);
-      if (strf) {
-        gst_caps_set_simple (caps, "bpp",
-            G_TYPE_INT, (int) strf->bit_cnt, NULL);
-      }
-      if (codec_name)
-        *codec_name = g_strdup ("Huffman Lossless Codec");
-      break;
-
-    case GST_MAKE_FOURCC ('M', 'P', 'E', 'G'):
-    case GST_MAKE_FOURCC ('M', 'P', 'G', 'I'):
-    case GST_MAKE_FOURCC ('m', 'p', 'g', '1'):
-    case GST_MAKE_FOURCC ('M', 'P', 'G', '1'):
-      caps = gst_caps_new_simple ("video/mpeg",
-          "systemstream", G_TYPE_BOOLEAN, FALSE,
-          "mpegversion", G_TYPE_INT, 1, NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("MPEG video");
-      break;
-    case GST_MAKE_FOURCC ('M', 'P', 'G', '2'):
-    case GST_MAKE_FOURCC ('m', 'p', 'g', '2'):
-      caps = gst_caps_new_simple ("video/mpeg",
-          "systemstream", G_TYPE_BOOLEAN, FALSE,
-          "mpegversion", G_TYPE_INT, 2, NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("MPEG 2 video");
-      break;
-
-    case GST_MAKE_FOURCC ('H', '2', '6', '3'):
-      caps = gst_caps_new_simple ("video/x-h263", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("ITU H.26n");
-      break;
-
-    case GST_MAKE_FOURCC ('i', '2', '6', '3'):
-      caps = gst_caps_new_simple ("video/x-h263", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("ITU H.263");
-      break;
-
-    case GST_MAKE_FOURCC ('L', '2', '6', '3'):
-      caps = gst_caps_new_simple ("video/x-h263", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Lead H.263");
-      break;
-
-    case GST_MAKE_FOURCC ('M', '2', '6', '3'):
-    case GST_MAKE_FOURCC ('m', '2', '6', '3'):
-      caps = gst_caps_new_simple ("video/x-h263", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Microsoft H.263");
-      break;
-
-    case GST_MAKE_FOURCC ('V', 'D', 'O', 'W'):
-      caps = gst_caps_new_simple ("video/x-h263", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("VDOLive");
-      break;
-
-    case GST_MAKE_FOURCC ('V', 'I', 'V', 'O'):
-      caps = gst_caps_new_simple ("video/x-h263", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Vivo H.263");
-      break;
-
-    case GST_MAKE_FOURCC ('x', '2', '6', '3'):
-      caps = gst_caps_new_simple ("video/x-h263", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Xirlink H.263");
-      break;
-
-      /* apparently not standard H.263...? */
-    case GST_MAKE_FOURCC ('I', '2', '6', '3'):
-      caps = gst_caps_new_simple ("video/x-intel-h263", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Intel H.263");
-      break;
-
-    case GST_MAKE_FOURCC ('h', '2', '6', '4'):
-      caps = gst_caps_new_simple ("video/x-h264", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("ITU H.264");
-      break;
-
-    case GST_MAKE_FOURCC ('V', 'S', 'S', 'H'):
-      caps = gst_caps_new_simple ("video/x-h264", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("VideoSoft H.264");
-      break;
-
-    case GST_MAKE_FOURCC ('D', 'I', 'V', '3'):
-    case GST_MAKE_FOURCC ('d', 'i', 'v', '3'):
-    case GST_MAKE_FOURCC ('D', 'I', 'V', '4'):
-    case GST_MAKE_FOURCC ('d', 'i', 'v', '4'):
-    case GST_MAKE_FOURCC ('D', 'I', 'V', '5'):
-    case GST_MAKE_FOURCC ('d', 'i', 'v', '5'):
-    case GST_MAKE_FOURCC ('D', 'I', 'V', '6'):
-    case GST_MAKE_FOURCC ('d', 'i', 'v', '6'):
-      caps = gst_caps_new_simple ("video/x-divx",
-          "divxversion", G_TYPE_INT, 3, NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("DivX MS-MPEG-4 Version 3");
-      break;
-
-    case GST_MAKE_FOURCC ('d', 'i', 'v', 'x'):
-    case GST_MAKE_FOURCC ('D', 'I', 'V', 'X'):
-      caps = gst_caps_new_simple ("video/x-divx",
-          "divxversion", G_TYPE_INT, 4, NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("DivX MPEG-4 Version 4");
-      break;
-
-    case GST_MAKE_FOURCC ('B', 'L', 'Z', '0'):
-      caps = gst_caps_new_simple ("video/x-divx",
-          "divxversion", G_TYPE_INT, 4, NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Blizzard DivX");
-      break;
-
-    case GST_MAKE_FOURCC ('D', 'X', '5', '0'):
-      caps = gst_caps_new_simple ("video/x-divx",
-          "divxversion", G_TYPE_INT, 5, NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("DivX MPEG-4 Version 5");
-      break;
-
-    case GST_MAKE_FOURCC ('X', 'V', 'I', 'D'):
-    case GST_MAKE_FOURCC ('x', 'v', 'i', 'd'):
-      caps = gst_caps_new_simple ("video/x-xvid", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("XVID MPEG-4");
-      break;
-
-    case GST_MAKE_FOURCC ('M', 'P', 'G', '4'):
-    case GST_MAKE_FOURCC ('M', 'P', '4', 'S'):
-      caps = gst_caps_new_simple ("video/x-msmpeg",
-          "msmpegversion", G_TYPE_INT, 41, NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Microsoft MPEG-4 4.1");
-      break;
-
-    case GST_MAKE_FOURCC ('m', 'p', '4', '2'):
-    case GST_MAKE_FOURCC ('M', 'P', '4', '2'):
-      caps = gst_caps_new_simple ("video/x-msmpeg",
-          "msmpegversion", G_TYPE_INT, 42, NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Microsoft MPEG-4 4.2");
-      break;
-
-    case GST_MAKE_FOURCC ('m', 'p', '4', '3'):
-    case GST_MAKE_FOURCC ('M', 'P', '4', '3'):
-      caps = gst_caps_new_simple ("video/x-msmpeg",
-          "msmpegversion", G_TYPE_INT, 43, NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Microsoft MPEG-4 4.3");
-      break;
-
-    case GST_MAKE_FOURCC ('3', 'I', 'V', '1'):
-    case GST_MAKE_FOURCC ('3', 'I', 'V', '2'):
-      caps = gst_caps_new_simple ("video/x-3ivx", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("3ivx");
-      break;
-
-    case GST_MAKE_FOURCC ('D', 'V', 'S', 'D'):
-    case GST_MAKE_FOURCC ('d', 'v', 's', 'd'):
-      caps = gst_caps_new_simple ("video/x-dv",
-          "systemstream", G_TYPE_BOOLEAN, FALSE, NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Generic DV");
-      break;
-
-    case GST_MAKE_FOURCC ('W', 'M', 'V', '1'):
-      caps = gst_caps_new_simple ("video/x-wmv",
-          "wmvversion", G_TYPE_INT, 1, NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Microsoft Windows Media 7 (WMV1)");
-      break;
-
-    case GST_MAKE_FOURCC ('W', 'M', 'V', '2'):
-      caps = gst_caps_new_simple ("video/x-wmv",
-          "wmvversion", G_TYPE_INT, 2, NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Microsoft Windows Media 8 (WMV2)");
-      break;
-
-    case GST_MAKE_FOURCC ('W', 'M', 'V', '3'):
-      caps = gst_caps_new_simple ("video/x-wmv",
-          "wmvversion", G_TYPE_INT, 3, NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Microsoft Windows Media 9 (WMV3)");
-      break;
-
-    case GST_MAKE_FOURCC ('c', 'v', 'i', 'd'):
-      caps = gst_caps_new_simple ("video/x-cinepak", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Cinepak video");
-      break;
-
-    case GST_MAKE_FOURCC ('M', 'S', 'V', 'C'):
-    case GST_MAKE_FOURCC ('m', 's', 'v', 'c'):
-    case GST_MAKE_FOURCC ('C', 'R', 'A', 'M'):
-    case GST_MAKE_FOURCC ('c', 'r', 'a', 'm'):
-    case GST_MAKE_FOURCC ('W', 'H', 'A', 'M'):
-    case GST_MAKE_FOURCC ('w', 'h', 'a', 'm'):
-      caps = gst_caps_new_simple ("video/x-msvideocodec",
-          "msvideoversion", G_TYPE_INT, 1, NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("MS video v1");
-      break;
-
-    case GST_MAKE_FOURCC ('R', 'L', 'E', ' '):
-    case GST_MAKE_FOURCC ('m', 'r', 'l', 'e'):
-    case GST_MAKE_FOURCC (0x1, 0x0, 0x0, 0x0): /* why, why, why? */
-      caps = gst_caps_new_simple ("video/x-rle",
-          "layout", G_TYPE_STRING, "microsoft", NULL);
-      palette = strf_data;
-      strf_data = NULL;
-      if (strf) {
-        gst_caps_set_simple (caps,
-            "depth", G_TYPE_INT, (gint) strf->bit_cnt, NULL);
-      } else {
-        gst_caps_set_simple (caps, "depth", GST_TYPE_INT_RANGE, 1, 64, NULL);
-      }
-      if (codec_name)
-        *codec_name = g_strdup ("Microsoft RLE");
-      break;
-
-    case GST_MAKE_FOURCC ('X', 'x', 'a', 'n'):
-      caps = gst_caps_new_simple ("video/x-xan",
-          "wcversion", G_TYPE_INT, 4, NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Xan Wing Commander 4");
-      break;
-
-    case GST_MAKE_FOURCC ('I', 'V', '5', '0'):
-      caps = gst_caps_new_simple ("video/x-intel",
-          "ivversion", G_TYPE_INT, 5, NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Intel Video 5");
-      break;
-
-    default:
-      GST_WARNING ("Unknown video fourcc " GST_FOURCC_FORMAT,
-          GST_FOURCC_ARGS (codec_fcc));
-      return NULL;
-  }
-
-  if (strh != NULL) {
-    gdouble fps = 1. * strh->rate / strh->scale;
-
-    gst_caps_set_simple (caps, "framerate", G_TYPE_DOUBLE, fps, NULL);
-  } else {
-    gst_caps_set_simple (caps,
-        "framerate", GST_TYPE_DOUBLE_RANGE, 0., G_MAXDOUBLE, NULL);
-  }
-
-  if (strf != NULL) {
-    gst_caps_set_simple (caps,
-        "width", G_TYPE_INT, strf->width,
-        "height", G_TYPE_INT, strf->height, NULL);
-  } else {
-    gst_caps_set_simple (caps,
-        "width", GST_TYPE_INT_RANGE, 16, 4096,
-        "height", GST_TYPE_INT_RANGE, 16, 4096, NULL);
-  }
-
-  /* extradata */
-  if (strf_data || strd_data) {
-    gst_caps_set_simple (caps, "codec_data", GST_TYPE_BUFFER,
-        strf_data ? strf_data : strd_data, NULL);
-  }
-
-  /* palette */
-  if (palette && GST_BUFFER_SIZE (palette) >= 256 * 4) {
-    GstBuffer *copy = gst_buffer_copy (palette);
-
-#if (G_BYTE_ORDER == G_BIG_ENDIAN)
-    gint n;
-    guint32 *data = (guint32 *) GST_BUFFER_DATA (copy);
-
-    /* own endianness */
-    for (n = 0; n < 256; n++)
-      data[n] = GUINT32_FROM_LE (data[n]);
-#endif
-    gst_caps_set_simple (caps, "palette_data", GST_TYPE_BUFFER, copy, NULL);
-    gst_buffer_unref (copy);
-  }
-
-  return caps;
-}
-
-GstCaps *
-gst_riff_create_video_caps (guint32 codec_fcc,
-    gst_riff_strh * strh, gst_riff_strf_vids * strf, char **codec_name)
-{
-  return gst_riff_create_video_caps_with_data (codec_fcc,
-      strh, strf, NULL, NULL, codec_name);
-}
-
-GstCaps *
-gst_riff_create_audio_caps_with_data (guint16 codec_id,
-    gst_riff_strh * strh, gst_riff_strf_auds * strf,
-    GstBuffer * strf_data, GstBuffer * strd_data, char **codec_name)
-{
-  gboolean block_align = FALSE, rate_chan = TRUE;
-  GstCaps *caps = NULL;
-  gint rate_min = 1000, rate_max = 96000;
-  gint channels_max = 2;
-
-  switch (codec_id) {
-    case GST_RIFF_WAVE_FORMAT_MPEGL3:  /* mp3 */
-      caps = gst_caps_new_simple ("audio/mpeg",
-          "mpegversion", G_TYPE_INT, 1, "layer", G_TYPE_INT, 3, NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("MPEG 1 layer 3");
-      break;
-
-    case GST_RIFF_WAVE_FORMAT_MPEGL12: /* mp1 or mp2 */
-      caps = gst_caps_new_simple ("audio/mpeg",
-          "mpegversion", G_TYPE_INT, 1, "layer", G_TYPE_INT, 2, NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("MPEG 1 layer 2");
-      break;
-
-    case GST_RIFF_WAVE_FORMAT_PCM:     /* PCM */
-      if (strf != NULL) {
-        gint ba = strf->blockalign;
-        gint ch = strf->channels;
-        gint ws = strf->size;
-
-        caps = gst_caps_new_simple ("audio/x-raw-int",
-            "endianness", G_TYPE_INT, G_LITTLE_ENDIAN,
-            "width", G_TYPE_INT, (int) (ba * 8 / ch),
-            "depth", G_TYPE_INT, ws, "signed", G_TYPE_BOOLEAN, ws != 8, NULL);
-      } else {
-        caps = gst_caps_from_string ("audio/x-raw-int, "
-            "endianness = (int) LITTLE_ENDIAN, "
-            "signed = (boolean) { true, false }, "
-            "width = (int) { 8, 16 }, " "depth = (int) { 8, 16 }");
-      }
-      if (codec_name)
-        *codec_name = g_strdup ("Uncompressed PCM audio");
-      break;
-
-    case GST_RIFF_WAVE_FORMAT_ADPCM:
-      caps = gst_caps_new_simple ("audio/x-adpcm",
-          "layout", G_TYPE_STRING, "microsoft", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("ADPCM audio");
-      block_align = TRUE;
-      break;
-
-    case GST_RIFF_WAVE_FORMAT_DVI_ADPCM:
-      caps = gst_caps_new_simple ("audio/x-adpcm",
-          "layout", G_TYPE_STRING, "dvi", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("DVI ADPCM audio");
-      block_align = TRUE;
-      break;
-
-    case GST_RIFF_WAVE_FORMAT_MULAW:
-      if (strf != NULL && strf->size != 8) {
-        GST_WARNING ("invalid depth (%d) of mulaw audio, overwriting.",
-            strf->size);
-        strf->size = 8;
-        strf->av_bps = 8;
-        strf->blockalign = strf->av_bps * strf->channels;
-      }
-      if (strf != NULL && (strf->av_bps == 0 || strf->blockalign == 0)) {
-        GST_WARNING ("fixing av_bps (%d) and blockalign (%d) of mulaw audio",
-            strf->av_bps, strf->blockalign);
-        strf->av_bps = strf->size;
-        strf->blockalign = strf->av_bps * strf->channels;
-      }
-      caps = gst_caps_new_simple ("audio/x-mulaw", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Mulaw");
-      break;
-
-    case GST_RIFF_WAVE_FORMAT_ALAW:
-      if (strf != NULL && strf->size != 8) {
-        GST_WARNING ("invalid depth (%d) of alaw audio, overwriting.",
-            strf->size);
-        strf->size = 8;
-        strf->av_bps = 8;
-        strf->blockalign = strf->av_bps * strf->channels;
-      }
-      if (strf != NULL && (strf->av_bps == 0 || strf->blockalign == 0)) {
-        GST_WARNING ("fixing av_bps (%d) and blockalign (%d) of alaw audio",
-            strf->av_bps, strf->blockalign);
-        strf->av_bps = strf->size;
-        strf->blockalign = strf->av_bps * strf->channels;
-      }
-      caps = gst_caps_new_simple ("audio/x-alaw", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Alaw");
-      break;
-
-    case GST_RIFF_WAVE_FORMAT_VORBIS1: /* ogg/vorbis mode 1 */
-    case GST_RIFF_WAVE_FORMAT_VORBIS2: /* ogg/vorbis mode 2 */
-    case GST_RIFF_WAVE_FORMAT_VORBIS3: /* ogg/vorbis mode 3 */
-    case GST_RIFF_WAVE_FORMAT_VORBIS1PLUS:     /* ogg/vorbis mode 1+ */
-    case GST_RIFF_WAVE_FORMAT_VORBIS2PLUS:     /* ogg/vorbis mode 2+ */
-    case GST_RIFF_WAVE_FORMAT_VORBIS3PLUS:     /* ogg/vorbis mode 3+ */
-      caps = gst_caps_new_simple ("audio/x-vorbis", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Vorbis");
-      break;
-
-    case GST_RIFF_WAVE_FORMAT_A52:
-      channels_max = 6;
-      caps = gst_caps_new_simple ("audio/x-ac3", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("AC3");
-      break;
-    case GST_RIFF_WAVE_FORMAT_WMAV1:
-    case GST_RIFF_WAVE_FORMAT_WMAV2:
-    case GST_RIFF_WAVE_FORMAT_WMAV3:
-    {
-      gint version = (codec_id - GST_RIFF_WAVE_FORMAT_WMAV1) + 1;
-
-      channels_max = 6;
-
-      block_align = TRUE;
-
-      caps = gst_caps_new_simple ("audio/x-wma",
-          "wmaversion", G_TYPE_INT, version, NULL);
-
-      if (codec_name)
-        *codec_name = g_strdup_printf ("WMA Version %d", version);
-
-      if (strf != NULL) {
-        gst_caps_set_simple (caps,
-            "bitrate", G_TYPE_INT, strf->av_bps * 8, NULL);
-      } else {
-        gst_caps_set_simple (caps,
-            "bitrate", GST_TYPE_INT_RANGE, 0, G_MAXINT, NULL);
-      }
-      break;
-    }
-    case GST_RIFF_WAVE_FORMAT_SONY_ATRAC3:
-      caps = gst_caps_new_simple ("audio/x-vnd.sony.atrac3", NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Sony ATRAC3");
-      break;
-
-    default:
-      GST_WARNING ("Unknown audio tag 0x%04x", codec_id);
-      return NULL;
-  }
-
-  if (strf != NULL) {
-    if (rate_chan) {
-      gst_caps_set_simple (caps,
-          "rate", G_TYPE_INT, strf->rate,
-          "channels", G_TYPE_INT, strf->channels, NULL);
-    }
-    if (block_align) {
-      gst_caps_set_simple (caps,
-          "block_align", G_TYPE_INT, strf->blockalign, NULL);
-    }
-  } else {
-    if (rate_chan) {
-      gst_caps_set_simple (caps,
-          "rate", GST_TYPE_INT_RANGE, rate_min, rate_max,
-          "channels", GST_TYPE_INT_RANGE, 1, channels_max, NULL);
-    }
-    if (block_align) {
-      gst_caps_set_simple (caps,
-          "block_align", GST_TYPE_INT_RANGE, 1, G_MAXINT, NULL);
-    }
-  }
-
-  /* extradata */
-  if (strf_data || strd_data) {
-    gst_caps_set_simple (caps, "codec_data", GST_TYPE_BUFFER,
-        strf_data ? strf_data : strd_data, NULL);
-  }
-
-  return caps;
-}
-
-GstCaps *
-gst_riff_create_audio_caps (guint16 codec_id,
-    gst_riff_strh * strh, gst_riff_strf_auds * strf, char **codec_name)
-{
-  return gst_riff_create_audio_caps_with_data (codec_id,
-      strh, strf, NULL, NULL, codec_name);
-}
-
-GstCaps *
-gst_riff_create_iavs_caps (guint32 codec_fcc,
-    gst_riff_strh * strh, gst_riff_strf_iavs * strf, char **codec_name)
-{
-  GstCaps *caps = NULL;
-
-  switch (codec_fcc) {
-      /* is this correct? */
-    case GST_MAKE_FOURCC ('D', 'V', 'S', 'D'):
-    case GST_MAKE_FOURCC ('d', 'v', 's', 'd'):
-      caps = gst_caps_new_simple ("video/x-dv",
-          "systemstream", G_TYPE_BOOLEAN, TRUE, NULL);
-      if (codec_name)
-        *codec_name = g_strdup ("Generic DV");
-      break;
-
-    default:
-      GST_WARNING ("Unknown IAVS fourcc " GST_FOURCC_FORMAT,
-          GST_FOURCC_ARGS (codec_fcc));
-      return NULL;
-  }
-
-  return caps;
-}
-
-/*
- * Functions below are for template caps. All is variable.
- */
-
-GstCaps *
-gst_riff_create_video_template_caps (void)
-{
-  guint32 tags[] = {
-    GST_MAKE_FOURCC ('I', '4', '2', '0'),
-    GST_MAKE_FOURCC ('Y', 'U', 'Y', '2'),
-    GST_MAKE_FOURCC ('M', 'J', 'P', 'G'),
-    GST_MAKE_FOURCC ('D', 'V', 'S', 'D'),
-    GST_MAKE_FOURCC ('W', 'M', 'V', '1'),
-    GST_MAKE_FOURCC ('W', 'M', 'V', '2'),
-    GST_MAKE_FOURCC ('W', 'M', 'V', '3'),
-    GST_MAKE_FOURCC ('M', 'P', 'G', '4'),
-    GST_MAKE_FOURCC ('M', 'P', '4', '2'),
-    GST_MAKE_FOURCC ('M', 'P', '4', '3'),
-    GST_MAKE_FOURCC ('H', 'F', 'Y', 'U'),
-    GST_MAKE_FOURCC ('D', 'I', 'V', '3'),
-    GST_MAKE_FOURCC ('M', 'P', 'E', 'G'),
-    GST_MAKE_FOURCC ('H', '2', '6', '3'),
-    GST_MAKE_FOURCC ('I', '2', '6', '3'),
-    GST_MAKE_FOURCC ('h', '2', '6', '4'),
-    GST_MAKE_FOURCC ('D', 'I', 'V', 'X'),
-    GST_MAKE_FOURCC ('D', 'X', '5', '0'),
-    GST_MAKE_FOURCC ('X', 'V', 'I', 'D'),
-    GST_MAKE_FOURCC ('3', 'I', 'V', '1'),
-    GST_MAKE_FOURCC ('c', 'v', 'i', 'd'),
-    GST_MAKE_FOURCC ('m', 's', 'v', 'c'),
-    GST_MAKE_FOURCC ('R', 'L', 'E', ' '),
-    GST_MAKE_FOURCC ('D', 'I', 'B', ' '),
-    GST_MAKE_FOURCC ('X', 'x', 'a', 'n'),
-    GST_MAKE_FOURCC ('I', 'V', '5', '0'),
-    /* FILL ME */
-    0
-  };
-  guint i;
-  GstCaps *caps, *one;
-
-  caps = gst_caps_new_empty ();
-  for (i = 0; tags[i] != 0; i++) {
-    one = gst_riff_create_video_caps (tags[i], NULL, NULL, NULL);
-    if (one)
-      gst_caps_append (caps, one);
-  }
-
-  return caps;
-}
-
-GstCaps *
-gst_riff_create_audio_template_caps (void)
-{
-  guint16 tags[] = {
-    GST_RIFF_WAVE_FORMAT_MPEGL3,
-    GST_RIFF_WAVE_FORMAT_MPEGL12,
-    GST_RIFF_WAVE_FORMAT_PCM,
-    GST_RIFF_WAVE_FORMAT_VORBIS1,
-    GST_RIFF_WAVE_FORMAT_A52,
-    GST_RIFF_WAVE_FORMAT_ALAW,
-    GST_RIFF_WAVE_FORMAT_MULAW,
-    GST_RIFF_WAVE_FORMAT_ADPCM,
-    GST_RIFF_WAVE_FORMAT_DVI_ADPCM,
-    GST_RIFF_WAVE_FORMAT_WMAV1,
-    GST_RIFF_WAVE_FORMAT_WMAV2,
-    GST_RIFF_WAVE_FORMAT_WMAV3,
-    /* FILL ME */
-    0
-  };
-  guint i;
-  GstCaps *caps, *one;
-
-  caps = gst_caps_new_empty ();
-  for (i = 0; tags[i] != 0; i++) {
-    one = gst_riff_create_audio_caps (tags[i], NULL, NULL, NULL);
-    if (one)
-      gst_caps_append (caps, one);
-  }
-
-  return caps;
-}
-
-GstCaps *
-gst_riff_create_iavs_template_caps (void)
-{
-  guint32 tags[] = {
-    GST_MAKE_FOURCC ('D', 'V', 'S', 'D'),
-    /* FILL ME */
-    0
-  };
-  guint i;
-  GstCaps *caps, *one;
-
-  caps = gst_caps_new_empty ();
-  for (i = 0; tags[i] != 0; i++) {
-    one = gst_riff_create_iavs_caps (tags[i], NULL, NULL, NULL);
-    if (one)
-      gst_caps_append (caps, one);
-  }
-
-  return caps;
-}
diff --git a/gst-libs/gst/riff/riff-media.h b/gst-libs/gst/riff/riff-media.h
deleted file mode 100644 (file)
index 6ff3ea1..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-/* GStreamer RIFF I/O
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * riff-media.h: RIFF-id to/from caps routines
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __GST_RIFF_MEDIA_H__
-#define __GST_RIFF_MEDIA_H__
-
-#include <glib.h>
-#include <gst/gst.h>
-#include "riff-ids.h"
-
-G_BEGIN_DECLS
-
-/*
- * Create one caps. strh/strf can be NULL (for non-fixed caps).
- */
-
-GstCaps *gst_riff_create_video_caps (guint32             codec_fcc,
-                                    gst_riff_strh      *strh,
-                                    gst_riff_strf_vids *strf,
-                                    char **codec_name);
-GstCaps *gst_riff_create_audio_caps (guint16             codec_id,
-                                    gst_riff_strh      *strh,
-                                    gst_riff_strf_auds *strf,
-                                    char **codec_name);
-GstCaps *gst_riff_create_iavs_caps  (guint32             codec_fcc,
-                                    gst_riff_strh      *strh,
-                                    gst_riff_strf_iavs *strf,
-                                    char **codec_name);
-
-/*
- * Extended...
- */
-
-GstCaps *
-gst_riff_create_video_caps_with_data (guint32              codec_fcc,
-                                     gst_riff_strh      * strh,
-                                     gst_riff_strf_vids * strf,
-                                     GstBuffer          * strf_data,
-                                     GstBuffer          * strd_data,
-                                     char              ** codec_name);
-
-GstCaps *
-gst_riff_create_audio_caps_with_data (guint16              codec_id,
-                                     gst_riff_strh      * strh,
-                                     gst_riff_strf_auds * strf,
-                                     GstBuffer          * strf_data,
-                                     GstBuffer          * strd_data,
-                                     char              ** codec_name);
-/*
- * Create template caps (includes all known types).
- */
-
-GstCaps *gst_riff_create_video_template_caps (void);
-GstCaps *gst_riff_create_audio_template_caps (void);
-GstCaps *gst_riff_create_iavs_template_caps  (void);
-
-G_END_DECLS
-
-#endif /* __GST_RIFF_READ_H__ */
diff --git a/gst-libs/gst/riff/riff-read.c b/gst-libs/gst/riff/riff-read.c
deleted file mode 100644 (file)
index 21cdbbc..0000000
+++ /dev/null
@@ -1,1016 +0,0 @@
-/* GStreamer RIFF I/O
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * riff-read.c: RIFF input file parsing
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <string.h>
-#include <gst/gstutils.h>
-
-#include "riff-ids.h"
-#include "riff-read.h"
-
-GST_DEBUG_CATEGORY_STATIC (riffread_debug);
-#define GST_CAT_DEFAULT riffread_debug
-
-enum
-{
-  ARG_0,
-  ARG_METADATA
-      /* FILL ME */
-};
-
-static void gst_riff_read_class_init (GstRiffReadClass * klass);
-static void gst_riff_read_init (GstRiffRead * riff);
-
-static GstElementStateReturn gst_riff_read_change_state (GstElement * element);
-
-static GstElementClass *parent_class = NULL;
-
-GType
-gst_riff_read_get_type (void)
-{
-  static GType gst_riff_read_type = 0;
-
-  if (!gst_riff_read_type) {
-    static const GTypeInfo gst_riff_read_info = {
-      sizeof (GstRiffReadClass),
-      NULL,
-      NULL,
-      (GClassInitFunc) gst_riff_read_class_init,
-      NULL,
-      NULL,
-      sizeof (GstRiffRead),
-      0,
-      (GInstanceInitFunc) gst_riff_read_init,
-    };
-
-    gst_riff_read_type =
-        g_type_register_static (GST_TYPE_ELEMENT, "GstRiffRead",
-        &gst_riff_read_info, 0);
-  }
-
-  return gst_riff_read_type;
-}
-
-static void
-gst_riff_read_class_init (GstRiffReadClass * klass)
-{
-  GstElementClass *gstelement_class = GST_ELEMENT_CLASS (klass);
-
-  parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
-
-  GST_DEBUG_CATEGORY_INIT (riffread_debug, "riffread",
-      0, "RIFF stream helper class");
-
-  gstelement_class->change_state = gst_riff_read_change_state;
-}
-
-static void
-gst_riff_read_init (GstRiffRead * riff)
-{
-  riff->sinkpad = NULL;
-  riff->bs = NULL;
-  riff->level = NULL;
-}
-
-static GstElementStateReturn
-gst_riff_read_change_state (GstElement * element)
-{
-  GstRiffRead *riff = GST_RIFF_READ (element);
-
-  switch (GST_STATE_TRANSITION (element)) {
-    case GST_STATE_READY_TO_PAUSED:
-      if (!riff->sinkpad)
-        return GST_STATE_FAILURE;
-      riff->bs = gst_bytestream_new (riff->sinkpad);
-      break;
-    case GST_STATE_PAUSED_TO_READY:
-      gst_bytestream_destroy (riff->bs);
-      while (riff->level) {
-        GstRiffLevel *level = riff->level->data;
-
-        riff->level = g_list_remove (riff->level, level);
-        g_free (level);
-      }
-      break;
-    default:
-      break;
-  }
-
-  if (GST_ELEMENT_CLASS (parent_class)->change_state)
-    return GST_ELEMENT_CLASS (parent_class)->change_state (element);
-
-  return GST_STATE_SUCCESS;
-}
-
-/*
- * Return: the amount of levels in the hierarchy that the
- * current element lies higher than the previous one.
- * The opposite isn't done - that's auto-done using list
- * element reading.
- */
-
-static guint
-gst_riff_read_element_level_up (GstRiffRead * riff)
-{
-  guint num = 0;
-  guint64 pos = gst_bytestream_tell (riff->bs);
-
-  while (riff->level != NULL) {
-    GList *last = g_list_last (riff->level);
-    GstRiffLevel *level = last->data;
-
-    if (pos >= level->start + level->length) {
-      riff->level = g_list_remove (riff->level, level);
-      g_free (level);
-      num++;
-    } else
-      break;
-  }
-
-  return num;
-}
-
-/*
- * Event handler. Basic:
- * - EOS: end-of-file, stop processing, forward EOS.
- * - Interrupt: stop processing.
- * - Discont: shouldn't be handled here but in the seek handler. Error.
- * - Flush: ignore, since we check for flush flags manually. Don't forward.
- * - Others: warn, ignore.
- * Return value indicates whether to continue processing.
- */
-
-static gboolean
-gst_riff_read_use_event (GstRiffRead * riff, GstEvent * event)
-{
-  if (!event) {
-    GST_ELEMENT_ERROR (riff, RESOURCE, READ, (NULL), (NULL));
-    return FALSE;
-  }
-
-  switch (GST_EVENT_TYPE (event)) {
-    case GST_EVENT_EOS:
-      gst_pad_event_default (riff->sinkpad, event);
-      return FALSE;
-
-    case GST_EVENT_INTERRUPT:
-      gst_event_unref (event);
-      return FALSE;
-
-    case GST_EVENT_DISCONTINUOUS:
-      GST_WARNING_OBJECT (riff, "Unexpected discont - might lose sync");
-      gst_event_unref (event);
-      return TRUE;
-
-    case GST_EVENT_FLUSH:
-      gst_event_unref (event);
-      return TRUE;
-
-    default:
-      GST_WARNING ("don't know how to handle event %d", GST_EVENT_TYPE (event));
-      gst_pad_event_default (riff->sinkpad, event);
-      return TRUE;
-  }
-
-  /* happy */
-  g_assert_not_reached ();
-  return FALSE;
-}
-
-static gboolean
-gst_riff_read_handle_event (GstRiffRead * riff)
-{
-  GstEvent *event = NULL;
-  guint32 remaining;
-
-  gst_bytestream_get_status (riff->bs, &remaining, &event);
-
-  return gst_riff_read_use_event (riff, event);
-}
-
-/*
- * Read the next tag plus length (may be NULL). Return
- * TRUE on success or FALSE on failure.
- */
-
-gboolean
-gst_riff_peek_head (GstRiffRead * riff,
-    guint32 * tag, guint32 * length, guint * level_up)
-{
-  GList *last;
-  guint8 *data;
-
-  /* if we're at the end of a chunk, but unaligned, then re-align.
-   * Those are essentially broken files, but unfortunately they
-   * exist. */
-  if ((last = g_list_last (riff->level)) != NULL) {
-    GstRiffLevel *level = last->data;
-    guint64 pos = gst_bytestream_tell (riff->bs);
-
-    if (level->start + level->length - pos < 8) {
-      if (!gst_bytestream_flush (riff->bs, level->start + level->length - pos)) {
-        GST_ELEMENT_ERROR (riff, RESOURCE, READ, (NULL), (NULL));
-        return FALSE;
-      }
-    }
-  }
-
-  /* read */
-  while (gst_bytestream_peek_bytes (riff->bs, &data, 8) != 8) {
-    if (!gst_riff_read_handle_event (riff))
-      return FALSE;
-  }
-
-  /* parse tag + length (if wanted) */
-  *tag = GST_READ_UINT32_LE (data);
-  if (length)
-    *length = GST_READ_UINT32_LE (((guint32 *) data) + 1);
-
-  /* level */
-  if (level_up)
-    *level_up = gst_riff_read_element_level_up (riff);
-
-  return TRUE;
-}
-
-/*
- * Read: the actual data (plus alignment and flush).
- * Return: the data, as a GstBuffer.
- */
-
-GstBuffer *
-gst_riff_peek_element_data (GstRiffRead * riff, guint length, guint * got_bytes)
-{
-  GstBuffer *buf = NULL;
-  guint32 got;
-
-  while ((got = gst_bytestream_peek (riff->bs, &buf, length)) != length) {
-    if (buf)
-      gst_buffer_unref (buf);
-    if (!gst_riff_read_handle_event (riff))
-      return NULL;
-  }
-
-  if (got_bytes)
-    *got_bytes = got;
-
-  return buf;
-}
-
-GstBuffer *
-gst_riff_read_element_data (GstRiffRead * riff, guint length, guint * got_bytes)
-{
-  GstBuffer *buf;
-
-  if (!(buf = gst_riff_peek_element_data (riff, length, got_bytes)))
-    return NULL;
-
-  /* we need 16-bit alignment */
-  if (length & 1)
-    length++;
-
-  if (!gst_bytestream_flush (riff->bs, length)) {
-    gst_buffer_unref (buf);
-    return NULL;
-  }
-
-  return buf;
-}
-
-/*
- * Seek.
- */
-
-GstEvent *
-gst_riff_read_seek (GstRiffRead * riff, guint64 offset)
-{
-  guint64 length = gst_bytestream_length (riff->bs);
-  guint32 remaining;
-  GstEvent *event = NULL;
-  guchar *data;
-
-  /* hack for AVI files with broken idx1 size chunk markers */
-  if (offset > length)
-    offset = length;
-
-  /* first, flush remaining buffers */
-  gst_bytestream_get_status (riff->bs, &remaining, &event);
-  if (event) {
-    GST_WARNING ("Unexpected event before seek");
-    if (!gst_riff_read_use_event (riff, event))
-      return NULL;
-    event = NULL;
-  }
-
-  if (remaining)
-    gst_bytestream_flush_fast (riff->bs, remaining);
-
-  /* now seek */
-  if (!gst_bytestream_seek (riff->bs, offset, GST_SEEK_METHOD_SET)) {
-    GST_ELEMENT_ERROR (riff, RESOURCE, SEEK, (NULL), (NULL));
-    return NULL;
-  }
-
-  /* and now, peek a new byte. This will fail because there's a
-   * pending event. Then, take the event and return it. */
-  while (!event) {
-    if (gst_bytestream_peek_bytes (riff->bs, &data, 1)) {
-      GST_WARNING ("Unexpected data after seek - this means seek failed");
-      break;
-    }
-
-    /* get the discont event and return */
-    gst_bytestream_get_status (riff->bs, &remaining, &event);
-    if (!event) {
-      GST_WARNING ("No discontinuity event after seek - seek failed");
-      break;
-    } else if (GST_EVENT_TYPE (event) != GST_EVENT_DISCONTINUOUS) {
-      if (!gst_riff_read_use_event (riff, event))
-        return NULL;
-      event = NULL;
-    }
-  }
-
-  return event;
-}
-
-/*
- * Gives the tag of the next RIFF element.
- */
-
-guint32
-gst_riff_peek_tag (GstRiffRead * riff, guint * level_up)
-{
-  guint32 tag;
-
-  if (!gst_riff_peek_head (riff, &tag, NULL, level_up))
-    return 0;
-
-  return tag;
-}
-
-/*
- * Gives the tag of the next LIST/RIFF element.
- */
-
-guint32
-gst_riff_peek_list (GstRiffRead * riff)
-{
-  guint32 lst;
-  guint8 *data;
-
-  if (!gst_riff_peek_head (riff, &lst, NULL, NULL))
-    return FALSE;
-  if (lst != GST_RIFF_TAG_LIST) {
-    g_warning ("Not a LIST object");
-    return 0;
-  }
-
-  if (gst_bytestream_peek_bytes (riff->bs, &data, 12) != 12) {
-    GST_ELEMENT_ERROR (riff, RESOURCE, READ, (NULL), (NULL));
-    return 0;
-  }
-
-  return GST_READ_UINT32_LE (((guint32 *) data) + 2);
-}
-
-/*
- * Don't read data.
- */
-
-gboolean
-gst_riff_read_skip (GstRiffRead * riff)
-{
-  guint32 tag, length;
-  GstEvent *event = NULL;
-  guint32 remaining;
-
-  if (!gst_riff_peek_head (riff, &tag, &length, NULL))
-    return FALSE;
-
-  /* 16-bit alignment */
-  if (length & 1)
-    length++;
-
-  /* header itself */
-  length += 8;
-
-  /* see if we have that much data available */
-  gst_bytestream_get_status (riff->bs, &remaining, &event);
-  if (event) {
-    GST_WARNING ("Unexpected event in skip");
-    if (!gst_riff_read_use_event (riff, event))
-      return FALSE;
-  }
-
-  /* yes */
-  if (remaining >= length) {
-    gst_bytestream_flush_fast (riff->bs, length);
-    return TRUE;
-  }
-
-  /* no */
-  if (!(event = gst_riff_read_seek (riff,
-              gst_bytestream_tell (riff->bs) + length)))
-    return FALSE;
-
-  gst_event_unref (event);
-
-  return TRUE;
-}
-
-/*
- * Read any type of data.
- */
-
-gboolean
-gst_riff_read_data (GstRiffRead * riff, guint32 * tag, GstBuffer ** buf)
-{
-  guint32 length;
-
-  if (!gst_riff_peek_head (riff, tag, &length, NULL))
-    return FALSE;
-  gst_bytestream_flush_fast (riff->bs, 8);
-
-  return ((*buf = gst_riff_read_element_data (riff, length, NULL)) != NULL);
-}
-
-/*
- * Read a string.
- */
-
-gboolean
-gst_riff_read_ascii (GstRiffRead * riff, guint32 * tag, gchar ** str)
-{
-  GstBuffer *buf;
-
-  if (!gst_riff_read_data (riff, tag, &buf))
-    return FALSE;
-
-  *str = g_malloc (GST_BUFFER_SIZE (buf) + 1);
-  memcpy (*str, GST_BUFFER_DATA (buf), GST_BUFFER_SIZE (buf));
-  (*str)[GST_BUFFER_SIZE (buf)] = '\0';
-
-  gst_buffer_unref (buf);
-
-  return TRUE;
-}
-
-/*
- * Read media structs.
- */
-
-gboolean
-gst_riff_read_strh (GstRiffRead * riff, gst_riff_strh ** header)
-{
-  guint32 tag;
-  GstBuffer *buf;
-  gst_riff_strh *strh;
-
-  if (!gst_riff_read_data (riff, &tag, &buf))
-    return FALSE;
-
-  if (tag != GST_RIFF_TAG_strh) {
-    g_warning ("Not a strh chunk");
-    gst_buffer_unref (buf);
-    return FALSE;
-  }
-  if (GST_BUFFER_SIZE (buf) < sizeof (gst_riff_strh)) {
-    GST_WARNING ("Too small strh (%d available, %d needed)",
-        GST_BUFFER_SIZE (buf), (int) sizeof (gst_riff_strh));
-    gst_buffer_unref (buf);
-    return FALSE;
-  }
-
-  strh = g_memdup (GST_BUFFER_DATA (buf), GST_BUFFER_SIZE (buf));
-  gst_buffer_unref (buf);
-
-#if (G_BYTE_ORDER == G_BIG_ENDIAN)
-  strh->type = GUINT32_FROM_LE (strh->type);
-  strh->fcc_handler = GUINT32_FROM_LE (strh->fcc_handler);
-  strh->flags = GUINT32_FROM_LE (strh->flags);
-  strh->priority = GUINT32_FROM_LE (strh->priority);
-  strh->init_frames = GUINT32_FROM_LE (strh->init_frames);
-  strh->scale = GUINT32_FROM_LE (strh->scale);
-  strh->rate = GUINT32_FROM_LE (strh->rate);
-  strh->start = GUINT32_FROM_LE (strh->start);
-  strh->length = GUINT32_FROM_LE (strh->length);
-  strh->bufsize = GUINT32_FROM_LE (strh->bufsize);
-  strh->quality = GUINT32_FROM_LE (strh->quality);
-  strh->samplesize = GUINT32_FROM_LE (strh->samplesize);
-#endif
-
-  /* avoid divisions by zero */
-  if (!strh->scale)
-    strh->scale = 1;
-  if (!strh->rate)
-    strh->rate = 1;
-
-  /* debug */
-  GST_INFO ("strh tag found");
-  GST_INFO (" type        " GST_FOURCC_FORMAT, GST_FOURCC_ARGS (strh->type));
-  GST_INFO (" fcc_handler " GST_FOURCC_FORMAT,
-      GST_FOURCC_ARGS (strh->fcc_handler));
-  GST_INFO (" flags       0x%08x", strh->flags);
-  GST_INFO (" priority    %d", strh->priority);
-  GST_INFO (" init_frames %d", strh->init_frames);
-  GST_INFO (" scale       %d", strh->scale);
-  GST_INFO (" rate        %d", strh->rate);
-  GST_INFO (" start       %d", strh->start);
-  GST_INFO (" length      %d", strh->length);
-  GST_INFO (" bufsize     %d", strh->bufsize);
-  GST_INFO (" quality     %d", strh->quality);
-  GST_INFO (" samplesize  %d", strh->samplesize);
-
-  *header = strh;
-
-  return TRUE;
-}
-
-gboolean
-gst_riff_read_strf_vids_with_data (GstRiffRead * riff,
-    gst_riff_strf_vids ** header, GstBuffer ** extradata)
-{
-  guint32 tag;
-  GstBuffer *buf;
-  gst_riff_strf_vids *strf;
-
-  if (!gst_riff_read_data (riff, &tag, &buf))
-    return FALSE;
-
-  if (tag != GST_RIFF_TAG_strf) {
-    g_warning ("Not a strf chunk");
-    gst_buffer_unref (buf);
-    return FALSE;
-  }
-  if (GST_BUFFER_SIZE (buf) < sizeof (gst_riff_strf_vids)) {
-    GST_WARNING ("Too small strf_vids (%d available, %d needed)",
-        GST_BUFFER_SIZE (buf), (int) sizeof (gst_riff_strf_vids));
-    gst_buffer_unref (buf);
-    return FALSE;
-  }
-
-  strf = g_memdup (GST_BUFFER_DATA (buf), GST_BUFFER_SIZE (buf));
-
-#if (G_BYTE_ORDER == G_BIG_ENDIAN)
-  strf->size = GUINT32_FROM_LE (strf->size);
-  strf->width = GUINT32_FROM_LE (strf->width);
-  strf->height = GUINT32_FROM_LE (strf->height);
-  strf->planes = GUINT16_FROM_LE (strf->planes);
-  strf->bit_cnt = GUINT16_FROM_LE (strf->bit_cnt);
-  strf->compression = GUINT32_FROM_LE (strf->compression);
-  strf->image_size = GUINT32_FROM_LE (strf->image_size);
-  strf->xpels_meter = GUINT32_FROM_LE (strf->xpels_meter);
-  strf->ypels_meter = GUINT32_FROM_LE (strf->ypels_meter);
-  strf->num_colors = GUINT32_FROM_LE (strf->num_colors);
-  strf->imp_colors = GUINT32_FROM_LE (strf->imp_colors);
-#endif
-
-  /* size checking */
-  *extradata = NULL;
-  if (strf->size > GST_BUFFER_SIZE (buf)) {
-    g_warning ("strf_vids header gave %d bytes data, only %d available",
-        strf->size, GST_BUFFER_SIZE (buf));
-    strf->size = GST_BUFFER_SIZE (buf);
-  } else if (strf->size < GST_BUFFER_SIZE (buf)) {
-    gint len;
-
-    len = GST_BUFFER_SIZE (buf) - strf->size;
-    if (len > 0) {
-      *extradata = gst_buffer_create_sub (buf, strf->size, len);
-    }
-  } else if (strf->size > sizeof (gst_riff_strf_vids)) {
-    *extradata = gst_buffer_create_sub (buf,
-        sizeof (gst_riff_strf_vids), strf->size - sizeof (gst_riff_strf_vids));
-  }
-
-  /* debug */
-  GST_INFO ("strf tag found in context vids:");
-  GST_INFO (" size        %d", strf->size);
-  GST_INFO (" width       %d", strf->width);
-  GST_INFO (" height      %d", strf->height);
-  GST_INFO (" planes      %d", strf->planes);
-  GST_INFO (" bit_cnt     %d", strf->bit_cnt);
-  GST_INFO (" compression " GST_FOURCC_FORMAT,
-      GST_FOURCC_ARGS (strf->compression));
-  GST_INFO (" image_size  %d", strf->image_size);
-  GST_INFO (" xpels_meter %d", strf->xpels_meter);
-  GST_INFO (" ypels_meter %d", strf->ypels_meter);
-  GST_INFO (" num_colors  %d", strf->num_colors);
-  GST_INFO (" imp_colors  %d", strf->imp_colors);
-  if (*extradata)
-    GST_INFO (" %d bytes extra_data", GST_BUFFER_SIZE (*extradata));
-
-  gst_buffer_unref (buf);
-
-  *header = strf;
-
-  return TRUE;
-}
-
-/*
- * Obsolete, use gst_riff_read_strf_vids_with_data ().
- */
-gboolean
-gst_riff_read_strf_vids (GstRiffRead * riff, gst_riff_strf_vids ** header)
-{
-  GstBuffer *data = NULL;
-  gboolean ret;
-
-  ret = gst_riff_read_strf_vids_with_data (riff, header, &data);
-  if (data)
-    gst_buffer_unref (data);
-
-  return ret;
-}
-
-gboolean
-gst_riff_read_strf_auds_with_data (GstRiffRead * riff,
-    gst_riff_strf_auds ** header, GstBuffer ** extradata)
-{
-  guint32 tag;
-  GstBuffer *buf;
-  gst_riff_strf_auds *strf;
-
-  if (!gst_riff_read_data (riff, &tag, &buf))
-    return FALSE;
-
-  if (tag != GST_RIFF_TAG_strf && tag != GST_RIFF_TAG_fmt) {
-    g_warning ("Not a strf chunk");
-    gst_buffer_unref (buf);
-    return FALSE;
-  }
-  if (GST_BUFFER_SIZE (buf) < sizeof (gst_riff_strf_auds)) {
-    GST_WARNING ("Too small strf_auds (%d available, %d needed)",
-        GST_BUFFER_SIZE (buf), (int) sizeof (gst_riff_strf_auds));
-    gst_buffer_unref (buf);
-    return FALSE;
-  }
-
-  strf = g_memdup (GST_BUFFER_DATA (buf), GST_BUFFER_SIZE (buf));
-
-#if (G_BYTE_ORDER == G_BIG_ENDIAN)
-  strf->format = GUINT16_FROM_LE (strf->format);
-  strf->channels = GUINT16_FROM_LE (strf->channels);
-  strf->rate = GUINT32_FROM_LE (strf->rate);
-  strf->av_bps = GUINT32_FROM_LE (strf->av_bps);
-  strf->blockalign = GUINT16_FROM_LE (strf->blockalign);
-  strf->size = GUINT16_FROM_LE (strf->size);
-#endif
-
-  /* size checking */
-  *extradata = NULL;
-  if (GST_BUFFER_SIZE (buf) > sizeof (gst_riff_strf_auds) + 2) {
-    gint len;
-
-    len = GST_READ_UINT16_LE (&GST_BUFFER_DATA (buf)[16]);
-    if (len + 2 + sizeof (gst_riff_strf_auds) > GST_BUFFER_SIZE (buf)) {
-      GST_WARNING ("Extradata indicated %d bytes, but only %d available",
-          len, GST_BUFFER_SIZE (buf) - 2 - sizeof (gst_riff_strf_auds));
-      len = GST_BUFFER_SIZE (buf) - 2 - sizeof (gst_riff_strf_auds);
-    }
-    if (len > 0) {
-      *extradata = gst_buffer_create_sub (buf,
-          sizeof (gst_riff_strf_auds) + 2, len);
-    }
-  }
-
-  /* debug */
-  GST_INFO ("strf tag found in context auds:");
-  GST_INFO (" format      %d", strf->format);
-  GST_INFO (" channels    %d", strf->channels);
-  GST_INFO (" rate        %d", strf->rate);
-  GST_INFO (" av_bps      %d", strf->av_bps);
-  GST_INFO (" blockalign  %d", strf->blockalign);
-  GST_INFO (" size        %d", strf->size);     /* wordsize, not extrasize! */
-  if (*extradata)
-    GST_INFO (" %d bytes extra_data", GST_BUFFER_SIZE (*extradata));
-
-  gst_buffer_unref (buf);
-
-  *header = strf;
-
-  return TRUE;
-}
-
-/*
- * Obsolete, use gst_riff_read_strf_auds_with_data ().
- */
-gboolean
-gst_riff_read_strf_auds (GstRiffRead * riff, gst_riff_strf_auds ** header)
-{
-  GstBuffer *data = NULL;
-  gboolean ret;
-
-  ret = gst_riff_read_strf_auds_with_data (riff, header, &data);
-  if (data)
-    gst_buffer_unref (data);
-
-  return ret;
-}
-
-gboolean
-gst_riff_read_strf_iavs (GstRiffRead * riff, gst_riff_strf_iavs ** header)
-{
-  guint32 tag;
-  GstBuffer *buf;
-  gst_riff_strf_iavs *strf;
-
-  if (!gst_riff_read_data (riff, &tag, &buf))
-    return FALSE;
-
-  if (tag != GST_RIFF_TAG_strf) {
-    g_warning ("Not a strf chunk");
-    gst_buffer_unref (buf);
-    return FALSE;
-  }
-  if (GST_BUFFER_SIZE (buf) < sizeof (gst_riff_strf_iavs)) {
-    GST_WARNING ("Too small strf_iavs (%d available, %d needed)",
-        GST_BUFFER_SIZE (buf), (int) sizeof (gst_riff_strf_iavs));
-    gst_buffer_unref (buf);
-    return FALSE;
-  }
-
-  strf = g_memdup (GST_BUFFER_DATA (buf), GST_BUFFER_SIZE (buf));
-  gst_buffer_unref (buf);
-
-#if (G_BYTE_ORDER == G_BIG_ENDIAN)
-  strf->DVAAuxSrc = GUINT32_FROM_LE (strf->DVAAuxSrc);
-  strf->DVAAuxCtl = GUINT32_FROM_LE (strf->DVAAuxCtl);
-  strf->DVAAuxSrc1 = GUINT32_FROM_LE (strf->DVAAuxSrc1);
-  strf->DVAAuxCtl1 = GUINT32_FROM_LE (strf->DVAAuxCtl1);
-  strf->DVVAuxSrc = GUINT32_FROM_LE (strf->DVVAuxSrc);
-  strf->DVVAuxCtl = GUINT32_FROM_LE (strf->DVVAuxCtl);
-  strf->DVReserved1 = GUINT32_FROM_LE (strf->DVReserved1);
-  strf->DVReserved2 = GUINT32_FROM_LE (strf->DVReserved2);
-#endif
-
-  /* debug */
-  GST_INFO ("strf tag found in context iavs");
-  GST_INFO (" DVAAuxSrc   %08x", strf->DVAAuxSrc);
-  GST_INFO (" DVAAuxCtl   %08x", strf->DVAAuxCtl);
-  GST_INFO (" DVAAuxSrc1  %08x", strf->DVAAuxSrc1);
-  GST_INFO (" DVAAuxCtl1  %08x", strf->DVAAuxCtl1);
-  GST_INFO (" DVVAuxSrc   %08x", strf->DVVAuxSrc);
-  GST_INFO (" DVVAuxCtl   %08x", strf->DVVAuxCtl);
-  GST_INFO (" DVReserved1 %08x", strf->DVReserved1);
-  GST_INFO (" DVReserved2 %08x", strf->DVReserved2);
-
-  *header = strf;
-
-  return TRUE;
-}
-
-/*
- * Read a list.
- */
-
-gboolean
-gst_riff_read_list (GstRiffRead * riff, guint32 * tag)
-{
-  guint32 length, lst;
-  GstRiffLevel *level;
-  guint8 *data;
-
-  if (!gst_riff_peek_head (riff, &lst, &length, NULL))
-    return FALSE;
-  if (lst != GST_RIFF_TAG_LIST) {
-    g_warning ("Not a LIST object");
-    return FALSE;
-  }
-  gst_bytestream_flush_fast (riff->bs, 8);
-  if (gst_bytestream_peek_bytes (riff->bs, &data, 4) != 4) {
-    GST_ELEMENT_ERROR (riff, RESOURCE, READ, (NULL), (NULL));
-    return FALSE;
-  }
-  gst_bytestream_flush_fast (riff->bs, 4);
-  *tag = GST_READ_UINT32_LE (data);
-
-  /* remember level */
-  level = g_new (GstRiffLevel, 1);
-  level->start = gst_bytestream_tell (riff->bs);
-  level->length = length - 4;
-  riff->level = g_list_append (riff->level, level);
-
-  return TRUE;
-}
-
-/*
- * Utility function for reading metadata in a RIFF file.
- */
-
-gboolean
-gst_riff_read_info (GstRiffRead * riff)
-{
-  guint32 tag;
-  guint64 end;
-  GstRiffLevel *level;
-  GList *last;
-  gchar *name, *type;
-  GstTagList *taglist;
-  gboolean have_tags = FALSE;
-
-  /* What we're doing here is ugly (oh no!); we look
-   * at our LIST tag size and assure that we do not
-   * cross boundaries. This is to maintain the level
-   * counter for the client app. */
-  last = g_list_last (riff->level);
-  level = last->data;
-  riff->level = g_list_remove (riff->level, level);
-  end = level->start + level->length;
-  g_free (level);
-
-  taglist = gst_tag_list_new ();
-
-  while (gst_bytestream_tell (riff->bs) < end) {
-    if (!gst_riff_peek_head (riff, &tag, NULL, NULL)) {
-      return FALSE;
-    }
-
-    /* find out the type of metadata */
-    switch (tag) {
-      case GST_RIFF_INFO_IARL:
-        type = GST_TAG_LOCATION;
-        break;
-      case GST_RIFF_INFO_IART:
-        type = GST_TAG_ARTIST;
-        break;
-      case GST_RIFF_INFO_ICMS:
-        type = NULL;            /*"Commissioner"; */
-        break;
-      case GST_RIFF_INFO_ICMT:
-        type = GST_TAG_COMMENT;
-        break;
-      case GST_RIFF_INFO_ICOP:
-        type = GST_TAG_COPYRIGHT;
-        break;
-      case GST_RIFF_INFO_ICRD:
-        type = GST_TAG_DATE;
-        break;
-      case GST_RIFF_INFO_ICRP:
-        type = NULL;            /*"Cropped"; */
-        break;
-      case GST_RIFF_INFO_IDIM:
-        type = NULL;            /*"Dimensions"; */
-        break;
-      case GST_RIFF_INFO_IDPI:
-        type = NULL;            /*"Dots per Inch"; */
-        break;
-      case GST_RIFF_INFO_IENG:
-        type = NULL;            /*"Engineer"; */
-        break;
-      case GST_RIFF_INFO_IGNR:
-        type = GST_TAG_GENRE;
-        break;
-      case GST_RIFF_INFO_IKEY:
-        type = NULL; /*"Keywords"; */ ;
-        break;
-      case GST_RIFF_INFO_ILGT:
-        type = NULL;            /*"Lightness"; */
-        break;
-      case GST_RIFF_INFO_IMED:
-        type = NULL;            /*"Medium"; */
-        break;
-      case GST_RIFF_INFO_INAM:
-        type = GST_TAG_TITLE;
-        break;
-      case GST_RIFF_INFO_IPLT:
-        type = NULL;            /*"Palette"; */
-        break;
-      case GST_RIFF_INFO_IPRD:
-        type = NULL;            /*"Product"; */
-        break;
-      case GST_RIFF_INFO_ISBJ:
-        type = NULL;            /*"Subject"; */
-        break;
-      case GST_RIFF_INFO_ISFT:
-        type = GST_TAG_ENCODER;
-        break;
-      case GST_RIFF_INFO_ISHP:
-        type = NULL;            /*"Sharpness"; */
-        break;
-      case GST_RIFF_INFO_ISRC:
-        type = GST_TAG_ISRC;
-        break;
-      case GST_RIFF_INFO_ISRF:
-        type = NULL;            /*"Source Form"; */
-        break;
-      case GST_RIFF_INFO_ITCH:
-        type = NULL;            /*"Technician"; */
-        break;
-      default:
-        type = NULL;
-        GST_WARNING ("Unknown INFO (metadata) tag entry " GST_FOURCC_FORMAT,
-            GST_FOURCC_ARGS (tag));
-        break;
-    }
-
-    if (type) {
-      name = NULL;
-      if (!gst_riff_read_ascii (riff, &tag, &name)) {
-        return FALSE;
-      }
-
-      if (name && name[0] != '\0') {
-        GValue src = { 0 }
-        , dest = {
-        0};
-        GType dest_type = gst_tag_get_type (type);
-
-        have_tags = TRUE;
-        g_value_init (&src, G_TYPE_STRING);
-        g_value_set_string (&src, name);
-        g_value_init (&dest, dest_type);
-        g_value_transform (&src, &dest);
-        g_value_unset (&src);
-        gst_tag_list_add_values (taglist, GST_TAG_MERGE_APPEND,
-            type, &dest, NULL);
-        g_value_unset (&dest);
-      }
-      g_free (name);
-    } else {
-      gst_riff_read_skip (riff);
-    }
-  }
-
-  if (have_tags) {
-    GstElement *element = GST_ELEMENT (riff);
-    GstEvent *event = gst_event_new_tag (taglist);
-    const GList *padlist;
-
-    /* let the world know about this wonderful thing */
-    for (padlist = gst_element_get_pad_list (element);
-        padlist != NULL; padlist = padlist->next) {
-      if (GST_PAD_IS_SRC (padlist->data) && GST_PAD_IS_USABLE (padlist->data)) {
-        gst_event_ref (event);
-        gst_pad_push (GST_PAD (padlist->data), GST_DATA (event));
-      }
-    }
-
-    gst_element_found_tags (element, taglist);
-
-    gst_event_unref (event);
-  } else {
-    gst_tag_list_free (taglist);
-  }
-
-  return TRUE;
-}
-
-/*
- * Read RIFF header and document type.
- */
-
-gboolean
-gst_riff_read_header (GstRiffRead * riff, guint32 * doctype)
-{
-  GstRiffLevel *level;
-  guint32 tag, length;
-  guint8 *data;
-
-  /* We ignore size for openDML-2.0 support */
-  if (!gst_riff_peek_head (riff, &tag, &length, NULL))
-    return FALSE;
-  if (tag != GST_RIFF_TAG_RIFF) {
-    GST_ELEMENT_ERROR (riff, STREAM, WRONG_TYPE, (NULL), (NULL));
-    return FALSE;
-  }
-  gst_bytestream_flush_fast (riff->bs, 8);
-
-  /* doctype */
-  if (gst_bytestream_peek_bytes (riff->bs, &data, 4) != 4) {
-    GST_ELEMENT_ERROR (riff, RESOURCE, READ, (NULL), (NULL));
-    return FALSE;
-  }
-  gst_bytestream_flush_fast (riff->bs, 4);
-  *doctype = GST_READ_UINT32_LE (data);
-
-  /* remember level */
-  level = g_new (GstRiffLevel, 1);
-  level->start = gst_bytestream_tell (riff->bs);
-  level->length = length - 4;
-  riff->level = g_list_append (riff->level, level);
-
-  return TRUE;
-}
diff --git a/gst-libs/gst/riff/riff-read.h b/gst-libs/gst/riff/riff-read.h
deleted file mode 100644 (file)
index a0c1260..0000000
+++ /dev/null
@@ -1,114 +0,0 @@
-/* GStreamer RIFF I/O
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * riff-read.h: function declarations for parsing a RIFF file
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __GST_RIFF_READ_H__
-#define __GST_RIFF_READ_H__
-
-#include <glib.h>
-#include <gst/gst.h>
-#include <gst/bytestream/bytestream.h>
-
-G_BEGIN_DECLS
-
-#define GST_TYPE_RIFF_READ \
-  (gst_riff_read_get_type ())
-#define GST_RIFF_READ(obj) \
-  (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_RIFF_READ, GstRiffRead))
-#define GST_RIFF_READ_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_RIFF_READ, GstRiffReadClass))
-#define GST_IS_RIFF_READ(obj) \
-  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_RIFF_READ))
-#define GST_IS_RIFF_READ_CLASS(obj) \
-  (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_RIFF_READ))
-#define GST_RIFF_READ_GET_CLASS(obj) \
-  (G_TYPE_INSTANCE_GET_CLASS ((obj), GST_TYPE_RIFF_READ, GstRiffReadClass))
-
-typedef struct _GstRiffLevel {
-  guint64 start,
-         length;
-} GstRiffLevel;
-
-typedef struct _GstRiffRead {
-  GstElement parent;
-
-  GstPad *sinkpad;
-  GstByteStream *bs;
-
-  GList *level;
-} GstRiffRead;
-
-typedef struct _GstRiffReadClass {
-  GstElementClass parent;
-} GstRiffReadClass;
-
-GType    gst_riff_read_get_type  (void);
-
-guint32  gst_riff_peek_tag       (GstRiffRead *riff,
-                                 guint       *level_up);
-guint32  gst_riff_peek_list      (GstRiffRead *riff);
-gboolean gst_riff_peek_head      (GstRiffRead *riff,
-                                 guint32     *tag,
-                                 guint32     *length,
-                                 guint       *level_up);
-
-GstEvent *gst_riff_read_seek      (GstRiffRead *riff,
-                                 guint64      offset);
-gboolean gst_riff_read_skip      (GstRiffRead *riff);
-gboolean gst_riff_read_data      (GstRiffRead *riff,
-                                 guint32     *tag,
-                                 GstBuffer  **buf);
-gboolean gst_riff_read_ascii     (GstRiffRead *riff,
-                                 guint32     *tag,
-                                 gchar      **str);
-gboolean gst_riff_read_list      (GstRiffRead *riff,
-                                 guint32     *tag);
-gboolean gst_riff_read_header    (GstRiffRead *read,
-                                 guint32     *doctype);
-GstBuffer *gst_riff_read_element_data (GstRiffRead *riff,
-                                      guint        length,
-                                      guint       *got_bytes);
-GstBuffer *gst_riff_peek_element_data (GstRiffRead *riff,
-                                      guint        length,
-                                      guint       *got_bytes);
-/*
- * Utility functions (including byteswapping).
- */
-gboolean gst_riff_read_strh      (GstRiffRead *riff,
-                                 gst_riff_strh **header);
-gboolean gst_riff_read_strf_vids (GstRiffRead *riff,
-                                 gst_riff_strf_vids **header);
-gboolean gst_riff_read_strf_vids_with_data
-                                (GstRiffRead *riff,
-                                 gst_riff_strf_vids **header,
-                                 GstBuffer  **extradata);
-gboolean gst_riff_read_strf_auds (GstRiffRead *riff,
-                                 gst_riff_strf_auds **header);
-gboolean gst_riff_read_strf_auds_with_data
-                                (GstRiffRead *riff,
-                                 gst_riff_strf_auds **header,
-                                 GstBuffer **extradata);
-gboolean gst_riff_read_strf_iavs (GstRiffRead *riff,
-                                 gst_riff_strf_iavs **header);
-gboolean gst_riff_read_info      (GstRiffRead *riff);
-
-G_END_DECLS
-
-#endif /* __GST_RIFF_READ_H__ */
diff --git a/gst-libs/gst/riff/riff.c b/gst-libs/gst/riff/riff.c
deleted file mode 100644 (file)
index ab8d47b..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-/* GStreamer RIFF I/O
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * riff.c: plugin registering
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <gst/gst.h>
-
-static gboolean
-plugin_init (GstPlugin * plugin)
-{
-  return gst_library_load ("gstbytestream");
-}
-
-GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
-    GST_VERSION_MINOR,
-    "riff",
-    "RIFF I/O functions",
-    plugin_init, VERSION, GST_LICENSE, GST_PACKAGE, GST_ORIGIN)
diff --git a/gst-libs/gst/riff/riff.def b/gst-libs/gst/riff/riff.def
deleted file mode 100644 (file)
index c6ea208..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-EXPORTS
-    gst_plugin_desc
-    gst_riff_read_get_type
-    gst_riff_read_element_data
-    gst_riff_create_video_template_caps
-    gst_riff_create_video_caps
-    gst_riff_create_video_caps_with_data
-    gst_riff_create_audio_template_caps
-    gst_riff_create_audio_caps
-    gst_riff_create_audio_caps_with_data
-    gst_riff_create_iavs_template_caps
-    gst_riff_create_iavs_caps
-    gst_riff_read_header
-    gst_riff_read_data
-    gst_riff_read_seek
-    gst_riff_read_skip
-    gst_riff_read_info
-    gst_riff_read_list
-    gst_riff_read_ascii
-    gst_riff_read_strh
-    gst_riff_read_strf_iavs
-    gst_riff_read_strf_auds
-    gst_riff_read_strf_auds_with_data
-    gst_riff_read_strf_vids_with_data
-    gst_riff_peek_tag
-    gst_riff_peek_list
-    gst_riff_peek_head
diff --git a/gst-libs/gst/riff/riff.vcproj b/gst-libs/gst/riff/riff.vcproj
deleted file mode 100644 (file)
index dde87c0..0000000
+++ /dev/null
@@ -1,158 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
-       ProjectType="Visual C++"
-       Version="7.10"
-       Name="riff"
-       ProjectGUID="{979C216F-0ACF-4956-AE00-055A42D67890}"
-       Keyword="Win32Proj">
-       <Platforms>
-               <Platform
-                       Name="Win32"/>
-       </Platforms>
-       <Configurations>
-               <Configuration
-                       Name="Debug|Win32"
-                       OutputDirectory="../../../win32/Debug"
-                       IntermediateDirectory="../../../win32/Debug"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               Optimization="0"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;RIFF_EXPORTS;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               MinimalRebuild="TRUE"
-                               BasicRuntimeChecks="3"
-                               RuntimeLibrary="3"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="4"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstriff.dll"
-                               LinkIncremental="2"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Debug;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile="riff.def"
-                               GenerateDebugInformation="TRUE"
-                               ProgramDatabaseFile="$(OutDir)/riff.pdb"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               ImportLibrary="$(OutDir)/gstriff.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-               <Configuration
-                       Name="Release|Win32"
-                       OutputDirectory="../../../win32/Release"
-                       IntermediateDirectory="../../../win32/Release"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;NDEBUG;GST_DISABLE_GST_DEBUG;_WINDOWS;_USRDLL;RIFF_EXPORTS;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               RuntimeLibrary="2"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="3"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstriff.dll"
-                               LinkIncremental="1"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Release;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile="riff.def"
-                               GenerateDebugInformation="TRUE"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               EnableCOMDATFolding="2"
-                               ImportLibrary="$(OutDir)/gstriff.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-       </Configurations>
-       <References>
-       </References>
-       <Files>
-               <Filter
-                       Name="Source Files"
-                       Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
-                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
-                       <File
-                               RelativePath=".\riff-media.c">
-                       </File>
-                       <File
-                               RelativePath=".\riff-read.c">
-                       </File>
-                       <File
-                               RelativePath=".\riff.c">
-                       </File>
-                       <File
-                               RelativePath=".\riff.def">
-                       </File>
-               </Filter>
-               <Filter
-                       Name="Header Files"
-                       Filter="h;hpp;hxx;hm;inl;inc;xsd"
-                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
-                       <File
-                               RelativePath=".\riff-ids.h">
-                       </File>
-                       <File
-                               RelativePath=".\riff-media.h">
-                       </File>
-                       <File
-                               RelativePath=".\riff-read.h">
-                       </File>
-               </Filter>
-       </Files>
-       <Globals>
-       </Globals>
-</VisualStudioProject>
diff --git a/gst-libs/gst/tag/Makefile.am b/gst-libs/gst/tag/Makefile.am
deleted file mode 100644 (file)
index 002d6ff..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-libgsttagincludedir = \
-       $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/tag
-
-libgsttaginclude_HEADERS = \
-       tag.h
diff --git a/gst-libs/gst/tag/tag.h b/gst-libs/gst/tag/tag.h
deleted file mode 100644 (file)
index 97eaf93..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-/* GStreamer
- * Copyright (C) 2003 Benjamin Otte <in7y118@public.uni-hamburg.de>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-
-#ifndef __GST_TAG_TAG_H__
-#define __GST_TAG_TAG_H__
-
-#include <gst/gst.h>
-
-G_BEGIN_DECLS
-
-
-/* functions for vorbis comment manipulation */
-
-G_CONST_RETURN gchar * gst_tag_from_vorbis_tag                 (const gchar *          vorbis_tag);
-G_CONST_RETURN gchar * gst_tag_to_vorbis_tag                   (const gchar *          gst_tag);
-void                    gst_vorbis_tag_add                      (GstTagList *           list, 
-                                                                const gchar *          tag, 
-                                                                const gchar *          value);
-
-GList *                 gst_tag_to_vorbis_comments              (const GstTagList *     list, 
-                                                                const gchar *          tag);
-
-/* functions to convert GstBuffers with vorbiscomment contents to GstTagLists and back */
-GstTagList *           gst_tag_list_from_vorbiscomment_buffer  (const GstBuffer *      buffer,
-                                                                const guint8 *         id_data,
-                                                                const guint            id_data_length,
-                                                                gchar **               vendor_string);
-GstBuffer *            gst_tag_list_to_vorbiscomment_buffer    (const GstTagList *     list,
-                                                                const guint8 *         id_data,
-                                                                const guint            id_data_length,
-                                                                const gchar *          vendor_string);
-
-/* functions for ID3 tag manipulation */
-
-guint                  gst_tag_id3_genre_count                 (void);
-G_CONST_RETURN gchar * gst_tag_id3_genre_get                   (const guint            id);
-GstTagList *           gst_tag_list_new_from_id3v1             (const guint8 *         data);
-
-G_CONST_RETURN gchar * gst_tag_from_id3_tag                    (const gchar *          vorbis_tag);
-G_CONST_RETURN gchar * gst_tag_to_id3_tag                      (const gchar *          gst_tag);
-
-
-G_END_DECLS
-
-#endif /* __GST_TAG_TAG_H__ */
diff --git a/gst-libs/gst/tuner/Makefile.am b/gst-libs/gst/tuner/Makefile.am
deleted file mode 100644 (file)
index 0f2b43b..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-# variables used for enum/marshal generation
-glib_enum_headers=$(tuner_headers)
-glib_enum_define=GST_TUNER
-glib_enum_prefix=gst_tuner
-
-libgsttunerincludedir = \
-       $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/tuner
-
-tuner_headers = \
-       tuner.h \
-       tunernorm.h \
-       tunerchannel.h
-
-built_sources =        \
-       tuner-marshal.c \
-       tuner-enumtypes.c
-
-built_headers =        \
-       tuner-marshal.h \
-       tuner-enumtypes.h
-
-libgsttunerinclude_HEADERS = \
-       $(tuner_headers)
-
-nodist_libgsttunerinclude_HEADERS = \
-       tuner-enumtypes.h
-
-noinst_LTLIBRARIES = libgsttuner.la
-
-libgsttuner_la_SOURCES = \
-       tuner.c \
-       tunernorm.c \
-       tunerchannel.c
-
-nodist_libgsttuner_la_SOURCES = \
-       $(built_sources) \
-       tuner-marshal.h
-
-libgsttuner_la_CFLAGS = $(GST_CFLAGS)
-
-BUILT_SOURCES = \
-       $(built_sources) \
-       $(built_headers)
-
-EXTRA_DIST = tuner-marshal.list
-
-CLEANFILES = $(BUILT_SOURCES)
-
-include $(top_srcdir)/common/glib-gen.mak
diff --git a/gst-libs/gst/tuner/tuner-marshal.list b/gst-libs/gst/tuner/tuner-marshal.list
deleted file mode 100644 (file)
index c99ddc7..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-VOID:OBJECT,ULONG
-VOID:OBJECT,INT
diff --git a/gst-libs/gst/tuner/tuner.c b/gst-libs/gst/tuner/tuner.c
deleted file mode 100644 (file)
index 5bfe1ae..0000000
+++ /dev/null
@@ -1,404 +0,0 @@
-/* GStreamer Tuner
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * tuner.c: tuner design virtual class function wrappers
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "tuner.h"
-#include "tuner-marshal.h"
-
-#include <string.h>
-
-enum
-{
-  NORM_CHANGED,
-  CHANNEL_CHANGED,
-  FREQUENCY_CHANGED,
-  SIGNAL_CHANGED,
-  LAST_SIGNAL
-};
-
-static void gst_tuner_class_init (GstTunerClass * klass);
-
-static guint gst_tuner_signals[LAST_SIGNAL] = { 0 };
-
-GType
-gst_tuner_get_type (void)
-{
-  static GType gst_tuner_type = 0;
-
-  if (!gst_tuner_type) {
-    static const GTypeInfo gst_tuner_info = {
-      sizeof (GstTunerClass),
-      (GBaseInitFunc) gst_tuner_class_init,
-      NULL,
-      NULL,
-      NULL,
-      NULL,
-      0,
-      0,
-      NULL,
-    };
-
-    gst_tuner_type = g_type_register_static (G_TYPE_INTERFACE,
-        "GstTuner", &gst_tuner_info, 0);
-    g_type_interface_add_prerequisite (gst_tuner_type,
-        GST_TYPE_IMPLEMENTS_INTERFACE);
-  }
-
-  return gst_tuner_type;
-}
-
-static void
-gst_tuner_class_init (GstTunerClass * klass)
-{
-  static gboolean initialized = FALSE;
-
-  if (!initialized) {
-    gst_tuner_signals[NORM_CHANGED] =
-        g_signal_new ("norm-changed",
-        GST_TYPE_TUNER, G_SIGNAL_RUN_LAST,
-        G_STRUCT_OFFSET (GstTunerClass, norm_changed),
-        NULL, NULL,
-        g_cclosure_marshal_VOID__OBJECT, G_TYPE_NONE, 1, GST_TYPE_TUNER_NORM);
-    gst_tuner_signals[CHANNEL_CHANGED] =
-        g_signal_new ("channel-changed",
-        GST_TYPE_TUNER, G_SIGNAL_RUN_LAST,
-        G_STRUCT_OFFSET (GstTunerClass, channel_changed),
-        NULL, NULL,
-        g_cclosure_marshal_VOID__OBJECT, G_TYPE_NONE, 1,
-        GST_TYPE_TUNER_CHANNEL);
-    gst_tuner_signals[FREQUENCY_CHANGED] =
-        g_signal_new ("frequency-changed",
-        GST_TYPE_TUNER, G_SIGNAL_RUN_LAST,
-        G_STRUCT_OFFSET (GstTunerClass, frequency_changed),
-        NULL, NULL,
-        gst_tuner_marshal_VOID__OBJECT_ULONG, G_TYPE_NONE, 2,
-        GST_TYPE_TUNER_CHANNEL, G_TYPE_ULONG);
-    gst_tuner_signals[SIGNAL_CHANGED] =
-        g_signal_new ("signal-changed",
-        GST_TYPE_TUNER, G_SIGNAL_RUN_LAST,
-        G_STRUCT_OFFSET (GstTunerClass, signal_changed),
-        NULL, NULL,
-        gst_tuner_marshal_VOID__OBJECT_INT, G_TYPE_NONE, 2,
-        GST_TYPE_TUNER_CHANNEL, G_TYPE_INT);
-
-    initialized = TRUE;
-  }
-
-  /* default virtual functions */
-  klass->list_channels = NULL;
-  klass->set_channel = NULL;
-  klass->get_channel = NULL;
-
-  klass->list_norms = NULL;
-  klass->set_norm = NULL;
-  klass->get_norm = NULL;
-
-  klass->set_frequency = NULL;
-  klass->get_frequency = NULL;
-  klass->signal_strength = NULL;
-}
-
-/**
- * gst_tuner_list_channels:
- * @tuner: the #GstTuner (a #GstElement) to get the channels from.
- *
- * Retrieve a list of channels (e.g. 'composite', 's-video', ...)
- * from the given tuner object.
- *
- * Returns: a list of channels available on this tuner.
- */
-
-const GList *
-gst_tuner_list_channels (GstTuner * tuner)
-{
-  GstTunerClass *klass = GST_TUNER_GET_CLASS (tuner);
-
-  if (klass->list_channels) {
-    return klass->list_channels (tuner);
-  }
-
-  return NULL;
-}
-
-/**
- * gst_tuner_set_channel:
- * @tuner: the #GstTuner (a #GstElement) that owns the channel.
- * @channel: the channel to tune to.
- *
- * Tunes the object to the given channel.
- */
-
-void
-gst_tuner_set_channel (GstTuner * tuner, GstTunerChannel * channel)
-{
-  GstTunerClass *klass = GST_TUNER_GET_CLASS (tuner);
-
-  if (klass->set_channel) {
-    klass->set_channel (tuner, channel);
-  }
-}
-
-/**
- * gst_Tuner_get_channel:
- * @tuner: the #GstTuner (a #GstElement) to get the current channel from.
- *
- * Retrieve the current channel from the tuner.
- *
- * Returns: the current channel of the tuner object.
- */
-
-GstTunerChannel *
-gst_tuner_get_channel (GstTuner * tuner)
-{
-  GstTunerClass *klass = GST_TUNER_GET_CLASS (tuner);
-
-  if (klass->get_channel) {
-    return klass->get_channel (tuner);
-  }
-
-  return NULL;
-}
-
-/**
- * gst_tuner_get_norms_list:
- * @tuner: the #GstTuner (*a #GstElement) to get the list of norms from.
- *
- * Retrieve a list of available norms on the currently tuned channel
- * from the given tuner object.
- *
- * Returns: A list of norms available on the current channel for this
- *          tuner object.
- */
-
-const GList *
-gst_tuner_list_norms (GstTuner * tuner)
-{
-  GstTunerClass *klass = GST_TUNER_GET_CLASS (tuner);
-
-  if (klass->list_norms) {
-    return klass->list_norms (tuner);
-  }
-
-  return NULL;
-}
-
-/**
- * gst_tuner_set_norm:
- * @tuner: the #GstTuner (a #GstElement) to set the norm on.
- * @norm: the norm to use for the current channel.
- *
- * Changes the video norm on this tuner to the given norm.
- */
-
-void
-gst_tuner_set_norm (GstTuner * tuner, GstTunerNorm * norm)
-{
-  GstTunerClass *klass = GST_TUNER_GET_CLASS (tuner);
-
-  if (klass->set_norm) {
-    klass->set_norm (tuner, norm);
-  }
-}
-
-/**
- * gst_tuner_get_norm:
- * @tuner: the #GstTuner (a #GstElement) to get the current norm from.
- *
- * Get the current video norm from the given tuner object for the
- * currently selected channel.
- *
- * Returns: the current norm.
- */
-
-GstTunerNorm *
-gst_tuner_get_norm (GstTuner * tuner)
-{
-  GstTunerClass *klass = GST_TUNER_GET_CLASS (tuner);
-
-  if (klass->get_norm) {
-    return klass->get_norm (tuner);
-  }
-
-  return NULL;
-}
-
-/**
- * gst_tuner_set_frequency:
- * @tuner: the #Gsttuner (a #GstElement) that owns the given channel.
- * @channel: the #GstTunerChannel to set the frequency on.
- * @frequency: the frequency to tune in to.
- *
- * Sets a tuning frequency on the given tuner/channel. Note that this
- * requires the given channel to be a "tuning" channel, which can be
- * checked using GST_TUNER_CHANNEL_HAS_FLAG (), with the proper flag
- * being GST_TUNER_CHANNEL_FREQUENCY.
- */
-
-void
-gst_tuner_set_frequency (GstTuner * tuner,
-    GstTunerChannel * channel, gulong frequency)
-{
-  GstTunerClass *klass = GST_TUNER_GET_CLASS (tuner);
-
-  g_return_if_fail (GST_TUNER_CHANNEL_HAS_FLAG (channel,
-          GST_TUNER_CHANNEL_FREQUENCY));
-
-  if (klass->set_frequency) {
-    klass->set_frequency (tuner, channel, frequency);
-  }
-}
-
-/**
- * gst_tuner_get_frequency:
- * @tuner: the #GstTuner (a #GstElement) that owns the given channel.
- * @channel: the #GstTunerChannel to retrieve the frequency from.
- *
- * Retrieve the current frequency from the given channel. The same
- * applies as for set_frequency (): check the flag.
- *
- * Returns: the current frequency, or 0 on error.
- */
-
-gulong
-gst_tuner_get_frequency (GstTuner * tuner, GstTunerChannel * channel)
-{
-  GstTunerClass *klass = GST_TUNER_GET_CLASS (tuner);
-
-  g_return_val_if_fail (GST_TUNER_CHANNEL_HAS_FLAG (channel,
-          GST_TUNER_CHANNEL_FREQUENCY), 0);
-
-  if (klass->get_frequency) {
-    return klass->get_frequency (tuner, channel);
-  }
-
-  return 0;
-}
-
-/**
- * gst_tuner_get_signal_strength:
- * @tuner: the #GstTuner (a #GstElement) that owns the given channel.
- * @channel: the #GstTunerChannel to get the signal strength from.
- *
- * get the strength of the signal on this channel. Note that this
- * requires the current channel to be a "tuning" channel, e.g. a
- * channel on which frequency can be set. This can be checked using
- * GST_TUNER_CHANNEL_HAS_FLAG (), and the appropriate flag to check
- * for is GST_TUNER_CHANNEL_FREQUENCY.
- *
- * Returns: signal strength, or 0 on error.
- */
-
-gint
-gst_tuner_signal_strength (GstTuner * tuner, GstTunerChannel * channel)
-{
-  GstTunerClass *klass = GST_TUNER_GET_CLASS (tuner);
-
-  g_return_val_if_fail (GST_TUNER_CHANNEL_HAS_FLAG (channel,
-          GST_TUNER_CHANNEL_FREQUENCY), 0);
-
-  if (klass->signal_strength) {
-    return klass->signal_strength (tuner, channel);
-  }
-
-  return 0;
-}
-
-GstTunerNorm *
-gst_tuner_find_norm_by_name (GstTuner * tuner, gchar * norm)
-{
-  GList *walk;
-
-  g_return_val_if_fail (GST_TUNER (tuner), NULL);
-  g_return_val_if_fail (norm != NULL, NULL);
-
-  walk = (GList *) gst_tuner_list_norms (tuner);
-  while (walk) {
-    if (strcmp (GST_TUNER_NORM (walk->data)->label, norm) == 0)
-      return GST_TUNER_NORM (walk->data);
-    walk = g_list_next (walk);
-  }
-  return NULL;
-}
-
-GstTunerChannel *
-gst_tuner_find_channel_by_name (GstTuner * tuner, gchar * channel)
-{
-  GList *walk;
-
-  g_return_val_if_fail (GST_TUNER (tuner), NULL);
-  g_return_val_if_fail (channel != NULL, NULL);
-
-  walk = (GList *) gst_tuner_list_channels (tuner);
-  while (walk) {
-    if (strcmp (GST_TUNER_CHANNEL (walk->data)->label, channel) == 0)
-      return GST_TUNER_CHANNEL (walk->data);
-    walk = g_list_next (walk);
-  }
-  return NULL;
-}
-
-void
-gst_tuner_channel_changed (GstTuner * tuner, GstTunerChannel * channel)
-{
-  g_return_if_fail (GST_IS_TUNER (tuner));
-  g_return_if_fail (GST_IS_TUNER_CHANNEL (channel));
-
-  g_signal_emit (G_OBJECT (tuner),
-      gst_tuner_signals[CHANNEL_CHANGED], 0, channel);
-}
-
-void
-gst_tuner_norm_changed (GstTuner * tuner, GstTunerNorm * norm)
-{
-  g_return_if_fail (GST_IS_TUNER (tuner));
-  g_return_if_fail (GST_IS_TUNER_NORM (norm));
-
-  g_signal_emit (G_OBJECT (tuner), gst_tuner_signals[NORM_CHANGED], 0, norm);
-}
-
-void
-gst_tuner_frequency_changed (GstTuner * tuner,
-    GstTunerChannel * channel, gulong frequency)
-{
-  g_return_if_fail (GST_IS_TUNER (tuner));
-  g_return_if_fail (GST_IS_TUNER_CHANNEL (channel));
-
-  g_signal_emit (G_OBJECT (tuner),
-      gst_tuner_signals[FREQUENCY_CHANGED], 0, channel, frequency);
-
-  g_signal_emit_by_name (G_OBJECT (channel), "frequency_changed", frequency);
-}
-
-void
-gst_tuner_signal_changed (GstTuner * tuner,
-    GstTunerChannel * channel, gint signal)
-{
-  g_return_if_fail (GST_IS_TUNER (tuner));
-  g_return_if_fail (GST_IS_TUNER_CHANNEL (channel));
-
-  g_signal_emit (G_OBJECT (tuner),
-      gst_tuner_signals[SIGNAL_CHANGED], 0, channel, signal);
-
-  g_signal_emit_by_name (G_OBJECT (channel), "signal_changed", signal);
-}
diff --git a/gst-libs/gst/tuner/tuner.h b/gst-libs/gst/tuner/tuner.h
deleted file mode 100644 (file)
index 8c93538..0000000
+++ /dev/null
@@ -1,127 +0,0 @@
-/* GStreamer Tuner
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * tuner.h: tuner interface design
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __GST_TUNER_H__
-#define __GST_TUNER_H__
-
-#include <gst/gst.h>
-#include <gst/tuner/tunernorm.h>
-#include <gst/tuner/tunerchannel.h>
-#include <gst/tuner/tuner-enumtypes.h>
-
-G_BEGIN_DECLS
-
-#define GST_TYPE_TUNER \
-  (gst_tuner_get_type ())
-#define GST_TUNER(obj) \
-  (GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_TUNER, GstTuner))
-#define GST_TUNER_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_TUNER, GstTunerClass))
-#define GST_IS_TUNER(obj) \
-  (GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_TUNER))
-#define GST_IS_TUNER_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_TUNER))
-#define GST_TUNER_GET_CLASS(inst) \
-  (G_TYPE_INSTANCE_GET_INTERFACE ((inst), GST_TYPE_TUNER, GstTunerClass))
-
-typedef struct _GstTuner GstTuner;
-
-typedef struct _GstTunerClass {
-  GTypeInterface klass;
-
-  /* virtual functions */
-  const GList * (* list_channels)   (GstTuner        *tuner);
-  void          (* set_channel)     (GstTuner        *tuner,
-                                    GstTunerChannel *channel);
-  GstTunerChannel *
-               (* get_channel)     (GstTuner        *tuner);
-
-  const GList * (* list_norms)      (GstTuner        *tuner);
-  void          (* set_norm)        (GstTuner        *tuner,
-                                    GstTunerNorm    *norm);
-  GstTunerNorm *(* get_norm)        (GstTuner        *tuner);
-
-  void          (* set_frequency)   (GstTuner        *tuner,
-                                    GstTunerChannel *channel,
-                                    gulong           frequency);
-  gulong        (* get_frequency)   (GstTuner        *tuner,
-                                    GstTunerChannel *channel);
-  gint         (* signal_strength) (GstTuner        *tuner,
-                                    GstTunerChannel *channel);
-
-  /* signals */
-  void (*channel_changed)   (GstTuner        *tuner,
-                            GstTunerChannel *channel);
-  void (*norm_changed)      (GstTuner        *tuner,
-                            GstTunerNorm    *norm);
-  void (*frequency_changed) (GstTuner        *tuner,
-                            GstTunerChannel *channel,
-                            gulong           frequency);
-  void (*signal_changed)    (GstTuner        *tuner,
-                            GstTunerChannel *channel,
-                            gint             signal);
-
-  gpointer _gst_reserved[GST_PADDING];
-} GstTunerClass;
-
-GType          gst_tuner_get_type              (void);
-
-/* virtual class function wrappers */
-const GList *  gst_tuner_list_channels         (GstTuner        *tuner);
-void           gst_tuner_set_channel           (GstTuner        *tuner,
-                                                GstTunerChannel *channel);
-GstTunerChannel *
-               gst_tuner_get_channel           (GstTuner        *tuner);
-
-const GList *  gst_tuner_list_norms            (GstTuner        *tuner);
-void           gst_tuner_set_norm              (GstTuner        *tuner,
-                                                GstTunerNorm    *channel);
-GstTunerNorm * gst_tuner_get_norm              (GstTuner        *tuner);
-
-void           gst_tuner_set_frequency         (GstTuner        *tuner,
-                                                GstTunerChannel *channel,
-                                                gulong           frequency);
-gulong         gst_tuner_get_frequency         (GstTuner        *tuner,
-                                                GstTunerChannel *channel);
-gint           gst_tuner_signal_strength       (GstTuner        *tuner,
-                                                GstTunerChannel *channel);
-
-/* helper functions */
-GstTunerNorm * gst_tuner_find_norm_by_name     (GstTuner        *tuner,
-                                                gchar           *norm);
-GstTunerChannel *gst_tuner_find_channel_by_name (GstTuner       *tuner,
-                                                gchar           *channel);
-
-/* trigger signals */
-void           gst_tuner_channel_changed       (GstTuner        *tuner,
-                                                GstTunerChannel *channel);
-void           gst_tuner_norm_changed          (GstTuner        *tuner,
-                                                GstTunerNorm    *norm);
-void           gst_tuner_frequency_changed     (GstTuner        *tuner,
-                                                GstTunerChannel *channel,
-                                                gulong           frequency);
-void           gst_tuner_signal_changed        (GstTuner        *tuner,
-                                                GstTunerChannel *channel,
-                                                gint             signal);
-
-G_END_DECLS
-
-#endif /* __GST_TUNER_H__ */
diff --git a/gst-libs/gst/tuner/tuner.vcproj b/gst-libs/gst/tuner/tuner.vcproj
deleted file mode 100644 (file)
index d69b2c6..0000000
+++ /dev/null
@@ -1,156 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
-       ProjectType="Visual C++"
-       Version="7.10"
-       Name="tuner"
-       ProjectGUID="{979C216F-0ACF-4956-AE00-055A42D6789C}"
-       RootNamespace="tuner"
-       Keyword="Win32Proj">
-       <Platforms>
-               <Platform
-                       Name="Win32"/>
-       </Platforms>
-       <Configurations>
-               <Configuration
-                       Name="Debug|Win32"
-                       OutputDirectory="../../../win32/Debug"
-                       IntermediateDirectory="../../../win32/Debug"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               Optimization="0"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               MinimalRebuild="TRUE"
-                               BasicRuntimeChecks="3"
-                               RuntimeLibrary="3"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="4"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gsttuner.dll"
-                               LinkIncremental="2"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Debug;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile="tuner.def"
-                               GenerateDebugInformation="TRUE"
-                               ProgramDatabaseFile="$(OutDir)/tuner.pdb"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               ImportLibrary="$(OutDir)/gsttuner.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-               <Configuration
-                       Name="Release|Win32"
-                       OutputDirectory="../../../win32/Release"
-                       IntermediateDirectory="../../../win32/Release"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;NDEBUG;GST_DISABLE_GST_DEBUG;_WINDOWS;_USRDLL;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               RuntimeLibrary="2"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="3"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gsttuner.dll"
-                               LinkIncremental="1"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Release;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile="tuner.def"
-                               GenerateDebugInformation="TRUE"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               EnableCOMDATFolding="2"
-                               ImportLibrary="$(OutDir)/gsttuner.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-       </Configurations>
-       <References>
-       </References>
-       <Files>
-               <Filter
-                       Name="Source Files"
-                       Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
-                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
-                       <File
-                               RelativePath=".\tuner.c">
-                       </File>
-                       <File
-                               RelativePath=".\tunerchannel.c">
-                       </File>
-                       <File
-                               RelativePath=".\tunernorm.c">
-                       </File>
-               </Filter>
-               <Filter
-                       Name="Header Files"
-                       Filter="h;hpp;hxx;hm;inl;inc;xsd"
-                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
-                       <File
-                               RelativePath=".\tuner.h">
-                       </File>
-                       <File
-                               RelativePath=".\tunerchannel.h">
-                       </File>
-                       <File
-                               RelativePath=".\tunernorm.h">
-                       </File>
-               </Filter>
-       </Files>
-       <Globals>
-       </Globals>
-</VisualStudioProject>
diff --git a/gst-libs/gst/tuner/tunerchannel.c b/gst-libs/gst/tuner/tunerchannel.c
deleted file mode 100644 (file)
index 1826a3e..0000000
+++ /dev/null
@@ -1,114 +0,0 @@
-/* GStreamer Tuner
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * tunerchannel.c: tuner channel object design
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "tunerchannel.h"
-
-enum
-{
-  /* FILL ME */
-  SIGNAL_FREQUENCY_CHANGED,
-  SIGNAL_SIGNAL_CHANGED,
-  LAST_SIGNAL
-};
-
-static void gst_tuner_channel_class_init (GstTunerChannelClass * klass);
-static void gst_tuner_channel_init (GstTunerChannel * channel);
-static void gst_tuner_channel_dispose (GObject * object);
-
-static GObjectClass *parent_class = NULL;
-static guint signals[LAST_SIGNAL] = { 0 };
-
-GType
-gst_tuner_channel_get_type (void)
-{
-  static GType gst_tuner_channel_type = 0;
-
-  if (!gst_tuner_channel_type) {
-    static const GTypeInfo tuner_channel_info = {
-      sizeof (GstTunerChannelClass),
-      NULL,
-      NULL,
-      (GClassInitFunc) gst_tuner_channel_class_init,
-      NULL,
-      NULL,
-      sizeof (GstTunerChannel),
-      0,
-      (GInstanceInitFunc) gst_tuner_channel_init,
-      NULL
-    };
-
-    gst_tuner_channel_type =
-        g_type_register_static (G_TYPE_OBJECT,
-        "GstTunerChannel", &tuner_channel_info, 0);
-  }
-
-  return gst_tuner_channel_type;
-}
-
-static void
-gst_tuner_channel_class_init (GstTunerChannelClass * klass)
-{
-  GObjectClass *object_klass = (GObjectClass *) klass;
-
-  parent_class = g_type_class_ref (G_TYPE_OBJECT);
-
-  signals[SIGNAL_FREQUENCY_CHANGED] =
-      g_signal_new ("frequency-changed", G_TYPE_FROM_CLASS (klass),
-      G_SIGNAL_RUN_LAST,
-      G_STRUCT_OFFSET (GstTunerChannelClass,
-          frequency_changed),
-      NULL, NULL, g_cclosure_marshal_VOID__ULONG, G_TYPE_NONE, 1, G_TYPE_ULONG);
-  signals[SIGNAL_SIGNAL_CHANGED] =
-      g_signal_new ("signal-changed", G_TYPE_FROM_CLASS (klass),
-      G_SIGNAL_RUN_LAST,
-      G_STRUCT_OFFSET (GstTunerChannelClass,
-          signal_changed),
-      NULL, NULL, g_cclosure_marshal_VOID__INT, G_TYPE_NONE, 1, G_TYPE_INT);
-
-  object_klass->dispose = gst_tuner_channel_dispose;
-}
-
-static void
-gst_tuner_channel_init (GstTunerChannel * channel)
-{
-  channel->label = NULL;
-  channel->flags = 0;
-  channel->min_frequency = channel->max_frequency = 0;
-  channel->min_signal = channel->max_signal = 0;
-}
-
-static void
-gst_tuner_channel_dispose (GObject * object)
-{
-  GstTunerChannel *channel = GST_TUNER_CHANNEL (object);
-
-  if (channel->label) {
-    g_free (channel->label);
-    channel->label = NULL;
-  }
-
-  if (parent_class->dispose)
-    parent_class->dispose (object);
-}
diff --git a/gst-libs/gst/tuner/tunerchannel.h b/gst-libs/gst/tuner/tunerchannel.h
deleted file mode 100644 (file)
index b38dc27..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-/* GStreamer Tuner
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * tunerchannel.h: tuner channel object design
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __GST_TUNER_CHANNEL_H__
-#define __GST_TUNER_CHANNEL_H__
-
-#include <gst/gst.h>
-
-G_BEGIN_DECLS
-
-#define GST_TYPE_TUNER_CHANNEL \
-  (gst_tuner_channel_get_type ())
-#define GST_TUNER_CHANNEL(obj) \
-  (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_TUNER_CHANNEL, \
-                              GstTunerChannel))
-#define GST_TUNER_CHANNEL_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_TUNER_CHANNEL, \
-                           GstTunerChannelClass))
-#define GST_IS_TUNER_CHANNEL(obj) \
-  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_TUNER_CHANNEL))
-#define GST_IS_TUNER_CHANNEL_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_TUNER_CHANNEL))
-
-typedef enum {
-  GST_TUNER_CHANNEL_INPUT     = (1<<0),
-  GST_TUNER_CHANNEL_OUTPUT    = (1<<1),
-  GST_TUNER_CHANNEL_FREQUENCY = (1<<2),
-  GST_TUNER_CHANNEL_AUDIO     = (1<<3)
-} GstTunerChannelFlags;
-
-#define GST_TUNER_CHANNEL_HAS_FLAG(channel, flag) \
-  ((channel)->flags & flag)
-
-typedef struct _GstTunerChannel {
-  GObject              parent;
-
-  gchar               *label;
-  GstTunerChannelFlags flags;
-  gfloat               freq_multiplicator;
-  gulong               min_frequency,
-                      max_frequency;
-  gint                 min_signal,
-                      max_signal;
-} GstTunerChannel;
-
-typedef struct _GstTunerChannelClass {
-  GObjectClass parent;
-
-  /* signals */
-  void (*frequency_changed) (GstTunerChannel *channel,
-                            gulong           frequency);
-  void (*signal_changed)    (GstTunerChannel *channel,
-                            gint             signal);
-
-  gpointer _gst_reserved[GST_PADDING];
-} GstTunerChannelClass;
-
-GType          gst_tuner_channel_get_type      (void);
-
-G_END_DECLS
-
-#endif /* __GST_TUNER_CHANNEL_H__ */
diff --git a/gst-libs/gst/tuner/tunernorm.c b/gst-libs/gst/tuner/tunernorm.c
deleted file mode 100644 (file)
index 2eb973d..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-/* GStreamer Tuner
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * tunernorm.c: tuner norm object design
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "tunernorm.h"
-
-enum
-{
-  /* FILL ME */
-  LAST_SIGNAL
-};
-
-static void gst_tuner_norm_class_init (GstTunerNormClass * klass);
-static void gst_tuner_norm_init (GstTunerNorm * norm);
-static void gst_tuner_norm_dispose (GObject * object);
-
-static GObjectClass *parent_class = NULL;
-
-/*static guint signals[LAST_SIGNAL] = { 0 };*/
-
-GType
-gst_tuner_norm_get_type (void)
-{
-  static GType gst_tuner_norm_type = 0;
-
-  if (!gst_tuner_norm_type) {
-    static const GTypeInfo tuner_norm_info = {
-      sizeof (GstTunerNormClass),
-      NULL,
-      NULL,
-      (GClassInitFunc) gst_tuner_norm_class_init,
-      NULL,
-      NULL,
-      sizeof (GstTunerNorm),
-      0,
-      (GInstanceInitFunc) gst_tuner_norm_init,
-      NULL
-    };
-
-    gst_tuner_norm_type =
-        g_type_register_static (G_TYPE_OBJECT,
-        "GstTunerNorm", &tuner_norm_info, 0);
-  }
-
-  return gst_tuner_norm_type;
-}
-
-static void
-gst_tuner_norm_class_init (GstTunerNormClass * klass)
-{
-  GObjectClass *object_klass = (GObjectClass *) klass;
-
-  parent_class = g_type_class_ref (G_TYPE_OBJECT);
-
-  object_klass->dispose = gst_tuner_norm_dispose;
-}
-
-static void
-gst_tuner_norm_init (GstTunerNorm * norm)
-{
-  norm->label = NULL;
-  norm->fps = 0.;
-}
-
-static void
-gst_tuner_norm_dispose (GObject * object)
-{
-  GstTunerNorm *norm = GST_TUNER_NORM (object);
-
-  if (norm->label) {
-    g_free (norm->label);
-    norm->label = NULL;
-  }
-
-  if (parent_class->dispose)
-    parent_class->dispose (object);
-}
diff --git a/gst-libs/gst/tuner/tunernorm.h b/gst-libs/gst/tuner/tunernorm.h
deleted file mode 100644 (file)
index cd89e1e..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-/* GStreamer Tuner
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * tunernorm.h: tuner norm object design
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __GST_TUNER_NORM_H__
-#define __GST_TUNER_NORM_H__
-
-#include <gst/gst.h>
-
-G_BEGIN_DECLS
-
-#define GST_TYPE_TUNER_NORM \
-  (gst_tuner_norm_get_type ())
-#define GST_TUNER_NORM(obj) \
-  (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_TUNER_NORM, GstTunerNorm))
-#define GST_TUNER_NORM_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_TUNER_NORM, GstTunerNormClass))
-#define GST_IS_TUNER_NORM(obj) \
-  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_TUNER_NORM))
-#define GST_IS_TUNER_NORM_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_TUNER_NORM))
-
-typedef struct _GstTunerNorm {
-  GObject parent;
-
-  gchar  *label;
-  gfloat  fps;
-} GstTunerNorm;
-
-typedef struct _GstTunerNormClass {
-  GObjectClass parent;
-
-  gpointer _gst_reserved[GST_PADDING];
-} GstTunerNormClass;
-
-GType          gst_tuner_norm_get_type         (void);
-
-G_END_DECLS
-
-#endif /* __GST_TUNER_NORM_H__ */
diff --git a/gst-libs/gst/video/Makefile.am b/gst-libs/gst/video/Makefile.am
deleted file mode 100644 (file)
index 7a16377..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-librarydir = $(libdir)/gstreamer-@GST_MAJORMINOR@
-
-library_LTLIBRARIES = libgstvideo.la
-
-libgstvideo_la_SOURCES = video.c gstvideosink.c 
-
-libgstvideoincludedir = $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/video
-libgstvideoinclude_HEADERS = video.h videosink.h
-
-libgstvideo_la_LIBADD =
-libgstvideo_la_CFLAGS = $(GST_CFLAGS)
-libgstvideo_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
diff --git a/gst-libs/gst/video/gstvideosink.c b/gst-libs/gst/video/gstvideosink.c
deleted file mode 100644 (file)
index 1085ace..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
- *  GStreamer Video sink.
- *
- *  Copyright (C) <2003> Julien Moutte <julien@moutte.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "videosink.h"
-
-static GstElementClass *parent_class = NULL;
-
-/* Private methods */
-
-static void
-gst_videosink_set_clock (GstElement * element, GstClock * clock)
-{
-  GstVideoSink *videosink;
-
-  videosink = GST_VIDEOSINK (element);
-
-  videosink->clock = clock;
-}
-
-/* Initing stuff */
-
-static void
-gst_videosink_init (GstVideoSink * videosink)
-{
-  videosink->width = 0;
-  videosink->height = 0;
-  videosink->clock = NULL;
-}
-
-static void
-gst_videosink_class_init (GstVideoSinkClass * klass)
-{
-  GObjectClass *gobject_class;
-  GstElementClass *gstelement_class;
-
-  gobject_class = (GObjectClass *) klass;
-  gstelement_class = (GstElementClass *) klass;
-
-  parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
-
-  gstelement_class->set_clock = gst_videosink_set_clock;
-}
-
-/* Public methods */
-
-GType
-gst_videosink_get_type (void)
-{
-  static GType videosink_type = 0;
-
-  if (!videosink_type) {
-    static const GTypeInfo videosink_info = {
-      sizeof (GstVideoSinkClass),
-      NULL,
-      NULL,
-      (GClassInitFunc) gst_videosink_class_init,
-      NULL,
-      NULL,
-      sizeof (GstVideoSink),
-      0,
-      (GInstanceInitFunc) gst_videosink_init,
-    };
-
-    videosink_type = g_type_register_static (GST_TYPE_ELEMENT,
-        "GstVideoSink", &videosink_info, 0);
-  }
-
-  return videosink_type;
-}
diff --git a/gst-libs/gst/video/video.c b/gst-libs/gst/video/video.c
deleted file mode 100644 (file)
index 6e94211..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-/* GStreamer
- * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
- * Library       <2002> Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#  include "config.h"
-#endif
-
-#include "video.h"
-
-/* This is simply a convenience function, nothing more or less */
-
-gdouble
-gst_video_frame_rate (GstPad * pad)
-{
-  gdouble fps = 0.;
-  const GstCaps *caps = NULL;
-  GstStructure *structure;
-
-  /* get pad caps */
-  caps = GST_PAD_CAPS (pad);
-  if (caps == NULL) {
-    g_warning ("gstvideo: failed to get caps of pad %s:%s",
-        GST_ELEMENT_NAME (gst_pad_get_parent (pad)), GST_PAD_NAME (pad));
-    return 0.;
-  }
-
-  structure = gst_caps_get_structure (caps, 0);
-  if (!gst_structure_get_double (structure, "framerate", &fps)) {
-    g_warning ("gstvideo: failed to get framerate property of pad %s:%s",
-        GST_ELEMENT_NAME (gst_pad_get_parent (pad)), GST_PAD_NAME (pad));
-    return 0.;
-  }
-
-  GST_DEBUG ("Framerate request on pad %s:%s: %f",
-      GST_ELEMENT_NAME (gst_pad_get_parent (pad)), GST_PAD_NAME (pad), fps);
-
-  return fps;
-}
-
-gboolean
-gst_video_get_size (GstPad * pad, gint * width, gint * height)
-{
-  const GstCaps *caps = NULL;
-  GstStructure *structure;
-  gboolean ret;
-
-  g_return_val_if_fail (pad != NULL, FALSE);
-  g_return_val_if_fail (width != NULL, FALSE);
-  g_return_val_if_fail (height != NULL, FALSE);
-
-  caps = GST_PAD_CAPS (pad);
-
-  if (caps == NULL) {
-    g_warning ("gstvideo: failed to get caps of pad %s:%s",
-        GST_ELEMENT_NAME (gst_pad_get_parent (pad)), GST_PAD_NAME (pad));
-    return FALSE;
-  }
-
-  structure = gst_caps_get_structure (caps, 0);
-  ret = gst_structure_get_int (structure, "width", width);
-  ret &= gst_structure_get_int (structure, "height", height);
-
-  if (!ret) {
-    g_warning ("gstvideo: failed to get size properties on pad %s:%s",
-        GST_ELEMENT_NAME (gst_pad_get_parent (pad)), GST_PAD_NAME (pad));
-    return FALSE;
-  }
-
-  GST_DEBUG ("size request on pad %s:%s: %dx%d",
-      GST_ELEMENT_NAME (gst_pad_get_parent (pad)),
-      GST_PAD_NAME (pad), width ? *width : -1, height ? *height : -1);
-
-  return TRUE;
-}
-
-static gboolean
-plugin_init (GstPlugin * plugin)
-{
-  return TRUE;
-}
-
-GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
-    GST_VERSION_MINOR,
-    "gstvideo",
-    "Convenience routines for video plugins",
-    plugin_init, VERSION, GST_LICENSE, GST_PACKAGE, GST_ORIGIN)
diff --git a/gst-libs/gst/video/video.h b/gst-libs/gst/video/video.h
deleted file mode 100644 (file)
index 97a2aac..0000000
+++ /dev/null
@@ -1,194 +0,0 @@
-/* GStreamer
- * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
- * Library       <2002> Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __GST_VIDEO_H__
-#define __GST_VIDEO_H__
-
-#include <gst/gst.h>
-
-G_BEGIN_DECLS
-
-#define GST_VIDEO_BYTE1_MASK_32  "0xFF000000"
-#define GST_VIDEO_BYTE2_MASK_32  "0x00FF0000"
-#define GST_VIDEO_BYTE3_MASK_32  "0x0000FF00"
-#define GST_VIDEO_BYTE4_MASK_32  "0x000000FF"
-
-#define GST_VIDEO_BYTE1_MASK_24  "0x00FF0000"
-#define GST_VIDEO_BYTE2_MASK_24  "0x0000FF00"
-#define GST_VIDEO_BYTE3_MASK_24  "0x000000FF"
-
-#define GST_VIDEO_BYTE1_MASK_32_INT  0xFF000000
-#define GST_VIDEO_BYTE2_MASK_32_INT  0x00FF0000
-#define GST_VIDEO_BYTE3_MASK_32_INT  0x0000FF00
-#define GST_VIDEO_BYTE4_MASK_32_INT  0x000000FF
-
-#define GST_VIDEO_BYTE1_MASK_24_INT  0x00FF0000
-#define GST_VIDEO_BYTE2_MASK_24_INT  0x0000FF00
-#define GST_VIDEO_BYTE3_MASK_24_INT  0x000000FF
-
-#define GST_VIDEO_RED_MASK_16 "0xf800"
-#define GST_VIDEO_GREEN_MASK_16 "0x07e0"
-#define GST_VIDEO_BLUE_MASK_16 "0x001f"
-
-#define GST_VIDEO_RED_MASK_15 "0x7c00"
-#define GST_VIDEO_GREEN_MASK_15 "0x03e0"
-#define GST_VIDEO_BLUE_MASK_15 "0x001f"
-
-#define GST_VIDEO_RED_MASK_16_INT 0xf800
-#define GST_VIDEO_GREEN_MASK_16_INT 0x07e0
-#define GST_VIDEO_BLUE_MASK_16_INT 0x001f
-
-#define GST_VIDEO_RED_MASK_15_INT 0x7c00
-#define GST_VIDEO_GREEN_MASK_15_INT 0x03e0
-#define GST_VIDEO_BLUE_MASK_15_INT 0x001f
-
-#define GST_VIDEO_SIZE_RANGE "(int) [ 16, 4096 ]"
-#define GST_VIDEO_FPS_RANGE "(double) [ 0, max ]"
-
-/* consider the next 2 protected */
-#define __GST_VIDEO_CAPS_MAKE_32A(R, G, B, A)                          \
-    "video/x-raw-rgb, "                                                        \
-    "bpp = (int) 32, "                                                 \
-    "depth = (int) 32, "                                               \
-    "endianness = (int) BIG_ENDIAN, "                                  \
-    "red_mask = (int) " GST_VIDEO_BYTE ## R ## _MASK_32 ", "           \
-    "green_mask = (int) " GST_VIDEO_BYTE ## G ## _MASK_32 ", "         \
-    "blue_mask = (int) " GST_VIDEO_BYTE ## B ## _MASK_32 ", "          \
-    "alpha_mask = (int) " GST_VIDEO_BYTE ## A ## _MASK_32 ", "         \
-    "width = " GST_VIDEO_SIZE_RANGE ", "                               \
-    "height = " GST_VIDEO_SIZE_RANGE ", "                              \
-    "framerate = " GST_VIDEO_FPS_RANGE
-
-#define __GST_VIDEO_CAPS_MAKE_32(R, G, B)                              \
-    "video/x-raw-rgb, "                                                        \
-    "bpp = (int) 32, "                                                 \
-    "depth = (int) 24, "                                               \
-    "endianness = (int) BIG_ENDIAN, "                                  \
-    "red_mask = (int) " GST_VIDEO_BYTE ## R ## _MASK_32 ", "           \
-    "green_mask = (int) " GST_VIDEO_BYTE ## G ## _MASK_32 ", "         \
-    "blue_mask = (int) " GST_VIDEO_BYTE ## B ## _MASK_32 ", "          \
-    "width = " GST_VIDEO_SIZE_RANGE ", "                               \
-    "height = " GST_VIDEO_SIZE_RANGE ", "                              \
-    "framerate = " GST_VIDEO_FPS_RANGE
-
-#define __GST_VIDEO_CAPS_MAKE_24(R, G, B)                              \
-    "video/x-raw-rgb, "                                                        \
-    "bpp = (int) 24, "                                                 \
-    "depth = (int) 24, "                                               \
-    "endianness = (int) BIG_ENDIAN, "                                  \
-    "red_mask = (int) " GST_VIDEO_BYTE ## R ## _MASK_24 ", "           \
-    "green_mask = (int) " GST_VIDEO_BYTE ## G ## _MASK_24 ", "         \
-    "blue_mask = (int) " GST_VIDEO_BYTE ## B ## _MASK_24 ", "          \
-    "width = " GST_VIDEO_SIZE_RANGE ", "                               \
-    "height = " GST_VIDEO_SIZE_RANGE ", "                              \
-    "framerate = " GST_VIDEO_FPS_RANGE
-
-
-/* 24 bit */
-
-#define GST_VIDEO_CAPS_RGB \
-    __GST_VIDEO_CAPS_MAKE_24 (1, 2, 3)
-
-#define GST_VIDEO_CAPS_BGR \
-    __GST_VIDEO_CAPS_MAKE_24 (3, 2, 1)
-
-/* 32 bit */
-
-#define GST_VIDEO_CAPS_RGBx \
-    __GST_VIDEO_CAPS_MAKE_32 (1, 2, 3)
-  
-#define GST_VIDEO_CAPS_xRGB \
-    __GST_VIDEO_CAPS_MAKE_32 (2, 3, 4)
-  
-#define GST_VIDEO_CAPS_BGRx \
-    __GST_VIDEO_CAPS_MAKE_32 (3, 2, 1)
-  
-#define GST_VIDEO_CAPS_xBGR \
-    __GST_VIDEO_CAPS_MAKE_32 (4, 3, 2)
-
-/* 32 bit alpha */
-
-#define GST_VIDEO_CAPS_RGBA \
-    __GST_VIDEO_CAPS_MAKE_32A (1, 2, 3, 4)
-  
-#define GST_VIDEO_CAPS_ARGB \
-    __GST_VIDEO_CAPS_MAKE_32A (2, 3, 4, 1)
-  
-#define GST_VIDEO_CAPS_BGRA \
-    __GST_VIDEO_CAPS_MAKE_32A (3, 2, 1, 4)
-  
-#define GST_VIDEO_CAPS_ABGR \
-    __GST_VIDEO_CAPS_MAKE_32A (4, 3, 2, 1)
-
-/* note: the macro name uses the order on BE systems */
-#if G_BYTE_ORDER == G_BIG_ENDIAN
-  #define GST_VIDEO_CAPS_xRGB_HOST_ENDIAN \
-      GST_VIDEO_CAPS_xRGB
-  #define GST_VIDEO_CAPS_BGRx_HOST_ENDIAN \
-      GST_VIDEO_CAPS_BGRx
-#else
-  #define GST_VIDEO_CAPS_xRGB_HOST_ENDIAN \
-      GST_VIDEO_CAPS_BGRx
-  #define GST_VIDEO_CAPS_BGRx_HOST_ENDIAN \
-      GST_VIDEO_CAPS_xRGB
-#endif
-      
-/* 15/16 bit */
-  
-#define GST_VIDEO_CAPS_RGB_16                                          \
-           "video/x-raw-rgb, "                                         \
-            "bpp = (int) 16, "                                         \
-            "depth = (int) 16, "                                       \
-            "endianness = (int) BYTE_ORDER, "                          \
-            "red_mask = (int) " GST_VIDEO_RED_MASK_16 ", "             \
-            "green_mask = (int) " GST_VIDEO_GREEN_MASK_16 ", "         \
-            "blue_mask = (int) " GST_VIDEO_BLUE_MASK_16 ", "           \
-            "width = " GST_VIDEO_SIZE_RANGE ", "                       \
-            "height = " GST_VIDEO_SIZE_RANGE ", "                      \
-            "framerate = " GST_VIDEO_FPS_RANGE
-
-#define GST_VIDEO_CAPS_RGB_15                                          \
-           "video/x-raw-rgb, "                                         \
-            "bpp = (int) 16, "                                         \
-            "depth = (int) 15, "                                       \
-            "endianness = (int) BYTE_ORDER, "                          \
-            "red_mask = (int) " GST_VIDEO_RED_MASK_15 ", "             \
-            "green_mask = (int) " GST_VIDEO_GREEN_MASK_15 ", "         \
-            "blue_mask = (int) " GST_VIDEO_BLUE_MASK_15 ", "           \
-            "width = " GST_VIDEO_SIZE_RANGE ", "                       \
-            "height = " GST_VIDEO_SIZE_RANGE ", "                      \
-            "framerate = " GST_VIDEO_FPS_RANGE
-
-#define GST_VIDEO_CAPS_YUV(fourcc)                                     \
-       "video/x-raw-yuv, "                                             \
-       "format = (fourcc) " fourcc ", "                                \
-       "width = " GST_VIDEO_SIZE_RANGE ", "                            \
-       "height = " GST_VIDEO_SIZE_RANGE ", "                           \
-       "framerate = " GST_VIDEO_FPS_RANGE
-
-/* functions */
-gdouble  gst_video_frame_rate (GstPad *pad);
-gboolean gst_video_get_size   (GstPad *pad,
-                               gint   *width,
-                               gint   *height);
-
-G_END_DECLS
-
-#endif /* __GST_VIDEO_H__ */
diff --git a/gst-libs/gst/video/video.vcproj b/gst-libs/gst/video/video.vcproj
deleted file mode 100644 (file)
index 2440294..0000000
+++ /dev/null
@@ -1,150 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
-       ProjectType="Visual C++"
-       Version="7.10"
-       Name="video"
-       ProjectGUID="{979C216F-0ACF-4956-AE00-055A42D6789D}"
-       RootNamespace="video"
-       Keyword="Win32Proj">
-       <Platforms>
-               <Platform
-                       Name="Win32"/>
-       </Platforms>
-       <Configurations>
-               <Configuration
-                       Name="Debug|Win32"
-                       OutputDirectory="../../../win32/Debug"
-                       IntermediateDirectory="../../../win32/Debug"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               Optimization="0"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               MinimalRebuild="TRUE"
-                               BasicRuntimeChecks="3"
-                               RuntimeLibrary="3"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="4"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstvideo.dll"
-                               LinkIncremental="2"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Debug;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile=""
-                               GenerateDebugInformation="TRUE"
-                               ProgramDatabaseFile="$(OutDir)/video.pdb"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               ImportLibrary="$(OutDir)/gstvideo.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-               <Configuration
-                       Name="Release|Win32"
-                       OutputDirectory="../../../win32/Release"
-                       IntermediateDirectory="../../../win32/Release"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;NDEBUG;GST_DISABLE_GST_DEBUG;_WINDOWS;_USRDLL;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               RuntimeLibrary="2"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="3"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstvideo.dll"
-                               LinkIncremental="1"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Release;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile=""
-                               GenerateDebugInformation="TRUE"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               EnableCOMDATFolding="2"
-                               ImportLibrary="$(OutDir)/gstvideo.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-       </Configurations>
-       <References>
-       </References>
-       <Files>
-               <Filter
-                       Name="Source Files"
-                       Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
-                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
-                       <File
-                               RelativePath=".\gstvideosink.c">
-                       </File>
-                       <File
-                               RelativePath=".\video.c">
-                       </File>
-               </Filter>
-               <Filter
-                       Name="Header Files"
-                       Filter="h;hpp;hxx;hm;inl;inc;xsd"
-                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
-                       <File
-                               RelativePath=".\video.h">
-                       </File>
-                       <File
-                               RelativePath=".\videosink.h">
-                       </File>
-               </Filter>
-       </Files>
-       <Globals>
-       </Globals>
-</VisualStudioProject>
diff --git a/gst-libs/gst/video/videosink.h b/gst-libs/gst/video/videosink.h
deleted file mode 100644 (file)
index bdf52e1..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- *  GStreamer Video sink.
- *
- *  Copyright (C) <2003> Julien Moutte <julien@moutte.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-#ifndef __GST_VIDEOSINK_H__
-#define __GST_VIDEOSINK_H__
-
-#include <gst/gst.h>
-
-G_BEGIN_DECLS
-  
-#define GST_TYPE_VIDEOSINK (gst_videosink_get_type())
-#define GST_VIDEOSINK(obj) \
-  (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_VIDEOSINK, GstVideoSink))
-#define GST_VIDEOSINK_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_VIDEOSINK, GstVideoSink))
-#define GST_IS_VIDEOSINK(obj) \
-  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_VIDEOSINK))
-#define GST_IS_VIDEOSINK_CLASS(obj) \
-  (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_VIDEOSINK))
-#define GST_VIDEOSINK_GET_CLASS(obj) \
-  (G_TYPE_INSTANCE_GET_CLASS ((obj), GST_TYPE_VIDEOSINK, GstVideoSinkClass))
-  
-#define GST_VIDEOSINK_PAD(obj) (GST_VIDEOSINK (obj)->sinkpad)
-#define GST_VIDEOSINK_WIDTH(obj) (GST_VIDEOSINK (obj)->width)
-#define GST_VIDEOSINK_HEIGHT(obj) (GST_VIDEOSINK (obj)->height)
-#define GST_VIDEOSINK_CLOCK(obj) (GST_VIDEOSINK (obj)->clock)
-  
-typedef struct _GstVideoSink GstVideoSink;
-typedef struct _GstVideoSinkClass GstVideoSinkClass;
-
-struct _GstVideoSink {
-  GstElement element;
-  
-  GstPad *sinkpad;
-  
-  gint width, height;
-  
-  GstClock *clock;
-  
-  gpointer _gst_reserved[GST_PADDING];
-};
-
-struct _GstVideoSinkClass {
-  GstElementClass parent_class;
-      
-  gpointer _gst_reserved[GST_PADDING];
-};
-
-GType gst_videosink_get_type (void);
-
-G_END_DECLS
-
-#endif  /* __GST_VIDEOSINK_H__ */
diff --git a/gst-libs/gst/xoverlay/Makefile.am b/gst-libs/gst/xoverlay/Makefile.am
deleted file mode 100644 (file)
index a3eeba0..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-libgstinterfacesincludedir = \
-       $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/xoverlay
-
-libgstinterfacesinclude_HEADERS = xoverlay.h
-
-noinst_LTLIBRARIES = libgstxoverlay.la
-
-libgstxoverlay_la_SOURCES = xoverlay.c
-libgstxoverlay_la_CFLAGS = $(GST_CFLAGS)
-libgstxoverlay_la_LIBADD = 
-
diff --git a/gst-libs/gst/xoverlay/xoverlay.c b/gst-libs/gst/xoverlay/xoverlay.c
deleted file mode 100644 (file)
index f4d1e1c..0000000
+++ /dev/null
@@ -1,202 +0,0 @@
-/* GStreamer X-based Overlay
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * tv-mixer.c: tv-mixer design virtual class function wrappers
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "xoverlay.h"
-
-enum
-{
-  HAVE_XWINDOW_ID,
-  DESIRED_SIZE,
-  LAST_SIGNAL
-};
-
-static guint gst_x_overlay_signals[LAST_SIGNAL] = { 0 };
-
-static void gst_x_overlay_base_init (gpointer g_class);
-
-GType
-gst_x_overlay_get_type (void)
-{
-  static GType gst_x_overlay_type = 0;
-
-  if (!gst_x_overlay_type) {
-    static const GTypeInfo gst_x_overlay_info = {
-      sizeof (GstXOverlayClass),
-      gst_x_overlay_base_init,
-      NULL,
-      NULL,
-      NULL,
-      NULL,
-      0,
-      0,
-      NULL,
-    };
-
-    gst_x_overlay_type = g_type_register_static (G_TYPE_INTERFACE,
-        "GstXOverlay", &gst_x_overlay_info, 0);
-    g_type_interface_add_prerequisite (gst_x_overlay_type,
-        GST_TYPE_IMPLEMENTS_INTERFACE);
-  }
-
-  return gst_x_overlay_type;
-}
-
-/* FIXME: evil hack, we should figure out our marshal handling in this interfaces some day */
-extern void gst_marshal_VOID__INT_INT (GClosure * closure,
-    GValue * return_value, guint n_param_values, const GValue * param_values,
-    gpointer invocation_hint, gpointer marshal_data);
-
-static void
-gst_x_overlay_base_init (gpointer g_class)
-{
-  GstXOverlayClass *overlay_class = (GstXOverlayClass *) g_class;
-  static gboolean initialized = FALSE;
-
-  if (!initialized) {
-    gst_x_overlay_signals[HAVE_XWINDOW_ID] =
-        g_signal_new ("have-xwindow-id",
-        GST_TYPE_X_OVERLAY, G_SIGNAL_RUN_LAST,
-        G_STRUCT_OFFSET (GstXOverlayClass, have_xwindow_id),
-        NULL, NULL, g_cclosure_marshal_VOID__INT, G_TYPE_NONE, 1, G_TYPE_INT);
-    gst_x_overlay_signals[DESIRED_SIZE] =
-        g_signal_new ("desired-size-changed",
-        GST_TYPE_X_OVERLAY, G_SIGNAL_RUN_LAST,
-        G_STRUCT_OFFSET (GstXOverlayClass, desired_size),
-        NULL, NULL,
-        gst_marshal_VOID__INT_INT, G_TYPE_NONE, 2, G_TYPE_INT, G_TYPE_INT);
-
-    initialized = TRUE;
-  }
-
-  overlay_class->set_xwindow_id = NULL;
-}
-
-/**
- * gst_x_overlay_set_xwindow_id:
- * @overlay: a #GstXOverlay to set the XWindow on.
- * @xwindow_id: a #XID referencing the XWindow.
- *
- * This will call the video overlay's set_xwindow_id method. You should
- * use this method to tell to a XOverlay to display video output to a
- * specific XWindow. Passing 0 as the xwindow_id will tell the overlay to
- * stop using that window and create an internal one.
- */
-void
-gst_x_overlay_set_xwindow_id (GstXOverlay * overlay, gulong xwindow_id)
-{
-  GstXOverlayClass *klass = GST_X_OVERLAY_GET_CLASS (overlay);
-
-  if (klass->set_xwindow_id) {
-    klass->set_xwindow_id (overlay, xwindow_id);
-  }
-}
-
-/**
- * gst_x_overlay_got_xwindow_id:
- * @overlay: a #GstXOverlay which got a XWindow.
- * @xwindow_id: a #XID referencing the XWindow.
- *
- * This will fire an have_xwindow_id signal.
- *
- * This function should be used by video overlay developpers.
- */
-void
-gst_x_overlay_got_xwindow_id (GstXOverlay * overlay, gulong xwindow_id)
-{
-  g_return_if_fail (overlay != NULL);
-  g_return_if_fail (GST_IS_X_OVERLAY (overlay));
-
-  g_signal_emit (G_OBJECT (overlay),
-      gst_x_overlay_signals[HAVE_XWINDOW_ID], 0, (gint) xwindow_id);
-}
-
-/**
- * gst_x_overlay_get_desired_size:
- * @overlay: a #GstXOverlay which got a XWindow.
- * @width: pointer to a gint taking the width or NULL.
- * @height: pointer to a gint taking the height or NULL.
- *
- * Gets the desired size of the overlay. If the overlay doesn't know its desired
- * size, width and height are set to 0.
- */
-void
-gst_x_overlay_get_desired_size (GstXOverlay * overlay, guint * width,
-    guint * height)
-{
-  guint width_tmp, height_tmp;
-  GstXOverlayClass *klass;
-
-  g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE ((overlay), GST_TYPE_X_OVERLAY));
-
-  klass = GST_X_OVERLAY_GET_CLASS (overlay);
-  if (klass->get_desired_size && GST_IS_X_OVERLAY (overlay)) {
-    /* this ensures that elements don't need to check width and height for NULL 
-       but apps may use NULL */
-    klass->get_desired_size (overlay, width ? width : &width_tmp,
-        height ? height : &height_tmp);
-  } else {
-    if (width)
-      *width = 0;
-    if (height)
-      *height = 0;
-  }
-}
-
-/**
- * gst_x_overlay_got_desired_size:
- * @overlay: a #GstXOverlay which changed its desired size.
- * @width: The new desired width
- * @height: The new desired height
- *
- * This will fire a "desired_size_changed" signal.
- *
- * This function should be used by video overlay developpers.
- */
-void
-gst_x_overlay_got_desired_size (GstXOverlay * overlay, guint width,
-    guint height)
-{
-  g_return_if_fail (GST_IS_X_OVERLAY (overlay));
-
-  g_signal_emit (G_OBJECT (overlay),
-      gst_x_overlay_signals[DESIRED_SIZE], 0, width, height);
-}
-
-/**
- * gst_x_overlay_expose:
- * @overlay: a #GstXOverlay to expose.
- *
- * Tell an overlay that it has been exposed. This will redraw the current frame
- * in the drawable even if the pipeline is PAUSED.
- */
-void
-gst_x_overlay_expose (GstXOverlay * overlay)
-{
-  GstXOverlayClass *klass = GST_X_OVERLAY_GET_CLASS (overlay);
-
-  if (klass->expose) {
-    klass->expose (overlay);
-  }
-}
diff --git a/gst-libs/gst/xoverlay/xoverlay.h b/gst-libs/gst/xoverlay/xoverlay.h
deleted file mode 100644 (file)
index 5318fef..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-/* GStreamer X-based Overlay
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- * Copyright (C) 2003 Julien Moutte <julien@moutte.net>
- *
- * x-overlay.h: X-based overlay interface design
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __GST_X_OVERLAY_H__
-#define __GST_X_OVERLAY_H__
-
-#include <gst/gst.h>
-
-G_BEGIN_DECLS
-
-#define GST_TYPE_X_OVERLAY \
-  (gst_x_overlay_get_type ())
-#define GST_X_OVERLAY(obj) \
-  (GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_X_OVERLAY, \
-                                                GstXOverlay))
-#define GST_X_OVERLAY_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_X_OVERLAY, GstXOverlayClass))
-#define GST_IS_X_OVERLAY(obj) \
-  (GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_X_OVERLAY))
-#define GST_IS_X_OVERLAY_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_X_OVERLAY))
-#define GST_X_OVERLAY_GET_CLASS(inst) \
-  (G_TYPE_INSTANCE_GET_INTERFACE ((inst), GST_TYPE_X_OVERLAY, GstXOverlayClass))
-
-typedef struct _GstXOverlay GstXOverlay;
-
-typedef struct _GstXOverlayClass {
-  GTypeInterface klass;
-
-  /* virtual functions */
-  void (* set_xwindow_id) (GstXOverlay *overlay,
-                          gulong       xwindow_id);
-  /* optional virtual functions */
-  void (* get_desired_size) (GstXOverlay *overlay,
-                            guint *width,
-                            guint *height);
-  void (* expose) (GstXOverlay *overlay);
-  
-  /* signals */
-  void (*have_xwindow_id) (GstXOverlay *overlay,
-                           gulong      xwindow_id);
-  void (* desired_size)          (GstXOverlay *overlay,
-                          guint width,
-                          guint height);
-
-  gpointer _gst_reserved[GST_PADDING];
-} GstXOverlayClass;
-
-GType  gst_x_overlay_get_type          (void);
-
-/* virtual class function wrappers */
-void gst_x_overlay_set_xwindow_id (GstXOverlay *overlay, gulong xwindow_id);
-void gst_x_overlay_get_desired_size (GstXOverlay *overlay, guint *width, guint *height);
-void gst_x_overlay_expose (GstXOverlay *overlay);
-
-/* public methods to fire signals */
-void gst_x_overlay_got_xwindow_id (GstXOverlay *overlay, gulong xwindow_id);
-void gst_x_overlay_got_desired_size (GstXOverlay *overlay, guint width, guint height);
-
-G_END_DECLS
-
-#endif /* __GST_X_OVERLAY_H__ */
diff --git a/gst-libs/gst/xoverlay/xoverlay.vcproj b/gst-libs/gst/xoverlay/xoverlay.vcproj
deleted file mode 100644 (file)
index 1db3053..0000000
+++ /dev/null
@@ -1,144 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
-       ProjectType="Visual C++"
-       Version="7.10"
-       Name="xoverlay"
-       ProjectGUID="{979C216F-0ACF-4956-AE00-055A42D6789E}"
-       RootNamespace="xoverlay"
-       Keyword="Win32Proj">
-       <Platforms>
-               <Platform
-                       Name="Win32"/>
-       </Platforms>
-       <Configurations>
-               <Configuration
-                       Name="Debug|Win32"
-                       OutputDirectory="../../../win32/Debug"
-                       IntermediateDirectory="../../../win32/Debug"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               Optimization="0"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               MinimalRebuild="TRUE"
-                               BasicRuntimeChecks="3"
-                               RuntimeLibrary="3"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="4"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstxoverlay.dll"
-                               LinkIncremental="2"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Debug;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile=""
-                               GenerateDebugInformation="TRUE"
-                               ProgramDatabaseFile="$(OutDir)/xoverlay.pdb"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               ImportLibrary="$(OutDir)/gstxoverlay.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-               <Configuration
-                       Name="Release|Win32"
-                       OutputDirectory="../../../win32/Release"
-                       IntermediateDirectory="../../../win32/Release"
-                       ConfigurationType="2"
-                       CharacterSet="2">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               AdditionalIncludeDirectories="../../../../gstreamer/win32;../../../../gstreamer;../../../../gstreamer/libs;../../../../glib;../../../../glib/glib;../../../../glib/gmodule;&quot;../../../gst-libs&quot;;../../../../popt/include;../../../../libxml2/include/libxml2"
-                               PreprocessorDefinitions="WIN32;NDEBUG;GST_DISABLE_GST_DEBUG;_WINDOWS;_USRDLL;HAVE_CONFIG_H;_USE_MATH_DEFINES"
-                               RuntimeLibrary="2"
-                               UsePrecompiledHeader="0"
-                               WarningLevel="3"
-                               Detect64BitPortabilityProblems="TRUE"
-                               DebugInformationFormat="3"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="glib-2.0.lib gmodule-2.0.lib gthread-2.0.lib gobject-2.0.lib libgstreamer.lib gstbytestream.lib iconv.lib intl.lib"
-                               OutputFile="$(OutDir)/gstxoverlay.dll"
-                               LinkIncremental="1"
-                               AdditionalLibraryDirectories="../../../../gstreamer/win32/Release;../../../../glib/glib;../../../../glib/gmodule;../../../../glib/gthread;../../../../glib/gobject;../../../../gettext/lib;../../../../libiconv/lib"
-                               ModuleDefinitionFile=""
-                               GenerateDebugInformation="TRUE"
-                               SubSystem="2"
-                               OptimizeReferences="2"
-                               EnableCOMDATFolding="2"
-                               ImportLibrary="$(OutDir)/gstxoverlay.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               CommandLine="copy /Y $(TargetPath) c:\gstreamer\plugins"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-       </Configurations>
-       <References>
-       </References>
-       <Files>
-               <Filter
-                       Name="Source Files"
-                       Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
-                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
-                       <File
-                               RelativePath=".\xoverlay.c">
-                       </File>
-               </Filter>
-               <Filter
-                       Name="Header Files"
-                       Filter="h;hpp;hxx;hm;inl;inc;xsd"
-                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
-                       <File
-                               RelativePath=".\xoverlay.h">
-                       </File>
-               </Filter>
-       </Files>
-       <Globals>
-       </Globals>
-</VisualStudioProject>
diff --git a/gst-libs/gst/xwindowlistener/Makefile.am b/gst-libs/gst/xwindowlistener/Makefile.am
deleted file mode 100644 (file)
index e11b59f..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-plugin_LTLIBRARIES = libgstxwindowlistener.la
-
-libgstxwindowlistener_la_SOURCES = xwindowlistener.c
-
-libraryincludedir = $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/xwindowlistener
-libraryinclude_HEADERS = xwindowlistener.h
-
-libgstxwindowlistener_la_LIBADD =$(GST_LIBS) $(GST_PLUGIN_LIBS) $(X_LIBS)
-libgstxwindowlistener_la_CFLAGS = $(GST_CFLAGS) $(X_CFLAGS)
-libgstxwindowlistener_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
diff --git a/gst-libs/gst/xwindowlistener/xwindowlistener.c b/gst-libs/gst/xwindowlistener/xwindowlistener.c
deleted file mode 100644 (file)
index ebbc9ac..0000000
+++ /dev/null
@@ -1,625 +0,0 @@
-/* G-Streamer X11 Window event/motion listener
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * xwindowlistener.c: implementation of the object
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <gst/gst.h>
-#include "xwindowlistener.h"
-
-#define NUM_CLIPS 1024
-
-static void gst_x_window_listener_class_init (GstXWindowListenerClass * klass);
-static void gst_x_window_listener_init (GstXWindowListener * xwin);
-static void gst_x_window_listener_dispose (GObject * object);
-
-static void gst_xwin_start (GstXWindowListener * xwin);
-static void gst_xwin_stop (GstXWindowListener * xwin);
-
-static GObjectClass *parent_class = NULL;
-
-GType
-gst_x_window_listener_get_type (void)
-{
-  static GType x_window_listener_type = 0;
-
-  if (!x_window_listener_type) {
-    static const GTypeInfo x_window_listener_info = {
-      sizeof (GstXWindowListenerClass),
-      NULL,
-      NULL,
-      (GClassInitFunc) gst_x_window_listener_class_init,
-      NULL,
-      NULL,
-      sizeof (GstXWindowListener),
-      0,
-      (GInstanceInitFunc) gst_x_window_listener_init,
-      NULL
-    };
-
-    x_window_listener_type =
-        g_type_register_static (G_TYPE_OBJECT,
-        "GstXWindowListener", &x_window_listener_info, 0);
-  }
-
-  return x_window_listener_type;
-}
-
-static void
-gst_x_window_listener_class_init (GstXWindowListenerClass * klass)
-{
-  GObjectClass *object_klass = (GObjectClass *) klass;
-
-  parent_class = g_type_class_ref (G_TYPE_OBJECT);
-
-  object_klass->dispose = gst_x_window_listener_dispose;
-}
-
-static void
-gst_x_window_listener_init (GstXWindowListener * xwin)
-{
-  xwin->xwindow_id = 0;
-  xwin->display_name = NULL;
-
-  xwin->map_window_func = NULL;
-  xwin->set_window_func = NULL;
-
-  xwin->thread = NULL;
-}
-
-static void
-gst_x_window_listener_dispose (GObject * object)
-{
-  GstXWindowListener *xwin = GST_X_WINDOW_LISTENER (object);
-
-  /* stop overlay */
-  gst_x_window_listener_set_xid (xwin, 0);
-
-  if (xwin->display_name) {
-    g_free (xwin->display_name);
-    xwin->display_name = NULL;
-  }
-
-  if (parent_class->dispose) {
-    parent_class->dispose (object);
-  }
-}
-
-GstXWindowListener *
-gst_x_window_listener_new (gchar * display,
-    MapWindowFunc map_window_func,
-    SetWindowFunc set_window_func, gpointer private_data)
-{
-  GstXWindowListener *xwin = g_object_new (GST_TYPE_X_WINDOW_LISTENER, NULL);
-
-  xwin->display_name = g_strdup (display);
-  xwin->map_window_func = map_window_func;
-  xwin->set_window_func = set_window_func;
-  xwin->private_data = private_data;
-
-  return xwin;
-}
-
-void
-gst_x_window_listener_set_xid (GstXWindowListener * xwin, XID id)
-{
-  g_return_if_fail (xwin != NULL);
-
-  if (id == xwin->xwindow_id) {
-    return;
-  }
-
-  if (xwin->xwindow_id && xwin->thread) {
-    gst_xwin_stop (xwin);
-  }
-
-  xwin->xwindow_id = id;
-
-  if (xwin->xwindow_id && xwin->display_name && xwin->display_name[0] == ':') {
-    g_return_if_fail (xwin->map_window_func != NULL);
-    g_return_if_fail (xwin->set_window_func != NULL);
-
-    gst_xwin_start (xwin);
-  }
-}
-
-/*
- * The following code works as follows:
- *  - the "client" (the one who uses this object) sets an XID
- *  - we add a child XWindow to this XID, and follow motion/events
- *  - after each event, we determine the position, size and clips
- *  - next, we call the per-instance virtual functions set by the client
- *  - and we do all this in an endless cycle
- *
- * This code originates largely from xawtv. By permission of Gerd Knorr
- * <kraxel@bytesex.org>, it was relicensed to LGPL.
- */
-
-#define DEBUG(...) \
-  GST_DEBUG ("XWL: " __VA_ARGS__)
-
-static void
-gst_xwin_set_overlay (GstXWindowListener * xwin, gboolean on)
-{
-  xwin->map_window_func (xwin->private_data, on);
-
-  /* remember me */
-  xwin->ov_visible = on;
-}
-
-static gboolean
-gst_xwin_refresh (gpointer data)
-{
-  GstXWindowListener *xwin = GST_X_WINDOW_LISTENER (data);
-  Window win, tmp;
-  XSetWindowAttributes xswa;
-  XWindowAttributes attr;
-
-  g_mutex_lock (xwin->main_lock);
-
-  win = DefaultRootWindow (xwin->main_display);
-  XGetWindowAttributes (xwin->main_display, win, &attr);
-
-  xwin->ov_refresh_id = 0;
-
-  if (!xwin->ov_move && xwin->ov_map &&
-      xwin->ov_visibility == VisibilityUnobscured) {
-    g_mutex_unlock (xwin->main_lock);
-    return FALSE;               /* skip */
-  }
-
-  if (xwin->ov_map && xwin->ov_visibility != VisibilityFullyObscured) {
-    xwin->ov_refresh = TRUE;
-  }
-
-  xswa.override_redirect = True;
-  xswa.backing_store = NotUseful;
-  xswa.save_under = False;
-  tmp = XCreateWindow (xwin->main_display, win, 0, 0,
-      attr.width, attr.height, 0,
-      CopyFromParent, InputOutput, CopyFromParent,
-      (CWSaveUnder | CWBackingStore | CWOverrideRedirect), &xswa);
-  XMapWindow (xwin->main_display, tmp);
-  XUnmapWindow (xwin->main_display, tmp);
-  XDestroyWindow (xwin->main_display, tmp);
-  xwin->ov_move = FALSE;
-
-  g_mutex_unlock (xwin->main_lock);
-
-  /* once */
-  return FALSE;
-}
-
-static int
-x11_error_dev_null (Display * display, XErrorEvent * event)
-{
-  return 0;
-}
-
-#define ADD_CLIP(_x, _y, _w, _h) \
-  do { \
-    GstXWindowClip *clip = &xwin->clips[xwin->num_clips++]; \
-    clip->x_offset = _x; \
-    clip->y_offset = _y; \
-    clip->width = _w; \
-    clip->height = _h; \
-    clip->data = NULL; \
-  } while (0);
-
-static void
-gst_xwin_set_clips (GstXWindowListener * xwin)
-{
-  Window root, rroot, parent, *kids, me;
-  XWindowAttributes attr;
-  guint numkids;
-  gint i;
-  gint x1, y1, w1, h1;
-  XErrorHandler old_handler;
-
-  old_handler = XSetErrorHandler (x11_error_dev_null);
-
-  if (xwin->num_clips != 0)
-    xwin->ov_conf = TRUE;
-  xwin->num_clips = 0;
-
-  root = DefaultRootWindow (xwin->display);
-  XGetWindowAttributes (xwin->display, root, &attr);
-
-  if (xwin->x < 0)
-    ADD_CLIP (0, 0, -xwin->x, xwin->h);
-  if (xwin->y < 0)
-    ADD_CLIP (0, 0, xwin->w, -xwin->y);
-  if ((xwin->x + xwin->w) > attr.width)
-    ADD_CLIP (attr.width - xwin->x, 0, xwin->w, xwin->h);
-  if ((xwin->y + xwin->h) > attr.height)
-    ADD_CLIP (0, attr.height - xwin->y, xwin->w, xwin->h);
-
-  me = xwin->child;
-  while (1) {
-    XQueryTree (xwin->display, me, &rroot, &parent, &kids, &numkids);
-    if (numkids)
-      XFree (kids);
-    if (root == parent)
-      break;
-    me = parent;
-  }
-
-  XQueryTree (xwin->display, root, &rroot, &parent, &kids, &numkids);
-  for (i = 0; i < numkids; i++)
-    if (kids[i] == me)
-      break;
-
-  for (i++; i < numkids; i++) {
-    XGetWindowAttributes (xwin->display, kids[i], &attr);
-    if (attr.map_state != IsViewable)
-      continue;
-
-    x1 = attr.x - xwin->x;
-    y1 = attr.y - xwin->y;
-    w1 = attr.width + 2 * attr.border_width;
-    h1 = attr.height + 2 * attr.border_width;
-    if (((x1 + w1) < 0) || (x1 > xwin->w) || ((y1 + h1) < 0) || (y1 > xwin->h))
-      continue;
-
-    if (x1 < 0)
-      x1 = 0;
-    if (y1 < 0)
-      y1 = 0;
-    ADD_CLIP (x1, y1, w1, h1);
-  }
-  XFree (kids);
-
-  if (xwin->num_clips != 0)
-    xwin->ov_conf = TRUE;
-
-  XSetErrorHandler (old_handler);
-}
-
-
-static gboolean
-gst_xwin_window (GstXWindowListener * xwin)
-{
-  if (xwin->ov_map && xwin->ov_wmmap &&
-      xwin->ov_visibility != VisibilityFullyObscured) {
-    /* visible */
-    if (xwin->ov_visibility == VisibilityPartiallyObscured) {
-      /* set clips */
-      gst_xwin_set_clips (xwin);
-    }
-
-    if (xwin->ov_conf) {
-      xwin->set_window_func (xwin->private_data,
-          xwin->x, xwin->y, xwin->w, xwin->h, xwin->clips, xwin->num_clips);
-
-      if (!xwin->ov_visible)
-        gst_xwin_set_overlay (xwin, TRUE);
-
-      g_mutex_lock (xwin->main_lock);
-
-      if (xwin->ov_refresh_id)
-        g_source_remove (xwin->ov_refresh_id);
-      xwin->ov_refresh_id =
-          g_timeout_add (200, (GSourceFunc) gst_xwin_refresh, (gpointer) xwin);
-
-      xwin->ov_conf = FALSE;
-
-      g_mutex_unlock (xwin->main_lock);
-    }
-  } else {
-    /* not visible */
-    if (xwin->ov_conf && xwin->ov_visible) {
-      gst_xwin_set_overlay (xwin, FALSE);
-
-      g_mutex_lock (xwin->main_lock);
-
-      if (xwin->ov_refresh_id)
-        g_source_remove (xwin->ov_refresh_id);
-      xwin->ov_refresh_id =
-          g_timeout_add (200, (GSourceFunc) gst_xwin_refresh, (gpointer) xwin);
-
-      xwin->ov_conf = FALSE;
-
-      g_mutex_unlock (xwin->main_lock);
-    }
-  }
-
-  xwin->ov_conf_id = 0;
-
-  /* once is enough */
-  return FALSE;
-}
-
-static void
-gst_xwin_configure (GstXWindowListener * xwin)
-{
-#if 0
-  /* This part is disabled, because the idle task will be done
-   * in the main thread instead of here. */
-  if (!xwin->ov_conf_id)
-    xwin->ov_conf_id =
-        g_idle_add ((GSourceFunc) gst_rec_xoverlay_window, (gpointer) xwin);
-#endif
-
-  gst_xwin_window ((gpointer) xwin);
-}
-
-static void
-gst_xwin_resize (GstXWindowListener * xwin)
-{
-  Drawable drawable, parent, *kids, root;
-  guint numkids;
-  XWindowAttributes attr;
-
-  XGetWindowAttributes (xwin->display, xwin->xwindow_id, &attr);
-  XMoveResizeWindow (xwin->display, xwin->child, 0, 0, attr.width, attr.height);
-
-  /* set the video window - the first clip is our own window */
-  xwin->x = 0;
-  xwin->y = 0;
-  xwin->w = attr.width;
-  xwin->h = attr.height;
-
-  drawable = xwin->child;
-  while (1) {
-    XQueryTree (xwin->display, drawable, &root, &parent, &kids, &numkids);
-    if (numkids)
-      XFree (kids);
-    drawable = parent;
-    XGetWindowAttributes (xwin->display, drawable, &attr);
-    xwin->x += attr.x;
-    xwin->y += attr.y;
-    if (parent == attr.root)
-      break;
-  }
-
-  xwin->ov_conf = TRUE;
-  xwin->ov_move = TRUE;
-
-  gst_xwin_configure (xwin);
-}
-
-static void
-gst_xwin_init_window (GstXWindowListener * xwin)
-{
-  XWindowAttributes attr;
-
-  /* start values */
-  xwin->ov_conf = TRUE;
-  xwin->ov_map = xwin->ov_wmmap = TRUE;
-  xwin->ov_move = TRUE;
-  xwin->ov_refresh = FALSE;
-  g_mutex_lock (xwin->main_lock);
-  xwin->ov_conf_id = xwin->ov_refresh_id = 0;
-  g_mutex_unlock (xwin->main_lock);
-  xwin->ov_visibility = VisibilityFullyObscured;
-
-  /* start the memory that we'll use */
-  xwin->clips = g_malloc (sizeof (GstXWindowClip) * NUM_CLIPS);
-  xwin->num_clips = 0;
-
-  /* open connection to X server */
-  xwin->display = XOpenDisplay (xwin->display_name);
-
-  /* window */
-  XGetWindowAttributes (xwin->display, xwin->xwindow_id, &attr);
-  xwin->child = XCreateSimpleWindow (xwin->display,
-      xwin->xwindow_id, 0, 0, attr.width, attr.height, 0, 0, 0);
-
-  /* listen to certain X events */
-  XSelectInput (xwin->display, xwin->xwindow_id, StructureNotifyMask);
-  XSelectInput (xwin->display, xwin->child,
-      VisibilityChangeMask | StructureNotifyMask);
-  XSelectInput (xwin->display, DefaultRootWindow (xwin->display),
-      VisibilityChangeMask | StructureNotifyMask | SubstructureNotifyMask);
-
-  /* show */
-  XMapWindow (xwin->display, xwin->child);
-
-  gst_xwin_resize (xwin);
-}
-
-static void
-gst_xwin_exit_window (GstXWindowListener * xwin)
-{
-  /* disable overlay */
-  gst_xwin_set_overlay (xwin, FALSE);
-
-  /* delete idle funcs */
-  if (xwin->ov_conf_id != 0)
-    g_source_remove (xwin->ov_conf_id);
-
-  g_mutex_lock (xwin->main_lock);
-  if (xwin->ov_refresh_id != 0)
-    g_source_remove (xwin->ov_refresh_id);
-  g_mutex_unlock (xwin->main_lock);
-
-  /* get away from X and free mem */
-  XDestroyWindow (xwin->display, xwin->child);
-  XCloseDisplay (xwin->display);
-  g_free (xwin->clips);
-}
-
-static gpointer
-gst_xwin_thread (gpointer data)
-{
-  GstXWindowListener *xwin = GST_X_WINDOW_LISTENER (data);
-  XEvent event;
-
-  /* Hi, I'm GStreamer. What's your name? */
-  gst_xwin_init_window (xwin);
-
-  while (xwin->cycle) {
-    XNextEvent (xwin->display, &event);
-
-    if (!xwin->cycle)
-      break;
-
-    if ((event.type == ConfigureNotify &&
-            event.xconfigure.window == xwin->xwindow_id) ||
-        (event.type == MapNotify &&
-            event.xmap.window == xwin->xwindow_id) ||
-        (event.type == UnmapNotify &&
-            event.xunmap.window == xwin->xwindow_id)) {
-      /* the 'parent' window, i.e. the widget provided by client */
-      switch (event.type) {
-        case MapNotify:
-          xwin->ov_map = TRUE;
-          xwin->ov_conf = TRUE;
-          gst_xwin_configure (xwin);
-          break;
-
-        case UnmapNotify:
-          xwin->ov_map = FALSE;
-          xwin->ov_conf = TRUE;
-          gst_xwin_configure (xwin);
-          break;
-
-        case ConfigureNotify:
-          gst_xwin_resize (xwin);
-          break;
-
-        default:
-          /* nothing */
-          break;
-      }
-    } else if (event.xany.window == xwin->child) {
-      /* our own private window */
-      switch (event.type) {
-        case Expose:
-          if (!event.xexpose.count) {
-            if (xwin->ov_refresh) {
-              xwin->ov_refresh = FALSE;
-            } else {
-              xwin->ov_conf = TRUE;
-              gst_xwin_configure (xwin);
-            }
-          }
-          break;
-
-        case VisibilityNotify:
-          xwin->ov_visibility = event.xvisibility.state;
-          if (xwin->ov_refresh) {
-            if (event.xvisibility.state != VisibilityFullyObscured)
-              xwin->ov_refresh = FALSE;
-          } else {
-            xwin->ov_conf = TRUE;
-            gst_xwin_configure (xwin);
-          }
-          break;
-
-        default:
-          /* nothing */
-          break;
-      }
-    } else {
-      /* root window */
-      switch (event.type) {
-        case MapNotify:
-        case UnmapNotify:
-          /* are we still visible? */
-          if (!xwin->ov_refresh) {
-            XWindowAttributes attr;
-            gboolean on;
-
-            XGetWindowAttributes (xwin->display, xwin->xwindow_id, &attr);
-            on = (attr.map_state == IsViewable);
-            xwin->ov_wmmap = on;
-            xwin->ov_conf = TRUE;
-            gst_xwin_configure (xwin);
-          }
-          break;
-
-        case ConfigureNotify:
-          if (!xwin->ov_refresh) {
-            gst_xwin_resize (xwin);
-          }
-          break;
-
-        default:
-          /* nothing */
-          break;
-      }
-    }
-  }
-
-  /* Nice to have met you, see you later */
-  gst_xwin_exit_window (xwin);
-
-  g_thread_exit (NULL);
-
-  return NULL;
-}
-
-static void
-gst_xwin_start (GstXWindowListener * xwin)
-{
-  DEBUG ("Starting XWindow listener");
-
-  xwin->cycle = TRUE;
-  /* we use this main_display for two things: first of all,
-   * the window needs to be 'refreshed' to remove artifacts
-   * after every move. Secondly, we use this to 'unhang' the
-   * event handler after we've stopped it */
-  xwin->main_lock = g_mutex_new ();
-  xwin->main_display = XOpenDisplay (xwin->display_name);
-  xwin->thread = g_thread_create (gst_xwin_thread, (gpointer) xwin, TRUE, NULL);
-
-  DEBUG ("Started X-overlay");
-}
-
-static void
-gst_xwin_stop (GstXWindowListener * xwin)
-{
-  DEBUG ("Stopping XWindow listener");
-
-  xwin->cycle = FALSE;
-  /* now, the event loop will hang. To prevent this from hanging
-   * our app, app, we re-do our refresh hack. Oh man, this is
-   * ugly. But it works. :). */
-  g_mutex_lock (xwin->main_lock);
-  if (xwin->ov_refresh_id)
-    g_source_remove (xwin->ov_refresh_id);
-  g_mutex_unlock (xwin->main_lock);
-
-  gst_xwin_refresh ((gpointer) xwin);
-  g_thread_join (xwin->thread);
-  XCloseDisplay (xwin->main_display);
-  g_mutex_free (xwin->main_lock);
-
-  DEBUG ("Stopped X-overlay");
-}
-
-/*
- * End of code inspired by XawTV.
- */
-
-static gboolean
-plugin_init (GstPlugin * plugin)
-{
-  return TRUE;
-}
-
-GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
-    GST_VERSION_MINOR,
-    "xwindowlistener",
-    "X11-based XWindow event/motion listener",
-    plugin_init, VERSION, GST_LICENSE, GST_PACKAGE, GST_ORIGIN)
diff --git a/gst-libs/gst/xwindowlistener/xwindowlistener.h b/gst-libs/gst/xwindowlistener/xwindowlistener.h
deleted file mode 100644 (file)
index 834be67..0000000
+++ /dev/null
@@ -1,116 +0,0 @@
-/* G-Streamer X11 Window event/motion listener
- * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net>
- *
- * xwindowlistener.h: object definition
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * 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
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __X_WINDOW_LISTENER_H__
-#define __X_WINDOW_LISTENER_H__
-
-#include <gst/gst.h>
-#include <X11/Xlib.h>
-
-G_BEGIN_DECLS
-
-#define GST_TYPE_X_WINDOW_LISTENER \
-  (gst_x_window_listener_get_type())
-#define GST_X_WINDOW_LISTENER(obj) \
-  (G_TYPE_CHECK_INSTANCE_CAST((obj), GST_TYPE_X_WINDOW_LISTENER, \
-                             GstXWindowListener))
-#define GST_X_WINDOW_LISTENER_CLASS(klass) \
-  (G_TYPE_CHECK_CLASS_CAST((klass), GST_TYPE_X_WINDOW_LISTENER, \
-                          GstXWindowListenerClass))
-#define GST_IS_X_WINDOW_LISTENER(obj) \
-  (G_TYPE_CHECK_INSTANCE_TYPE((obj), GST_TYPE_X_WINDOW_LISTENER))
-#define GST_IS_X_WINDOW_LISTENER_CLASS(obj) \
-  (G_TYPE_CHECK_CLASS_TYPE((klass), GST_TYPE_X_WINDOW_LISTENER))
-
-typedef struct _GstXWindowListener     GstXWindowListener;
-typedef struct _GstXWindowListenerClass        GstXWindowListenerClass;
-typedef struct _GstXWindowClip         GstXWindowClip;
-typedef void (* MapWindowFunc)         (gpointer your_data,
-                                        gboolean visible);
-typedef void (* SetWindowFunc)         (gpointer your_data,
-                                        gint x,  gint y,
-                                        gint w,  gint h,
-                                        GstXWindowClip *clips,
-                                        gint     num_clips);
-
-struct _GstXWindowClip {
-  gint32   x_offset,
-          y_offset,
-          width,
-          height;
-  gpointer data;
-};
-
-struct _GstXWindowListener {
-  GObject  parent;
-
-  /* "per-instance virtual functions" */
-  MapWindowFunc map_window_func;
-  SetWindowFunc set_window_func;
-
-  /* private data with which we call the virtual functions */
-  gpointer private_data;
-
-  /* general information of what we're doing */
-  gchar   *display_name;
-  XID      xwindow_id;
-
-  /* one extra... */
-  Display *main_display;
-  GMutex  *main_lock;
-
-  /* oh my g*d, this is going to be so horribly ugly */
-  GThread *thread;
-  gboolean cycle;
-
-  /* the overlay window + own thread */
-  Display *display;
-  Drawable child;
-  gboolean ov_conf,
-          ov_map,
-          ov_visible,
-          ov_refresh,
-          ov_move,
-          ov_wmmap;
-  gint     ov_visibility;
-  guint    ov_conf_id,
-          ov_refresh_id;
-  gint     x, y, w, h;
-  GstXWindowClip *clips;
-  gint     num_clips;
-};
-
-struct _GstXWindowListenerClass {
-  GObjectClass parent;
-};
-
-GType  gst_x_window_listener_get_type  (void);
-GstXWindowListener *
-       gst_x_window_listener_new       (gchar              *display,
-                                        MapWindowFunc       map_window_func,
-                                        SetWindowFunc       set_window_func,
-                                        gpointer            private_data);
-void   gst_x_window_listener_set_xid   (GstXWindowListener *xwin,
-                                        XID                 id);
-
-G_END_DECLS
-
-#endif /* __X_WINDOW_LISTENER_H__ */