Re: Newcomer (Getting Started with Siren)

Stephen Travis Pope <[email protected]> Sat, 10 Jan 2004 11:15:51 -0800
Newsgroups gmane.comp.audio.siren
Message-ID <[email protected]>
Salut Gauthier!

1. Getting started with Siren

If you're new to Smalltalk, I'd recommend taking the time to read 
through a Smalltalk textbook or on-line tutorial. To approach Siren, 
you'll need to:
	Be able to read complex expressions the Smalltalk language
	Be familiar with the core hierarchies of magnitudes, collections, and 
streams
	Be comfortable using browsers and (esp.)  debuggers

There are numerous references in the Siren manual (see, of course, 
http://create.ucsb.edu/Siren/Siren_Workbook.html).

2. Loading the parcels

On my machine, the GH ComposedTextEditor parcel file is in the parcel

	/Developer/VisualWorks/7.2/goodies/other/Heeg/GHNamespaces.pcl

Load this parcel, then try to open a Workbook (available from the 
Launcher's Tools menu) and loading the Workbook.bos outline file (menu 
item Page/LoadAll).

3. Getting the IO external interfaces working

To use the DLLCC External Interfaces, you need to
	Compile dynamic libraries (.dll, .so, or .dylib) for libSndFile, 
PortAudio, and PortMIDI
	Recompile the ExternalInterface classes to point to libraries

For the first step, look at the Makefile in the dllcc directory. Edit 
this for your platform, or make a project file in your favorite C/C++ 
development environment. Use the appropriate linker flags to create DLL 
files for libSndFile, PortAudio, and PortMIDI. (Look at the on-line doc 
for DLLCC for your platform's build procedures.)

In Siren, edit the class definitions of the ExternalInterface classes 
in the category MusicIO-External, for example,

Smalltalk.Siren defineClass: #LibSndFileInterface
	[ ... ]
	attributes: #(
			#(#includeFiles #('sndfile_lite.h')) "standard header file"
			#(#includeDirectories #('DLLCC')) "default include dir"
			#(#libraryFiles #('sndfile_lite.dylib' 'libsndfile.a')) "edit lib 
names here"
			#(#libraryDirectories #('DLLCC' '/usr/local/lib')) "edit lib dirs 
here"
			#(#beVirtual false)
			#(#optimizationLevel #full))

Edit in your library file and folder names (e.g., for 
'sndfile_lite.dylib') and compile the class definition. You can put the 
libraries in a shared folder, or local to the folder where VisualWorks 
is running.

Now try the class examples in each of the ExternalInterface classes, 
and the SirenUtility test panel (available from the Launcher's Tools 
menu).

Enjoy!

stp

--
   Stephen Travis Pope -- http://create.ucsb.edu/~stp

   Faith, surrender, and hope are only as important to life as, say,
   breathing.


Begin forwarded message:

> From: "[Gauthier]" <[email protected]>
> Date: January 10, 2004 9:45:14 AM PST
> To: <[email protected]>
> Subject: [Siren] Newcomer
>
> Hi,
>
> I found this SIREN project some days ago, and I will to use it as an
> introduction for MIDI programming, I'm not a Smalltalk programmer but 
> I've
> started to play arround with this language as well some days ago 
> (firstly
> with Squeak).
>
> Let me tell that the SIREN api / abstraction layer design seems very
> compelling to me, and I want to thanks those who work hard on it.
>
> I've choose to to try the last release of SIREN, that is v7.2 for
> VisualWorks , so I've downloaded the non commercial Windows version (I 
> don't
> have a mac at this time) and I got it running, I've also downloaded and
> installed the DLLCC parcel in my VisualWorks installation.
>
> Now I'm trying to install the siren parcel that come in the 
> siren7.2.tgz ,
> so I've first read the README and the Workbook but I'm stuck with a 
> very
> simple question:
>
> Where can I find the GHeeg ComposedTextEditor parcel?
> I've only found 1 page in google that mention this component:
> http://www.cincomsmalltalk.com:8080/CincomSmalltalkWiki/VW+GoodiesOther
>
> but it doesn't include a download link for this component.
>
> Will someone be kind enough to give me a link on a downloadable 
> version or
> send it to me via email?
>
> I've also another question about DLLCC (sorry for me asking here...):
> I've downloaded the CSL.libs_MSW.zip wich contain the compiled 
> libraries
> that SIREN use for interoperrating with hardware, fileformats and 
> computing
> fft, I also have the DLLCC folder that come with siren7.2.tgz distrib.
>
> My question is:
>
> Where should I put theses files in my visualwork installation 
> directory?
>
> Thanks
>
> Gauthier