mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-05 12:16:00 +00:00
Make sure smoother only creates frames with offsets (bug #1029)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@2184 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
2
frame.c
2
frame.c
@@ -80,7 +80,7 @@ int ast_smoother_feed(struct ast_smoother *s, struct ast_frame *f)
|
|||||||
ast_log(LOG_WARNING, "Out of smoother space\n");
|
ast_log(LOG_WARNING, "Out of smoother space\n");
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
if ((f->datalen == s->size) && !s->opt) {
|
if ((f->datalen == s->size) && !s->opt && (f->offset >= AST_MIN_OFFSET)) {
|
||||||
if (!s->len) {
|
if (!s->len) {
|
||||||
/* Optimize by sending the frame we just got
|
/* Optimize by sending the frame we just got
|
||||||
on the next read, thus eliminating the douple
|
on the next read, thus eliminating the douple
|
||||||
|
@@ -90,10 +90,10 @@ struct ast_frame_chain {
|
|||||||
};
|
};
|
||||||
|
|
||||||
#define AST_FRIENDLY_OFFSET 64 /*! It's polite for a a new frame to
|
#define AST_FRIENDLY_OFFSET 64 /*! It's polite for a a new frame to
|
||||||
have at least this number of bytes
|
have this number of bytes for additional
|
||||||
of offset before your real frame data
|
headers. */
|
||||||
so that additional headers can be
|
#define AST_MIN_OFFSET 32 /*! Make sure we keep at least this much handy */
|
||||||
added. */
|
|
||||||
/*! Need the header be free'd? */
|
/*! Need the header be free'd? */
|
||||||
#define AST_MALLOCD_HDR (1 << 0)
|
#define AST_MALLOCD_HDR (1 << 0)
|
||||||
/*! Need the data be free'd? */
|
/*! Need the data be free'd? */
|
||||||
|
Reference in New Issue
Block a user