Hello! Thanks! As I see, libva can use X11 or direct DRM, and it can`t use DRM when system has running X11. Am I right? I will have research (google) about relations between dri and drm.
27.03.2014, 20:01, "Matt Pekar" <[email protected]>: > I'm not sure of the exact relationship between dri and drm (maybe dri became > drm?), but you can use it/them to run libva without X. > > In our code, we first attempt to initialize libva with X11 (for desktop > development), then a secondary attempt is made to initialize through DRM > (which is how our program runs in production). > > The tricky part is that DRM requires some elevated permissions, and we made > some changes to the va_drm_auth.c file to accommodate that better for us. > > The code is something along these lines: > > VADisplay va_display; > > printf("attempting to connect through X"); > Display* x11_display = XOpenDisplay(":0.0"); > if(x11_display != NULL) > { > printf("connected through X"); > va_display = vaGetDisplay(x11_display); > return; > } > > printf("attempting to connect through drm"); > int drm_fd = open("/dev/dri/card0", O_RDWR); > if (element->drm_fd > 0) > { > printf("connected through drm on /dev/dri/card0"); > > va_display = vaGetDisplayDRM(element->drm_fd); > > return; > } > > //error > > On Thu, Mar 27, 2014 at 8:32 AM, Nik Orlov <[email protected]> wrote: >> Hello! >> >> As I have read here (http://www.freedesktop.org/wiki/Software/vaapi/) >> >> The current video decode/encode interface is window system independent, so >> that potentially it can be used with graphics sub-systems other than X. In a >> nutshell it is basically a scheme to pass various types of data buffers from >> the application to the GPU for decoding or encoding. Feedback on the API is >> greatly welcomed, as this is intended to be a community collaborative effort. >> >> So, there is some way to setup debian or ubuntu without Xorg to use libva. >> Maybe someone show me right way? At the moment I don`t know infrustructure >> of libva. >> >> There is schem from wiki >> (http://en.wikipedia.org/wiki/Video_Acceleration_API) >> http://en.wikipedia.org/wiki/File:Vaapi_illustration.svg >> I don`t understand VA Hardware Driver needs to use all DRILib, DRMLib and >> direct access to hardware OR it can use one of them? >> >> According to sources of h264encoding test from libva-1.1.1 it uses some >> functions with display >> >> va_dpy = va_open_display(); >> va_status = vaInitialize(va_dpy, &major_ver, &minor_ver); >> CHECK_VASTATUS(va_status, "vaInitialize"); >> >> It seems I still Xorg to use this features, or there is another way? >> >> -- >> Ник Орлов mailto:[email protected] >> _______________________________________________ >> Libva mailing list >> [email protected] >> http://lists.freedesktop.org/mailman/listinfo/libva -- Ник Орлов mailto:[email protected] _______________________________________________ Libva mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libva
