Mercurial > libavcodec.hg
comparison parser.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 | 522e52c630bd |
children | b6a4f6c5623c |
comparison
equal
deleted
inserted
replaced
4854:9f1c90ce5d9d | 4855:40f3a7f2b1fd |
---|---|
20 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | 20 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
21 */ | 21 */ |
22 | 22 |
23 #ifndef FFMPEG_PARSER_H | 23 #ifndef FFMPEG_PARSER_H |
24 #define FFMPEG_PARSER_H | 24 #define FFMPEG_PARSER_H |
25 | |
26 #include "ac3.h" | |
25 | 27 |
26 typedef struct ParseContext{ | 28 typedef struct ParseContext{ |
27 uint8_t *buffer; | 29 uint8_t *buffer; |
28 int index; | 30 int index; |
29 int last_index; | 31 int last_index; |
58 void ff_parse1_close(AVCodecParserContext *s); | 60 void ff_parse1_close(AVCodecParserContext *s); |
59 | 61 |
60 /* h263dec.c */ | 62 /* h263dec.c */ |
61 int ff_mpeg4_find_frame_end(ParseContext *pc, const uint8_t *buf, int buf_size); | 63 int ff_mpeg4_find_frame_end(ParseContext *pc, const uint8_t *buf, int buf_size); |
62 | 64 |
65 /** | |
66 * Parses AC-3 frame header. | |
67 * Parses the header up to the lfeon element, which is the first 52 or 54 bits | |
68 * depending on the audio coding mode. | |
69 * @param buf[in] Array containing the first 7 bytes of the frame. | |
70 * @param hdr[out] Pointer to struct where header info is written. | |
71 * @return Returns 0 on success, -1 if there is a sync word mismatch, | |
72 * -2 if the bsid (version) element is invalid, -3 if the fscod (sample rate) | |
73 * element is invalid, or -4 if the frmsizecod (bit rate) element is invalid. | |
74 */ | |
75 int ff_ac3_parse_header(const uint8_t buf[7], AC3HeaderInfo *hdr); | |
76 | |
63 #endif /* !FFMPEG_PARSER_H */ | 77 #endif /* !FFMPEG_PARSER_H */ |