Andrew Kelley
d168a7d192
ALSA: better device detection
...
* Don't suppress sysdefault.
* If default and sysdefault are missing, use the first device as
the default device.
* In sio_record example, don't segfault when device not found or
probe error.
* Workaround for Raspberry Pi driver that incorrectly reports
itself as Output when it is actually Input.
See #44 .
2015-11-10 04:23:27 -07:00
James Dyson
4cf76cb228
Fixed error message from no input found
2015-11-05 18:23:27 +11:00
Andrew Kelley
a37b8cf847
update tests to catch pausing during write_callback
2015-10-28 15:42:52 -07:00
Andrew Kelley
b202f6746b
underflow test: add --device and --raw params
2015-10-13 00:20:56 -07:00
Andrew Kelley
8bba0de3c1
add --latency and --sample-rate to sine example
2015-09-28 18:12:17 -07:00
Andrew Kelley
0047eb2776
sio_microphone: make latency a command line arg
...
See #22
2015-09-08 10:37:16 -07:00
Andrew Kelley
8406dcd0ad
sio_record: explain about shutting down
...
closes #12
2015-09-05 11:30:18 -07:00
Andrew Kelley
9d3c08fa3f
sio_record: no fwrite in read_callback
...
See #12
2015-09-04 18:01:57 -07:00
Andrew Kelley
06dc7704a3
ALSA: fix sometimes calling write_callback with 0 frame_count_max
2015-09-02 10:24:04 -07:00
Andrew Kelley
20fe4ac8d0
sine example: display connected backend
2015-09-01 17:16:48 -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
cd72f45f06
ALSA: fix clear buffer behavior
2015-09-01 15:06:33 -07:00
Andrew Kelley
fe4a04d93c
ALSA: better pause/unpause behavior
2015-09-01 14:43:50 -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
195ea59209
ALSA: fix playback on raw device
2015-08-26 12:31:09 -07:00
Andrew Kelley
8c9c4f85c2
sine example: remove panics
2015-08-25 00:08:20 -07:00
Andrew Kelley
d1f27fad83
WASAPI: use stream name for session display name
2015-08-24 19:52:43 -07:00
Andrew Kelley
1bb10e6a13
microphone example: more cli parameters
2015-08-24 18:10:09 -07:00
Andrew Kelley
b3dfcb4526
WASAPI: microphone example works
2015-08-24 17:42:57 -07:00
Andrew Kelley
90fa377c99
WASAPI: sine wave example works with raw device
2015-08-21 17:11:46 -07:00
Andrew Kelley
a05e0e283e
WASAPI: fix device cleanup segfault
2015-08-21 13:08:11 -07:00
Andrew Kelley
2eb8ce24cf
sine example: add parameter to specify device
2015-08-20 17:38:01 -07:00
Andrew Kelley
2514e19195
build: fix sine example compiling with MSVC
2015-08-20 00:44:56 -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
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
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
f77663399f
CoreAudio: obtain most device information
2015-08-01 22:10:43 -07:00
Andrew Kelley
860370d859
rename examples, install them, and correct #include path
2015-07-30 14:16:22 -07:00
Andrew Kelley
4ba1fd91a1
rename device name and description to id and name
2015-07-30 10:26:36 -07:00
Andrew Kelley
5503072fc8
ALSA: recover from underflow gracefully
2015-07-29 22:39:27 -07:00
Andrew Kelley
2900616e9b
flesh out buffer semantics
2015-07-29 21:50:12 -07:00
Andrew Kelley
44569708a0
Delete the concept of prebuffering
2015-07-29 20:55:28 -07:00
Andrew Kelley
0dee34a84e
PulseAudio: fix microphone example
2015-07-29 13:02:17 -07:00
Andrew Kelley
31678c7777
examples: add --jack param
2015-07-29 01:13:57 -07:00
Andrew Kelley
754343bba6
microphone example works with JACK
2015-07-28 18:47:28 -07:00
Andrew Kelley
6df84096f3
sine example works with JACK
2015-07-28 11:28:07 -07:00
Andrew Kelley
3dd9e513bc
add JACK backend skeleton
2015-07-24 18:43:14 -07:00
Andrew Kelley
ab8a2c2ffe
microphone example: recover from underflow
2015-07-24 13:33:41 -07:00
Andrew Kelley
3d3f9f91a2
microphone example: no more glitches
2015-07-24 13:26:46 -07:00
Andrew Kelley
efa7b7cbc0
ALSA input stream: add missing clean up
2015-07-23 21:07:51 -07:00
Andrew Kelley
34039b4858
microphone example working with ALSA
2015-07-23 20:55:36 -07:00
Andrew Kelley
511fcafc3b
dummy: implement prebuffering
2015-07-23 16:49:44 -07:00
Andrew Kelley
69764e1afa
microphone example working with dummy backend
2015-07-23 15:04:41 -07:00
Andrew Kelley
e7dc300cc6
microphone example working with PulseAudio
2015-07-22 15:43:45 -07:00
Andrew Kelley
db06391646
ALSA: support non mmap device access
2015-07-22 00:04:17 -07:00
Andrew Kelley
1eeeff5a24
PulseAudio works again
2015-07-20 22:55:30 -07:00
Andrew Kelley
96c8332246
dummy backend: fix playback
2015-07-20 00:35:46 -07:00
Andrew Kelley
24f466a0a0
list_devices takes arguments to override backend
2015-07-20 00:00:43 -07:00