Browse Source

make -dnet report xruns.

git-svn-id: svn+ssh://jackaudio.org/trunk/jack@3709 0c269be4-1314-0410-8aa9-9f06e86f4224
tags/0.117.0
torben 15 years ago
parent
commit
8fe3be703c
3 changed files with 14 additions and 7 deletions
  1. +5
    -1
      drivers/netjack/net_driver.c
  2. +8
    -3
      drivers/netjack/netjack.c
  3. +1
    -3
      drivers/netjack/netjack.h

+ 5
- 1
drivers/netjack/net_driver.c View File

@@ -59,7 +59,10 @@ net_driver_wait (net_driver_t *driver, int extra_fd, int *status, float *delayed
{
netjack_driver_state_t *netj = &( driver->netj );

netjack_wait( netj );
if( netjack_wait( netj ) ) {
driver->engine->delay( driver->engine, 0 );
}

driver->last_wait_ust = jack_get_microseconds ();
driver->engine->transport_cycle_start (driver->engine, driver->last_wait_ust);
@@ -200,6 +203,7 @@ net_driver_read (net_driver_t* driver, jack_nframes_t nframes)
}

render_payload_to_jack_ports (netj->bitdepth, packet_bufX, netj->net_period_down, netj->capture_ports, netj->capture_srcs, nframes, netj->dont_htonl_floats );
packet_cache_release_packet(global_packcache, netj->expected_framecnt );

return 0;
}


+ 8
- 3
drivers/netjack/netjack.c View File

@@ -87,7 +87,7 @@ net_driver_sync_cb(jack_transport_state_t state, jack_position_t *pos, void *dat
return retval;
}

void netjack_wait( netjack_driver_state_t *netj )
int netjack_wait( netjack_driver_state_t *netj )
{
int we_have_the_expected_frame = 0;
jack_nframes_t next_frame_avail;
@@ -136,8 +136,8 @@ void netjack_wait( netjack_driver_state_t *netj )
// it works... so...
netj->running_free = 0;

if( !we_have_the_expected_frame )
jack_error( "netxrun... %d", netj->expected_framecnt );
//if( !we_have_the_expected_frame )
// jack_error( "netxrun... %d", netj->expected_framecnt );

if( we_have_the_expected_frame ) {
netj->time_to_deadline = netj->next_deadline - jack_get_time() - netj->period_usecs;
@@ -283,6 +283,11 @@ void netjack_wait( netjack_driver_state_t *netj )
else {
netj->num_lost_packets = 0;
}

if( !netj->packet_data_valid && !netj->running_free )
return 1;

return 0;
}

void netjack_send_silence( netjack_driver_state_t *netj, int syncstate )


+ 1
- 3
drivers/netjack/netjack.h View File

@@ -37,8 +37,6 @@ extern "C"
{
#endif

#define CELT_MODE 1000
#define MASTER_FREEWHEELS 0x80000000

typedef struct _netjack_driver_state netjack_driver_state_t;

@@ -111,7 +109,7 @@ struct _netjack_driver_state {
unsigned int resample_factor_up;
};

void netjack_wait( netjack_driver_state_t *netj );
int netjack_wait( netjack_driver_state_t *netj );
void netjack_send_silence( netjack_driver_state_t *netj, int syncstate );
void netjack_read( netjack_driver_state_t *netj, jack_nframes_t nframes ) ;
void netjack_write( netjack_driver_state_t *netj, jack_nframes_t nframes, int syncstate );


Loading…
Cancel
Save