Mercurial > libavcodec.hg
comparison parser.c @ 4177:127d84a4c8e0 libavcodec
move all cavs-parsing to cavs.c
This should help building parser without decoder
| author | stefang |
|---|---|
| date | Sun, 12 Nov 2006 20:18:07 +0000 |
| parents | b3328ed50a5e |
| children | a0c0c7bebd64 |
comparison
equal
deleted
inserted
replaced
| 4176:23da44e8fd05 | 4177:127d84a4c8e0 |
|---|---|
| 358 *poutbuf = (uint8_t *)buf; | 358 *poutbuf = (uint8_t *)buf; |
| 359 *poutbuf_size = buf_size; | 359 *poutbuf_size = buf_size; |
| 360 return next; | 360 return next; |
| 361 } | 361 } |
| 362 #endif | 362 #endif |
| 363 | |
| 364 #ifdef CONFIG_CAVSVIDEO_PARSER | |
| 365 static int cavsvideo_parse(AVCodecParserContext *s, | |
| 366 AVCodecContext *avctx, | |
| 367 uint8_t **poutbuf, int *poutbuf_size, | |
| 368 const uint8_t *buf, int buf_size) | |
| 369 { | |
| 370 ParseContext *pc = s->priv_data; | |
| 371 int next; | |
| 372 | |
| 373 if(s->flags & PARSER_FLAG_COMPLETE_FRAMES){ | |
| 374 next= buf_size; | |
| 375 }else{ | |
| 376 next= ff_cavs_find_frame_end(pc, buf, buf_size); | |
| 377 | |
| 378 if (ff_combine_frame(pc, next, (uint8_t **)&buf, &buf_size) < 0) { | |
| 379 *poutbuf = NULL; | |
| 380 *poutbuf_size = 0; | |
| 381 return buf_size; | |
| 382 } | |
| 383 } | |
| 384 *poutbuf = (uint8_t *)buf; | |
| 385 *poutbuf_size = buf_size; | |
| 386 return next; | |
| 387 } | |
| 388 #endif /* CONFIG_CAVSVIDEO_PARSER */ | |
| 389 | 363 |
| 390 int ff_mpeg4video_split(AVCodecContext *avctx, | 364 int ff_mpeg4video_split(AVCodecContext *avctx, |
| 391 const uint8_t *buf, int buf_size) | 365 const uint8_t *buf, int buf_size) |
| 392 { | 366 { |
| 393 int i; | 367 int i; |
| 855 mpeg4video_parse, | 829 mpeg4video_parse, |
| 856 ff_parse1_close, | 830 ff_parse1_close, |
| 857 ff_mpeg4video_split, | 831 ff_mpeg4video_split, |
| 858 }; | 832 }; |
| 859 #endif | 833 #endif |
| 860 #ifdef CONFIG_CAVSVIDEO_PARSER | |
| 861 AVCodecParser cavsvideo_parser = { | |
| 862 { CODEC_ID_CAVS }, | |
| 863 sizeof(ParseContext1), | |
| 864 NULL, | |
| 865 cavsvideo_parse, | |
| 866 ff_parse1_close, | |
| 867 ff_mpeg4video_split, | |
| 868 }; | |
| 869 #endif | |
| 870 #ifdef CONFIG_MPEGAUDIO_PARSER | 834 #ifdef CONFIG_MPEGAUDIO_PARSER |
| 871 AVCodecParser mpegaudio_parser = { | 835 AVCodecParser mpegaudio_parser = { |
| 872 { CODEC_ID_MP2, CODEC_ID_MP3 }, | 836 { CODEC_ID_MP2, CODEC_ID_MP3 }, |
| 873 sizeof(MpegAudioParseContext), | 837 sizeof(MpegAudioParseContext), |
| 874 mpegaudio_parse_init, | 838 mpegaudio_parse_init, |
