Quantcast
Channel: naudio Work Item Rss Feed
Viewing all articles
Browse latest Browse all 738

Commented Issue: ASIOSampleConvertor bug [16361]

$
0
0
Working with multichannel output in NAudio I noticed a bug in the ASIOSampleConvertor: the ConvertorFloatToIntGeneric is using a float pointer instead of a int pointer as it should.

Corrected code:

public static void ConvertorFloatToIntGeneric(IntPtr inputInterleavedBuffer, IntPtr[] asioOutputBuffers, int nbChannels, int nbSamples)
{
unsafe
{
float* inputSamples = (float*)inputInterleavedBuffer;
int*[] samples = new int*[nbChannels]; // <- here stood float*
for (int i = 0; i < nbChannels; i++)
{
samples[i] = (int*)asioOutputBuffers[i]; // <- here stood float*
}

for (int i = 0; i < nbSamples; i++)
{
for (int j = 0; j < nbChannels; j++)
{
*samples[j]++ = clampToInt(*inputSamples++);
}
}
}
}
Comments: hi jonahoffmann, I've checked in your fix. Can you test it on your system and let me know if the issue is resoveld now (my ASIO devices are 2 channels only so makes it hard for me to test this stuff)

Viewing all articles
Browse latest Browse all 738

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>