smoothstreaming: build directory stubs for new plugin
authorThiago Santos <thiago.sousa.santos@collabora.com>
Thu, 8 Nov 2012 18:42:39 +0000 (15:42 -0300)
committerThiago Santos <thiago.sousa.santos@collabora.com>
Tue, 7 May 2013 23:02:41 +0000 (20:02 -0300)
Initial build structure for MS' Smooth Streaming plugin

Conflicts:
ext/Makefile.am

configure.ac
ext/Makefile.am
ext/smoothstreaming/Makefile.am [new file with mode: 0644]
ext/smoothstreaming/gstsmoothstreaming-plugin.c [new file with mode: 0644]

index 1d31c1e..6eba5b7 100644 (file)
@@ -1926,6 +1926,18 @@ AG_GST_CHECK_FEATURE(SDL, [SDL plug-in], sdlvideosink sdlaudiosink, [
     AM_PATH_SDL(, HAVE_SDL=yes, HAVE_SDL=no)
 ])
 
+dnl **** Smooth Streaming ****
+translit(dnm, m, l) AM_CONDITIONAL(USE_SMOOTHSTREAMING, true)
+AG_GST_CHECK_FEATURE(SMOOTHSTREAMING, [Smooth Streaming plug-in], smoothstreaming, [
+  PKG_CHECK_MODULES(LIBXML2, libxml-2.0 >= 2.4,
+    [HAVE_LIBXML2="yes"
+     HAVE_SMOOTHSTREAMING="yes"],
+    [HAVE_LIBXML2="no"
+     HAVE_SMOOTHSTREAMING="no"])
+  AC_SUBST(LIBXML2_CFLAGS)
+  AC_SUBST(LIBXML2_LIBS)
+])
+
 dnl *** sndfile ***
 translit(dnm, m, l) AM_CONDITIONAL(USE_SNDFILE, true)
 AG_GST_CHECK_FEATURE(SNDFILE, [sndfile plug-in], sfsrc sfsink, [
@@ -2230,6 +2242,7 @@ AM_CONDITIONAL(USE_RSVG, false)
 AM_CONDITIONAL(USE_TIMIDITY, false)
 AM_CONDITIONAL(USE_WILDMIDI, false)
 AM_CONDITIONAL(USE_SDL, false)
+AM_CONDITIONAL(USE_SMOOTHSTREAMING, false)
 AM_CONDITIONAL(USE_SNDFILE, false)
 AM_CONDITIONAL(USE_SOUNDTOUCH, false)
 AM_CONDITIONAL(USE_SPANDSP, false)
@@ -2492,6 +2505,7 @@ ext/rtmp/Makefile
 ext/sbc/Makefile
 ext/schroedinger/Makefile
 ext/sdl/Makefile
+ext/smoothstreaming/Makefile
 ext/sndfile/Makefile
 ext/soundtouch/Makefile
 ext/spandsp/Makefile
index 7d37399..8e4e467 100644 (file)
@@ -292,6 +292,12 @@ else
 SDL_DIR=
 endif
 
+if USE_SMOOTHSTREAMING
+SMOOTHSTREAMING_DIR = smoothstreaming
+else
+SMOOTHSTREAMING_DIR =
+endif
+
 # if USE_SMOOTHWAVE
 # SMOOTHWAVE_DIR=smoothwave
 # else
@@ -426,6 +432,7 @@ SUBDIRS=\
        $(SBC_DIR) \
        $(SCHRO_DIR) \
        $(SDL_DIR) \
+       $(SMOOTHSTREAMING_DIR) \
        $(SMOOTHWAVE_DIR) \
        $(SNDFILE_DIR) \
        $(SNDIO_DIR) \
@@ -486,6 +493,7 @@ DIST_SUBDIRS = \
        sbc \
        schroedinger \
        sdl \
+       smoothstreaming \
        sndfile \
        sndio \
        soundtouch \
diff --git a/ext/smoothstreaming/Makefile.am b/ext/smoothstreaming/Makefile.am
new file mode 100644 (file)
index 0000000..935508a
--- /dev/null
@@ -0,0 +1,28 @@
+
+plugin_LTLIBRARIES = libgstsmoothstreaming.la
+
+libgstsmoothstreaming_la_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(GST_CFLAGS)
+libgstsmoothstreaming_la_LIBADD = \
+    $(GST_PLUGINS_BASE_LIBS) \
+    -lgsttag-@GST_MAJORMINOR@ \
+    $(GST_BASE_LIBS) $(GST_LIBS) $(ZLIB_LIBS)
+libgstsmoothstreaming_la_LDFLAGS = ${GST_PLUGIN_LDFLAGS}
+libgstsmoothstreaming_la_SOURCES = gstsmoothstreaming-plugin.c
+libgstsmoothstreaming_la_LIBTOOLFLAGS = --tag=disable-static
+
+#noinst_HEADERS =
+
+Android.mk: Makefile.am $(BUILT_SOURCES)
+       androgenizer \
+       -:PROJECT libgstsmoothstreaming -:SHARED libgstsmoothstreaming \
+        -:TAGS eng debug \
+         -:REL_TOP $(top_srcdir) -:ABS_TOP $(abs_top_srcdir) \
+        -:SOURCES $(libgstsmoothstreaming_la_SOURCES) \
+        -:CFLAGS $(DEFS) $(DEFAULT_INCLUDES) $(CPPFLAGS) $(libgstsmoothstreaming_la_CFLAGS) \
+        -:LDFLAGS $(libgstsmoothstreaming_la_LDFLAGS) \
+                  $(libgstsmoothstreaming_la_LIBADD) \
+                  -ldl \
+        -:PASSTHROUGH LOCAL_ARM_MODE:=arm \
+                      LOCAL_MODULE_PATH:='$$(TARGET_OUT)/lib/gstreamer-0.10' \
+       > $@
+
diff --git a/ext/smoothstreaming/gstsmoothstreaming-plugin.c b/ext/smoothstreaming/gstsmoothstreaming-plugin.c
new file mode 100644 (file)
index 0000000..9bf193e
--- /dev/null
@@ -0,0 +1,39 @@
+/* GStreamer
+ * Copyright (C) 2012 Smart TV Alliance
+ *  Author: Thiago Sousa Santos <thiago.sousa.santos@collabora.com>, Collabora Ltd.
+ *
+ * gstsmoothstreaming-plugin.c:
+ *
+ * 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-i18n-plugin.h"
+#include <gst/gst.h>
+
+static gboolean
+plugin_init (GstPlugin * plugin)
+{
+  return TRUE;
+}
+
+GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
+    GST_VERSION_MINOR,
+    "smoothstreaming",
+    "Microsoft's Smooth Streaming format support ",
+    plugin_init, VERSION, "LGPL", GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN);