PortAudio - Release Notes |
Link to PortAudio Home Page
Unix OSS
- Set num channels back to two after device query for ALSA. This fixed a bug in V16 that sometimes caused a failure when querying for the sample rates. Thanks Stweart Greenhill.
Macintosh Sound Manager
- Use NewSndCallBackUPP() for CARBON compatibility.
Added Alpha implementations for ASIO, SGI, and BeOS!
CPULoad is now calculated based on the time spent to generate a known number of frames. This is more accurate than a simple percentage of real-time. Implemented in pa_unix_oss, pa_win_wmme and pa_win_ds. Fix dither and shift for recording PaUInt8 format data. Added "patest_maxsines.c" which tests Pa_GetCPULoad().
Windows WMME
- sDevicePtrs now allocated using GlobalAlloc(). This prevents a crash in Pa_Terminate() on Win2000. Thanks Mike Berry for finding this. Thanks Mike Berry.
- Pass process instead of thread to SetPriorityClass(). This fixes a bug that caused the priority to not be increased. Thanks to Alberto di Bene for spotting this.
Windows DirectSound
- Casts for compiling with __MWERKS__ CodeWarrior.
UNIX OSS
- Derived from Linux OSS implementation.
- Numerous patches from Heiko Purnhagen, Stephen Brandon, etc.
- Improved query mechanism which often bailed out unnecessarily.
- Removed sNumDevices and potential related bugs,
- Use getenv("PA_MIN_LATENCY_MSEC") in code to set desired latency. User can set by entering:
export PA_MIN_LATENCY_MSEC=40Macintosh Sound Manager
- Pass unused event to WaitNextEvent instead of NULL to prevent Mac OSX crash. Thanks Dominic Mazzoni.
- New Linux OSS Beta
Windows WMME
- sDevicePtrs now allocated based on sizeof(pointer). Was allocating too much space.
- Check for excessive numbers of channels. Some drivers reported bogus numbers.
- Apply Mike Berry's changes for CodeWarrior on PC including condition including of memory.h, and explicit typecasting on memory allocation.
Macintosh Sound Manager
- ScanInputDevices was setting sDefaultOutputDeviceID instead of sDefaultInputDeviceID.
- Device Scan was crashing for anything other than siBadSoundInDevice, but some Macs may return other errors! Caused failure to init on some G4s under OS9.
- Fix TIMEOUT in record mode.
- Change CARBON_COMPATIBLE to TARGET_API_MAC_CARBON
- Added implementation for Windows MultiMedia Extensions (WMME) by Ross and Phil
- Changed Pa_StopStream() so that it waits for the buffers to drain.
- Added Pa_AbortStream() that stops immediately without waiting.
- Added new test: patest_stop.c to test above two mods.
- Fixed Pa_StreamTime() so that it returns current play position instead of the write position. Added "patest_sync.c" to demo audio/video sync.
- Improved stability of Macintosh implementation. Added timeouts to prevent hangs.
- Added Pa_GetSampleSize( PaSampleFormat format );
- Changes some "int"s to "long"s so that PA works properly on Macintosh which often compiles using 16 bit ints.
- Added Implementation Guide
- Mac now scans for and queries all devices. But it does not yet support selecting any other than the default device.
- Blocking I/O calls renamed to separate them from the PortAudio API.
- Cleaned up indentation problems with tabs versus spaces.
- Now attempts to correct bogus sample rate info returned from DirectSound device queries.