JACK-AUDIO-CONNECTION-KIT  0.124.1
Functions
the API for starting and controlling a JACK server

Functions

sigset_t jackctl_setup_signals (unsigned int flags)
void jackctl_wait_signals (sigset_t signals)
jackctl_server_tjackctl_server_create (bool(*on_device_acquire)(const char *device_name), void(*on_device_release)(const char *device_name))
void jackctl_server_destroy (jackctl_server_t *server)
bool jackctl_server_start (jackctl_server_t *server, jackctl_driver_t *driver)
bool jackctl_server_stop (jackctl_server_t *server)
const JSList * jackctl_server_get_drivers_list (jackctl_server_t *server)
const JSList * jackctl_server_get_parameters (jackctl_server_t *server)
const JSList * jackctl_server_get_internals_list (jackctl_server_t *server)
bool jackctl_server_load_internal (jackctl_server_t *server, jackctl_internal_t *internal)
bool jackctl_server_unload_internal (jackctl_server_t *server, jackctl_internal_t *internal)
bool jackctl_server_add_slave (jackctl_server_t *server, jackctl_driver_t *driver)
bool jackctl_server_remove_slave (jackctl_server_t *server, jackctl_driver_t *driver)
bool jackctl_server_switch_master (jackctl_server_t *server, jackctl_driver_t *driver)
const char * jackctl_driver_get_name (jackctl_driver_t *driver)
const JSList * jackctl_driver_get_parameters (jackctl_driver_t *driver)
const char * jackctl_internal_get_name (jackctl_internal_t *internal)
const JSList * jackctl_internal_get_parameters (jackctl_internal_t *internal)
const char * jackctl_parameter_get_name (jackctl_parameter_t *parameter)
const char * jackctl_parameter_get_short_description (jackctl_parameter_t *parameter)
const char * jackctl_parameter_get_long_description (jackctl_parameter_t *parameter)
jackctl_param_type_t jackctl_parameter_get_type (jackctl_parameter_t *parameter)
char jackctl_parameter_get_id (jackctl_parameter_t *parameter)
bool jackctl_parameter_is_set (jackctl_parameter_t *parameter)
bool jackctl_parameter_reset (jackctl_parameter_t *parameter)
union jackctl_parameter_value jackctl_parameter_get_value (jackctl_parameter_t *parameter)
bool jackctl_parameter_set_value (jackctl_parameter_t *parameter, const union jackctl_parameter_value *value_ptr)
union jackctl_parameter_value jackctl_parameter_get_default_value (jackctl_parameter_t *parameter)
bool jackctl_parameter_has_range_constraint (jackctl_parameter_t *parameter)
bool jackctl_parameter_has_enum_constraint (jackctl_parameter_t *parameter)
uint32_t jackctl_parameter_get_enum_constraints_count (jackctl_parameter_t *parameter)
union jackctl_parameter_value jackctl_parameter_get_enum_constraint_value (jackctl_parameter_t *parameter, uint32_t index)
const char * jackctl_parameter_get_enum_constraint_description (jackctl_parameter_t *parameter, uint32_t index)
void jackctl_parameter_get_range_constraint (jackctl_parameter_t *parameter, union jackctl_parameter_value *min_ptr, union jackctl_parameter_value *max_ptr)
bool jackctl_parameter_constraint_is_strict (jackctl_parameter_t *parameter)
bool jackctl_parameter_constraint_is_fake_value (jackctl_parameter_t *parameter)
void jack_error (const char *format,...)
void jack_info (const char *format,...)
void jack_log (const char *format,...)

Function Documentation

void jack_error ( const char *  format,
  ... 
)

Call this function to log an error message.

Parameters:
formatstring
void jack_info ( const char *  format,
  ... 
)

Call this function to log an information message.

Parameters:
formatstring
void jack_log ( const char *  format,
  ... 
)

Call this function to log an information message but only when verbose mode is enabled.

Parameters:
formatstring
const char* jackctl_driver_get_name ( jackctl_driver_t driver)

Call this function to get name of driver.

Parameters:
driverdriver object handle to get name of
Returns:
driver name. Must not be modified. Always same for same driver object.
const JSList* jackctl_driver_get_parameters ( jackctl_driver_t driver)

Call this function to get list of driver parameters. List node data pointers is a parameter object handle (jackctl_parameter_t).

Parameters:
driverdriver object handle to get parameters for
Returns:
Single linked list of parameter object handles. Must not be modified. Always same for same driver object.
const char* jackctl_internal_get_name ( jackctl_internal_t internal)

Call this function to get name of internal client.

Parameters:
internalinternal object handle to get name of
Returns:
internal name. Must not be modified. Always same for same internal object.
const JSList* jackctl_internal_get_parameters ( jackctl_internal_t internal)

Call this function to get list of internal parameters. List node data pointers is a parameter object handle (jackctl_parameter_t).

Parameters:
internalinternal object handle to get parameters for
Returns:
Single linked list of parameter object handles. Must not be modified. Always same for same internal object.

Call this function to check whether parameter has fake values, i.e. values have no user meaningful meaning and only value description is meaningful to user.

Parameters:
parameterparameter object handle to check
Returns:
whether parameter constraint is strict.

Call this function to check whether parameter constraint is strict, i.e. whether supplying non-matching value will not work for sure.

Parameters:
parameterparameter object handle to check
Returns:
whether parameter constraint is strict.

Call this function to get parameter default value.

