mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 12:11:13 +00:00
video-chroma: add ORC version of UP_H2_CS
It is however slower than the C version and thus disabled.
This commit is contained in:
parent
f73dee34e7
commit
dcd02cd323
2 changed files with 30 additions and 1 deletions
|
@ -526,6 +526,16 @@ MAKE_DOWNSAMPLE_VI4 (u8, guint8);
|
||||||
* x x
|
* x x
|
||||||
* a b
|
* a b
|
||||||
*/
|
*/
|
||||||
|
#define MAKE_UPSAMPLE_H2_CS_ORC(name,type) \
|
||||||
|
static void \
|
||||||
|
video_chroma_up_h2_cs_##name (GstVideoChromaResample *resample, \
|
||||||
|
gpointer pixels, gint width) \
|
||||||
|
{ \
|
||||||
|
type *p = pixels; \
|
||||||
|
/* ORC version is slower */ \
|
||||||
|
video_orc_chroma_up_h2_cs_##name (p, p, p, width-1); \
|
||||||
|
}
|
||||||
|
|
||||||
#define MAKE_UPSAMPLE_H2_CS(name,type) \
|
#define MAKE_UPSAMPLE_H2_CS(name,type) \
|
||||||
static void \
|
static void \
|
||||||
video_chroma_up_h2_cs_##name (GstVideoChromaResample *resample, \
|
video_chroma_up_h2_cs_##name (GstVideoChromaResample *resample, \
|
||||||
|
|
|
@ -1659,6 +1659,25 @@ x2 avgub uv1, uv1, uv2
|
||||||
mergewl ayuv1, ay1, uv1
|
mergewl ayuv1, ay1, uv1
|
||||||
mergelq d, ayuv1, ayuv2
|
mergelq d, ayuv1, ayuv2
|
||||||
|
|
||||||
|
.function video_orc_chroma_up_h2_cs_u8
|
||||||
|
.source 8 s guint8
|
||||||
|
.source 4 s1 guint8
|
||||||
|
.dest 8 d guint8
|
||||||
|
.temp 4 ayuv1
|
||||||
|
.temp 4 ayuv2
|
||||||
|
.temp 4 ayuv3
|
||||||
|
.temp 2 ay2
|
||||||
|
.temp 2 uv2
|
||||||
|
.temp 2 uv3
|
||||||
|
|
||||||
|
splitql ayuv2, ayuv1, s
|
||||||
|
ldresnearl ayuv3, s1, 0x20000, 0x20000
|
||||||
|
splitlw uv2, ay2, ayuv2
|
||||||
|
select1lw uv3, ayuv3
|
||||||
|
x2 avgub uv2, uv2, uv3
|
||||||
|
mergewl ayuv2, ay2, uv2
|
||||||
|
mergelq d, ayuv1, ayuv2
|
||||||
|
|
||||||
.function video_orc_chroma_down_v2_u8
|
.function video_orc_chroma_down_v2_u8
|
||||||
.source 4 s1 guint8
|
.source 4 s1 guint8
|
||||||
.source 4 s2 guint8
|
.source 4 s2 guint8
|
||||||
|
|
Loading…
Reference in a new issue