hans' pure data projects (old)
Here is some info on some pure data projects that I am working on.
Works
What I do when I am not working on Pd: @||@
Windows Installer Betas
- download here: PureData-0.37-2003.10.19.exe
- pd-externals collection now built from CVS. The Gem help patches are also from CVS.
- Double-clicking .pd files now opens the file in Pd. Unforunately, every file you double-click will launch a new instance of Pd.
- More docs included, along with links on the Start Menu.
I have put together a reasonably complete Windows installer for Pd. It includes a lot of stuff from CVS, including most externals, Gem, PDDP, abstractions and tutorials. Give it a whirl and let me know how it goes.
MacOS X Installer Betas
- download here: Pure Data Installer 0.37-2003.10.02.dmg
- For a complete listing of included objects and libs, check this page: http://www.pure-data.org/Members/hans/objects/
- I found a new issue. The Tcl/Tk that came with the MacOS X 0.36 installers put Wish Shell.app into /Applications. The standard Tcl/Tk packages put it in /Applications/Utilities. If you previously had the 0.36 MacOS X packages installed, you should manually delete /Applications/Wish Shell.app.
-
If you have Pd already installed, be forewarned that this new installer installs Tcl/Tk 8.4.1 by default. If you don't want Tcl/Tk reinstalled, then click Customize in the Installation Type screen, and uncheck
Tcl.pkgandTk.pkg. This is the package that is included: TclTkAqua-8.4.1.dmg (Pd seems to have problems with 8.4.4 and 8.4.2). - I recommend that you uninstall any previous Pd packages before installing this one. You can uninstall OS X packages with OSXPM from OSXGnu.org. (Currently, OSXPM can not delete packages created by Jaguar's PackageMaker.app. The 0.36 Pd packages are such packages, so you'll have to delete them manually.)
I have built a MacOS X Installer generator, so that all you need to do in order to build a complete .dmg/.pkg MacOS X installer is download the files from CVS and type "make"
This version has gotten to beta quality with one notable bug that comes from pd-0.37-test?: many of the help pages are not found when right-clicking and selecting "Help". Once that bug is fixed, this will be the most complete Pd distro ever (IMHO).
The Installer includes most of what's in the CVS: pd-externals (ext13, maxlib, ggee, etc. etc.), cyclone, pool, unauthorized, xsample, zexy, FLEXT, PDDP, abstractions, and tutorials. I also threw in a test version of a double-clicker and a bunch of binaries that I got from the web, these might not work for you: IEMlib, Gem, PDP, and vasp. It installs into Miller's default location: /usr/local/lib/pd.
rawHID(e)
I just finished my first version of some HID objects based on the Linux input events system. They give you the data from the input event system, rather than from the GUI. This means that your mouse/tablet movements are not constrained to the size and resolution of your screen.
There are two similar objects that I know of: [MouseState]
from cyclone, and J. Sarlo's [joystick] . These objects differ in key ways:
[MouseState] is a version of the Max/MSP object for
compatibility. So it is limited to only one mouse button, just like the
Max/MSP object. It also outputs the position data in terms of absolute screen
pixels. The [linuxmouse] outputs directly from the event system, so the
position data is relative, and not tied to screen location or focus. Also,
[linuxmouse] allows you to use the mouse wheel and up to 7
mouse buttons.
[joystick]'s outlets are dynamically created, so
that different joysticks will cause different amounts of outlets.
[linuxjoystick] and [linuxjoystick] have a
fixed amount of outlets, so that your patch doesn't need to change with
each joystick. You can make a custom object for your joystick using an
abstraction based on [linuxevent]. See the help for an example.
[linuxevent] gives you the raw input event data on four
outlets: time, type, code, and
value. The time outlet doesn't work yet, but
it isn't essential. Christian Klippel has written a similar object for
jMax.
Currently they are only for Linux, but I am working on the libSDL port
now, which should work on Windows, GNU/Linux, and MacOS X. I have
completed [linuxmouse], [linuxjoystick], and [linuxevent]. A
[rawtablet] object would be trivial, but I don't have a
tablet, so I can't test it. But you can make a tablet abstraction using
[linuxevent].
Download linuxhid-2003.11.17.tar.gz
Force-Feedback
Gerard van Dongen-Gilcher's Force-Feedback Externals
I have started working with force-feedback AKA haptic feedback thanks to Gerard van Dongen-Gilcher's force-feedback objects.
I wrote a external for linux for the iFeel mice. It works in conjuction with this linux iFeel driver. In its current form, the ifeel.o kernel module crashes if you input data too quickly, I am looking into this. I suspect it is a bug in the linux kernel module.