Parameters:
parameterparameter object handle to get default value of
Returns:
parameter default value.
const char* jackctl_parameter_get_enum_constraint_description ( jackctl_parameter_t parameter,
uint32_t  index 
)

Call this function to get parameter enumeration value description.

Parameters:
parameterobject handle of parameter
indexindex of parameter enumeration value
Returns:
enumeration value description.

Call this function to get parameter enumeration value.

Parameters:
parameterobject handle of parameter
indexindex of parameter enumeration value
Returns:
enumeration value.

Call this function get how many enumeration values parameter has.

Parameters:
parameterobject handle of parameter
Returns:
number of enumeration values

Call this function to get parameter character.

Parameters:
parameterparameter object handle to get character of
Returns:
character.

Call this function to get parameter long description.

Parameters:
parameterparameter object handle to get long description of
Returns:
parameter long description. Must not be modified. Always same for same parameter object.
const char* jackctl_parameter_get_name ( jackctl_parameter_t parameter)

Call this function to get parameter name.

Parameters:
parameterparameter object handle to get name of
Returns:
parameter name. Must not be modified. Always same for same parameter object.

Call this function to get parameter range.

Parameters:
parameterobject handle of parameter
min_ptrpointer to variable receiving parameter minimum value
max_ptrpointer to variable receiving parameter maximum value

Call this function to get parameter short description.

Parameters:
parameterparameter object handle to get short description of
Returns:
parameter short description. Must not be modified. Always same for same parameter object.

Call this function to get parameter type.

Parameters:
parameterparameter object handle to get type of
Returns:
parameter type. Always same for same parameter object.

Call this function to get parameter value.

Parameters:
parameterparameter object handle to get value of
Returns:
parameter value.

Call this function check whether parameter has enumeration constraint.

Parameters:
parameterobject handle of parameter to check
Returns:
whether parameter has enumeration constraint.

Call this function check whether parameter has range constraint.

Parameters:
parameterobject handle of parameter to check
Returns:
whether parameter has range constraint.

Call this function to check whether parameter has been set, or its default value is being used.

Parameters:
parameterparameter object handle to check
Returns:
true - parameter is set, false - parameter is using default value.

Call this function to reset parameter to its default value.

Parameters:
parameterparameter object handle to reset value of
Returns:
success status: true - success, false - fail
bool jackctl_parameter_set_value ( jackctl_parameter_t parameter,
const union jackctl_parameter_value value_ptr 
)

Call this function to set parameter value.

Parameters:
parameterparameter object handle to get value of
value_ptrpointer to variable containing parameter value
Returns:
success status: true - success, false - fail
bool jackctl_server_add_slave ( jackctl_server_t server,
jackctl_driver_t driver 
)

Call this function to add a slave in the driver slave list.

Parameters:
serverserver object handle
driverdriver to add in the driver slave list.
Returns:
success status: true - success, false - fail
jackctl_server_t* jackctl_server_create ( bool(*)(const char *device_name)  on_device_acquire,
void(*)(const char *device_name)  on_device_release 
)

Call this function to create server object.

Parameters:
on_device_acquire- Optional callback to be called before device is acquired. If false is returned, device usage will fail
on_device_release- Optional callback to be called after device is released.
Returns:
server object handle, NULL if creation of server object failed. Successfully created server object must be destroyed with paired call to jackctl_server_destroy

Call this function to destroy server object.

Parameters:
serverserver object handle to destroy

Call this function to get list of available drivers. List node data pointers is a driver object handle (jackctl_driver_t).

Parameters:
serverserver object handle to get drivers for
Returns:
Single linked list of driver object handles. Must not be modified. Always same for same server object.

Call this function to get list of available internal clients. List node data pointers is a internal client object handle (jackctl_internal_t).

Parameters:
serverserver object handle to get internal clients for
Returns:
Single linked list of internal client object handles. Must not be modified. Always same for same server object.
const JSList* jackctl_server_get_parameters ( jackctl_server_t server)

Call this function to get list of server parameters. List node data pointers is a parameter object handle (jackctl_parameter_t).

Parameters:
serverserver object handle to get parameters for
Returns:
Single linked list of parameter object handles. Must not be modified. Always same for same server object.

Call this function to load one internal client.

Parameters:
serverserver object handle
internalinternal to use
Returns:
success status: true - success, false - fail

Call this function to remove a slave from the driver slave list.

Parameters:
serverserver object handle
driverdriver to remove from the driver slave list.
Returns:
success status: true - success, false - fail
bool jackctl_server_start ( jackctl_server_t server,
jackctl_driver_t driver 
)

Call this function to start JACK server

Parameters:
serverserver object handle
driverdriver to use
Returns:
success status: true - success, false - fail

Call this function to stop JACK server

Parameters:
serverserver object handle
Returns:
success status: true - success, false - fail

Call this function to switch master driver.

Parameters:
serverserver object handle
driverdriver to switch to
Returns:
success status: true - success, false - fail

Call this function to unload one internal client.

Parameters:
serverserver object handle
internalinternal to unload
Returns:
success status: true - success, false - fail
sigset_t jackctl_setup_signals ( unsigned int  flags)

Call this function to setup process signal handling. As a general rule, it is required for proper operation for the server object.

Parameters:
flagssignals setup flags, use 0 for none. Currently no flags are defined
Returns:
the configurated signal set.
void jackctl_wait_signals ( sigset_t  signals)

Call this function to wait on a signal set.

Parameters:
signalssignals set to wait on