File: partial.alg

package info (click to toggle)
audacity 2.2.2-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 129,312 kB
  • sloc: ansic: 373,350; cpp: 276,880; sh: 56,060; python: 18,922; makefile: 10,309; lisp: 8,365; xml: 1,888; perl: 1,798; java: 1,551; asm: 545; pascal: 395; sed: 58; awk: 35
file content (20 lines) | stat: -rw-r--r-- 598 bytes parent folder | download | duplicates (12)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
(PARTIAL-ALG
(NAME "partial")
(ARGUMENTS ("rate_type" "sr") ("double" "hz") ("sound_type" "env"))
(SUPPORT-FUNCTIONS "
#include \"sine.h\"
")
(START (MIN env))
(STATE ("long" "phase" "0")
       ("long" "ph_incr" "round((hz * SINE_TABLE_LEN) * (1 << SINE_TABLE_SHIFT) / sr)"))
(TERMINATE (MIN env))
(LOGICAL-STOP (MIN env))
(INNER-LOOP "output = sine_table[phase >> SINE_TABLE_SHIFT] * env;
            phase += ph_incr;
            phase &= SINE_TABLE_MASK;")
(MAINTAIN ("phase" 
 "susp->phase = (susp->phase + susp->ph_incr * togo) & SINE_TABLE_MASK"))
(CONSTANT "ph_incr")
(SAMPLE-RATE "sr")
)