--- orig/src/smi_video.c 2009-07-27 09:42:44.000000000 +0600 +++ new/src/smi_video.c 2011-04-02 19:21:53.545665717 +0600 @@ -223,7 +223,7 @@ /**************************************************************************/ /* number of (generated) XV_ENCODING vaulues */ -#define N_ENCODINGS ((N_VIDEO_NORMS) * (N_COMPOSITE_CHANNELS + N_SVIDEO_CHANNELS)) +#define N_ENCODINGS (((N_VIDEO_NORMS) * (N_COMPOSITE_CHANNELS + N_SVIDEO_CHANNELS)) +1) /**************************************************************************/ @@ -288,7 +288,7 @@ XvPacked, /* format */ 1, /* num_planes */ 15, /* depth */ - 0x001F, 0x03E0, 0x7C00, /* red_mask, green, blue */ + 0x7C00, 0x03E0, 0x001F, /* red_mask, green, blue */ 0, 0, 0, /* y_sample_bits, u, v */ 0, 0, 0, /* horz_y_period, u, v */ 0, 0, 0, /* vert_y_period, u, v */ @@ -307,7 +307,7 @@ XvPacked, /* format */ 1, /* num_planes */ 16, /* depth */ - 0x001F, 0x07E0, 0xF800, /* red_mask, green, blue */ + 0xF800, 0x07E0, 0x001F, /* red_mask, green, blue */ 0, 0, 0, /* y_sample_bits, u, v */ 0, 0, 0, /* horz_y_period, u, v */ 0, 0, 0, /* vert_y_period, u, v */ @@ -326,7 +326,7 @@ XvPacked, /* format */ 1, /* num_planes */ 24, /* depth */ - 0x0000FF, 0x00FF00, 0xFF0000, /* red_mask, green, blue */ + 0xFF0000, 0x00FF00, 0x0000FF, /* red_mask, green, blue */ 0, 0, 0, /* y_sample_bits, u, v */ 0, 0, 0, /* horz_y_period, u, v */ 0, 0, 0, /* vert_y_period, u, v */ @@ -345,7 +345,7 @@ XvPacked, /* format */ 1, /* num_planes */ 24, /* depth */ - 0x0000FF, 0x00FF00, 0xFF0000, /* red_mask, green, blue */ + 0xFF0000, 0x00FF00, 0x0000FF, /* red_mask, green, blue */ 0, 0, 0, /* y_sample_bits, u, v */ 0, 0, 0, /* horz_y_period, u, v */ 0, 0, 0, /* vert_y_period, u, v */ @@ -372,7 +372,7 @@ XvPacked, /* format */ 1, /* num_planes */ 16, /* depth */ - 0x001F, 0x07E0, 0xF800, /* red_mask, green, blue */ + 0xF800, 0x07E0, 0x001F, /* red_mask, green, blue */ 0, 0, 0, /* y_sample_bits, u, v */ 0, 0, 0, /* horz_y_period, u, v */ 0, 0, 0, /* vert_y_period, u, v */ @@ -391,7 +391,7 @@ XvPacked, /* format */ 1, /* num_planes */ 24, /* depth */ - 0x0000FF, 0x00FF00, 0xFF0000, /* red_mask, green, blue */ + 0xFF0000, 0x00FF00, 0x0000FF, /* red_mask, green, blue */ 0, 0, 0, /* y_sample_bits, u, v */ 0, 0, 0, /* horz_y_period, u, v */ 0, 0, 0, /* vert_y_period, u, v */ @@ -569,6 +569,15 @@ /* fill arrays */ p->nenc = 0; + /* force XV_IMAGE at 0 */ + p->enc[0].width = 2048; + p->enc[0].height = 2048; + p->enc[0].rate.numerator = 1; + p->enc[0].rate.denominator = 1; + p->enc[0].name = xalloc(strlen("XV_IMAGE")+1); + sprintf(p->enc[0].name, "% s", "XV_IMAGE"); + + p->nenc = 1; for (ch = 0; ch < N_COMPOSITE_CHANNELS; ch++) { for (n = 0; n < N_VIDEO_NORMS; n++) { SMI_AddEncoding(p->enc, p->nenc, n, VID_COMPOSITE, ch);