Fix rollover and pass 1 time estimate

Fixes a rollover of the cx_time variable for encodes that take
over ~4200 seconds. Also enable the time estimate in first pass.

Change-Id: Ib5a98ee71bccd79a804d709cec7260651d0b7141
This commit is contained in:
John Koleszar 2013-02-27 11:14:23 -08:00
Родитель 7dfec96059
Коммит 406ec6b62e
1 изменённых файлов: 4 добавлений и 4 удалений

Просмотреть файл

@ -2460,7 +2460,7 @@ int main(int argc, const char **argv_) {
struct global_config global; struct global_config global;
struct stream_state *streams = NULL; struct stream_state *streams = NULL;
char **argv, **argi; char **argv, **argi;
unsigned long cx_time = 0; uint64_t cx_time = 0;
int stream_cnt = 0; int stream_cnt = 0;
int res = 0; int res = 0;
@ -2601,7 +2601,7 @@ int main(int argc, const char **argv_) {
else else
fprintf(stderr, "frame %4d ", frames_in); fprintf(stderr, "frame %4d ", frames_in);
fprintf(stderr, "%7lu %s %.2f %s ", fprintf(stderr, "%7"PRId64" %s %.2f %s ",
cx_time > 9999999 ? cx_time / 1000 : cx_time, cx_time > 9999999 ? cx_time / 1000 : cx_time,
cx_time > 9999999 ? "ms" : "us", cx_time > 9999999 ? "ms" : "us",
fps >= 1.0 ? fps : 1000.0 / fps, fps >= 1.0 ? fps : 1000.0 / fps,
@ -2619,7 +2619,7 @@ int main(int argc, const char **argv_) {
frame_avail ? &raw : NULL, frame_avail ? &raw : NULL,
frames_in)); frames_in));
vpx_usec_timer_mark(&timer); vpx_usec_timer_mark(&timer);
cx_time += (unsigned long)vpx_usec_timer_elapsed(&timer); cx_time += vpx_usec_timer_elapsed(&timer);
FOREACH_STREAM(update_quantizer_histogram(stream)); FOREACH_STREAM(update_quantizer_histogram(stream));
@ -2628,7 +2628,7 @@ int main(int argc, const char **argv_) {
if (!got_data && input.length && !streams->frames_out) { if (!got_data && input.length && !streams->frames_out) {
lagged_count = global.limit ? frames_in : ftello(input.file); lagged_count = global.limit ? frames_in : ftello(input.file);
} else if (got_data && input.length) { } else if (input.length) {
int64_t remaining; int64_t remaining;
int64_t rate; int64_t rate;