xref: /aosp_15_r20/external/crosvm/android_audio/src/libaaudio_stub.rs (revision bb4ee6a4ae7042d18b07a98463b9c8b875e44b39)
1*bb4ee6a4SAndroid Build Coastguard Worker // Copyright 2024 The ChromiumOS Authors
2*bb4ee6a4SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be
3*bb4ee6a4SAndroid Build Coastguard Worker // found in the LICENSE file.
4*bb4ee6a4SAndroid Build Coastguard Worker 
5*bb4ee6a4SAndroid Build Coastguard Worker //! Stub implementation of Android AAudio NDK
6*bb4ee6a4SAndroid Build Coastguard Worker //!
7*bb4ee6a4SAndroid Build Coastguard Worker //! This implementation is used to enable the virtio-snd for Android to be compiled without
8*bb4ee6a4SAndroid Build Coastguard Worker //! Andoird AAudio NDK available. It is only used for testing purposes and not functional at
9*bb4ee6a4SAndroid Build Coastguard Worker //! runtime.
10*bb4ee6a4SAndroid Build Coastguard Worker 
11*bb4ee6a4SAndroid Build Coastguard Worker use std::os::raw::c_void;
12*bb4ee6a4SAndroid Build Coastguard Worker 
13*bb4ee6a4SAndroid Build Coastguard Worker use crate::AAudioStream;
14*bb4ee6a4SAndroid Build Coastguard Worker use crate::AAudioStreamBuilder;
15*bb4ee6a4SAndroid Build Coastguard Worker use crate::AaudioFormatT;
16*bb4ee6a4SAndroid Build Coastguard Worker use crate::AaudioResultT;
17*bb4ee6a4SAndroid Build Coastguard Worker 
18*bb4ee6a4SAndroid Build Coastguard Worker #[no_mangle]
AAudio_createStreamBuilder(_builder: *mut *mut AAudioStreamBuilder) -> AaudioResultT19*bb4ee6a4SAndroid Build Coastguard Worker extern "C" fn AAudio_createStreamBuilder(_builder: *mut *mut AAudioStreamBuilder) -> AaudioResultT {
20*bb4ee6a4SAndroid Build Coastguard Worker     unimplemented!();
21*bb4ee6a4SAndroid Build Coastguard Worker }
22*bb4ee6a4SAndroid Build Coastguard Worker 
23*bb4ee6a4SAndroid Build Coastguard Worker #[no_mangle]
AAudioStreamBuilder_delete(_builder: *mut AAudioStreamBuilder) -> AaudioResultT24*bb4ee6a4SAndroid Build Coastguard Worker extern "C" fn AAudioStreamBuilder_delete(_builder: *mut AAudioStreamBuilder) -> AaudioResultT {
25*bb4ee6a4SAndroid Build Coastguard Worker     unimplemented!();
26*bb4ee6a4SAndroid Build Coastguard Worker }
27*bb4ee6a4SAndroid Build Coastguard Worker 
28*bb4ee6a4SAndroid Build Coastguard Worker #[no_mangle]
AAudioStreamBuilder_setBufferCapacityInFrames( _builder: *mut AAudioStreamBuilder, _num_frames: i32, )29*bb4ee6a4SAndroid Build Coastguard Worker extern "C" fn AAudioStreamBuilder_setBufferCapacityInFrames(
30*bb4ee6a4SAndroid Build Coastguard Worker     _builder: *mut AAudioStreamBuilder,
31*bb4ee6a4SAndroid Build Coastguard Worker     _num_frames: i32,
32*bb4ee6a4SAndroid Build Coastguard Worker ) {
33*bb4ee6a4SAndroid Build Coastguard Worker     unimplemented!();
34*bb4ee6a4SAndroid Build Coastguard Worker }
35*bb4ee6a4SAndroid Build Coastguard Worker 
36*bb4ee6a4SAndroid Build Coastguard Worker #[no_mangle]
AAudioStreamBuilder_setDirection( _builder: *mut AAudioStreamBuilder, _direction: u32, )37*bb4ee6a4SAndroid Build Coastguard Worker extern "C" fn AAudioStreamBuilder_setDirection(
38*bb4ee6a4SAndroid Build Coastguard Worker     _builder: *mut AAudioStreamBuilder,
39*bb4ee6a4SAndroid Build Coastguard Worker     _direction: u32,
40*bb4ee6a4SAndroid Build Coastguard Worker ) {
41*bb4ee6a4SAndroid Build Coastguard Worker     unimplemented!();
42*bb4ee6a4SAndroid Build Coastguard Worker }
43*bb4ee6a4SAndroid Build Coastguard Worker 
44*bb4ee6a4SAndroid Build Coastguard Worker #[no_mangle]
AAudioStreamBuilder_setFormat( _builder: *mut AAudioStreamBuilder, _format: AaudioFormatT, )45*bb4ee6a4SAndroid Build Coastguard Worker extern "C" fn AAudioStreamBuilder_setFormat(
46*bb4ee6a4SAndroid Build Coastguard Worker     _builder: *mut AAudioStreamBuilder,
47*bb4ee6a4SAndroid Build Coastguard Worker     _format: AaudioFormatT,
48*bb4ee6a4SAndroid Build Coastguard Worker ) {
49*bb4ee6a4SAndroid Build Coastguard Worker     unimplemented!();
50*bb4ee6a4SAndroid Build Coastguard Worker }
51*bb4ee6a4SAndroid Build Coastguard Worker 
52*bb4ee6a4SAndroid Build Coastguard Worker #[no_mangle]
AAudioStreamBuilder_setSampleRate( _builder: *mut AAudioStreamBuilder, _sample_rate: i32, )53*bb4ee6a4SAndroid Build Coastguard Worker extern "C" fn AAudioStreamBuilder_setSampleRate(
54*bb4ee6a4SAndroid Build Coastguard Worker     _builder: *mut AAudioStreamBuilder,
55*bb4ee6a4SAndroid Build Coastguard Worker     _sample_rate: i32,
56*bb4ee6a4SAndroid Build Coastguard Worker ) {
57*bb4ee6a4SAndroid Build Coastguard Worker     unimplemented!();
58*bb4ee6a4SAndroid Build Coastguard Worker }
59*bb4ee6a4SAndroid Build Coastguard Worker 
60*bb4ee6a4SAndroid Build Coastguard Worker #[no_mangle]
AAudioStreamBuilder_setChannelCount( _builder: *mut AAudioStreamBuilder, _channel_count: i32, )61*bb4ee6a4SAndroid Build Coastguard Worker extern "C" fn AAudioStreamBuilder_setChannelCount(
62*bb4ee6a4SAndroid Build Coastguard Worker     _builder: *mut AAudioStreamBuilder,
63*bb4ee6a4SAndroid Build Coastguard Worker     _channel_count: i32,
64*bb4ee6a4SAndroid Build Coastguard Worker ) {
65*bb4ee6a4SAndroid Build Coastguard Worker     unimplemented!();
66*bb4ee6a4SAndroid Build Coastguard Worker }
67*bb4ee6a4SAndroid Build Coastguard Worker 
68*bb4ee6a4SAndroid Build Coastguard Worker #[no_mangle]
AAudioStreamBuilder_openStream( _builder: *mut AAudioStreamBuilder, _stream: *mut *mut AAudioStream, ) -> AaudioResultT69*bb4ee6a4SAndroid Build Coastguard Worker extern "C" fn AAudioStreamBuilder_openStream(
70*bb4ee6a4SAndroid Build Coastguard Worker     _builder: *mut AAudioStreamBuilder,
71*bb4ee6a4SAndroid Build Coastguard Worker     _stream: *mut *mut AAudioStream,
72*bb4ee6a4SAndroid Build Coastguard Worker ) -> AaudioResultT {
73*bb4ee6a4SAndroid Build Coastguard Worker     unimplemented!();
74*bb4ee6a4SAndroid Build Coastguard Worker }
75*bb4ee6a4SAndroid Build Coastguard Worker 
76*bb4ee6a4SAndroid Build Coastguard Worker #[no_mangle]
AAudioStream_getBufferSizeInFrames(_stream: *mut AAudioStream) -> i3277*bb4ee6a4SAndroid Build Coastguard Worker extern "C" fn AAudioStream_getBufferSizeInFrames(_stream: *mut AAudioStream) -> i32 {
78*bb4ee6a4SAndroid Build Coastguard Worker     unimplemented!();
79*bb4ee6a4SAndroid Build Coastguard Worker }
80*bb4ee6a4SAndroid Build Coastguard Worker 
81*bb4ee6a4SAndroid Build Coastguard Worker #[no_mangle]
AAudioStream_requestStart(_stream: *mut AAudioStream) -> AaudioResultT82*bb4ee6a4SAndroid Build Coastguard Worker extern "C" fn AAudioStream_requestStart(_stream: *mut AAudioStream) -> AaudioResultT {
83*bb4ee6a4SAndroid Build Coastguard Worker     unimplemented!();
84*bb4ee6a4SAndroid Build Coastguard Worker }
85*bb4ee6a4SAndroid Build Coastguard Worker 
86*bb4ee6a4SAndroid Build Coastguard Worker #[no_mangle]
AAudioStream_read( _stream: *mut AAudioStream, _buffer: *mut c_void, _num_frames: i32, _timeout_nanoseconds: i64, ) -> AaudioResultT87*bb4ee6a4SAndroid Build Coastguard Worker extern "C" fn AAudioStream_read(
88*bb4ee6a4SAndroid Build Coastguard Worker     _stream: *mut AAudioStream,
89*bb4ee6a4SAndroid Build Coastguard Worker     _buffer: *mut c_void,
90*bb4ee6a4SAndroid Build Coastguard Worker     _num_frames: i32,
91*bb4ee6a4SAndroid Build Coastguard Worker     _timeout_nanoseconds: i64,
92*bb4ee6a4SAndroid Build Coastguard Worker ) -> AaudioResultT {
93*bb4ee6a4SAndroid Build Coastguard Worker     unimplemented!();
94*bb4ee6a4SAndroid Build Coastguard Worker }
95*bb4ee6a4SAndroid Build Coastguard Worker 
96*bb4ee6a4SAndroid Build Coastguard Worker #[no_mangle]
AAudioStream_write( _stream: *mut AAudioStream, _buffer: *const c_void, _num_frames: i32, _timeout_nanoseconds: i64, )97*bb4ee6a4SAndroid Build Coastguard Worker extern "C" fn AAudioStream_write(
98*bb4ee6a4SAndroid Build Coastguard Worker     _stream: *mut AAudioStream,
99*bb4ee6a4SAndroid Build Coastguard Worker     _buffer: *const c_void,
100*bb4ee6a4SAndroid Build Coastguard Worker     _num_frames: i32,
101*bb4ee6a4SAndroid Build Coastguard Worker     _timeout_nanoseconds: i64,
102*bb4ee6a4SAndroid Build Coastguard Worker ) {
103*bb4ee6a4SAndroid Build Coastguard Worker     unimplemented!();
104*bb4ee6a4SAndroid Build Coastguard Worker }
105*bb4ee6a4SAndroid Build Coastguard Worker 
106*bb4ee6a4SAndroid Build Coastguard Worker #[no_mangle]
AAudioStream_close(_stream: *mut AAudioStream)107*bb4ee6a4SAndroid Build Coastguard Worker extern "C" fn AAudioStream_close(_stream: *mut AAudioStream) {
108*bb4ee6a4SAndroid Build Coastguard Worker     unimplemented!();
109*bb4ee6a4SAndroid Build Coastguard Worker }
110