summaryrefslogtreecommitdiffstats
path: root/ext/jack/gstjackaudiosink.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2007-03-08 15:24:52 +0000
committerWim Taymans <wim.taymans@gmail.com>2007-03-08 15:24:52 +0000
commitf1b91e369d111f10996074c14c6a4843c36d5d41 (patch)
treea31fe3a3f7123b5201ade0a405d2f170b2d39737 /ext/jack/gstjackaudiosink.h
parent49e29a2716904ce50c1db8b561801f2b87378821 (diff)
downloadgst-plugins-bad-f1b91e369d111f10996074c14c6a4843c36d5d41.tar.gz
gst-plugins-bad-f1b91e369d111f10996074c14c6a4843c36d5d41.tar.bz2
gst-plugins-bad-f1b91e369d111f10996074c14c6a4843c36d5d41.zip
ext/jack/: Make an object to manage client connections to the jack server which we will use in the future to run sele...
Original commit message from CVS: Includes patch by: Paul Davis <paul at linuxaudiosystems dot com> * ext/jack/Makefile.am: * ext/jack/gstjackaudioclient.c: (gst_jack_audio_client_init), (jack_process_cb), (jack_sample_rate_cb), (jack_buffer_size_cb), (jack_shutdown_cb), (connection_find), (gst_jack_audio_make_connection), (gst_jack_audio_get_connection), (gst_jack_audio_unref_connection), (gst_jack_audio_connection_add_client), (gst_jack_audio_connection_remove_client), (gst_jack_audio_client_new), (gst_jack_audio_client_free), (gst_jack_audio_client_get_client), (gst_jack_audio_client_set_active): * ext/jack/gstjackaudioclient.h: Make an object to manage client connections to the jack server which we will use in the future to run selected jack elements with the same jack connection. Make some stuff a bit more threadsafe. Activate the jack client ASAP. * ext/jack/gstjackaudiosink.c: (gst_jack_audio_sink_allocate_channels), (gst_jack_audio_sink_free_channels), (jack_process_cb), (gst_jack_ring_buffer_open_device), (gst_jack_ring_buffer_close_device), (gst_jack_ring_buffer_acquire), (gst_jack_ring_buffer_release), (gst_jack_audio_sink_class_init), (gst_jack_audio_sink_init), (gst_jack_audio_sink_getcaps): * ext/jack/gstjackaudiosink.h: Use new client object to manage connections. Don't remove and recreate all ports, try to reuse them.
Diffstat (limited to 'ext/jack/gstjackaudiosink.h')
-rw-r--r--ext/jack/gstjackaudiosink.h13
1 files changed, 7 insertions, 6 deletions
diff --git a/ext/jack/gstjackaudiosink.h b/ext/jack/gstjackaudiosink.h
index 245521b2..12c82a83 100644
--- a/ext/jack/gstjackaudiosink.h
+++ b/ext/jack/gstjackaudiosink.h
@@ -27,6 +27,8 @@
#include <gst/gst.h>
#include <gst/audio/gstbaseaudiosink.h>
+#include "gstjackaudioclient.h"
+
G_BEGIN_DECLS
#define GST_TYPE_JACK_AUDIO_SINK (gst_jack_audio_sink_get_type())
@@ -63,6 +65,7 @@ typedef enum {
struct _GstJackAudioSink {
GstBaseAudioSink element;
+ /*< private >*/
/* cached caps */
GstCaps *caps;
@@ -71,17 +74,15 @@ struct _GstJackAudioSink {
gchar *server;
/* our client */
- jack_client_t *client;
+ GstJackAudioClient *client;
- /*< private >*/
- gpointer _gst_reserved[GST_PADDING];
+ /* our ports */
+ jack_port_t **ports;
+ int port_count;
};
struct _GstJackAudioSinkClass {
GstBaseAudioSinkClass parent_class;
-
- /*< private >*/
- gpointer _gst_reserved[GST_PADDING];
};
GType gst_jack_audio_sink_get_type (void);