[Libva] vaCreateSurface fails
Xiang, Haihao
haihao.xiang at intel.com
Mon Mar 31 00:17:50 PDT 2014
> Hello!
>
> I`m trying to code h.264 encoding via libva (intel). As tutorial I`m using h264encoder test from libva.
> I have just copy project to NetBeans IDE (7.4 version). Not as C project, but as C++.
> Everything builds good, but at runtime program fails as VaCreateSurface (function setup_encode)
>
> ...
> /* create source surfaces */
> va_status = vaCreateSurfaces(va_dpy,
> VA_RT_FORMAT_YUV420, frame_width_mbaligned, frame_height_mbaligned,
> &src_surface[0], SURFACE_NUM,
> NULL, 0);
>
> CHECK_VASTATUS(va_status, "vaCreateSurfaces");
> ...
>
> NetBeans project and call stack:
>
> vaCreateSurfaces (dpy=0x68c540, format=480, width=1, height=640, surfaces=0x10, num_surfaces=6810816, attrib_list=0x0, attrib_list at entry=0x0, num_attribs=0, num_attribs at entry=0)
> vaCreateSurfaces_0_32_0 (dpy=<optimized out>, width=<optimized out>, height=<optimized out>, format=<optimized out>, num_surfaces=<optimized out>, surfaces=<optimized out>)
> setup_encode ()
> main (argc=1, argv=0x7fffffffe238)
>
> As I understand vaCreateSurface calls vaCreateSurfaces_0_32_0
vaCreateSurfaces_0_32_0() calls vaCreateSurface() instead. Seems your
app was linked against an older version of vaCreateSurfaces() when
running. What is the command line to build your project ?
> BUT vaCreateSurfaces_0_32_0 has another arguments order
> vaCreateSurface ... format, width, height, ...
> vaCreateSurfaces_0_32_0 ... width, height, format, ...
>
> Maybe error is here? I just haven`t any ideas
>
> P.S. libva-1.3.0, intel driver (1.3.0), Haswell core i7 4770
>
More information about the Libva
mailing list