41#define KEY (((uint64_t)'\n' << 56) | ((uint64_t)'#' << 48) | \
42 ((uint64_t)'d' << 40) | ((uint64_t)'e' << 32) | \
43 ((uint64_t)'f' << 24) | ('i' << 16) | ('n' << 8) | \
46#define END ((';' << 8) | ('\n' << 0))
58 const uint8_t **poutbuf,
int *poutbuf_size,
59 const uint8_t *buf,
int buf_size)
63 uint16_t state16 = bpc->
state16;
73 for (;
i < buf_size;
i++) {
75 state16 = (state16 << 8) | buf[
i];
83 }
else if (state16 ==
END) {
99 *poutbuf_size = buf_size;
static int parse(AVCodecParserContext *s, AVCodecContext *avctx, const uint8_t **poutbuf, int *poutbuf_size, const uint8_t *buf, int buf_size)
static av_cold void close(AVCodecParserContext *s)
Convenience header that includes libavutil's core.
#define i(width, name, range_min, range_max)
int(* init)(AVBSFContext *ctx)
static struct @346255127015250356166251341105367306144006377143 state
@ AV_PICTURE_TYPE_I
Intra.
Macro definitions for various function/variable attributes.
av_cold void ff_parse_close(AVCodecParserContext *s)
int ff_combine_frame(ParseContext *pc, int next, const uint8_t **buf, int *buf_size)
Combine the (truncated) bitstream to a complete frame.
#define PARSER_CODEC_LIST(...)
const FFCodecParser ff_xbm_parser
main external API structure.
uint64_t state64
contains the last 8 bytes in MSB order
static av_cold int xbm_init(AVCodecParserContext *s)
static int xbm_parse(AVCodecParserContext *s, AVCodecContext *avctx, const uint8_t **poutbuf, int *poutbuf_size, const uint8_t *buf, int buf_size)