comparison mpegvideo.h @ 9090:cecf81f93756 libavcodec

Call ff_fetch_timestamp() for mpeg1/2 when a picture start code is found instead of calling it at the end of a frame with a large negative offset. This significantly reduces the maximal distance in container packets between the point where the first byte of the "access unit" was stored and where we call ff_fetch_timestamp() thus reducing the constraints on our parser. Also change the parser from next_frame_offset to cur, this is needed because now the reference is from container packet start instead of frame start. (i previously misinterpreted this as bug)
author michael
date Mon, 02 Mar 2009 14:53:18 +0000
parents a199529ef171
children 0bd35457454e
comparison
equal deleted inserted replaced
9089:bea68afbf199 9090:cecf81f93756
767 DCTELEM block[6][64], 767 DCTELEM block[6][64],
768 int motion_x, int motion_y); 768 int motion_x, int motion_y);
769 void ff_mpeg1_encode_init(MpegEncContext *s); 769 void ff_mpeg1_encode_init(MpegEncContext *s);
770 void ff_mpeg1_encode_slice_header(MpegEncContext *s); 770 void ff_mpeg1_encode_slice_header(MpegEncContext *s);
771 void ff_mpeg1_clean_buffers(MpegEncContext *s); 771 void ff_mpeg1_clean_buffers(MpegEncContext *s);
772 int ff_mpeg1_find_frame_end(ParseContext *pc, const uint8_t *buf, int buf_size); 772 int ff_mpeg1_find_frame_end(ParseContext *pc, const uint8_t *buf, int buf_size, AVCodecParserContext *s);
773 773
774 extern const uint8_t ff_mpeg4_y_dc_scale_table[32]; 774 extern const uint8_t ff_mpeg4_y_dc_scale_table[32];
775 extern const uint8_t ff_mpeg4_c_dc_scale_table[32]; 775 extern const uint8_t ff_mpeg4_c_dc_scale_table[32];
776 extern const uint8_t ff_aic_dc_scale_table[32]; 776 extern const uint8_t ff_aic_dc_scale_table[32];
777 extern const int16_t ff_mpeg4_default_intra_matrix[64]; 777 extern const int16_t ff_mpeg4_default_intra_matrix[64];