From: Dave F. <dav...@co...> - 2004-03-31 13:12:54
|
On Wednesday 31 March 2004 09:17 am, Joakim Verona wrote: > Ok, so that should mean that we can use tNullPlayer when we cross-compile, > until we get portmidi working. > > I'm all for switching to a more reliable method of Midi communication > than the current one, > but it should be possible to use both the Portmidi and the current Alsa > driver > like its now(or was) possible to choose either Alsa and OSS. Hmm, I wouldn't mind supporting Alsa and OSS separate from PortMidi, but I really really really think that those drivers should be rewritten to a new system along with the PortMidi thing. ;) > Maybe its easy to get a playback-only portmidi driver working initially? It's real easy, really. ;) I'm about to take a crack at a new preferences dialog, and then maybe I'll put a portmidi driver on my todo list after I finish the selection stuff, if nobody gets to it first. > > (BTW I think you were looking for the idiom "real time privilegies") (Yes, I was) :) Dave > /Joakim > > Dave Fancella wrote: > >On Wednesday 31 March 2004 08:41 am, Joakim Verona wrote: > >>Well, this seems really cool! > >> > >>I remember that the jazz architecture allowed for several audio/midi > >>drivers, > >>and that the configure script makes it possible to enable/disable > >> drivers. > >> > >>Can we make a "dummy" midi/audio driver, that does absolutely nothing > >>that we can use to compile > >>against while porting to other platforms? > > > >tNullPlayer, I think, is what you're looking for. Check player.h. Also, > > read through the OnInit method of the wxApp object (I forget was jazz > > calls it, is it TheApp?), and you'll see lots of places where it is used. > > > >The setup is this: > > > >For no audio, tNullPlayer derives from tPlayer. Each subsequent audio > > driver derives from tPlayer. > > > >I don't recall how tPlayer is setup right off the top of my head, but > >somewhere along the line an audio driver gets derived from wxTimer. What > > we need is an audio API that's actually multi-threaded that we can set > > priority on and get root priority (or whatever it's called) but will fail > > gracefully (so root privileges aren't required just to run). > > > >Here's what I've written in the past, anyway, for this: > > > >GUI Thread starts two threads, a file-reading thread and a playback > > thread. > > > >RingBuffer (stolen from Audacity) used to exchange data between the two > >threads. > > > >PortMidi should start the playback thread for us, so we just need a thread > > to handle reading the file (or to store an internal temporary copy of the > > file separate from the GUI--we don't want to have to poll the GUI for > > this stuff, and we do want the GUI to be responsive during playback). > > > >Dave > > > >>Cheers > >>/Joakim > >> > >>Patrick Earl wrote: > >>>Well, in taking too long of a break from my real work, I installed the > >>>mingw32 cross-compiler. After dos2unixing all of wxWidgets' > >>>configure type scripts, I have the wxWindows library compiling on my > >>>box. > >>> > >>>The next step will be compiling Jazz with the windows compiler and > >>>library and seeing what happens. Right now, there are problems with > >>>the dependency on ALSA. We'll need to at least start the conversion > >>>to portmidi to make things compile. It's probably a good idea to > >>>make sure things compile under windows as we go. Ensures that we > >>>don't end up with a super mess later on. > >>> > >>>For informational purposes, here's the rough steps I followed on my > >>>debian box: > >>> > >>>1. Installed the three mingw32 packages. > >>>2. Extracted the wxMSW source. > >>>3. Converted all the configure.in files and the other files in the > >>>top level dir to unix format. > >>>4. Ran autoconf in all of the dirs with configure.in files. > >>>5. Did this: > >>> ./configure --with-msw --disable-shared > >>>--host=i586-mingw32msvc --prefix=/home/patearl/usr/wxmsw-2.4.2 > >>>6. Ran make > >>>7. Watched the magic happen. > >>> > >>> Patrick > >>> > >>> > >>> > >>>------------------------------------------------------- > >>>This SF.Net email is sponsored by: IBM Linux Tutorials > >>>Free Linux tutorial presented by Daniel Robbins, President and CEO of > >>>GenToo technologies. Learn everything from fundamentals to system > >>>administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click > >>>_______________________________________________ > >>>jazzplusplus-devel mailing list > >>>jaz...@li... > >>>https://lists.sourceforge.net/lists/listinfo/jazzplusplus-devel > >> > >>------------------------------------------------------- > >>This SF.Net email is sponsored by: IBM Linux Tutorials > >>Free Linux tutorial presented by Daniel Robbins, President and CEO of > >>GenToo technologies. Learn everything from fundamentals to system > >>administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click > >>_______________________________________________ > >>jazzplusplus-devel mailing list > >>jaz...@li... > >>https://lists.sourceforge.net/lists/listinfo/jazzplusplus-devel > > ------------------------------------------------------- > This SF.Net email is sponsored by: IBM Linux Tutorials > Free Linux tutorial presented by Daniel Robbins, President and CEO of > GenToo technologies. Learn everything from fundamentals to system > administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click > _______________________________________________ > jazzplusplus-devel mailing list > jaz...@li... > https://lists.sourceforge.net/lists/listinfo/jazzplusplus-devel -- Visit my website! http://www.davefancella.com/?event=em Q: What is the difference between Texas and yogurt? A: Yogurt has culture. |