30 #ifndef FREERDP_CHANNEL_RDPSND_CLIENT_OPENSL_IO_H
31 #define FREERDP_CHANNEL_RDPSND_CLIENT_OPENSL_IO_H
33 #include <SLES/OpenSLES.h>
34 #include <SLES/OpenSLES_Android.h>
36 #include <winpr/synch.h>
38 #include <freerdp/api.h>
48 SLObjectItf engineObject;
49 SLEngineItf engineEngine;
52 SLObjectItf outputMixObject;
55 SLObjectItf bqPlayerObject;
56 SLPlayItf bqPlayerPlay;
57 SLVolumeItf bqPlayerVolume;
58 SLAndroidSimpleBufferQueueItf bqPlayerBufferQueue;
59 SLEffectSendItf bqPlayerEffectSend;
61 unsigned int outchannels;
64 unsigned int queuesize;
72 FREERDP_LOCAL
OPENSL_STREAM* android_OpenAudioDevice(
int sr,
int outchannels,
int bufferframes);
76 FREERDP_LOCAL
void android_CloseAudioDevice(
OPENSL_STREAM* p);
80 FREERDP_LOCAL
int android_AudioOut(
OPENSL_STREAM* p,
const short* buffer,
int size);
84 FREERDP_LOCAL
void android_SetInputVolume(
OPENSL_STREAM* p,
int level);
92 FREERDP_LOCAL BOOL android_SetOutputMute(
OPENSL_STREAM* p, BOOL mute);
100 FREERDP_LOCAL
int android_GetOutputVolumeMax(
OPENSL_STREAM* p);
105 FREERDP_LOCAL BOOL android_SetOutputVolume(
OPENSL_STREAM* p,
int level);