view libgsmefr/enc_wrap.c @ 467:ad032051166a

doc: AMR-EFR-hybrid-emu new article
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 12 May 2024 23:54:43 +0000
parents 269d341db403
children
line wrap: on
line source

/*
 * This module contains our EFR_encode_frame() function, which is the primary
 * (most common, most useful) interface to our EFR encoder.
 */

#include "gsm_efr.h"

void EFR_encode_frame(struct EFR_encoder_state *st, const int16_t *pcm_in,
		      uint8_t *frame, int *sp_out, int *vad_out)
{
	int16_t params[EFR_NUM_PARAMS];
	int sp;

	EFR_encode_params(st, pcm_in, params, &sp, vad_out);
	EFR_params2frame(params, frame);
	if (!sp)
		EFR_insert_sid_codeword(frame);
	if (sp_out)
		*sp_out = sp;
}