Improving Squeak's Multimedia - Part 2 Followup
Dean_Swan at Mitel.COM
Dean_Swan at Mitel.COM
Fri Feb 25 19:31:51 UTC 2005
Brad,
I agree with you regarding cleaning up the current audio classes (i.e.
SoundPlayer>>sampleRate dependencies, etc.). Regarding Russell's ideas
about a framework, examples would be Quicktime (Win/Mac),
DirectSound(Win), PortAudio(Win/Linux), Jack(Linux), CoreAudio(Mac OS-X).
I do think that we need to look at AbstractSound as Squeak's current audio
framework. If we want insight into the original thinking behind
AbstractSound, I'm sure John Maloney could help us out since he is the
originator of much if not all of AbstractSound. I would be willing to act
as a point of contact for this to keep John from being inundated with
queries.
I think Russell captured what my role can be here well: "low level stuff".
For example, Russell's desire for an equalizer - I could easily provide
some basic filters suitable for constructing a multiband parametric or
graphic equalizer (sidenote - a "graphic" equalizer is probably more
efficiently implemented using FFTs), and things of this sort. I could
also probably do a simple overlap-add FFT framework, which is a useful
foundation for many audio processing algorithms. I have implemented this
kind of thing in C and assembly on many DSPs, so it wouldn't be hard to do
the same in Smalltalk.
I will try to spend some time going over what is already in Squeak for
audio and come up with some outline of what I think needs work. Off the
top of my head, I think there is a need for more consistency in how audio
is handled in Squeak, and better support for multiple simultaneous audio
streams (either recording or playback). In this respect, I think OS-X
CoreAudio and DirectSound can prodvide some ideas.
Yes I can do some coding, but I'm also willing to provide designs for
people who have time to code but no low level DSP algorithm expertise. We
may be able to accomplish more sooner that way. I don't have a lot of
spare time to devote to this, so it might take longer for me to give any
visible results if my deliverables are only working code. As an example,
I think I've offered some inspiration to John Maloney for some things that
are already in Squeak. I think we discussed the concept of the phoneme
recognizer about 4 years ago in the context of a way to synchronize lip
movements for the animated faces. John is the kind of guy who can take
rough ideas like that and turn them into working code quickly. If we have
somebody like that on your team, I think I can help with things like
algorithm details.
Regarding prioritizing my interests - nope. I view that as your job in
the role of team/project leader. You've already expressed that your
primary agenda item is audio, and that's good enough for me. I think we
need to cover the basics of audio capture, playback, and file I/O, and I
agree that these items probably largely amount to understanding what we
have and cleaning it up a bit. From my POV, adding "cool low level stuff"
would come next.
-Dean
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20050225/9e406a00/attachment.htm
More information about the Squeak-dev
mailing list
|