On Sat, Oct 4, 2008 at 7:48 PM, lucas samaruga
The sf patch works on linux but are some loose lines in the makefile.alsa when apply the patch (patch < sfont_1.2.1.2.diff). I really don't know how to make - apply a diff - patch :)
line 37? util_hid.o uana_xform.o uana_extract.o $(SF_OBJ)
lines 202 - 206? uana_xform.o: uana_xform.h uana_xform.cpp $(CXX) $(FLAGS) uana_xform.cpp
uana_extract.o: uana_extract.h uana_extract.cpp $(CXX) $(FLAGS) uana_extract.cpp
I don't know off-hand how to apply a patch either. I'd have to look it up. :) English diff time! 1) Add "-lfluidsynth" to LIBS 2) Add "ugen_sfont.o" to OBJS 3) Add rule for making ugen_sfont.o: ugen_sfont.o: ugen_sfont.h ugen_sfont.cpp $(CXX) $(FLAGS) ugen_sfont.cpp The other stuff that was removed (uana_xform and uana_extract) were accidental and is likely necessary.
I think sf produce some particular issues. When loading, if the time of read is so high the vm have to wait. Is it a possible solution to load sf in a thread and send an event when done?
The biggest problem with this is that it means the shred which does the load gets lost in time. It is out of sync because the load time couldn't be predicted, so you have to do extra stuff to resync it. It seems better to stay deterministic and just encourage preloading. FileIO and network delay seem like special cases where falling out of sync for the sake of the stream may be acceptable.
The .freq method in a sf file, maybe have no precise sense, the real frequency depend of the recorded sample and the pitch region, maybe a simple .key method is better... or make the calculus of sample - pitch - region - pitchbend to take the accurate frequency... (if the sf file support that) ...maybe the nature of this UGen is simple different...
I didn't develop the code, but it sounds like you're saying .freq is acting more like SndBuf's .rate and should be named something else?
Information retrival about sf files is also needed...
What do you mean by this?
I like this UGen!!!! runs with rec.ck --silent!!!
^_^ -- Tom Lieber http://AllTom.com/