diff options
author | Eric Buehl <eric.buehl@gmail.com> | 2008-03-19 18:14:17 +0000 |
---|---|---|
committer | Sebastian Dröge <slomo@circular-chaos.org> | 2008-03-19 18:14:17 +0000 |
commit | ef2cb71d5fcad4dc3cbc239368a7bb9c30206761 (patch) | |
tree | fa5920a13c4b97898006780e1239196c0fe4bc94 /ext/ofa/gstofa.h | |
parent | 603b409c33ecc45e2e9b42e368ada98ff0c14d94 (diff) | |
download | gst-plugins-bad-ef2cb71d5fcad4dc3cbc239368a7bb9c30206761.tar.gz gst-plugins-bad-ef2cb71d5fcad4dc3cbc239368a7bb9c30206761.tar.bz2 gst-plugins-bad-ef2cb71d5fcad4dc3cbc239368a7bb9c30206761.zip |
Add an OFA element, the successor of MusicBrainz TRM fingerprinting.
Original commit message from CVS:
Based on a patch by: Eric Buehl <eric dot buehl at gmail dot com>
* configure.ac:
* ext/ofa/Makefile.am:
* ext/ofa/gstofa.c: (gst_ofa_base_init), (gst_ofa_finalize),
(gst_ofa_class_init), (create_fingerprint), (gst_ofa_event),
(gst_ofa_init), (gst_ofa_transform_ip), (gst_ofa_get_property),
(plugin_init):
* ext/ofa/gstofa.h:
Add an OFA element, the successor of MusicBrainz TRM fingerprinting.
Fixes bug #351309.
Diffstat (limited to 'ext/ofa/gstofa.h')
-rw-r--r-- | ext/ofa/gstofa.h | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/ext/ofa/gstofa.h b/ext/ofa/gstofa.h new file mode 100644 index 00000000..347a8ca4 --- /dev/null +++ b/ext/ofa/gstofa.h @@ -0,0 +1,79 @@ +/* GStreamer + * + * gstofa.h + * + * Copyright (C) 2006 M. Derezynski + * Copyright (C) 2008 Eric Buehl + * Copyright (C) 2008 Sebastian Dröge <slomo@circular-chaos.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 St, Fifth Floor, + * Boston, MA 02110-1301 USA. + */ + +#ifndef __GST_OFA_H__ +#define __GST_OFA_H__ + +#include <gst/gst.h> +#include <gst/base/gstadapter.h> +#include <gst/audio/gstaudiofilter.h> +#include <gst/audio/audio.h> + +G_BEGIN_DECLS + +#define GST_TYPE_OFA \ + (gst_ofa_get_type()) +#define GST_OFA(obj) \ + (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_OFA,GstOFA)) +#define GST_OFA_CLASS(klass) \ + (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_OFA,GstOFAClass)) +#define GST_IS_OFA(obj) \ + (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_OFA)) +#define GST_IS_OFA_CLASS(klass) \ + (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_OFA)) + +#define GST_TAG_OFA_FINGERPRINT "ofa-fingerprint" + +typedef struct _GstOFA GstOFA; +typedef struct _GstOFAClass GstOFAClass; + + +/** + * GstOFA: + * + * Opaque #GstOFA data structure + */ + +struct _GstOFA +{ + GstAudioFilter element; + + /*< private > */ + + GstAdapter *adapter; + char *fingerprint; + gboolean record; +}; + +struct _GstOFAClass +{ + GstAudioFilterClass parent_class; +}; + +GType gst_ofa_get_type (void); + +G_END_DECLS + +#endif /* __GST_OFA_H__ */ |