270 Commits

Author SHA1 Message Date
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
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
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
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
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
4ba291e8be multi channel support 2019-07-05 05:51:23 +10:00
Tom Gowan
ae7a03d788 Device rewrite Fixes #1 Fixes #12 2019-07-05 05:51:23 +10:00
Tom Gowan
056630cca3 removed allocation from output 2019-07-05 05:51:23 +10:00
Tom Gowan
910e0ba351 working record wav 2019-07-05 05:51:22 +10:00
Tom Gowan
d430000d2c beep working 2019-07-05 05:51:22 +10:00
Tom Gowan
8d5cb951d8 asio_utils 2019-07-05 05:51:22 +10:00
Tom Gowan
9c355f5579 fixed buffer 2019-07-05 05:51:22 +10:00
DMSDeveloper
c8c00793c0 attemp at removing buffer 2 2019-07-05 05:51:22 +10:00
DMSDeveloper
ab7e17558f attemp at removing buffer 2019-07-05 05:51:22 +10:00
DMSDeveloper
9a084347db removed itertools 2019-07-05 05:51:21 +10:00
DMSDeveloper
892024f5d8 minor fixes 2 2019-07-05 05:51:21 +10:00
DMSDeveloper
a1740a9282 record wav working v1 2019-07-05 05:51:21 +10:00
DMSDeveloper
fe4d108477 minor fixes 2019-07-05 05:51:21 +10:00
DMSDeveloper
c978583863 recording v1 2019-07-05 05:51:21 +10:00
DMSDeveloper
2cfd60757a working on windows 2019-07-05 05:51:21 +10:00
Tom Gowan
49968f4b82 change of branch 2019-07-05 05:51:21 +10:00
mitchmindtree
5e4f384992 Refactor Host and related traits into a new traits module
This is a draft implementation of #294. I'll leave this open for
feedback and potentially better trait naming suggestions or better
solutions in general!

cc @ishitatsuyuki
2019-06-29 14:45:15 +02:00
mitchmindtree
3603cbaee7 Remove macOS sleep loop in favour of using Condvar
This solution was originally posted by @HybridEidolon in #185. Sorry it
took so long! I thought it might be easier to open a new PR as half of
your implementation here has already been implemented in a following PR
(namely, the change from an unnecessary `Vec` of callbacks to a single
user callback).

Closes #185.
2019-06-25 17:38:54 +02:00
mitchmindtree
51eba20c44 Remove DefaultHost type in favour of determining at runtime
Re-exports host-specific types so that they are available within the
platform module if necessary (e.g. host::asla::Host as AlsaHost).

Allows for converting platform-specific host types (e.g. AlsaHost) into
the dynamically dispatched type generated for the target platform
(`Host`).
2019-06-25 16:54:50 +02:00
mitchmindtree
283a73054e Address some nits highlighted by ishitatsuyuki 2019-06-25 16:26:27 +02:00
mitchmindtree
e131979d22 Update README for addition of host enumeration API 2019-06-25 00:39:51 +02:00
mitchmindtree
6e9b40e225 Minimize compiler flags by using nested platform_impl mods
Also addresses some other CI errors:

- Add Host::new constructor for null backend
- Add missing DevicesError import to coreaudio backend
2019-06-24 23:22:37 +02:00
mitchmindtree
f7cf0c65b8 Implement Host API for coreaudio backend 2019-06-24 22:44:57 +02:00
mitchmindtree
6b6830ab57 Implement Host API for emscripten backend 2019-06-24 22:38:48 +02:00