/* parsers */
av_register_codec_parser(&mpegvideo_parser);
av_register_codec_parser(&mpeg4video_parser);
+#ifdef CONFIG_CAVS_DECODER
av_register_codec_parser(&cavsvideo_parser);
+#endif
#if defined(CONFIG_H261_DECODER) || defined(CONFIG_H261_ENCODER)
av_register_codec_parser(&h261_parser);
#endif
}
}
+#ifdef CONFIG_CAVS_DECODER
/* AVS specific */
void ff_cavsdsp_init(DSPContext* c, AVCodecContext *avctx);
void ff_avg_cavs_qpel16_mc00_c(uint8_t *dst, uint8_t *src, int stride) {
avg_pixels16_c(dst, src, stride, 16);
}
+#endif /* CONFIG_CAVS_DECODER */
static void wmv2_mspel8_v_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int w){
uint8_t *cm = cropTbl + MAX_NEG_CROP;
c->biweight_h264_pixels_tab[8]= biweight_h264_pixels2x4_c;
c->biweight_h264_pixels_tab[9]= biweight_h264_pixels2x2_c;
+#ifdef CONFIG_CAVS_DECODER
ff_cavsdsp_init(c,avctx);
+#endif
c->put_mspel_pixels_tab[0]= put_mspel8_mc00_c;
c->put_mspel_pixels_tab[1]= put_mspel8_mc10_c;
return next;
}
+#ifdef CONFIG_CAVS_DECODER
static int cavsvideo_parse(AVCodecParserContext *s,
AVCodecContext *avctx,
uint8_t **poutbuf, int *poutbuf_size,
*poutbuf_size = buf_size;
return next;
}
+#endif /* CONFIG_CAVS_DECODER */
static int mpeg4video_split(AVCodecContext *avctx,
const uint8_t *buf, int buf_size)
mpeg4video_split,
};
+#ifdef CONFIG_CAVS_DECODER
AVCodecParser cavsvideo_parser = {
{ CODEC_ID_CAVS },
sizeof(ParseContext1),
parse1_close,
mpeg4video_split,
};
+#endif
AVCodecParser mpegaudio_parser = {
{ CODEC_ID_MP2, CODEC_ID_MP3 },