Chen-tao / webm

Automatically exported from code.google.com/p/webm
0 stars 0 forks source link

vp9 vpxenc ETA overflow #551

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
Pass 1/2 frame 179232/179233 27243416B    1216b/f   29155b/s 11969341 ms (14.97 
fps)←[K
timex 15106368.83ms

Pass 2/2 frame 8236/8211 42306543B  503081 ms 16.37 fps [ETA  2:23:48] 
←[K45.648 44.533 48.343 51.006    6855FFFFF

Its taken about a day to do 8236 frames, so ETA is about 500 hours.

Original issue reported on code.google.com by fbarch...@chromium.org on 24 Feb 2013 at 5:34

GoogleCodeExporter commented 8 years ago
change cx_time to int64_t at vpxenc.c:2453

Original comment by fbarch...@chromium.org on 27 Feb 2013 at 12:42

GoogleCodeExporter commented 8 years ago
First pass shows 'unknown'
Pass 1/2 frame 76794/76793 11672384B  996996 ms 77.02 fps [ETA  unknown]

Original comment by fbarch...@chromium.org on 27 Feb 2013 at 12:09

GoogleCodeExporter commented 8 years ago
Using a long long seems to work:

This video infact took 40 hours, and ETA shows:
Pass 2/2 frame   45/20   5241368B 1320599 ms 30013.62 ms/f [ETA 49:25:12] 
37.440 37.363 37.107 38.149  213803F

Original comment by fbarch...@chromium.org on 27 Feb 2013 at 12:34

GoogleCodeExporter commented 8 years ago
On a 2 hour 10 min 1080p video, looks like it'll take 202 hours - 8.4 days.

Pass 2/2 frame   81/56    165908B  309269 ms 3865.87 ms/f [ETA 202:08:10] 
43.209 42.010 46.825 48.530   11593F

Original comment by fbarch...@chromium.org on 27 Feb 2013 at 8:00

GoogleCodeExporter commented 8 years ago
a little while later, ETA went up...

Pass 2/2 frame  404/379  5501679B 4069432 ms 10069.02 ms/f [ETA 532:30:59] 
43.028 41.843 47.079 47.570   12867F

but 4 hours later, down...
Pass 2/2 frame 2543/2518 11360380B 14641837 ms 5757.70 ms/f [ETA 285:44:44] 
59.532 60.272 57.367 59.618    2732F

Original comment by fbarch...@chromium.org on 27 Feb 2013 at 11:53

GoogleCodeExporter commented 8 years ago
In master change line 2379 to
uint64_t                 cx_time = 0;
and line 2150 to
            fprintf(stderr,
                    "\rPass %d/%d frame %4d %7"PRIu64" %s (%.2f fps)\033[K",
                    pass + 1, global.passes, frames_in,
                    cx_time > 9999999 ? cx_time / 1000u : cx_time,
                    cx_time > 9999999 ? "ms" : "us",
                    usec_to_fps(cx_time, frames_in));

Original comment by fbarch...@chromium.org on 2 Mar 2013 at 3:35

GoogleCodeExporter commented 8 years ago
In experiment the fix is done.
But elsewhere cx_time uses %7"PRId64" and should be %7"PRIu64"

Original comment by fbarch...@chromium.org on 2 Mar 2013 at 8:32

GoogleCodeExporter commented 8 years ago
Its not clear ETA is working.
On Friday night I started encoding.  On Monday ETA was 360.  Tuesday also 360, 
although frame count progresses.
Pass 2/2 frame 34075/34050 349989604B 298446630 ms 8758.52 ms/f [ETA 353:29:07] 
45.010 44.300 45.624 48.772   11577F

This vid is similarly 2 hrs long, but low resolution
Pass 2/2 frame 152418/152393 259433370B 300361525 ms 1970.66 ms/f [ETA  
6:36:46] 47.350 46.741 49.048 48.765     754F

On the first file, 8758.52 ms/f is holding fair constant.  I wonder if theres a 
problem on very large files?

Original comment by fbarch...@chromium.org on 7 Mar 2013 at 8:10

GoogleCodeExporter commented 8 years ago
ETA is progressing, but time per frame is going up

Pass 2/2 frame 60665/60640 621864914B 543576148 ms 8960.29 ms/f [ETA 295:17:51] 
44.273 43.085 47.793 49.563    6772F

Original comment by fbarch...@chromium.org on 10 Mar 2013 at 4:31

GoogleCodeExporter commented 8 years ago
ETA is not coming down as fast as it should

Pass 2/2 frame 76162/76137 797297752B 697848076 ms 9162.68 ms/f [ETA 262:29:36] 
46.027 45.201 46.643 51.340    5236F

295 - 43 = 252.  But we're showing 262.  Off by 30%.
ms/f has gone up.

Original comment by fbarch...@chromium.org on 12 Mar 2013 at 12:01

GoogleCodeExporter commented 8 years ago
VP9 bitstream is not yet finalized 

Original comment by albe...@google.com on 14 Mar 2013 at 10:27

GoogleCodeExporter commented 8 years ago
at 14 days (336hrs), ETA shows 194 hrs left.
Pass 2/2 frame 104154/104129 1075069362B 970413986 ms 9317.11 ms/f [ETA 
194:25:26] 45.021 44.269 45.664 4
frame wise 55% complete.

ETA appears to be working, and this bug can be closed.

Current inaccuracy is due to encode time increasing over time, which is 
potentially a different bug.

Original comment by fbarch...@chromium.org on 15 Mar 2013 at 6:26

GoogleCodeExporter commented 8 years ago
Go ahead and close the bug.
ETA working in master and experiment.

Experimental
Pass 2/2 frame 76712/76687 805747238B 764150913 ms 9961.30 ms/f [ETA 283:50:01] 
46.265 45.345 47.760 50.858    5040F

Master
Pass 2/2 frame 29853/29828 300332302B 764113694 ms 25596.73 ms/f [ETA 
1063:03:41]

Original comment by fbarch...@chromium.org on 24 Mar 2013 at 3:52

GoogleCodeExporter commented 8 years ago
Also works for VP8
Pass 2/2 frame 144183/152858 255511659B 4226788 ms 34.11 fps [ETA  0:09:55]

Original comment by fbarch...@chromium.org on 24 Mar 2013 at 3:54

GoogleCodeExporter commented 8 years ago

Original comment by jkoles...@google.com on 26 Mar 2013 at 3:52