Andrew Kelley
8e30053962
JACK: delete broken pause implementation
...
Previously, calling soundio_outstream_pause or soundio_instream_pause
during the write_callback or read_callback would cause a deadlock. Now,
attempting to pause always results in SoundIoErrorBackendIncompatible.
Closes #39
2015-10-28 16:01:08 -07:00
Andrew Kelley
0a0715eb72
architecture independent header files
...
Do endian detection in the header file instead of cmake.
2015-09-24 09:26:17 -07:00
Andrew Kelley
a9e455aec8
docs: cleanup
2015-09-18 21:20:53 -07:00
Andrew Kelley
65e1d8bdd1
docs: fix typo
2015-09-18 21:17:16 -07:00
Andrew Kelley
71e31b88fe
os: fix crash when creating non high priority thread fails
2015-09-17 15:04:34 -07:00
Andrew Kelley
23104161a8
docs: fix incorrect docs for soundio_instream_pause
2015-09-14 04:02:58 -07:00
Andrew Kelley
2a68f63079
ALSA: pause gives error when state is invalid
2015-09-11 20:33:40 -07:00
Andrew Kelley
b5056f142e
docs: read_callback and write_callback must be real time safe
2015-09-04 11:33:59 -07:00
Andrew Kelley
066553b07e
README touchup
2015-09-03 10:54:50 -07:00
Andrew Kelley
e444b8823b
JACK: pass the latency test
...
See #2
2015-09-02 15:23:41 -07:00
Andrew Kelley
59fca8cb75
latency test emits periodic pulses
...
See #2
2015-09-02 12:22:06 -07:00
Andrew Kelley
debab8e70f
get latency skeleton
...
See #2
2015-09-02 12:22:03 -07:00
Andrew Kelley
1d2cf2ed59
docs: on_backend_disconnect clarification
2015-09-01 18:40:03 -07:00
Andrew Kelley
2f618487ba
docs: fix incorrect docs
2015-09-01 18:36:55 -07:00
Andrew Kelley
c14d61fa32
WASAPI: better pause/unpause and clear buffer behavior
...
See #3
2015-09-01 16:31:56 -07:00
Andrew Kelley
fe4a04d93c
ALSA: better pause/unpause behavior
2015-09-01 14:43:50 -07:00
Andrew Kelley
0f508fcf19
doc cleanup
2015-08-27 23:37:29 -07:00
Andrew Kelley
ff73c08667
add sio_record example
2015-08-27 23:32:22 -07:00
Andrew Kelley
7a714298c1
add soundio_force_device_scan API
2015-08-27 21:45:22 -07:00
Andrew Kelley
16437bd357
various code adjustments
...
* doc clarifications
* examples compile with c99 not c11
* fix pulseaudio on_backend_disconnected not firing only during
flush events
* make wait events more efficient
* fix alsa devices race condition
* fix backend disconnected code handling
* add overflow test
* fix on_events_signal not called at correct times
* refactor pulseaudio device scanning
* fix SoundIoErrorNoSuchDevice string value
2015-08-27 20:57:53 -07:00
Andrew Kelley
d6e41672f7
add test for recovering from backend disconnecting
2015-08-26 17:45:59 -07:00
Andrew Kelley
8d3a32e668
PulseAudio: fix scan devices out of memory race condition
2015-08-26 15:54:03 -07:00
Andrew Kelley
a0562af122
document possible errors
2015-08-26 15:17:51 -07:00
Andrew Kelley
c96405a091
rt prio warning behavior is overridable
2015-08-26 12:54:13 -07:00
Andrew Kelley
1a52d9956d
more docs
2015-08-26 11:23:20 -07:00
Andrew Kelley
64b5564ae1
use doxygen to generate documentation
2015-08-26 02:40:04 -07:00
Andrew Kelley
2c9055d0d3
WASAPI: call COM functions in dedicated thread for outstream
2015-08-24 23:33:27 -07:00
Andrew Kelley
d1f27fad83
WASAPI: use stream name for session display name
2015-08-24 19:52:43 -07:00
Andrew Kelley
b3dfcb4526
WASAPI: microphone example works
2015-08-24 17:42:57 -07:00
Andrew Kelley
3b49292897
use hidden visibility by default and explicitly export
...
Also don't expose os functions.
And do the dllexport/dllimport thing.
2015-08-20 14:48:19 -07:00
Andrew Kelley
fbc7318268
remove the concept of period duration from the API
...
also more progress on WASAPI
2015-08-13 22:54:15 -07:00
Andrew Kelley
e82c3e89da
WASAPI: get period duration for raw devices
2015-08-13 10:18:46 -07:00
Andrew Kelley
ba65bdb131
WASAPI: shared mode devices support any sample rate
2015-08-12 18:57:34 -07:00
Andrew Kelley
75185d17d7
WASAPI: get the list of supported formats from devices
2015-08-12 17:11:03 -07:00
Andrew Kelley
97abe08f0e
WASAPI: get the number of available audio devices
2015-08-10 15:22:08 -07:00
Andrew Kelley
21bf405859
WASAPI skeleton
2015-08-08 15:22:50 -07:00
Andrew Kelley
7238d29666
sample rate is exposed as a list of min/max pairs
2015-08-08 14:44:31 -07:00
Andrew Kelley
c381526205
callbacks supply min and max frame count parameters
...
This changes the semantics of the callbacks so that instead of
a single `requested_frame_count` or `available_frame_count`,
the callbacks get a minimum frame count and maximum frame count.
The callback must write at least the minimum or get an underflow.
The minimum will be 0 on ALSA, PulseAudio, and Dummy, and will
equal the maximum on CoreAudio and JACK.
This ensures optimal behavior regardless of buffer size.
2015-08-04 21:57:46 -07:00
Andrew Kelley
8da5ae0798
PulseAudio: opening out stream populates buffer_duration
2015-08-04 13:09:45 -07:00
Andrew Kelley
a378cac92d
JACK: fix not setting outstream buffer_duration
2015-08-04 12:25:15 -07:00
Andrew Kelley
f87961275d
write and read functions no longer allow setting frame count
...
CoreAudio and JACK both have this limitation
2015-08-04 00:56:03 -07:00
Andrew Kelley
a774a72958
CoreAudio: get the full list of available sample rates
2015-08-03 17:06:38 -07:00
Andrew Kelley
c347629c8d
CoreAudio: obtain device buffer duration
2015-08-03 15:14:41 -07:00
Andrew Kelley
f77663399f
CoreAudio: obtain most device information
2015-08-01 22:10:43 -07:00
Andrew Kelley
7371ce5146
Fix kqueue-based cond and signal implementation
2015-08-01 13:01:49 -07:00
Andrew Kelley
7bab3f0189
small docs update
2015-07-31 18:53:39 -07:00
Andrew Kelley
4c5742eb29
CoreAudio skeleton
2015-07-31 18:52:51 -07:00
Andrew Kelley
860370d859
rename examples, install them, and correct #include path
2015-07-30 14:16:22 -07:00