Skip to content

Commit

Permalink
fix issues with cube-coreaudio/coreaudio-sys-utils caused by latest u…
Browse files Browse the repository at this point in the history
…pdate

these guys are out of control. ARM PROCESSA, SUPAKONGPUTA

imagine getting paid to make things worse. this guy is so psyched he's
implementing the "Voice Processing Unit" which is some kind of gimped
computational unit "just for voice"

this shit is seriously reminding me of kutaragi at E3 when he was talking
about the PS3's cell processor (which he kept calling a SUPAKONGPUTA)

i mean the guy made changes to make it RUN SERIALLY, which clearly it must
not have been doing before, and now has a shit ton of asserts to ENSURE IT
RUNS SERIALLY, for his beloved SUPAKONGPUTA processor.

yeah, what a SUPAKONGPUTA indeed.

i welcome any rust experts/coders who can help me make the changes in a
better way.

these are the  commits we'll need:

https://hg.mozilla.org/mozilla-unified/rev/17662e43cc8542dd0a35b099169dfcc2b23b2d59

and thanks to this idiot and OMG VOICEPROCESSOR UNIT, we can probably maek better changes to this diff:

https://hg.mozilla.org/mozilla-unified/rev/d2a56917d9641b5bf5144efe190bd5d07bc72582

either way the changes that were made, and my use of older code (or comments) to address them, won't affect us.

if you have a machine that falls within firefox's minimums: USE THAT. this isn't for you!

this builds fine and i suspect it will run fine as well.
  • Loading branch information
i3roly committed May 31, 2024
1 parent b6fb5a4 commit 3965216
Show file tree
Hide file tree
Showing 8 changed files with 606 additions and 114 deletions.
2 changes: 1 addition & 1 deletion third_party/rust/coreaudio-sys-utils/.cargo-checksum.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"files":{"Cargo.toml":"87292d055a2fc0f070f54abd549a5f79ec8ac33611ecde80ba394f256b88294c","src/aggregate_device.rs":"7d2bd5f5fd7f3d008ebb69ad81f522ca0cb73db6d7b3e50ed1a63ea26ff721f4","src/audio_object.rs":"5447179330a862659a25bceedfdc5d29a1296f63490908d1c868c6b21c5f95a1","src/audio_unit.rs":"d783878930df4923b57ad230138c0f3fd6b0b9bb80a39725092ff4c6615162d8","src/cf_mutable_dict.rs":"fc42edd270c6dfb02f123214d2d8e487bbd62b5bd923b71eec13190fd0104d2a","src/dispatch.rs":"f6267fe587217c3d3ad5fe7f3a35955221c936103bf853c477a2e44eba5f1e46","src/lib.rs":"bcc559d69ef6ed0cbea5b2a36fec89d8c011eb9da70e2f26c00f881ad97a2546","src/string.rs":"28f88b816c768bcfcc674a60d962b93f1c94e5e0f4cc8ed2a1301138b91039e7"},"package":null}
{"files":{"Cargo.toml":"87292d055a2fc0f070f54abd549a5f79ec8ac33611ecde80ba394f256b88294c","src/aggregate_device.rs":"7d2bd5f5fd7f3d008ebb69ad81f522ca0cb73db6d7b3e50ed1a63ea26ff721f4","src/audio_device_extensions.rs":"44ae6cd160987ecb6dae4ac8752fca7ed43fa6921ddc5525b051fe20dbd61fb8","src/audio_object.rs":"5447179330a862659a25bceedfdc5d29a1296f63490908d1c868c6b21c5f95a1","src/audio_unit.rs":"d783878930df4923b57ad230138c0f3fd6b0b9bb80a39725092ff4c6615162d8","src/cf_mutable_dict.rs":"fc42edd270c6dfb02f123214d2d8e487bbd62b5bd923b71eec13190fd0104d2a","src/dispatch.rs":"f6267fe587217c3d3ad5fe7f3a35955221c936103bf853c477a2e44eba5f1e46","src/lib.rs":"c93ed1411dd6cc39db44f57e0d7683bbc54745f84a3c9f9533a088895ec97abe","src/string.rs":"28f88b816c768bcfcc674a60d962b93f1c94e5e0f4cc8ed2a1301138b91039e7"},"package":null}
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ pub fn audio_device_duck(
in_start_time: *const AudioTimeStamp,
in_ramp_duration: f32,
) -> OSStatus {
debug_assert_running_serially();
// can't use this unless we rework queue, if someone wants to do that
//debug_assert_running_serially();
unsafe { AudioDeviceDuck(in_device, in_ducked_level, in_start_time, in_ramp_duration) }
}
1 change: 1 addition & 0 deletions third_party/rust/coreaudio-sys-utils/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ extern crate core_foundation_sys;
extern crate coreaudio_sys;

