Clean up a few things in the last commit to the adaptive jitterbuffer code.

- Specifically indicate to the compiler that the "dropem" variable only
   needs one but.
 - Change formatting to conform to coding guidelines.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@52506 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Russell Bryant
2007-01-29 16:54:27 +00:00
parent 2132e4f865
commit 824bed6260
2 changed files with 13 additions and 13 deletions

View File

@@ -103,8 +103,7 @@ typedef struct jitterbuf {
long hist_maxbuf[JB_HISTORY_MAXBUF_SZ]; /* a sorted buffer of the max delays (highest first) */ long hist_maxbuf[JB_HISTORY_MAXBUF_SZ]; /* a sorted buffer of the max delays (highest first) */
long hist_minbuf[JB_HISTORY_MAXBUF_SZ]; /* a sorted buffer of the min delays (lowest first) */ long hist_minbuf[JB_HISTORY_MAXBUF_SZ]; /* a sorted buffer of the min delays (lowest first) */
int hist_maxbuf_valid; /* are the "maxbuf"/minbuf valid? */ int hist_maxbuf_valid; /* are the "maxbuf"/minbuf valid? */
int dropem; /* flag to indicate dropping frames (overload) */ unsigned int dropem:1; /* flag to indicate dropping frames (overload) */
jb_frame *frames; /* queued frames */ jb_frame *frames; /* queued frames */
jb_frame *free; /* free frames (avoid malloc?) */ jb_frame *free; /* free frames (avoid malloc?) */

View File

@@ -518,8 +518,9 @@ enum jb_return_code jb_put(jitterbuf *jb, void *data, const enum jb_frame_type t
jb->info.frames_in++; jb->info.frames_in++;
if (jb->frames && jb->dropem) return(JB_DROP); if (jb->frames && jb->dropem)
jb->dropem = 0; return JB_DROP;
jb->dropem = 0;
if (type == JB_TYPE_VOICE) { if (type == JB_TYPE_VOICE) {
/* presently, I'm only adding VOICE frames to history and drift calculations; mostly because with the /* presently, I'm only adding VOICE frames to history and drift calculations; mostly because with the
@@ -527,15 +528,15 @@ enum jb_return_code jb_put(jitterbuf *jb, void *data, const enum jb_frame_type t
if (history_put(jb,ts,now,ms)) if (history_put(jb,ts,now,ms))
return JB_DROP; return JB_DROP;
} }
numts = 0; numts = 0;
if (jb->frames) { if (jb->frames)
numts = jb->frames->prev->ts - jb->frames->ts; numts = jb->frames->prev->ts - jb->frames->ts;
} if (numts >= jb->info.conf.max_jitterbuf) {
if (numts >= jb->info.conf.max_jitterbuf) { ast_log(LOG_DEBUG, "Attempting to exceed Jitterbuf max %ld timeslots\n",
ast_log(LOG_NOTICE,"Attempting to exceed Jitterbuf max %ld timeslots\n",jb->info.conf.max_jitterbuf); jb->info.conf.max_jitterbuf);
jb->dropem = 1; jb->dropem = 1;
return JB_DROP; return JB_DROP;
} }
/* if put into head of queue, caller needs to reschedule */ /* if put into head of queue, caller needs to reschedule */
if (queue_put(jb,data,type,ms,ts)) { if (queue_put(jb,data,type,ms,ts)) {
return JB_SCHED; return JB_SCHED;