<html>
<body>
I had this issue a (couple of?) weeks ago... the solution then
(from jm) was-<br><br>
<font face="Arial, Helvetica">g = DIV32(corr[i-start],
SHR32(MULT16_16(spx_sqrt(10 + e0),
spx_sqrt(10+energy[i-start])),6));<br><br>
</font>This effects more than fixed point- basically, once this goes bad
it will eventually<br>
cause the codec to only produce fuzz in floating point, and it will
result in <br>
ol_pitch_coef getting set to NAN, which is then preserved for all of
eternity <br>
(or until the speex enc gets destroyed) in vbr->soft_pitch- i.e. you
can't just <br>
reset the state to fix it.<br><br>
Tom<br><br>
At 10:31 PM 12/12/2005, Alex Bakaev wrote:<br><br>
<blockquote type=cite class=cite cite=""><font size=2>Hi!</font>
<br><br>
<font size=2>It seems that using a different compiler (I assume the
development is done with MSC) uncovers various issues with the floating
point.<br>
</font><br>
<font size=2>Here is the second one I'm seeing - DOMAIN error from
sqrt().</font> <br><br>
<font size=2>In the open_loop_nbest_pitch(), this line:</font> <br><br>
<font size=2> g =
DIV32(corr[i-start],
10+SHR32(MULT16_16(spx_sqrt(e0),spx_sqrt(energy[i-start])),6));</font>
<br><br>
<font size=2>The values are:</font> <br><br>
<font size=2>e0 is 7.2</font> <br>
<font size=2>i is 142,</font> <br>
<font size=2>start is 17</font> <br>
<font size=2>energy [i-start] is -2.1004911E-015</font> <br><br>
<font size=2>Hope this information is enough to go on.</font> <br><br>
<font size=2>Tia,</font> <br>
<font size=2>.a</font> <br>
_______________________________________________<br>
Speex-dev mailing list<br>
Speex-dev@xiph.org<br>
<a href="http://lists.xiph.org/mailman/listinfo/speex-dev" eudora="autourl">
http://lists.xiph.org/mailman/listinfo/speex-dev</a></blockquote></body>
</html>