0.10.24.4 pre-release

This commit is contained in:
Sebastian Dröge 2010-08-21 21:41:36 +02:00
parent 95d1b932ab
commit 9e981f6c2d
44 changed files with 571 additions and 456 deletions

View file

@ -5,7 +5,7 @@ dnl please read gstreamer/docs/random/autotools before changing this file
dnl initialize autoconf
dnl releases only do -Wall, git and prerelease does -Werror too
dnl use a three digit version number for releases, and four for git/pre
AC_INIT(GStreamer Good Plug-ins, 0.10.24.3,
AC_INIT(GStreamer Good Plug-ins, 0.10.24.4,
http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer,
gst-plugins-good)

View file

@ -47,14 +47,23 @@ typedef unsigned long orc_uint64;
#endif
#endif
typedef union
{
orc_int16 i;
orc_int8 x2[2];
} orc_union16;
typedef union
{
orc_int32 i;
float f;
orc_int16 x2[2];
orc_int8 x4[4];
} orc_union32;
typedef union
{
orc_int64 i;
double f;
orc_int32 x2[2];
orc_int16 x4[4];
} orc_union64;
#endif
@ -92,6 +101,17 @@ void deinterlace_line_linear_blend (guint8 * d1, const guint8 * s1,
#define ORC_SWAP_W(x) ((((x)&0xff)<<8) | (((x)&0xff00)>>8))
#define ORC_SWAP_L(x) ((((x)&0xff)<<24) | (((x)&0xff00)<<8) | (((x)&0xff0000)>>8) | (((x)&0xff000000)>>24))
#define ORC_PTR_OFFSET(ptr,offset) ((void *)(((unsigned char *)(ptr)) + (offset)))
#define ORC_MIN_NORMAL (1.1754944909521339405e-38)
#define ORC_DENORMAL(x) (((x) > -ORC_MIN_NORMAL && (x) < ORC_MIN_NORMAL) ? ((x)<0 ? (-0.0f) : (0.0f)) : (x))
#define ORC_MINF(a,b) (isnan(a) ? a : isnan(b) ? b : ((a)<(b)) ? (a) : (b))
#define ORC_MAXF(a,b) (isnan(a) ? a : isnan(b) ? b : ((a)>(b)) ? (a) : (b))
#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
#define ORC_RESTRICT restrict
#elif defined(__GNUC__) && __GNUC__ >= 4
#define ORC_RESTRICT __restrict__
#else
#define ORC_RESTRICT
#endif
/* end Orc C target preamble */
@ -103,35 +123,32 @@ deinterlace_line_vfir (guint8 * d1, const guint8 * s1, const guint8 * s2,
const guint8 * s3, const guint8 * s4, const guint8 * s5, int n)
{
int i;
orc_int8 var0;
orc_int8 *ptr0;
orc_int8 var4;
const orc_int8 *ptr4;
orc_int8 var5;
const orc_int8 *ptr5;
orc_int8 var6;
const orc_int8 *ptr6;
orc_int8 var7;
const orc_int8 *ptr7;
orc_int8 var8;
const orc_int8 *ptr8;
const orc_int16 var16 = 2;
const orc_int16 var17 = 1;
const orc_int16 var18 = 4;
const orc_int16 var19 = 3;
orc_int16 var32;
orc_int16 var33;
orc_int16 var34;
orc_int16 var35;
orc_int16 var36;
orc_int16 var37;
orc_int16 var38;
orc_int16 var39;
orc_int16 var40;
orc_int16 var41;
orc_int16 var42;
orc_int16 var43;
orc_int16 var44;
orc_int8 *ORC_RESTRICT ptr0;
const orc_int8 *ORC_RESTRICT ptr4;
const orc_int8 *ORC_RESTRICT ptr5;
const orc_int8 *ORC_RESTRICT ptr6;
const orc_int8 *ORC_RESTRICT ptr7;
const orc_int8 *ORC_RESTRICT ptr8;
orc_int8 var35;
orc_int8 var36;
orc_int8 var37;
orc_int8 var38;
orc_int8 var39;
orc_union16 var40;
orc_int8 var41;
orc_union16 var42;
orc_union16 var43;
orc_union16 var44;
orc_union16 var45;
orc_union16 var46;
orc_union16 var47;
orc_union16 var48;
orc_union16 var49;
orc_union16 var50;
orc_union16 var51;
orc_union16 var52;
orc_union16 var53;
orc_union16 var54;
ptr0 = (orc_int8 *) d1;
ptr4 = (orc_int8 *) s1;
@ -141,85 +158,84 @@ deinterlace_line_vfir (guint8 * d1, const guint8 * s1, const guint8 * s2,
ptr8 = (orc_int8 *) s5;
for (i = 0; i < n; i++) {
var4 = *ptr4;
ptr4++;
var5 = *ptr5;
ptr5++;
var6 = *ptr6;
ptr6++;
var7 = *ptr7;
ptr7++;
var8 = *ptr8;
ptr8++;
/* 0: convubw */
var32 = (orc_uint8) var4;
/* 0: loadb */
var35 = ptr4[i];
/* 1: convubw */
var33 = (orc_uint8) var8;
/* 2: addw */
var35 = var32 + var33;
var42.i = (orc_uint8) var35;
/* 2: loadb */
var36 = ptr8[i];
/* 3: convubw */
var36 = (orc_uint8) var5;
/* 4: convubw */
var34 = (orc_uint8) var7;
/* 5: addw */
var37 = var36 + var34;
/* 6: shlw */
var38 = var37 << var16;
/* 7: convubw */
var39 = (orc_uint8) var6;
/* 8: shlw */
var40 = var39 << var17;
/* 9: subw */
var41 = var38 - var35;
/* 10: addw */
var42 = var41 + var40;
/* 11: addw */
var43 = var42 + var18;
/* 12: shrsw */
var44 = var43 >> var19;
/* 13: convsuswb */
var0 = ORC_CLAMP_UB (var44);
*ptr0 = var0;
ptr0++;
var43.i = (orc_uint8) var36;
/* 4: addw */
var44.i = var42.i + var43.i;
/* 5: loadb */
var37 = ptr5[i];
/* 6: convubw */
var45.i = (orc_uint8) var37;
/* 7: loadb */
var38 = ptr7[i];
/* 8: convubw */
var46.i = (orc_uint8) var38;
/* 9: addw */
var47.i = var45.i + var46.i;
/* 10: shlw */
var48.i = var47.i << 2;
/* 11: loadb */
var39 = ptr6[i];
/* 12: convubw */
var49.i = (orc_uint8) var39;
/* 13: shlw */
var50.i = var49.i << 1;
/* 14: subw */
var51.i = var48.i - var44.i;
/* 15: addw */
var52.i = var51.i + var50.i;
/* 16: loadpw */
var40.i = 4;
/* 17: addw */
var53.i = var52.i + var40.i;
/* 18: shrsw */
var54.i = var53.i >> 3;
/* 19: convsuswb */
var41 = ORC_CLAMP_UB (var54.i);
/* 20: storeb */
ptr0[i] = var41;
}
}
#else
static void
_backup_deinterlace_line_vfir (OrcExecutor * ex)
_backup_deinterlace_line_vfir (OrcExecutor * ORC_RESTRICT ex)
{
int i;
int n = ex->n;
orc_int8 var0;
orc_int8 *ptr0;
orc_int8 var4;
const orc_int8 *ptr4;
orc_int8 var5;
const orc_int8 *ptr5;
orc_int8 var6;
const orc_int8 *ptr6;
orc_int8 var7;
const orc_int8 *ptr7;
orc_int8 var8;
const orc_int8 *ptr8;
const orc_int16 var16 = 2;
const orc_int16 var17 = 1;
const orc_int16 var18 = 4;
const orc_int16 var19 = 3;
orc_int16 var32;
orc_int16 var33;
orc_int16 var34;
orc_int16 var35;
orc_int16 var36;
orc_int16 var37;
orc_int16 var38;
orc_int16 var39;
orc_int16 var40;
orc_int16 var41;
orc_int16 var42;
orc_int16 var43;
orc_int16 var44;
orc_int8 *ORC_RESTRICT ptr0;
const orc_int8 *ORC_RESTRICT ptr4;
const orc_int8 *ORC_RESTRICT ptr5;
const orc_int8 *ORC_RESTRICT ptr6;
const orc_int8 *ORC_RESTRICT ptr7;
const orc_int8 *ORC_RESTRICT ptr8;
orc_int8 var35;
orc_int8 var36;
orc_int8 var37;
orc_int8 var38;
orc_int8 var39;
orc_union16 var40;
orc_int8 var41;
orc_union16 var42;
orc_union16 var43;
orc_union16 var44;
orc_union16 var45;
orc_union16 var46;
orc_union16 var47;
orc_union16 var48;
orc_union16 var49;
orc_union16 var50;
orc_union16 var51;
orc_union16 var52;
orc_union16 var53;
orc_union16 var54;
ptr0 = (orc_int8 *) ex->arrays[0];
ptr4 = (orc_int8 *) ex->arrays[4];
@ -229,46 +245,48 @@ _backup_deinterlace_line_vfir (OrcExecutor * ex)
ptr8 = (orc_int8 *) ex->arrays[8];
for (i = 0; i < n; i++) {
var4 = *ptr4;
ptr4++;
var5 = *ptr5;
ptr5++;
var6 = *ptr6;
ptr6++;
var7 = *ptr7;
ptr7++;
var8 = *ptr8;
ptr8++;
/* 0: convubw */
var32 = (orc_uint8) var4;
/* 0: loadb */
var35 = ptr4[i];
/* 1: convubw */
var33 = (orc_uint8) var8;
/* 2: addw */
var35 = var32 + var33;
var42.i = (orc_uint8) var35;
/* 2: loadb */
var36 = ptr8[i];
/* 3: convubw */
var36 = (orc_uint8) var5;
/* 4: convubw */
var34 = (orc_uint8) var7;
/* 5: addw */
var37 = var36 + var34;
/* 6: shlw */
var38 = var37 << var16;
/* 7: convubw */
var39 = (orc_uint8) var6;
/* 8: shlw */
var40 = var39 << var17;
/* 9: subw */
var41 = var38 - var35;
/* 10: addw */
var42 = var41 + var40;
/* 11: addw */
var43 = var42 + var18;
/* 12: shrsw */
var44 = var43 >> var19;
/* 13: convsuswb */
var0 = ORC_CLAMP_UB (var44);
*ptr0 = var0;
ptr0++;
var43.i = (orc_uint8) var36;
/* 4: addw */
var44.i = var42.i + var43.i;
/* 5: loadb */
var37 = ptr5[i];
/* 6: convubw */
var45.i = (orc_uint8) var37;
/* 7: loadb */
var38 = ptr7[i];
/* 8: convubw */
var46.i = (orc_uint8) var38;
/* 9: addw */
var47.i = var45.i + var46.i;
/* 10: shlw */
var48.i = var47.i << 2;
/* 11: loadb */
var39 = ptr6[i];
/* 12: convubw */
var49.i = (orc_uint8) var39;
/* 13: shlw */
var50.i = var49.i << 1;
/* 14: subw */
var51.i = var48.i - var44.i;
/* 15: addw */
var52.i = var51.i + var50.i;
/* 16: loadpw */
var40.i = 4;
/* 17: addw */
var53.i = var52.i + var40.i;
/* 18: shrsw */
var54.i = var53.i >> 3;
/* 19: convsuswb */
var41 = ORC_CLAMP_UB (var54.i);
/* 20: storeb */
ptr0[i] = var41;
}
}
@ -296,28 +314,42 @@ deinterlace_line_vfir (guint8 * d1, const guint8 * s1, const guint8 * s2,
orc_program_add_source (p, 1, "s3");
orc_program_add_source (p, 1, "s4");
orc_program_add_source (p, 1, "s5");
orc_program_add_constant (p, 2, 2, "c1");
orc_program_add_constant (p, 2, 1, "c2");
orc_program_add_constant (p, 2, 4, "c3");
orc_program_add_constant (p, 2, 3, "c4");
orc_program_add_constant (p, 2, 0x00000002, "c1");
orc_program_add_constant (p, 2, 0x00000001, "c2");
orc_program_add_constant (p, 2, 0x00000004, "c3");
orc_program_add_constant (p, 2, 0x00000003, "c4");
orc_program_add_temporary (p, 2, "t1");
orc_program_add_temporary (p, 2, "t2");
orc_program_add_temporary (p, 2, "t3");
orc_program_append (p, "convubw", ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_D1);
orc_program_append (p, "convubw", ORC_VAR_T2, ORC_VAR_S5, ORC_VAR_D1);
orc_program_append (p, "addw", ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_T2);
orc_program_append (p, "convubw", ORC_VAR_T2, ORC_VAR_S2, ORC_VAR_D1);
orc_program_append (p, "convubw", ORC_VAR_T3, ORC_VAR_S4, ORC_VAR_D1);
orc_program_append (p, "addw", ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_T3);
orc_program_append (p, "shlw", ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_C1);
orc_program_append (p, "convubw", ORC_VAR_T3, ORC_VAR_S3, ORC_VAR_D1);
orc_program_append (p, "shlw", ORC_VAR_T3, ORC_VAR_T3, ORC_VAR_C2);
orc_program_append (p, "subw", ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_T1);
orc_program_append (p, "addw", ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_T3);
orc_program_append (p, "addw", ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_C3);
orc_program_append (p, "shrsw", ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_C4);
orc_program_append (p, "convsuswb", ORC_VAR_D1, ORC_VAR_T2, ORC_VAR_D1);
orc_program_append_2 (p, "convubw", 0, ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_D1,
ORC_VAR_D1);
orc_program_append_2 (p, "convubw", 0, ORC_VAR_T2, ORC_VAR_S5, ORC_VAR_D1,
ORC_VAR_D1);
orc_program_append_2 (p, "addw", 0, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_T2,
ORC_VAR_D1);
orc_program_append_2 (p, "convubw", 0, ORC_VAR_T2, ORC_VAR_S2, ORC_VAR_D1,
ORC_VAR_D1);
orc_program_append_2 (p, "convubw", 0, ORC_VAR_T3, ORC_VAR_S4, ORC_VAR_D1,
ORC_VAR_D1);
orc_program_append_2 (p, "addw", 0, ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_T3,
ORC_VAR_D1);
orc_program_append_2 (p, "shlw", 0, ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_C1,
ORC_VAR_D1);
orc_program_append_2 (p, "convubw", 0, ORC_VAR_T3, ORC_VAR_S3, ORC_VAR_D1,
ORC_VAR_D1);
orc_program_append_2 (p, "shlw", 0, ORC_VAR_T3, ORC_VAR_T3, ORC_VAR_C2,
ORC_VAR_D1);
orc_program_append_2 (p, "subw", 0, ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_T1,
ORC_VAR_D1);
orc_program_append_2 (p, "addw", 0, ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_T3,
ORC_VAR_D1);
orc_program_append_2 (p, "addw", 0, ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_C3,
ORC_VAR_D1);
orc_program_append_2 (p, "shrsw", 0, ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_C4,
ORC_VAR_D1);
orc_program_append_2 (p, "convsuswb", 0, ORC_VAR_D1, ORC_VAR_T2,
ORC_VAR_D1, ORC_VAR_D1);
result = orc_program_compile (p);
}
@ -347,56 +379,56 @@ deinterlace_line_linear (guint8 * d1, const guint8 * s1, const guint8 * s2,
int n)
{
int i;
orc_int8 var0;
orc_int8 *ptr0;
orc_int8 var4;
const orc_int8 *ptr4;
orc_int8 var5;
const orc_int8 *ptr5;
orc_int8 *ORC_RESTRICT ptr0;
const orc_int8 *ORC_RESTRICT ptr4;
const orc_int8 *ORC_RESTRICT ptr5;
orc_int8 var32;
orc_int8 var33;
orc_int8 var34;
ptr0 = (orc_int8 *) d1;
ptr4 = (orc_int8 *) s1;
ptr5 = (orc_int8 *) s2;
for (i = 0; i < n; i++) {
var4 = *ptr4;
ptr4++;
var5 = *ptr5;
ptr5++;
/* 0: avgub */
var0 = ((orc_uint8) var4 + (orc_uint8) var5 + 1) >> 1;
*ptr0 = var0;
ptr0++;
/* 0: loadb */
var32 = ptr4[i];
/* 1: loadb */
var33 = ptr5[i];
/* 2: avgub */
var34 = ((orc_uint8) var32 + (orc_uint8) var33 + 1) >> 1;
/* 3: storeb */
ptr0[i] = var34;
}
}
#else
static void
_backup_deinterlace_line_linear (OrcExecutor * ex)
_backup_deinterlace_line_linear (OrcExecutor * ORC_RESTRICT ex)
{
int i;
int n = ex->n;
orc_int8 var0;
orc_int8 *ptr0;
orc_int8 var4;
const orc_int8 *ptr4;
orc_int8 var5;
const orc_int8 *ptr5;
orc_int8 *ORC_RESTRICT ptr0;
const orc_int8 *ORC_RESTRICT ptr4;
const orc_int8 *ORC_RESTRICT ptr5;
orc_int8 var32;
orc_int8 var33;
orc_int8 var34;
ptr0 = (orc_int8 *) ex->arrays[0];
ptr4 = (orc_int8 *) ex->arrays[4];
ptr5 = (orc_int8 *) ex->arrays[5];
for (i = 0; i < n; i++) {
var4 = *ptr4;
ptr4++;
var5 = *ptr5;
ptr5++;
/* 0: avgub */
var0 = ((orc_uint8) var4 + (orc_uint8) var5 + 1) >> 1;
*ptr0 = var0;
ptr0++;
/* 0: loadb */
var32 = ptr4[i];
/* 1: loadb */
var33 = ptr5[i];
/* 2: avgub */
var34 = ((orc_uint8) var32 + (orc_uint8) var33 + 1) >> 1;
/* 3: storeb */
ptr0[i] = var34;
}
}
@ -422,7 +454,8 @@ deinterlace_line_linear (guint8 * d1, const guint8 * s1, const guint8 * s2,
orc_program_add_source (p, 1, "s1");
orc_program_add_source (p, 1, "s2");
orc_program_append (p, "avgub", ORC_VAR_D1, ORC_VAR_S1, ORC_VAR_S2);
orc_program_append_2 (p, "avgub", 0, ORC_VAR_D1, ORC_VAR_S1, ORC_VAR_S2,
ORC_VAR_D1);
result = orc_program_compile (p);
}
@ -449,24 +482,23 @@ deinterlace_line_linear_blend (guint8 * d1, const guint8 * s1,
const guint8 * s2, const guint8 * s3, int n)
{
int i;
orc_int8 var0;
orc_int8 *ptr0;
orc_int8 var4;
const orc_int8 *ptr4;
orc_int8 var5;
const orc_int8 *ptr5;
orc_int8 var6;
const orc_int8 *ptr6;
const orc_int16 var16 = 2;
const orc_int16 var17 = 2;
orc_int16 var32;
orc_int16 var33;
orc_int16 var34;
orc_int16 var35;
orc_int16 var36;
orc_int16 var37;
orc_int16 var38;
orc_int16 var39;
orc_int8 *ORC_RESTRICT ptr0;
const orc_int8 *ORC_RESTRICT ptr4;
const orc_int8 *ORC_RESTRICT ptr5;
const orc_int8 *ORC_RESTRICT ptr6;
orc_int8 var35;
orc_int8 var36;
orc_int8 var37;
orc_union16 var38;
orc_int8 var39;
orc_union16 var40;
orc_union16 var41;
orc_union16 var42;
orc_union16 var43;
orc_union16 var44;
orc_union16 var45;
orc_union16 var46;
orc_union16 var47;
ptr0 = (orc_int8 *) d1;
ptr4 = (orc_int8 *) s1;
@ -474,60 +506,61 @@ deinterlace_line_linear_blend (guint8 * d1, const guint8 * s1,
ptr6 = (orc_int8 *) s3;
for (i = 0; i < n; i++) {
var4 = *ptr4;
ptr4++;
var5 = *ptr5;
ptr5++;
var6 = *ptr6;
ptr6++;
/* 0: convubw */
var32 = (orc_uint8) var4;
/* 0: loadb */
var35 = ptr4[i];
/* 1: convubw */
var33 = (orc_uint8) var5;
/* 2: convubw */
var34 = (orc_uint8) var6;
/* 3: addw */
var35 = var32 + var33;
/* 4: addw */
var36 = var34 + var34;
/* 5: addw */
var37 = var35 + var36;
var40.i = (orc_uint8) var35;
/* 2: loadb */
var36 = ptr5[i];
/* 3: convubw */
var41.i = (orc_uint8) var36;
/* 4: loadb */
var37 = ptr6[i];
/* 5: convubw */
var42.i = (orc_uint8) var37;
/* 6: addw */
var38 = var37 + var16;
/* 7: shrsw */
var39 = var38 >> var17;
/* 8: convsuswb */
var0 = ORC_CLAMP_UB (var39);
*ptr0 = var0;
ptr0++;
var43.i = var40.i + var41.i;
/* 7: addw */
var44.i = var42.i + var42.i;
/* 8: addw */
var45.i = var43.i + var44.i;
/* 9: loadpw */
var38.i = 2;
/* 10: addw */
var46.i = var45.i + var38.i;
/* 11: shrsw */
var47.i = var46.i >> 2;
/* 12: convsuswb */
var39 = ORC_CLAMP_UB (var47.i);
/* 13: storeb */
ptr0[i] = var39;
}
}
#else
static void
_backup_deinterlace_line_linear_blend (OrcExecutor * ex)
_backup_deinterlace_line_linear_blend (OrcExecutor * ORC_RESTRICT ex)
{
int i;
int n = ex->n;
orc_int8 var0;
orc_int8 *ptr0;
orc_int8 var4;
const orc_int8 *ptr4;
orc_int8 var5;
const orc_int8 *ptr5;
orc_int8 var6;
const orc_int8 *ptr6;
const orc_int16 var16 = 2;
const orc_int16 var17 = 2;
orc_int16 var32;
orc_int16 var33;
orc_int16 var34;
orc_int16 var35;
orc_int16 var36;
orc_int16 var37;
orc_int16 var38;
orc_int16 var39;
orc_int8 *ORC_RESTRICT ptr0;
const orc_int8 *ORC_RESTRICT ptr4;
const orc_int8 *ORC_RESTRICT ptr5;
const orc_int8 *ORC_RESTRICT ptr6;
orc_int8 var35;
orc_int8 var36;
orc_int8 var37;
orc_union16 var38;
orc_int8 var39;
orc_union16 var40;
orc_union16 var41;
orc_union16 var42;
orc_union16 var43;
orc_union16 var44;
orc_union16 var45;
orc_union16 var46;
orc_union16 var47;
ptr0 = (orc_int8 *) ex->arrays[0];
ptr4 = (orc_int8 *) ex->arrays[4];
@ -535,32 +568,34 @@ _backup_deinterlace_line_linear_blend (OrcExecutor * ex)
ptr6 = (orc_int8 *) ex->arrays[6];
for (i = 0; i < n; i++) {
var4 = *ptr4;
ptr4++;
var5 = *ptr5;
ptr5++;
var6 = *ptr6;
ptr6++;
/* 0: convubw */
var32 = (orc_uint8) var4;
/* 0: loadb */
var35 = ptr4[i];
/* 1: convubw */
var33 = (orc_uint8) var5;
/* 2: convubw */
var34 = (orc_uint8) var6;
/* 3: addw */
var35 = var32 + var33;
/* 4: addw */
var36 = var34 + var34;
/* 5: addw */
var37 = var35 + var36;
var40.i = (orc_uint8) var35;
/* 2: loadb */
var36 = ptr5[i];
/* 3: convubw */
var41.i = (orc_uint8) var36;
/* 4: loadb */
var37 = ptr6[i];
/* 5: convubw */
var42.i = (orc_uint8) var37;
/* 6: addw */
var38 = var37 + var16;
/* 7: shrsw */
var39 = var38 >> var17;
/* 8: convsuswb */
var0 = ORC_CLAMP_UB (var39);
*ptr0 = var0;
ptr0++;
var43.i = var40.i + var41.i;
/* 7: addw */
var44.i = var42.i + var42.i;
/* 8: addw */
var45.i = var43.i + var44.i;
/* 9: loadpw */
var38.i = 2;
/* 10: addw */
var46.i = var45.i + var38.i;
/* 11: shrsw */
var47.i = var46.i >> 2;
/* 12: convsuswb */
var39 = ORC_CLAMP_UB (var47.i);
/* 13: storeb */
ptr0[i] = var39;
}
}
@ -587,21 +622,30 @@ deinterlace_line_linear_blend (guint8 * d1, const guint8 * s1,
orc_program_add_source (p, 1, "s1");
orc_program_add_source (p, 1, "s2");
orc_program_add_source (p, 1, "s3");
orc_program_add_constant (p, 2, 2, "c1");
orc_program_add_constant (p, 2, 2, "c2");
orc_program_add_constant (p, 2, 0x00000002, "c1");
orc_program_add_constant (p, 2, 0x00000002, "c2");
orc_program_add_temporary (p, 2, "t1");
orc_program_add_temporary (p, 2, "t2");
orc_program_add_temporary (p, 2, "t3");
orc_program_append (p, "convubw", ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_D1);
orc_program_append (p, "convubw", ORC_VAR_T2, ORC_VAR_S2, ORC_VAR_D1);
orc_program_append (p, "convubw", ORC_VAR_T3, ORC_VAR_S3, ORC_VAR_D1);
orc_program_append (p, "addw", ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_T2);
orc_program_append (p, "addw", ORC_VAR_T3, ORC_VAR_T3, ORC_VAR_T3);
orc_program_append (p, "addw", ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_T3);
orc_program_append (p, "addw", ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_C1);
orc_program_append (p, "shrsw", ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_C2);
orc_program_append (p, "convsuswb", ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_D1);
orc_program_append_2 (p, "convubw", 0, ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_D1,
ORC_VAR_D1);
orc_program_append_2 (p, "convubw", 0, ORC_VAR_T2, ORC_VAR_S2, ORC_VAR_D1,
ORC_VAR_D1);
orc_program_append_2 (p, "convubw", 0, ORC_VAR_T3, ORC_VAR_S3, ORC_VAR_D1,
ORC_VAR_D1);
orc_program_append_2 (p, "addw", 0, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_T2,
ORC_VAR_D1);
orc_program_append_2 (p, "addw", 0, ORC_VAR_T3, ORC_VAR_T3, ORC_VAR_T3,
ORC_VAR_D1);
orc_program_append_2 (p, "addw", 0, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_T3,
ORC_VAR_D1);
orc_program_append_2 (p, "addw", 0, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_C1,
ORC_VAR_D1);
orc_program_append_2 (p, "shrsw", 0, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_C2,
ORC_VAR_D1);
orc_program_append_2 (p, "convsuswb", 0, ORC_VAR_D1, ORC_VAR_T1,
ORC_VAR_D1, ORC_VAR_D1);
result = orc_program_compile (p);
}

View file

@ -10,6 +10,8 @@
extern "C" {
#endif
#ifndef _ORC_INTEGER_TYPEDEFS_
#define _ORC_INTEGER_TYPEDEFS_
#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
@ -47,10 +49,10 @@ typedef long orc_int64;
typedef unsigned long orc_uint64;
#endif
#endif
typedef union { orc_int32 i; float f; } orc_union32;
typedef union { orc_int64 i; double f; } orc_union64;
typedef union { orc_int16 i; orc_int8 x2[2]; } orc_union16;
typedef union { orc_int32 i; float f; orc_int16 x2[2]; orc_int8 x4[4]; } orc_union32;
typedef union { orc_int64 i; double f; orc_int32 x2[2]; orc_int16 x4[4]; } orc_union64;
#endif
void deinterlace_line_vfir (guint8 * d1, const guint8 * s1, const guint8 * s2, const guint8 * s3, const guint8 * s4, const guint8 * s5, int n);
void deinterlace_line_linear (guint8 * d1, const guint8 * s1, const guint8 * s2, int n);
void deinterlace_line_linear_blend (guint8 * d1, const guint8 * s1, const guint8 * s2, const guint8 * s3, int n);

View file

@ -47,14 +47,23 @@ typedef unsigned long orc_uint64;
#endif
#endif
typedef union
{
orc_int16 i;
orc_int8 x2[2];
} orc_union16;
typedef union
{
orc_int32 i;
float f;
orc_int16 x2[2];
orc_int8 x4[4];
} orc_union32;
typedef union
{
orc_int64 i;
double f;
orc_int32 x2[2];
orc_int16 x4[4];
} orc_union64;
#endif
@ -87,6 +96,17 @@ void orc_splat_u32 (guint32 * d1, int p1, int n);
#define ORC_SWAP_W(x) ((((x)&0xff)<<8) | (((x)&0xff00)>>8))
#define ORC_SWAP_L(x) ((((x)&0xff)<<24) | (((x)&0xff00)<<8) | (((x)&0xff0000)>>8) | (((x)&0xff000000)>>24))
#define ORC_PTR_OFFSET(ptr,offset) ((void *)(((unsigned char *)(ptr)) + (offset)))
#define ORC_MIN_NORMAL (1.1754944909521339405e-38)
#define ORC_DENORMAL(x) (((x) > -ORC_MIN_NORMAL && (x) < ORC_MIN_NORMAL) ? ((x)<0 ? (-0.0f) : (0.0f)) : (x))
#define ORC_MINF(a,b) (isnan(a) ? a : isnan(b) ? b : ((a)<(b)) ? (a) : (b))
#define ORC_MAXF(a,b) (isnan(a) ? a : isnan(b) ? b : ((a)>(b)) ? (a) : (b))
#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
#define ORC_RESTRICT restrict
#elif defined(__GNUC__) && __GNUC__ >= 4
#define ORC_RESTRICT __restrict__
#else
#define ORC_RESTRICT
#endif
/* end Orc C target preamble */
@ -97,38 +117,42 @@ void
orc_splat_u32 (guint32 * d1, int p1, int n)
{
int i;
orc_union32 var0;
orc_union32 *ptr0;
const int var24 = p1;
orc_union32 *ORC_RESTRICT ptr0;
orc_union32 var32;
orc_union32 var33;
ptr0 = (orc_union32 *) d1;
for (i = 0; i < n; i++) {
/* 0: copyl */
var0.i = var24;
*ptr0 = var0;
ptr0++;
/* 0: loadpl */
var32.i = p1;
/* 1: copyl */
var33.i = var32.i;
/* 2: storel */
ptr0[i] = var33;
}
}
#else
static void
_backup_orc_splat_u32 (OrcExecutor * ex)
_backup_orc_splat_u32 (OrcExecutor * ORC_RESTRICT ex)
{
int i;
int n = ex->n;
orc_union32 var0;
orc_union32 *ptr0;
const int var24 = ex->params[24];
orc_union32 *ORC_RESTRICT ptr0;
orc_union32 var32;
orc_union32 var33;
ptr0 = (orc_union32 *) ex->arrays[0];
for (i = 0; i < n; i++) {
/* 0: copyl */
var0.i = var24;
*ptr0 = var0;
ptr0++;
/* 0: loadpl */
var32.i = ex->params[24];
/* 1: copyl */
var33.i = var32.i;
/* 2: storel */
ptr0[i] = var33;
}
}
@ -152,7 +176,8 @@ orc_splat_u32 (guint32 * d1, int p1, int n)
orc_program_add_destination (p, 4, "d1");
orc_program_add_parameter (p, 4, "p1");
orc_program_append (p, "copyl", ORC_VAR_D1, ORC_VAR_P1, ORC_VAR_D1);
orc_program_append_2 (p, "copyl", 0, ORC_VAR_D1, ORC_VAR_P1, ORC_VAR_D1,
ORC_VAR_D1);
result = orc_program_compile (p);
}

View file

@ -10,6 +10,8 @@
extern "C" {
#endif
#ifndef _ORC_INTEGER_TYPEDEFS_
#define _ORC_INTEGER_TYPEDEFS_
#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
@ -47,10 +49,10 @@ typedef long orc_int64;
typedef unsigned long orc_uint64;
#endif
#endif
typedef union { orc_int32 i; float f; } orc_union32;
typedef union { orc_int64 i; double f; } orc_union64;
typedef union { orc_int16 i; orc_int8 x2[2]; } orc_union16;
typedef union { orc_int32 i; float f; orc_int16 x2[2]; orc_int8 x4[4]; } orc_union32;
typedef union { orc_int64 i; double f; orc_int32 x2[2]; orc_int16 x4[4]; } orc_union64;
#endif
void orc_splat_u32 (guint32 * d1, int p1, int n);
#ifdef __cplusplus

View file

@ -47,14 +47,23 @@ typedef unsigned long orc_uint64;
#endif
#endif
typedef union
{
orc_int16 i;
orc_int8 x2[2];
} orc_union16;
typedef union
{
orc_int32 i;
float f;
orc_int16 x2[2];
orc_int8 x4[4];
} orc_union32;
typedef union
{
orc_int64 i;
double f;
orc_int32 x2[2];
orc_int16 x4[4];
} orc_union64;
#endif
@ -90,6 +99,17 @@ void orc_blend_u8 (guint8 * d1, int d1_stride, const guint8 * s1, int s1_stride,
#define ORC_SWAP_W(x) ((((x)&0xff)<<8) | (((x)&0xff00)>>8))
#define ORC_SWAP_L(x) ((((x)&0xff)<<24) | (((x)&0xff00)<<8) | (((x)&0xff0000)>>8) | (((x)&0xff000000)>>24))
#define ORC_PTR_OFFSET(ptr,offset) ((void *)(((unsigned char *)(ptr)) + (offset)))
#define ORC_MIN_NORMAL (1.1754944909521339405e-38)
#define ORC_DENORMAL(x) (((x) > -ORC_MIN_NORMAL && (x) < ORC_MIN_NORMAL) ? ((x)<0 ? (-0.0f) : (0.0f)) : (x))
#define ORC_MINF(a,b) (isnan(a) ? a : isnan(b) ? b : ((a)<(b)) ? (a) : (b))
#define ORC_MAXF(a,b) (isnan(a) ? a : isnan(b) ? b : ((a)>(b)) ? (a) : (b))
#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
#define ORC_RESTRICT restrict
#elif defined(__GNUC__) && __GNUC__ >= 4
#define ORC_RESTRICT __restrict__
#else
#define ORC_RESTRICT
#endif
/* end Orc C target preamble */
@ -100,38 +120,42 @@ void
orc_splat_u32 (guint32 * d1, int p1, int n)
{
int i;
orc_union32 var0;
orc_union32 *ptr0;
const int var24 = p1;
orc_union32 *ORC_RESTRICT ptr0;
orc_union32 var32;
orc_union32 var33;
ptr0 = (orc_union32 *) d1;
for (i = 0; i < n; i++) {
/* 0: copyl */
var0.i = var24;
*ptr0 = var0;
ptr0++;
/* 0: loadpl */
var32.i = p1;
/* 1: copyl */
var33.i = var32.i;
/* 2: storel */
ptr0[i] = var33;
}
}
#else
static void
_backup_orc_splat_u32 (OrcExecutor * ex)
_backup_orc_splat_u32 (OrcExecutor * ORC_RESTRICT ex)
{
int i;
int n = ex->n;
orc_union32 var0;
orc_union32 *ptr0;
const int var24 = ex->params[24];
orc_union32 *ORC_RESTRICT ptr0;
orc_union32 var32;
orc_union32 var33;
ptr0 = (orc_union32 *) ex->arrays[0];
for (i = 0; i < n; i++) {
/* 0: copyl */
var0.i = var24;
*ptr0 = var0;
ptr0++;
/* 0: loadpl */
var32.i = ex->params[24];
/* 1: copyl */
var33.i = var32.i;
/* 2: storel */
ptr0[i] = var33;
}
}
@ -155,7 +179,8 @@ orc_splat_u32 (guint32 * d1, int p1, int n)
orc_program_add_destination (p, 4, "d1");
orc_program_add_parameter (p, 4, "p1");
orc_program_append (p, "copyl", ORC_VAR_D1, ORC_VAR_P1, ORC_VAR_D1);
orc_program_append_2 (p, "copyl", 0, ORC_VAR_D1, ORC_VAR_P1, ORC_VAR_D1,
ORC_VAR_D1);
result = orc_program_compile (p);
}
@ -180,46 +205,46 @@ void
orc_memcpy_u32 (guint32 * d1, const guint32 * s1, int n)
{
int i;
orc_union32 var0;
orc_union32 *ptr0;
orc_union32 var4;
const orc_union32 *ptr4;
orc_union32 *ORC_RESTRICT ptr0;
const orc_union32 *ORC_RESTRICT ptr4;
orc_union32 var32;
orc_union32 var33;
ptr0 = (orc_union32 *) d1;
ptr4 = (orc_union32 *) s1;
for (i = 0; i < n; i++) {
var4 = *ptr4;
ptr4++;
/* 0: copyl */
var0.i = var4.i;
*ptr0 = var0;
ptr0++;
/* 0: loadl */
var32 = ptr4[i];
/* 1: copyl */
var33.i = var32.i;
/* 2: storel */
ptr0[i] = var33;
}
}
#else
static void
_backup_orc_memcpy_u32 (OrcExecutor * ex)
_backup_orc_memcpy_u32 (OrcExecutor * ORC_RESTRICT ex)
{
int i;
int n = ex->n;
orc_union32 var0;
orc_union32 *ptr0;
orc_union32 var4;
const orc_union32 *ptr4;
orc_union32 *ORC_RESTRICT ptr0;
const orc_union32 *ORC_RESTRICT ptr4;
orc_union32 var32;
orc_union32 var33;
ptr0 = (orc_union32 *) ex->arrays[0];
ptr4 = (orc_union32 *) ex->arrays[4];
for (i = 0; i < n; i++) {
var4 = *ptr4;
ptr4++;
/* 0: copyl */
var0.i = var4.i;
*ptr0 = var0;
ptr0++;
/* 0: loadl */
var32 = ptr4[i];
/* 1: copyl */
var33.i = var32.i;
/* 2: storel */
ptr0[i] = var33;
}
}
@ -243,7 +268,8 @@ orc_memcpy_u32 (guint32 * d1, const guint32 * s1, int n)
orc_program_add_destination (p, 4, "d1");
orc_program_add_source (p, 4, "s1");
orc_program_append (p, "copyl", ORC_VAR_D1, ORC_VAR_S1, ORC_VAR_D1);
orc_program_append_2 (p, "copyl", 0, ORC_VAR_D1, ORC_VAR_S1, ORC_VAR_D1,
ORC_VAR_D1);
result = orc_program_compile (p);
}
@ -270,46 +296,49 @@ orc_blend_u8 (guint8 * d1, int d1_stride, const guint8 * s1, int s1_stride,
{
int i;
int j;
orc_int8 var0;
orc_int8 *ptr0;
orc_int8 var4;
const orc_int8 *ptr4;
const orc_int8 var16 = 8;
const int var24 = p1;
orc_int16 var32;
orc_int16 var33;
orc_int16 var34;
orc_int16 var35;
orc_int16 var36;
orc_int16 var37;
orc_int16 var38;
orc_int8 *ORC_RESTRICT ptr0;
const orc_int8 *ORC_RESTRICT ptr4;
orc_int8 var34;
orc_int8 var35;
orc_union16 var36;
orc_int8 var37;
orc_union16 var38;
orc_union16 var39;
orc_union16 var40;
orc_union16 var41;
orc_union16 var42;
orc_union16 var43;
orc_union16 var44;
for (j = 0; j < m; j++) {
ptr0 = ORC_PTR_OFFSET (d1, d1_stride * j);
ptr4 = ORC_PTR_OFFSET (s1, s1_stride * j);
for (i = 0; i < n; i++) {
var0 = *ptr0;
var4 = *ptr4;
ptr4++;
/* 0: convubw */
var32 = (orc_uint8) var0;
/* 0: loadb */
var34 = ptr0[i];
/* 1: convubw */
var33 = (orc_uint8) var4;
/* 2: subw */
var34 = var33 - var32;
/* 3: mullw */
var35 = (var34 * var24) & 0xffff;
/* 4: shlw */
var36 = var32 << var16;
/* 5: addw */
var37 = var36 + var35;
/* 6: shruw */
var38 = ((orc_uint16) var37) >> var16;
/* 7: convsuswb */
var0 = ORC_CLAMP_UB (var38);
*ptr0 = var0;
ptr0++;
var38.i = (orc_uint8) var34;
/* 2: loadb */
var35 = ptr4[i];
/* 3: convubw */
var39.i = (orc_uint8) var35;
/* 4: subw */
var40.i = var39.i - var38.i;
/* 5: loadpw */
var36.i = p1;
/* 6: mullw */
var41.i = (var40.i * var36.i) & 0xffff;
/* 7: shlw */
var42.i = var38.i << 8;
/* 8: addw */
var43.i = var42.i + var41.i;
/* 9: shruw */
var44.i = ((orc_uint16) var43.i) >> 8;
/* 10: convsuswb */
var37 = ORC_CLAMP_UB (var44.i);
/* 11: storeb */
ptr0[i] = var37;
}
}
@ -317,52 +346,55 @@ orc_blend_u8 (guint8 * d1, int d1_stride, const guint8 * s1, int s1_stride,
#else
static void
_backup_orc_blend_u8 (OrcExecutor * ex)
_backup_orc_blend_u8 (OrcExecutor * ORC_RESTRICT ex)
{
int i;
int j;
int n = ex->n;
int m = ex->params[ORC_VAR_A1];
orc_int8 var0;
orc_int8 *ptr0;
orc_int8 var4;
const orc_int8 *ptr4;
const orc_int8 var16 = 8;
const int var24 = ex->params[24];
orc_int16 var32;
orc_int16 var33;
orc_int16 var34;
orc_int16 var35;
orc_int16 var36;
orc_int16 var37;
orc_int16 var38;
orc_int8 *ORC_RESTRICT ptr0;
const orc_int8 *ORC_RESTRICT ptr4;
orc_int8 var34;
orc_int8 var35;
orc_union16 var36;
orc_int8 var37;
orc_union16 var38;
orc_union16 var39;
orc_union16 var40;
orc_union16 var41;
orc_union16 var42;
orc_union16 var43;
orc_union16 var44;
for (j = 0; j < m; j++) {
ptr0 = ORC_PTR_OFFSET (ex->arrays[0], ex->params[0] * j);
ptr4 = ORC_PTR_OFFSET (ex->arrays[4], ex->params[4] * j);
for (i = 0; i < n; i++) {
var0 = *ptr0;
var4 = *ptr4;
ptr4++;
/* 0: convubw */
var32 = (orc_uint8) var0;
/* 0: loadb */
var34 = ptr0[i];
/* 1: convubw */
var33 = (orc_uint8) var4;
/* 2: subw */
var34 = var33 - var32;
/* 3: mullw */
var35 = (var34 * var24) & 0xffff;
/* 4: shlw */
var36 = var32 << var16;
/* 5: addw */
var37 = var36 + var35;
/* 6: shruw */
var38 = ((orc_uint16) var37) >> var16;
/* 7: convsuswb */
var0 = ORC_CLAMP_UB (var38);
*ptr0 = var0;
ptr0++;
var38.i = (orc_uint8) var34;
/* 2: loadb */
var35 = ptr4[i];
/* 3: convubw */
var39.i = (orc_uint8) var35;
/* 4: subw */
var40.i = var39.i - var38.i;
/* 5: loadpw */
var36.i = ex->params[24];
/* 6: mullw */
var41.i = (var40.i * var36.i) & 0xffff;
/* 7: shlw */
var42.i = var38.i << 8;
/* 8: addw */
var43.i = var42.i + var41.i;
/* 9: shruw */
var44.i = ((orc_uint16) var43.i) >> 8;
/* 10: convsuswb */
var37 = ORC_CLAMP_UB (var44.i);
/* 11: storeb */
ptr0[i] = var37;
}
}
@ -388,19 +420,27 @@ orc_blend_u8 (guint8 * d1, int d1_stride, const guint8 * s1, int s1_stride,
orc_program_set_backup_function (p, _backup_orc_blend_u8);
orc_program_add_destination (p, 1, "d1");
orc_program_add_source (p, 1, "s1");
orc_program_add_constant (p, 1, 8, "c1");
orc_program_add_constant (p, 1, 0x00000008, "c1");
orc_program_add_parameter (p, 2, "p1");
orc_program_add_temporary (p, 2, "t1");
orc_program_add_temporary (p, 2, "t2");
orc_program_append (p, "convubw", ORC_VAR_T1, ORC_VAR_D1, ORC_VAR_D1);
orc_program_append (p, "convubw", ORC_VAR_T2, ORC_VAR_S1, ORC_VAR_D1);
orc_program_append (p, "subw", ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_T1);
orc_program_append (p, "mullw", ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_P1);
orc_program_append (p, "shlw", ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_C1);
orc_program_append (p, "addw", ORC_VAR_T2, ORC_VAR_T1, ORC_VAR_T2);
orc_program_append (p, "shruw", ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_C1);
orc_program_append (p, "convsuswb", ORC_VAR_D1, ORC_VAR_T2, ORC_VAR_D1);
orc_program_append_2 (p, "convubw", 0, ORC_VAR_T1, ORC_VAR_D1, ORC_VAR_D1,
ORC_VAR_D1);
orc_program_append_2 (p, "convubw", 0, ORC_VAR_T2, ORC_VAR_S1, ORC_VAR_D1,
ORC_VAR_D1);
orc_program_append_2 (p, "subw", 0, ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_T1,
ORC_VAR_D1);
orc_program_append_2 (p, "mullw", 0, ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_P1,
ORC_VAR_D1);
orc_program_append_2 (p, "shlw", 0, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_C1,
ORC_VAR_D1);
orc_program_append_2 (p, "addw", 0, ORC_VAR_T2, ORC_VAR_T1, ORC_VAR_T2,
ORC_VAR_D1);
orc_program_append_2 (p, "shruw", 0, ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_C1,
ORC_VAR_D1);
orc_program_append_2 (p, "convsuswb", 0, ORC_VAR_D1, ORC_VAR_T2,
ORC_VAR_D1, ORC_VAR_D1);
result = orc_program_compile (p);
}

View file

@ -10,6 +10,8 @@
extern "C" {
#endif
#ifndef _ORC_INTEGER_TYPEDEFS_
#define _ORC_INTEGER_TYPEDEFS_
#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
@ -47,10 +49,10 @@ typedef long orc_int64;
typedef unsigned long orc_uint64;
#endif
#endif
typedef union { orc_int32 i; float f; } orc_union32;
typedef union { orc_int64 i; double f; } orc_union64;
typedef union { orc_int16 i; orc_int8 x2[2]; } orc_union16;
typedef union { orc_int32 i; float f; orc_int16 x2[2]; orc_int8 x4[4]; } orc_union32;
typedef union { orc_int64 i; double f; orc_int32 x2[2]; orc_int16 x4[4]; } orc_union64;
#endif
void orc_splat_u32 (guint32 * d1, int p1, int n);
void orc_memcpy_u32 (guint32 * d1, const guint32 * s1, int n);
void orc_blend_u8 (guint8 * d1, int d1_stride, const guint8 * s1, int s1_stride, int p1, int n, int m);

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins 0.7.6\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2004-03-18 14:16+0200\n"
"Last-Translator: Petri Jooste <rkwjpj@puk.ac.za>\n"
"Language-Team: Afrikaans <i18n@af.org.za>\n"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-0.8.0\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2004-03-19 18:29+0200\n"
"Last-Translator: Metin Amiroff <metin@karegen.com>\n"
"Language-Team: Azerbaijani <translation-team-az@lists.sourceforge.net>\n"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.17.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2010-01-29 14:49+0200\n"
"Last-Translator: Alexander Shopov <ash@kambanaria.org>\n"
"Language-Team: Bulgarian <dict@fsa-bg.org>\n"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.9.7\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2005-12-04 21:54+0100\n"
"Last-Translator: Jordi Mallach <jordi@sindominio.net>\n"
"Language-Team: Catalan <ca@dodds.net>\n"

View file

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good-0.10.23.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-07-15 01:34+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2010-07-11 20:26+0200\n"
"Last-Translator: Petr Kovar <pknbe@volny.cz>\n"
"Language-Team: Czech <translation-team-cs@lists.sourceforge.net>\n"

View file

@ -12,7 +12,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good-0.10.22.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-07-07 00:30+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2010-06-17 23:54+0200\n"
"Last-Translator: Joe Hansen <joedalton2@yahoo.dk>\n"
"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"

View file

@ -14,7 +14,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.22.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2010-05-23 23:02+0200\n"
"Last-Translator: Christian Kirbach <christian.kirbach@googlemail.com>\n"
"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"

View file

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.16.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-07-07 00:30+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2009-12-04 14:37+0200\n"
"Last-Translator: Simos Xenitellis <simos.lists@googlemail.com>\n"
"Language-Team: Greek <team@lists.gnome.gr>\n"

View file

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins 0.8.1\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2004-04-26 10:41-0400\n"
"Last-Translator: Gareth Owen <gowen72@yahoo.com>\n"
"Language-Team: English (British) <en_gb@li.org>\n"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.22.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-07-07 00:30+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2010-06-23 08:23+0200\n"
"Last-Translator: Jorge González González <aloriel@gmail.com>\n"
"Language-Team: Spanish <es@li.org>\n"

View file

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good-0.10.18.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2010-03-25 12:37+0100\n"
"Last-Translator: Mikel Olasagasti Uranga <hey_neken@mundurat.net>\n"
"Language-Team: Basque <translation-team-eu@lists.sourceforge.net>\n"

View file

@ -11,7 +11,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.22.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2010-05-23 21:23+0300\n"
"Last-Translator: Tommi Vainikainen <Tommi.Vainikainen@iki.fi>\n"
"Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"

View file

@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.22.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-07-07 00:30+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2010-06-05 21:09+0200\n"
"Last-Translator: Claude Paroz <claude@2xlibre.net>\n"
"Language-Team: French <traduc@traduc.org>\n"

View file

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.17.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2010-02-01 12:46+0100\n"
"Last-Translator: Gabor Kelemen <kelemeng@gnome.hu>\n"
"Language-Team: Hungarian <translation-team-hu@lists.sourceforge.net>\n"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.23.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-07-07 00:30+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2010-06-29 22:42+0700\n"
"Last-Translator: Andhika Padmawan <andhika.padmawan@gmail.com>\n"
"Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.22.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2010-05-21 09:52+0200\n"
"Last-Translator: Luca Ferretti <elle.uca@infinito.it>\n"
"Language-Team: Italian <tp@lists.linux.it>\n"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.14.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2009-06-01 19:29+0900\n"
"Last-Translator: Makoto Kato <makoto.kt@gmail.com>\n"
"Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n"

View file

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good-0.10.7.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2008-07-09 13:37+0300\n"
"Last-Translator: Gintautas Miliauskas <gintas@akl.lt>\n"
"Language-Team: Lithuanian <komp_lt@konferencijos.lt>\n"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.23.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-07-15 01:34+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2010-07-07 11:53+0100\n"
"Last-Translator: Rihards Priedītis <rprieditis@gmail.com>\n"
"Language-Team: Latvian <translation-team-lv@lists.sourceforge.net>\n"

View file

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good-0.10.10.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2008-10-26 19:09+0100\n"
"Last-Translator: Michel Bugeja <michelbugeja@rabatmalta.com>\n"
"Language-Team: Maltese <translation-team-mt@lists.sourceforge.net>\n"

View file

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.6\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2007-11-03 14:42+0100\n"
"Last-Translator: Kjartan Maraas <kmaraas@gnome.org>\n"
"Language-Team: Norwegian Bokmaal <i18n-nb@lister.ping.uio.no>\n"

View file

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.16.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2009-11-15 22:55+0100\n"
"Last-Translator: Freek de Kruijf <f.de.kruijf@hetnet.nl>\n"
"Language-Team: Dutch <vertaling@vrijschrift.org>\n"

View file

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-0.8.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2004-09-27 13:32+0530\n"
"Last-Translator: Gora Mohanty <gora_mohanty@yahoo.co.in>\n"
"Language-Team: Oriya <gora_mohanty@yahoo.co.in>\n"

View file

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.22.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2010-05-20 08:18+0200\n"
"Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n"
"Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"

View file

@ -11,7 +11,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.23.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-07-07 00:30+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2010-06-28 21:00-0300\n"
"Last-Translator: Fabrício Godoy <skarllot@gmail.com>\n"
"Language-Team: Brazilian Portuguese <ldp-br@bazar.conectiva.com.br>\n"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.13.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2009-02-12 14:35+0200\n"
"Last-Translator: Pavel Maryanov <acid_jack@ukr.net>\n"
"Language-Team: Russian <gnu@mx.ru>\n"

View file

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.16.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2009-11-13 10:28+0100\n"
"Last-Translator: Peter Tuhársky <tuharsky@misbb.sk>\n"
"Language-Team: Slovak <sk-i18n@lists.linux.sk>\n"

View file

@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.23.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-07-07 00:30+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2010-07-01 17:40+0100\n"
"Last-Translator: Matej Urbančič <matej.urban@gmail.com>\n"
"Language-Team: Slovenian <translation-team-sl@lists.sourceforge.net>\n"

View file

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins 0.8.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2004-08-07 20:29+0200\n"
"Last-Translator: Laurent Dhima <laurenti@alblinux.net>\n"
"Language-Team: Albanian <begraj@hotmail.com>\n"

View file

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins 0.7.6\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2004-03-13 00:18+0100\n"
"Last-Translator: Danilo Segan <dsegan@gmx.net>\n"
"Language-Team: Serbian <gnu@prevod.org>\n"

View file

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.22.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2010-05-25 09:09+0100\n"
"Last-Translator: Daniel Nylander <po@danielnylander.se>\n"
"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"

View file

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.23.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-07-07 00:30+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2010-07-03 16:51+0200\n"
"Last-Translator: Server Acim <serveracim@gmail.com>\n"
"Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.6\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2007-07-05 15:40+0200\n"
"Last-Translator: Maxim V. Dziumanenko <dziumanenko@gmail.com>\n"
"Language-Team: Ukrainian <translation-team-uk@lists.sourceforge.net>\n"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.21.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2010-04-27 22:48+0930\n"
"Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
"Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.16.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-07-07 00:30+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2009-11-13 22:20+0800\n"
"Last-Translator: Ji ZhengYu <zhengyuji@gmail.com>\n"
"Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"

View file

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good-0.10.2 0.10.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2006-08-29 01:08+0800\n"
"Last-Translator: Abel Cheung <abelcheung@gmail.com>\n"
"Language-Team: Chinese (Hong Kong) <community@linuxhall.org>\n"

View file

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good-0.10.2 0.10.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2010-06-26 18:27+0100\n"
"POT-Creation-Date: 2010-08-21 21:26+0200\n"
"PO-Revision-Date: 2006-08-29 01:08+0800\n"
"Last-Translator: Abel Cheung <abelcheung@gmail.com>\n"
"Language-Team: Chinese (traditional) <zh-l10n@linux.org.tw>\n"