const double dr =
(double)cpi->bytes * (double) 8 / (double)1000 / time_encoded;
const double peak = (double)((1 << cpi->oxcf.input_bit_depth) - 1);
+ const double target_rate = (double)cpi->oxcf.target_bandwidth / 1000;
+ const double rate_err = ((100.0 * (dr - target_rate)) / target_rate);
if (cpi->b_calculate_psnr) {
const double total_psnr =
SNPRINT2(results, "\t%7.3f", cpi->ssimg.worst);
}
- fprintf(f, "%s\t Time\n", headings);
- fprintf(f, "%s\t%8.0f\n", results, total_encode_time);
+ fprintf(f, "%s\t Time Rc-Err Abs Err\n", headings);
+ fprintf(f, "%s\t%8.0f %7.2f %7.2f\n", results,
+ total_encode_time, rate_err, fabs(rate_err));
}
fclose(f);
double total_encode_time = (cpi->time_receive_data +
cpi->time_compress_data) / 1000.000;
double dr = (double)cpi->bytes * 8.0 / 1000.0 / time_encoded;
+ const double target_rate = (double)cpi->oxcf.target_bandwidth / 1000;
+ const double rate_err = ((100.0 * (dr - target_rate)) / target_rate);
if (cpi->b_calculate_psnr)
{
cpi->summed_weights, 8.0);
fprintf(f, "Bitrate\tAVGPsnr\tGLBPsnr\tAVPsnrP\t"
- "GLPsnrP\tVPXSSIM\t Time(us)\n");
+ "GLPsnrP\tVPXSSIM\t Time(us) Rc-Err "
+ "Abs Err\n");
fprintf(f, "%7.3f\t%7.3f\t%7.3f\t%7.3f\t%7.3f\t"
- "%7.3f\t%8.0f\n",
+ "%7.3f\t%8.0f %7.2f %7.2f\n",
dr, cpi->total / cpi->count, total_psnr,
cpi->totalp / cpi->count, total_psnr2,
- total_ssim, total_encode_time);
+ total_ssim, total_encode_time,
+ rate_err, fabs(rate_err));
}
}
const double dr =
(double)cpi->bytes * (double) 8 / (double)1000 / time_encoded;
const double peak = (double)((1 << cpi->oxcf.input_bit_depth) - 1);
+ const double target_rate = (double)cpi->oxcf.target_bandwidth / 1000;
+ const double rate_err = ((100.0 * (dr - target_rate)) / target_rate);
if (cpi->b_calculate_psnr) {
const double total_psnr =
SNPRINT2(results, "\t%7.3f", cpi->ssimg.worst);
}
- fprintf(f, "%s\t Time\n", headings);
- fprintf(f, "%s\t%8.0f\n", results, total_encode_time);
+ fprintf(f, "%s\t Time Rc-Err Abs Err\n", headings);
+ fprintf(f, "%s\t%8.0f %7.2f %7.2f\n", results,
+ total_encode_time, rate_err, fabs(rate_err));
}
fclose(f);