Example #1
0
static int enc_add_attr(MSFilter *f, void *arg){
	const char *attr=(const char *)arg;
	ms_message("MSBV16Enc: enc_add_attr %s", attr);

	if (strstr(attr,"ptime:")!=NULL){
		int ptime = atoi(attr+6);
		return enc_set_ptime(f,&ptime);
	}
	return 0;
}
Example #2
0
static int enc_add_fmtp(MSFilter *f, void *arg){
	char buf[64];
	const char *fmtp=(const char *)arg;
	SpeexEncState *s=(SpeexEncState*)f->data;

	memset(buf, '\0', sizeof(buf));
	fmtp_get_value(fmtp, "vbr", buf, sizeof(buf));
	if (buf[0]=='\0'){
	}
	else if (strstr(buf,"off")!=NULL){
		s->vbr=0;
	}
	else if (strstr(buf,"on")!=NULL){
		s->vbr=1;
	}
	else if (strstr(buf,"vad")!=NULL){
		s->vbr=2;
	}

	memset(buf, '\0', sizeof(buf));
	fmtp_get_value(fmtp, "cng", buf, sizeof(buf));
	if (buf[0]=='\0'){
	}
	else if (strstr(buf,"off")!=NULL){
		s->cng=0;
	}
	else if (strstr(buf,"on")!=NULL){
		s->cng=1;
	}

	memset(buf, '\0', sizeof(buf));
	fmtp_get_value(fmtp, "mode", buf, sizeof(buf));
	if (buf[0]=='\0' || buf[1]=='\0'){
	}
	else if (buf[0]=='0' || (buf[0]=='"' && buf[1]=='0')){
		s->mode=0;
	}
	else if (buf[0]=='"' && atoi(buf+1)>=0){
		s->mode=atoi(buf+1);
	}
	else if (buf[0]!='"' && atoi(buf)>=0){
		s->mode=atoi(buf);
	}
	else {
		s->mode = -1; /* default mode */
	}
	memset(buf, '\0', sizeof(buf));
	if (fmtp_get_value(fmtp,"ptime",buf,sizeof(buf))){
		int val=atoi(buf);
		enc_set_ptime(f,&val);
	}

	return 0;
}
Example #3
0
static int enc_add_fmtp(MSFilter *f, void *arg){
	EncState *s=(EncState*)f->data;
	const char *fmtp=(const char *)arg;
	char tmp[64];
	tmp[0] = '\0';
	if (fmtp_get_value(fmtp,"maxptime:",tmp,sizeof(tmp))){
		s->max_ptime=atoi(tmp);
		if (s->max_ptime < 10 || s->max_ptime > 100 ) {
			ms_warning("MSBV16Enc: unknown value [%i] for maxptime, use default value (100) instead",s->max_ptime);
			s->max_ptime=100;
		}
		ms_message("MSBV16Enc: got maxptime=%i",s->max_ptime);
	}else if (fmtp_get_value(fmtp,"ptime",tmp,sizeof(tmp))){
		int val = atoi(tmp);
		return enc_set_ptime(f,&val);
	}
	return 0;
}