566 Commits

Author SHA1 Message Date
Dmitry Kostjuchenko
c0d239712d Merge branch 'winrt' into 'master'
WASAPI: Fixed crash on NULL.

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/6794444
2018-09-10 20:11:26 +00:00
dmitrykos
5dec767af1 wasapi: fixed crash on NULL 2018-09-10 23:09:44 +03:00
Dmitry Kostjuchenko
b2f6d82342 Merge branch 'winrt' into 'master'
WASAPI: Fixed input device can not be opened in Exclusive mode (regression of previous commit).

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/6794374
2018-09-10 19:57:42 +00:00
dmitrykos
fe2c8e1f42 wasapi: fixed input device can not be opened in Exclusive mode (regression of previous commit) 2018-09-10 22:55:27 +03:00
Dmitry Kostjuchenko
9a8922da23 Merge branch 'winrt' into 'master'
WASAPI: Support for Exclusive mode on UWP, private API extension, fixes.

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/6785374
2018-09-06 17:52:14 +00:00
dmitrykos
c3fee03ff1 wasapi: support Exclusive mode on UWP (use new function PaWasapi_SetDefaultInterfaceId to set device's interface id to make Exclusive mode work);
- support for explicit 8.24 format (24-bit inside 32-bit container) by specifying paCustomFormat (see IMPORTANT notes in the header file);
 - new flag paWinWasapiExplicitSampleFormat to force explicit format and avoid fallback to a closest working;
 - new function PaWasapi_GetDeviceCurrentFormat to get device format of the opened stream;
 - support PaWasapi_ThreadPriorityXXX API on UWP to boot thread priority;
 - improved selection of the closest format in Exclusive mode.
2018-09-06 20:45:22 +03:00
Phil Burk
8a8078a9ba Merge branch 'ticket_274_xcode' into 'master'
configure: support SDK 10.13 in XCode

fixed #274

+1: Ryan Ollos

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/6183813
2018-08-19 21:16:00 +00:00
Dmitry Kostjuchenko
69d1b1e3cc Merge branch 'winrt' into 'master'
WASAPI: Fixed compilation error of PaWasapi_GetAudioClient().

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/6638133
2018-07-19 18:47:52 +00:00
dmitrykos
d7a4cb482d wasapi: fixed compilation error of PaWasapi_GetAudioClient() 2018-07-19 21:42:21 +03:00
Dmitry Kostjuchenko
64ad96ea3c Merge branch 'winrt' into 'master'
New PaWasapi_GetAudioClient() API and workaround to get real Windows version and thus use correct AudioClient interface version.

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/6574173
2018-07-01 10:04:04 +00:00
dmitrykos
a802290e83 wasapi: new PaWasapi_GetAudioClient() API to get pointer to IAudioClient from PaStream, workaround to get real Windows version in order to be able to create correct version of IAudioClient interface (Windows 10 was reported as Windows 8 when using just GetVersion()) 2018-06-30 12:21:59 +03:00
Phil Burk
8dc6d59877 Merge branch 'ticket_275_pass_void' into 'master'
Add void argument to Pa_GetVersionInfo()

+1: Anonymous

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/6415893
2018-05-26 04:49:10 +00:00
DaShun
c5e8f1dca7 Add asio lib. 2018-04-17 11:36:55 +08:00
Dmitry Kostjuchenko
3215043f0d Merge branch 'winrt' into 'master'
wasapi: new WASAPI specific API PaWasapi_UpdateDeviceList() which allows to update WASAPI device list dynamically without a need to call Pa_Terminate() and then Pa_Initialize()

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/6241053
2018-04-02 19:16:19 +00:00
dmitrykos
d3e65ce690 wasapi: correction to PaWasapi_UpdateDeviceList() API by making it unavailable by default unless PA_WASAPI_MAX_CONST_DEVICE_COUNT is explicitly defined 2018-04-02 22:15:49 +03:00
Dmitry Kostjuchenko
9923e1dc31 Merge branch 'winrt' into 'master'
WinRT: fixed failure to initialize WASAPI when Capture device is not provided by OS, and additional minor corrections.

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/5913713
2018-04-02 18:55:13 +00:00
dmitrykos
eb62287494 wasapi: new WASAPI specific API PaWasapi_UpdateDeviceList() which allows to update WASAPI device list dynamically without a need to call Pa_Terminate() and then Pa_Initialize().
This new implementation overcomes current limitation of Pa_GetDeviceCount() API which gives constant device count by making WASAPI device list constant (32 devices by default) where 32 device slots can either be filled with a real device info or be empty for a future device changes.

Constant device list size can be altered by PA_WASAPI_MAX_CONST_DEVICE_COUNT define during a compile time. If PA_WASAPI_MAX_CONST_DEVICE_COUNT is set to 0 then PaWasapi_UpdateDeviceList() will be unavailable as well as dynamic device list update functionality.

This implementation also detects the audio device format change if user alters it via Windows Audio Controller GUI.

This implementation also makes WASAPI backend ready for a future implementation of device list updates via PortAudio public API. See internal PaError UpdateDeviceList().
2018-04-02 21:50:16 +03:00
Phil Burk
6e3f6b702f configure: support SDK 10.13 in XCode
Updated configure.in
then ran autoconf to regenerate the configure script.

Fixes #274
2018-03-18 15:30:36 -07:00
dmitrykos
a525c38289 wasapi: fixed failure to initialize when Capture device is not provided by OS, silenced warnings in log functions 2018-01-10 20:58:14 +02:00
Ross Bencina
1bdcb9e413 Merge branch 'winrt' into 'master'
WASAPI: corrections for Windows 10 UWP

+1: Ross Bencina, Anonymous, Roland Winklmeier

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/4995123
2017-11-13 06:42:49 +00:00
dmitrykos
bc40f42cba wasapi: corrected GetWindowsVersion() to return Windows 10 (was max Windows 8)
wasapi: use IAudioClient3 for Windows 10 for best compatibility
wasapi: fix compilation when Windows 10 SDK (10.0.15063.0) is used by removing SignalObjectAndWait() definition which creates duplicates with the system defined SignalObjectAndWait() (since 10.0.15063.0 it is supported by the OS again)
2017-05-29 22:44:36 +03:00
Nicholas Appleton
a1f61a9a2c fix a tragic typo I made which prevented WASAPI being included with the CMake support. 2017-01-15 21:30:35 +11:00
Phil Burk
396fe4b669 Merge branch 'ticket_260_terminate' into 'master'
pa_front.c: fix initializationCount_ in Pa_Terminate()

+1: Ross Bencina

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/4012103
2016-10-24 16:10:12 +00:00
Phil Burk
dde71d1114 pa_front.c: fix initializationCount_ in Pa_Terminate()
Was decrementing too soon and causing Pa_CloseStream() to fail.
See ticket #260
2016-10-23 14:50:01 -07:00
Ross Bencina
49d0634189 Merge branch 'cmake_mingw_fixes' into 'master'
CMakedLists.txt: Replicate the library dependencies in the configure script

+1: Ross Bencina

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/3915533
2016-10-10 00:56:01 +00:00
Ross Bencina
037f18a2e4 Merge branch '257-wdmks-winioctl-include' into 'master'
Fix for ticket #257: MinGW-w64: Inclusion of <winioctl.h> triggers multiple redefinition errors.

+1: Phil Burk

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/3915493
2016-10-04 12:59:26 +00:00
Nicholas Appleton
e0947b7d6a replicate the library dependencies in the configure script 2016-10-02 21:50:42 +11:00
Ross Bencina
18b2ab2339 Fix for ticket #257: MinGW-w64: Inclusion of <winioctl.h> triggers multiple redefinition errors. 2016-10-02 20:34:04 +11:00
Phil Burk
82773feed7 Merge branch 'ticket_256_numchannels' into 'master'
paex_read_write_wire: fix crossed initialization

+1: Ross Bencina

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/3888083
2016-09-27 15:49:46 +00:00
Phil Burk
f275c76ca9 paex_read_write_wire: fix crossed initialization
MinGW complained.

Fixes ticket #256
2016-09-26 15:42:38 -07:00
Ross Bencina
03eabbf9cd Merge branch 'rb-doxygen-tweaks' into 'master'
Doxygen documentation: Fix Front Page formatting, fix broken links, link to MinGW build instructions on Wiki

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/3876603
2016-09-25 08:07:53 +00:00
Ross Bencina
fcc15ae053 Merge branch 'rb-document-api-version' into 'master'
Document API Version Availability (e.g. `Available as of 19.5.0`).

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/3881793
2016-09-25 08:07:41 +00:00
Ross Bencina
12f967356b Added Available as of version 19.6.0 doc comments for new wasapi host-api-specific APIs. 2016-09-25 17:55:12 +10:00
Ross Bencina
e50b31bd40 Update doxygen comments for WDM/KS to indicate that new APIs are available in 19.5.0 2016-09-25 17:49:15 +10:00
Ross Bencina
d940dcb8b8 Fix formatting of version API doxygen comments in portaudio.h. Add additional documentation details, see also, and version information (e.g. Available as of 19.5.0). 2016-09-25 17:34:16 +10:00
Ross Bencina
6dbb8a6d64 Merge branch 'bump_version' into 'master'
pa_front: bump version to 19.6.0 for release

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/3873413
2016-09-25 05:49:16 +00:00
Ross Bencina
3765e908c2 Merge branch 'cmake_updates' into 'master'
Update PortAudio CMake Support

+1: Ross Bencina

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/3751483
2016-09-25 05:48:45 +00:00
Phil Burk
3f7248cd00 pa_front: bumped to 19.6.0 2016-09-24 09:02:56 -07:00
Phil Burk
b69214bcb4 Merge branch 'ticket_252_nohang' into 'master'
pa_mac_core_blocking: fix hang when running stream stopped (fixed merge)

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/3829453
2016-09-24 16:01:14 +00:00
Phil Burk
339e875f42 pa_mac_core: fix whitespace and missing semicolon
It compiled without the semicolon because it was followed by a VDBUG,
which was followed by a semicolon. The VDBUG was disabled so its
semicolon finished the line above.
2016-09-24 08:53:28 -07:00
Ross Bencina
5044381068 Merge branch 'rb-version-doc-comment-cleanup' into 'master'
Updated doc comments in portaudio.h to reflect that versionControlRevision is now a git revision hash

+1: Phil Burk, Ross Bencina

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/3877593
2016-09-24 06:25:06 +00:00
Ross Bencina
c2326aa8f0 updated doc comments to reflect that versionControlRevision is now a git revision hash 2016-09-23 21:10:21 +10:00
Ross Bencina
2c0aed9d8f Doxygen document tweaks: * Link to our Wiki for latest MinGW build information. * Fix for latest doxygen: non-displaying links on main page (add space before <br>). * Remove broken link to java binding docs (not compiled). * Update link to mailing list. 2016-09-23 18:49:00 +10:00
Phil Burk
b2f9375237 pa_front: bump version to 19.5.1 for release 2016-09-22 09:29:36 -07:00
Phil Burk
cacc5dc4ba pa_mac_core: use MAX(inputFrames,outputFrames)
Double-check whether the stream does ouput before draining the buffer.
2016-09-22 09:05:38 -07:00
Ross Bencina
8b7f390907 Merge branch 'remove-microsoft-include-files' into 'master'
Remove Microsoft copyright include files from src/hostapi/wasapi/mingw-include

+1: Phil Burk, Ross Bencina

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/3848293
2016-09-22 12:12:47 +00:00
Phil Burk
a38df79293 pa_mac_core_blocking: Fix timeout.
Change alignment of comment.
2016-09-21 15:46:30 -07:00
Ross Bencina
1cf10aa43f remove Microsoft copyright include files from src/hostapi/wasapi/mingw-include 2016-09-17 18:21:52 +10:00
Phil Burk
52bd2afb1d Merge branch 'ticket_251_alsacancel' into 'master'
pa_linux_alsa: fix hang in callback caused by abort

+1: Phil Burk

Merged-on: https://assembla.com/code/portaudio/git/merge_requests/3834073
2016-09-16 15:50:33 +00:00
Nick Appleton
0c10cb6c0c address all problems picked up by cmakelint except for line-length related comments. don't use min() in paex_record_file as it is a macro specific to windows. 2016-09-15 22:52:44 +10:00