Mercurial > libavcodec.hg
comparison mpegvideo.h @ 2189:70b27300a496 libavcodec
quad tree based motion compensation (currently only 16x16 & 8x8 OBMC blocks, but can be extended to other block sizes easily)
different intra block coding (previous was just an ugly hack)
1.8% bitrate reduction -0.01PSNR (foreman@352x288 qscale=8)
1.5% bitrate reduction +0.05PSNR (foreman@352x288 qscale=1)
author | michael |
---|---|
date | Thu, 26 Aug 2004 20:04:54 +0000 |
parents | 2faafe7a3db6 |
children | 9b6eb06cc184 |
comparison
equal
deleted
inserted
replaced
2188:226d0a39347d | 2189:70b27300a496 |
---|---|
804 void ff_fix_long_p_mvs(MpegEncContext * s); | 804 void ff_fix_long_p_mvs(MpegEncContext * s); |
805 void ff_fix_long_mvs(MpegEncContext * s, uint8_t *field_select_table, int field_select, | 805 void ff_fix_long_mvs(MpegEncContext * s, uint8_t *field_select_table, int field_select, |
806 int16_t (*mv_table)[2], int f_code, int type, int truncate); | 806 int16_t (*mv_table)[2], int f_code, int type, int truncate); |
807 void ff_init_me(MpegEncContext *s); | 807 void ff_init_me(MpegEncContext *s); |
808 int ff_pre_estimate_p_frame_motion(MpegEncContext * s, int mb_x, int mb_y); | 808 int ff_pre_estimate_p_frame_motion(MpegEncContext * s, int mb_x, int mb_y); |
809 | 809 inline int ff_epzs_motion_search(MpegEncContext * s, int *mx_ptr, int *my_ptr, |
810 int P[10][2], int src_index, int ref_index, int16_t (*last_mv)[2], | |
811 int ref_mv_scale, int size, int h); | |
812 int inline ff_get_mb_score(MpegEncContext * s, int mx, int my, int src_index, | |
813 int ref_index, int size, int h, int add_rate); | |
810 | 814 |
811 /* mpeg12.c */ | 815 /* mpeg12.c */ |
812 extern const int16_t ff_mpeg1_default_intra_matrix[64]; | 816 extern const int16_t ff_mpeg1_default_intra_matrix[64]; |
813 extern const int16_t ff_mpeg1_default_non_intra_matrix[64]; | 817 extern const int16_t ff_mpeg1_default_non_intra_matrix[64]; |
814 extern uint8_t ff_mpeg1_dc_scale_table[128]; | 818 extern uint8_t ff_mpeg1_dc_scale_table[128]; |