[Cs-dev] Possible API extension
Date | 2008-03-06 11:22 |
From | jpff |
Subject | [Cs-dev] Possible API extension |
Talking to Rory at LAC2008 I was convinced that we need an API operation to insert a MIDI event into the Csound MIDI controller. I have not looked too closely yet, but i think there are PortMIDI operation to do this, but the host program may need to have a simple way of running MIDI, especially so the GUI stuff can move out of the base code. Related, but I was impressed with Cabbage, and am looking at it as a way to do what we said we wanted at LAC last year. ==John ffitch ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2008-03-06 12:06 |
From | Victor Lazzarini |
Subject | Re: [Cs-dev] Possible API extension |
Not wanting to misappropriate Rory's invention, but... should we consider including it in the Csound distribution? At 11:22 06/03/2008, you wrote: >Talking to Rory at LAC2008 I was convinced that we need an API >operation to insert a MIDI event into the Csound MIDI controller. I >have not looked too closely yet, but i think there are PortMIDI >operation to do this, but the host program may need to have a simple >way of running MIDI, especially so the GUI stuff can move out of the >base code. > Related, but I was impressed with Cabbage, and am looking at it as a >way to do what we said we wanted at LAC last year. >==John ffitch > >------------------------------------------------------------------------- >This SF.net email is sponsored by: Microsoft >Defy all challenges. Microsoft(R) Visual Studio 2008. >http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ >_______________________________________________ >Csound-devel mailing list >Csound-devel@lists.sourceforge.net >https://lists.sourceforge.net/lists/listinfo/csound-devel Victor Lazzarini Music Technology Laboratory Music Department National University of Ireland, Maynooth ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2008-03-06 12:12 |
From | Victor Lazzarini |
Subject | Re: [Cs-dev] Possible API extension |
Also in relation to MIDI and urgent: We need to review the MIDI file playback in Csound. Ideally we would like: 1) Multiple MIDI file playback (currently the Csound structure only holds a reference to one file) 2) Control of playback position, speed etc 3) Opcodes a la diskin, diskin2 to access MIDI files (using memory file functions perhaps? Anthony?) These would mean that we would be looking at generating events that would trigger instruments from an instrument, possibly an infinite loop here? Well, nothing too far from what the 'event' and 'schedule' opcodes already do. I think this is very, very urgent, in view of the requirements of OLPC. Victor At 11:22 06/03/2008, you wrote: >Talking to Rory at LAC2008 I was convinced that we need an API >operation to insert a MIDI event into the Csound MIDI controller. I >have not looked too closely yet, but i think there are PortMIDI >operation to do this, but the host program may need to have a simple >way of running MIDI, especially so the GUI stuff can move out of the >base code. > Related, but I was impressed with Cabbage, and am looking at it as a >way to do what we said we wanted at LAC last year. >==John ffitch > >------------------------------------------------------------------------- >This SF.net email is sponsored by: Microsoft >Defy all challenges. Microsoft(R) Visual Studio 2008. >http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ >_______________________________________________ >Csound-devel mailing list >Csound-devel@lists.sourceforge.net >https://lists.sourceforge.net/lists/listinfo/csound-devel Victor Lazzarini Music Technology Laboratory Music Department National University of Ireland, Maynooth ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2008-03-06 12:12 |
From | Rory Walsh |
Subject | Re: [Cs-dev] Possible API extension |
We discussed this but decided that we should wait until the code is really tight and everything is working perfectly. The sourceforge page is http://sourceforge.net/projects/cabbage/ If anyone is interested in helping feel free to sign up as a developer. I'm interested to see how it runs on OSX. On the MIDI side of things I think it would be nice to be able to send MIDI messages out of Csound. With this users could build fltk or other GUI instruments that could acts as MIDI controllers. Rory. Victor Lazzarini wrote: > Not wanting to misappropriate Rory's invention, but... should we consider > including it in the Csound distribution? > > At 11:22 06/03/2008, you wrote: >> Talking to Rory at LAC2008 I was convinced that we need an API >> operation to insert a MIDI event into the Csound MIDI controller. I >> have not looked too closely yet, but i think there are PortMIDI >> operation to do this, but the host program may need to have a simple >> way of running MIDI, especially so the GUI stuff can move out of the >> base code. >> Related, but I was impressed with Cabbage, and am looking at it as a >> way to do what we said we wanted at LAC last year. >> ==John ffitch >> >> ------------------------------------------------------------------------- >> This SF.net email is sponsored by: Microsoft >> Defy all challenges. Microsoft(R) Visual Studio 2008. >> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ >> _______________________________________________ >> Csound-devel mailing list >> Csound-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/csound-devel > > Victor Lazzarini > Music Technology Laboratory > Music Department > National University of Ireland, Maynooth > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Csound-devel mailing list > Csound-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/csound-devel > ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2008-03-06 12:17 |
From | jpff |
Subject | Re: [Cs-dev] Possible API extension |
Cabbage should certainly be incorpotated if Rory agrees. At present the code needs some tidying and it is hard to build except on one file layout. I have done some work on it, and it is high in teh list of what to do for 5.09 (with the changes I have already queued up to commit. ==John ff On Thu, 6 Mar 2008, Victor Lazzarini wrote: > Not wanting to misappropriate Rory's invention, but... should we consider > including it in the Csound distribution? > ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2008-03-09 17:46 |
From | Anthony Kozar |
Subject | Re: [Cs-dev] Possible API extension |
Victor Lazzarini wrote on 3/6/08 7:12 AM: > 3) Opcodes a la diskin, diskin2 to access MIDI files (using memory file > functions perhaps? Anthony?) I am not sure what the goal here is, so I cannot say whether something like ldmemfile2() ought to be used. diskin of course reads the file from disk while performing. It is easy enough to open the same file multiple times this way. The advantages of ldmemfile2() are that it loads the whole file into memory for better performance and it ensures that a file is only loaded once when used by multiple opcodes. I don't know if these would be advantages for Midi files (or OLPC)? The problem with trying to use ldmemfile2() for Midi files is that it was intended to be used only with analysis files and thus searches only SADIR and the current directory. There is also csoundLoadSoundFile() but that won't work for Midi files at all. It would be a fairly simple task though to add extra parameters to the existing ldmemfile2() function so that the search path could be specified (MFDIR for instance). In this case, it should be renamed again (perhaps ldmemfilewithpath?) and a simple ldmemfile2() wrapper should be written to pass "SADIR" to preserve the current functionality of the plugin API. Anthony Kozar mailing-lists-1001 AT anthonykozar DOT net http://anthonykozar.net/ ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2008-03-09 20:20 |
From | matt ingalls |
Subject | Re: [Cs-dev] Possible API extension |
congrats rory, i'm all for moving this into csound cvs! and willing to try it out on OSX (if you could help me through setup) so is cabbage the wxwidget implenation too? i thought i was just if it this is going to be a standard, i still would like to see the .csd syntax a bit different to allow other hosts to support it: all parameters optional. a defined flexibility so new parameters would not break old (or unsupported) implementations. ( i guess this really just means: "hosts ignore parameters they do not understand" ) consider use XML syntax instead? (do i dare mention unicode?) and as we discussed previously, eventually having dynamic-control of parameters/attributes from within score! On Mar 6, 2008, at 4:12 AM, Rory Walsh wrote: > We discussed this but decided that we should wait until the code is > really tight and everything is working perfectly. The sourceforge page > is http://sourceforge.net/projects/cabbage/ If anyone is interested in > helping feel free to sign up as a developer. I'm interested to see how > it runs on OSX. On the MIDI side of things I think it would be nice to > be able to send MIDI messages out of Csound. With this users could > build > fltk or other GUI instruments that could acts as MIDI controllers. > > Rory. > > > Victor Lazzarini wrote: >> Not wanting to misappropriate Rory's invention, but... should we >> consider >> including it in the Csound distribution? >> >> At 11:22 06/03/2008, you wrote: >>> Talking to Rory at LAC2008 I was convinced that we need an API >>> operation to insert a MIDI event into the Csound MIDI controller. I >>> have not looked too closely yet, but i think there are PortMIDI >>> operation to do this, but the host program may need to have a simple >>> way of running MIDI, especially so the GUI stuff can move out of the >>> base code. >>> Related, but I was impressed with Cabbage, and am looking at it >>> as a >>> way to do what we said we wanted at LAC last year. >>> ==John ffitch >>> >>> ------------------------------------------------------------------------- >>> This SF.net email is sponsored by: Microsoft >>> Defy all challenges. Microsoft(R) Visual Studio 2008. >>> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ >>> _______________________________________________ >>> Csound-devel mailing list >>> Csound-devel@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/csound-devel >> >> Victor Lazzarini >> Music Technology Laboratory >> Music Department >> National University of Ireland, Maynooth >> >> >> ------------------------------------------------------------------------- >> This SF.net email is sponsored by: Microsoft >> Defy all challenges. Microsoft(R) Visual Studio 2008. >> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ >> _______________________________________________ >> Csound-devel mailing list >> Csound-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/csound-devel >> > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Csound-devel mailing list > Csound-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/csound-devel matt ingalls development@gvox.com ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2008-03-09 20:27 |
From | Rory Walsh |
Subject | Re: [Cs-dev] Possible API extension |
> i'm all for moving this into csound cvs! and willing to try it out on > OSX > (if you could help me through setup) Sure will. I will let you know when it's ready to be tested on OSX, the build process is still a little messy.. > so is cabbage the wxwidget implenation too? i thought i was just > if it this is going to be a standard, i still would like to see > the .csd syntax a bit different > to allow other hosts to support it: > all parameters optional. > a defined flexibility so new parameters would not break old (or > unsupported) implementations. > ( i guess this really just means: "hosts ignore parameters they do > not understand" ) > consider use XML syntax instead? > (do i dare mention unicode?) The syntax has changed slightly from when you saw it last. All parameters are optional now as we discussed. New parameters do not break existing ones and I still think that xml code is a bit cumbersome to type by hand? > and as we discussed previously, eventually having dynamic-control of > parameters/attributes from within score! This would be great. Users could then create GUIs using variables rather than static text at the top/bottom of the score. I gotta bounce, take it easy, Rory. > > > On Mar 6, 2008, at 4:12 AM, Rory Walsh wrote: > >> We discussed this but decided that we should wait until the code is >> really tight and everything is working perfectly. The sourceforge page >> is http://sourceforge.net/projects/cabbage/ If anyone is interested in >> helping feel ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2008-03-10 18:26 |
From | matt ingalls |
Subject | Re: [Cs-dev] Possible API extension |
> API > operation to insert a MIDI event into the Csound MIDI controller. I Well there is the MIDIRead callback already -- i guess you are talking about having portMIDI running internally and host app sending MIDI events too? ( and i believe once you register your own callback portMIDI is disabled? ) As i think there are a lot of instances where csoundlib doesn't need portmidi (for instance running inside a vst plugin it would receive MIDI from the vst host via the existing MIDIRead callback ), what about removing the PortMIDI module out of csoundlib and instead make it's own dylib that host apps could use directly -- you could add the MIDIInputEvent() to the portMIDI module. --- although maybe this gets too tedious for host developers? matt ingalls development@gvox.com ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2008-03-10 18:29 |
From | matt ingalls |
Subject | Re: [Cs-dev] Possible API extension |
> The syntax has changed slightly from when you saw it last. All > parameters are optional now as we discussed. New parameters do not > break > existing ones great! > and I still think that xml code is a bit cumbersome to > type by hand? yes, i agree too, but there is always the platform-specific linebreak issues, and i'm sure someone is going to eventually complain that it is not xml-compliant (with good reasons?) matt ingalls development@gvox.com ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2008-03-10 18:38 |
From | Rory Walsh |
Subject | Re: [Cs-dev] Possible API extension |
> yes, i agree too, but there is always the platform-specific linebreak > issues, and i'm sure someone is going to eventually complain that it > is not xml-compliant (with good reasons?) Yes but by the time that happens hopefully the GUI code can be called using a special GUI widget in Csound, or not.. There seems to be a general desire to remove all GUI stuff from the Csound language. I can't say I'm against this idea but I do think a single generic GUI opcode might be a good idea. The main advantage of it would be that users could use features of the Csound language when building GUIs. We should really host a Csound conference so everyone can discuss this stuff in person! Failing that everyone should attend next year's LAC! > > > matt ingalls > development@gvox.com > > > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Csound-devel mailing list > Csound-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/csound-devel > ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2008-03-10 18:43 |
From | "Steven Yi" |
Subject | Re: [Cs-dev] Possible API extension |
Attachments | None |
Date | 2008-03-11 01:10 |
From | Tim Mortimer |
Subject | Re: [Cs-dev] Possible API extension |
Can i just re-mention the idea of transmitting out midi on multiple out ports if there is to be a MIDI overhaul? at work, gotta run. (Adelaide presently enjoying it's longest heatwave on record.....) Victor Lazzarini wrote: > > Also in relation to MIDI and urgent: > > We need to review the MIDI file playback in Csound. Ideally we would > like: > > 1) Multiple MIDI file playback (currently the Csound structure only holds > a reference to one file) > > 2) Control of playback position, speed etc > > 3) Opcodes a la diskin, diskin2 to access MIDI files (using memory file > functions > perhaps? Anthony?) > > These would mean that we would be looking at generating > events that would trigger instruments from an instrument, > possibly an infinite loop here? Well, nothing too far from > what the 'event' and 'schedule' opcodes already do. > > I think this is very, very urgent, in view of the requirements of OLPC. > > Victor > > At 11:22 06/03/2008, you wrote: >>Talking to Rory at LAC2008 I was convinced that we need an API >>operation to insert a MIDI event into the Csound MIDI controller. I >>have not looked too closely yet, but i think there are PortMIDI >>operation to do this, but the host program may need to have a simple >>way of running MIDI, especially so the GUI stuff can move out of the >>base code. >> Related, but I was impressed with Cabbage, and am looking at it as a >>way to do what we said we wanted at LAC last year. >>==John ffitch >> >>------------------------------------------------------------------------- >>This SF.net email is sponsored by: Microsoft >>Defy all challenges. Microsoft(R) Visual Studio 2008. >>http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ >>_______________________________________________ >>Csound-devel mailing list >>Csound-devel@lists.sourceforge.net >>https://lists.sourceforge.net/lists/listinfo/csound-devel > > Victor Lazzarini > Music Technology Laboratory > Music Department > National University of Ireland, Maynooth > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Csound-devel mailing list > Csound-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/csound-devel > > ----- ******************* www.phasetransitions.net hermetic music * python * csound * possibly mindless ranting various werk in perpetual delusions of progress.... -- View this message in context: http://www.nabble.com/Possible-API-extension-tp15871265p15972408.html Sent from the Csound - Dev mailing list archive at Nabble.com. ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |