static switch_status_t switch_bv16_init(switch_codec_t *codec, switch_codec_flag_t flags, const switch_codec_settings_t *codec_settings) { struct bv16_context *context = NULL; int encoding = (flags & SWITCH_CODEC_FLAG_ENCODE); int decoding = (flags & SWITCH_CODEC_FLAG_DECODE); if (!(encoding || decoding) || (!(context = switch_core_alloc(codec->memory_pool, sizeof(*context))))) { return SWITCH_STATUS_FALSE; } if (encoding) { context->encoder_object = bv16_encode_init(NULL); } if (decoding) { context->decoder_object = bv16_decode_init(NULL); } codec->private_info = context; return SWITCH_STATUS_SUCCESS; }
static void dec_init(MSFilter *f){ DecState *s = (DecState*)ms_new(DecState, 1); s->dec = bv16_decode_init(NULL); f->data= s; }