video-format: fix NV24 pack/unpack function

We can't reuse the NV12 functions, we need to make new ones.
This commit is contained in:
Wim Taymans 2013-09-06 12:43:27 +02:00
parent 26d04c7582
commit fae9d82515
2 changed files with 21 additions and 2 deletions

View file

@ -1179,7 +1179,7 @@ unpack_NV24 (const GstVideoFormatInfo * info, GstVideoPackFlags flags,
gpointer dest, const gpointer data[GST_VIDEO_MAX_PLANES],
const gint stride[GST_VIDEO_MAX_PLANES], gint x, gint y, gint width)
{
video_orc_unpack_NV12 (dest,
video_orc_unpack_NV24 (dest,
GET_PLANE_LINE (0, y), GET_PLANE_LINE (1, y), width);
}
@ -1189,7 +1189,7 @@ pack_NV24 (const GstVideoFormatInfo * info, GstVideoPackFlags flags,
const gint stride[GST_VIDEO_MAX_PLANES], GstVideoChromaSite chroma_site,
gint y, gint width)
{
video_orc_pack_NV12 (GET_PLANE_LINE (0, y),
video_orc_pack_NV24 (GET_PLANE_LINE (0, y),
GET_PLANE_LINE (1, y), src, width);
}

View file

@ -423,6 +423,25 @@ x2 select1wb y, ay
select0lw uv, uvuv
swapw vu, uv
.function video_orc_unpack_NV24
.dest 4 d guint8
.source 1 y guint8
.source 2 uv guint8
.const 1 c255 255
.temp 2 ay
mergebw ay, c255, y
mergewl d, ay, uv
.function video_orc_pack_NV24
.dest 1 y guint8
.dest 2 uv guint8
.source 4 ayuv guint8
.temp 2 ay
splitlw uv, ay, ayuv
select1wb y, ay
.function video_orc_unpack_A420
.dest 4 d guint8
.source 1 y guint8