diff options
author | Diego Biurrun <diego@biurrun.de> | 2007-04-15 12:32:36 +0000 |
---|---|---|
committer | Diego Biurrun <diego@biurrun.de> | 2007-04-15 12:32:36 +0000 |
commit | 98d0205145efe9a39370b163c9eb80ddf80672b1 (patch) | |
tree | a79b3e675a21d3f4b8f4ad0fd92b287351f62f49 /libavcodec/parser.h | |
parent | d3255f6fd88586b43d13a5d07fbdf56f4013b319 (diff) | |
download | ffmpeg-98d0205145efe9a39370b163c9eb80ddf80672b1.tar.gz |
Move AC3 header parsing code together with the rest of the AC3 parsing code.
Originally committed as revision 8739 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/parser.h')
-rw-r--r-- | libavcodec/parser.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/libavcodec/parser.h b/libavcodec/parser.h index 9452a096c0..80a6007e80 100644 --- a/libavcodec/parser.h +++ b/libavcodec/parser.h @@ -23,6 +23,8 @@ #ifndef FFMPEG_PARSER_H #define FFMPEG_PARSER_H +#include "ac3.h" + typedef struct ParseContext{ uint8_t *buffer; int index; @@ -60,4 +62,16 @@ void ff_parse1_close(AVCodecParserContext *s); /* h263dec.c */ int ff_mpeg4_find_frame_end(ParseContext *pc, const uint8_t *buf, int buf_size); +/** + * Parses AC-3 frame header. + * Parses the header up to the lfeon element, which is the first 52 or 54 bits + * depending on the audio coding mode. + * @param buf[in] Array containing the first 7 bytes of the frame. + * @param hdr[out] Pointer to struct where header info is written. + * @return Returns 0 on success, -1 if there is a sync word mismatch, + * -2 if the bsid (version) element is invalid, -3 if the fscod (sample rate) + * element is invalid, or -4 if the frmsizecod (bit rate) element is invalid. + */ +int ff_ac3_parse_header(const uint8_t buf[7], AC3HeaderInfo *hdr); + #endif /* !FFMPEG_PARSER_H */ |