[chuck-users] Strange Behavior

Spencer Salazar ssalazar at CS.Princeton.EDU
Fri Apr 13 19:46:28 EDT 2007


Howdy,

On Apr 13, 2007, at 8:14 AM, Piero B. Contezini wrote:

> Hello,
>
> this is not what i meant with the code but as i'm not testing the  
> audio gens its all right, all i'm doing is see the MAUI changes  
> with midi input.
> Yesterday i´ve seen the .onChange trigger that´s what I was trying  
> to do with the .value function.

Yes-- in fact, .onChange is redundant:

knob_0.onChange() => now;

is the same as

knob_0 => now;

but either method is fully supported.

> I was trying to compile miniAudicle yesterday and it doesnt go all  
> right, there is any libs I must install before I can build it ?

You shouldn't need any libs.  It looks like there is an error in  
makefile.osx... argh.  If you delete the '#' character on line 144 of  
that file, it should work.  'make osx-ub' doesn't have this same  
error, so that will work, but it will produce a universal binary.   
So, Ill fix the source distro online also when I get a chance...

> I was thinking on try a little change on the MAUI API for  
> supporting some kind of really knob like widgets (a ball with a  
> mark at the 0 point that rotates itself from 0 to 127 or something  
> like this) because my application will fit all of the screen just  
> with the knob states if I use that rule as the marker.

OS X has a circular knob user interface widget that we were planning  
on supporting.  This knob uses the same Objective-C class as the  
slider, so if you're handy with Cocoa you could pretty easily switch  
the sliders over to knobs.

> Another thing I think is missing is a onscreen file manager to map  
> my turntable and select samples from the midi controller, did you  
> ever think on using GTK for this? because it support skins from  
> itself (I dont know if cocoa can do this but i havent seen any Mac  
> OS X apps with too much skin support) I thought it could be nice to  
> make really good looking skins for any kind of chuck based machine.

Yes! the user interface element API definitely needs a lot of  
expansion--multisliders, file selection dialogs, menus, text fields,  
etc., are all planned, but unfortunately there are only so many hours  
in the day...  Skinnability would be cool, but I don't think it would  
be easy to combine GTK and Cocoa code bases on OS X.  Also, GTK on OS  
X requires X11, which unfortunately is kind of a second-class citizen  
on OS X, and isn't installed by default.  It is possible to compile  
the wxGTK version of miniAudicle on OS X though--if thats something  
that might be a step in the right direction, let me know.  Its pretty  
easy if you already have GTK and wxGTK.

> I´ll send you more crash reports, there is something odd with the  
> crashes, they don´t seem to hang on the same function, maybe its a  
> little overflow the bcd is causing on the midi routines.

Hmm, yeah, keep 'em coming!  Do you have any idea what kind of actual  
MIDI messages the BCD is sending?

thanks!
spencer

> Thanks for your time
>
> Piero
>
>
>
> 2007/4/13, Spencer Salazar <ssalazar at cs.princeton.edu>: Hi Piero,
> Thanks for your feedback on this.  I've been looking into your crash
> report from earlier and while I can see where the crash is occurring,
> I can't quite figure out why it is occurring.  So I don't really have
> anything helpful to say at the moment, except that Im looking a
> little deeper into ChucK's MIDI implementation.
>
> Also, while it doesn't explain the crashing, this code of yours seems
> a little suspect:
>
> > public void Distortion() {
> >     while(knob_0.value()) {
> >             knob_0.value() => float value;
> >         value * 39 => f.pfreq;
> > //            value => i.next;
> >     }
> >     min => now;
> > }
>
> As far as I can tell, this will hang all audio processing until
> knob_0.value() is 0--is that the desired result?
>
> spencer
>
> On Apr 12, 2007, at 9:46 PM, Piero B. Contezini wrote:
>
> > Hello,
> >
> > I don't know if this is the right place to put this on but, this
> > code is crashing randomly on my tests:
> >
> > MAUI_View window;
> > MAUI_Slider knob_0;
> >
> > window.size(300,300);
> > window.name("Test");
> > window.position(0,100);
> >
> > knob_0.range(0,127);
> > knob_0.size(150,knob_0.height());
> > //cut_knob_0.position(0,0);
> > knob_0.name("Knob 0");
> > knob_0.displayFormat(MAUI_Slider.integerFormat);
> > // impulse to filter to dac
> >
> > Impulse i => BiQuad f => Pan2 p => dac;
> > // set the filter's pole radius
> > .99 => f.prad;
> > // set equal gain zeros
> > 1 => f.eqzs;
> > // set filter gain
> > .5 => f.gain;
> >
> >
> > window.addElement (knob_0);
> >
> > window.display();
> >
> > 1 => int device;
> >
> > MidiIn min;
> > MidiMsg msg;
> >
> > if( !min.open( device ) ) {
> >         <<< "erro ao iniciar device:" , device >>> ;
> > } else {
> >         <<< "device inicializado:" , min.num() , " -> " , min.name
> > () >>>;
> > }
> >
> > public void controlKnob_0() {
> >     while(true) {
> >         while ( min.recv(msg) ) {
> >                 msg.data1 => int msg_1;
> >                 msg.data2 => int msg_2;
> >                 msg.data3 => int msg_3;
> >
> >                 if(msg_2 == 3) {
> >                         knob_0.value(msg_3);
> >                 }
> >         }
> >         min => now;
> >     }
> > }
> >
> > public void Distortion() {
> >     while(knob_0.value()) {
> >             knob_0.value() => float value;
> >         value * 39 => f.pfreq;
> > //            value => i.next;
> >     }
> >     min => now;
> > }
> >
> >
> >
> > spork ~ controlKnob_0();
> > spork ~ Distortion();
> >
> >
> > while ( true ) {
> >     1.0 => i.next;
> > //    Std.rand2f ( 250, 5000 ) => f.pfreq;
> >     Std.rand2f( -1, 1 ) => p.pan;
> >     100::ms => now;
> > }
> >
> >
> > What i'm doing is mapping one knob of my bcd2000 to a MAUI Slider,
> > to see on the screen the position of the knob, as i've posted here
> > before, the midi itself is hanging up using this controller, but I
> > think it might be something i'm doing wrong, anyone can point me
> > out a clue on what could be it?
> >
> > Thanks
> >
> > Piero
> > _______________________________________________
> > chuck-users mailing list
> > chuck-users at lists.cs.princeton.edu
> > https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
>
> _______________________________________________
> chuck-users mailing list
> chuck-users at lists.cs.princeton.edu
> https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
>
> _______________________________________________
> chuck-users mailing list
> chuck-users at lists.cs.princeton.edu
> https://lists.cs.princeton.edu/mailman/listinfo/chuck-users



More information about the chuck-users mailing list