videotestsrc

## videotestsrc videotestsrc — Creates a test video stream |

## Synopsis

    struct              GstVideoTestSrc;
    enum                GstVideoTestSrcPattern;

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----GstObject
                   +----GstElement
                         +----GstBaseSrc
                               +----GstPushSrc
                                     +----GstVideoTestSrc

## Properties

      "pattern"                  GstVideoTestSrcPattern  : Read / Write
      "timestamp-offset"         gint64                : Read / Write
      "is-live"                  gboolean              : Read / Write
      "peer-alloc"               gboolean              : Read / Write
      "colorspec"                GstVideoTestSrcColorSpec  : Read / Write
      "k0"                       gint                  : Read / Write
      "kt"                       gint                  : Read / Write
      "kt2"                      gint                  : Read / Write
      "kx"                       gint                  : Read / Write
      "kx2"                      gint                  : Read / Write
      "kxt"                      gint                  : Read / Write
      "kxy"                      gint                  : Read / Write
      "ky"                       gint                  : Read / Write
      "ky2"                      gint                  : Read / Write
      "kyt"                      gint                  : Read / Write
      "xoffset"                  gint                  : Read / Write
      "yoffset"                  gint                  : Read / Write
      "background-color"         guint                 : Read / Write
      "foreground-color"         guint                 : Read / Write
      "horizontal-speed"         gint                  : Read / Write

## Description

The videotestsrc element is used to produce test video data in a wide variety of formats. The video test data produced can be controlled with the "pattern" property.

### Example launch line

    1
    gst-launch -v videotestsrc pattern=snow ! ximagesink

Shows random noise in an X window.

## Synopsis

### Element Information

plugin | videotestsrc
author | David A. Schleef <ds@schleef.org>
class | Source/Video

### Element Pads

name | src
direction | source
presence | always
details | video/x-raw, format=(string){ I420, YV12, YUY2, UYVY, AYUV, RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, Y41B, Y42B, YVYU, Y444, v210, v216, NV12, NV21, GRAY8, GRAY16_BE, GRAY16_LE, v308, RGB16, BGR16, RGB15, BGR15, UYVP, A420, RGB8P, YUV9, YVU9, IYU1, ARGB64, AYUV64, r210, I420_10LE, I420_10BE, I422_10LE, I422_10BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
| video/x-bayer, format=(string){ bggr, rggb, grbg, gbrg }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]

## Details

### struct GstVideoTestSrc

    struct GstVideoTestSrc;

Opaque data structure.

### enum GstVideoTestSrcPattern

    typedef enum {
      GST_VIDEO_TEST_SRC_SMPTE,
      GST_VIDEO_TEST_SRC_SNOW,
      GST_VIDEO_TEST_SRC_BLACK,
      GST_VIDEO_TEST_SRC_WHITE,
      GST_VIDEO_TEST_SRC_RED,
      GST_VIDEO_TEST_SRC_GREEN,
      GST_VIDEO_TEST_SRC_BLUE,
      GST_VIDEO_TEST_SRC_CHECKERS1,
      GST_VIDEO_TEST_SRC_CHECKERS2,
      GST_VIDEO_TEST_SRC_CHECKERS4,
      GST_VIDEO_TEST_SRC_CHECKERS8,
      GST_VIDEO_TEST_SRC_CIRCULAR,
      GST_VIDEO_TEST_SRC_BLINK,
      GST_VIDEO_TEST_SRC_SMPTE75,
      GST_VIDEO_TEST_SRC_ZONE_PLATE,
      GST_VIDEO_TEST_SRC_GAMUT,
      GST_VIDEO_TEST_SRC_CHROMA_ZONE_PLATE,
      GST_VIDEO_TEST_SRC_SOLID,
      GST_VIDEO_TEST_SRC_BALL,
      GST_VIDEO_TEST_SRC_SMPTE100,
      GST_VIDEO_TEST_SRC_BAR
    } GstVideoTestSrcPattern;

The test pattern to produce.

The Gamut pattern creates a checkerboard pattern of colors at the edge of the YCbCr gamut and nearby colors that are out of gamut. The pattern is divided into 4 regions: black, white, red, and blue. After conversion to RGB, the out-of-gamut colors should be converted to the same value as their in-gamut neighbors. If the checkerboard pattern is still visible after conversion, this indicates a faulty conversion. Image manipulation, such as adjusting contrast or brightness, can also cause the pattern to be visible.

The Zone Plate pattern is based on BBC R&D Report 1978/23, and can be used to test spatial frequency response of a system. This pattern generator is controlled by the xoffset and yoffset parameters and also by all the parameters starting with 'k'. The default parameters produce a grey pattern. Try 'videotestsrc pattern=zone-plate kx2=20 ky2=20 kt=1' to produce something interesting.

