Pipe stdin to soundcard using SDL
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

orgue.py 592B

12345678910111213141516171819202122232425262728293031
  1. import sys
  2. from synth import *
  3. base_mod = 1.0
  4. err = False
  5. if len(sys.argv) > 1:
  6. try:
  7. base_mod = float(sys.argv[1])
  8. except:
  9. err = True
  10. if len(sys.argv) > 2 or err:
  11. print("Usage : %s [freq_mul]" % sys.argv[0])
  12. bm = base_mod
  13. while True:
  14. wv0 = sinwave(0.001 * bm)
  15. wv1 = sinwave(0.1*bm)
  16. wv2 = sinwave(0.011*bm)
  17. lfo0 = sinwave(0.01*bm)
  18. lfo1 = sinwave(0.02*bm)
  19. wv2 = vol_lfo(wv2, lfo0)
  20. mix = mixer(wv0, wv1, wv2)
  21. r = vol_lfo(mix, lfo1)
  22. samples = output_sampler(r)
  23. while True:
  24. sys.stdout.buffer.write(next(samples))