summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim-Philipp Müller <tim.muller@collabora.co.uk>2011-01-02 15:25:41 +0000
committerTim-Philipp Müller <tim.muller@collabora.co.uk>2011-01-02 15:26:30 +0000
commit67f4489cd0cf5e0b0f031b19f2b44ceca1f3687f (patch)
treefe56d5ac65304eafa0f49e11d3576a53ed43cd87
parent3c43a9e102043b265d75674acaf3f34f2368731c (diff)
downloadgstreamer-plugins-good-67f4489cd0cf5e0b0f031b19f2b44ceca1f3687f.tar.gz
jack: new jackaudiosrc and jackaudiosink elements, moved from gst-plugins-bad
https://bugzilla.gnome.org/show_bug.cgi?id=621929
-rw-r--r--.gitignore2
-rw-r--r--configure.ac13
-rw-r--r--docs/plugins/Makefile.am2
-rw-r--r--docs/plugins/gst-plugins-good-plugins-docs.sgml3
-rw-r--r--docs/plugins/gst-plugins-good-plugins-sections.txt30
-rw-r--r--docs/plugins/inspect/plugin-jack.xml43
-rw-r--r--ext/Makefile.am8
-rw-r--r--gst-plugins-good.spec.in1
-rw-r--r--tests/examples/Makefile.am10
-rw-r--r--tests/examples/jack/Makefile.am8
10 files changed, 116 insertions, 4 deletions
diff --git a/.gitignore b/.gitignore
index 2ff4d5a7d..91867b285 100644
--- a/.gitignore
+++ b/.gitignore
@@ -43,3 +43,5 @@ gst/deinterlace/tvtime.h
tmp-orc.c
*orc.h
+
+/tests/examples/jack/jack_client
diff --git a/configure.ac b/configure.ac
index f510f7067..246e1f2b5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -748,6 +748,14 @@ AG_GST_CHECK_FEATURE(HAL, [HAL libraries], halelements, [
AG_GST_PKG_CHECK_MODULES(HAL, [hal >= 0.5.6, dbus-1 >= 0.32])
])
+dnl *** Jack ***
+translit(dnm, m, l) AM_CONDITIONAL(USE_JACK, true)
+AG_GST_CHECK_FEATURE(JACK, Jack, jack, [
+ PKG_CHECK_MODULES(JACK, jack >= 0.99.10, HAVE_JACK="yes", HAVE_JACK="no")
+ AC_SUBST(JACK_CFLAGS)
+ AC_SUBST(JACK_LIBS)
+])
+
dnl *** jpeg ***
dnl FIXME: we could use header checks here as well IMO
translit(dnm, m, l) AM_CONDITIONAL(USE_JPEG, true)
@@ -1020,6 +1028,7 @@ AM_CONDITIONAL(USE_GCONFTOOL, false)
AM_CONDITIONAL(USE_GDK_PIXBUF, false)
AM_CONDITIONAL(USE_GST_V4L2, false)
AM_CONDITIONAL(USE_HAL, false)
+AM_CONDITIONAL(USE_JACK, false)
AM_CONDITIONAL(USE_JPEG, false)
AM_CONDITIONAL(USE_LIBCACA, false)
AM_CONDITIONAL(USE_LIBDV, false)
@@ -1144,7 +1153,6 @@ gst/wavenc/Makefile
gst/wavparse/Makefile
gst/flx/Makefile
gst/y4m/Makefile
-ext/jpeg/Makefile
ext/Makefile
ext/aalib/Makefile
ext/annodex/Makefile
@@ -1155,6 +1163,8 @@ ext/flac/Makefile
ext/gconf/Makefile
ext/gdk_pixbuf/Makefile
ext/hal/Makefile
+ext/jack/Makefile
+ext/jpeg/Makefile
ext/libcaca/Makefile
ext/libpng/Makefile
ext/pulse/Makefile
@@ -1180,6 +1190,7 @@ tests/check/Makefile
tests/examples/Makefile
tests/examples/audiofx/Makefile
tests/examples/equalizer/Makefile
+tests/examples/jack/Makefile
tests/examples/level/Makefile
tests/examples/pulse/Makefile
tests/examples/rtp/Makefile
diff --git a/docs/plugins/Makefile.am b/docs/plugins/Makefile.am
index 6598f4db5..975e465ab 100644
--- a/docs/plugins/Makefile.am
+++ b/docs/plugins/Makefile.am
@@ -94,6 +94,8 @@ EXTRA_HFILES = \
$(top_srcdir)/ext/gdk_pixbuf/gstgdkpixbufsink.h \
$(top_srcdir)/ext/hal/gsthalaudiosink.h \
$(top_srcdir)/ext/hal/gsthalaudiosrc.h \
+ $(top_srcdir)/ext/jack/gstjackaudiosrc.h \
+ $(top_srcdir)/ext/jack/gstjackaudiosink.h \
$(top_srcdir)/ext/jpeg/gstjpegdec.h \
$(top_srcdir)/ext/jpeg/gstjpegenc.h \
$(top_srcdir)/ext/jpeg/gstsmokedec.h \
diff --git a/docs/plugins/gst-plugins-good-plugins-docs.sgml b/docs/plugins/gst-plugins-good-plugins-docs.sgml
index 1b7136b79..ade8dfde2 100644
--- a/docs/plugins/gst-plugins-good-plugins-docs.sgml
+++ b/docs/plugins/gst-plugins-good-plugins-docs.sgml
@@ -94,6 +94,8 @@
<xi:include href="xml/element-id3v2mux.xml" />
<xi:include href="xml/element-imagefreeze.xml" />
<xi:include href="xml/element-interleave.xml" />
+ <xi:include href="xml/element-jackaudiosrc.xml" />
+ <xi:include href="xml/element-jackaudiosink.xml" />
<xi:include href="xml/element-jpegdec.xml" />
<xi:include href="xml/element-jpegenc.xml" />
<xi:include href="xml/element-level.xml" />
@@ -206,6 +208,7 @@
<xi:include href="xml/plugin-id3demux.xml" />
<xi:include href="xml/plugin-imagefreeze.xml" />
<xi:include href="xml/plugin-interleave.xml" />
+ <xi:include href="xml/plugin-jack.xml" />
<xi:include href="xml/plugin-jpeg.xml" />
<xi:include href="xml/plugin-level.xml" />
<xi:include href="xml/plugin-matroska.xml" />
diff --git a/docs/plugins/gst-plugins-good-plugins-sections.txt b/docs/plugins/gst-plugins-good-plugins-sections.txt
index c643d4771..60d2c45a2 100644
--- a/docs/plugins/gst-plugins-good-plugins-sections.txt
+++ b/docs/plugins/gst-plugins-good-plugins-sections.txt
@@ -1114,6 +1114,36 @@ gst_interleave_get_type
</SECTION>
<SECTION>
+<FILE>element-jackaudiosrc</FILE>
+<TITLE>jackaudiosrc</TITLE>
+GstJackAudioSrc
+<SUBSECTION Standard>
+GstJackAudioSrcClass
+GST_JACK_AUDIO_SRC
+GST_JACK_AUDIO_SRC_CLASS
+GST_JACK_AUDIO_SRC_GET_CLASS
+GST_IS_JACK_AUDIO_SRC
+GST_IS_JACK_AUDIO_SRC_CLASS
+GST_TYPE_JACK_AUDIO_SRC
+gst_jack_audio_src_get_type
+</SECTION>
+
+<SECTION>
+<FILE>element-jackaudiosink</FILE>
+<TITLE>jackaudiosink</TITLE>
+GstJackAudioSink
+<SUBSECTION Standard>
+GstJackAudioSinkClass
+GST_JACK_AUDIO_SINK
+GST_JACK_AUDIO_SINK_CLASS
+GST_JACK_AUDIO_SINK_GET_CLASS
+GST_IS_JACK_AUDIO_SINK
+GST_IS_JACK_AUDIO_SINK_CLASS
+GST_TYPE_JACK_AUDIO_SINK
+gst_jack_audio_sink_get_type
+</SECTION>
+
+<SECTION>
<FILE>element-jpegdec</FILE>
<TITLE>jpegdec</TITLE>
GstJpegDec
diff --git a/docs/plugins/inspect/plugin-jack.xml b/docs/plugins/inspect/plugin-jack.xml
new file mode 100644
index 000000000..dcead7b27
--- /dev/null
+++ b/docs/plugins/inspect/plugin-jack.xml
@@ -0,0 +1,43 @@
+<plugin>
+ <name>jack</name>
+ <description>Jack elements</description>
+ <filename>../../ext/jack/.libs/libgstjack.so</filename>
+ <basename>libgstjack.so</basename>
+ <version>0.10.26.1</version>
+ <license>LGPL</license>
+ <source>gst-plugins-good</source>
+ <package>GStreamer Good Plug-ins git</package>
+ <origin>Unknown package origin</origin>
+ <elements>
+ <element>
+ <name>jackaudiosink</name>
+ <longname>Audio Sink (Jack)</longname>
+ <class>Sink/Audio</class>
+ <description>Output to Jack</description>
+ <author>Wim Taymans &lt;wim@fluendo.com&gt;</author>
+ <pads>
+ <caps>
+ <name>sink</name>
+ <direction>sink</direction>
+ <presence>always</presence>
+ <details>audio/x-raw-float, endianness=(int){ 1234 }, width=(int)32, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ]</details>
+ </caps>
+ </pads>
+ </element>
+ <element>
+ <name>jackaudiosrc</name>
+ <longname>Audio Source (Jack)</longname>
+ <class>Source/Audio</class>
+ <description>Input from Jack</description>
+ <author>Tristan Matthews &lt;tristan@sat.qc.ca&gt;</author>
+ <pads>
+ <caps>
+ <name>src</name>
+ <direction>source</direction>
+ <presence>always</presence>
+ <details>audio/x-raw-float, endianness=(int){ 1234 }, width=(int)32, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ]</details>
+ </caps>
+ </pads>
+ </element>
+ </elements>
+</plugin> \ No newline at end of file
diff --git a/ext/Makefile.am b/ext/Makefile.am
index 1dc2e2abc..409408ea8 100644
--- a/ext/Makefile.am
+++ b/ext/Makefile.am
@@ -46,6 +46,12 @@ else
HAL_DIR =
endif
+if USE_JACK
+JACK_DIR=jack
+else
+JACK_DIR=
+endif
+
if USE_JPEG
JPEG_DIR = jpeg
else
@@ -135,6 +141,7 @@ SUBDIRS = \
$(GCONF_DIR) \
$(GDK_PIXBUF_DIR) \
$(HAL_DIR) \
+ $(JACK_DIR) \
$(JPEG_DIR) \
$(LIBCACA_DIR) \
$(LIBDV_DIR) \
@@ -158,6 +165,7 @@ DIST_SUBDIRS = \
gconf \
gdk_pixbuf \
hal \
+ jack \
jpeg \
libcaca \
libpng \
diff --git a/gst-plugins-good.spec.in b/gst-plugins-good.spec.in
index 6cdd96c4c..88dc858ac 100644
--- a/gst-plugins-good.spec.in
+++ b/gst-plugins-good.spec.in
@@ -147,6 +147,7 @@ rm -rf $RPM_BUILD_ROOT
@USE_LIBCACA_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstcacasink.so
@USE_ESD_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstesd.so
@USE_FLAC_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstflac.so
+@USE_JACK_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstjack.so
@USE_JPEG_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstjpeg.so
@USE_LIBPNG_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstpng.so
@USE_OSS_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstossaudio.so
diff --git a/tests/examples/Makefile.am b/tests/examples/Makefile.am
index d3d93d4af..54e53bafb 100644
--- a/tests/examples/Makefile.am
+++ b/tests/examples/Makefile.am
@@ -1,5 +1,11 @@
-SUBDIRS = audiofx equalizer level pulse rtp shapewipe spectrum v4l2
+if USE_JACK
+JACK_DIR=jack
+else
+JACK_DIR=
+endif
-DIST_SUBDIRS = audiofx equalizer level pulse rtp shapewipe spectrum v4l2
+SUBDIRS = audiofx equalizer $(JACK_DIR) level pulse rtp shapewipe spectrum v4l2
+
+DIST_SUBDIRS = audiofx equalizer jack level pulse rtp shapewipe spectrum v4l2
include $(top_srcdir)/common/parallel-subdirs.mak
diff --git a/tests/examples/jack/Makefile.am b/tests/examples/jack/Makefile.am
index 4adfd1314..ad61cbd87 100644
--- a/tests/examples/jack/Makefile.am
+++ b/tests/examples/jack/Makefile.am
@@ -1,4 +1,10 @@
-noinst_PROGRAMS = jack_client
+if HAVE_GTK
+GTK_EXAMPLES=jack_client
+else
+GTK_EXAMPLES=
+endif
+
+noinst_PROGRAMS = $(GTK_EXAMPLES)
jack_client_SOURCES = jack_client.c
jack_client_CFLAGS = $(GST_CFLAGS) $(GTK_CFLAGS) $(JACK_CFLAGS)