summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.ac2
-rw-r--r--gst/deinterlace/tvtime-dist.c602
-rw-r--r--gst/deinterlace/tvtime-dist.h8
-rw-r--r--gst/videobox/gstvideoboxorc-dist.c57
-rw-r--r--gst/videobox/gstvideoboxorc-dist.h8
-rw-r--r--gst/videomixer/blendorc-dist.c268
-rw-r--r--gst/videomixer/blendorc-dist.h8
-rw-r--r--po/af.po2
-rw-r--r--po/az.po2
-rw-r--r--po/bg.po2
-rw-r--r--po/ca.po2
-rw-r--r--po/cs.po2
-rw-r--r--po/da.po2
-rw-r--r--po/de.po2
-rw-r--r--po/el.po2
-rw-r--r--po/en_GB.po2
-rw-r--r--po/es.po2
-rw-r--r--po/eu.po2
-rw-r--r--po/fi.po2
-rw-r--r--po/fr.po2
-rw-r--r--po/hu.po2
-rw-r--r--po/id.po2
-rw-r--r--po/it.po2
-rw-r--r--po/ja.po2
-rw-r--r--po/lt.po2
-rw-r--r--po/lv.po2
-rw-r--r--po/mt.po2
-rw-r--r--po/nb.po2
-rw-r--r--po/nl.po2
-rw-r--r--po/or.po2
-rw-r--r--po/pl.po2
-rw-r--r--po/pt_BR.po2
-rw-r--r--po/ru.po2
-rw-r--r--po/sk.po2
-rw-r--r--po/sl.po2
-rw-r--r--po/sq.po2
-rw-r--r--po/sr.po2
-rw-r--r--po/sv.po2
-rw-r--r--po/tr.po2
-rw-r--r--po/uk.po2
-rw-r--r--po/vi.po2
-rw-r--r--po/zh_CN.po2
-rw-r--r--po/zh_HK.po2
-rw-r--r--po/zh_TW.po2
44 files changed, 571 insertions, 456 deletions
diff --git a/configure.ac b/configure.ac
index b277f6675..a474865c3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -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)
diff --git a/gst/deinterlace/tvtime-dist.c b/gst/deinterlace/tvtime-dist.c
index ca871f9c2..48954c1b2 100644
--- a/gst/deinterlace/tvtime-dist.c
+++ b/gst/deinterlace/tvtime-dist.c
@@ -48,13 +48,22 @@ typedef unsigned long orc_uint64;
#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);
}
diff --git a/gst/deinterlace/tvtime-dist.h b/gst/deinterlace/tvtime-dist.h
index 27be60be1..268188d24 100644
--- a/gst/deinterlace/tvtime-dist.h
+++ b/gst/deinterlace/tvtime-dist.h
@@ -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);
diff --git a/gst/videobox/gstvideoboxorc-dist.c b/gst/videobox/gstvideoboxorc-dist.c
index 49259b005..d50e1bcbd 100644
--- a/gst/videobox/gstvideoboxorc-dist.c
+++ b/gst/videobox/gstvideoboxorc-dist.c
@@ -48,13 +48,22 @@ typedef unsigned long orc_uint64;
#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);
}
diff --git a/gst/videobox/gstvideoboxorc-dist.h b/gst/videobox/gstvideoboxorc-dist.h
index ab1fefd2f..596914c1b 100644
--- a/gst/videobox/gstvideoboxorc-dist.h
+++ b/gst/videobox/gstvideoboxorc-dist.h
@@ -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
diff --git a/gst/videomixer/blendorc-dist.c b/gst/videomixer/blendorc-dist.c
index a22464e57..1a244a66e 100644
--- a/gst/videomixer/blendorc-dist.c
+++ b/gst/videomixer/blendorc-dist.c
@@ -48,13 +48,22 @@ typedef unsigned long orc_uint64;
#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);
}
diff --git a/gst/videomixer/blendorc-dist.h b/gst/videomixer/blendorc-dist.h
index 4ddb04c7d..bb87cdb2f 100644
--- a/gst/videomixer/blendorc-dist.h
+++ b/gst/videomixer/blendorc-dist.h
@@ -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);
diff --git a/po/af.po b/po/af.po
index 36bebb93a..d0ecf6395 100644
--- a/po/af.po
+++ b/po/af.po
@@ -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"
diff --git a/po/az.po b/po/az.po
index 24430cc12..ec385b25d 100644
--- a/po/az.po
+++ b/po/az.po
@@ -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"
diff --git a/po/bg.po b/po/bg.po
index e6e54ef5c..a92ce301e 100644
--- a/po/bg.po
+++ b/po/bg.po
@@ -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"
diff --git a/po/ca.po b/po/ca.po
index 81398419b..0db05ed55 100644
--- a/po/ca.po
+++ b/po/ca.po
@@ -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"
diff --git a/po/cs.po b/po/cs.po
index 73acf6f75..18680e81c 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -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"
diff --git a/po/da.po b/po/da.po
index cb6c5abe4..7c464f455 100644
--- a/po/da.po
+++ b/po/da.po
@@ -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"
diff --git a/po/de.po b/po/de.po
index bf224ef0c..d18b8aa57 100644
--- a/po/de.po
+++ b/po/de.po
@@ -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"
diff --git a/po/el.po b/po/el.po
index f31987cd8..dd05a6157 100644
--- a/po/el.po
+++ b/po/el.po
@@ -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"
diff --git a/po/en_GB.po b/po/en_GB.po
index 17a3aeb32..9dc508405 100644
--- a/po/en_GB.po
+++ b/po/en_GB.po
@@ -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"
diff --git a/po/es.po b/po/es.po
index ef83acdb7..12a77bffc 100644
--- a/po/es.po
+++ b/po/es.po
@@ -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"
diff --git a/po/eu.po b/po/eu.po
index a18b8f27b..6bf1a0622 100644
--- a/po/eu.po
+++ b/po/eu.po
@@ -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"
diff --git a/po/fi.po b/po/fi.po
index 025dcd4fd..4fc555bea 100644
--- a/po/fi.po
+++ b/po/fi.po
@@ -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"
diff --git a/po/fr.po b/po/fr.po
index 73b1a7099..549cfaff3 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -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"
diff --git a/po/hu.po b/po/hu.po
index 8651c6fbe..236923e5a 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -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"
diff --git a/po/id.po b/po/id.po
index 74e6a3032..bca143dda 100644
--- a/po/id.po
+++ b/po/id.po
@@ -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"
diff --git a/po/it.po b/po/it.po
index 8ec42104a..0b21b289d 100644
--- a/po/it.po
+++ b/po/it.po
@@ -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"
diff --git a/po/ja.po b/po/ja.po
index 75674903e..ed516e17d 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -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"
diff --git a/po/lt.po b/po/lt.po
index ecd4e0880..1ae388ed8 100644
--- a/po/lt.po
+++ b/po/lt.po
@@ -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"
diff --git a/po/lv.po b/po/lv.po
index ca6814b6d..df4b86da8 100644
--- a/po/lv.po
+++ b/po/lv.po
@@ -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"
diff --git a/po/mt.po b/po/mt.po
index b109b5096..a1d1db306 100644
--- a/po/mt.po
+++ b/po/mt.po
@@ -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"
diff --git a/po/nb.po b/po/nb.po
index 74e18cecc..28b2d12c9 100644
--- a/po/nb.po
+++ b/po/nb.po
@@ -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"
diff --git a/po/nl.po b/po/nl.po
index 5d578a9f1..53fefa935 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -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"
diff --git a/po/or.po b/po/or.po
index a40b93c53..6c670f9b0 100644
--- a/po/or.po
+++ b/po/or.po
@@ -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"
diff --git a/po/pl.po b/po/pl.po
index 1699bd972..c2a43e948 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -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"
diff --git a/po/pt_BR.po b/po/pt_BR.po
index 0303395c8..46aac09fd 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -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"
diff --git a/po/ru.po b/po/ru.po
index 22e9e2498..4e982a136 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -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"
diff --git a/po/sk.po b/po/sk.po
index a5cc439ca..31b76bd80 100644
--- a/po/sk.po
+++ b/po/sk.po
@@ -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"
diff --git a/po/sl.po b/po/sl.po
index 921bd8adf..83c751bee 100644
--- a/po/sl.po
+++ b/po/sl.po
@@ -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"
diff --git a/po/sq.po b/po/sq.po
index 273846f1d..ed65ae6d6 100644
--- a/po/sq.po
+++ b/po/sq.po
@@ -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"
diff --git a/po/sr.po b/po/sr.po
index bae2e55c5..5a7d9a19c 100644
--- a/po/sr.po
+++ b/po/sr.po
@@ -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"
diff --git a/po/sv.po b/po/sv.po
index 37e8c85c6..90c25b0af 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -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"
diff --git a/po/tr.po b/po/tr.po
index 28176ea3e..c4f427e25 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -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"
diff --git a/po/uk.po b/po/uk.po
index 444b33be9..b53d139ae 100644
--- a/po/uk.po
+++ b/po/uk.po
@@ -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"
diff --git a/po/vi.po b/po/vi.po
index 7b13b24ef..2d5e0a0de 100644
--- a/po/vi.po
+++ b/po/vi.po
@@ -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"
diff --git a/po/zh_CN.po b/po/zh_CN.po
index 7e84f8c97..2c6aa000f 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -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"
diff --git a/po/zh_HK.po b/po/zh_HK.po
index 15120ab3b..5593f7cd4 100644
--- a/po/zh_HK.po
+++ b/po/zh_HK.po
@@ -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"
diff --git a/po/zh_TW.po b/po/zh_TW.po
index ca51e2d23..be215c7fa 100644
--- a/po/zh_TW.po
+++ b/po/zh_TW.po
@@ -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"