4387eb07f5d4be05d26f65ea4105af439393c8ea
[platform/upstream/gst-plugins-good.git] / sys / oss / gstossaudio.c
1 /* GStreamer
2  * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Library General Public
6  * License as published by the Free Software Foundation; either
7  * version 2 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12  * Library General Public License for more details.
13  *
14  * You should have received a copy of the GNU Library General Public
15  * License along with this library; if not, write to the
16  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17  * Boston, MA 02111-1307, USA.
18  */
19
20 #ifdef HAVE_CONFIG_H
21 #include "config.h"
22 #endif
23
24 #include "gst/gst-i18n-plugin.h"
25
26 #include "gstosselement.h"
27 #include "gstosssink.h"
28 #include "gstosssrc.h"
29
30 extern gchar *__gst_oss_plugin_dir;
31
32 GST_DEBUG_CATEGORY (oss_debug);
33
34 static gboolean
35 plugin_init (GstPlugin *plugin)
36 {
37   if (!gst_library_load ("gstaudio"))
38     return FALSE;
39
40   if (!gst_element_register (plugin, "ossmixer", GST_RANK_PRIMARY,
41                              GST_TYPE_OSSELEMENT) ||
42       !gst_element_register (plugin, "osssrc", GST_RANK_PRIMARY,
43                              GST_TYPE_OSSSRC) ||
44       !gst_element_register (plugin, "osssink", GST_RANK_PRIMARY,
45                              GST_TYPE_OSSSINK)) {
46     return FALSE;
47   }
48
49   GST_DEBUG_CATEGORY_INIT (oss_debug, "oss", 0, "OSS elements");
50
51 #ifdef ENABLE_NLS
52   setlocale (LC_ALL, "");
53   bindtextdomain (GETTEXT_PACKAGE, LOCALEDIR);
54 #endif /* ENABLE_NLS */
55
56   return TRUE;
57 }
58
59 GST_PLUGIN_DEFINE (
60   GST_VERSION_MAJOR,
61   GST_VERSION_MINOR,
62   "ossaudio",
63   "OSS (Open Sound System) support for GStreamer",
64   plugin_init,
65   VERSION,
66   GST_LICENSE,
67   GST_PACKAGE,
68   GST_ORIGIN
69 )