From f816e5d832b3c02f397a7ae59ded4facf9c091fc Mon Sep 17 00:00:00 2001 From: sletz Date: Thu, 6 Mar 2008 11:25:26 +0000 Subject: [PATCH] Add code in netsource jack_initialize(2) git-svn-id: svn+ssh://jackaudio.org/trunk/jack@1101 0c269be4-1314-0410-8aa9-9f06e86f4224 --- drivers/netjack/net_source.c | 46 ++++++++++++++++++++++++++------ drivers/netjack/netjack_packet.h | 2 +- 2 files changed, 39 insertions(+), 9 deletions(-) diff --git a/drivers/netjack/net_source.c b/drivers/netjack/net_source.c index 9ac896c..14df841 100644 --- a/drivers/netjack/net_source.c +++ b/drivers/netjack/net_source.c @@ -433,17 +433,29 @@ jack_initialize (jack_client_t *int_client, const char *load_init) extern char *optarg; extern int optind, optopt; int errflg = 0; - int c; + int i,c; + + client = int_client; - jack_info("netsource: jack_initialize"); + jack_info("netsource: jack_initialize %s", load_init); +/* ret = sscanf(load_init, "%s", buffer); while (ret != 0 && ret != EOF) { argv[argc] = (char*)malloc(64); strcpy(argv[argc], buffer); ret = sscanf(load_init, "%s", buffer); +jack_info("netsource: jack_initialize %s %d",buffer, ret); argc++; } +*/ + argc = 4; + argv[0] = "-P"; + argv[1] = "2"; + argv[2] = "-C"; + argv[3] = "2"; + + jack_info("netsource: jack_initialize 0"); while ((c = getopt(argc, argv, ":n:p:s:C:P:l:r:f:b:")) != -1) { switch (c) { @@ -485,6 +497,8 @@ jack_initialize (jack_client_t *int_client, const char *load_init) errflg++; } } + + jack_info("netsource: jack_initialize 1"); //src_state = src_new(SRC_LINEAR, 1, NULL); @@ -495,6 +509,8 @@ jack_initialize (jack_client_t *int_client, const char *load_init) init_sockaddr_in((struct sockaddr_in *)&bindaddr, NULL, reply_port); bind(insockfd, &bindaddr, sizeof(bindaddr)); } + + jack_info("netsource: jack_initialize 2"); /* send a ping to the peer @@ -506,27 +522,41 @@ jack_initialize (jack_client_t *int_client, const char *load_init) /* tell the JACK server to call `process()' whenever there is work to be done. */ - jack_set_process_callback (int_client, process, 0); - jack_set_sync_callback (int_client, sync_cb, 0); + jack_set_process_callback (client, process, 0); + jack_set_sync_callback (client, sync_cb, 0); /* tell the JACK server to call `jack_shutdown()' if it ever shuts down, either entirely, or if it just decides to stop calling us. */ - jack_on_shutdown (int_client, jack_shutdown, 0); + jack_on_shutdown (client, jack_shutdown, 0); + + jack_info("netsource: jack_initialize 3"); /* display the current sample rate. */ - jack_info ("engine sample rate: %d", jack_get_sample_rate (int_client)); + jack_info ("engine sample rate: %d", jack_get_sample_rate (client)); + + jack_info("netsource: capture_channels %d, playback_channels %d", capture_channels ,playback_channels); alloc_ports(capture_channels, playback_channels); - jack_nframes_t net_period = (float) jack_get_buffer_size(int_client) / (float) factor; + jack_info("netsource: jack_initialize 4"); + + jack_nframes_t net_period = (float) jack_get_buffer_size(client) / (float) factor; int rx_bufsize = get_sample_size(bitdepth) * capture_channels * net_period + sizeof(jacknet_packet_header); global_packcache = packet_cache_new(latency + 5, rx_bufsize, 1400); + jack_info("netsource: jack_initialize 5"); + + /* + for (i = 0; i < argc; i++) { + free(argv[i]); + } + */ + /* tell the JACK server that we are ready to roll */ - if (jack_activate (int_client)) { + if (jack_activate (client)) { jack_info ("cannot activate client"); return -1; } diff --git a/drivers/netjack/netjack_packet.h b/drivers/netjack/netjack_packet.h index e9be23a..f088751 100644 --- a/drivers/netjack/netjack_packet.h +++ b/drivers/netjack/netjack_packet.h @@ -59,7 +59,7 @@ struct _jacknet_packet_header typedef union _int_float int_float_t; -union _int_float +union _int_float { uint32_t i; float f;