summaryrefslogtreecommitdiffstats
path: root/ext/jack/gstjackaudioclient.c
AgeCommit message (Collapse)AuthorFilesLines
2009-05-28jack: when stopping playback, do one more cycle to flush the port. Fixes #582167Stefan Kost1-3/+29
The gst_jack_audio_client_set_active() flags the port as deactivating and uses a GCond to wait until the jack_process_cb() has run once more and cleared the flag. This way the client zero's the buffer. This happens if one manyally go to PAUSED and then to READY, while leting the mainloop run inbetween.
2008-08-07ext/jack/: Add a jackaudiosrc. Refactor sink slightly for better code reuse.Tristan Matthews1-0/+3
Original commit message from CVS: patch by: Tristan Matthews <tristan@sat.qc.ca> * ext/jack/Makefile.am: * ext/jack/gstjack.c: * ext/jack/gstjackaudioclient.c: * ext/jack/gstjackaudiosink.c: * ext/jack/gstjackaudiosink.h: * ext/jack/gstjackaudiosrc.c: * ext/jack/gstjackaudiosrc.h: * ext/jack/gstjackringbuffer.h: Add a jackaudiosrc. Refactor sink slightly for better code reuse. Fixes #545197.
2007-03-18ext/jack/gstjackaudioclient.c: Don't need to take the connection lock, it ↵Paul Davis1-7/+19
will not be used and could cause deadlocks. Original commit message from CVS: Based on patch by: Paul Davis <paul at linuxaudiosystems dot com> * ext/jack/gstjackaudioclient.c: (gst_jack_audio_unref_connection): Don't need to take the connection lock, it will not be used and could cause deadlocks.
2007-03-08ext/jack/: Make an object to manage client connections to the jack server ↵Paul Davis1-0/+484
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.