2
Copyright (C) 2003 Robert Ham <rah@bash.sh>
4
This program is free software; you can redistribute it and/or modify
5
it under the terms of the GNU General Public License as published by
6
the Free Software Foundation; either version 2 of the License, or
7
(at your option) any later version.
9
This program is distributed in the hope that it will be useful,
10
but WITHOUT ANY WARRANTY; without even the implied warranty of
11
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
GNU General Public License for more details.
14
You should have received a copy of the GNU General Public License
15
along with this program; if not, write to the Free Software
16
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20
#ifndef __JACK_NET_DRIVER_H__
21
#define __JACK_NET_DRIVER_H__
25
#include <jack/types.h>
26
#include <jack/driver.h>
27
#include <jack/jack.h>
28
#include <jack/transport.h>
30
#include <netinet/in.h>
31
#include <samplerate.h>
33
typedef struct _net_driver net_driver_t;
39
jack_nframes_t net_period_up;
40
jack_nframes_t net_period_down;
42
jack_nframes_t sample_rate;
43
jack_nframes_t bitdepth;
44
jack_nframes_t period_size;
46
unsigned int listen_port;
48
unsigned int capture_channels;
49
unsigned int playback_channels;
50
unsigned int capture_channels_audio;
51
unsigned int playback_channels_audio;
52
unsigned int capture_channels_midi;
53
unsigned int playback_channels_midi;
55
JSList *capture_ports;
56
JSList *playback_ports;
57
JSList *playback_srcs;
60
jack_client_t *client;
65
struct sockaddr_in syncsource_address;
71
unsigned int handle_transport_sync;
74
unsigned int *pkt_buf;
75
unsigned int rx_bufsize;
76
//unsigned int tx_bufsize;
80
jack_nframes_t expected_framecnt;
81
int expected_framecnt_valid;
82
unsigned int num_lost_packets;
83
jack_time_t next_deadline;
84
int next_deadline_valid;
85
int packet_data_valid;
91
#endif /* __JACK_NET_DRIVER_H__ */