Merge pull request #298 from mitchmindtree/publish

Update CPAL to version 0.10.0.
This commit is contained in:
mitchmindtree 2019-07-05 20:29:42 +02:00 committed by GitHub
commit 0f393f48a5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 23 additions and 7 deletions

View File

@ -1,5 +1,16 @@
# Unreleased # Unreleased
# Version 0.10.0 (2019-07-05)
- core-foundation-sys and coreaudio-rs version bumps.
- Add an ASIO host, available under Windows.
- Introduce a new Host API, adding support for alternative audio APIs.
- Remove sleep loop on macOS in favour of using a `Condvar`.
- Allow users to handle stream callback errors with a new `StreamEvent` type.
- Overhaul error handling throughout the crate.
- Remove unnecessary Mutex from ALSA and WASAPI backends in favour of channels.
- Remove `panic!` from OutputBuffer Deref impl as it is no longer necessary.
# Version 0.9.0 (2019-06-06) # Version 0.9.0 (2019-06-06)
- Better buffer handling - Better buffer handling

View File

@ -1,8 +1,8 @@
[package] [package]
name = "cpal" name = "cpal"
version = "0.9.0" version = "0.10.0"
authors = ["The CPAL contributors", "Pierre Krieger <pierre.krieger1708@gmail.com>"] authors = ["The CPAL contributors", "Pierre Krieger <pierre.krieger1708@gmail.com>"]
description = "Low-level cross-platform audio playing library in pure Rust." description = "Low-level cross-platform audio I/O library in pure Rust."
repository = "https://github.com/tomaka/cpal" repository = "https://github.com/tomaka/cpal"
documentation = "https://docs.rs/cpal" documentation = "https://docs.rs/cpal"
license = "Apache-2.0" license = "Apache-2.0"

View File

@ -2,6 +2,11 @@
name = "asio-sys" name = "asio-sys"
version = "0.1.0" version = "0.1.0"
authors = ["Tom Gowan <tomrgowan@gmail.com>"] authors = ["Tom Gowan <tomrgowan@gmail.com>"]
description = "Low-level interface and binding generation for the steinberg ASIO SDK."
repository = "https://github.com/tomaka/cpal"
documentation = "https://docs.rs/asio-sys"
license = "Apache-2.0"
keywords = ["audio", "sound", "asio", "steinberg"]
build = "build.rs" build = "build.rs"
[target.'cfg(any(target_os = "windows"))'.build-dependencies] [target.'cfg(any(target_os = "windows"))'.build-dependencies]

View File

@ -150,8 +150,8 @@ extern crate lazy_static;
extern crate stdweb; extern crate stdweb;
pub use platform::{ pub use platform::{
ALL_HOSTS, Device, EventLoop, Host, HostId, StreamId, available_hosts, ALL_HOSTS, Device, Devices, EventLoop, Host, HostId, SupportedInputFormats,
default_host, host_from_id, SupportedOutputFormats, StreamId, available_hosts, default_host, host_from_id,
}; };
pub use samples_formats::{Sample, SampleFormat}; pub use samples_formats::{Sample, SampleFormat};

View File

@ -64,7 +64,7 @@ macro_rules! impl_platform_host {
/// The **StreamId** implementation associated with the platform's dynamically dispatched /// The **StreamId** implementation associated with the platform's dynamically dispatched
/// **Host** type. /// **Host** type.
#[derive(Clone, Debug, Eq, PartialEq)] #[derive(Clone, Debug, Eq, Hash, PartialEq)]
pub struct StreamId(StreamIdInner); pub struct StreamId(StreamIdInner);
/// The **SupportedInputFormats** iterator associated with the platform's dynamically /// The **SupportedInputFormats** iterator associated with the platform's dynamically
@ -107,7 +107,7 @@ macro_rules! impl_platform_host {
)* )*
} }
#[derive(Clone, Debug, Eq, PartialEq)] #[derive(Clone, Debug, Eq, Hash, PartialEq)]
enum StreamIdInner { enum StreamIdInner {
$( $(
$HostVariant(crate::host::$host_mod::StreamId), $HostVariant(crate::host::$host_mod::StreamId),

View File

@ -195,4 +195,4 @@ pub trait EventLoopTrait {
} }
/// The set of required bounds for host `StreamId` types. /// The set of required bounds for host `StreamId` types.
pub trait StreamIdTrait: Clone + std::fmt::Debug + PartialEq + Eq {} pub trait StreamIdTrait: Clone + std::fmt::Debug + std::hash::Hash + PartialEq + Eq {}