test: platform: updated codec2 encode test
This commit is contained in:
parent
b2e289e6fd
commit
882a7e58ee
|
|
@ -19,11 +19,12 @@
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
#include <audio_stream.h>
|
#include <audio_stream.h>
|
||||||
#include <interfaces/audio_path.h>
|
#include <audio_path.h>
|
||||||
#include <interfaces/platform.h>
|
#include <interfaces/platform.h>
|
||||||
#include <interfaces/delays.h>
|
#include <interfaces/delays.h>
|
||||||
#include <memory_profiling.h>
|
#include <memory_profiling.h>
|
||||||
#include <interfaces/audio.h>
|
#include <interfaces/audio.h>
|
||||||
|
#include <pthread.h>
|
||||||
#include <codec2.h>
|
#include <codec2.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
@ -46,21 +47,27 @@ void error()
|
||||||
|
|
||||||
void *mic_task(void *arg)
|
void *mic_task(void *arg)
|
||||||
{
|
{
|
||||||
|
(void) arg;
|
||||||
|
|
||||||
struct CODEC2 *codec2 = codec2_create(CODEC2_MODE_3200);
|
struct CODEC2 *codec2 = codec2_create(CODEC2_MODE_3200);
|
||||||
int16_t *audioBuf = ((int16_t *) malloc(audioBufSize * sizeof(int16_t)));
|
int16_t *audioBuf = ((int16_t *) malloc(audioBufSize * sizeof(int16_t)));
|
||||||
if(audioBuf == NULL) error();
|
if(audioBuf == NULL) error();
|
||||||
uint8_t *dataBuf = ((uint8_t *) malloc(dataBufSize * sizeof(uint8_t)));
|
uint8_t *dataBuf = ((uint8_t *) malloc(dataBufSize * sizeof(uint8_t)));
|
||||||
memset(dataBuf, 0x00, dataBufSize);
|
memset(dataBuf, 0x00, dataBufSize);
|
||||||
|
|
||||||
audio_enableMic();
|
|
||||||
sleepFor(0u, 500u);
|
sleepFor(0u, 500u);
|
||||||
|
|
||||||
streamId id = inputStream_start(SOURCE_MIC, PRIO_RX, audioBuf, audioBufSize,
|
pathId path = audioPath_request(SOURCE_MIC, SINK_MCU, PRIO_TX);
|
||||||
BUF_CIRC_DOUBLE, 8000);
|
streamId id = audioStream_start(path, audioBuf, audioBufSize, 8000,
|
||||||
|
BUF_CIRC_DOUBLE | STREAM_INPUT);
|
||||||
|
|
||||||
platform_ledOn(GREEN);
|
platform_ledOn(GREEN);
|
||||||
|
|
||||||
|
filter_state_t dcr;
|
||||||
size_t pos = 0;
|
size_t pos = 0;
|
||||||
|
|
||||||
|
dsp_resetFilterState(&dcr);
|
||||||
|
|
||||||
while(pos < dataBufSize)
|
while(pos < dataBufSize)
|
||||||
{
|
{
|
||||||
dataBlock_t data = inputStream_getData(id);
|
dataBlock_t data = inputStream_getData(id);
|
||||||
|
|
@ -70,7 +77,7 @@ void *mic_task(void *arg)
|
||||||
for(size_t i = 0; i < data.len; i++) data.data[i] <<= 3;
|
for(size_t i = 0; i < data.len; i++) data.data[i] <<= 3;
|
||||||
|
|
||||||
// DC removal
|
// DC removal
|
||||||
dsp_dcRemoval(data.data, data.len);
|
dsp_dcRemoval(&dcr, data.data, data.len);
|
||||||
|
|
||||||
// Post-amplification stage
|
// Post-amplification stage
|
||||||
for(size_t i = 0; i < data.len; i++) data.data[i] *= 20;
|
for(size_t i = 0; i < data.len; i++) data.data[i] *= 20;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue