diff --git a/libndi.c b/libndi.c index c33342beff89197761aa9da76d7a02afea789921..7f78f51d4947ca10a1bef3eecbcbe32901bec2fa 100644 --- a/libndi.c +++ b/libndi.c @@ -290,11 +290,11 @@ static int process_audio_message(ndi_ctx *ndi_ctx, uint8_t *data, int header_len if(bps == 2) { ndi_data.buf[i]->data[2*j+0] = data[1]; ndi_data.buf[i]->data[2*j+1] = data[0]; - } else(bps == 4) { + } else if(bps == 4) { float sf = scale_factors[i] / 32767.0f; int16_t sample = ((uint16_t)data[1] << 8) | data[0]; sf *= sample; - memcpy(&ndi_data.buf[i]->data[4*j], sf, sizeof(sf)); + memcpy(&ndi_data.buf[i]->data[4*j], &sf, sizeof(sf)); } data += sizeof(int16_t); }