summaryrefslogtreecommitdiffstats
path: root/third_party/rust/cubeb-sys/src/mixer.rs
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 17:32:43 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 17:32:43 +0000
commit6bf0a5cb5034a7e684dcc3500e841785237ce2dd (patch)
treea68f146d7fa01f0134297619fbe7e33db084e0aa /third_party/rust/cubeb-sys/src/mixer.rs
parentInitial commit. (diff)
downloadthunderbird-upstream.tar.xz
thunderbird-upstream.zip
Adding upstream version 1:115.7.0.upstream/1%115.7.0upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'third_party/rust/cubeb-sys/src/mixer.rs')
-rw-r--r--third_party/rust/cubeb-sys/src/mixer.rs31
1 files changed, 31 insertions, 0 deletions
diff --git a/third_party/rust/cubeb-sys/src/mixer.rs b/third_party/rust/cubeb-sys/src/mixer.rs
new file mode 100644
index 0000000000..d0452036bf
--- /dev/null
+++ b/third_party/rust/cubeb-sys/src/mixer.rs
@@ -0,0 +1,31 @@
+// Copyright © 2017-2018 Mozilla Foundation
+//
+// This program is made available under an ISC-style license. See the
+// accompanying file LICENSE for details.
+
+use channel::cubeb_channel_layout;
+use format::cubeb_sample_format;
+use std::os::raw::{c_int, c_uint, c_void};
+
+pub enum cubeb_mixer {}
+
+extern "C" {
+ pub fn cubeb_mixer_create(
+ format: cubeb_sample_format,
+ in_channels: u32,
+ in_layout: cubeb_channel_layout,
+ out_channels: u32,
+ out_layout: cubeb_channel_layout,
+ ) -> *mut cubeb_mixer;
+ pub fn cubeb_mixer_destroy(mixer: *mut cubeb_mixer);
+ pub fn cubeb_mixer_mix(
+ mixer: *mut cubeb_mixer,
+ frames: usize,
+ input_buffer: *const c_void,
+ input_buffer_length: usize,
+ output_buffer: *mut c_void,
+ output_buffer_length: usize,
+ ) -> c_int;
+
+ pub fn cubeb_channel_layout_nb_channels(channel_layout: cubeb_channel_layout) -> c_uint;
+}