handle 2ch floating point PCM data (#150)

separate stereo channels when using PA_SAMPLE_FLOAT32LE
This commit is contained in:
mbellew
2019-01-16 20:07:30 +00:00
committed by GitHub
parent 575bbb8982
commit 5b25b889a0
3 changed files with 27 additions and 1 deletions

View File

@ -138,6 +138,31 @@ void PCM::addPCMfloat(const float *PCMdata, int samples)
getPCM(vdataR,512,1,1,0,0);
}
void PCM::addPCMfloat_2ch(const float *PCMdata, int samples)
{
int i,j;
for(i=0;i<samples;i+=2)
{
j=(i/2)+start;
PCMd[0][j%maxsamples] = PCMdata[i];
PCMd[1][j%maxsamples] = PCMdata[i+1];
}
start+=samples/2;
start=start%maxsamples;
newsamples+=samples/2;
if (newsamples>maxsamples)
newsamples=maxsamples;
numsamples = getPCMnew(pcmdataR,1,0,waveSmoothing,0,0);
getPCMnew(pcmdataL,0,0,waveSmoothing,0,1);
getPCM(vdataL,512,0,1,0,0);
getPCM(vdataR,512,1,1,0,0);
}
void PCM::addPCM16Data(const short* pcm_data, short samples) {
int i, j;