[linux-audio-announce] Vstserver v0.2.0

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: [linux-audio-announce] Vstserver v0.2.0
From: Kjetil S. Matheussen (k.s.matheussen_AT_notam02.no)
Date: Wed Dec 04 2002 - 19:13:07 EET


http://www.notam02.no/arkiv/src/

VSTServer V0.2.0.
-----------------
        GRM tools 1 runs with the 25.11.2002 release of wine.

ABOUT

        Vstserver is a program that must be running when using programs
        using vstlib.

        Vstlib is a library that can be used by programs to run windows
        vst audio plugins under linux/freebsd/i386solaris/etc.

RUNNING
        First you should set the "VST_PATH" environment variable pointing
        to the directory where your VST dll files are placed.

        Then to run the vstserver program, you have to cd into the directory
        where the "vstservant.so" file is placed (and thats most probably the
        directory where this README file is placed), and then run the
        "vstserver" program.

DEVELOPMENT
        Vstserver is released under the GPL, and vstlib under LGPL.
        If there comes many source-contributions, I will probably make it
        a sourceforge project.

        To use vstlib in a program, look at the tests/exampleclient
        program, and various vst plug-in documentation.

        The interface to the vstlib consists only of two functions
        (new/delete), the rest is like you would do when programming for
        windows, macos(X), beos, irix, etc.

        You do currently not have access to the audioMaster callback
        function from a client. If you need access to it, please contact
        me, and I'll extend the library and the vstservant program.

CURRENT STATUS
        Vstserver seems to be very stable. Very few vst plug-ins and
        instruments wont run, and I am not able to hear any latency. And
        plug-ins does not seem to cause more cpu-power than under
        windows.

BUGS
        1. When loading a lot of plugins simultaniously, the X server
        crashes (!).
        I manage to do that when running the ladspa "listplugins" program
        _many_ times in a row like this: "listplugins &". I dont know the
        cause of it.
        (running redhat 7.2, with latest XFree rpm updates installed)

        2. Shared memory handlig might be faulty. I suspect that it doesnt
        free resources because clients sometime complains about not getting
        shared memory. (see server/shmhandler.c)

        3. The graphics code to support gui is just hacked together by
        looking at the winemine source-code included with the wine
        distribution. I have no windows programming experience or
        documentation about the windows API, so if someone that have
        windows programming experience would have a look at the code and
        check that its fine/not fine, that would be, eh,
        fine. (The code I'm unsure about is server/win/winwin.c and
        server/win/main.c, about 200 lines of code.)

NOT WORKING DLLS

        - "SimSynth VSTi demo.dll" - The standalone version wont even run under wine,
                                     so theres currently not much hope for this one.

        Please send me dlls that wont work.

FUTURE
        -Make a DX-plugin server. (would be fun running pi-warp under
         linux).
        -Add gui to the plugins not providing gui themselves. (help
         wanted, windows programming)

HISTORY
        0.1.1 -> 0.2.0:
        -When upgrading my wine installation from the 31.10.2002 version
         to the 25.11.2002 version, the
         "err:local:LOCAL_GetBlock not enough space in GDI heap 01f7 for
         24 bytes" problem got much worse. So I changed the vstserver
         program to be a normal unix program that starts a winelib program
         called "vstservant.so" for each new request
         it gets. This seems to have solved the GDI heap problem totally.
        -Extended the audioMaster function yet more by copying a lot of
         opcode handlings from the vst~ pd external by Mark Williamson. I
         didn't ask before doing this,
         but according to the pdf file, he used some code from the plugin~
         external, which then should automaticly make vst~ GPL. The
         positive result is that more
         plugins works. The negative result is that you now need to patch
         the steinberg "vst/aeffectx.h" file before compiling, as there
         are some strange things in it.
        -Some smaller fixes here and there.

        0.1.0 -> 0.1.1:
        -Replaced the old audioMaster function in the server with the one
         coming from the plugin~ source by Jarno Seppänen. Result is that GRM tools 2
         now works. (I thought there were a different reason it didnt work
         before, without going into further detail...)
         Seems like vst instruments works better now too. The mousedrag
         problem seems to have dissapeared.

        -Removed some debug printings.

        0.0.2 -> 0.1.0:
        -Added graphics support to the plug-ins. (effEditOpen/effEditClose
         dispatch opcodes works.)
        -Fixed the makefile a bit.

        0.0.1 -> 0.0.2:
        -Fixed the process function in vstlib.
        -Fixed the problem with processreplace could fail if sampleframes
         was to high.
        -Added processreplace simulation to vstlib, in case plugin doesnt
         implement processreplace itself.

CREDITS
        vstserver and vstlib are made by Kjetil S. Matheussen / Notam.
        k.s.matheussen_AT_notam02.no

        Some programming hints is gathered by looking at the pd vst-object
        plugin~ source and the jack soundserver source.

-- 

_______________________________________________ linux-audio-announce mailing list linux-audio-announce_AT_music.columbia.edu http://music.columbia.edu/mailman/listinfo/linux-audio-announce


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Wed Dec 04 2002 - 20:14:17 EET