`GST_VIDEO_TEST_SRC_SMPTE` | A standard SMPTE test pattern
`GST_VIDEO_TEST_SRC_SNOW` | Random noise
`GST_VIDEO_TEST_SRC_BLACK` | A black image
`GST_VIDEO_TEST_SRC_WHITE` | A white image
`GST_VIDEO_TEST_SRC_RED` | A red image
`GST_VIDEO_TEST_SRC_GREEN` | A green image
`GST_VIDEO_TEST_SRC_BLUE` | A blue image
`GST_VIDEO_TEST_SRC_CHECKERS1` | Checkers pattern (1px)
`GST_VIDEO_TEST_SRC_CHECKERS2` | Checkers pattern (2px)
`GST_VIDEO_TEST_SRC_CHECKERS4` | Checkers pattern (4px)
`GST_VIDEO_TEST_SRC_CHECKERS8` | Checkers pattern (8px)
`GST_VIDEO_TEST_SRC_CIRCULAR` | Circular pattern
`GST_VIDEO_TEST_SRC_BLINK` | Alternate between black and white
`GST_VIDEO_TEST_SRC_SMPTE75` | SMPTE test pattern (75% color bars)
`GST_VIDEO_TEST_SRC_ZONE_PLATE` | Zone plate
`GST_VIDEO_TEST_SRC_GAMUT` | Gamut checking pattern
`GST_VIDEO_TEST_SRC_CHROMA_ZONE_PLATE` | Chroma zone plate
`GST_VIDEO_TEST_SRC_SOLID` |
`GST_VIDEO_TEST_SRC_BALL` | Moving ball
`GST_VIDEO_TEST_SRC_SMPTE100` | SMPTE test pattern (100% color bars)
`GST_VIDEO_TEST_SRC_BAR` | Bar with foreground color

## Property Details

### The `"pattern"` property

      "pattern"                  GstVideoTestSrcPattern  : Read / Write

Type of test pattern to generate.

Default value: SMPTE 100% color bars

### The `"timestamp-offset"` property

      "timestamp-offset"         gint64                : Read / Write

An offset added to timestamps set on buffers (in ns).

Default value: 0

### The `"is-live"` property

      "is-live"                  gboolean              : Read / Write

Whether to act as a live source.

Default value: FALSE

### The `"peer-alloc"` property

      "peer-alloc"               gboolean              : Read / Write

Ask the peer to allocate an output buffer.

Default value: TRUE

### The `"colorspec"` property

      "colorspec"                GstVideoTestSrcColorSpec  : Read / Write

Generate video in the given color specification (Deprecated: use a caps filter with video/x-raw-yuv,color-matrix="sdtv" or "hdtv" instead).

Default value: ITU-R Rec. BT.601

### The `"k0"` property

      "k0"                       gint                  : Read / Write

Zoneplate zero order phase, for generating plain fields or phase offsets.

Default value: 0

### The `"kt"` property

      "kt"                       gint                  : Read / Write

Zoneplate 1st order t phase, for generating phase rotation as a function of time.

Default value: 0

### The `"kt2"` property

      "kt2"                      gint                  : Read / Write

Zoneplate 2nd order t phase, t*t/256 cycles per picture.

Default value: 0

### The `"kx"` property

      "kx"                       gint                  : Read / Write

Zoneplate 1st order x phase, for generating constant horizontal frequencies.

Default value: 0

### The `"kx2"` property

      "kx2"                      gint                  : Read / Write

Zoneplate 2nd order x phase, normalised to kx2/256 cycles per horizontal pixel at width/2 from origin.

Default value: 0

### The `"kxt"` property

      "kxt"                      gint                  : Read / Write

Zoneplate x*t product phase, normalised to kxy/256 cycles per vertical pixel at width/2 from origin.

Default value: 0

### The `"kxy"` property

      "kxy"                      gint                  : Read / Write

Zoneplate x*y product phase.

Default value: 0

### The `"ky"` property

      "ky"                       gint                  : Read / Write

Zoneplate 1st order y phase, for generating contant vertical frequencies.

Default value: 0

### The `"ky2"` property

      "ky2"                      gint                  : Read / Write

Zoneplate 2nd order y phase, normailsed to ky2/256 cycles per vertical pixel at height/2 from origin.

Default value: 0

### The `"kyt"` property

      "kyt"                      gint                  : Read / Write

Zoneplate y*t product phase.

Default value: 0

### The `"xoffset"` property

      "xoffset"                  gint                  : Read / Write

Zoneplate 2nd order products x offset.

Default value: 0

### The `"yoffset"` property

      "yoffset"                  gint                  : Read / Write

Zoneplate 2nd order products y offset.

Default value: 0

### The `"background-color"` property

      "background-color"         guint                 : Read / Write

Color to use for background color of some patterns. Default is black (0xff000000).

Default value: 4278190080

Since 0.10.31

### The `"foreground-color"` property

      "foreground-color"         guint                 : Read / Write

Color to use for solid-color pattern and foreground color of other patterns. Default is white (0xffffffff).

Default value: 4294967295

Since 0.10.31

### The `"horizontal-speed"` property

      "horizontal-speed"         gint                  : Read / Write

Scroll image number of pixels per frame (positive is scroll to the left).

Default value: 0