From: Steve K. <st...@st...> - 2003-04-09 03:15:31
|
I looked at this more on the train this evening, and it looks like it will be perfect for us. I needed to tweak a few Makefile things to make it build on MacOSX (apparently, some things moved around in there), but once I did that, it built great, and the samples worked great. I think the interface provides all the functionality we need (even choosing from a list of available devices, getting the default device, making the levels sane, format conversion, etc), and is still very simple. Basically, you make a few calls to initialize, choose the device you want, and start it, and then it periodically calls a callback function that you provide, which gives you input audio, and takes back output audio. One of the samples, called patest_wire shows that the internal latency with the system on MacOSX is totally imperceptible (but the MacOSX audio system has almost nil internal latency). It has both WinMM, DirectSound, and "asio" drivers for Win32, OSS drivers for linux, etc, and others (sgi drivers, beos, etc). Anyway, I wish I'd found this earlier, because it just seems perfect. On Tuesday, April 8, 2003, at 06:45 PM, Steve Kann wrote: > > While researching MacOSX audio stuff, I stumbled on this library: > > http://www.portaudio.com/ > > It seems like a nice small audio abstraction library, which _might_ be > appropriate to use for iaxclient. > > On linux, the static library from this is just 16k (stripped, with > debug > info it's 146k), which seems more than reasonable. > > It seems to have a BSD-like license (only clause is that the copyright > needs to be kept, which I think is OK for LGPL). > > Some quick tests of their v18 release and a CVS snapshot showed: > > 1) The CVS snapshot crashed (after doing what it was supposed to; gdb > shows some thread problem). > 2) The v18 release didn't support sample rate conversion (my USB > headset, currently running with OSS drivers on RH9 only supports 48khz > out, and the test wanted 44.1, and the library didn't convert). > 3) The CVS snapshot has better makefiles. > > But it seems to have a pretty simple API, and perhaps the v19 release > is > coming along well. > > If we do what we've planned, we can include an "audio_portaudio" driver > for iaxclient, and only use that if we want to, but i'm thinking that > it > might be useful on all platforms, if it supports the audio things we > need to do (i.e. we might need to scan for devices, choose devices, > start/stop them, etc). > > -SteveK > > > > > > -- > Steve Kann - Chief Engineer - 520 8th Ave #2300 NY 10018 - (212) > 533-1775 > HorizonLive.com - collaborate . interact . learn > "The box said 'Requires Windows 95, NT, or better,' so I installed > Linux." > > > > ------------------------------------------------------- > This SF.net email is sponsored by: ValueWeb: > Dedicated Hosting for just $79/mo with 500 GB of bandwidth! > No other company gives more support or power for your dedicated server > http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ > _______________________________________________ > Iaxclient-devel mailing list > Iax...@li... > https://lists.sourceforge.net/lists/listinfo/iaxclient-devel > |