您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ speex_decoder_ctl函数代码示例

51自学网 2021-06-03 08:09:04
  C++
这篇教程C++ speex_decoder_ctl函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中speex_decoder_ctl函数的典型用法代码示例。如果您正苦于以下问题:C++ speex_decoder_ctl函数的具体用法?C++ speex_decoder_ctl怎么用?C++ speex_decoder_ctl使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了speex_decoder_ctl函数的29个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: FUNCSPEEX

JNIEXPORT void JNICALL FUNCSPEEX(initDecode)(JNIEnv* env, jobject obj) {	speex_bits_init(&dbits);	dec_state = speex_decoder_init(speex_lib_get_mode(SPEEX_MODEID_NB));	speex_decoder_ctl(dec_state, SPEEX_GET_FRAME_SIZE, &dec_frame_size);	int tmp = 1;	speex_decoder_ctl(dec_state, SPEEX_SET_ENH, &tmp);}
开发者ID:hihua,项目名称:hihuacode,代码行数:7,


示例2: libspeex_decode_init

static av_cold int libspeex_decode_init(AVCodecContext *avctx){    LibSpeexContext *s = avctx->priv_data;    const SpeexMode *mode;    // defaults in the case of a missing header    if (avctx->sample_rate <= 8000)        mode = &speex_nb_mode;    else if (avctx->sample_rate <= 16000)        mode = &speex_wb_mode;    else        mode = &speex_uwb_mode;    if (avctx->extradata_size >= 80)        s->header = speex_packet_to_header(avctx->extradata, avctx->extradata_size);    avctx->sample_fmt = AV_SAMPLE_FMT_S16;    if (s->header) {        avctx->sample_rate = s->header->rate;        avctx->channels    = s->header->nb_channels;        s->frame_size      = s->header->frame_size;        mode = speex_lib_get_mode(s->header->mode);        if (!mode) {            av_log(avctx, AV_LOG_ERROR, "Unknown Speex mode %d", s->header->mode);            return AVERROR_INVALIDDATA;        }    } else        av_log(avctx, AV_LOG_INFO, "Missing Speex header, assuming defaults./n");    if (avctx->channels > 2) {        av_log(avctx, AV_LOG_ERROR, "Only stereo and mono are supported./n");        return AVERROR(EINVAL);    }    speex_bits_init(&s->bits);    s->dec_state = speex_decoder_init(mode);    if (!s->dec_state) {        av_log(avctx, AV_LOG_ERROR, "Error initializing libspeex decoder./n");        return -1;    }    if (!s->header) {        speex_decoder_ctl(s->dec_state, SPEEX_GET_FRAME_SIZE, &s->frame_size);    }    if (avctx->channels == 2) {        SpeexCallback callback;        callback.callback_id = SPEEX_INBAND_STEREO;        callback.func = speex_std_stereo_request_handler;        callback.data = &s->stereo;        s->stereo = (SpeexStereoState)SPEEX_STEREO_STATE_INIT;        speex_decoder_ctl(s->dec_state, SPEEX_SET_HANDLER, &callback);    }    avcodec_get_frame_defaults(&s->frame);    avctx->coded_frame = &s->frame;    return 0;}
开发者ID:0x0B501E7E,项目名称:ffmpeg,代码行数:60,


示例3: spx_codec_open

/* * Open codec. */static pj_status_t spx_codec_open( pjmedia_codec *codec, 				   pjmedia_codec_param *attr ){    struct spx_private *spx;    int id, tmp;    spx = (struct spx_private*) codec->codec_data;    id = spx->param_id;    /*      * Create and initialize encoder.      */    spx->enc = speex_encoder_init(spx_factory.speex_param[id].mode);    if (!spx->enc)	return PJMEDIA_CODEC_EFAILED;    speex_bits_init(&spx->enc_bits);    /* Set the quality*/    if (spx_factory.speex_param[id].quality != -1) {	speex_encoder_ctl(spx->enc, SPEEX_SET_QUALITY, 			  &spx_factory.speex_param[id].quality);    }    /* Sampling rate. */    tmp = attr->info.clock_rate;    speex_encoder_ctl(spx->enc, SPEEX_SET_SAMPLING_RATE, 		      &spx_factory.speex_param[id].clock_rate);    /* VAD */    tmp = (attr->setting.vad != 0);    speex_encoder_ctl(spx->enc, SPEEX_SET_VAD, &tmp);    speex_encoder_ctl(spx->enc, SPEEX_SET_DTX, &tmp);    /* Complexity */    if (spx_factory.speex_param[id].complexity != -1) {	speex_encoder_ctl(spx->enc, SPEEX_SET_COMPLEXITY, 			  &spx_factory.speex_param[id].complexity);    }    /*      * Create and initialize decoder.      */    spx->dec = speex_decoder_init(spx_factory.speex_param[id].mode);    if (!spx->dec) {	spx_codec_close(codec);	return PJMEDIA_CODEC_EFAILED;    }    speex_bits_init(&spx->dec_bits);    /* Sampling rate. */    speex_decoder_ctl(spx->dec, SPEEX_SET_SAMPLING_RATE, 		      &spx_factory.speex_param[id].clock_rate);    /* PENH */    tmp = attr->setting.penh;    speex_decoder_ctl(spx->dec, SPEEX_SET_ENH, &tmp);    return PJ_SUCCESS;}
开发者ID:imace,项目名称:mbgapp,代码行数:62,


示例4: init_speex_decoder

void init_speex_decoder() {    if (gDecoderState == NULL) {        gDecoderState = speex_decoder_init(&speex_nb_mode);        int tmp = 1;        speex_decoder_ctl(gDecoderState, SPEEX_SET_ENH, &tmp);        tmp = kNetworkAudioSampleRate;        speex_decoder_ctl(gDecoderState, SPEEX_SET_SAMPLING_RATE, &tmp);        speex_bits_init(&gDecoderBits);    }}
开发者ID:Aleph-One-Marathon,项目名称:alephone-psp,代码行数:10,


示例5: speex_packet_to_header

static void *process_header (struct spx_data *data){	void *st;	const SpeexMode *mode;	int modeID;	SpeexCallback callback;	int enhance = ENHANCE_AUDIO;	data->header = speex_packet_to_header ((char*)data->op.packet,			data->op.bytes);	if (!data->header) {		decoder_error (&data->error, ERROR_FATAL, 0,				"Can't open speex file: can't read header");		return NULL;	}	if (data->header->mode >= SPEEX_NB_MODES) {		decoder_error (&data->error, ERROR_FATAL, 0,				"Can't open speex file: Mode number %"PRId32				" does not exist in this version",				data->header->mode);		return NULL;	}	modeID = data->header->mode;	mode = speex_mode_list[modeID];	if (mode->bitstream_version < data->header->mode_bitstream_version) {		decoder_error (&data->error, ERROR_FATAL, 0,				"Can't open speex file: The file was encoded "				"with a newer version of Speex.");		return NULL;	}	if (mode->bitstream_version > data->header->mode_bitstream_version) {		decoder_error (&data->error, ERROR_FATAL, 0,				"Can't open speex file: The file was encoded "				"with an older version of Speex.");		return NULL;	}	st = speex_decoder_init (mode);	speex_decoder_ctl(st, SPEEX_SET_ENH, &enhance);	speex_decoder_ctl(st, SPEEX_GET_FRAME_SIZE, &data->frame_size);	callback.callback_id = SPEEX_INBAND_STEREO;	callback.func = speex_std_stereo_request_handler;	callback.data = &data->stereo;	speex_decoder_ctl(st, SPEEX_SET_HANDLER, &callback);	speex_decoder_ctl(st, SPEEX_SET_SAMPLING_RATE, &data->header->rate);	return st;}
开发者ID:jonsafari,项目名称:mocp,代码行数:53,


示例6: AudioOutputUser

AudioOutputSpeech::AudioOutputSpeech(boost::shared_ptr<ClientUser> user, MessageHandler::UDPMessageType type) : AudioOutputUser(user->qsName) {	int err;	p = user;	umtType = type;	unsigned int srate = 0;	cCodec = NULL;	cdDecoder = NULL;	if (umtType != MessageHandler::UDPVoiceSpeex) {		srate = SAMPLE_RATE;		iFrameSize = srate / 100;		dsSpeex = NULL;	} else {		speex_bits_init(&sbBits);		dsSpeex = speex_decoder_init(speex_lib_get_mode(SPEEX_MODEID_UWB));		int iArg=1;		speex_decoder_ctl(dsSpeex, SPEEX_SET_ENH, &iArg);		speex_decoder_ctl(dsSpeex, SPEEX_GET_FRAME_SIZE, &iFrameSize);		speex_decoder_ctl(dsSpeex, SPEEX_GET_SAMPLING_RATE, &srate);	}	if (srate != SAMPLE_RATE)		srs = speex_resampler_init(1, srate, SAMPLE_RATE, 3, &err);	else		srs = NULL;	iOutputSize = static_cast<unsigned int>(ceilf(static_cast<float>(iFrameSize * SAMPLE_RATE) / static_cast<float>(SAMPLE_RATE)));	iBufferOffset = iBufferFilled = iLastConsume = 0;	bLastAlive = true;	iMissCount = 0;	iMissedFrames = 0;	ucFlags = 0xFF;	jbJitter = jitter_buffer_init(iFrameSize);	int margin = g.s.iJitterBufferSize * iFrameSize;	jitter_buffer_ctl(jbJitter, JITTER_BUFFER_SET_MARGIN, &margin);	fFadeIn = new float[iFrameSize];	fFadeOut = new float[iFrameSize];	float mul = static_cast<float>(M_PI / (2.0 * static_cast<double>(iFrameSize)));	for (unsigned int i=0;i<iFrameSize;++i)		fFadeIn[i] = fFadeOut[iFrameSize-i-1] = sinf(static_cast<float>(i) * mul);}
开发者ID:pcgod,项目名称:mumble-wip,代码行数:51,


示例7: speextolin_new

static int speextolin_new(struct ast_trans_pvt *pvt){	struct speex_coder_pvt *tmp = pvt->pvt;		if (!(tmp->speex = speex_decoder_init(&speex_nb_mode)))		return -1;	speex_bits_init(&tmp->bits);	speex_decoder_ctl(tmp->speex, SPEEX_GET_FRAME_SIZE, &tmp->framesize);	if (enhancement)		speex_decoder_ctl(tmp->speex, SPEEX_SET_ENH, &enhancement);	return 0;}
开发者ID:abieuzent,项目名称:iaxproxy,代码行数:14,


示例8: speex_decoder_construct

static int speex_decoder_construct(struct ast_trans_pvt *pvt, const SpeexMode *profile){	struct speex_coder_pvt *tmp = pvt->pvt;		if (!(tmp->speex = speex_decoder_init(profile)))		return -1;	speex_bits_init(&tmp->bits);	speex_decoder_ctl(tmp->speex, SPEEX_GET_FRAME_SIZE, &tmp->framesize);	if (enhancement)		speex_decoder_ctl(tmp->speex, SPEEX_SET_ENH, &enhancement);	return 0;}
开发者ID:mtulio,项目名称:mtulio,代码行数:14,


示例9: main

int main(int argc, char **argv){   char *outFile;   FILE *fout;   /*Holds the audio that will be written to file (16 bits per sample)*/   short out[FRAME_SIZE];   /*Speex handle samples as float, so we need an array of floats*/   float output[FRAME_SIZE];   char cbits[200];   int nbBytes;   /*Holds the state of the decoder*/   void *state;   /*Holds bits so they can be read and written to by the Speex routines*/   SpeexBits bits;   int i, tmp;   /*Create a new decoder state in narrowband mode*/   state = speex_decoder_init(&speex_nb_mode);   /*Set the perceptual enhancement on*/   tmp=1;   speex_decoder_ctl(state, SPEEX_SET_ENH, &tmp);   outFile = argv[1];   fout = fopen(outFile, "w");   /*Initialization of the structure that holds the bits*/   speex_bits_init(&bits);   while (1)   {      /*Read the size encoded by sampleenc, this part will likely be        different in your application*/      fread(&nbBytes, sizeof(int), 1, stdin);      fprintf (stderr, "nbBytes: %d/n", nbBytes);      if (feof(stdin))         break;      /*Read the "packet" encoded by sampleenc*/      fread(cbits, 1, nbBytes, stdin);      /*Copy the data into the bit-stream struct*/      speex_bits_read_from(&bits, cbits, nbBytes);      /*Decode the data*/      speex_decode(state, &bits, output);      /*Copy from float to short (16 bits) for output*/      for (i=0;i<FRAME_SIZE;i++)         out[i]=output[i];      /*Write the decoded audio to file*/      fwrite(out, sizeof(short), FRAME_SIZE, fout);   }   /*Destroy the decoder state*/   speex_decoder_destroy(state);   /*Destroy the bit-stream truct*/   speex_bits_destroy(&bits);   fclose(fout);   return 0;}
开发者ID:Distrotech,项目名称:speex,代码行数:60,


示例10: speex_bits_init

hsBool plSpeex::Init(Mode mode) {    int enh = 1;        // setup speex    speex_bits_init(fBits);    fBitsInit = true;    if(mode == kNarrowband)    {        fEncoderState = speex_encoder_init(speex_lib_get_mode(SPEEX_MODEID_NB));                         // narrowband        fDecoderState = speex_decoder_init(speex_lib_get_mode(SPEEX_MODEID_NB));    }    else if(mode == kWideband)    {        fEncoderState = speex_encoder_init(speex_lib_get_mode(SPEEX_MODEID_WB));        fDecoderState = speex_decoder_init(speex_lib_get_mode(SPEEX_MODEID_WB));    }        speex_encoder_ctl(fEncoderState, SPEEX_GET_FRAME_SIZE, &fFrameSize);            // get frame size    speex_encoder_ctl(fEncoderState, SPEEX_SET_COMPLEXITY, &fComplexity);           // 3    speex_encoder_ctl(fEncoderState, SPEEX_SET_SAMPLING_RATE, &fSampleRate);        // 8 khz    speex_encoder_ctl(fEncoderState, SPEEX_SET_VBR_QUALITY, &fQuality);             // 7    speex_encoder_ctl(fEncoderState, SPEEX_SET_VBR, &fVBR);                         // use variable bit rate    speex_encoder_ctl(fEncoderState, SPEEX_SET_ABR, &fAverageBitrate);              // default to 8kb        speex_decoder_ctl(fDecoderState, SPEEX_SET_ENH, &fENH);                         // perceptual enhancement                   fInitialized = true;    return true;}
开发者ID:cwalther,项目名称:Plasma-nobink-test,代码行数:32,


示例11: _speex_dec_state

AudioDecoderSpeex::AudioDecoderSpeex()    : _speex_dec_state(speex_decoder_init(&speex_wb_mode)) {    if (!_speex_dec_state) {        throw MediaException(_("AudioDecoderSpeex: state initialization failed."));    }    speex_bits_init(&_speex_bits);    speex_decoder_ctl(_speex_dec_state, SPEEX_GET_FRAME_SIZE, &_speex_framesize);#ifdef RESAMPLING_SPEEX    int err = 0;    _resampler = speex_resampler_init(1, 16000, 44100,        SPEEX_RESAMPLER_QUALITY_DEFAULT, &err);    if (err != RESAMPLER_ERR_SUCCESS) {        throw MediaException(_("AudioDecoderSpeex: initialization failed."));    }    spx_uint32_t num = 0, den = 0;    speex_resampler_get_ratio (_resampler, &num, &den);    assert(num && den);    boost::rational<boost::uint32_t> numsamples(den, num);    numsamples *= _speex_framesize * 2 /* convert to stereo */;    _target_frame_size = boost::rational_cast<boost::uint32_t>(numsamples);#endif}
开发者ID:adamh,项目名称:gnash-fork,代码行数:32,


示例12: Java_com_haitou_xiaoyoupai_imservice_support_audio_Speex_open

extern "C" JNIEXPORT jint JNICALL Java_com_haitou_xiaoyoupai_imservice_support_audio_Speex_open(    JNIEnv *env, jobject obj, jint compression) {    int tmp = 0;    if (codec_open++ != 0)        return (jint) 0;    speex_bits_init(&ebits);    speex_bits_init(&dbits);    enc_state = speex_encoder_init(&speex_nb_mode);    dec_state = speex_decoder_init(&speex_nb_mode);    tmp = compression;    speex_encoder_ctl(enc_state, SPEEX_SET_QUALITY, &tmp);    speex_encoder_ctl(enc_state, SPEEX_GET_FRAME_SIZE, &enc_frame_size);    speex_decoder_ctl(dec_state, SPEEX_GET_FRAME_SIZE, &dec_frame_size);    SpeexPreprocessState * m_st;    m_st = speex_preprocess_state_init(enc_frame_size, 8000);    int denoise = 1;    int noiseSuppress = -25;    speex_preprocess_ctl(m_st, SPEEX_PREPROCESS_SET_DENOISE, &denoise);    speex_preprocess_ctl(m_st, SPEEX_PREPROCESS_SET_NOISE_SUPPRESS,                         &noiseSuppress);    return (jint) 0;}
开发者ID:treejames,项目名称:FreshMAn-Task,代码行数:27,


示例13: SpeexDecodeInit

//*****************************************************************************////! Initialize the decoder's state to prepare for decoding new frames.//!//! This function will initializes the decoder so that it is prepared to start//! receiving frames to decode.//!//! /return This function returns 0.////*****************************************************************************int32_tSpeexDecodeInit(void){    int iTemp;    //    // Clear out the flags for this instance.    //    g_sSpeexDecoder.ui32Flags = 0;    //    // Create a new decoder state in narrow band mode.    //    g_sSpeexDecoder.pvState = speex_decoder_init(&speex_nb_mode);    //    // Disable enhanced decoding to reduce processing requirements.    //    iTemp = 0;    speex_decoder_ctl(g_sSpeexDecoder.pvState, SPEEX_SET_ENH, &iTemp);    //    // Initialization of the structure that holds the bits.    //    speex_bits_init(&g_sSpeexDecoder.sBits);    return(0);}
开发者ID:GuillaumeGalasso,项目名称:Embedded_Systems--Shape_The_World,代码行数:38,


示例14: dec_preprocess

static void dec_preprocess(MSFilter *f){	DecState *s=(DecState*)f->data;	const SpeexMode *mode=NULL;	int modeid;	switch(s->rate){		case 8000:	        modeid = SPEEX_MODEID_NB;    /* rate = 8000Hz */			break;		case 16000:	        modeid = SPEEX_MODEID_WB;    /* rate = 16000Hz */			break;			/* should be supported in the future */		case 32000:	        modeid = SPEEX_MODEID_UWB;   /* rate = 32000Hz */			break;		default:			ms_error("Unsupported rate for speex decoder (back to default rate=8000).");			modeid=SPEEX_MODEID_NB;	}	/* warning: speex_lib_get_mode() is not available on speex<1.1.12 */	mode = speex_lib_get_mode(modeid);	s->state=speex_decoder_init(mode);	speex_mode_query(mode,SPEEX_MODE_FRAME_SIZE,&s->frsz);	if (s->penh==1)		speex_decoder_ctl (s->state, SPEEX_SET_ENH, &s->penh);	s->sample_time=0;}
开发者ID:TheBaobabTeam,项目名称:linphone-android,代码行数:27,


示例15: speex_std_enh_request_handler

int speex_std_enh_request_handler(SpeexBits *bits, void *state, void *data){   int enh;   enh = speex_bits_unpack_unsigned(bits, 1);   speex_decoder_ctl(data, SPEEX_SET_ENH, &enh);   return 0;}
开发者ID:Binauric,项目名称:opal,代码行数:7,


示例16: decode_audio

static int decode_audio(sh_audio_t *sh, unsigned char *buf,                        int minlen, int maxlen) {  double pts;  context_t *ctx = sh->context;  int len, framelen, framesamples;  char *packet;  int i, err;  speex_decoder_ctl(ctx->dec_context, SPEEX_GET_FRAME_SIZE, &framesamples);  framelen = framesamples * ctx->hdr->nb_channels * sizeof(short);  if (maxlen < ctx->hdr->frames_per_packet * framelen) {    mp_msg(MSGT_DECAUDIO, MSGL_V, "maxlen too small in decode_audio/n");    return -1;  }  len = ds_get_packet_pts(sh->ds, (unsigned char **)&packet, &pts);  if (len <= 0) return -1;  if (sh->pts == MP_NOPTS_VALUE)    sh->pts = 0;  if (pts != MP_NOPTS_VALUE) {    sh->pts = pts;    sh->pts_bytes = 0;  }  speex_bits_read_from(&ctx->bits, packet, len);  i = ctx->hdr->frames_per_packet;  do {    err = speex_decode_int(ctx->dec_context, &ctx->bits, (short *)buf);    if (err == -2)      mp_msg(MSGT_DECAUDIO, MSGL_ERR, "Error decoding file./n");    if (ctx->hdr->nb_channels == 2)      speex_decode_stereo_int((short *)buf, framesamples, &ctx->stereo);    buf = &buf[framelen];  } while (--i > 0);  sh->pts_bytes += ctx->hdr->frames_per_packet * framelen;  return ctx->hdr->frames_per_packet * framelen;}
开发者ID:Gamer125,项目名称:wiibrowser,代码行数:34,


示例17: speex_jitter_get

int speex_jitter_get(SpeexJitter *jitter, spx_int16_t *out, int *current_timestamp, void** userData){   int i;   int jbRet;	/* results returned by the JB */   int ourRet;	/* result that we will return */   spx_int32_t activity;   char data[2048];   JitterBufferPacket packet;   packet.data = data;   packet.len = 2048;  /* AAAAARGH: it took a week to find and add this missing line */      if (jitter->valid_bits)   {      /* Try decoding last received packet */      jbRet = speex_decode_int(jitter->dec, &jitter->current_packet, out);      if (jbRet == 0)      {         jitter_buffer_tick(jitter->packets);         return 1;      } else {         jitter->valid_bits = 0;      }   }   jbRet = jitter_buffer_get(jitter->packets, &packet, jitter->frame_size, NULL);      if (jbRet != JITTER_BUFFER_OK)   {	  /* no packet found, so no corresponding user-data */      *userData = NULL;      /* No packet found... extrapolate one */      /*fprintf (stderr, "lost/late frame/n");*/      /*Packet is late or lost*/      speex_decode_int(jitter->dec, NULL, out);	  	  ourRet = 2;   } else {	  /* found a packet, so there is corresponding user-data */	  *userData = (void*)(packet.user_data);         speex_bits_read_from(&jitter->current_packet, packet.data, packet.len);      /* Decode packet */      jbRet = speex_decode_int(jitter->dec, &jitter->current_packet, out);      if (jbRet == 0) {         ourRet = 0;		         jitter->valid_bits = 1;      } else {         /* Error while decoding */         ourRet = 3;         for (i=0;i<jitter->frame_size;i++) out[i]=0;      }   }   speex_decoder_ctl(jitter->dec, SPEEX_GET_ACTIVITY, &activity);   if (activity < jitter->activity_threshold)       jitter_buffer_update_delay(jitter->packets, &packet, NULL);    jitter_buffer_tick(jitter->packets);   return ourRet;}
开发者ID:SergeStinckwich,项目名称:openqwaq,代码行数:60,


示例18: gviSpursSpeexDecoderInitialize

void gviSpursSpeexDecoderInitialize(SpursSpeexTaskOutput *spuTaskOut){	void * decoder = gviSpursSpeexStateBuffer;	int perceptualEnhancement = 1;	// create a new decoder state	if (gviSpursSpeexTaskDesc.mSamplesPerSecond == GVRate_8KHz)		speex_decoder_init(&speex_nb_mode, decoder);	else if (gviSpursSpeexTaskDesc.mSamplesPerSecond == GVRate_16KHz)		speex_decoder_init(&speex_wb_mode, decoder);	else	{		//spuDebugPrintf("[Speex][SPU] Error: invalid sample rate!/n");		spuTaskOut->mSpeexReturnCode = -1;	}	if(!decoder)	{		//spuDebugPrintf("[Speex][SPU] Error: initializing decoder failed!/n");		spuTaskOut->mSpeexReturnCode = -2;	}	// turn on the perceptual enhancement	speex_decoder_ctl(decoder, SPEEX_SET_ENH, &perceptualEnhancement);	spuTaskOut->mSpeexReturnCode = 0;}
开发者ID:AntonioModer,项目名称:xray-16,代码行数:27,


示例19: throw

uint16 SpeexPlugin::getDecodingSampleRate() const		throw(OperationNotPerfomedException) {	if (!decoder)		throw OperationNotPerfomedException("Decoder not initialized");	spx_int32_t sample;	speex_decoder_ctl(decoder->state, SPEEX_GET_SAMPLING_RATE, &sample);	return sample;}
开发者ID:txithihausen,项目名称:streamadapt,代码行数:8,


示例20: decoder_config

static void decoder_config(void *st){	int ret;	ret = speex_decoder_ctl(st, SPEEX_SET_ENH, &sconf.enhancement);	if (ret) {		warning("speex: SPEEX_SET_ENH: %d/n", ret);	}}
开发者ID:FOSSRIT,项目名称:baresip,代码行数:9,


示例21: speex2pcm_int

	speex2pcm_int()	{		state = speex_decoder_init(&speex_nb_mode);		int tmp=1;		speex_decoder_ctl(state, SPEEX_SET_ENH, &tmp);		speex_bits_init(&bits);		speex_encoder_ctl(state, SPEEX_GET_FRAME_SIZE, &frame_size);		out  = new short[ frame_size ];	}
开发者ID:kolonse,项目名称:speex_helper,代码行数:10,


示例22: speex_decode

EXPORT int speex_decode(void *state, SpeexBits *bits, float *out){   int i, ret;   spx_int32_t N;   spx_int16_t short_out[MAX_IN_SAMPLES];   speex_decoder_ctl(state, SPEEX_GET_FRAME_SIZE, &N);   ret = (*((SpeexMode**)state))->dec(state, bits, short_out);   for (i=0;i<N;i++)      out[i] = short_out[i];   return ret;}
开发者ID:AirDev,项目名称:linphone-android,代码行数:11,


示例23: speex_jitter_init

void speex_jitter_init(SpeexJitter *jitter, void *decoder, int sampling_rate){   jitter->dec = decoder;   speex_decoder_ctl(decoder, SPEEX_GET_FRAME_SIZE, &jitter->frame_size);   jitter->packets = jitter_buffer_init(jitter->frame_size);   speex_bits_init(&jitter->current_packet);   jitter->valid_bits = 0;   jitter->activity_threshold = 0;}
开发者ID:SergeStinckwich,项目名称:openqwaq,代码行数:11,


示例24: decode_update

static int decode_update(struct audec_state **adsp,			 const struct aucodec *ac, const char *fmtp){	struct audec_state *st;	int err = 0;	(void)fmtp;	if (!adsp || !ac)		return EINVAL;	if (*adsp)		return 0;	st = mem_zalloc(sizeof(*st), decode_destructor);	if (!st)		return ENOMEM;	st->frame_size = ac->srate * SPEEX_PTIME / 1000;	st->channels = ac->ch;	/* Decoder */	st->dec = speex_decoder_init(resolve_mode(ac->srate));	if (!st->dec) {		err = ENOMEM;		goto out;	}	speex_bits_init(&st->bits);	if (2 == st->channels) {		/* Stereo. */		st->stereo.balance = 1;		st->stereo.e_ratio = .5f;		st->stereo.smooth_left = 1;		st->stereo.smooth_right = 1;		st->callback.callback_id = SPEEX_INBAND_STEREO;		st->callback.func = speex_std_stereo_request_handler;		st->callback.data = &st->stereo;		speex_decoder_ctl(st->dec, SPEEX_SET_HANDLER,				  &st->callback);	}	decoder_config(st->dec); out:	if (err)		mem_deref(st);	else		*adsp = st;	return err;}
开发者ID:FOSSRIT,项目名称:baresip,代码行数:53,


示例25: ms_speex_dec_init_core

void ms_speex_dec_init_core(MSSpeexDec *obj,const SpeexMode *mode){	int pf=1;		obj->speex_state=speex_decoder_init(mode);	speex_bits_init(&obj->bits);	/* enable the perceptual post filter */	speex_decoder_ctl(obj->speex_state,SPEEX_SET_PF, &pf);		speex_mode_query(mode, SPEEX_MODE_FRAME_SIZE, &obj->frame_size);		obj->initialized=1;}
开发者ID:serghei,项目名称:kde3-kdenetwork,代码行数:13,


示例26: speex_bits_reset

void CASpeexDecoder::BDCReset(){    speex_bits_reset(&mSpeexBits);    if (mSpeexDecoderState != NULL)        speex_decoder_ctl(mSpeexDecoderState, SPEEX_RESET_STATE, NULL); //??!    mSpeexFPList.clear();    mNumFrames = 0;    mOutBufferUsedSize = 0;    mOutBufferStart = 0;    XCACodec::BDCReset();}
开发者ID:JanX2,项目名称:XiphQT,代码行数:15,


示例27: speex_bits_destroy

void CASpeexDecoder::BDCUninitialize(){    speex_bits_destroy(&mSpeexBits);    if (mSpeexDecoderState != NULL)        speex_decoder_ctl(mSpeexDecoderState, SPEEX_RESET_STATE, NULL); //??!    mSpeexFPList.clear();    if (mOutBuffer)        delete[] mOutBuffer;    mOutBuffer = NULL;    mOutBufferSize = 0;    mOutBufferUsedSize = 0;    mOutBufferStart = 0;    XCACodec::BDCUninitialize();}
开发者ID:JanX2,项目名称:XiphQT,代码行数:17,


示例28: SpeexDecodeFrameSizeGet

//*****************************************************************************////! This function returns the current frame size from the decoder.//!//! This function queries the decoder for the current decode frame size in byte//! and returns it to the caller.//!//! /return The current decoder frame size.////*****************************************************************************int32_tSpeexDecodeFrameSizeGet(void){    int iFrameSize;    //    // Return 0 if the wrong request is made.    //    iFrameSize = 0;    //    // Query the decoder for the current frame size.    //    speex_decoder_ctl(g_sSpeexDecoder.pvState, SPEEX_GET_FRAME_SIZE,                      &iFrameSize);    return(iFrameSize);}
开发者ID:GuillaumeGalasso,项目名称:Embedded_Systems--Shape_The_World,代码行数:28,


示例29: spx_codec_modify

/* * Modify codec settings. */static pj_status_t  spx_codec_modify(pjmedia_codec *codec, 				     const pjmedia_codec_param *attr ){    struct spx_private *spx;    int tmp;    spx = (struct spx_private*) codec->codec_data;    /* VAD */    tmp = (attr->setting.vad != 0);    speex_encoder_ctl(spx->enc, SPEEX_SET_VAD, &tmp);    speex_encoder_ctl(spx->enc, SPEEX_SET_DTX, &tmp);    /* PENH */    tmp = attr->setting.penh;    speex_decoder_ctl(spx->dec, SPEEX_SET_ENH, &tmp);    return PJ_SUCCESS;}
开发者ID:imace,项目名称:mbgapp,代码行数:22,



注:本文中的speex_decoder_ctl函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ speex_decoder_init函数代码示例
C++ speex_bits_write函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。