CI130X SDK API手册  2.2.0
本手册用于描述CI130X SDK各个组件和驱动API
parse_m4a_atom_containers.h
浏览该文件的文档.
1 
10 #ifndef _PARSE_M4A_ATOM_CONTAINERS_H_
11 #define _PARSE_M4A_ATOM_CONTAINERS_H_
12 
13 #include <stdint.h>
15 
16 #ifdef __cplusplus
17 extern "C"
18 {
19 #endif
20 
21 typedef struct sound_format
22 {
23  char audioFmtString[4];
24  uint8_t reserved[6];
25  uint16_t dataRefIndex;
26  uint16_t version;
27  uint16_t revision;
28  uint32_t vendor;
29  uint16_t numChannel;
30  uint16_t sampleSize;
31  uint16_t complesionID;
32  uint16_t packetSize;
35 } sound_format;
36 
37 typedef struct sound_flag
38 {
39  uint32_t process, complete;
40 } sound_flag;
41 
42 typedef struct media_sound
43 {
46  uint32_t ctime;
47  uint32_t mtime;
48  uint32_t timeScale;
49  uint32_t duration;
50 } media_sound;
51 
52 typedef struct esds_format
53 {
54  char esdsString[4];
55 // uint8_t reserved[22];
57 } esds_format;
58 
59 typedef struct media_info_typedef
60 {
65 
66 typedef struct
67 {
68  int numEntry;
71 
72 typedef struct
73 {
74  uint8_t *nameTag;
75  uint8_t *artistTag;
76  uint8_t *albumTag;
80 
81 enum AtomEnum {
82  FTYP, /* - */ WIDE, /* - */ MDAT, /* - */ MOOV, /* + */ MVHD, /* - */ TRAK, /* + */
83  TKHD, /* - */ TAPT, /* + */ CLEF, /* - */ PROF, /* - */ ENOF, /* - */ EDTS, /* + */
84  ELST, /* - */ MDIA, /* + */ MDHD, /* - */ HDLR, /* - */ MINF, /* + */ VMHD, /* - */
85  SMHD, /* - */ DINF, /* + */ DREF, /* - */ STBL, /* + */ STSD, /* - */ STTS, /* - */
86  STSC, /* - */ STSZ, /* - */ STCO, /* - */ UDTA, /* + */ FREE, /* - */ SKIP, /* - */
87  META, /* + */ LOAD, /* - */ IODS, /* - */ ILST, /* + */ KEYS, /* - */ DATA, /* - */
88  TRKN, /* + */ DISK, /* + */ CPIL, /* + */ PGAP, /* + */ TMPO, /* + */ GNRE, /* + */
89  COVR, /* - */ CNAM, /* - */ CART, /* - */ CALB, /* - */ CGEN, /* - */ CDAY, /* - */
90  CTOO, /* - */ CWRT, /* - */ NONE, /* - */
91 };
92 
93 
94 
97 int collectMediaData(mem_file_t *fp,m4a_file_info_t* m4a_file_info, uint32_t parentAtomSize, uint32_t child);
98 
99 #ifdef __cplusplus
100 }
101 #endif
102 
103 #endif /* _PARSE_M4A_ATOM_CONTAINERS_H_ */
Definition: parse_m4a_atom_containers.h:21
uint16_t sampleRateInteger
Definition: parse_m4a_atom_containers.h:33
Definition: parse_m4a_atom_containers.h:84
uint16_t sampleSize
Definition: parse_m4a_atom_containers.h:30
Definition: parse_m4a_atom_containers.h:83
uint16_t dataRefIndex
Definition: parse_m4a_atom_containers.h:25
解析m4a格式头信息数据读入接口
uint16_t complesionID
Definition: parse_m4a_atom_containers.h:31
Definition: parse_m4a_atom_containers.h:85
Definition: parse_m4a_atom_containers.h:86
media_info_typedef * media_info
Definition: parse_m4a_atom_containers.h:77
Definition: parse_m4a_atom_containers.h:87
Definition: parse_m4a_atom_containers.h:87
char esdsString[4]
Definition: parse_m4a_atom_containers.h:54
Definition: parse_m4a_atom_containers.h:89
Definition: parse_m4a_atom_containers.h:82
Definition: parse_m4a_atom_containers.h:85
Definition: parse_m4a_atom_containers.h:83
struct esds_format esds_format
uint32_t avgBitrate
Definition: parse_m4a_atom_containers.h:56
Definition: parse_m4a_atom_containers.h:87
Definition: parse_m4a_atom_containers_port.h:18
Definition: parse_m4a_atom_containers.h:89
struct media_info_typedef media_info_typedef
Definition: parse_m4a_atom_containers.h:88
Definition: parse_m4a_atom_containers.h:87
uint16_t revision
Definition: parse_m4a_atom_containers.h:27
uint32_t maxBitrate
Definition: parse_m4a_atom_containers.h:56
Definition: parse_m4a_atom_containers.h:83
Definition: parse_m4a_atom_containers.h:87
Definition: parse_m4a_atom_containers.h:90
Definition: parse_m4a_atom_containers.h:85
aac_stco_Typedef * aac_stco_struct
Definition: parse_m4a_atom_containers.h:78
Definition: parse_m4a_atom_containers.h:87
Definition: parse_m4a_atom_containers.h:85
esds_format bitrate
Definition: parse_m4a_atom_containers.h:63
uint32_t complete
Definition: parse_m4a_atom_containers.h:39
Definition: parse_m4a_atom_containers.h:90
sound_flag flag
Definition: parse_m4a_atom_containers.h:44
Definition: parse_m4a_atom_containers.h:90
uint32_t ctime
Definition: parse_m4a_atom_containers.h:46
struct media_sound media_sound
Definition: parse_m4a_atom_containers.h:88
Definition: parse_m4a_atom_containers.h:86
Definition: parse_m4a_atom_containers.h:86
uint8_t * artistTag
Definition: parse_m4a_atom_containers.h:75
Definition: parse_m4a_atom_containers.h:42
Definition: parse_m4a_atom_containers.h:83
Definition: parse_m4a_atom_containers.h:72
Definition: parse_m4a_atom_containers.h:83
uint8_t * albumTag
Definition: parse_m4a_atom_containers.h:76
Definition: parse_m4a_atom_containers.h:83
uint32_t duration
Definition: parse_m4a_atom_containers.h:49
Definition: parse_m4a_atom_containers.h:86
uint16_t packetSize
Definition: parse_m4a_atom_containers.h:32
int numEntry
Definition: parse_m4a_atom_containers.h:68
uint32_t process
Definition: parse_m4a_atom_containers.h:39
Definition: parse_m4a_atom_containers.h:85
Definition: parse_m4a_atom_containers.h:89
Definition: parse_m4a_atom_containers.h:89
Definition: parse_m4a_atom_containers.h:82
Definition: parse_m4a_atom_containers.h:84
char audioFmtString[4]
Definition: parse_m4a_atom_containers.h:23
struct sound_format sound_format
Definition: parse_m4a_atom_containers.h:88
Definition: parse_m4a_atom_containers.h:88
uint16_t version
Definition: parse_m4a_atom_containers.h:26
Definition: parse_m4a_atom_containers.h:59
Definition: parse_m4a_atom_containers.h:84
uint16_t sampleRateReminder
Definition: parse_m4a_atom_containers.h:34
Definition: parse_m4a_atom_containers.h:85
struct sound_flag sound_flag
Definition: parse_m4a_atom_containers.h:52
Definition: parse_m4a_atom_containers.h:66
Definition: parse_m4a_atom_containers.h:86
int32_t alloc_m4a_info(m4a_file_info_t *m4a_file_info)
申请m4a容器解码器
Definition: parse_m4a_atom_containers.c:388
AtomEnum
Definition: parse_m4a_atom_containers.h:81
Definition: parse_m4a_atom_containers.h:82
uint32_t vendor
Definition: parse_m4a_atom_containers.h:28
Definition: parse_m4a_atom_containers.h:88
uint8_t * nameTag
Definition: parse_m4a_atom_containers.h:74
Definition: parse_m4a_atom_containers.h:84
Definition: parse_m4a_atom_containers.h:89
uint32_t mtime
Definition: parse_m4a_atom_containers.h:47
Definition: parse_m4a_atom_containers.h:37
Definition: parse_m4a_atom_containers.h:84
m4a_file_info_t m4a_file_info
Definition: audio_play_process.c:139
Definition: parse_m4a_atom_containers.h:82
Definition: parse_m4a_atom_containers.h:84
Definition: parse_m4a_atom_containers.h:86
int mdatOffset
Definition: parse_m4a_atom_containers.h:69
uint16_t numChannel
Definition: parse_m4a_atom_containers.h:29
Definition: parse_m4a_atom_containers.h:88
Definition: parse_m4a_atom_containers.h:82
uint32_t timeScale
Definition: parse_m4a_atom_containers.h:48
int collectMediaData(mem_file_t *fp, m4a_file_info_t *m4a_file_info, uint32_t parentAtomSize, uint32_t child)
解析m4a容器
Definition: parse_m4a_atom_containers.c:135
Definition: parse_m4a_atom_containers.h:89
media_sound sound
Definition: parse_m4a_atom_containers.h:61
uint8_t reserved[6]
Definition: parse_m4a_atom_containers.h:24
sound_format format
Definition: parse_m4a_atom_containers.h:45
int32_t free_m4a_info(m4a_file_info_t *m4a_file_info)
销毁m4a容器解码器
Definition: parse_m4a_atom_containers.c:423
Definition: parse_m4a_atom_containers.h:82