| @@ -180,10 +180,10 @@ void Jack_Freewheel_Callback(int starting, void *arg) | |||
| void Jack_Client_Registration_Callback(const char* name, int val, void *arg) | |||
| { | |||
| Log("Client registration callback name = %s has been successfully called with value %i. (msg from callback)\n", name, val); | |||
| if (val) | |||
| client_register++; | |||
| else | |||
| client_register--; | |||
| if (val) | |||
| client_register++; | |||
| else | |||
| client_register--; | |||
| } | |||
| void Jack_Port_Rename_Callback(jack_port_id_t port, const char* old_name, const char* new_name, void *arg) | |||
| @@ -245,7 +245,7 @@ void Jack_Port_Register(jack_port_id_t port, int mode, void *arg) | |||
| void Jack_Port_Connect(jack_port_id_t a, jack_port_id_t b, int connect, void* arg) | |||
| { | |||
| Log("PortConnect src = %ld dst = %ld onoff = %ld (msg from callback)\n", a, b, connect); | |||
| Log("PortConnect src = %ld dst = %ld onoff = %ld (msg from callback)\n", a, b, connect); | |||
| } | |||
| int Jack_Sync_Callback(jack_transport_state_t state, jack_position_t *pos, void *arg) | |||
| @@ -489,14 +489,14 @@ int process4(jack_nframes_t nframes, void *arg) | |||
| int process5(jack_nframes_t nframes, void *arg) | |||
| { | |||
| jack_client_t* client = (jack_client_t*) arg; | |||
| jack_client_t* client = (jack_client_t*) arg; | |||
| static jack_nframes_t first_current_frames; | |||
| static jack_time_t first_current_usecs; | |||
| static jack_time_t first_next_usecs; | |||
| static float first_period_usecs; | |||
| static int res1 = jack_get_cycle_times(client, &first_current_frames, &first_current_usecs, &first_next_usecs, &first_period_usecs); | |||
| static int res1 = jack_get_cycle_times(client, &first_current_frames, &first_current_usecs, &first_next_usecs, &first_period_usecs); | |||
| jack_nframes_t current_frames; | |||
| jack_time_t current_usecs; | |||
| jack_time_t next_usecs; | |||
| @@ -507,14 +507,14 @@ int process5(jack_nframes_t nframes, void *arg) | |||
| printf("!!! ERROR !!! jack_get_cycle_times fails...\n"); | |||
| return 0; | |||
| } | |||
| Log("calling process5 callback : jack_get_cycle_times delta current_frames = %ld delta current_usecs = %ld delta next_usecs = %ld period_usecs = %f\n", | |||
| current_frames - first_current_frames, current_usecs - first_current_usecs, next_usecs - first_next_usecs, period_usecs); | |||
| Log("calling process5 callback : jack_get_cycle_times delta current_frames = %ld delta current_usecs = %ld delta next_usecs = %ld period_usecs = %f\n", | |||
| current_frames - first_current_frames, current_usecs - first_current_usecs, next_usecs - first_next_usecs, period_usecs); | |||
| first_current_frames = current_frames; | |||
| first_current_usecs = current_usecs; | |||
| first_next_usecs = next_usecs; | |||
| return 0; | |||
| return 0; | |||
| } | |||
| static void display_transport_state() | |||
| @@ -558,7 +558,7 @@ int main (int argc, char *argv[]) | |||
| const char **inports; // array of PHY input/output | |||
| const char **outports; // array of PHY input/outputs | |||
| const char *server_name = NULL; | |||
| const char **connexions1; | |||
| const char **connexions1; | |||
| const char **connexions2; | |||
| jack_status_t status; | |||
| char portname[128] = "port"; | |||
| @@ -573,7 +573,7 @@ int main (int argc, char *argv[]) | |||
| const char *options = "kRnqvt:"; | |||
| float ratio; // for speed calculation in freewheel mode | |||
| jack_options_t jack_options = JackNullOption; | |||
| struct option long_options[] = { | |||
| struct option long_options[] = { | |||
| {"realtime", 0, 0, 'R'}, | |||
| {"non-realtime", 0, 0, 'n'}, | |||
| {"time", 0, 0, 't'}, | |||
| @@ -654,7 +654,7 @@ int main (int argc, char *argv[]) | |||
| * Register a client... | |||
| * | |||
| */ | |||
| Log("Register a client using jack_client_open()...\n"); | |||
| Log("Register a client using jack_client_open()...\n"); | |||
| client1 = jack_client_open(client_name1, jack_options, &status, server_name); | |||
| if (client1 == NULL) { | |||
| fprintf (stderr, "jack_client_open() failed, " | |||
| @@ -682,7 +682,7 @@ int main (int argc, char *argv[]) | |||
| if (intclient == 0 || status & JackFailure) { | |||
| printf("!!! ERROR !!! cannot load internal client \"inprocess\" intclient 0x%llX status 0x%2.0x !\n", (unsigned long long)intclient, status); | |||
| } else { | |||
| } else { | |||
| Log("\"inprocess\" server internal client loaded\n"); | |||
| @@ -730,7 +730,7 @@ int main (int argc, char *argv[]) | |||
| jack_client_close(client2); | |||
| } | |||
| /** | |||
| /** | |||
| * try to register another one with the same name using jack_client_open ==> since JackUseExactName is not used, an new client should be opened... | |||
| * | |||
| */ | |||
| @@ -738,11 +738,11 @@ int main (int argc, char *argv[]) | |||
| client2 = jack_client_open(client_name1, jack_options, &status, server_name); | |||
| if (client2 != NULL) { | |||
| Log ("valid : a second client with the same name can be registered (client automatic renaming)\n"); | |||
| jack_client_close(client2); | |||
| jack_client_close(client2); | |||
| } else { | |||
| printf("!!! ERROR !!! Jackd server automatic renaming feature does not work!\n"); | |||
| } | |||
| /** | |||
| * try to register a client with maximum possible client name size | |||
| * | |||
| @@ -758,7 +758,7 @@ int main (int argc, char *argv[]) | |||
| client2 = jack_client_open(client_name3, jack_options, &status, server_name); | |||
| if (client2 != NULL) { | |||
| Log ("valid : a client with maximum possible client name size can be opened\n"); | |||
| jack_client_close(client2); | |||
| jack_client_close(client2); | |||
| } else { | |||
| printf("!!! ERROR !!! opening a client with maximum possible client name size does not work!\n"); | |||
| } | |||
| @@ -834,9 +834,9 @@ int main (int argc, char *argv[]) | |||
| printf("Error when calling jack_set_port_connect_callback() !\n"); | |||
| } | |||
| if (jack_set_client_registration_callback(client1, Jack_Client_Registration_Callback, 0) != 0) { | |||
| printf("Error when calling jack_set_client_registration_callback() !\n"); | |||
| } | |||
| if (jack_set_client_registration_callback(client1, Jack_Client_Registration_Callback, 0) != 0) { | |||
| printf("Error when calling jack_set_client_registration_callback() !\n"); | |||
| } | |||
| jack_set_error_function(Jack_Error_Callback); | |||
| @@ -884,9 +884,9 @@ int main (int argc, char *argv[]) | |||
| */ | |||
| if (strcmp(jack_port_type(output_port1), JACK_DEFAULT_AUDIO_TYPE) != 0) { | |||
| printf("!!! ERROR !!! jack_port_type returns an incorrect value!\n"); | |||
| } else { | |||
| Log("Checking jack_port_type()... ok.\n"); | |||
| } | |||
| } else { | |||
| Log("Checking jack_port_type()... ok.\n"); | |||
| } | |||
| /** | |||
| * Try to register another port with the same name... | |||
| @@ -932,7 +932,7 @@ int main (int argc, char *argv[]) | |||
| } else { | |||
| printf("error : port_set_name function can't be tested...\n"); | |||
| } | |||
| /** | |||
| * Verify if a port can be registered with maximum port name size (that is "short name") | |||
| * | |||
| @@ -948,10 +948,10 @@ int main (int argc, char *argv[]) | |||
| jack_port_t * test_max_port = jack_port_register(client1, port_name3, | |||
| JACK_DEFAULT_AUDIO_TYPE, | |||
| JackPortIsOutput, 0); | |||
| if (test_max_port != NULL) { | |||
| Log ("valid : a port with maximum possible port name size can be registered\n"); | |||
| jack_port_unregister(client1, test_max_port); | |||
| jack_port_unregister(client1, test_max_port); | |||
| } else { | |||
| printf("!!! ERROR !!! registering a port with maximum possible port name size does not work!\n"); | |||
| } | |||
| @@ -1031,7 +1031,7 @@ int main (int argc, char *argv[]) | |||
| jack_set_freewheel(client1, 0); | |||
| jack_sleep(7 * 1000); | |||
| if (jack_is_realtime(client1) == 1) { | |||
| if (jack_is_realtime(client1) == 1) { | |||
| } else { | |||
| printf("\n!!! ERROR !!! freewheel mode fail to reactivate RT mode when exiting !\n"); | |||
| t_error = 1; | |||
| @@ -1316,7 +1316,7 @@ int main (int argc, char *argv[]) | |||
| } | |||
| a++; | |||
| } | |||
| jack_sleep(1 * 1000); // To hope all port registration and reorder callback have been received... | |||
| // Check port registration callback again | |||
| @@ -1357,14 +1357,14 @@ int main (int argc, char *argv[]) | |||
| if (client_register == 0) { | |||
| printf("!!! ERROR !!! Client registration callback not called for an opened client !\n"); | |||
| } | |||
| // Check client registration callback after jack_client_close | |||
| jack_client_close(client2); | |||
| jack_sleep(2000); | |||
| if (client_register == 1) { | |||
| printf("!!! ERROR !!! Client registration callback not called for a closed client!\n"); | |||
| } | |||
| // Open client2 again... | |||
| client2 = jack_client_new(client_name2); | |||
| @@ -1515,7 +1515,7 @@ int main (int argc, char *argv[]) | |||
| printf("!!! ERROR !!! while checking jack_port_get_connections() Vs jack_port_get_all_connections() on PHY port...\n"); | |||
| } | |||
| if (jack_disconnect(client1, jack_port_name(output_port1), jack_port_name(input_port1)) != 0) { | |||
| if (jack_disconnect(client1, jack_port_name(output_port1), jack_port_name(input_port1)) != 0) { | |||
| printf("!!! ERROR !!! while client1 intenting to disconnect ports...\n"); | |||
| } | |||
| if (jack_disconnect(client1, jack_port_name(output_port2), jack_port_name(input_port1)) != 0) { | |||
| @@ -1770,7 +1770,7 @@ int main (int argc, char *argv[]) | |||
| outports = jack_get_ports(client1, NULL, NULL, JackPortIsPhysical | JackPortIsOutput); | |||
| if (inports && outports && inports[0] != NULL && outports[0] != NULL) { | |||
| output_ext_latency = jack_port_get_latency (jack_port_by_name(client1, inports[0])); // from client to out driver (which has "inputs" ports..) | |||
| input_ext_latency = jack_port_get_latency (jack_port_by_name(client1, outports[0])); // from in driver (which has "output" ports..) to client | |||
| input_ext_latency = jack_port_get_latency (jack_port_by_name(client1, outports[0])); // from in driver (which has "output" ports..) to client | |||
| if (output_ext_latency != jack_port_get_total_latency(client1, jack_port_by_name(client1, inports[0]))) { | |||
| t_error = 1; | |||
| printf("!!! ERROR !!! get_latency & get_all_latency for a PHY device (unconnected) didn't return the same value !\n"); | |||
| @@ -1809,10 +1809,10 @@ int main (int argc, char *argv[]) | |||
| } | |||
| jack_port_disconnect(client1, output_port1); | |||
| jack_port_disconnect(client1, output_port2); | |||
| jack_port_disconnect(client1, input_port1); | |||
| jack_port_disconnect(client1, input_port2); | |||
| Log("Checking a parallel model with 2 clients...\n"); | |||
| jack_port_disconnect(client1, output_port2); | |||
| jack_port_disconnect(client1, input_port1); | |||
| jack_port_disconnect(client1, input_port2); | |||
| Log("Checking a parallel model with 2 clients...\n"); | |||
| jack_connect(client2, outports[0], jack_port_name(input_port1)); | |||
| jack_connect(client2, outports[0], jack_port_name(input_port2)); | |||
| jack_connect(client2, jack_port_name(output_port1), inports[0]); | |||
| @@ -1847,7 +1847,7 @@ int main (int argc, char *argv[]) | |||
| jack_port_disconnect(client1, output_port1); | |||
| jack_port_disconnect(client1, output_port2); | |||
| jack_sleep(1000); | |||
| jack_sleep(1000); | |||
| jack_free(inports); | |||
| jack_free(outports); | |||
| @@ -1858,7 +1858,7 @@ int main (int argc, char *argv[]) | |||
| * Check a transport start with a "slow" client, simulating a delay around 1 sec before becoming ready. | |||
| * | |||
| */ | |||
| Log("-----------------------------------------------------------\n"); | |||
| Log("-----------------------------------------------------------\n"); | |||
| Log("---------------------------TRANSPORT-----------------------\n"); | |||
| Log("-----------------------------------------------------------\n"); | |||
| @@ -2044,49 +2044,49 @@ int main (int argc, char *argv[]) | |||
| time_before_exit--; | |||
| } | |||
| if (jack_deactivate(client2) != 0) { | |||
| if (jack_deactivate(client2) != 0) { | |||
| printf("!!! ERROR !!! jack_deactivate does not return 0 for client2 !\n"); | |||
| } | |||
| if (jack_deactivate(client1) != 0) { | |||
| printf("!!! ERROR !!! jack_deactivate does not return 0 for client1 !\n"); | |||
| } | |||
| /** | |||
| /** | |||
| * Checking jack_frame_time. | |||
| */ | |||
| Log("Testing jack_frame_time...\n"); | |||
| jack_set_process_callback(client1, process4, client1); | |||
| jack_activate(client1); | |||
| jack_sleep(2 * 1000); | |||
| Log("Testing jack_frame_time...\n"); | |||
| jack_set_process_callback(client1, process4, client1); | |||
| jack_activate(client1); | |||
| jack_sleep(2 * 1000); | |||
| /** | |||
| * Checking jack_get_cycle_times. | |||
| */ | |||
| Log("Testing jack_get_cycle_times...\n"); | |||
| jack_deactivate(client1); | |||
| jack_set_process_callback(client1, process5, client1); | |||
| jack_activate(client1); | |||
| jack_sleep(3 * 1000); | |||
| jack_set_process_callback(client1, process5, client1); | |||
| jack_activate(client1); | |||
| jack_sleep(3 * 1000); | |||
| /** | |||
| /** | |||
| * Checking alternate thread model | |||
| */ | |||
| Log("Testing alternate thread model...\n"); | |||
| jack_deactivate(client1); | |||
| jack_set_process_callback(client1, NULL, NULL); // remove callback | |||
| jack_set_process_thread(client1, jack_thread, client1); | |||
| jack_activate(client1); | |||
| jack_sleep(2 * 1000); | |||
| /** | |||
| Log("Testing alternate thread model...\n"); | |||
| jack_deactivate(client1); | |||
| jack_set_process_callback(client1, NULL, NULL); // remove callback | |||
| jack_set_process_thread(client1, jack_thread, client1); | |||
| jack_activate(client1); | |||
| jack_sleep(2 * 1000); | |||
| /** | |||
| * Checking callback exiting : when the return code is != 0, the client is desactivated. | |||
| */ | |||
| Log("Testing callback exiting...\n"); | |||
| jack_deactivate(client1); | |||
| jack_set_process_thread(client1, NULL, NULL); // remove thread callback | |||
| jack_set_process_callback(client1, process3, 0); | |||
| jack_activate(client1); | |||
| jack_sleep(3 * 1000); | |||
| Log("Testing callback exiting...\n"); | |||
| jack_deactivate(client1); | |||
| jack_set_process_thread(client1, NULL, NULL); // remove thread callback | |||
| jack_set_process_callback(client1, process3, 0); | |||
| jack_activate(client1); | |||
| jack_sleep(3 * 1000); | |||
| /** | |||
| *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* | |||