1// Copyright 2014 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5//------------------------------------------------ 6// Functions from libva used in chromium code. 7//------------------------------------------------ 8VAStatus vaBeginPicture(VADisplay dpy, VAContextID context, VASurfaceID render_target); 9VAStatus vaCreateBuffer(VADisplay dpy, VAContextID context, VABufferType type, unsigned int size, unsigned int num_elements, void *data, VABufferID *buf_id); 10VAStatus vaCreateConfig(VADisplay dpy, VAProfile profile, VAEntrypoint entrypoint, VAConfigAttrib *attrib_list, int num_attribs, VAConfigID *config_id); 11VAStatus vaCreateContext(VADisplay dpy, VAConfigID config_id, int picture_width, int picture_height, int flag, VASurfaceID *render_targets, int num_render_targets, VAContextID *context); 12VAStatus vaCreateSurfaces(VADisplay dpy, unsigned int format, unsigned int width, unsigned int height, VASurfaceID *surfaces, unsigned int num_surfaces, VASurfaceAttrib *attrib_list, unsigned int num_attribs); 13VAStatus vaDeriveImage(VADisplay dpy, VASurfaceID surface, VAImage *image); 14VAStatus vaDestroyBuffer(VADisplay dpy, VABufferID buffer_id); 15VAStatus vaDestroyConfig(VADisplay dpy, VAConfigID config_id); 16VAStatus vaDestroyContext(VADisplay dpy, VAContextID context); 17VAStatus vaDestroyImage(VADisplay dpy, VAImageID image); 18VAStatus vaDestroySurfaces(VADisplay dpy, VASurfaceID *surfaces, int num_surfaces); 19int vaDisplayIsValid(VADisplay dpy); 20VAStatus vaEndPicture(VADisplay dpy, VAContextID context); 21const char *vaErrorStr(VAStatus error_status); 22VAStatus vaGetConfigAttributes(VADisplay dpy, VAProfile profile, VAEntrypoint entrypoint, VAConfigAttrib *attrib_list, int num_attribs); 23VAStatus vaInitialize(VADisplay dpy, int *major_version, int *minor_version); 24VAStatus vaMapBuffer(VADisplay dpy, VABufferID buf_id, void **pbuf); 25int vaMaxNumEntrypoints (VADisplay dpy); 26int vaMaxNumProfiles(VADisplay dpy); 27VAStatus vaQueryConfigEntrypoints (VADisplay dpy, VAProfile profile, VAEntrypoint *entrypoint_list, int *num_entrypoints); 28VAStatus vaQueryConfigProfiles(VADisplay dpy, VAProfile *profile_list, int *num_profiles); 29VAStatus vaRenderPicture(VADisplay dpy, VAContextID context, VABufferID *buffers, int num_buffers); 30VAStatus vaSetDisplayAttributes(VADisplay dpy, VADisplayAttribute *attr_list, int num_attributes); 31VAStatus vaSyncSurface(VADisplay dpy, VASurfaceID render_target); 32VAStatus vaTerminate(VADisplay dpy); 33VAStatus vaUnmapBuffer(VADisplay dpy, VABufferID buf_id); 34 35 36//------------------------------------------------ 37// Functions from libva-x11 used in chromium code. 38//------------------------------------------------ 39VADisplay vaGetDisplay(Display *dpy); 40VAStatus vaPutSurface(VADisplay dpy, VASurfaceID surface, Drawable draw, short srcx, short srcy, unsigned short srcw, unsigned short srch, short destx, short desty, unsigned short destw, unsigned short desth, VARectangle *cliprects, unsigned int number_cliprects, unsigned int flags); 41