feat: sinewaveshaper
This commit is contained in:
@@ -9,6 +9,9 @@ type Saturator = { Gain: float }
|
|||||||
|
|
||||||
let saturate (param: Saturator, x: float) = tanh (param.Gain * x)
|
let saturate (param: Saturator, x: float) = tanh (param.Gain * x)
|
||||||
|
|
||||||
|
let sineWaveShape x =
|
||||||
|
x + 2.8 * sin (2. * x)
|
||||||
|
|
||||||
//
|
//
|
||||||
// let process(effects:Effect list, sound:float seq) =
|
// let process(effects:Effect list, sound:float seq) =
|
||||||
// let mutable output = sound
|
// let mutable output = sound
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
|
open System.IO
|
||||||
open System.IO
|
|
||||||
open SoundGen
|
open SoundGen
|
||||||
open PCMWave
|
open PCMWave
|
||||||
open Fx
|
open Fx
|
||||||
|
open SoundGen.Fx
|
||||||
open Synth
|
open Synth
|
||||||
|
|
||||||
let song =
|
let song =
|
||||||
@@ -54,6 +54,9 @@ let writeToFile (ms: MemoryStream) =
|
|||||||
|
|
||||||
ms.WriteTo(fs)
|
ms.WriteTo(fs)
|
||||||
|
|
||||||
song |> createWAV |> writeToFile
|
song
|
||||||
|
|> Seq.map (fun x ->
|
||||||
|
let x1 = sineWaveShape x
|
||||||
|
saturate ({ Gain = 1.0 }, x1))
|
||||||
|
|> createWAV
|
||||||
|
|> writeToFile
|
||||||
|
|||||||
Reference in New Issue
Block a user