dmitrykos [Tue, 16 Feb 2010 11:18:52 +0000 (11:18 +0000)]
provided ability not to depend on ksguid.lib when using WDMKS as it may not be provided for x64 SDK by default, define PA_WDMKS_NO_KSGUID_LIB to use static declarations, x64 MSVC project corrected to define PA_WDMKS_NO_KSGUID_LIB for x64 compilations. added WASAPI symbols to portaudio.def.
dmitrykos [Tue, 16 Feb 2010 09:46:08 +0000 (09:46 +0000)]
finished WASAPI implementation:
- Callback/Blocking interface
- Playback/Capture
- Shared/Exclusive mode
to compile you must have installed recent Windows SDK(Vista SDK or higher) and min Visual Studio 2005 SP1. WASAPI is enabled by default, to disable you must define PA_NO_WASAPI prior compilation.
rossb [Tue, 2 Feb 2010 09:01:13 +0000 (09:01 +0000)]
Added code to PortAudio/DirectSound to use DX8 DirectSoundFullDuplexCreate API for full duplex streams where available. Define PAWIN_USE_DIRECTSOUNDFULLDUPLEXCREATE in your project to enable this feature.
rossb [Sun, 24 Jan 2010 13:17:31 +0000 (13:17 +0000)]
implemented paPrimeOutputBuffersUsingStreamCallback for DirectSound (previously this was the default). invoke some buffer reset code to from StartStream (actually ClearOutputBuffer) instead of OpenStream which should give cleaner startup behavior if the stream is started and stopped multiple times. fixed leaks under error in InitOutputBuffer and fixed leak of primary buffer (previously was never released)
rossb [Sun, 24 Jan 2010 11:42:56 +0000 (11:42 +0000)]
reworked DirectSound stream completion to correctly flush the buffer processor and zero DS buffers when the callback returns paComplete or paAbort. resolves ticket #86. use test patest_stop_playout.c to verify.
rossb [Sun, 24 Jan 2010 09:20:23 +0000 (09:20 +0000)]
use a win32 Event object (aka condition variable) to signal timer process completio to Pa_StopStream in DirectSound implementation. resolves race condition when stopping direct sounds streams.
rossb [Wed, 9 Dec 2009 01:55:50 +0000 (01:55 +0000)]
derive ds output channel count from speaker configuration when pnpInterface is unavailable (eg wavemapper). Thanks to Dmitry Kostjuchenko for the patch.
rossb [Wed, 9 Dec 2009 01:31:44 +0000 (01:31 +0000)]
Fixed bug (when PAWIN_USE_WDMKS_DEVICE_INFO is defined) where wmme device channel count would be incorrect for default device resulting in distorted sound if user tries to open device with more channels than device can handle. Thanks to Dmitry Kostjuchenko for the patch.
rossb [Tue, 8 Dec 2009 09:40:09 +0000 (09:40 +0000)]
Update to Makefile.in and Configure.in from Stelios Bounanos: Pretty-print help strings, Support multiple APIs on win32 with mingw, Output a configuration summary at the end, Remove ASIO build configuration from OSX
rossb [Tue, 8 Dec 2009 09:26:33 +0000 (09:26 +0000)]
Patch from Dmitry Kostjuchenko: Fixes x64 issue with mis-casting DWORD_PTRs to DWORDs, support proper conversion of device names in UNICODE builds, use of CreateThread instead of _beginthreadex with cygwin.
rossb [Fri, 13 Mar 2009 16:31:28 +0000 (16:31 +0000)]
fixed bug in asio blocking i/o stream initialization which would cause crash (bad ptr). enabled timeout code in read/writestream. patch from sven fischer
rossb [Wed, 21 Jan 2009 12:07:32 +0000 (12:07 +0000)]
initial support for ac3+wma spdif passthrough for pa_win_wmme. see flags in pa_win_wmme.h. flags currently work for OpenStream but are ignored for IsFormatSupported
rossb [Mon, 5 Jan 2009 08:59:14 +0000 (08:59 +0000)]
cleaned up logic related to theAsioStream singleton pointer (now gets set in OpenStream and cleared in CloseStream. added callback-completion waiting to StopStream (was only in AbortStream before). cleaned up isStopped/isActive logic
gordon_gidluck [Sun, 5 Oct 2008 15:14:25 +0000 (15:14 +0000)]
ticket #84. Fix for Cygwin. Added a #define called CREATE_THREAD. Cygwin will call CreateThread, whereas other dev environments will generate code to call _beginthreadex. endthreadex was handled in the same way.