JACK-AUDIO-CONNECTION-KIT
|
This demonstrates the basic concepts for writing a client that runs within the JACK server process. More...
Data Structures | |
struct | port_pair_t |
Functions | |
int | inprocess (jack_nframes_t nframes, void *arg) |
int | jack_initialize (jack_client_t *client, const char *load_init) |
void | jack_finish (void *arg) |
This demonstrates the basic concepts for writing a client that runs within the JACK server process.
For the sake of example, a port_pair_t is allocated in jack_initialize(), passed to inprocess() as an argument, then freed in jack_finish().
int inprocess | ( | jack_nframes_t | nframes, |
void * | arg | ||
) |
Called in the realtime thread on every process cycle. The entry point name was passed to jack_set_process_callback() from jack_initialize(). Although this is an internal client, its process() interface is identical to simple_client.c.
References port_pair_t::input_port, jack_port_get_buffer(), and port_pair_t::output_port.
Referenced by jack_initialize().
void jack_finish | ( | void * | arg | ) |
This required entry point is called immediately before the client is unloaded, which could happen due to a call to jack_internal_client_unload(), or a nonzero return from either jack_initialize() or inprocess().
arg | the same parameter provided to inprocess(). |
int jack_initialize | ( | jack_client_t * | client, |
const char * | load_init | ||
) |
This required entry point is called after the client is loaded by jack_internal_client_load().
client | pointer to JACK client structure. |
load_init | character string passed to the load operation. |
References client, inprocess(), port_pair_t::input_port, jack_activate(), jack_connect(), JACK_DEFAULT_AUDIO_TYPE, jack_port_name(), jack_port_register(), jack_set_process_callback(), JackPortIsInput, JackPortIsOutput, and port_pair_t::output_port.