--- branches/dev-api-4/xvidcore/vfw/src/codec.c 2003/10/28 23:42:09 1193 +++ branches/dev-api-4/xvidcore/vfw/src/codec.c 2003/12/01 13:16:43 1234 @@ -49,6 +49,7 @@ #include #include +#include #include "vfwext.h" #include @@ -280,11 +281,17 @@ { xvid_plg_data_t *data = (xvid_plg_data_t *) param1; - DPRINTF("[%5i] type=%c Q:%2i length:%6i", - data->frame_num, - type2char(data->type), - data->quant, - data->length); + /* We don't use DPRINTF here because it's active only for _DEBUG + * builds and that activates lot of other debug printfs. We only + * want these all the time */ + char buf[1024]; + sprintf(buf, "[%5i] type=%c Q:%2i length:%6i", + data->frame_num, + type2char(data->type), + data->quant, + data->length); + OutputDebugString(buf); + return 0; } } @@ -371,13 +378,11 @@ pass2.filename = codec->config.stats; pass2.keyframe_boost = codec->config.keyframe_boost; /* keyframe boost percentage: [0..100...]; */ - pass2.payback_method = codec->config.bitrate_payback_method; - pass2.bitrate_payback_delay = codec->config.bitrate_payback_delay; pass2.curve_compression_high = codec->config.curve_compression_high; pass2.curve_compression_low = codec->config.curve_compression_low; + pass2.overflow_control_strength = codec->config.overflow_control_strength; pass2.max_overflow_improvement = codec->config.twopass_max_overflow_improvement; pass2.max_overflow_degradation = codec->config.twopass_max_overflow_degradation; - pass2.kftreshold = codec->config.kftreshold; pass2.kfreduction = codec->config.kfreduction; pass2.min_key_interval = codec->config.min_key_interval; pass2.container_frame_overhead = 24; /* AVI */ @@ -570,9 +575,7 @@ if (codec->config.cartoon_mode) { frame.vop_flags |= XVID_VOP_CARTOON; -#if 0 /* Seems to cause crashes with P4 cpus */ frame.motion |= XVID_ME_DETECT_STATIC_MOTION; -#endif } frame.motion |= pmvfast_presets[codec->config.motion_search]; @@ -634,14 +637,7 @@ // force keyframe spacing in 2-pass 1st pass if (codec->config.motion_search == 0) - { frame.type = XVID_TYPE_IVOP; - } - else if (codec->keyspacing < codec->config.min_key_interval && codec->framenum) - { - DPRINTF("current frame forced to p-frame"); - frame.type = XVID_TYPE_PVOP; - } /* frame-based stuff */ apply_zone_modifiers(&frame, &codec->config, codec->framenum);