((double)sp->sample_rate * freq_table[note]); 
((double)sp->sample_rate * get_note_freq(sp, note)); 
void resamp_cache_refer_off(int ch, int note, int32 sample_end){    int32 sample_start, len;    struct cache_hash *p;    Sample *sp;    p = channel_note_table[ch].cache[note];    if(p == NULL)	return;    sp = p->sp;    if(sp->sample_rate == play_mode->rate &&       sp->root_freq == freq_table[sp->note_to_use])	return;    sample_start = channel_note_table[ch].on[note];    len = sample_end - sample_start;    if(len < 0)    {	channel_note_table[ch].cache[note] = NULL;	return;    }    if(!(sp->modes & MODES_LOOPING))    {	double a;	int32 slen;	a = ((double)sp->root_freq * play_mode->rate) /	    ((double)sp->sample_rate * freq_table[note]);	slen = (int32)((sp->data_length >> FRACTION_BITS) * a);	if(len > slen)	    len = slen;    }    p->cnt += len;    channel_note_table[ch].cache[note] = NULL;}
4357	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4357/c280117e182e53ac14c4642e2a213d16de9f2dec/recache.c/clean/timidity/recache.c