diff options
author | Sean Bright <sean.bright@gmail.com> | 2017-05-23 11:06:02 -0400 |
---|---|---|
committer | Sean Bright <sean.bright@gmail.com> | 2017-05-23 11:57:18 -0400 |
commit | 700ef6861ab966008ca16e5f23c64eb68b047c08 (patch) | |
tree | e9a6049b005550bc9c3e79d615fbb410467774f5 | |
parent | d0a1239f5560810662c84f38ebc342a39072e093 (diff) |
res_format_attr_h26x: Trim blanks in fmtp attributes
Some devices separate format attributes with a semicolon followed by a
space, so trim blanks before trying to match them.
ASTERISK-27008 #close
Change-Id: Ia44cb2e4fef5c73dc541a29da79cb0e19c22d9cc
-rw-r--r-- | res/res_format_attr_h263.c | 2 | ||||
-rw-r--r-- | res/res_format_attr_h264.c | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/res/res_format_attr_h263.c b/res/res_format_attr_h263.c index 22f1936e4..f5eef9386 100644 --- a/res/res_format_attr_h263.c +++ b/res/res_format_attr_h263.c @@ -158,6 +158,8 @@ static struct ast_format *h263_parse_sdp_fmtp(const struct ast_format *format, c while ((attrib = strsep(&attribs, ";"))) { unsigned int val, val2 = 0, val3 = 0, val4 = 0; + attrib = ast_strip(attrib); + if (sscanf(attrib, "SQCIF=%30u", &val) == 1) { attr->SQCIF = val; } else if (sscanf(attrib, "QCIF=%30u", &val) == 1) { diff --git a/res/res_format_attr_h264.c b/res/res_format_attr_h264.c index 34793ef6b..4a39fcc77 100644 --- a/res/res_format_attr_h264.c +++ b/res/res_format_attr_h264.c @@ -186,6 +186,8 @@ static struct ast_format *h264_parse_sdp_fmtp(const struct ast_format *format, c unsigned int val; unsigned long int val2; + attrib = ast_strip(attrib); + if (sscanf(attrib, "profile-level-id=%lx", &val2) == 1) { attr->PROFILE_IDC = ((val2 >> 16) & 0xFF); attr->PROFILE_IOP = ((val2 >> 8) & 0xFF); |