videobox: Add support for filling the background with red, yellow and white

This commit is contained in:
Sebastian Dröge 2010-04-07 16:24:38 +02:00
parent a0fd92dfc1
commit 02a4a150e8
2 changed files with 26 additions and 11 deletions

View file

@ -69,17 +69,26 @@ GST_DEBUG_CATEGORY_STATIC (videobox_debug);
#define GST_CAT_DEFAULT videobox_debug
/* From videotestsrc.c */
static const guint8 yuv_sdtv_colors_Y[VIDEO_BOX_FILL_LAST] = { 16, 145, 41 };
static const guint8 yuv_sdtv_colors_U[VIDEO_BOX_FILL_LAST] = { 128, 54, 240 };
static const guint8 yuv_sdtv_colors_V[VIDEO_BOX_FILL_LAST] = { 128, 34, 110 };
static const guint8 yuv_sdtv_colors_Y[VIDEO_BOX_FILL_LAST] =
{ 16, 145, 41, 81, 210, 235 };
static const guint8 yuv_sdtv_colors_U[VIDEO_BOX_FILL_LAST] =
{ 128, 54, 240, 90, 16, 128 };
static const guint8 yuv_sdtv_colors_V[VIDEO_BOX_FILL_LAST] =
{ 128, 34, 110, 240, 146, 128 };
static const guint8 yuv_hdtv_colors_Y[VIDEO_BOX_FILL_LAST] = { 16, 173, 32 };
static const guint8 yuv_hdtv_colors_U[VIDEO_BOX_FILL_LAST] = { 128, 42, 240 };
static const guint8 yuv_hdtv_colors_V[VIDEO_BOX_FILL_LAST] = { 128, 26, 118 };
static const guint8 yuv_hdtv_colors_Y[VIDEO_BOX_FILL_LAST] =
{ 16, 173, 32, 63, 219, 235 };
static const guint8 yuv_hdtv_colors_U[VIDEO_BOX_FILL_LAST] =
{ 128, 42, 240, 102, 16, 128 };
static const guint8 yuv_hdtv_colors_V[VIDEO_BOX_FILL_LAST] =
{ 128, 26, 118, 240, 138, 128 };
static const guint8 rgb_colors_R[VIDEO_BOX_FILL_LAST] = { 0, 255, 0 };
static const guint8 rgb_colors_G[VIDEO_BOX_FILL_LAST] = { 0, 0, 0 };
static const guint8 rgb_colors_B[VIDEO_BOX_FILL_LAST] = { 0, 255, 255 };
static const guint8 rgb_colors_R[VIDEO_BOX_FILL_LAST] =
{ 0, 0, 0, 255, 255, 255 };
static const guint8 rgb_colors_G[VIDEO_BOX_FILL_LAST] =
{ 0, 255, 0, 0, 255, 255 };
static const guint8 rgb_colors_B[VIDEO_BOX_FILL_LAST] =
{ 0, 0, 255, 0, 0, 255 };
/* Generated by -bad/ext/cog/generate_tables */
static const int cog_ycbcr_to_rgb_matrix_8bit_hdtv[] = {
@ -1165,8 +1174,11 @@ gst_video_box_fill_get_type (void)
static GType video_box_fill_type = 0;
static const GEnumValue video_box_fill[] = {
{VIDEO_BOX_FILL_BLACK, "Black", "black"},
{VIDEO_BOX_FILL_GREEN, "Colorkey green", "green"},
{VIDEO_BOX_FILL_BLUE, "Colorkey blue", "blue"},
{VIDEO_BOX_FILL_GREEN, "Green", "green"},
{VIDEO_BOX_FILL_BLUE, "Blue", "blue"},
{VIDEO_BOX_FILL_RED, "Red", "red"},
{VIDEO_BOX_FILL_YELLOW, "Yellow", "yellow"},
{VIDEO_BOX_FILL_WHITE, "White", "white"},
{0, NULL, NULL},
};

View file

@ -43,6 +43,9 @@ typedef enum
VIDEO_BOX_FILL_BLACK,
VIDEO_BOX_FILL_GREEN,
VIDEO_BOX_FILL_BLUE,
VIDEO_BOX_FILL_RED,
VIDEO_BOX_FILL_YELLOW,
VIDEO_BOX_FILL_WHITE,
VIDEO_BOX_FILL_LAST
}
GstVideoBoxFill;