[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
I've made a sound/audio thing
From: |
Zelphir Kaltstahl |
Subject: |
I've made a sound/audio thing |
Date: |
Sun, 4 Sep 2022 12:16:16 +0000 |
Hello Guile users!
Recently I've looked at "how to write a wav file?" and wrote some code to output
in RIFF-WAVE fie format:
https://notabug.org/ZelphirKaltstahl/guile-examples/src/master/sound/riff-wave.
It only writes a file currently, and does not read in any files yet. Hopefully I
will work on it more soon.
My idea is, that Guile should be kind of perfect for making functions, which
output sample values. Just combining functions. I want to make more effects like
fade-in and fade out, amplify, change of sample rate or whatever else is simple
to do. Already implemented things like a function to make another function
"stepped" (is what I call it), so that one only gives an integer and it will
give the sample of the index that is that integer, considering a previously
given step size.
I imagine, that it should be possible, to build good abstractions over sample
values and then give helper functions allowing anyone to make their own effects
and so on. When reading in files is implemented, one could easily write a little
Guile code and apply effects to any wav file.
I know libsndfile exists and perhaps I should be using FFI to interface with it,
but I still have not gotten around to learning more about how to use FFI and
also I made the mistake of looking at the implementation of wav file format in
the libsndfile library … biiig mistake :D Well, I also would probably not have
learned as much about wav files and some bytevector and vector stuff, if I had
used libsndfile. Though more about FFI …
Will see how far I take it : )
Best regards,
Zelphir
--
repositories: https://notabug.org/ZelphirKaltstahl
- I've made a sound/audio thing,
Zelphir Kaltstahl <=