diff --git a/examples/beep.rs b/examples/beep.rs index e0266aa79..7d3b23d88 100644 --- a/examples/beep.rs +++ b/examples/beep.rs @@ -1,4 +1,3 @@ -use anyhow; use clap::Parser; use cpal::{ traits::{DeviceTrait, HostTrait, StreamTrait}, diff --git a/src/host/coreaudio/macos/mod.rs b/src/host/coreaudio/macos/mod.rs index 9a14ab269..55cd988ca 100644 --- a/src/host/coreaudio/macos/mod.rs +++ b/src/host/coreaudio/macos/mod.rs @@ -33,6 +33,7 @@ use std::fmt; use std::mem; use std::os::raw::c_char; use std::ptr::null; +use std::rc::Rc; use std::slice; use std::sync::mpsc::{channel, RecvTimeoutError}; use std::sync::{Arc, Mutex}; @@ -306,7 +307,7 @@ impl Device { channels: n_channels as ChannelCount, min_sample_rate: SampleRate(range.mMinimum as _), max_sample_rate: SampleRate(range.mMaximum as _), - buffer_size: buffer_size.clone(), + buffer_size, sample_format, }; fmts.push(fmt); @@ -568,7 +569,7 @@ impl Device { let sample_rate = config.sample_rate; type Args = render_callback::Args; audio_unit.set_input_callback(move |args: Args| unsafe { - let ptr = (*args.data.data).mBuffers.as_ptr() as *const AudioBuffer; + let ptr = (*args.data.data).mBuffers.as_ptr(); let len = (*args.data.data).mNumberBuffers as usize; let buffers: &[AudioBuffer] = slice::from_raw_parts(ptr, len); @@ -580,7 +581,7 @@ impl Device { } = buffers[0]; let data = data as *mut (); - let len = (data_byte_size as usize / bytes_per_channel) as usize; + let len = data_byte_size as usize / bytes_per_channel; let data = Data::from_parts(data, len, sample_format); // TODO: Need a better way to get delay, for now we assume a double-buffer offset. @@ -685,7 +686,7 @@ impl Device { } = (*args.data.data).mBuffers[0]; let data = data as *mut (); - let len = (data_byte_size as usize / bytes_per_channel) as usize; + let len = data_byte_size as usize / bytes_per_channel; let mut data = Data::from_parts(data, len, sample_format); let callback = match host_time_to_stream_instant(args.time_stamp.mHostTime) { diff --git a/src/host/coreaudio/macos/property_listener.rs b/src/host/coreaudio/macos/property_listener.rs index 392d2c8dc..cbe8ec2c2 100644 --- a/src/host/coreaudio/macos/property_listener.rs +++ b/src/host/coreaudio/macos/property_listener.rs @@ -8,7 +8,7 @@ use crate::BuildStreamError; /// A double-indirection to be able to pass a closure (a fat pointer) /// via a single c_void. -struct PropertyListenerCallbackWrapper(Box ()>); +struct PropertyListenerCallbackWrapper(Box); /// Maintain an audio object property listener. /// The listener will be removed when this type is dropped. @@ -21,7 +21,7 @@ pub struct AudioObjectPropertyListener { impl AudioObjectPropertyListener { /// Attach the provided callback as a audio object property listener. - pub fn new () + 'static>( + pub fn new( audio_object_id: AudioObjectID, property_address: AudioObjectPropertyAddress, callback: F, diff --git a/src/host/coreaudio/mod.rs b/src/host/coreaudio/mod.rs index f1b47f82c..f82f5da5c 100644 --- a/src/host/coreaudio/mod.rs +++ b/src/host/coreaudio/mod.rs @@ -52,8 +52,8 @@ fn asbd_from_config( let frames_per_packet = 1; let bytes_per_packet = frames_per_packet * bytes_per_frame; let format_flags = match sample_format { - SampleFormat::F32 => (kAudioFormatFlagIsFloat | kAudioFormatFlagIsPacked) as u32, - _ => kAudioFormatFlagIsPacked as u32, + SampleFormat::F32 => kAudioFormatFlagIsFloat | kAudioFormatFlagIsPacked, + _ => kAudioFormatFlagIsPacked, }; AudioStreamBasicDescription { mBitsPerChannel: bits_per_channel as _, diff --git a/src/lib.rs b/src/lib.rs index 3b6683c5e..74405a4a2 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -742,7 +742,7 @@ impl SupportedStreamConfigRange { #[test] fn test_cmp_default_heuristics() { - let mut formats = vec![ + let mut formats = [ SupportedStreamConfigRange { buffer_size: SupportedBufferSize::Range { min: 256, max: 512 }, channels: 2,