Tizen 2.0 Release
[framework/multimedia/gst-plugins-bad0.10.git] / gst / aiff / aiff.c
1 /* -*- Mode: C; tab-width: 2; indent-tabs-mode: t; c-basic-offset: 2 -*- */
2 /* GStreamer AIFF plugin initialisation
3  * Copyright (C) <2008> Pioneers of the Inevitable <songbird@songbirdnest.com>
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Library General Public
7  * License as published by the Free Software Foundation; either
8  * version 2 of the License, or (at your option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13  * Library General Public License for more details.
14  *
15  * You should have received a copy of the GNU Library General Public
16  * License along with this library; if not, write to the
17  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18  * Boston, MA 02111-1307, USA.
19  */
20
21 #ifdef HAVE_CONFIG_H
22 #include "config.h"
23 #endif
24
25 #include <gst/tag/tag.h>
26
27 #include <gst/gst-i18n-plugin.h>
28
29 #include "aiffparse.h"
30 #include "aiffmux.h"
31
32 GST_DEBUG_CATEGORY_STATIC (aiff_debug);
33 #define GST_CAT_DEFAULT (aiff_debug)
34
35 GST_DEBUG_CATEGORY_EXTERN (aiffparse_debug);
36 GST_DEBUG_CATEGORY_EXTERN (aiffmux_debug);
37
38 static gboolean
39 plugin_init (GstPlugin * plugin)
40 {
41   gboolean ret;
42
43   GST_DEBUG_CATEGORY_INIT (aiff_debug, "aiff", 0, "AIFF plugin");
44   GST_DEBUG_CATEGORY_INIT (aiffparse_debug, "aiffparse", 0, "AIFF parser");
45   GST_DEBUG_CATEGORY_INIT (aiffmux_debug, "aiffmux", 0, "AIFF muxer");
46
47 #ifdef ENABLE_NLS
48   GST_DEBUG ("binding text domain %s to locale dir %s", GETTEXT_PACKAGE,
49       LOCALEDIR);
50   bindtextdomain (GETTEXT_PACKAGE, LOCALEDIR);
51   bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
52 #endif
53
54   ret = gst_element_register (plugin, "aiffparse", GST_RANK_PRIMARY,
55       GST_TYPE_AIFF_PARSE);
56   ret &= gst_element_register (plugin, "aiffmux", GST_RANK_PRIMARY,
57       GST_TYPE_AIFF_MUX);
58
59   gst_tag_register_musicbrainz_tags ();
60
61   return ret;
62 }
63
64 GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
65     GST_VERSION_MINOR,
66     "aiff",
67     "Create and parse Audio Interchange File Format (AIFF) files",
68     plugin_init, VERSION, GST_LICENSE, GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN)