derived

package
v0.0.0-...-486f928 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 14, 2022 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func LinearPanning

func LinearPanning(input1, input2, panning float64) (float64, float64)

func NewCombinedGenerators

func NewCombinedGenerators(g ...generators.Generator) generators.Generator

func NewConstantPitchGenerator

func NewConstantPitchGenerator(g generators.Generator, c float64) generators.Generator

func NewGeneratorWithPitchControl

func NewGeneratorWithPitchControl(g generators.Generator, control func(float64) float64) generators.Generator

func NewHarmonicGenerator

func NewHarmonicGenerator(g generators.Generator, pitchFactor, gainFactor float64) generators.Generator

func NewHarmonicsGenerator

func NewHarmonicsGenerator(g func() generators.Generator, harmonics int) generators.Generator

func NewPitchControlledPanningGenerator

func NewPitchControlledPanningGenerator(g generators.Generator) generators.Generator

func NewTransposingGenerator

func NewTransposingGenerator(g generators.Generator, semitones, gainFactor float64) generators.Generator

func NewVocoder

func NewVocoder(source, vocoder generators.Generator) generators.Generator

A vocoder modulates a source generator. The pitchbend and gain of the source generator are never modified by this generator.

func SinusoidalPanning

func SinusoidalPanning(input1, input2, panning float64) (float64, float64)

func SquareRootPanning

func SquareRootPanning(input1, input2, panning float64) (float64, float64)

Types

type EnvelopeGenerator

type EnvelopeGenerator struct {
	Generator   generators.Generator
	Pitch       float64
	Attack      float64
	Decay       float64
	Sustain     float64
	SustainHold float64
	Release     float64
	Period      int
}

func NewEnvelopeGenerator

func NewEnvelopeGenerator(g generators.Generator, attack, decay, sustain, release float64) *EnvelopeGenerator

func (*EnvelopeGenerator) GetSamples

func (e *EnvelopeGenerator) GetSamples(cfg *audio.AudioConfig, n int) []float64

func (*EnvelopeGenerator) SetGain

func (e *EnvelopeGenerator) SetGain(f float64)

func (*EnvelopeGenerator) SetPitch

func (e *EnvelopeGenerator) SetPitch(f float64)

func (*EnvelopeGenerator) SetPitchbend

func (e *EnvelopeGenerator) SetPitchbend(f float64)

type WrappedGenerator

type WrappedGenerator struct {
	GetSamplesFunc   func(cfg *audio.AudioConfig, n int) []float64
	SetPitchFunc     func(float64)
	SetPitchbendFunc func(float64)
	SetGainFunc      func(float64)
}

func NewWrappedGenerator

func NewWrappedGenerator(g generators.Generator) *WrappedGenerator

func (*WrappedGenerator) GetSamples

func (b *WrappedGenerator) GetSamples(cfg *audio.AudioConfig, n int) []float64

func (*WrappedGenerator) SetGain

func (b *WrappedGenerator) SetGain(f float64)

func (*WrappedGenerator) SetPitch

func (b *WrappedGenerator) SetPitch(f float64)

func (*WrappedGenerator) SetPitchbend

func (b *WrappedGenerator) SetPitchbend(f float64)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL