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
This commit is contained in:
Diego Biurrun
2007-04-15 12:32:36 +00:00
parent d3255f6fd8
commit 98d0205145
6 changed files with 66 additions and 65 deletions

View File

@@ -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 */