Update CPAL to version 0.10.0. #298
Merged
+23
−7
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is quite a significant update for CPAL, including a number of
breaking changes. Here is a list of the major changes along with
links to where you can find more information:
Host
API has been introduced in Introduce aHost
API #289 along with a follow-uprefactor in Refactor
Host
and related traits into a newtraits
module #295. Please see the examples for a demonstration of howto update your code. The necessary changes should hopefully be
minimal. If this has caused you any major difficulty please let us
know in an issue!
Steinberg's ASIO audio driver API on Windows. Please see the ASIO
section of the README for more information on how to setup CPAL with
ASIO support for your project.
StreamEvent
srather than buffers in order to support handling stream errors. User Callback API
StreamEvent
Overhaul #288.advantage of the
failure
crate and adding support forbackend-specific errors with custom messages. Many unnecessary
panic!
s have been removed, but a few remain that would indicate bugsin CPAL.
In general, checking out the updated examples will be the easiest way to
get a quick overview on how you can update your own code for these
changes.
The CHANGELOG.md has been updated to include these changes.
This PR also includes a few small changes that managed to slip through
the cracks in #289 and #295. Namely,
Devices
,SupportedInputFormats
and
SupportedOutputFormats
have been re-exported in the crate root.The
Hash
implementation has also been re-added to theStreamId
typeto avoid some potentially frustrating downstream breakage.