Browse Source

Improve C adapter API.

git-svn-id: http://subversion.jackaudio.org/jack/jack2/branches/libjacknet@3366 0c269be4-1314-0410-8aa9-9f06e86f4224
tags/1.9.8
sletz 16 years ago
parent
commit
2376d98b06
4 changed files with 42 additions and 14 deletions
  1. +23
    -7
      common/JackAudioAdapterInterface.h
  2. +14
    -5
      common/JackNetAPI.cpp
  3. +1
    -1
      common/JackNetAdapter.cpp
  4. +4
    -1
      common/jack/net.h

+ 23
- 7
common/JackAudioAdapterInterface.h View File

@@ -95,15 +95,31 @@ namespace Jack


public: public:


JackAudioAdapterInterface ( jack_nframes_t buffer_size, jack_nframes_t sample_rate ) :
JackAudioAdapterInterface ( jack_nframes_t host_buffer_size,
jack_nframes_t host_sample_rate) :
fCaptureChannels ( 0 ), fCaptureChannels ( 0 ),
fPlaybackChannels ( 0 ), fPlaybackChannels ( 0 ),
fHostBufferSize ( buffer_size ),
fHostSampleRate ( sample_rate ),
fAdaptedBufferSize ( buffer_size),
fAdaptedSampleRate ( sample_rate ),
fHostDLL ( buffer_size, sample_rate ),
fAdaptedDLL ( buffer_size, sample_rate ),
fHostBufferSize ( host_buffer_size ),
fHostSampleRate ( host_sample_rate ),
fAdaptedBufferSize ( host_buffer_size),
fAdaptedSampleRate ( host_sample_rate ),
fHostDLL ( host_buffer_size, host_sample_rate ),
fAdaptedDLL ( host_buffer_size, host_sample_rate ),
fQuality(0),
fRunning ( false )
{}
JackAudioAdapterInterface ( jack_nframes_t host_buffer_size,
jack_nframes_t host_sample_rate,
jack_nframes_t adapted_buffer_size,
jack_nframes_t adapted_sample_rate ) :
fCaptureChannels ( 0 ),
fPlaybackChannels ( 0 ),
fHostBufferSize ( host_buffer_size ),
fHostSampleRate ( host_sample_rate ),
fAdaptedBufferSize ( adapted_buffer_size),
fAdaptedSampleRate ( adapted_sample_rate ),
fHostDLL ( host_buffer_size, host_sample_rate ),
fAdaptedDLL ( adapted_buffer_size, adapted_sample_rate ),
fQuality(0), fQuality(0),
fRunning ( false ) fRunning ( false )
{} {}


+ 14
- 5
common/JackNetAPI.cpp View File

@@ -106,7 +106,10 @@ extern "C"
typedef struct _jack_adapter jack_adapter_t; typedef struct _jack_adapter jack_adapter_t;
SERVER_EXPORT jack_adapter_t* jack_create_adapter(jack_nframes_t buffer_size, jack_nframes_t sample_rate);
SERVER_EXPORT jack_adapter_t* jack_create_adapter(jack_nframes_t host_buffer_size,
jack_nframes_t host_sample_rate,
jack_nframes_t adapted_buffer_size,
jack_nframes_t adapted_sample_rate);
SERVER_EXPORT int jack_destroy_adapter(jack_adapter_t* adapter); SERVER_EXPORT int jack_destroy_adapter(jack_adapter_t* adapter);


SERVER_EXPORT int jack_adapter_push_input(jack_adapter_t* adapter, int channels, float** buffers); SERVER_EXPORT int jack_adapter_push_input(jack_adapter_t* adapter, int channels, float** buffers);
@@ -731,8 +734,11 @@ struct JackNetExtSlave : public JackNetSlaveInterface, public JackRunnableInterf
struct JackNetAdapter : public JackAudioAdapterInterface { struct JackNetAdapter : public JackAudioAdapterInterface {




JackNetAdapter(jack_nframes_t buffer_size, jack_nframes_t sample_rate)
:JackAudioAdapterInterface(buffer_size, sample_rate)
JackNetAdapter(jack_nframes_t host_buffer_size,
jack_nframes_t host_sample_rate,
jack_nframes_t adapted_buffer_size,
jack_nframes_t adapted_sample_rate)
:JackAudioAdapterInterface(host_buffer_size, host_sample_rate, adapted_buffer_size, adapted_sample_rate)
{ {
fCaptureRingBuffer = new JackResampler*[fCaptureChannels]; fCaptureRingBuffer = new JackResampler*[fCaptureChannels];
fPlaybackRingBuffer = new JackResampler*[fPlaybackChannels]; fPlaybackRingBuffer = new JackResampler*[fPlaybackChannels];
@@ -962,9 +968,12 @@ SERVER_EXPORT int jack_net_master_send(jack_net_master_t* net, int audio_output,


// Adapter API // Adapter API


SERVER_EXPORT jack_adapter_t* jack_create_adapter(jack_nframes_t buffer_size, jack_nframes_t sample_rate)
SERVER_EXPORT jack_adapter_t* jack_create_adapter(jack_nframes_t host_buffer_size,
jack_nframes_t host_sample_rate,
jack_nframes_t adapted_buffer_size,
jack_nframes_t adapted_sample_rate)
{ {
return (jack_adapter_t*)new JackNetAdapter(buffer_size, sample_rate);
return (jack_adapter_t*)new JackNetAdapter(host_buffer_size, host_sample_rate, adapted_buffer_size, adapted_sample_rate);
} }


SERVER_EXPORT int jack_destroy_adapter(jack_adapter_t* adapter) SERVER_EXPORT int jack_destroy_adapter(jack_adapter_t* adapter)


+ 1
- 1
common/JackNetAdapter.cpp View File

@@ -26,7 +26,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
namespace Jack namespace Jack
{ {
JackNetAdapter::JackNetAdapter ( jack_client_t* jack_client, jack_nframes_t buffer_size, jack_nframes_t sample_rate, const JSList* params ) JackNetAdapter::JackNetAdapter ( jack_client_t* jack_client, jack_nframes_t buffer_size, jack_nframes_t sample_rate, const JSList* params )
: JackAudioAdapterInterface ( buffer_size, sample_rate ), JackNetSlaveInterface(), fThread ( this )
: JackAudioAdapterInterface ( buffer_size, sample_rate), JackNetSlaveInterface(), fThread ( this )
{ {
jack_log ( "JackNetAdapter::JackNetAdapter" ); jack_log ( "JackNetAdapter::JackNetAdapter" );




+ 4
- 1
common/jack/net.h View File

@@ -255,7 +255,10 @@ typedef struct _jack_adapter jack_adapter_t;
* *
* @return 0 on success, otherwise a non-zero error code * @return 0 on success, otherwise a non-zero error code
*/ */
jack_adapter_t* jack_create_adapter(jack_nframes_t buffer_size, jack_nframes_t sample_rate);
jack_adapter_t* jack_create_adapter(jack_nframes_t host_buffer_size,
jack_nframes_t host_sample_rate,
jack_nframes_t adapted_buffer_size,
jack_nframes_t adapted_sample_rate);


/** /**
* Destroy an adapter. * Destroy an adapter.


Loading…
Cancel
Save