ciao!
sono ancora qua con questo problema..
ho messo pBuffer come puntatore a char:
char* pBuffer = new char[32768];
il CopyMemory e' come prima:
CopyMemory( pBuffer + dwPosInBuffer, p_waveBuffer->GetBuffer(), 1024);
il resto sta cambiando..:
signed short int aaa[16384];
for(int cont=0;cont<=16384-1;cont++)
{
aaa[cont]=(unsigned short)*pBuffer*256+(unsigned short)*(pBuffer+1);
pBuffer = pBuffer + 2;
}
ma cosi' ho parecchi problemi perche' in ingresso (p_waveBuffer->GetBuffer()) posso avere valori sia positivi che negativi..
secondo me sarebbe meglio leggere i 2 byte insieme come un'unica stringa di caratteri e poi convertire la stringa cosi' trovata in INT16 (= signed short int).. ma il mio problema e': come si fa a leggerli insieme?? e poi a convertire??
grazie e ciao!

Rispondi quotando