]> granicus.if.org Git - handbrake/commit
sync: fix small video dejitter error
authorJohn Stebbins <jstebbins.hb@gmail.com>
Fri, 3 Mar 2017 21:19:36 +0000 (14:19 -0700)
committerJohn Stebbins <jstebbins.hb@gmail.com>
Fri, 3 Mar 2017 21:29:53 +0000 (14:29 -0700)
commit26f4c2dad5a700b9305b4cea3a8fe5e9de1033d3
tree08f62700260699a15dfdef83be15741826cb405f
parent5e9ea66be70eaa37d55246568f30e94ca633ad31
sync: fix small video dejitter error

This very small error snowballs into a crash in x264 :-p

If the amount of jitter on the first frame in the queue was small
(about 1 tick) then jitter would not be removed from that frame.
This extra tick of jitter can appear on different frames depending
on when frame arrives and how much has been queued.  This very small
amount of randomness lead to problems in the VFR filter.  A frame
duration difference as small as 1 tick can lead to an extra frame
getting duplicated when doing CFR.  When doing 2 pass encoding, this
extra frame causes x264 to crash at the end of the 2nd pass.

(cherry picked from commit 31d0389758bd506a6c349d85c0d3191880d0dea4)
libhb/sync.c