[Libva] vaCreateSurface fails

Nik Orlov nikitos1550 at yandex.ru
Sat Mar 29 09:59:33 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
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

-- 
Ник Орлов mailto:nikitos1550 at yandex.ru


More information about the Libva mailing list