Commit 75f8cca3 authored by Christoph Reiter's avatar Christoph Reiter Committed by Stefan Sauer

bs2b: add new plugin (Effect/Audio, crossfeed)

https://bugzilla.gnome.org/show_bug.cgi?id=611689
parent efb74ca0
......@@ -1820,6 +1820,16 @@ AG_GST_CHECK_FEATURE(APEXSINK, [AirPort Express Wireless sink], apexsink, [
])
])
dnl *** bs2b ***
translit(dnm, m, l) AM_CONDITIONAL(USE_BS2B, true)
AG_GST_CHECK_FEATURE(BS2B, [bs2b], bs2b, [
PKG_CHECK_MODULES(BS2B, libbs2b >= 3.1.0, HAVE_BS2B="yes", [
HAVE_BS2B="no"
])
AC_SUBST(BS2B_CFLAGS)
AC_SUBST(BS2B_LIBS)
])
dnl *** BZ2 ***
translit(dnm, m, l) AM_CONDITIONAL(USE_BZ2, true)
AG_GST_CHECK_FEATURE(BZ2, [bz2 library], bz2, [
......@@ -2998,6 +3008,7 @@ AM_CONDITIONAL(USE_ASSRENDER, false)
AM_CONDITIONAL(USE_VOAMRWBENC, false)
AM_CONDITIONAL(USE_VOAACENC, false)
AM_CONDITIONAL(USE_APEXSINK, false)
AM_CONDITIONAL(USE_BS2B, false)
AM_CONDITIONAL(USE_BZ2, false)
AM_CONDITIONAL(USE_CHROMAPRINT, false)
AM_CONDITIONAL(USE_CURL, false)
......@@ -3308,6 +3319,7 @@ ext/voamrwbenc/Makefile
ext/voaacenc/Makefile
ext/assrender/Makefile
ext/apexsink/Makefile
ext/bs2b/Makefile
ext/bz2/Makefile
ext/chromaprint/Makefile
ext/curl/Makefile
......
......@@ -22,6 +22,12 @@ endif
AUDIOFILE_DIR=
# endif
if USE_BS2B
BS2B_DIR=bs2b
else
BS2B_DIR=
endif
if USE_BZ2
BZ2_DIR=bz2
else
......@@ -418,6 +424,7 @@ SUBDIRS=\
$(VOAMRWBENC_DIR) \
$(APEXSINK_DIR) \
$(AUDIOFILE_DIR) \
$(BS2B_DIR) \
$(BZ2_DIR) \
$(CHROMAPRINT_DIR) \
$(CURL_DIR) \
......@@ -485,6 +492,7 @@ SUBDIRS=\
DIST_SUBDIRS = \
assrender \
apexsink \
bs2b \
bz2 \
chromaprint \
curl \
......
plugin_LTLIBRARIES = libgstbs2b.la
libgstbs2b_la_SOURCES = gstbs2b.c gstbs2b.h
libgstbs2b_la_CFLAGS = $(GST_PLUGINS_BAD_CFLAGS) \
$(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(GST_CFLAGS) \
$(BS2B_CFLAGS)
libgstbs2b_la_LIBADD = \
$(GST_PLUGINS_BASE_LIBS) -lgstaudio-$(GST_API_VERSION) \
$(GST_BASE_LIBS) $(GST_LIBS) \
$(BS2B_LIBS)
libgstbs2b_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
libgstbs2b_la_LIBTOOLFLAGS = $(GST_PLUGIN_LIBTOOLFLAGS)
noinst_HEADERS = gstbs2b.h
This diff is collapsed.
/* GStreamer
* Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
* Copyright (C) <2003> David Schleef <ds@schleef.org>
* Copyright (C) <2011,2014> Christoph Reiter <reiter.christoph@gmail.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 Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#ifndef __GST_BS2B_H__
#define __GST_BS2B_H__
#include <gst/gst.h>
#include <gst/audio/audio.h>
#include <gst/audio/gstaudiofilter.h>
#include <bs2b/bs2b.h>
G_BEGIN_DECLS
#define GST_TYPE_BS2B \
(gst_bs2b_get_type())
#define GST_BS2B(obj) \
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_BS2B,GstBs2b))
#define GST_BS2B_CLASS(klass) \
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_BS2B,GstBs2bClass))
#define GST_IS_BS2B(obj) \
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_BS2B))
#define GST_IS_BS2B_CLASS(klass) \
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_BS2B))
typedef struct _GstBs2b GstBs2b;
typedef struct _GstBs2bClass GstBs2bClass;
struct _GstBs2b
{
GstAudioFilter element;
/*< private > */
GMutex bs2b_lock;
t_bs2bdp bs2bdp;
void (*func) ();
guint bytes_per_sample;
};
struct _GstBs2bClass
{
GstAudioFilterClass parent_class;
};
GType gst_bs2b_get_type (void);
G_END_DECLS
#endif /* __GST_BS2B_H__ */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment