mirror of
https://github.com/hrydgard/ppsspp.git
synced 2025-04-02 11:01:50 -04:00
32 lines
1.1 KiB
C++
32 lines
1.1 KiB
C++
#pragma once
|
|
|
|
#include <string>
|
|
|
|
typedef int (*AndroidAudioCallback)(short *buffer, int num_samples);
|
|
|
|
class AudioContext {
|
|
public:
|
|
AudioContext(AndroidAudioCallback cb, int _FramesPerBuffer, int _SampleRate);
|
|
virtual bool Init() { return false; }
|
|
virtual int AudioRecord_Start(int sampleRate) { return false; };
|
|
virtual int AudioRecord_Stop() { return false; };
|
|
virtual ~AudioContext() {}
|
|
|
|
protected:
|
|
AndroidAudioCallback audioCallback;
|
|
|
|
int framesPerBuffer;
|
|
int sampleRate;
|
|
};
|
|
|
|
struct AndroidAudioState;
|
|
|
|
// It's okay for optimalFramesPerBuffer and optimalSampleRate to be 0. Defaults will be used.
|
|
AndroidAudioState *AndroidAudio_Init(AndroidAudioCallback cb, int optimalFramesPerBuffer, int optimalSampleRate);
|
|
bool AndroidAudio_Recording_SetSampleRate(AndroidAudioState *state, int sampleRate);
|
|
bool AndroidAudio_Recording_Start(AndroidAudioState *state);
|
|
bool AndroidAudio_Recording_Stop(AndroidAudioState *state);
|
|
bool AndroidAudio_Recording_State(AndroidAudioState *state);
|
|
bool AndroidAudio_Pause(AndroidAudioState *state);
|
|
bool AndroidAudio_Resume(AndroidAudioState *state);
|
|
bool AndroidAudio_Shutdown(AndroidAudioState *state);
|