Interface.h 1.4 KB
#ifndef AUDIO_PLAYER_INTERFACE_H
#define AUDIO_PLAYER_INTERFACE_H
#include <stdint.h>
#include <stdbool.h>

#include "version_choose.h"

enum Decoder{
    MP2 = 0x15000,
    MP3,
    AAC,
    AC3,
    DTS,
    VORBIS,
    DVAUDIO,
    WMAV1,
    WMAV2,
    MACE3,
    MACE6,
    VMDAUDIO,
    FLAC,
    MP3ADU,
    MP3ON4,
    SHORTEN,
    ALAC,
    WESTWOOD_SND1,
    GSM, ///< as in Berlin toast format
    QDM2,
    COOK,
    TRUESPEECH,
    TTA,
    SMACKAUDIO,
    QCELP,
    WAV
};

#if FILTERING_TYPE == HIGH_PASS_FILTERING
    struct EQValues{
            int GAIN_31Hz;
            int GAIN_62Hz;
            int GAIN_125Hz;
            int GAIN_250Hz;
            int GAIN_500Hz;
            int GAIN_1KHz;
            int GAIN_2KHz;
            int GAIN_4KHz;
            int GAIN_8KHz;
            int GAIN_16KHz;
    };
#elif FILTERING_TYPE == DIRECTED_STOPBAND_FILTERING
    struct EQValues{
        int BASS_GAIN;
        int BASS_F;
        int BASS_Q_W;
        int EQ_F;
        int EQ_Q_W;
        int EQ_GAIN;
    };
#endif


typedef void(*callback)(char* data, int datasize);

void init(enum Decoder decoder,struct EQValues eq_values, callback _callback);

int sendFrame(uint8_t* data, int dataSize);

int rawPlay(int sample_rate, uint8_t* data, int dataSize);

void deInit();

void set_eq_rawplay(bool eq_enable);

void set_eq_streamplay(bool eq_enable);

void set_eq_fileplay(bool eq_enable);
#endif //AUDIO_PLAYER_INTERFACE_H