A simple-to-use sound file writer
Alf P. Steinbach
alfps at start.no
Thu Jan 14 15:01:05 CET 2010
* Steve Holden:
> Alf P. Steinbach wrote:
>> Just as a contribution, since someone hinted that I haven't really
>> contributed much to the Python community.
>> The [simple_sound] code will probably go into my ch 3 at <url:
>> http://tinyurl.com/programmingbookP3>, but sans sine wave generation
>> since I haven't yet discussed trig functions, and maybe /with/ changes
>> suggested by you?
> I wouldn't hold back on the sine wave just because it would represent a
> "forward reference". That's OK sometimes. Why not just put a comment in
> to the effect that "The sine wave is created using a function from the
> math module, which we'll be looking at in ..."?
> Since the sine is the basis for all other waveforms its omission would
> seem more than a little strange to anyone knowledgeable about audio, for
I don't know very much if anything about audio. For example, in the code what I
called "sawtooth" wave is really "triangle" wave. The sawtooth is simpler, what
I called "linear" in the code.
And if you wonder, I was just checking the terminology now before starting to
write it up... Perhaps should have done that before posting code. But once I got
the idea of posting it I just posted it.
Anyway, as I recall any wave can be decomposed into sine waves, or square waves,
or almost whatever kind of waves. Think about a square wave of frequency f and
one of frequency 3f and perhaps third the amplitude (not sure), combined that's
already a good start on a sine wave. With some ugly staircasing but hey. And as
a matter of programming practicality, a triangle wave sounds almost like a sine
wave. It's just a little more edgy or "hairy", a slight buzz.
More information about the Python-list