Mercurial > libavcodec.hg
comparison ac3.h @ 4855:40f3a7f2b1fd libavcodec
Move AC3 header parsing code together with the rest of the AC3 parsing code.
author | diego |
---|---|
date | Sun, 15 Apr 2007 12:32:36 +0000 |
parents | 6ec0afffc572 |
children | 60603c9c89d1 |
comparison
equal
deleted
inserted
replaced
4854:9f1c90ce5d9d | 4855:40f3a7f2b1fd |
---|---|
74 uint32_t bit_rate; | 74 uint32_t bit_rate; |
75 uint8_t channels; | 75 uint8_t channels; |
76 uint16_t frame_size; | 76 uint16_t frame_size; |
77 /** @} */ | 77 /** @} */ |
78 } AC3HeaderInfo; | 78 } AC3HeaderInfo; |
79 | |
80 /** | |
81 * Parses AC-3 frame header. | |
82 * Parses the header up to the lfeon element, which is the first 52 or 54 bits | |
83 * depending on the audio coding mode. | |
84 * @param buf[in] Array containing the first 7 bytes of the frame. | |
85 * @param hdr[out] Pointer to struct where header info is written. | |
86 * @return Returns 0 on success, -1 if there is a sync word mismatch, | |
87 * -2 if the bsid (version) element is invalid, -3 if the fscod (sample rate) | |
88 * element is invalid, or -4 if the frmsizecod (bit rate) element is invalid. | |
89 */ | |
90 int ff_ac3_parse_header(const uint8_t buf[7], AC3HeaderInfo *hdr); | |
91 | 79 |
92 extern const uint16_t ff_ac3_frame_sizes[38][3]; | 80 extern const uint16_t ff_ac3_frame_sizes[38][3]; |
93 extern const uint8_t ff_ac3_channels[8]; | 81 extern const uint8_t ff_ac3_channels[8]; |
94 extern const uint16_t ff_ac3_freqs[3]; | 82 extern const uint16_t ff_ac3_freqs[3]; |
95 extern const uint16_t ff_ac3_bitratetab[19]; | 83 extern const uint16_t ff_ac3_bitratetab[19]; |