private void compute_pcm_samples(Obuffer buffer)
{
switch (actual_write_pos)
{
case 0:
compute_pcm_samples0(buffer);
break;
case 1:
compute_pcm_samples1(buffer);
break;
case 2:
compute_pcm_samples2(buffer);
break;
case 3:
compute_pcm_samples3(buffer);
break;
case 4:
compute_pcm_samples4(buffer);
break;
case 5:
compute_pcm_samples5(buffer);
break;
case 6:
compute_pcm_samples6(buffer);
break;
case 7:
compute_pcm_samples7(buffer);
break;
case 8:
compute_pcm_samples8(buffer);
break;
case 9:
compute_pcm_samples9(buffer);
break;
case 10:
compute_pcm_samples10(buffer);
break;
case 11:
compute_pcm_samples11(buffer);
break;
case 12:
compute_pcm_samples12(buffer);
break;
case 13:
compute_pcm_samples13(buffer);
break;
case 14:
compute_pcm_samples14(buffer);
break;
case 15:
compute_pcm_samples15(buffer);
break;
}
if (buffer != null)
{
buffer.appendSamples(channel, _tmpOut);
}
/*
// MDM: I was considering putting in quality control for
// low-spec CPUs, but the performance gain (about 10-15%)
// did not justify the considerable drop in audio quality.
switch (inc)
{
case 16:
buffer.appendSamples(channel, tmpOut);
break;
case 32:
for (int i=0; i<16; i++)
{
buffer.append(channel, (short)tmpOut[i]);
buffer.append(channel, (short)tmpOut[i]);
}
break;
case 64:
for (int i=0; i<8; i++)
{
buffer.append(channel, (short)tmpOut[i]);
buffer.append(channel, (short)tmpOut[i]);
buffer.append(channel, (short)tmpOut[i]);
buffer.append(channel, (short)tmpOut[i]);
}
break;
}*/
}