diff options
author | Clément Bœsch <u@pkh.me> | 2014-05-08 23:48:55 +0200 |
---|---|---|
committer | Clément Bœsch <u@pkh.me> | 2014-05-08 23:58:34 +0200 |
commit | 5623a10526ffa45ac2785bcfd3edba0d4382b2bc (patch) | |
tree | f91520d6e77572174ab4c1028c9b72dc1b03ef69 | |
parent | 5df10150d4a8d9e56716e0cf16d68bd3def6d7a4 (diff) | |
download | ffmpeg-5623a10526ffa45ac2785bcfd3edba0d4382b2bc.tar.gz |
avfilter/phase: make the main loop readable.
-rw-r--r-- | libavfilter/vf_phase.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/libavfilter/vf_phase.c b/libavfilter/vf_phase.c index 34caf891f1..82dc603efe 100644 --- a/libavfilter/vf_phase.c +++ b/libavfilter/vf_phase.c @@ -122,8 +122,6 @@ static enum PhaseMode analyze_plane(void *ctx, enum PhaseMode mode, AVFrame *old const int h = new->height; const int w = new->width; int bdif, tdif, pdif; - const uint8_t *end, *rend; - int top, t; if (mode == AUTO) { mode = new->interlaced_frame ? new->top_field_first ? @@ -136,10 +134,14 @@ static enum PhaseMode analyze_plane(void *ctx, enum PhaseMode mode, AVFrame *old if (mode <= BOTTOM_FIRST) { bdiff = pdiff = tdiff = 65536.0; } else { + int top = 0, t; + const uint8_t *rend, *end = nptr + (h - 2) * ns; + bdiff = pdiff = tdiff = 0.0; - for (end = nptr + (h - 2) * ns, nptr += ns, optr += os, top = 0; - nptr < end; nptr += ns - w, optr += os - w, top ^= 1) { + nptr += ns; + optr += os; + while (nptr < end) { pdif = tdif = bdif = 0; switch (mode) { @@ -204,6 +206,9 @@ static enum PhaseMode analyze_plane(void *ctx, enum PhaseMode mode, AVFrame *old pdiff += (double)pdif; tdiff += (double)tdif; bdiff += (double)bdif; + nptr += ns - w; + optr += os - w; + top ^= 1; } scale = 1.0 / (w * (h - 3)) / 25.0; |