123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- #ifndef _API_MUSIC_H
- #define _API_MUSIC_H
- enum {
- MUSIC_STOP = 0,
- MUSIC_PAUSE,
- MUSIC_PLAYING,
- };
- enum {
- NONE_TYPE = 0,
- WAV_TYPE,
- MP3_TYPE,
- WMA_TYPE,
- APE_TYPE,
- FLAC_TYPE,
- SBCIO_TYPE,
- SBC_TYPE,
- AACIO_TYPE,
- AAC_TYPE,
- LHDC_TYPE,
- };
- enum {
- //decode msg
- MUSIC_MSG_STOP = 0,
- MUSIC_MSG_PAUSE,
- MUSIC_MSG_PLAY,
- //encode msg
- ENC_MSG_MP3 = 32,
- ENC_MSG_SCO,
- ENC_MSG_SBC,
- ENC_MSG_WAV,
- ENC_MSG_ADPCM,
- };
- enum {
- QSKIP_BACKWARD,
- QSKIP_FORWARD,
- };
- extern unsigned char avio_buf[556];
- extern u32 rec_lba_num;
- void music_control(u8 msg);
- u8 get_music_dec_sta(void);
- int music_decode_init(void);
- int wav_decode_init(void);
- int mp3_decode_init(void);
- int wma_decode_init(void);
- int ape_decode_init(void);
- int flac_decode_init(void);
- int sbcio_decode_init(void);
- void sbc_decode_init(void);
- int aacio_decode_init(void);
- int m4a_decode_init(void);
- u16 music_get_total_time(void);
- u16 music_get_cur_time(void);
- void music_set_cur_time(u32 cur_time);
- void music_qskip(bool direct, u8 second); //快进快退控制 direct = 1为快退,0为快进
- void music_qskip_end(void);
- void music_set_jump(void *brkpt);
- void music_get_breakpiont(void *brkpt);
- u32 get_music_bitrate(void);
- void music_stream_var_init(void);
- void msc_pcm_out_var_init(void);
- int music_is_encrypt(u16 key); //返回0表示为加密音乐
- void music_stream_decrypt(void *buf, unsigned int len);
- void music_sync_kick(void);
- //按键音单频TONE
- void key_voice_play(u32 freq, u32 play_ms, u32 gain); //freq: tone频率,单位Hz, play_ms:持续时间, gain:keytone vol select (0DB, -6DB, 12DB, -24DB)
- #endif // _API_MUSIC_H
|