Changes between Version 6 and Version 7 of Tone_Generator


Ignore:
Timestamp:
Sep 22, 2008 9:40:56 AM (11 years ago)
Author:
bennylp
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Tone_Generator

    v6 v7  
    55== The Algorithms == 
    66 
    7 The tone generator (tonegen.c) supports several algorithms, and since version 1.0-rc3, the use of these algorithms is controlled by {{{PJMEDIA_TONEGEN_ALG}}} setting: 
    8  - {{{PJMEDIA_TONEGEN_SINE}}}: The good-old generation using math's sine(), floating point. This has very good precision but it's the slowest and requires floating point support and linking with the math library. 
    9  - {{{PJMEDIA_TONEGEN_FLOATING_POINT}}}: Floating point approximation of sine(). This has relatively good precision and much faster than plain sine(), but it requires floating-point support and linking with the math library. 
    10  - {{{PJMEDIA_TONEGEN_FIXED_POINT_CORDIC}}} (new in 1.0-rc3): Fixed point using sine signal generated by Cordic algorithm. This algorithm can be tuned to provide balance between precision and performance by tuning the {{{PJMEDIA_TONEGEN_FIXED_POINT_CORDIC_LOOP}}} setting, and may be suitable for platforms that lack floating-point support.  
    11  - {{{PJMEDIA_TONEGEN_FAST_FIXED_POINT}}}: Fast fixed point using some approximation to generate sine waves. The tone generated by this algorithm is not very precise, however the algorithm is very fast. 
     7The tone generator (tonegen.c) supports several algorithms, and since version 1.0-rc3, the use of these algorithms can be controlled by application by using the {{{PJMEDIA_TONEGEN_ALG}}} macro setting: 
     8 '''{{{PJMEDIA_TONEGEN_SINE}}}''':: 
     9 The good-old generation using math's sine(), floating point. This has very good precision but it's the slowest and requires floating point support and linking with the math library. 
     10 
     11 '''{{{PJMEDIA_TONEGEN_FLOATING_POINT}}}''' (default when floating point is enabled):: 
     12 Floating point approximation of sine(). This has relatively good precision and much faster than plain sine(), but it requires floating-point support and linking with the math library. 
     13 
     14 '''{{{PJMEDIA_TONEGEN_FIXED_POINT_CORDIC}}}''' (new in 1.0-rc3, and the default when floating point is disabled):: 
     15 Fixed point using sine signal generated by a 28-bit [http://en.wikipedia.org/wiki/CORDIC CORDIC] algorithm. This algorithm can be tuned to provide balance between precision and performance by tuning the {{{PJMEDIA_TONEGEN_FIXED_POINT_CORDIC_LOOP}}} setting, and it is suitable for platforms that lack floating-point support.  
     16 
     17 '''{{{PJMEDIA_TONEGEN_FAST_FIXED_POINT}}}''':: 
     18 Fast fixed point using some approximation to generate sine waves. The tone generated by this algorithm is not very precise, however the algorithm is very fast. 
    1219 
    1320== Accuracy ==