<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
    <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="https://reviewboard.asterisk.org/r/3800/">https://reviewboard.asterisk.org/r/3800/</a>
     </td>
    </tr>
   </table>
   <br />











<div>




<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; border-collapse: collapse; margin: 2px padding: 2px;">
 <thead>
  <tr>
   <th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; font-size: 9pt; padding: 4px 8px; text-align: left;">
    <a href="https://reviewboard.asterisk.org/r/3800/diff/1/?file=63408#file63408line1845" style="color: black; font-weight: bold; text-decoration: underline;">/team/group/media_formats-reviewed-trunk/channels/chan_iax2.c</a>
    <span style="font-weight: normal;">

     (Diff revision 1)

    </span>
   </th>
  </tr>
 </thead>

 <tbody style="background-color: #e4d9cb; padding: 4px 8px; text-align: center;">
  <tr>

   <td colspan="4"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">static iax2_format uncompress_subclass(unsigned char csub)</pre></td>

  </tr>
 </tbody>



 
 

 <tbody>

  <tr>
    <th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2"></font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
    <th bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">1845</font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">static iax2_format iax2_codec_choose(struct ast_codec_pref *pref, iax2_format formats)</pre></td>
  </tr>

 </tbody>

</table>

<pre style="margin-left: 2em; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Ah, I should probably explain why find_best was dropped from this function. Basically, it didn't have any use in the current implementation and when I looked what it did in 12 and prior, it was relying on a fairly arbitrary list for choosing the best codec based on audio quality which I don't believe we have anymore, so I dropped the option.  If we need to reimplement this for some reason, I can look into that.</pre>
</div>
<br />



<p>- Jonathan Rose</p>


<br />
<p>On July 15th, 2014, 3:58 p.m. CDT, Jonathan Rose wrote:</p>








<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('https://reviewboard.asterisk.org/static/rb/images/review_request_box_top_bg.ab6f3b1072c9.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
 <tr>
  <td>

<div>Review request for Asterisk Developers, Joshua Colp, Matt Jordan, and opticron.</div>
<div>By Jonathan Rose.</div>


<p style="color: grey;"><i>Updated July 15, 2014, 3:58 p.m.</i></p>







<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Bugs: </b>


 <a href="https://issues.asterisk.org/jira/browse/ASTERISK-23958">ASTERISK-23958</a>


</div>



<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
Asterisk
</div>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
 <table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">At some point in the media_formats work, the function edited in this patch was modified in a way that left it abandoning the preference order of the codecs and just choosing from the first value in the codecs bitfield.  This patch changes that function to evaluate using the preferred codecs order.</pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">[lappy]
type=friend
...
disallow = all
allow = ulaw
allow = gsm
allow = alaw

context = default

[deskbox]
type=friend
...
disallow=all
allow=gsm
allow=alaw

context = default


Using these two peers, I had each call the other.

lappy -> deskbox
Asterisk 11: Codec chosen for lappy was ulaw.  Codec chosen for deskbox was alaw, presumably because of favorable transcoding costs.
without patch: Codec chosen for both was gsm in spite of preferred order for lappy favoring ulaw
with patch: Codec chosen for lappy was ulaw. Codec chosen for deskbox was alaw, again presumably because of favorable transcoding costs.

deskbox -> lappy
It was GSM for both endpoints in all cases because deskbox favors gsm and lappy supports it.</pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>/team/group/media_formats-reviewed-trunk/channels/chan_iax2.c <span style="color: grey">(418711)</span></li>

</ul>

<p><a href="https://reviewboard.asterisk.org/r/3800/diff/" style="margin-left: 3em;">View Diff</a></p>







  </td>
 </tr>
</table>








  </div>
 </body>
</html>