12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- #ifndef _API_MUSIC_H
- #define _API_MUSIC_H
- typedef enum {
- NONE_TYPE = 0,
- WAV_TYPE,
- MP3_TYPE,
- SBC_TYPE,
- APE_TYPE,
- FLAC_TYPE,
- WMA_TYPE,
- ESBC_TYPE,
- AAC_TYPE,
- } enum_msc_type_t;
- enum {
- MUSIC_STOP = 0,
- MUSIC_PAUSE,
- MUSIC_PLAYING,
- };
- enum {
- //decode msg
- MUSIC_MSG_STOP = 0,
- MUSIC_MSG_PAUSE,
- MUSIC_MSG_PLAY,
- };
- typedef struct {
- volatile u8 sta;
- u8 type;
- } music_cb_t;
- extern music_cb_t music_cb;
- typedef struct sbc_struct {
- unsigned long flags;
- uint8_t frequency;
- uint8_t blocks;
- uint8_t subbands;
- uint8_t mode;
- uint8_t allocation;
- uint8_t bitpool;
- struct sbc_priv *priv;
- } sbc_t;
- typedef struct {
- u8 sbc_type; //0:sbc 1:msbc 2:bt_msbc
- sbc_t sbc;
- u8 buf[256];
- } sbc_dec_t;
- extern sbc_dec_t sbc_dec;
- extern bool (*sbcdec_frame)(void);
- void music_control(u8 msg);
- u8 get_music_dec_sta(void);
- void music_sbc_play(u8 msg);
- bool music_is_playing(void);
- int sbc_dec_init(void);
- bool sbc_dec_frame(void);
- void sbc_decode_init(void);
- void bt_decode_exit(void);
- int sbc_decode(sbc_t *sbc, const void *input, size_t input_len);
- void sbcdec_end(void);
- void bt_set_sbc_playing(u8 enable);
- void esbc_init(const u8 *ptr, u32 size);
- u8 res_play_start(uint index);
- u8 res_play_start_do(uint index);
- void res_play_stop(u8 dnr_sta);
- int esbc_res_play(u8 index, const u8 *ptr, const u8 *sptr, u32 size, u32 tws_sync);
- bool bt_ring_tone_play(u32 tws_sync);
- bool bt_ring_tone_stop(u32 force);
- void tws_wav_res_play_kick(u32 addr, u32 len);
- void wav_res_stop(void);
- void wav_res_play_kick(u32 addr, u32 len, bool tws_sync);
- void wav_res_dec_process(void);
- bool wav_res_is_play(void);
- #endif // _API_MUSIC_H
|