On Mon, Jan 04, 2016 at 05:32:32PM +0000, Derek Buitenhuis wrote: > On 1/4/2016 5:17 PM, Carl Eugen Hoyos wrote: > > I wish I would understand;-( > > > > Since this fixes a reported issue here, I will > > commit my patch if nobody objects. > > [17:30] * Daemon404 pokes ubitux > [17:30] <@ubitux> yup? > [17:30] <@Daemon404> do you have a comment on carl's decimate change > [17:31] <@ubitux> i need to look more closely, it's been a long time > [17:31] <@ubitux> i need to "sync" it with upstream since a long time > [17:31] <@ubitux> i'll check tonight (in ~3h probably) >
commit e004c18ced0cd1c9b0d3680835b8ec474c539217 Author: cantabile <cantabile.d...@gmail.com> Date: Mon May 19 00:03:17 2014 +0300 VDecimate: Fix decimation of the first cycle The first frame's metrics are always zero, thus the first frame is always considered a duplicate, which means it's always dropped. Avoid this by copying the second frame's maximum block difference. Also make the first frame's total difference just a bit higher than the scene change threshold, so it's always considered a scene change. This way the first frame will be dropped when there are no duplicates and no other scene changes in the cycle. diff --git a/src/filters/vivtc/vivtc.c b/src/filters/vivtc/vivtc.c index b0eba1d..abfa900 100644 --- a/src/filters/vivtc/vivtc.c +++ b/src/filters/vivtc/vivtc.c @@ -1252,6 +1252,12 @@ static const VSFrameRef *VS_CC vdecimateGetFrame(int n, int activationReason, vo vsapi->freeFrame(cur); } + // The first frame's metrics are always 0, thus it's always considered a duplicate. + if (cyclestart == 0) { + vdm->vmi[0].maxbdiff = vdm->vmi[1].maxbdiff; + vdm->vmi[0].totdiff = vdm->scthresh + 1; + } + if (*drop < 0) *drop = findDropFrame(&vdm->vmi[cyclestart], cycleend - cyclestart, vdm->scthresh, vdm->dupthresh); } I suggest to "cherry-pick" this if it works. Regards, -- Clément B.
signature.asc
Description: PGP signature
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel