<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Hello Forrest,<br>
    some years ago i developed a network media player based on a
    STM32F407ZGT6 (168MHz clock) and opus 1.1.<br>
    I used just the fixed point code and did no particular optimization
    on the opus code itself because the performance was already quite
    good, see figures below.<br>
    The figures are for real time playback with different frame sizes
    and various constant bit rates. <br>
    I didn't play that much with encoding, but I'm convinced that the
    32F407 is powerful enough to do the job, if you use all its
    capabilities.<br>
    <br>
    Most important is to use the hardware features of the processor like
    the DMA controller or the CRC calculation unit, if you deal with
    ogg, to unload the CPU.<br>
    <br>
    SILK narrow band, a) mono b) stereo:<br>
    <img src="cid:part1.00060301.00060006@gmail.com" alt=""><br>
    SILK medium band, a) mono b) stereo:<br>
    <img src="cid:part2.02070203.05030401@gmail.com" alt=""><br>
    Hybride wide band, a) mono b) stereo:<br>
    <img src="cid:part3.00020103.08040801@gmail.com" alt=""><br>
    Hybride super wide band, a) mono b) stereo:<br>
    <img src="cid:part4.06080403.00080807@gmail.com" alt=""><br>
    Hybride full band, a) mono b) stereo:<br>
    <img src="cid:part5.09080401.01070904@gmail.com" alt=""><br>
    <br>
    CELT full band mono:<br>
    <img src="cid:part6.06030701.01010408@gmail.com" alt=""><br>
    CELT full band stereo:<br>
    <img src="cid:part7.07070802.07010508@gmail.com" alt=""><br>
    Regards,<br>
    Thomas<br>
    <br>
    <div class="moz-cite-prefix">Am 06.01.2018 um 10:02 schrieb forrest:<br>
    </div>
    <blockquote
      cite="mid:2021815260.3096779.1515229329504.JavaMail.xmail@wmthree-12"
      type="cite">
      <style>table.customTableClassName {margin-bottom: 10px;border-collapse: collapse;display: table;}.customTableClassName td, .customTableClassName th {border: 1px solid #ddd;}</style>
      <div id="write-custom-write" tabindex="0" style="font-size: 12px;
        font-family: 宋体; outline: medium none currentcolor;">
        <p style="margin:0px;">Dear Developers,</p>
        <p style="margin:0px;"><br>
        </p>
        <p style="margin:0px;">I make a opus 1.2.1 codec build for
          STM32F407(fixed-point and disable float APIs).</p>
        <p style="margin:0px;">it seems too slow for the VOIP
          application.</p>
        <p style="margin:0px;"><br>
        </p>
        <p style="margin:0px;">Case 1:<br>
        </p>
        <p style="margin:0px;">48KHz Sampling rate, Stereo, VBR, frame
          size: 20ms, Bit-rates: 96kbps</p>
        <p style="margin:0px;">Encode cost: 2.11x real time</p>
        <p style="margin:0px;">Decode cost: 1.54x real time</p>
        <p style="margin:0px;">Encode + Decode: 3.65x<br>
        </p>
        <br>
        <p style="margin:0px;">Case 2:</p>
        <p style="margin:0px;">8KHz Sampling rate, Mono, VBR, frame
          size: 20ms, Bit-rates: 16kbps</p>
        <p style="margin:0px;">Encode cost: 1.08x real time</p>
        <p style="margin:0px;">Decode cost: 0.14x real time</p>
        <p style="margin:0px;">Encode + Decode: 1.24x</p>
        <p style="margin:0px;"><br>
        </p>
        <p style="margin:0px;">Are there any available optimizations or
          suggestions for Cortex-M4?</p>
        <p style="margin:0px;"><br>
        </p>
        <p style="margin:0px;">As I knonw, TI TM4C129x is based on
          Cortex-M4 too:</p>
        <p style="margin:0px;"><a moz-do-not-send="true"
            href="http://www.ti.com/tool/TIDM-TM4C129POEAUDIO"
            _src="http://www.ti.com/tool/TIDM-TM4C129POEAUDIO">http://www.ti.com/tool/TIDM-TM4C129POEAUDIO</a></p>
        <p style="margin:0px;"><br>
        </p>
        <p style="margin:0px;">The performance of opus on it is good
          enough for mono 48KHz sampling rate.</p>
        <p style="margin:0px;">CPU usage is only about 70% of 120MHz
          when encode/decode at same time.<br>
        </p>
        <p style="margin:0px;"><br>
        </p>
        <p style="margin:0px;">Sincerely</p>
        <p style="margin:0px;">Forrest</p>
        <p style="margin:0px;"><br>
        </p>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
opus mailing list
<a class="moz-txt-link-abbreviated" href="mailto:opus@xiph.org">opus@xiph.org</a>
<a class="moz-txt-link-freetext" href="http://lists.xiph.org/mailman/listinfo/opus">http://lists.xiph.org/mailman/listinfo/opus</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>