Replace moving-color-bars pattern with smpte100, and change
moving-speed to horizontal-speed. Default is now 0. Add
a rotation stage to pattern building.
Allocate a temporary scanline for building images. Remove
unused code. Disable several patterns that we're unable to
test and probably never used. Add other variants of bayer
sampling. Convert some patterns to use videotestsrc_blend_line.
Replace solid-color property with foreground-color and add
background-color. Pull some common code out of each of the
pattern generating functions. Fix many of the patterns to
use foreground-color/background-color instead of white/black.
Generated images are indentical to previously if foreground-color
and background-color are left as default.
API: GstVideoTestSrc::foreground-color
API: GstVideoTestSrc::background-color
... which generalizes the current listing of white, black, etc.
In particular, also allow specifying alpha channel, and modify
some structures and pattern filling to cater for alpha value as well.
Fixes#624919.
API: GstVideoTestSrc:solid-color
Adds a pattern with out-of-gamut colors in a checkerboard
pattern with in-gamut neighbors. Useful for checking YCbCr->RGB
color matrixing. Correct matrixing and clamping will cause the
checkerboard pattern to be invisible.
videotestsrc rounds chroma down. This causes it to omit the last chroma
value completely for odd widths when the chroma is downsampled.
This patch special cases the last pixel to not be rounded down.
Original commit message from CVS:
Patch by: Jonathan Rosser <jonathan.rosser@rd.bbc.co.uk>
* gst/videotestsrc/gstvideotestsrc.c:
* gst/videotestsrc/gstvideotestsrc.h:
* gst/videotestsrc/videotestsrc.c:
* gst/videotestsrc/videotestsrc.h:
Add a zone plate pattern generator based on BBC R&D Report
1978/23 (yeah *that* 1978). Try 'videotestsrc pattern=zone-plate
kx2=20 ky2=20 kt=1'.
Original commit message from CVS:
* gst/videotestsrc/gstvideotestsrc.c:
* gst/videotestsrc/gstvideotestsrc.h:
* gst/videotestsrc/videotestsrc.c:
* gst/videotestsrc/videotestsrc.h:
Add "colorspec" property, specifying whether to generate BT.601
or BT.709 video. This only affects YCbCr values, not RGB, since
if you're generating a 709 test pattern, presumably you want
709 RGB primaries, not 601. Also add "smpte75" pattern, which
uses 75% colors instead of 100%, since this is often more useful
for testing (and also follows the SMPTE EG-1 guideline).
Original commit message from CVS:
* gst/videotestsrc/videotestsrc.c (paint_setup_NV12),
(paint_setup_NV21), (paint_hline_NV12_NV21):
Add support for NV12 and NV21 in videotestsrc