43 lines
1.4 KiB
C
43 lines
1.4 KiB
C
//
|
|
// Created by zemon on 29.11.22.
|
|
//
|
|
|
|
#ifndef UVEOS_ON_NATION_AUDIORECORDERINTERFACE_H
|
|
#define UVEOS_ON_NATION_AUDIORECORDERINTERFACE_H
|
|
|
|
#include "stdint.h"
|
|
#include "stddef.h"
|
|
#include "stdbool.h"
|
|
|
|
typedef bool (*audioRecordStart)(void *env, char *sampleName, uint16_t sampleNameLength);
|
|
typedef bool (*audioRecordStop)(void *env, uint32_t timeout);
|
|
typedef bool (*audioRecordDel)(void *env, char *name, uint16_t nameLen);
|
|
typedef bool (*audioRecordWaitStop)(void *env, uint32_t timeout);
|
|
|
|
typedef struct {
|
|
void *env;
|
|
audioRecordStart start;
|
|
audioRecordStop stop;
|
|
audioRecordDel del;
|
|
audioRecordWaitStop waitStop;
|
|
} tAudioRecorderInterface;
|
|
|
|
bool AudioRecordInterfaceRec(tAudioRecorderInterface *env, char *sampleName, uint16_t snLength);
|
|
|
|
#define AudioRecord_Rec(RECORDER, NAME, LEN) AudioRecordInterfaceRec(RECORDER,NAME,LEN)
|
|
#define AudioRecord_Start(RECORDER, NAME, LEN) RECORDER->start(RECORDER->env,NAME,LEN)
|
|
#define AudioRecord_WaitStop(RECORDER, TIMEOUT) RECORDER->waitStop(RECORDER->env,TIMEOUT)
|
|
#define AudioRecord_Del(RECORDER, NAME, LEN) RECORDER->del(RECORDER->env,NAME,LEN)
|
|
#define AudioRecord_Stop(RECORDER, TIMEOUT) RECORDER->stop(RECORDER->env,TIMEOUT)
|
|
|
|
|
|
|
|
#define AudioRecord_RecStatic(RECORDER, NAME, TIMEOUT) \
|
|
AudioRecord_Del(RECORDER,NAME,sizeof(NAME)-1); \
|
|
AudioRecord_Rec(RECORDER,NAME,sizeof(NAME)-1); \
|
|
AudioRecord_WaitStop(RECORDER,TIMEOUT)
|
|
|
|
#endif //UVEOS_ON_NATION_AUDIORECORDERINTERFACE_H
|
|
|
|
|