17 #include "AudioCodec.h"
23 short unsigned int pllJ;
24 short unsigned int pllD;
25 short unsigned int pllP;
26 short unsigned int pllR;
34 int writeRegister(
unsigned int reg,
unsigned int value);
35 int readRegister(
unsigned int reg);
40 int startAudio(
int shouldBeReady);
42 unsigned int getNumIns();
43 unsigned int getNumOuts();
44 float getSampleRate();
46 int setPllJ(
short unsigned int j);
47 int setPllD(
unsigned int d);
48 int setPllP(
short unsigned int p);
49 int setPllR(
unsigned int r);
51 int setNcodec(
double NCODEC);
52 int setAudioSamplingRate(
float newSamplingRate);
53 short unsigned int getPllJ();
54 unsigned int getPllD();
55 unsigned int getPllP();
56 unsigned int getPllR();
58 float getAudioSamplingRate();
59 int setInputGain(
int channel,
float gain);
60 int setDacVolume(
int channel,
float gain);
61 int setHpVolume(
int channel,
float gain);
62 int setLineOutVolume(
int channel,
float gain);
63 int enableHpOut(
bool enable);
64 int enableLineOut(
bool enable);
66 int reset(){
return 0; }
68 void setVerbose(
bool isVerbose);
70 I2c_Codec(
int i2cBus,
int I2cAddress, CodecType type,
bool verbose =
false);
74 int setMode(std::string str);
76 enum {kNumIoChannels = 2};
77 int writeDacVolumeRegisters(
bool mute);
78 int writeAdcVolumeRegisters(
bool mute);
79 int writeOutputLevelControlReg(std::array<unsigned char,kNumIoChannels>
const & regs, std::array<float,kNumIoChannels>
const & volumes,
unsigned char lowerHalf);
80 int writeRoutingVolumeControlReg(std::array<unsigned char,kNumIoChannels>
const & regs, std::array<float,kNumIoChannels>
const & volumes,
bool enabled);
81 int writeHPVolumeRegisters();
82 int writeLineOutVolumeRegisters();
84 int configureDCRemovalIIR(
bool enable);
86 std::array<int,kNumIoChannels> dacVolumeHalfDbs{};
87 std::array<float,kNumIoChannels> inputGain{};
88 std::array<float,kNumIoChannels> hpVolume{};
89 std::array<float,kNumIoChannels> lineOutVolume{};
94 bool hpEnabled =
true;
95 bool lineOutEnabled =
true;
96 bool differentialInput;
97 bool unmutedPowerStage;
102 InitMode_noDeinit = 1,
Definition: AudioCodec.h:29
Definition: I2c_Codec.h:21
Definition: AudioCodec.h:6