Remove use of try/catch during internal client loading, set default nperiod to 2...
[jack2.git] / example-clients / monitor_client.c
blob0a89b17ca363b07bdf64d269f4edae16aded9825
1 /*
2 This program is free software; you can redistribute it and/or modify
3 it under the terms of the GNU General Public License as published by
4 the Free Software Foundation; either version 2 of the License, or
5 (at your option) any later version.
7 This program is distributed in the hope that it will be useful,
8 but WITHOUT ANY WARRANTY; without even the implied warranty of
9 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 GNU General Public License for more details.
12 You should have received a copy of the GNU General Public License
13 along with this program; if not, write to the Free Software
14 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
17 #include <stdio.h>
18 #include <unistd.h>
19 #include <stdlib.h>
20 #include <string.h>
22 #include <jack/jack.h>
24 #define TRUE 1
25 #define FALSE 0
27 int
28 main (int argc, char *argv[])
30 jack_client_t *client;
31 char *my_name = strrchr(argv[0], '/');
33 if (my_name == 0) {
34 my_name = argv[0];
35 } else {
36 my_name ++;
39 if (argc != 2) {
40 fprintf (stderr, "Usage: %s client\n", my_name);
41 return 1;
44 if ((client = jack_client_open ("input monitoring", JackNullOption, NULL)) == 0) {
45 fprintf (stderr, "jack server not running?\n");
46 return 1;
49 if (jack_port_request_monitor_by_name (client, argv[1], TRUE)) {
50 fprintf (stderr, "could not enable monitoring for %s\n", argv[1]);
51 jack_client_close (client);
52 return 1;
54 sleep (30);
55 if (jack_port_request_monitor_by_name (client, argv[1], FALSE)) {
56 fprintf (stderr, "could not disable monitoring for %s\n", argv[1]);
58 jack_client_close (client);
59 exit (0);