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];