csound-expression 5.0.0 → 5.0.1
raw patch · 3 files changed
+18/−9 lines, 3 filesdep ~csound-expression-typedPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: csound-expression-typed
API changes (from Hackage documentation)
- Csound.Air.Envelope: type family HumanizeValueTimeOut a :: *;
- Csound.Air.Envelope: }
- Csound.Air.ModArg: type family ModArgOut4 a b :: *;
- Csound.Air.ModArg: }
- Csound.Control.Instr: type family CpsInstrOut a :: *;
- Csound.Control.Instr: }
- Csound.Control.Midi: type family MidiInstrOut a :: *;
- Csound.Control.Midi: }
- Csound.SigSpace: type family AtOut a b c :: *;
- Csound.SigSpace: }
- Csound.Types: infix 4 `greaterThanEquals`
+ Csound.Air.Wav: dumpWav :: String -> (Sig, Sig) -> SE (Sig, Sig)
+ Csound.Air.Wav: dumpWav1 :: String -> Sig -> SE Sig
- Csound.Air.Envelope: class HumanizeTime a where type HumanizeTimeOut a :: * where {
+ Csound.Air.Envelope: class HumanizeTime a where type family HumanizeTimeOut a :: *
- Csound.Air.Envelope: class HumanizeValue a where type HumanizeValueOut a :: * where {
+ Csound.Air.Envelope: class HumanizeValue a where type family HumanizeValueOut a :: *
- Csound.Air.Envelope: class HumanizeValueTime a where type HumanizeValueTimeOut a :: * where {
+ Csound.Air.Envelope: class HumanizeValueTime a where type family HumanizeValueTimeOut a :: *
- Csound.Air.ModArg: class ModArg1 a b where type ModArgOut1 a b :: * where {
+ Csound.Air.ModArg: class ModArg1 a b where type family ModArgOut1 a b :: *
- Csound.Air.ModArg: class ModArg2 a b where type ModArgOut2 a b :: * where {
+ Csound.Air.ModArg: class ModArg2 a b where type family ModArgOut2 a b :: *
- Csound.Air.ModArg: class ModArg3 a b where type ModArgOut3 a b :: * where {
+ Csound.Air.ModArg: class ModArg3 a b where type family ModArgOut3 a b :: *
- Csound.Air.ModArg: class ModArg4 a b where type ModArgOut4 a b :: * where {
+ Csound.Air.ModArg: class ModArg4 a b where type family ModArgOut4 a b :: *
- Csound.Control.Instr: class AmpInstr a where type AmpInstrOut a :: * where {
+ Csound.Control.Instr: class AmpInstr a where type family AmpInstrOut a :: *
- Csound.Control.Instr: class CpsInstr a where type CpsInstrOut a :: * where {
+ Csound.Control.Instr: class CpsInstr a where type family CpsInstrOut a :: *
- Csound.Control.Instr: class Sigs (SigOuts a) => Outs a where type SigOuts a :: * where {
+ Csound.Control.Instr: class Sigs (SigOuts a) => Outs a where type family SigOuts a :: *
- Csound.Control.Instr: playWhen :: forall a b. Sigs a => BoolSig -> (b -> SE a) -> (b -> SE a)
+ Csound.Control.Instr: playWhen :: Sigs a => BoolSig -> (b -> SE a) -> (b -> SE a)
- Csound.Control.Midi: class MidiInstr a where type MidiInstrOut a :: * where {
+ Csound.Control.Midi: class MidiInstr a where type family MidiInstrOut a :: *
- Csound.SigSpace: class SigSpace b => At a b c where type AtOut a b c :: * where {
+ Csound.SigSpace: class SigSpace b => At a b c where type family AtOut a b c :: *
Files
- csound-expression.cabal +2/−2
- src/Csound/Air/Misc.hs +7/−7
- src/Csound/Air/Wav.hs +9/−0
csound-expression.cabal view
@@ -1,5 +1,5 @@ Name: csound-expression-Version: 5.0.0+Version: 5.0.1 Cabal-Version: >= 1.6 License: BSD3 License-file: LICENSE@@ -79,7 +79,7 @@ Ghc-Options: -Wall Build-Depends: base >= 4, base < 5, process, data-default, Boolean >= 0.1.0, colour >= 2.0, transformers >= 0.3, containers,- csound-expression-typed >= 0.0.9.2, csound-expression-dynamic >= 0.1.6, temporal-media >= 0.6.1,+ csound-expression-typed >= 0.0.9.3, csound-expression-dynamic >= 0.1.6, temporal-media >= 0.6.1, csound-expression-opcodes >= 0.0.3.1 Hs-Source-Dirs: src/ Exposed-Modules:
src/Csound/Air/Misc.hs view
@@ -521,16 +521,16 @@ ------------------------------------------------------ -- wave shaper --- | Wave shaper. The signal should be bepolar. It ranges within the interval [-1, 1].+-- | Wave shaper. The signal should be bipolar. It ranges within the interval [-1, 1]. -- -- > wshaper table amount asig -- -- wave shaper transforms the input signal with the table. --- The amount of transformation scales the signal from 0 to 10. +-- The amount of transformation scales the signal from 0 to 1. -- the amount is ratio of scaling. It expects the values from the interval [0, 1]. -- wshaper :: Tab -> Sig -> Sig -> Sig-wshaper t amt asig = tablei (0.5 + amt * asig / 20) t `withD` 1 +wshaper t amt asig = tablei (10 * amt * asig / 20) t `withDs` [1, 0.5] -- | Wave shaper with sigmoid. -- @@ -546,23 +546,23 @@ -- -- > genSaturator 5 mildSaturator :: Sig -> Sig -> Sig-mildSaturator = genSaturator 10+mildSaturator = genSaturator 1 -- | Alias for -- -- > genSaturator 10 saturator :: Sig -> Sig -> Sig-saturator = genSaturator 15+saturator = genSaturator 1.5 -- | Alias for -- -- > genSaturator 50 hardSaturator :: Sig -> Sig -> Sig-hardSaturator = genSaturator 35+hardSaturator = genSaturator 3.5 -- | Alias for -- -- > genSaturator 100 hardSaturator2 :: Sig -> Sig -> Sig-hardSaturator2 = genSaturator 65+hardSaturator2 = genSaturator 6.5
src/Csound/Air/Wav.hs view
@@ -31,6 +31,7 @@ -- * Writing sound files SampleFormat(..), writeSigs, writeWav, writeAiff, writeWav1, writeAiff1,+ dumpWav, dumpWav1, -- * Utility lengthSnd, segments,@@ -250,6 +251,14 @@ -- | Writes wav files. writeWav :: String -> (Sig, Sig) -> SE () writeWav file = writeSigs Wav Int16 file . \(a, b) -> [a, b]++-- | Dumps signals to file and sends the audio through. Useful to monitor the signals.+dumpWav :: String -> (Sig, Sig) -> SE (Sig, Sig)+dumpWav file asig = writeWav file asig >> return asig++-- | Dumps mono signal to file and sends the audio through. Useful to monitor the signals.+dumpWav1 :: String -> Sig -> SE Sig+dumpWav1 file asig = writeWav file (asig, asig) >> return asig -- | Writes aiff files. writeAiff :: String -> (Sig, Sig) -> SE ()