potts@itl.itd.umich.edu (Paul Potts) (06/11/91)
Hi netters, I'm a consultant for the University of Michigan's Office of Instructional Technology. I have developed a set of THINK C objects for working with the Sound Manager. These objects encapsulate sound channels and their parameters into easy-to- use objects. The code used is a combination of OOP and procedural programming. The purpose is to provide greater flexibility to Hypercard developers than the "play" command provides, while maintaining a simple interface. The code is constructed in such a way that it can easily be compiled into either an application shell or an XFCN shell. I eventually hope to make the application shell accept Apple Events, so that it would be possible for any application on the local machine or network to send commands to the sound objects. The user interface is a text-based one that mimics, as closely as possible, the way sound commands are constructed and passed to the sound manager by an application, using the I-M constant equivalents for values. For example, here is a typical command sequence that you could pass to the object heirarchy: OpenSession OpenChannel sampledSynth InstallSampleResource 5 DoCommand freqDurationCmd 5000 50 DoCommand ampCmd 100 CloseChannel CloseSession These messages can be sent via a Hypercard script or via an application shell. The one I worked with uses THINK C's standard Console window to communicate with the object heirarchy: this could easily be changed. I am looking for people who would like to work with this code, make comments on it, test it, crash it, and give me feedback. I suppose you could call it alpha-testing. (I would call it beta-testing, but the code is still a little bit flakier than most betas). By agreeing to test it, you are assuming responsibility for crashes too. You should probably back everything up before using it. I am particularly interested in people who have used the sound manager before, who have done OOP, and who have the ability to work with MacsBug to discover the location of crashes. This is my first attempt at object-oriented programming, and probably the largest Mac project I have worked on to date. I know there are problems with it, and would love feedback on the code as well as its performance. If you are interested, drop a message to Paul_Potts@um.cc.umich.edu I will mail you an 800K disk with the code and a beta-test agreement. This is not a commercial product, but I want to be careful not to distribute the code too widely. Thanks in advance, Paul R. Potts Office of Instructional Technology Information Technology Division University of Michigan