285 |
* builds and that activates lot of other debug printfs. We only |
* builds and that activates lot of other debug printfs. We only |
286 |
* want these all the time */ |
* want these all the time */ |
287 |
char buf[1024]; |
char buf[1024]; |
288 |
sprintf(buf, "[%5i] type=%c Q:%2i length:%6i", |
sprintf(buf, "[%6i] type=%c Q:%2i length:%6i", |
289 |
data->frame_num, |
data->frame_num, |
290 |
type2char(data->type), |
type2char(data->type), |
291 |
data->quant, |
data->quant, |
384 |
pass2.max_overflow_improvement = codec->config.twopass_max_overflow_improvement; |
pass2.max_overflow_improvement = codec->config.twopass_max_overflow_improvement; |
385 |
pass2.max_overflow_degradation = codec->config.twopass_max_overflow_degradation; |
pass2.max_overflow_degradation = codec->config.twopass_max_overflow_degradation; |
386 |
pass2.kfreduction = codec->config.kfreduction; |
pass2.kfreduction = codec->config.kfreduction; |
387 |
pass2.min_key_interval = codec->config.min_key_interval; |
pass2.kfthreshold = codec->config.kfthreshold; |
388 |
pass2.container_frame_overhead = 24; /* AVI */ |
pass2.container_frame_overhead = 24; /* AVI */ |
389 |
|
|
390 |
plugins[create.num_plugins].func = xvid_plugin_2pass2; |
plugins[create.num_plugins].func = xvid_plugin_2pass2; |
489 |
int i; |
int i; |
490 |
|
|
491 |
for (i=0; i<config->num_zones && config->zones[i].frame <= framenum; i++) ; |
for (i=0; i<config->num_zones && config->zones[i].frame <= framenum; i++) ; |
|
i--; |
|
492 |
|
|
493 |
|
if (--i < 0) return; /* there are no zones, or we're before the first zone */ |
494 |
|
|
495 |
|
if (framenum == config->zones[i].frame) |
496 |
frame->type = config->zones[i].type; |
frame->type = config->zones[i].type; |
497 |
|
|
498 |
if (config->zones[i].greyscale) { |
if (config->zones[i].greyscale) { |
557 |
if ((profiles[codec->config.profile].flags & PROFILE_INTERLACE) && codec->config.interlacing) |
if ((profiles[codec->config.profile].flags & PROFILE_INTERLACE) && codec->config.interlacing) |
558 |
frame.vol_flags |= XVID_VOL_INTERLACING; |
frame.vol_flags |= XVID_VOL_INTERLACING; |
559 |
|
|
560 |
|
if (codec->config.display_aspect_ratio !=0) { |
561 |
|
int ar_x; |
562 |
|
int ar_y; |
563 |
|
|
564 |
|
if (codec->config.display_aspect_ratio == 1) { |
565 |
|
ar_x = 4; |
566 |
|
ar_y = 3; |
567 |
|
} |
568 |
|
if (codec->config.display_aspect_ratio == 2) { |
569 |
|
ar_x = 16; |
570 |
|
ar_y = 9; |
571 |
|
} |
572 |
|
|
573 |
|
/* custom pixel aspect ratio -> calculated from DAR */ |
574 |
|
frame.par = XVID_PAR_EXT; |
575 |
|
frame.par_width = (100 * inhdr->biHeight) / ar_y; |
576 |
|
frame.par_height= (100 * inhdr->biWidth) / ar_x; |
577 |
|
} else { |
578 |
|
/* assuming defaults for now... */ |
579 |
|
frame.par = XVID_PAR_11_VGA; |
580 |
|
} |
581 |
|
|
582 |
/* vop stuff */ |
/* vop stuff */ |
583 |
|
|
584 |
frame.vop_flags |= XVID_VOP_HALFPEL; |
frame.vop_flags |= XVID_VOP_HALFPEL; |