if(pb < 0) { 
if(pb < 0) { 
static int32 update_vibrato(Voice *vp, int sign){  int32 depth;  int phase, pb;  double a;  if(vp->vibrato_delay > 0)  {      vp->vibrato_delay -= vp->vibrato_control_ratio;      if(vp->vibrato_delay > 0)	  return vp->sample_increment;  }  if (vp->vibrato_phase++ >= 2 * VIBRATO_SAMPLE_INCREMENTS - 1)    vp->vibrato_phase = 0;  phase = vib_phase_to_inc_ptr(vp->vibrato_phase);  if (vp->vibrato_sample_increment[phase])    {      if (sign)	return -vp->vibrato_sample_increment[phase];      else	return vp->vibrato_sample_increment[phase];    }  /* Need to compute this sample increment. */  depth = vp->vibrato_depth;  if(depth < vp->modulation_wheel)      depth = vp->modulation_wheel;  depth <<= 7;  if (vp->vibrato_sweep && !vp->modulation_wheel)    {      /* Need to update sweep */      vp->vibrato_sweep_position += vp->vibrato_sweep;      if (vp->vibrato_sweep_position >= (1 << SWEEP_SHIFT))	vp->vibrato_sweep=0;      else	{	  /* Adjust depth */	  depth *= vp->vibrato_sweep_position;	  depth >>= SWEEP_SHIFT;	}    }  if(vp->sample->inst_type == INST_SF2) {  pb = (int)((lookup_triangular(vp->vibrato_phase *			(SINE_CYCLE_LENGTH / (2 * VIBRATO_SAMPLE_INCREMENTS)))	    * (double)(depth) * VIBRATO_AMPLITUDE_TUNING));  } else {  pb = (int)((lookup_sine(vp->vibrato_phase *			(SINE_CYCLE_LENGTH / (2 * VIBRATO_SAMPLE_INCREMENTS)))	    * (double)(depth) * VIBRATO_AMPLITUDE_TUNING));  }  a = TIM_FSCALE(((double)(vp->sample->sample_rate) *		  (double)(vp->frequency)) /		 ((double)(vp->sample->root_freq) *		  (double)(play_mode->rate)),		 FRACTION_BITS);  if(pb < 0)  {      pb = -pb;      a /= bend_fine[(pb >> 5) & 0xFF] * bend_coarse[pb >> 13];  }  else      a *= bend_fine[(pb >> 5) & 0xFF] * bend_coarse[pb >> 13];  a += 0.5;  /* If the sweep's over, we can store the newly computed sample_increment */  if (!vp->vibrato_sweep || vp->modulation_wheel)    vp->vibrato_sample_increment[phase] = (int32) a;  if (sign)    a = -a; /* need to preserve the loop direction */  return (int32) a;}
4357	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4357/7c308a2fe92dbf66b2e18fbedd624d1022ba754f/resample.c/clean/timidity/resample.c