if((avctx->flags & CODEC_FLAG_GLOBAL_HEADER) && !(avctx->flags2 & CODEC_FLAG2_LOCAL_HEADER)){
if((avctx->flags & CODEC_FLAG_GLOBAL_HEADER) || (avctx->flags2 & CODEC_FLAG2_LOCAL_HEADER)){
int av_parser_change(AVCodecParserContext *s,                     AVCodecContext *avctx,                     uint8_t **poutbuf, int *poutbuf_size,                      const uint8_t *buf, int buf_size, int keyframe){       if(s && s->parser->split){        if((avctx->flags & CODEC_FLAG_GLOBAL_HEADER) && !(avctx->flags2 & CODEC_FLAG2_LOCAL_HEADER)){            int i= s->parser->split(avctx, buf, buf_size);            buf += i;            buf_size -= i;        }    }    *poutbuf= buf;    *poutbuf_size= buf_size;    if(avctx->extradata){        if(  (keyframe && (avctx->flags2 & CODEC_FLAG2_LOCAL_HEADER))            /*||(s->pict_type != I_TYPE && (s->flags & PARSER_FLAG_DUMP_EXTRADATA_AT_NOKEY))*/            /*||(? && (s->flags & PARSER_FLAG_DUMP_EXTRADATA_AT_BEGIN)*/){            int size= buf_size + avctx->extradata_size;            *poutbuf_size= size;            *poutbuf= av_malloc(size + FF_INPUT_BUFFER_PADDING_SIZE);                        memcpy(*poutbuf, avctx->extradata, avctx->extradata_size);            memcpy((*poutbuf) + avctx->extradata_size, buf, buf_size);            return 1;        }    }    return 0;}