git-svn-id: svn+ssh://jackaudio.org/trunk/jack@3757 0c269be4-1314-0410-8aa9-9f06e86f4224tags/0.117.0
| @@ -387,7 +387,7 @@ driver_get_descriptor () | |||
| params = calloc (desc->nparams, sizeof (jack_driver_param_desc_t)); | |||
| i = 0; | |||
| strcpy (params[i].name, "inchannels"); | |||
| strcpy (params[i].name, "audio-ins"); | |||
| params[i].character = 'i'; | |||
| params[i].type = JackDriverParamUInt; | |||
| params[i].value.ui = 2U; | |||
| @@ -395,7 +395,7 @@ driver_get_descriptor () | |||
| strcpy (params[i].long_desc, params[i].short_desc); | |||
| i++; | |||
| strcpy (params[i].name, "outchannels"); | |||
| strcpy (params[i].name, "audio-outs"); | |||
| params[i].character = 'o'; | |||
| params[i].type = JackDriverParamUInt; | |||
| params[i].value.ui = 2U; | |||
| @@ -403,7 +403,7 @@ driver_get_descriptor () | |||
| strcpy (params[i].long_desc, params[i].short_desc); | |||
| i++; | |||
| strcpy (params[i].name, "midi inchannels"); | |||
| strcpy (params[i].name, "midi-ins"); | |||
| params[i].character = 'I'; | |||
| params[i].type = JackDriverParamUInt; | |||
| params[i].value.ui = 1U; | |||
| @@ -411,7 +411,7 @@ driver_get_descriptor () | |||
| strcpy (params[i].long_desc, params[i].short_desc); | |||
| i++; | |||
| strcpy (params[i].name, "midi outchannels"); | |||
| strcpy (params[i].name, "midi-outs"); | |||
| params[i].character = 'O'; | |||
| params[i].type = JackDriverParamUInt; | |||
| params[i].value.ui = 1U; | |||
| @@ -434,6 +434,15 @@ driver_get_descriptor () | |||
| strcpy (params[i].short_desc, "Frames per period"); | |||
| strcpy (params[i].long_desc, params[i].short_desc); | |||
| i++; | |||
| strcpy (params[i].name, "num-periods"); | |||
| params[i].character = 'n'; | |||
| params[i].type = JackDriverParamUInt; | |||
| params[i].value.ui = 5U; | |||
| strcpy (params[i].short_desc, | |||
| "Network latency setting in no. of periods"); | |||
| strcpy (params[i].long_desc, params[i].short_desc); | |||
| i++; | |||
| strcpy (params[i].name, "listen-port"); | |||
| params[i].character = 'l'; | |||
| @@ -449,7 +458,7 @@ driver_get_descriptor () | |||
| params[i].type = JackDriverParamUInt; | |||
| params[i].value.ui = 1U; | |||
| strcpy (params[i].short_desc, | |||
| "Factor for sample rate reduction"); | |||
| "Factor for sample rate reduction (deprecated)"); | |||
| strcpy (params[i].long_desc, params[i].short_desc); | |||
| i++; | |||
| @@ -458,7 +467,7 @@ driver_get_descriptor () | |||
| params[i].type = JackDriverParamUInt; | |||
| params[i].value.ui = 0U; | |||
| strcpy (params[i].short_desc, | |||
| "Factor for sample rate reduction on the upstream"); | |||
| "Factor for sample rate reduction on the upstream (deprecated)"); | |||
| strcpy (params[i].long_desc, params[i].short_desc); | |||
| i++; | |||
| @@ -467,7 +476,7 @@ driver_get_descriptor () | |||
| params[i].type = JackDriverParamUInt; | |||
| params[i].value.ui = 0U; | |||
| strcpy (params[i].short_desc, | |||
| "sets celt encoding and number of bytes per channel"); | |||
| "sets celt encoding and number of bytes per period per channel"); | |||
| strcpy (params[i].long_desc, params[i].short_desc); | |||
| i++; | |||
| @@ -496,16 +505,6 @@ driver_get_descriptor () | |||
| strcpy (params[i].short_desc, | |||
| "Whether to use Autoconfig, or just start."); | |||
| strcpy (params[i].long_desc, params[i].short_desc); | |||
| i++; | |||
| strcpy (params[i].name, "latency"); | |||
| params[i].character = 'L'; | |||
| params[i].type = JackDriverParamUInt; | |||
| params[i].value.ui = 5U; | |||
| strcpy (params[i].short_desc, | |||
| "Latency setting"); | |||
| strcpy (params[i].long_desc, params[i].short_desc); | |||
| i++; | |||
| strcpy (params[i].name, "redundancy"); | |||
| params[i].character = 'R'; | |||
| @@ -516,12 +515,12 @@ driver_get_descriptor () | |||
| strcpy (params[i].long_desc, params[i].short_desc); | |||
| i++; | |||
| strcpy (params[i].name, "no-htonl"); | |||
| params[i].character = 'H'; | |||
| strcpy (params[i].name, "native-endian"); | |||
| params[i].character = 'e'; | |||
| params[i].type = JackDriverParamUInt; | |||
| params[i].value.ui = 0U; | |||
| strcpy (params[i].short_desc, | |||
| "Dont convert samples to network byte order."); | |||
| "Don't convert samples to network byte order."); | |||
| strcpy (params[i].long_desc, params[i].short_desc); | |||
| i++; | |||
| @@ -644,7 +643,7 @@ driver_initialize (jack_client_t *client, const JSList * params) | |||
| use_autoconfig = param->value.ui; | |||
| break; | |||
| case 'L': | |||
| case 'n': | |||
| latency = param->value.ui; | |||
| break; | |||
| @@ -652,7 +651,7 @@ driver_initialize (jack_client_t *client, const JSList * params) | |||
| redundancy = param->value.ui; | |||
| break; | |||
| case 'H': | |||
| case 'e': | |||
| dont_htonl_floats = param->value.ui; | |||
| break; | |||
| case 'J': | |||
| @@ -520,23 +520,25 @@ fflush( stdout ); | |||
| void | |||
| printUsage () | |||
| { | |||
| fprintf (stderr, "usage: jack_netsource -h <host peer> [options]\n" | |||
| fprintf (stderr, "usage: jack_netsource [options]\n" | |||
| "\n" | |||
| " -n <jack name> - Reports a different name to jack\n" | |||
| " -s <server name> - The name of the local jack server\n" | |||
| " -h <host_peer> - Host name of the slave JACK\n" | |||
| " -p <port> - UDP port used by the slave JACK\n" | |||
| " -P <num channels> - Number of audio playback channels\n" | |||
| " -C <num channels> - Number of audio capture channels\n" | |||
| " -o <num channels> - Number of midi playback channels\n" | |||
| " -i <num channels> - Number of midi capture channels\n" | |||
| " -l <latency> - Network latency in number of NetJack frames\n" | |||
| " -r <reply port> - Local UDP port to use\n" | |||
| " -f <downsample ratio> - Downsample data in the wire by this factor\n" | |||
| " -h this help text\n" | |||
| " -H <slave host> - Host name of the slave JACK\n" | |||
| " -o <num channels> - Number of audio playback channels\n" | |||
| " -i <num channels> - Number of audio capture channels\n" | |||
| " -O <num channels> - Number of midi playback channels\n" | |||
| " -I <num channels> - Number of midi capture channels\n" | |||
| " -n <periods> - Network latency in JACK periods\n" | |||
| " -p <port> - UDP port that the slave is listening on\n" | |||
| " -r <reply port> - UDP port that we are listening on\n" | |||
| " -B <bind port> - reply port, for use in NAT environments\n" | |||
| " -b <bitdepth> - Set transport to use 16bit or 8bit\n" | |||
| " -c <bytes> - Use CELT encoding with <bytes> per period and channel\n" | |||
| " -m <mtu> - Assume this mtu for the link\n" | |||
| " -c <bytes> - Use Celt and encode <bytes> per channel and packet.\n" | |||
| " -R <N> - Send out packets N times.\n" | |||
| " -R <N> - Redundancy: send out packets N times.\n" | |||
| " -e - skip host-to-network endianness conversion\n" | |||
| " -N <jack name> - Reports a different name to jack\n" | |||
| " -s <server name> - The name of the local jack server\n" | |||
| "\n"); | |||
| } | |||
| @@ -578,80 +580,85 @@ main (int argc, char *argv[]) | |||
| sprintf(client_name, "netsource"); | |||
| sprintf(peer_ip, "localhost"); | |||
| while ((c = getopt (argc, argv, ":H:R:n:s:h:p:C:P:i:o:l:r:f:b:m:c:B:")) != -1) | |||
| while ((c = getopt (argc, argv, ":h:H:o:i:O:I:n:p:r:B:b:c:m:R:e:N:s:")) != -1) | |||
| { | |||
| switch (c) | |||
| { | |||
| case 'n': | |||
| free(client_name); | |||
| client_name = (char *) malloc (sizeof (char) * strlen (optarg)+1); | |||
| strcpy (client_name, optarg); | |||
| break; | |||
| case 's': | |||
| server_name = (char *) malloc (sizeof (char) * strlen (optarg)+1); | |||
| strcpy (server_name, optarg); | |||
| options |= JackServerName; | |||
| break; | |||
| case 'h': | |||
| free(peer_ip); | |||
| peer_ip = (char *) malloc (sizeof (char) * strlen (optarg)+1); | |||
| strcpy (peer_ip, optarg); | |||
| break; | |||
| case 'p': | |||
| peer_port = atoi (optarg); | |||
| break; | |||
| case 'P': | |||
| playback_channels_audio = atoi (optarg); | |||
| break; | |||
| case 'C': | |||
| capture_channels_audio = atoi (optarg); | |||
| break; | |||
| printUsage(); | |||
| exit (0); | |||
| break; | |||
| case 'H': | |||
| free(peer_ip); | |||
| peer_ip = (char *) malloc (sizeof (char) * strlen (optarg)+1); | |||
| strcpy (peer_ip, optarg); | |||
| break; | |||
| case 'o': | |||
| playback_channels_midi = atoi (optarg); | |||
| break; | |||
| playback_channels_audio = atoi (optarg); | |||
| break; | |||
| case 'i': | |||
| capture_channels_midi = atoi (optarg); | |||
| break; | |||
| case 'l': | |||
| latency = atoi (optarg); | |||
| break; | |||
| capture_channels_audio = atoi (optarg); | |||
| break; | |||
| case 'O': | |||
| playback_channels_midi = atoi (optarg); | |||
| break; | |||
| case 'I': | |||
| capture_channels_midi = atoi (optarg); | |||
| break; | |||
| case 'n': | |||
| latency = atoi (optarg); | |||
| break; | |||
| case 'p': | |||
| peer_port = atoi (optarg); | |||
| break; | |||
| case 'r': | |||
| reply_port = atoi (optarg); | |||
| break; | |||
| reply_port = atoi (optarg); | |||
| break; | |||
| case 'B': | |||
| bind_port = atoi (optarg); | |||
| break; | |||
| bind_port = atoi (optarg); | |||
| break; | |||
| case 'f': | |||
| factor = atoi (optarg); | |||
| break; | |||
| factor = atoi (optarg); | |||
| jack_info("This feature is deprecated and will be removed in future netjack versions. CELT offers a superiour way to conserve bandwidth"); | |||
| break; | |||
| case 'b': | |||
| bitdepth = atoi (optarg); | |||
| break; | |||
| bitdepth = atoi (optarg); | |||
| break; | |||
| case 'c': | |||
| #if HAVE_CELT | |||
| bitdepth = 1000; | |||
| factor = atoi (optarg); | |||
| bitdepth = 1000; | |||
| factor = atoi (optarg); | |||
| #else | |||
| printf( "not built with celt supprt\n" ); | |||
| exit(10); | |||
| printf( "not built with celt supprt\n" ); | |||
| exit(10); | |||
| #endif | |||
| break; | |||
| break; | |||
| case 'm': | |||
| mtu = atoi (optarg); | |||
| break; | |||
| mtu = atoi (optarg); | |||
| break; | |||
| case 'R': | |||
| redundancy = atoi (optarg); | |||
| break; | |||
| case 'H': | |||
| dont_htonl_floats = atoi (optarg); | |||
| break; | |||
| redundancy = atoi (optarg); | |||
| break; | |||
| case 'e': | |||
| dont_htonl_floats = 1; | |||
| break; | |||
| case 'N': | |||
| free(client_name); | |||
| client_name = (char *) malloc (sizeof (char) * strlen (optarg)+1); | |||
| strcpy (client_name, optarg); | |||
| break; | |||
| case 's': | |||
| server_name = (char *) malloc (sizeof (char) * strlen (optarg)+1); | |||
| strcpy (server_name, optarg); | |||
| options |= JackServerName; | |||
| break; | |||
| case ':': | |||
| fprintf (stderr, "Option -%c requires an operand\n", optopt); | |||
| errflg++; | |||
| break; | |||
| fprintf (stderr, "Option -%c requires an operand\n", optopt); | |||
| errflg++; | |||
| break; | |||
| case '?': | |||
| fprintf (stderr, "Unrecognized option: -%c\n", optopt); | |||
| errflg++; | |||
| fprintf (stderr, "Unrecognized option: -%c\n", optopt); | |||
| errflg++; | |||
| } | |||
| } | |||
| if (errflg) | |||