pub mod aggregate_device;
pub mod audio_device_extensions;
pub mod audio_object;
pub mod audio_unit;
pub mod cf_mutable_dict;
Expand Down
2 changes: 1 addition & 1 deletion third_party/rust/cubeb-coreaudio/.cargo-checksum.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"files":{".circleci/config.yml":"7f3dc865105ca8f33965a7958b1fe2e627ae2d5a703f3b2a4ab6e2e796018597",".editorconfig":"4e53b182bcc78b83d7e1b5c03efa14d22d4955c4ed2514d1ba4e99c1eb1a50ba",".githooks/pre-push":"8b8b26544cd56f54c0c33812551f786bb25cb08c86dbfeb6bf3daad881c826a1",".github/workflows/test.yml":"aa1998a3b104ad131805ca3513832cef3f65300192824f8b1efc9a5a0cc108f6",".travis.yml":"dc07bac53f70f16c9bdf52264bdc58500ae6018c1b4c567bc7642f6b4ca3cc35","Cargo.toml":"a16b883e4fb41bdbbe5f68158040f181aeeffb4573ab0d493e9452f7c6f00541","LICENSE":"6e6f56aff5bbf3cbc60747e152fb1a719bd0716aaf6d711c554f57d92e96297c","README.md":"0007782a05a5330f739ad789c19c82562c82e32386b0447000fc72c0d48405bc","build-audiounit-rust-in-cubeb.sh":"d228a05985dcd02ec1ecac66a2b64dae5a530804a25a7054ccc95905aedfb7ef","install_git_hook.sh":"d38c8e51e636f6b90b489621ac34ccd1d1b1f40dccce3d178ed1da1c5068f16d","install_rustfmt_clippy.sh":"4ae90d8dcb9757cb3ae4ae142ef80e5377c0dde61c63f4a3c32418646e80ca7b","run_device_tests.sh":"d717e598c96e4911d9494b18382d6bd3a8d5038b7d68d3166ad4336e237a97d8","run_sanitizers.sh":"d6c3cde105ae0759e753cc31cab691eb417c4d0ad68f20da5e87fe0138a0d92f","run_tests.sh":"916a7ae4a406d2274417d6eca939a878db5adcb6144e5680d9d148bf90178f1c","src/backend/aggregate_device.rs":"43511107ba2a75a19340ac663c981362ca1b75b679b6c295d88b5035bd7e3619","src/backend/auto_release.rs":"050fdcee74cf46b9a8a85a877e166d72a853d33220f59cf734cbb6ea09daa441","src/backend/buffer_manager.rs":"314c3404f1a44f8c23856f96510779e7e64ebb7dde5abe444946c16d04af7c29","src/backend/device_property.rs":"a7622feaa41db1cd76fd35a85a022e44f4894e396a104a59008d5b8757d2ab4e","src/backend/mixer.rs":"c7c08cab5ad59c3903c2c5de3839b7a50bb64edbebdb6a50f48b58314a4bbd2b","src/backend/mod.rs":"87775f304d4b5258c5818fd67bc162e99c12da4ef70a956203f18e4b7aba0b86","src/backend/resampler.rs":"48bf8f56ae8d60dbabca6417b768000619abee8731ac3902164b45651ac08a4d","src/backend/tests/aggregate_device.rs":"e3f94e118e1dd47941fbba4417de40bddc4254d9f06b1e938f58d8f1aa566a5c","src/backend/tests/api.rs":"566546bec17220641960342374516da3baf6032a8843ac7a6c1f0b1cb8911594","src/backend/tests/backlog.rs":"3b189a7e036543c467cc242af0ed3332721179ee2b1c8847a6db563546f1ac52","src/backend/tests/device_change.rs":"b1b4f7f71de99d07406a8a38dc67e46a43b883d4a845daaf356e72fbe0d5a08b","src/backend/tests/device_property.rs":"ea0be5f8834be494cb33f854ce9d334b5763dc5287f949bcb4bd025d8a8b2d3b","src/backend/tests/interfaces.rs":"c8ca26d0fd098b8a230d9aa8d67a062da2ab3ac0f868739485c793618fc75700","src/backend/tests/manual.rs":"8d485a6666a3f4518b03e39dab80bf2acfd760af2d2f43bad99023cb135b38ca","src/backend/tests/mod.rs":"8dba770023d7f9c4228f0e11915347f0e07da5fd818e3ee4478c4b197af9aa2a","src/backend/tests/parallel.rs":"504613b1b5fa4d67cbb2560cb8d8cef0a4e8929c28b31d9d4695ac5286969f38","src/backend/tests/tone.rs":"779cc14fc2a362bf7f26ce66ad70c0639501176175655a99b7fefb3c59d56c7a","src/backend/tests/utils.rs":"7d74298435260566838ece9a84ee42e4a02c16683f5434d7ba2671a9acf4424f","src/backend/utils.rs":"6c3ffbcd602e6cc9f56deb9ecb07b2eef2e6f074ef924178e466f380aae5c595","src/capi.rs":"21b66b70545bf04ec719928004d1d9adb45b24ced51288f5b2993d79aaf78f5f","src/lib.rs":"5e586d45cd6b3722f0a6736d9252593299269817a153eef1930a5fb9bfbb56f5","todo.md":"efc1f012eb9a331a040cad4ac03aa79307f25885f71b6fb38f3ad7af8d7d515c"},"package":null}
{"files":{".circleci/config.yml":"7f3dc865105ca8f33965a7958b1fe2e627ae2d5a703f3b2a4ab6e2e796018597",".editorconfig":"4e53b182bcc78b83d7e1b5c03efa14d22d4955c4ed2514d1ba4e99c1eb1a50ba",".githooks/pre-push":"8b8b26544cd56f54c0c33812551f786bb25cb08c86dbfeb6bf3daad881c826a1",".github/workflows/test.yml":"cf6ebe6d41b022897360866b526d19ba8843aa82ae99a1d28393985576b6a782",".travis.yml":"dc07bac53f70f16c9bdf52264bdc58500ae6018c1b4c567bc7642f6b4ca3cc35","Cargo.toml":"2698cf87581d8d551ed3ac5875564720ed23d7b788e8d145d4281c8026203cd2","LICENSE":"6e6f56aff5bbf3cbc60747e152fb1a719bd0716aaf6d711c554f57d92e96297c","README.md":"0007782a05a5330f739ad789c19c82562c82e32386b0447000fc72c0d48405bc","build-audiounit-rust-in-cubeb.sh":"d228a05985dcd02ec1ecac66a2b64dae5a530804a25a7054ccc95905aedfb7ef","install_git_hook.sh":"d38c8e51e636f6b90b489621ac34ccd1d1b1f40dccce3d178ed1da1c5068f16d","install_rustfmt_clippy.sh":"4ae90d8dcb9757cb3ae4ae142ef80e5377c0dde61c63f4a3c32418646e80ca7b","run_device_tests.sh":"d717e598c96e4911d9494b18382d6bd3a8d5038b7d68d3166ad4336e237a97d8","run_sanitizers.sh":"d6c3cde105ae0759e753cc31cab691eb417c4d0ad68f20da5e87fe0138a0d92f","run_tests.sh":"916a7ae4a406d2274417d6eca939a878db5adcb6144e5680d9d148bf90178f1c","src/backend/aggregate_device.rs":"0ab2c09549925e76389f7bc99320a7bd3685c743df91f2f998ba6e4643166944","src/backend/auto_release.rs":"050fdcee74cf46b9a8a85a877e166d72a853d33220f59cf734cbb6ea09daa441","src/backend/buffer_manager.rs":"314c3404f1a44f8c23856f96510779e7e64ebb7dde5abe444946c16d04af7c29","src/backend/device_property.rs":"f186017c7b4dc439250e5e3370ec052732907009f378b3ed09fc4770f9b4e4a9","src/backend/mixer.rs":"c7c08cab5ad59c3903c2c5de3839b7a50bb64edbebdb6a50f48b58314a4bbd2b","src/backend/mod.rs":"81a87a667e2abce5f4cc15bf4aad4a40e32008ba9ba2e5448fe86f4fa4c56a41","src/backend/resampler.rs":"48bf8f56ae8d60dbabca6417b768000619abee8731ac3902164b45651ac08a4d","src/backend/tests/aggregate_device.rs":"d61ca263bb6fe893b10561a0ba1519f667d91e083ea9c7f732c63cbe09914e12","src/backend/tests/api.rs":"35939515799c0642b5df0fccadd46d6aa0e20372de2d98827dcde24ee3ad8eb1","src/backend/tests/backlog.rs":"3b189a7e036543c467cc242af0ed3332721179ee2b1c8847a6db563546f1ac52","src/backend/tests/device_change.rs":"b1b4f7f71de99d07406a8a38dc67e46a43b883d4a845daaf356e72fbe0d5a08b","src/backend/tests/device_property.rs":"ea0be5f8834be494cb33f854ce9d334b5763dc5287f949bcb4bd025d8a8b2d3b","src/backend/tests/interfaces.rs":"cd58614435574444d8a1f039dc201cf371cccacd58efbae8ed8fbff919550d0a","src/backend/tests/manual.rs":"632026f25a003d053ab69ddd1000fba10dfd4a679cb853d98fa83365e33e2b28","src/backend/tests/mod.rs":"8dba770023d7f9c4228f0e11915347f0e07da5fd818e3ee4478c4b197af9aa2a","src/backend/tests/parallel.rs":"504613b1b5fa4d67cbb2560cb8d8cef0a4e8929c28b31d9d4695ac5286969f38","src/backend/tests/tone.rs":"779cc14fc2a362bf7f26ce66ad70c0639501176175655a99b7fefb3c59d56c7a","src/backend/tests/utils.rs":"15d17b5078ad725d429685a4c7898beb58f21f08a7016a743dca4b015f3fc280","src/backend/utils.rs":"6c3ffbcd602e6cc9f56deb9ecb07b2eef2e6f074ef924178e466f380aae5c595","src/capi.rs":"21b66b70545bf04ec719928004d1d9adb45b24ced51288f5b2993d79aaf78f5f","src/lib.rs":"5e586d45cd6b3722f0a6736d9252593299269817a153eef1930a5fb9bfbb56f5","todo.md":"efc1f012eb9a331a040cad4ac03aa79307f25885f71b6fb38f3ad7af8d7d515c"},"package":null}
24 changes: 12 additions & 12 deletions third_party/rust/cubeb-coreaudio/src/backend/aggregate_device.rs
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ impl AggregateDevice {
input_id: AudioObjectID,
output_id: AudioObjectID,
) -> std::result::Result<Self, Error> {
debug_assert_running_serially();
//debug_assert_running_serially();
let plugin_id = Self::get_system_plugin_id()?;
let device_id = Self::create_blank_device_sync(plugin_id)?;

Expand Down Expand Up @@ -149,7 +149,7 @@ impl AggregateDevice {
pub fn create_blank_device_sync(
plugin_id: AudioObjectID,
) -> std::result::Result<AudioObjectID, Error> {
debug_assert_running_serially();
//debug_assert_running_serially();
let waiting_time = Duration::new(5, 0);

let condvar_pair = Arc::new((Mutex::new(()), Condvar::new()));
Expand Down Expand Up @@ -218,7 +218,7 @@ impl AggregateDevice {
plugin_id: AudioObjectID,
) -> std::result::Result<AudioObjectID, Error> {
assert_ne!(plugin_id, kAudioObjectUnknown);
debug_assert_running_serially();
//debug_assert_running_serially();

let address = AudioObjectPropertyAddress {
mSelector: kAudioPlugInCreateAggregateDevice,
Expand Down Expand Up @@ -307,7 +307,7 @@ impl AggregateDevice {
input_id: AudioDeviceID,
output_id: AudioDeviceID,
) -> std::result::Result<(), Error> {
debug_assert_running_serially();
//debug_assert_running_serially();
let address = AudioObjectPropertyAddress {
mSelector: kAudioAggregateDevicePropertyFullSubDeviceList,
mScope: kAudioObjectPropertyScopeGlobal,
Expand Down Expand Up @@ -394,7 +394,7 @@ impl AggregateDevice {
assert_ne!(input_id, kAudioObjectUnknown);
assert_ne!(output_id, kAudioObjectUnknown);
assert_ne!(input_id, output_id);
debug_assert_running_serially();
//debug_assert_running_serially();

let output_sub_devices = Self::get_sub_devices(output_id)?;
let input_sub_devices = Self::get_sub_devices(input_id)?;
Expand Down Expand Up @@ -434,7 +434,7 @@ impl AggregateDevice {
device_id: AudioDeviceID,
) -> std::result::Result<Vec<AudioObjectID>, Error> {
assert_ne!(device_id, kAudioObjectUnknown);
debug_assert_running_serially();
//debug_assert_running_serially();

let mut sub_devices = Vec::new();
let address = AudioObjectPropertyAddress {
Expand Down Expand Up @@ -472,7 +472,7 @@ impl AggregateDevice {
}

pub fn get_master_device_uid(device_id: AudioDeviceID) -> std::result::Result<String, Error> {
debug_assert_running_serially();
//debug_assert_running_serially();
let address = AudioObjectPropertyAddress {
mSelector: kAudioAggregateDevicePropertyMainSubDevice,
mScope: kAudioObjectPropertyScopeGlobal,
Expand Down Expand Up @@ -500,7 +500,7 @@ impl AggregateDevice {
) -> std::result::Result<(), Error> {
assert_ne!(device_id, kAudioObjectUnknown);
assert_ne!(primary_id, kAudioObjectUnknown);
debug_assert_running_serially();
//debug_assert_running_serially();

cubeb_log!(
"Set master device of the aggregate device {} to device {}",
Expand Down Expand Up @@ -532,7 +532,7 @@ impl AggregateDevice {
device_id: AudioObjectID,
) -> std::result::Result<(), Error> {
assert_ne!(device_id, kAudioObjectUnknown);
debug_assert_running_serially();
//debug_assert_running_serially();
let address = AudioObjectPropertyAddress {
mSelector: kAudioObjectPropertyOwnedObjects,
mScope: kAudioObjectPropertyScopeGlobal,
Expand Down Expand Up @@ -616,7 +616,7 @@ impl AggregateDevice {
) -> std::result::Result<(), Error> {
assert_ne!(plugin_id, kAudioObjectUnknown);
assert_ne!(device_id, kAudioObjectUnknown);
debug_assert_running_serially();
//debug_assert_running_serially();

let address = AudioObjectPropertyAddress {
mSelector: kAudioPlugInDestroyAggregateDevice,
Expand Down Expand Up @@ -648,7 +648,7 @@ impl AggregateDevice {
assert_ne!(input_id, kAudioObjectUnknown);
assert_ne!(output_id, kAudioObjectUnknown);
assert_ne!(input_id, output_id);
debug_assert_running_serially();
//debug_assert_running_serially();

let label = get_device_label(input_id, DeviceType::INPUT)?;
let input_label = label.into_string();
Expand Down Expand Up @@ -710,7 +710,7 @@ impl Default for AggregateDevice {

impl Drop for AggregateDevice {
fn drop(&mut self) {
debug_assert_running_serially();
//debug_assert_running_serially();
if self.plugin_id != kAudioObjectUnknown && self.device_id != kAudioObjectUnknown {
if let Err(r) = Self::destroy_device(self.plugin_id, self.device_id) {
cubeb_log!(
Expand Down
32 changes: 16 additions & 16 deletions third_party/rust/cubeb-coreaudio/src/backend/device_property.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ pub fn get_device_uid(
devtype: DeviceType,
) -> std::result::Result<StringRef, OSStatus> {
assert_ne!(id, kAudioObjectUnknown);
debug_assert_running_serially();
//debug_assert_running_serially();

let address = get_property_address(Property::DeviceUID, devtype);
let mut size = mem::size_of::<CFStringRef>();
Expand All @@ -23,7 +23,7 @@ pub fn get_device_model_uid(
devtype: DeviceType,
) -> std::result::Result<StringRef, OSStatus> {
assert_ne!(id, kAudioObjectUnknown);
debug_assert_running_serially();
//debug_assert_running_serially();

let address = get_property_address(Property::ModelUID, devtype);
let mut size = mem::size_of::<CFStringRef>();
Expand All @@ -41,7 +41,7 @@ pub fn get_device_transport_type(
devtype: DeviceType,
) -> std::result::Result<u32, OSStatus> {
assert_ne!(id, kAudioObjectUnknown);
debug_assert_running_serially();
//debug_assert_running_serially();

let address = get_property_address(Property::TransportType, devtype);
let mut size = mem::size_of::<u32>();
Expand All @@ -59,7 +59,7 @@ pub fn get_device_source(
devtype: DeviceType,
) -> std::result::Result<u32, OSStatus> {
assert_ne!(id, kAudioObjectUnknown);
debug_assert_running_serially();
//debug_assert_running_serially();

let address = get_property_address(Property::DeviceSource, devtype);
let mut size = mem::size_of::<u32>();
Expand All @@ -77,7 +77,7 @@ pub fn get_device_source_name(
devtype: DeviceType,
) -> std::result::Result<StringRef, OSStatus> {
assert_ne!(id, kAudioObjectUnknown);
debug_assert_running_serially();
//debug_assert_running_serially();

let mut source: u32 = get_device_source(id, devtype)?;
let address = get_property_address(Property::DeviceSourceName, devtype);
Expand All @@ -102,7 +102,7 @@ pub fn get_device_name(
devtype: DeviceType,
) -> std::result::Result<StringRef, OSStatus> {
assert_ne!(id, kAudioObjectUnknown);
debug_assert_running_serially();
//debug_assert_running_serially();

let address = get_property_address(Property::DeviceName, devtype);
let mut size = mem::size_of::<CFStringRef>();
Expand All @@ -120,7 +120,7 @@ pub fn get_device_manufacturer(
devtype: DeviceType,
) -> std::result::Result<StringRef, OSStatus> {
assert_ne!(id, kAudioObjectUnknown);
debug_assert_running_serially();
//debug_assert_running_serially();

let address = get_property_address(Property::DeviceManufacturer, devtype);
let mut size = mem::size_of::<CFStringRef>();
Expand All @@ -138,7 +138,7 @@ pub fn get_device_buffer_frame_size_range(
devtype: DeviceType,
) -> std::result::Result<AudioValueRange, OSStatus> {
assert_ne!(id, kAudioObjectUnknown);
debug_assert_running_serially();
//debug_assert_running_serially();

let address = get_property_address(Property::DeviceBufferFrameSizeRange, devtype);
let mut size = mem::size_of::<AudioValueRange>();
Expand All @@ -156,7 +156,7 @@ pub fn get_device_latency(
devtype: DeviceType,
) -> std::result::Result<u32, OSStatus> {
assert_ne!(id, kAudioObjectUnknown);
debug_assert_running_serially();
//debug_assert_running_serially();

let address = get_property_address(Property::DeviceLatency, devtype);
let mut size = mem::size_of::<u32>();
Expand All @@ -174,7 +174,7 @@ pub fn get_device_streams(
devtype: DeviceType,
) -> std::result::Result<Vec<AudioStreamID>, OSStatus> {
assert_ne!(id, kAudioObjectUnknown);
debug_assert_running_serially();
//debug_assert_running_serially();

let address = get_property_address(Property::DeviceStreams, devtype);

Expand All @@ -198,7 +198,7 @@ pub fn get_device_sample_rate(
devtype: DeviceType,
) -> std::result::Result<f64, OSStatus> {
assert_ne!(id, kAudioObjectUnknown);
debug_assert_running_serially();
//debug_assert_running_serially();

let address = get_property_address(Property::DeviceSampleRate, devtype);
let mut size = mem::size_of::<f64>();
Expand All @@ -216,7 +216,7 @@ pub fn get_ranges_of_device_sample_rate(
devtype: DeviceType,
) -> std::result::Result<Vec<AudioValueRange>, OSStatus> {
assert_ne!(id, kAudioObjectUnknown);
debug_assert_running_serially();
//debug_assert_running_serially();

let address = get_property_address(Property::DeviceSampleRates, devtype);

Expand All @@ -237,7 +237,7 @@ pub fn get_ranges_of_device_sample_rate(

pub fn get_stream_latency(id: AudioStreamID) -> std::result::Result<u32, OSStatus> {
assert_ne!(id, kAudioObjectUnknown);
debug_assert_running_serially();
//debug_assert_running_serially();

let address = get_property_address(
Property::StreamLatency,
Expand All @@ -255,7 +255,7 @@ pub fn get_stream_latency(id: AudioStreamID) -> std::result::Result<u32, OSStatu

pub fn get_stream_terminal_type(id: AudioStreamID) -> std::result::Result<u32, OSStatus> {
assert_ne!(id, kAudioObjectUnknown);
debug_assert_running_serially();
//debug_assert_running_serially();

let address = get_property_address(
Property::StreamTerminalType,
Expand All @@ -275,7 +275,7 @@ pub fn get_stream_virtual_format(
id: AudioStreamID,
) -> std::result::Result<AudioStreamBasicDescription, OSStatus> {
assert_ne!(id, kAudioObjectUnknown);
debug_assert_running_serially();
//debug_assert_running_serially();

let address = get_property_address(
Property::StreamVirtualFormat,
Expand All @@ -296,7 +296,7 @@ pub fn get_clock_domain(
devtype: DeviceType,
) -> std::result::Result<u32, OSStatus> {
assert_ne!(id, kAudioObjectUnknown);
debug_assert_running_serially();
//debug_assert_running_serially();

let address = get_property_address(Property::ClockDomain, devtype);
let mut size = mem::size_of::<u32>();
Expand Down
Loading

0 comments on commit 3965216

Please sign in to comment.