⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 audiocontrol.h

📁 瑞星微公司RK27XX系列芯片的SDK开发包
💻 H
字号:

#ifndef _AUDIO_CONTROL_H_
#define _AUDIO_CONTROL_H_
#define AUDIOCONSOLE 1
#define AUDIOTRYTIMERCNT 2000/*10s = 2000*5ms*/
#define AUDIOTRYTIME 10
#ifdef BOARD
#include "slist.h"
#endif
#include "../effect/effect.h"

typedef struct
{
    unsigned long ABRequire;
    unsigned long AudioABStart;
    unsigned long AudioABEnd;
    unsigned long PlayDirect;
}AUDIOCONTROL;


typedef struct
{
    char Path[10];
    char Name[10];
}AUDIOFILEINFO;
typedef struct _AUDIO_LIST_ENTRY
{
    struct _AUDIO_LIST_ENTRY  *Next;
    short*  BuffAddr;
} AUDIOLISTENTRY;

typedef struct
{
    unsigned long Size;
    char            Name[32];//键名字,用于查找
    unsigned long TotalTime;
    unsigned long CurrentTime;
    unsigned long Bitrate;
    unsigned long Samplerate;
    unsigned long AudioVolume;
    unsigned long RepeatMode;
    unsigned long PlayMode;
    tEffect       UserEQ;
    unsigned long DispContent;
    unsigned long Exp_Medialib;
    unsigned long Wallpaper;
    //unsigned long UserEQ[5];
}REG_AUDIOCONFIG;
typedef enum
{
    Audio_State_Play,
    Audio_State_FFD,
    Audio_State_FFW,
    Audio_State_Pause,
    Audio_State_Stop
}AUDIOSTATE;

typedef enum
{
    Audio_Err_OpenFile,
    Audio_Err_DecHead,
    Audio_Err_Decode
}AUDIOERRORTYPE;
typedef enum
{
    Audio_Once,
    Audio_Repeat,
    Audio_AllOnce,
    Audio_AllRepeat,
    Audio_Try
}AUDIOREPEATMODE;
#define Audio_Stop_Normal   0
#define Audio_Stop_Force    1
#define Audio_Direct_BackWord   (0<<8)
#define Audio_Direct_Forword    (1<<8)
typedef enum
{
    Audio_InTurn,
    Audio_Rand
}AUDIOPLAYMODE;
typedef enum
{
    Audio_AB_NULL,
    Audio_AB_A,
    Audio_AB_PLAY
}AUDIOABSTATE;

typedef enum
{
    Audio_3D,
    Audio_BB,
    Audio_LEQ
}AUDIOMSEQMODE;

// 需要与effect.h 里的eEQMode 保持一郅
typedef enum
{
    Audio_Nomal,
    Audio_MSEQ,
    Audio_Rock,
    Audio_Pop,
    Audio_Classic,
    Audio_Bass,
    Audio_Jazz,
    Audio_User
}AUDIOEQTYPE;
typedef enum
{
    Audio_ID3,
    Audio_LRC,
    Audio_FreqChart,
    Audio_Close
}AUDIODISPMODE;

#define AudioStepLen (10000)//4ms 快进步长
typedef enum
{
    EQ_n12db,
    EQ_n8db,
    EQ_n4db,
    EQ_0db,
    EQ_4db,
    EQ_8db,
    EQ_12db
}USER_EQ;

BOOLEAN AudioPlay(void);
void AudioSetRepeatModeOnce(unsigned char bSet);
#define OutputVolume  gpSysConfig->OutputVolume


#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -