adds constant offset ability. No tests!
This commit is contained in:
parent
91aa390554
commit
36c95f1a16
2 changed files with 17 additions and 1 deletions
16
src/nodes.jl
16
src/nodes.jl
|
@ -130,13 +130,27 @@ type GainRenderer <: AudioRenderer
|
|||
end
|
||||
|
||||
function render(node::GainRenderer, device_input::AudioBuf, info::DeviceInfo)
|
||||
input = render(node.in_node, device_input, info)
|
||||
input = render(node.in_node, device_input, info)::AudioBuf
|
||||
return input .* node.gain
|
||||
end
|
||||
|
||||
typealias Gain AudioNode{GainRenderer}
|
||||
export Gain
|
||||
|
||||
#### Offset ####
|
||||
type OffsetRenderer <: AudioRenderer
|
||||
in_node::AudioNode
|
||||
offset::Float32
|
||||
end
|
||||
|
||||
function render(node::OffsetRenderer, device_input::AudioBuf, info::DeviceInfo)
|
||||
input = render(node.in_node, device_input, info)::AudioBuf
|
||||
return input .+ node.offset
|
||||
end
|
||||
|
||||
typealias Offset AudioNode{OffsetRenderer}
|
||||
export Offset
|
||||
|
||||
|
||||
#### Array Player ####
|
||||
|
||||
|
|
|
@ -11,3 +11,5 @@
|
|||
+(in1::NullNode, in2::NullNode) = in1
|
||||
+(in1::AudioNode, in2::NullNode) = in1
|
||||
+(in1::NullNode, in2::AudioNode) = in2
|
||||
+(in1::AudioNode, in2::Real) = Offset(in1, in2)
|
||||
+(in1::Real, in2::AudioNode) = Offset(in1, in2)
|
||||
|
|
Loading…
Reference in a new issue