Commit Graph

35 Commits

Author SHA1 Message Date
Eidolon e9856c07ed [coreaudio] Remove intermediate buffer (#182)
* [coreaudio] Remove intermediate buffer

Fixes #181

* [coreaudio] Create voice id after setting format
2017-11-03 10:51:02 +01:00
Eidolon 77cd690b00 [coreaudio] Simplify error conversion (#183) 2017-11-03 10:50:02 +01:00
tomaka 91adc3e380 Docs and style improvements (#174)
* Improve the crate root documentation

* Add entry in CHANGELOG

* Run rustfmt on the code

* More improvements to documentation
2017-10-23 16:41:38 +02:00
tomaka 87949d859b Add SupportedFormat (#168) 2017-10-20 21:18:40 +02:00
tomaka c28407b26d Fix warnings and reduce scope of libc (#166) 2017-10-19 12:44:14 +02:00
tomaka 6ae01f437c RFC: Rework the API [WIP] (#165)
* Rework the API to not use futures anymore

* Add some comments

* Update the MacOS backend

* Restore the null implementation

* Add an emscripten backend

* Remove erroneously added feature

* Fix to_f32 formula

* [WIP] Alsa backend

* Alsa backend compiling

* Working ALSA backend

* Fix tests

* Move WASAPI endpoint to endpoint module

* Fix WASAPI warnings

* Rework the WASAPI backend

* Check overflows for voice ID

* Add comments and minor fixes to WASAPI backend

* Add a changelog
2017-10-18 20:24:05 +02:00
tomaka 4b019243c2 Rename the methods of the backend as well (#164) 2017-10-12 11:54:09 +02:00
tomaka 2028d5907f Run rustfmt on the code (#162) 2017-10-11 13:24:49 +02:00
egnehots bd88d9d6ff Document RemoteIO as ios unit fallback
iOS provides three I/O (input/output) units. The vast majority of audio-unit applications use the Remote I/O unit, which connects to input and output audio hardware and provides low-latency access to individual incoming and outgoing audio sample values. For VoIP apps, the Voice-Processing I/O unit extends the Remote I/O unit by adding acoustic echo cancelation and other features. To send audio back to your application rather than to output audio hardware, use the Generic Output unit.

See https://developer.apple.com/library/content/documentation/MusicAudio/Conceptual/AudioUnitHostingGuide_iOS/UsingSpecificAudioUnits/UsingSpecificAudioUnits.html
2017-10-10 20:43:37 +02:00
egnehots 33a8cde056 Minimal ios support 2017-10-10 18:24:53 +02:00
shockham 97657fae4a SampleStream also holds on to the AudioUnit so it is not dropped 2017-04-19 11:44:42 +01:00
shockham 8cfe176e52 Fix for loop in EventLoop::run being optimised out in a release build on macOS 2017-04-07 11:06:00 +01:00
Ronald Kinard b44a2ab515 [osx] Implement play/pause for coreaudio 2016-10-18 01:20:40 -05:00
mitchmindtree f71a95cd0e Do not lock inner twice. Fixes bug in osx futures 0.1.1 update. 2016-10-01 18:19:27 +10:00
Pierre Krieger 869af718a2 Try fix the OSX code with futures 2016-10-01 09:21:29 +02:00
mitchmindtree cc26897acd Update coreaudio backend to new futures-rs oriented design.
This depends on the changes introduced in #121.

Update to coreaudio 0.6.
2016-08-12 17:49:13 +10:00
Jan Solanti f717817c86 coreaudio: update to coreaudio-rs 0.5.0 2016-07-06 00:13:17 +03:00
Ronald Kinard 4d2767ee42 [osx] Correct implementation of get_pending_samples 2016-06-28 18:09:54 -05:00
Ronald Kinard e9b8f46f73 [osx] Return correct Voice period. 2016-06-14 23:38:52 -05:00
Ronald Kinard b2635a52c5 [osx] Add get_period to Voice 2016-06-01 01:28:59 -05:00
Geoffroy Couprie dd87dbc1d2 Fix compilation on OSX with the new API for coreaudio-rs
this builds upon the following pull request:
https://github.com/tomaka/cpal/pull/81
2016-01-12 17:06:14 +01:00
Ronald Kinard 30e96aa15a coreaudio: implementation cleanup 2015-09-26 23:04:17 -05:00
Ronald Kinard 1cdf5af808 coreaudio: Implement some missing functions.
underflow and get_pending_samples.
2015-09-24 16:24:12 -05:00
Ronald Kinard 53c5529b16 Return correct length of buffer, stub unimpl funcs 2015-09-24 13:19:42 -05:00
Ronald Kinard fd50a113a1 Revert "coreaudio: Add support for U16/I16 PCM formats."
This reverts commit bdef4fb3fe.
2015-09-24 12:54:54 -05:00
Ronald Kinard bdef4fb3fe coreaudio: Add support for U16/I16 PCM formats.
The conversion is done Rust-side instead of using AUHAL's
automatic conversion because I haven't gotten around generics
issues yet.
2015-09-23 23:19:29 -05:00
Ronald Kinard 54fb5b03cc Set coreaudio sample rate to 44100.
This makes rodio demos work correctly!
2015-09-23 22:23:57 -05:00
Ronald Kinard dbf9ae20da Make coreaudio Voice Send/Sync. 2015-09-23 22:14:32 -05:00
Ronald Kinard c841be235c Restore CoreAudio support after API overhaul. 2015-09-23 22:02:28 -05:00
Pierre Krieger 8d21f5ff25 Store the format in the public `Voice` struct 2015-09-22 13:34:06 +02:00
Pierre Krieger 75f828b04f Add #[inline] attributes 2015-09-11 10:55:29 +02:00
Ronald Kinard 6389ab3ece Remove use of box syntax.
Allows build on stable/beta rust.
2015-07-25 17:13:51 -05:00
Pierre Krieger a6c1b14d66 Rustup 2015-03-26 10:03:40 +01:00
mitchmindtree 1d66e18d7e Fixed coreaudio callback to send proper buffersize, removed code in lib where sampleformat affected buffersize 2015-03-03 18:17:21 +11:00
mitchmindtree 1347c7c99d Removed core_audio-sys local bindings in favour of new coreaudio-rs crate 2015-03-01 05:50:29 +11:00