OscillatorNode.idl 909 B

1234567891011121314151617181920212223242526272829
  1. #import <WebAudio/AudioScheduledSourceNode.idl>
  2. #import <WebAudio/PeriodicWave.idl>
  3. // https://webaudio.github.io/web-audio-api/#enumdef-oscillatortype
  4. enum OscillatorType {
  5. "sine",
  6. "square",
  7. "sawtooth",
  8. "triangle",
  9. "custom"
  10. };
  11. // https://webaudio.github.io/web-audio-api/#OscillatorOptions
  12. dictionary OscillatorOptions : AudioNodeOptions {
  13. OscillatorType type = "sine";
  14. float frequency = 440;
  15. float detune = 0;
  16. PeriodicWave periodicWave;
  17. };
  18. // https://webaudio.github.io/web-audio-api/#OscillatorNode
  19. [Exposed=Window]
  20. interface OscillatorNode : AudioScheduledSourceNode {
  21. constructor(BaseAudioContext context, optional OscillatorOptions options = {});
  22. attribute OscillatorType type;
  23. // FIXME: readonly attribute AudioParam frequency;
  24. // FIXME: readonly attribute AudioParam detune;
  25. // FIXME: undefined setPeriodicWave(PeriodicWave periodicWave);
  26. };