Commit Graph

510 Commits

Author SHA1 Message Date
mitchmindtree c2b7c7f648 Remove .DS_Store from asio-sys gitignore 2019-07-05 05:51:30 +10:00
mitchmindtree 8f95042b8d Add `asio` cargo feature for optional ASIO support
ASIO introduces quite a few extra crates and requires a fairly
complicated setup process (see the readme), so this feature is disabled
by default.
2019-07-05 05:51:30 +10:00
mitchmindtree 76fab4f982 Update README for ASIO v2.3.3 2019-07-05 05:51:30 +10:00
mitchmindtree 191b90909a Make Driver type responsible for managing user callbacks 2019-07-05 05:51:30 +10:00
mitchmindtree 4dafb212fb Refactor build_input_stream callback to, like recent output refactor 2019-07-05 05:51:30 +10:00
mitchmindtree cc70a10c12 Remove unused supported_formats_err function 2019-07-05 05:51:29 +10:00
mitchmindtree dc6c5c5a7c Remove unnecessary asio_utils mod 2019-07-05 05:51:29 +10:00
mitchmindtree 50aa0585be Remove unwieldy macro from output stream callback
Instead, we use some traits and generics in an attempt to retain a
little readability. See the remaining TODOs in this section for required
future work.
2019-07-05 05:51:29 +10:00
mitchmindtree b6181d4362 Add impl Send for AsioStream 2019-07-05 05:51:29 +10:00
mitchmindtree 0f510a9512 Update README for Host API tweaks. Fix typos in steps. 2019-07-05 05:51:29 +10:00
mitchmindtree d739a5b79d Majority of ASIO host update following refactor
Currently not compiling - still need to address some global items within
asio-sys, including the `set_callback` function and the double buffer
globals.
2019-07-05 05:51:29 +10:00
mitchmindtree efe683133c Refactor asio-sys to use less global state and more RAII
The asio-sys examples have been tested and still work nicely. The CPAL
asio host has not yet been updated for these changes.
2019-07-05 05:51:29 +10:00
mitchmindtree 05f8b7dc43 Fix remaining compile errors for ASIO host
Now runs the beep and enumerate examples nicely! Time to do a proper
code review of the ASIO stuff and see how to best take advantage of the
new `Host` API.
2019-07-05 05:51:28 +10:00
mitchmindtree 747caeee38 Get asio-sys examples working with latest API updates 2019-07-05 05:51:28 +10:00
mitchmindtree 09fd5562be Update ASIO implementation for new error handling and Host API
This is currently untested and will almost certainly not build. I'm
about to move into a Windows VM to get everything running properly
again.
2019-07-05 05:51:28 +10:00
mitchmindtree 2bc9f85970 Update supported_formats methods for all sample rates and channel combos
Closes #32.
2019-07-05 05:51:28 +10:00
Tom Gowan bc94d167ae fix endianess 2019-07-05 05:51:28 +10:00
Tom Gowan 49bc3ee367 remove release symbols 2019-07-05 05:51:28 +10:00
Tom Gowan f2c8099810 bug fix and comment 2019-07-05 05:51:27 +10:00
Tom Gowan 5eb311d8be float conversion fix 2019-07-05 05:51:27 +10:00
Tom Gowan a3defde208 Checks formats 2019-07-05 05:51:27 +10:00
Tom Gowan c255da24bf stream id bug 2019-07-05 05:51:27 +10:00
Tom Gowan fd808b95e9 indentation and no clean up on destroy stream 2019-07-05 05:51:27 +10:00
mitchmindtree b70e27ed87 Change step 7. to refer to VCVARS.
Also adds a note about the `CPAL_ASIO_SDK` environment variable
determining whether or not cpal will attempt to build ASIO and generate
bindings to it.
2019-07-05 05:51:27 +10:00
mitchmindtree 0ff0b65647 Add ASIO guide to README 2019-07-05 05:51:27 +10:00
Tom Gowan ab3b76ad75 fixes, remove transmute 2019-07-05 05:51:26 +10:00
Tom Gowan 7950045240 minor fixes 2019-07-05 05:51:26 +10:00
Tom Gowan 062205160c remove build.bat 2019-07-05 05:51:26 +10:00
Tom Gowan 25070464f9 git ignore, temp files, fetch_add, os cfg 2019-07-05 05:51:26 +10:00
Tom Gowan 523d25ad49 remove u16 2019-07-05 05:51:26 +10:00
Tom Gowan 616974353b opt in and bug fix 2019-07-05 05:51:26 +10:00
Tom Gowan 1f24c76e6a commenting and rustfmt for device 2019-07-05 05:51:26 +10:00
Tom Gowan 5248455cb7 commets and rustfmt for stream 2019-07-05 05:51:25 +10:00
Tom Gowan 72c5e9a8c1 asio sys lib comments and rust fmt 2019-07-05 05:51:25 +10:00
Tom Gowan f6d1a74be2 asio sys lib comments and rust fmt 2019-07-05 05:51:25 +10:00
Tom Gowan ffcbc02e52 multi channels 2019-07-05 05:51:25 +10:00
Tom Gowan 6e0eb073d1 sample rate support 2019-07-05 05:51:25 +10:00
Tom Gowan b0b0484d4b endian conversion 2019-07-05 05:51:25 +10:00
Tom Gowan 5ec6da3aad Fixed driver bug 2019-07-05 05:51:24 +10:00
Tom Gowan 6a71f0a801 choose backend 2019-07-05 05:51:24 +10:00
Tom Gowan 91f2edb277 utils as mod 2019-07-05 05:51:24 +10:00
Tom Gowan ed50bb9923 adding outputs 2019-07-05 05:51:24 +10:00
Tom Gowan ff7fd62a2d clean up 2019-07-05 05:51:24 +10:00
Tom Gowan 93f75940d6 fixed offset bug 2019-07-05 05:51:24 +10:00
Tom Gowan 8193bc9f79 sharing asio streams 2019-07-05 05:51:24 +10:00
Tom Gowan 76eb07a274 Multiple streams 2019-07-05 05:51:23 +10:00
Tom Gowan c24fa62028 error handling 2019-07-05 05:51:23 +10:00
Tom Gowan ec172bbc47 error wrappers 2019-07-05 05:51:23 +10:00
Tom Gowan 4ba291e8be multi channel support 2019-07-05 05:51:23 +10:00
Tom Gowan 2ef7008615 Keep driver alive 2019-07-05 05:51:23 +10:00