summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Schleef <ds@schleef.org>2013-04-06 19:10:52 -0700
committerDavid Schleef <ds@schleef.org>2013-04-06 19:10:52 -0700
commit2854b1153446c004397652055b823b3f746e57b4 (patch)
treedb53aadb83c54051875c3e80eaf935b646fa5773
parent1818e207da419083cf465a2a1b6367fba2896fdd (diff)
Add some template source files
-rw-r--r--configure.ac24
-rw-r--r--grtmp/Makefile.am24
-rw-r--r--grtmp/grtmp.c0
-rw-r--r--grtmp/grtmp.h0
-rw-r--r--grtmp/rtmpclient.c124
-rw-r--r--grtmp/rtmpclient.h50
-rw-r--r--grtmp/rtmpconnection.c121
-rw-r--r--grtmp/rtmpconnection.h50
-rw-r--r--grtmp/rtmpserver.c122
-rw-r--r--grtmp/rtmpserver.h50
10 files changed, 553 insertions, 12 deletions
diff --git a/configure.ac b/configure.ac
index 2710dde..b8abeb3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2,7 +2,7 @@ AC_PREREQ([2.58])
dnl PLEASE remove the nano when doing a release
AC_INIT(gst-rtmp,0.1.0.1)
-AS_NANO([GSS_UNRELEASED=no],[GSS_UNRELEASED=yes])
+AS_NANO([GST_RTMP_UNRELEASED=no],[GST_RTMP_UNRELEASED=yes])
AC_CANONICAL_HOST([])
AM_INIT_AUTOMAKE(1.6)
@@ -17,8 +17,8 @@ dnl - library source changed -> increment REVISION
dnl - interfaces added/removed/changed -> increment CURRENT, REVISION = 0
dnl - interfaces added -> increment AGE
dnl - interfaces removed -> AGE = 0
-GSS_LIBVERSION="0:0:0"
-AC_SUBST(GSS_LIBVERSION)
+GST_RTMP_LIBVERSION="0:0:0"
+AC_SUBST(GST_RTMP_LIBVERSION)
AC_LIBTOOL_WIN32_DLL
AC_PROG_LIBTOOL
@@ -31,7 +31,7 @@ LT_PATH_NM
dnl allow for different autotools
AS_AUTOTOOLS_ALTERNATE
-AC_CONFIG_SRCDIR([grtmp/grtmp.c])
+AC_CONFIG_SRCDIR([grtmp/rtmpserver.c])
AC_CONFIG_MACRO_DIR([m4])
ACLOCAL_AMFLAGS="-I m4 $ACLOCAL_AMFLAGS"
@@ -45,10 +45,10 @@ dnl the version check needs to stay here because autopoint greps for it
AC_CHECK_LIBM
AC_SUBST(LIBM)
-AS_COMPILER_FLAG(-Wall, GSS_CFLAGS="$GSS_CFLAGS -Wall")
-if test "x$GSS_UNRELEASED" = "xyes"
+AS_COMPILER_FLAG(-Wall, GST_RTMP_CFLAGS="$GST_RTMP_CFLAGS -Wall")
+if test "x$GST_RTMP_UNRELEASED" = "xyes"
then
- AS_COMPILER_FLAG(-Werror, GSS_CFLAGS="$GSS_CFLAGS -Werror")
+ AS_COMPILER_FLAG(-Werror, GST_RTMP_CFLAGS="$GST_RTMP_CFLAGS -Werror")
fi
#AS_COMPILER_FLAG(-O3, CFLAGS=`echo $CFLAGS | sed s/O2/O3/`)
@@ -57,7 +57,7 @@ fi
# Enable severe pain
#AS_COMPILER_FLAGS(COMPANY_CFLAGS,"-Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Wold-style-definition -Wdeclaration-after-statement -Wmissing-declarations -Wmissing-prototypes -Wredundant-decls -Wmissing-noreturn -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Winline -Wformat-nonliteral -Wformat-security -Wswitch-enum -Wswitch-default")
#COMPANY_CFLAGS="-Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Wold-style-definition -Wdeclaration-after-statement -Wmissing-declarations -Wmissing-prototypes -Wredundant-decls -Wmissing-noreturn -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Winline -Wformat-nonliteral -Wformat-security -Wswitch-enum -Wswitch-default"
-#GSS_CFLAGS="$GSS_CFLAGS $COMPANY_CFLAGS"
+#GST_RTMP_CFLAGS="$GST_RTMP_CFLAGS $COMPANY_CFLAGS"
##################################################
@@ -128,11 +128,11 @@ AC_SUBST(GST_ALL_LDFLAGS)
AM_CONDITIONAL(HAVE_FALSE, false)
-GSS_CFLAGS="$GSS_CFLAGS -I\$(top_srcdir)"
-AC_SUBST(GSS_CFLAGS)
+GST_RTMP_CFLAGS="$GST_RTMP_CFLAGS -I\$(top_srcdir)"
+AC_SUBST(GST_RTMP_CFLAGS)
-GSS_LIBS="\$(top_builddir)/gst-rtmp/libgss-$GST_API_VERSION.la"
-AC_SUBST(GSS_LIBS)
+GST_RTMP_LIBS="\$(top_builddir)/gst-rtmp/libgss-$GST_API_VERSION.la"
+AC_SUBST(GST_RTMP_LIBS)
AS_HOST_DEFINES()
diff --git a/grtmp/Makefile.am b/grtmp/Makefile.am
index e69de29..9529a35 100644
--- a/grtmp/Makefile.am
+++ b/grtmp/Makefile.am
@@ -0,0 +1,24 @@
+
+lib_LTLIBRARIES = libgstrtmp-@GST_API_VERSION@.la
+
+gstrtmp_@GST_API_VERSION@_includedir = $(includedir)/gstreamer-@GST_API_VERSION@/rtmp
+
+libgstrtmp_@GST_API_VERSION@_la_CFLAGS = \
+ $(GST_CFLAGS) \
+ $(SOUP_CFLAGS)
+libgstrtmp_@GST_API_VERSION@_la_LIBADD = \
+ $(GST_LIBS) \
+ $(SOUP_LIBS)
+libgstrtmp_@GST_API_VERSION@_la_LDFLAGS = \
+ -version-info $(GST_RTMP_LIBVERSION) \
+ -no-undefined -export-symbols-regex 'gst_'
+libgstrtmp_@GST_API_VERSION@_la_SOURCES = \
+ $(sources)
+
+sources = \
+ rtmpserver.c \
+ rtmpserver.h \
+ rtmpclient.c \
+ rtmpclient.h \
+ rtmpconnection.c \
+ rtmpconnection.h
diff --git a/grtmp/grtmp.c b/grtmp/grtmp.c
deleted file mode 100644
index e69de29..0000000
--- a/grtmp/grtmp.c
+++ /dev/null
diff --git a/grtmp/grtmp.h b/grtmp/grtmp.h
deleted file mode 100644
index e69de29..0000000
--- a/grtmp/grtmp.h
+++ /dev/null
diff --git a/grtmp/rtmpclient.c b/grtmp/rtmpclient.c
new file mode 100644
index 0000000..defbd23
--- /dev/null
+++ b/grtmp/rtmpclient.c
@@ -0,0 +1,124 @@
+/* GStreamer RTMP Library
+ * Copyright (C) 2013 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., 51 Franklin Street, Suite 500,
+ * Boston, MA 02110-1335, USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <gst/gst.h>
+#include "rtmpclient.h"
+
+GST_DEBUG_CATEGORY_STATIC (gst_rtmp_client_debug_category);
+#define GST_CAT_DEFAULT gst_rtmp_client_debug_category
+
+/* prototypes */
+
+static void gst_rtmp_client_set_property (GObject * object,
+ guint property_id, const GValue * value, GParamSpec * pspec);
+static void gst_rtmp_client_get_property (GObject * object,
+ guint property_id, GValue * value, GParamSpec * pspec);
+static void gst_rtmp_client_dispose (GObject * object);
+static void gst_rtmp_client_finalize (GObject * object);
+
+
+enum
+{
+ PROP_0
+};
+
+/* pad templates */
+
+
+/* class initialization */
+
+G_DEFINE_TYPE_WITH_CODE (GstRtmpClient, gst_rtmp_client, G_TYPE_OBJECT,
+ GST_DEBUG_CATEGORY_INIT (gst_rtmp_client_debug_category, "rtmpclient", 0,
+ "debug category for GstRtmpClient class"));
+
+static void
+gst_rtmp_client_class_init (GstRtmpClientClass * klass)
+{
+ GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+
+ gobject_class->set_property = gst_rtmp_client_set_property;
+ gobject_class->get_property = gst_rtmp_client_get_property;
+ gobject_class->dispose = gst_rtmp_client_dispose;
+ gobject_class->finalize = gst_rtmp_client_finalize;
+}
+
+static void
+gst_rtmp_client_init (GstRtmpClient * rtmpclient)
+{
+}
+
+void
+gst_rtmp_client_set_property (GObject * object, guint property_id,
+ const GValue * value, GParamSpec * pspec)
+{
+ GstRtmpClient *rtmpclient = GST_RTMP_CLIENT (object);
+
+ GST_DEBUG_OBJECT (rtmpclient, "set_property");
+
+ switch (property_id) {
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
+ break;
+ }
+}
+
+void
+gst_rtmp_client_get_property (GObject * object, guint property_id,
+ GValue * value, GParamSpec * pspec)
+{
+ GstRtmpClient *rtmpclient = GST_RTMP_CLIENT (object);
+
+ GST_DEBUG_OBJECT (rtmpclient, "get_property");
+
+ switch (property_id) {
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
+ break;
+ }
+}
+
+void
+gst_rtmp_client_dispose (GObject * object)
+{
+ GstRtmpClient *rtmpclient = GST_RTMP_CLIENT (object);
+
+ GST_DEBUG_OBJECT (rtmpclient, "dispose");
+
+ /* clean up as possible. may be called multiple times */
+
+ G_OBJECT_CLASS (gst_rtmp_client_parent_class)->dispose (object);
+}
+
+void
+gst_rtmp_client_finalize (GObject * object)
+{
+ GstRtmpClient *rtmpclient = GST_RTMP_CLIENT (object);
+
+ GST_DEBUG_OBJECT (rtmpclient, "finalize");
+
+ /* clean up object here */
+
+ G_OBJECT_CLASS (gst_rtmp_client_parent_class)->finalize (object);
+}
+
+
diff --git a/grtmp/rtmpclient.h b/grtmp/rtmpclient.h
new file mode 100644
index 0000000..7acf2ae
--- /dev/null
+++ b/grtmp/rtmpclient.h
@@ -0,0 +1,50 @@
+/* GStreamer
+ * Copyright (C) 2013 FIXME <fixme@example.com>
+ *
+ * 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., 51 Franklin St, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#ifndef _GST_RTMP_CLIENT_H_
+#define _GST_RTMP_CLIENT_H_
+
+
+G_BEGIN_DECLS
+
+#define GST_TYPE_RTMP_CLIENT (gst_rtmp_client_get_type())
+#define GST_RTMP_CLIENT(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_RTMP_CLIENT,GstRtmpClient))
+#define GST_RTMP_CLIENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_RTMP_CLIENT,GstRtmpClientClass))
+#define GST_IS_RTMP_CLIENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_RTMP_CLIENT))
+#define GST_IS_RTMP_CLIENT_CLASS(obj) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_RTMP_CLIENT))
+
+typedef struct _GstRtmpClient GstRtmpClient;
+typedef struct _GstRtmpClientClass GstRtmpClientClass;
+
+struct _GstRtmpClient
+{
+ GObject base_rtmpclient;
+
+};
+
+struct _GstRtmpClientClass
+{
+ GObjectClass base_rtmpclient_class;
+};
+
+GType gst_rtmp_client_get_type (void);
+
+G_END_DECLS
+
+#endif
diff --git a/grtmp/rtmpconnection.c b/grtmp/rtmpconnection.c
new file mode 100644
index 0000000..1d01875
--- /dev/null
+++ b/grtmp/rtmpconnection.c
@@ -0,0 +1,121 @@
+/* GStreamer RTMP Library
+ * Copyright (C) 2013 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., 51 Franklin Street, Suite 500,
+ * Boston, MA 02110-1335, USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <gst/gst.h>
+#include "rtmpconnection.h"
+
+GST_DEBUG_CATEGORY_STATIC (gst_rtmp_connection_debug_category);
+#define GST_CAT_DEFAULT gst_rtmp_connection_debug_category
+
+/* prototypes */
+
+static void gst_rtmp_connection_set_property (GObject * object,
+ guint property_id, const GValue * value, GParamSpec * pspec);
+static void gst_rtmp_connection_get_property (GObject * object,
+ guint property_id, GValue * value, GParamSpec * pspec);
+static void gst_rtmp_connection_dispose (GObject * object);
+static void gst_rtmp_connection_finalize (GObject * object);
+
+
+enum
+{
+ PROP_0
+};
+
+/* class initialization */
+
+G_DEFINE_TYPE_WITH_CODE (GstRtmpConnection, gst_rtmp_connection, G_TYPE_OBJECT,
+ GST_DEBUG_CATEGORY_INIT (gst_rtmp_connection_debug_category,
+ "rtmpconnection", 0, "debug category for GstRtmpConnection class"));
+
+static void
+gst_rtmp_connection_class_init (GstRtmpConnectionClass * klass)
+{
+ GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+
+ gobject_class->set_property = gst_rtmp_connection_set_property;
+ gobject_class->get_property = gst_rtmp_connection_get_property;
+ gobject_class->dispose = gst_rtmp_connection_dispose;
+ gobject_class->finalize = gst_rtmp_connection_finalize;
+
+}
+
+static void
+gst_rtmp_connection_init (GstRtmpConnection * rtmpconnection)
+{
+}
+
+void
+gst_rtmp_connection_set_property (GObject * object, guint property_id,
+ const GValue * value, GParamSpec * pspec)
+{
+ GstRtmpConnection *rtmpconnection = GST_RTMP_CONNECTION (object);
+
+ GST_DEBUG_OBJECT (rtmpconnection, "set_property");
+
+ switch (property_id) {
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
+ break;
+ }
+}
+
+void
+gst_rtmp_connection_get_property (GObject * object, guint property_id,
+ GValue * value, GParamSpec * pspec)
+{
+ GstRtmpConnection *rtmpconnection = GST_RTMP_CONNECTION (object);
+
+ GST_DEBUG_OBJECT (rtmpconnection, "get_property");
+
+ switch (property_id) {
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
+ break;
+ }
+}
+
+void
+gst_rtmp_connection_dispose (GObject * object)
+{
+ GstRtmpConnection *rtmpconnection = GST_RTMP_CONNECTION (object);
+
+ GST_DEBUG_OBJECT (rtmpconnection, "dispose");
+
+ /* clean up as possible. may be called multiple times */
+
+ G_OBJECT_CLASS (gst_rtmp_connection_parent_class)->dispose (object);
+}
+
+void
+gst_rtmp_connection_finalize (GObject * object)
+{
+ GstRtmpConnection *rtmpconnection = GST_RTMP_CONNECTION (object);
+
+ GST_DEBUG_OBJECT (rtmpconnection, "finalize");
+
+ /* clean up object here */
+
+ G_OBJECT_CLASS (gst_rtmp_connection_parent_class)->finalize (object);
+}
+
diff --git a/grtmp/rtmpconnection.h b/grtmp/rtmpconnection.h
new file mode 100644
index 0000000..522d0bd
--- /dev/null
+++ b/grtmp/rtmpconnection.h
@@ -0,0 +1,50 @@
+/* GStreamer
+ * Copyright (C) 2013 FIXME <fixme@example.com>
+ *
+ * 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., 51 Franklin St, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#ifndef _GST_RTMP_CONNECTION_H_
+#define _GST_RTMP_CONNECTION_H_
+
+
+G_BEGIN_DECLS
+
+#define GST_TYPE_RTMP_CONNECTION (gst_rtmp_connection_get_type())
+#define GST_RTMP_CONNECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_RTMP_CONNECTION,GstRtmpConnection))
+#define GST_RTMP_CONNECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_RTMP_CONNECTION,GstRtmpConnectionClass))
+#define GST_IS_RTMP_CONNECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_RTMP_CONNECTION))
+#define GST_IS_RTMP_CONNECTION_CLASS(obj) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_RTMP_CONNECTION))
+
+typedef struct _GstRtmpConnection GstRtmpConnection;
+typedef struct _GstRtmpConnectionClass GstRtmpConnectionClass;
+
+struct _GstRtmpConnection
+{
+ GObject base_rtmpconnection;
+
+};
+
+struct _GstRtmpConnectionClass
+{
+ GObjectClass base_rtmpconnection_class;
+};
+
+GType gst_rtmp_connection_get_type (void);
+
+G_END_DECLS
+
+#endif
diff --git a/grtmp/rtmpserver.c b/grtmp/rtmpserver.c
new file mode 100644
index 0000000..d643c3d
--- /dev/null
+++ b/grtmp/rtmpserver.c
@@ -0,0 +1,122 @@
+/* GStreamer RTMP Library
+ * Copyright (C) 2013 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., 51 Franklin Street, Suite 500,
+ * Boston, MA 02110-1335, USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <gst/gst.h>
+#include "rtmpserver.h"
+
+GST_DEBUG_CATEGORY_STATIC (gst_rtmp_server_debug_category);
+#define GST_CAT_DEFAULT gst_rtmp_server_debug_category
+
+/* prototypes */
+
+static void gst_rtmp_server_set_property (GObject * object,
+ guint property_id, const GValue * value, GParamSpec * pspec);
+static void gst_rtmp_server_get_property (GObject * object,
+ guint property_id, GValue * value, GParamSpec * pspec);
+static void gst_rtmp_server_dispose (GObject * object);
+static void gst_rtmp_server_finalize (GObject * object);
+
+
+enum
+{
+ PROP_0
+};
+
+/* class initialization */
+
+G_DEFINE_TYPE_WITH_CODE (GstRtmpServer, gst_rtmp_server, G_TYPE_OBJECT,
+ GST_DEBUG_CATEGORY_INIT (gst_rtmp_server_debug_category, "rtmpserver", 0,
+ "debug category for GstRtmpServer class"));
+
+static void
+gst_rtmp_server_class_init (GstRtmpServerClass * klass)
+{
+ GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+
+ gobject_class->set_property = gst_rtmp_server_set_property;
+ gobject_class->get_property = gst_rtmp_server_get_property;
+ gobject_class->dispose = gst_rtmp_server_dispose;
+ gobject_class->finalize = gst_rtmp_server_finalize;
+
+}
+
+static void
+gst_rtmp_server_init (GstRtmpServer * rtmpserver)
+{
+}
+
+void
+gst_rtmp_server_set_property (GObject * object, guint property_id,
+ const GValue * value, GParamSpec * pspec)
+{
+ GstRtmpServer *rtmpserver = GST_RTMP_SERVER (object);
+
+ GST_DEBUG_OBJECT (rtmpserver, "set_property");
+
+ switch (property_id) {
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
+ break;
+ }
+}
+
+void
+gst_rtmp_server_get_property (GObject * object, guint property_id,
+ GValue * value, GParamSpec * pspec)
+{
+ GstRtmpServer *rtmpserver = GST_RTMP_SERVER (object);
+
+ GST_DEBUG_OBJECT (rtmpserver, "get_property");
+
+ switch (property_id) {
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
+ break;
+ }
+}
+
+void
+gst_rtmp_server_dispose (GObject * object)
+{
+ GstRtmpServer *rtmpserver = GST_RTMP_SERVER (object);
+
+ GST_DEBUG_OBJECT (rtmpserver, "dispose");
+
+ /* clean up as possible. may be called multiple times */
+
+ G_OBJECT_CLASS (gst_rtmp_server_parent_class)->dispose (object);
+}
+
+void
+gst_rtmp_server_finalize (GObject * object)
+{
+ GstRtmpServer *rtmpserver = GST_RTMP_SERVER (object);
+
+ GST_DEBUG_OBJECT (rtmpserver, "finalize");
+
+ /* clean up object here */
+
+ G_OBJECT_CLASS (gst_rtmp_server_parent_class)->finalize (object);
+}
+
+
diff --git a/grtmp/rtmpserver.h b/grtmp/rtmpserver.h
new file mode 100644
index 0000000..596f231
--- /dev/null
+++ b/grtmp/rtmpserver.h
@@ -0,0 +1,50 @@
+/* GStreamer
+ * Copyright (C) 2013 FIXME <fixme@example.com>
+ *
+ * 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., 51 Franklin St, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#ifndef _GST_RTMP_SERVER_H_
+#define _GST_RTMP_SERVER_H_
+
+
+G_BEGIN_DECLS
+
+#define GST_TYPE_RTMP_SERVER (gst_rtmp_server_get_type())
+#define GST_RTMP_SERVER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_RTMP_SERVER,GstRtmpServer))
+#define GST_RTMP_SERVER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_RTMP_SERVER,GstRtmpServerClass))
+#define GST_IS_RTMP_SERVER(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_RTMP_SERVER))
+#define GST_IS_RTMP_SERVER_CLASS(obj) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_RTMP_SERVER))
+
+typedef struct _GstRtmpServer GstRtmpServer;
+typedef struct _GstRtmpServerClass GstRtmpServerClass;
+
+struct _GstRtmpServer
+{
+ GObject base_rtmpserver;
+
+};
+
+struct _GstRtmpServerClass
+{
+ GObjectClass base_rtmpserver_class;
+};
+
+GType gst_rtmp_server_get_type (void);
+
+G_END_DECLS
+
+#endif