Files
soundgen/SoundGen/Program.fs
2022-11-01 09:20:22 +04:00

64 lines
1011 B
Forth

open System.IO
open SoundGen
open PCMWave
open Fx
open SoundGen.Fx
open Synth
let song =
[ note 3 0.5
note 3 0.5
note 15 0.5
note 15 0.5
note 6 0.5
note 18 0.5
note 3 0.5
note 15 0.5
note (-1) 0.5
note (-1) 0.5
note 11 0.5
note 15 0.5
note (-2) 0.5
note (-2) 0.5
note 10 0.5
note 15 0.5
//
note 3 0.5
note 3 0.5
note 15 0.5
note 15 0.5
note 6 0.5
note 18 0.5
note 3 0.5
note 15 0.5
note (-1) 0.5
note (-1) 0.5
note 11 0.5
note 15 0.5
note (-2) 0.5
note (-2) 0.5
note 10 0.5
note 15 0.5 ]
|> Seq.concat
let writeToFile (ms: MemoryStream) =
use fs =
new FileStream(Path.Combine(__SOURCE_DIRECTORY__, "test.wav"), FileMode.Create)
ms.WriteTo(fs)
song
|> Seq.map (fun x ->
let x1 = sineWaveShape 1.5 2.5 x
saturate ({ Gain = 1.0 }, x1))
//|> reverb
|> createWAV
|> writeToFile