Opened 3 years ago

Closed 3 years ago

#2305 closed defect (invalid)

bmovl checks the the coordinates of the image region incorrectly

Reported by: floemker Owned by: beastd
Priority: normal Component: vf
Version: unspecified Severity: blocker
Keywords: Cc:
Blocked By: Blocking:
Reproduced by developer: no Analyzed by developer: no

Description

When transferring an image over the FIFO to bmovl a rectangle for the
destination position can be specified. The four coordinates are clipped
to allowed values. But that is done incorrectly.

Clipping for the first point depends on the image size, not on an
earlier position of the first point. And clipping for the second point
depends on the first point, and not on the earlier position of the
second point.

The attached patch fixes that for me.

mplayer version:

MPlayer 1.3.0-4.8 (C) 2000-2016 MPlayer Team
CPU vendor name: GenuineIntel? max cpuid level: 13
CPU: Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz (Family: 6, Model: 60, Stepping: 3)
extended cpuid-level: 8
extended cache-info: 16801856
Detected cache-line size is 64 bytes
CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNowExt: 0 SSE: 1 SSE2: 1 SSE3: 1 SSSE3: 1 SSE4: 1 SSE4.2: 1 AVX: 1
Compiled with runtime CPU detection.

Attachments (1)

bmovl-clip.patch (1.1 KB) - added by floemker 3 years ago.
Patch to correct the check of the incoming rectangle points

Download all attachments as: .zip

Change History (2)

Changed 3 years ago by floemker

Patch to correct the check of the incoming rectangle points

comment:1 Changed 3 years ago by beastd

  • Resolution set to invalid
  • Status changed from new to closed

What problem are you experiencing with the current behavior?

As far as I can read and test, the current behavior is correct. It tests if the used area widens with the just read image that is currently processed.

The bmovl internal buffer has the dimension of the playing video, but it additionally tracks the bounding rectangle of the area that is used so far. The filter supports cumulative updates, so it must not narrow the used area except when you request clearing (last parameter of the command you use to send the image into the pipe).

Note: See TracTickets for help on using tickets.