OSDN Git Service

android-x86/hardware-intel-common-libva.git
6 years agodoc: use Doxyfile template
Víctor Manuel Jáquez Leal [Fri, 19 Jan 2018 18:12:29 +0000 (19:12 +0100)]
doc: use Doxyfile template

Instead of passing environment variables to the Doxygen process,
Doxyfile will be autogenerated from Doxyfile.in template.

6 years agomeson: Fix libtool version number
Xiang, Haihao [Wed, 31 Jan 2018 01:55:22 +0000 (09:55 +0800)]
meson: Fix libtool version number

libtool uses CURRENT:REVISION:AGE for library versions and the formula
for calculating the file numbers is (CURRENT-AGE).(AGE).(REVISION). To
keep compatibility with libtool, meson build should follow the same
formula

With this fix, we will avoid https://github.com/intel/libva/issues/181
when bumping a new version

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agoRevert "fei_hevc: Add control to use avc VME to do intra prediction for HEVC FEI"
Xiang, Haihao [Tue, 30 Jan 2018 01:34:13 +0000 (09:34 +0800)]
Revert "fei_hevc: Add control to use avc VME to do intra prediction for HEVC FEI"

This reverts commit 71fd9ec67bf26f82421546c82750c3cc08c9a6a8.

6 years agofei_hevc: Add control to use avc VME to do intra prediction for HEVC FEI
dlin2 [Mon, 22 Jan 2018 07:25:51 +0000 (15:25 +0800)]
fei_hevc: Add control to use avc VME to do intra prediction for HEVC FEI

Signed-off-by: dlin2 <decai.lin@intel.com>
6 years agoandroid: fix typo introduced by 4cc9a74b
Xu Guangxin [Thu, 25 Jan 2018 05:10:03 +0000 (00:10 -0500)]
android: fix typo introduced by 4cc9a74b

6 years agoUpdate some comments about VADRMPRIMESurfaceDescriptor
Xiang, Haihao [Mon, 22 Jan 2018 02:09:15 +0000 (10:09 +0800)]
Update some comments about VADRMPRIMESurfaceDescriptor

width/height in VADRMPRIMESurfaceDescriptor specifies the
surface width/height in pixels

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agova_trace: Remove unused variable
Victor Toso [Mon, 15 Jan 2018 15:07:02 +0000 (16:07 +0100)]
va_trace: Remove unused variable

Leftover from recent commit 35d7d312d45f9fd42dd

> va_trace.c:270:31: warning: unused variable 'pconfig_info'
>     struct trace_config_info *pconfig_info;
>                               ^

Signed-off-by: Victor Toso <victortoso@redhat.com>
6 years agoandroid: remove useless vaPutSurface
Xu Guangxin [Mon, 6 Nov 2017 02:44:34 +0000 (21:44 -0500)]
android: remove useless vaPutSurface

vaPutSurface only used in libva-utils. The actual application/omx
implementation never use it.
It will introduce many header files in android framework.Android change
rapidly, the directory or file name changed in versionto version. It's
hard to catch up and maintain support for many versionof android.

6 years agomeson: add va_fei_hevc.h
Víctor Manuel Jáquez Leal [Wed, 10 Jan 2018 17:13:17 +0000 (18:13 +0100)]
meson: add va_fei_hevc.h

Fixes: #168

6 years agoAdd documents for VP9/VP9/HEVC/JPEG/FEI
Pengfei Qu [Thu, 21 Dec 2017 08:08:08 +0000 (16:08 +0800)]
Add documents for VP9/VP9/HEVC/JPEG/FEI

Fixes#163

Signed-off-by: Pengfei Qu <Pengfei.Qu@intel.com>
6 years agoUpdate for the documents generation
Pengfei Qu [Thu, 21 Dec 2017 08:06:03 +0000 (16:06 +0800)]
Update for  the documents generation

Fixes#163

this  will update the documents.

Signed-off-by: Pengfei Qu <Pengfei.Qu@intel.com>
6 years agoFix tracing index allocation issue
peng.chen [Thu, 21 Dec 2017 06:23:14 +0000 (14:23 +0800)]
Fix tracing index allocation issue

Fixes #142

Signed-off-by: peng.chen <peng.c.chen@intel.com>
6 years agoadd comments for FEI
xinfengz [Fri, 8 Dec 2017 13:57:37 +0000 (21:57 +0800)]
add comments for FEI

add more detail comments for FEI interfaces

Signed-off-by: xinfengz <carl.zhang@intel.com>
6 years agova: add missing error status/error message map.
Jun Zhao [Thu, 7 Dec 2017 06:22:29 +0000 (14:22 +0800)]
va: add missing error status/error message map.

when add a new VAStatus type, need to update vaErrorStr.

Signed-off-by: Jun Zhao <jun.zhao@intel.com>
6 years agoExpose the encode passes interface.
Hongbo [Mon, 30 Oct 2017 14:31:24 +0000 (22:31 +0800)]
Expose the encode passes interface.

6 years agoAdd meson support
Víctor Manuel Jáquez Leal [Fri, 3 Nov 2017 08:02:25 +0000 (09:02 +0100)]
Add meson support

Fixes: #134

Signed-off-by: Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
6 years agoremove max_display_attributes value check.
XinfengZhang [Mon, 25 Dec 2017 13:44:39 +0000 (21:44 +0800)]
remove max_display_attributes value check.

max_display_attributes maybe is zero, because driver dont support display attribute

Signed-off-by: XinfengZhang <carl.zhang@intel.com>
6 years agodeprecated VAEncSliceParameterBuffer.
Jun Zhao [Wed, 22 Nov 2017 08:08:35 +0000 (16:08 +0800)]
deprecated VAEncSliceParameterBuffer.

VAEncSliceParamerterBuffer will be deprecated, All applications
can use VAEncSliceParameterBufferXXX (XXX = MPEG2, HEVC, H264,
JPEG).

Signed-off-by: Jun Zhao <jun.zhao@intel.com>
6 years agoUpdate some comment about FEI in VA-API.
Jun Zhao [Wed, 22 Nov 2017 07:39:53 +0000 (15:39 +0800)]
Update some comment about FEI in VA-API.

FEI have added in VA-API, update the comments.

Signed-off-by: Jun Zhao <jun.zhao@intel.com>
6 years agotrace: init mutex before attempting to lock it
U. Artie Eoff [Tue, 28 Nov 2017 22:01:40 +0000 (14:01 -0800)]
trace: init mutex before attempting to lock it

Call pthread_mutex_init before any calls to pthread_mutex_lock.

va_TraceInit(...) calls start_tracing2log_file(...) which
calls pthread_mutex_lock on the pva_trace->resource_mutex.
Thus, we need to ensure the mutex is initialized properly via
pthread_mutex_init before attempting to lock it.

Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
6 years agoRevert "configure: set strict default compiler flags"
U. Artie Eoff [Mon, 27 Nov 2017 17:47:02 +0000 (09:47 -0800)]
Revert "configure: set strict default compiler flags"

This reverts commit 6ca99be5042558035a78ffa87cfcd853611591cc.

Strict compilation flags are not consistent across different
versions of GCC and cause issues for users with older GCC
versions.

Since we have little control over which compiler version
is used by user, ensuring that strict compilation works properly
across all known used compilers would be a maintenance
headache.

Instead, don't enforce strict compilation and let users choose
when to enforce it via user-defined C/CXXFLAGS.

Fixes #152

Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
6 years agoAdd a new DRM PRIME memory type
Mark Thompson [Thu, 28 Sep 2017 19:24:23 +0000 (20:24 +0100)]
Add a new DRM PRIME memory type

This is more flexible than the existing DRM PRIME type, allowing multiple
objects and planes with different formats and modifiers.  It supports
export only via vaExportSurfaceHandle().

Fixes #10.

Signed-off-by: Mark Thompson <sw@jkqxz.net>
6 years agoAdd a new interface for exporting surfaces
Mark Thompson [Sun, 9 Jul 2017 21:28:53 +0000 (22:28 +0100)]
Add a new interface for exporting surfaces

Signed-off-by: Mark Thompson <sw@jkqxz.net>
6 years agoHEVC FEI support
Kelvin Hu [Fri, 4 Aug 2017 03:30:49 +0000 (11:30 +0800)]
HEVC FEI support

 HEVC FEI support, new HEVC FEI buffer in va.h and add va_fei_hevc.h

Signed-off-by: Kelvin Hu <kelvin.hu@intel.com>
6 years agoStatistics function for FEI and non-FEI
Kelvin Hu [Fri, 9 Jun 2017 02:49:40 +0000 (10:49 +0800)]
Statistics function for FEI and non-FEI

A pre-processing function for getting some statistics and motion vectors
is added, and some extra controls for Encode pipeline are provided. The
application can optionally call the statistics function to get motion
vectors and statistics like variances, distortions before calling Encode
function via this entry point.

Signed-off-by: Kelvin Hu <kelvin.hu@intel.com>
Signed-off-by: Jonathan Bian <jonathan.bian@intel.com>
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
Signed-off-by: Zhong Li <zhong.li@intel.com>
Signed-off-by: Daniel Charles <daniel.charles@intel.com>
6 years agoreport QP Block Size
xfengcarl [Wed, 25 Oct 2017 17:52:06 +0000 (01:52 +0800)]
report QP Block Size

Signed-off-by: Carl.Zhang<carl.zhang@intel.com>
6 years agoadd decode stream out buffer type
xfengcarl [Wed, 25 Oct 2017 13:18:37 +0000 (21:18 +0800)]
add decode stream out buffer type

stream out buffer include intermedia data of decoder

Signed-off-by: Carl.Zhang<carl.zhang@intel.com>
6 years agoadd common error for coded status of encode
xfengcarl [Tue, 24 Oct 2017 13:05:01 +0000 (21:05 +0800)]
add common error for coded status of encode

an  VA_CODED_BUF_STATUS_BAD_BITSTREAM is added for bad streams

Signed-off-by: xfengcarl <carl.zhang@intel.com>
6 years agoadd perMB skip disable control.
xfengcarl [Tue, 24 Oct 2017 12:49:43 +0000 (20:49 +0800)]
add perMB skip disable control.

per MB skip buffer can disable skip/direct for each MB
Signed-off-by: Carl.Zhang <carl.zhang@intel.com>
6 years agoadd sequence display extension support for MPEG2 encode
xfengcarl [Tue, 24 Oct 2017 12:01:08 +0000 (20:01 +0800)]
add sequence display extension support for MPEG2 encode

Signed-off-by: Carl.Zhang<carl.zhang@intel.com>
6 years agoadd controls for encode quality
xfengcarl [Thu, 7 Sep 2017 15:51:07 +0000 (23:51 +0800)]
add controls for encode quality

it include sub pel mode support, quality tuning, rounding inter...

Signed-off-by: Carl.Zhang<carl.zhang@intel.com>
6 years agoadd mb number in decode MB errors
xfengcarl [Thu, 7 Sep 2017 15:25:42 +0000 (23:25 +0800)]
add mb number in decode MB errors

Signed-off-by: xfengcarl <carl.zhang@intel.com>
6 years agoslide window support
xinfengz [Thu, 10 Aug 2017 15:50:20 +0000 (23:50 +0800)]
slide window support

slide window can reduce bit tolerance.
also include encode tile support attrib

Signed-off-by: Carl.Zhang <carl.zhang@intel.com>
6 years agoadd VAConfigAttribDecProcessing for decode post process
pylee [Thu, 6 Jul 2017 15:20:33 +0000 (23:20 +0800)]
add VAConfigAttribDecProcessing for decode post process

Decode post processing is same context with decode context
post processing is called by driver internally

Signed-off-by: Carl.Zhang <carl.zhang@intel.com>
6 years agoadd NV21 fourcc
xfengcarl [Thu, 15 Jun 2017 15:36:18 +0000 (23:36 +0800)]
add NV21 fourcc

add NV21 forcc pre-definition

Signed-off-by: Carl.Zhang <carl.zhang@intel.com>
6 years agoadd RGB 10-bit packed format
xfengcarl [Thu, 15 Jun 2017 15:33:45 +0000 (23:33 +0800)]
add RGB 10-bit packed format

RGB 10-bit packed format with upper 2 bits as alpha channel.
The existing pre-defined fourcc codes can be used to signal
the position of each component for this RT format.

Signed-off-by: Carl.Zhang <carl.zhang@intel.com>
6 years agoadd new BRC method
xfengcarl [Thu, 6 Jul 2017 00:07:41 +0000 (08:07 +0800)]
add new BRC method

VA_RC_ICQ: Intelligent Constant Quality. Provided an initial ICQ_quality_factor,
           adjusts QP at a frame and MB level based on motion to improve subjective quality.
VA_RC_CFS: Constant Frame Size.
VA_RC_PARALLEL: For hierachical B, B frames can be refered by other B frames.
Currently three layers of hierachy are defined:
B0 - regular B, no reference to other B frames.
B1 - reference to only I, P and regular B0 frames.
B2 - reference to any other frames, including B1.
In Hierachical B structure, B frames on the same layer can be processed
simultaneously. And BRC would adjust accordingly. This is so called
Parallel BRC.
Author: pylee <penne.y.lee@intel.com>
Author: Austin Yuan <shengquan.yuan@intel.com>
Author: Penne <penne.y.lee@intel.com>
Author:Wang, Ce <ce.wang@intel.com>

Signed-off-by: Carl.Zhang <carl.zhang@intel.com>
Conflicts:
va/va.h

6 years agoadd encoding dirty rectangle. Read-only.
pylee [Tue, 13 Jun 2017 15:45:40 +0000 (23:45 +0800)]
add encoding dirty rectangle. Read-only.

user provided rectangles which indicate the rectangular areas
where the content has changed as compared to the previous picture.  The regions of the
picture that are not covered by dirty rectangles are assumed to have not changed
compared to the previous picture.  The encoder may do some optimizations based on
this information.the ROI information is passed to the driver using VAEncMiscParameterTypeDirtyRect.

Signed-off-by: Carl.Zhang <carl.zhang@intel.com>
6 years agoadd support for processing rate
Ping Liu [Tue, 13 Jun 2017 14:49:00 +0000 (22:49 +0800)]
add support for processing rate

application can query/get attribute of processing rate by VAConfigAttribProcessingRate
and query the processing rate of driver by vaQueryProcessingRate

Signed-off-by: Carl.Zhang <carl.zhang@intel.com>
6 years agoAdd encoding intra refresh attribute
Jonathan Bian [Wed, 5 Jul 2017 15:19:33 +0000 (23:19 +0800)]
Add encoding intra refresh attribute

This attribute conveys whether the driver supports certain types of intra refresh methods
for encoding (e.g. adaptive intra refresh or rolling intra refresh).

Signed-off-by: Carl.Zhang <carl.zhang@intel.com>
6 years agoadd Encoding quantization
Jonathan Bian [Tue, 13 Jun 2017 14:30:12 +0000 (22:30 +0800)]
add Encoding quantization

quary or get whether the driver supports certain types of quantization methods
for encoding (e.g. trellis).then set quantization setting by VAEncMiscParameterQuantization

Signed-off-by: Carl.Zhang <carl.zhang@intel.com>
6 years agoexpose driver capibility of resolution
xfengcarl [Tue, 13 Jun 2017 14:22:00 +0000 (22:22 +0800)]
expose driver capibility of resolution

application can get the maxium resolution supported by driver
through these two attribute:VAConfigAttribMaxPictureWidth & VAConfigAttribMaxPictureHeight

Signed-off-by: Carl.Zhang <carl.zhang@intel.com>
6 years agoadd VAConfigAttribDecJPEG attributes
pylee [Tue, 13 Jun 2017 14:10:04 +0000 (22:10 +0800)]
add VAConfigAttribDecJPEG attributes

VAConfigAttribDecJPEG is for JPEG decode capabilities such as rotation

Signed-off-by: Carl.Zhang <carl.zhang@intel.com>
6 years agoadd 2D buffer support
Carl.Zhang [Mon, 17 Jul 2017 14:35:51 +0000 (22:35 +0800)]
add 2D buffer support

standard usage: permb  control buffer, it is always a 2D buffer related with MB Postion

Signed-off-by: Carl.Zhang <carl.zhang@intel.com>
6 years agoenhance h264 encode vui header setting
xfengcarl [Fri, 16 Jun 2017 11:09:44 +0000 (19:09 +0800)]
enhance h264 encode vui header setting

it's from h264 spec, add fix bit rate, low delay , mv over boundary flags

Signed-off-by: xfengcarl <carl.zhang@intel.com>
6 years agoenhence enc feature for vp8
xfengcarl [Wed, 7 Jun 2017 17:54:46 +0000 (01:54 +0800)]
enhence enc feature for vp8

add tempral_id for current frame

Signed-off-by: xfengcarl <carl.zhang@intel.com>
6 years agoAdd message callbacks for drivers to use
Mark Thompson [Mon, 2 Oct 2017 22:50:26 +0000 (23:50 +0100)]
Add message callbacks for drivers to use

This adds a mechanism for drivers to propagate arbitrary log messages
back to the API user.  It is intended to be used to replace all use of
logging to stdout/stderr in drivers.

Signed-off-by: Mark Thompson <sw@jkqxz.net>
6 years agoMove driver context allocation to common code
Mark Thompson [Mon, 2 Oct 2017 22:49:33 +0000 (23:49 +0100)]
Move driver context allocation to common code

This will be required to set common options on a newly-created driver
context.

Signed-off-by: Mark Thompson <sw@jkqxz.net>
6 years agonew VPP features
xfengcarl [Mon, 28 Aug 2017 15:40:31 +0000 (23:40 +0800)]
new VPP features

new features:Total Color Correction, Non-Linear Anamorphic Scaling.
new color standard: sRGB stRGB, xvYCC601, xvYCC709, BT.2020

Signed-off-by: xfengcarl <carl.zhang@intel.com>
6 years agoNew VAAPI definition for multi-frame processing applicable for Encode, FEI Encode...
Artem Shaporenko [Mon, 4 Sep 2017 12:16:24 +0000 (15:16 +0300)]
New VAAPI definition for multi-frame processing applicable for Encode, FEI Encode/ENC/Pre-ENC, and VPP in future.

Signed-off-by: Artem Shaporenko artem.shaporenko@intel.com
6 years agoconfigure: set strict default compiler flags
U. Artie Eoff [Tue, 21 Nov 2017 19:31:23 +0000 (11:31 -0800)]
configure: set strict default compiler flags

Use -Wall -Werror compiler flags for stricter compilation.

Fixes #146

Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
6 years agobuild: Remove unused macro
Víctor Manuel Jáquez Leal [Fri, 3 Nov 2017 13:34:03 +0000 (14:34 +0100)]
build: Remove unused macro

Remove -DLINUX macro definition as compiler parameters because it is
not used.

Fixes: #147

6 years agova: Add missing enums to string conversions
Víctor Manuel Jáquez Leal [Fri, 3 Nov 2017 08:39:29 +0000 (09:39 +0100)]
va: Add missing enums to string conversions

Those enum were recently added and their conversion to strings were
missing.

Fixes: #144

6 years agocoverity: fix check_after_deref
Victor Toso [Wed, 15 Nov 2017 13:39:15 +0000 (14:39 +0100)]
coverity: fix check_after_deref

- /va/x11/dri2_util.c:
> libva-1.8.3/va/x11/dri2_util.c:218: check_after_deref: Null-checking
> "device_name" suggests that it may be null, but it has already been
> dereferenced on all paths leading to the check.

Signed-off-by: Victor Toso <victortoso@redhat.com>
6 years agoAdd fields for intensity compensation in VC-1 interlaced decoding
carpalis [Thu, 16 Nov 2017 19:38:34 +0000 (20:38 +0100)]
Add fields for intensity compensation in VC-1 interlaced decoding

Intensity compensation in P interlaced field pictures needs more
elements from the VC-1 bitstream.

Signed-off-by: Jerome Borsboom <jerome.borsboom@carpalis.nl>
6 years agowayland: fix toctou violation when opening drm device
U. Artie Eoff [Tue, 14 Nov 2017 17:52:45 +0000 (09:52 -0800)]
wayland: fix toctou violation when opening drm device

A file's attributes could change between the stat() and the
open() operations.  Thus, check file attributes on the opened
file descriptor instead of the filename.

Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
6 years agova_fool: check fstat result
U. Artie Eoff [Tue, 14 Nov 2017 17:24:44 +0000 (09:24 -0800)]
va_fool: check fstat result

Check fstat return value for errors before attempting to use
the result.

Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
6 years agova_drm: dlopen correct version of libva-x11
Sebastian Ramacher [Sun, 12 Nov 2017 17:29:02 +0000 (18:29 +0100)]
va_drm: dlopen correct version of libva-x11

Determine the correct SONAME automatically.

Signed-off-by: Sebastian Ramacher <sramacher@debian.org>
6 years agoMerge branch 'v2.0-branch' into master
Xiang, Haihao [Tue, 24 Oct 2017 07:17:15 +0000 (15:17 +0800)]
Merge branch 'v2.0-branch' into master

Conflicts:
configure.ac

6 years agolibva 2.0.0
Xiang, Haihao [Sat, 21 Oct 2017 04:49:13 +0000 (12:49 +0800)]
libva 2.0.0

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agolibva 2.0.0.pre3
Xiang, Haihao [Fri, 13 Oct 2017 17:28:44 +0000 (01:28 +0800)]
libva 2.0.0.pre3

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agoFix returning of old info callback
Mark Thompson [Sun, 8 Oct 2017 16:32:18 +0000 (17:32 +0100)]
Fix returning of old info callback

Thanks to Sreerenj Balachandran <sreerenj.balachandran@intel.com> for
noticing this error.

Signed-off-by: Mark Thompson <sw@jkqxz.net>
(cherry picked from commit cb1f254ec65954ff7585f40df4b38337c462b14c)

6 years agoFix returning of old info callback
Mark Thompson [Sun, 8 Oct 2017 16:32:18 +0000 (17:32 +0100)]
Fix returning of old info callback

Thanks to Sreerenj Balachandran <sreerenj.balachandran@intel.com> for
noticing this error.

Signed-off-by: Mark Thompson <sw@jkqxz.net>
6 years agolibva 2.0.0.pre2
Xiang, Haihao [Fri, 29 Sep 2017 06:54:02 +0000 (14:54 +0800)]
libva 2.0.0.pre2

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agoFix build issue on Android
Xiang, Haihao [Fri, 29 Sep 2017 02:58:30 +0000 (10:58 +0800)]
Fix build issue on Android

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agoBump libva to 2.0.1.pre1 for development
Xiang, Haihao [Fri, 29 Sep 2017 05:42:39 +0000 (13:42 +0800)]
Bump libva to 2.0.1.pre1 for development

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agoUpdate NEWS
Xiang, Haihao [Thu, 28 Sep 2017 06:38:37 +0000 (14:38 +0800)]
Update NEWS

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agoFix segmentation fault in VA tracer
Xiang, Haihao [Thu, 28 Sep 2017 01:45:46 +0000 (09:45 +0800)]
Fix segmentation fault in VA tracer

The first parameter of va_{error,info}Message is VADisplay

This fixes https://github.com/01org/libva/issues/123

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agoAdd reserved bytes to most structures
Xiang, Haihao [Mon, 11 Sep 2017 08:46:10 +0000 (16:46 +0800)]
Add reserved bytes to most structures

The reserved bytest must be set to 0, then we can add new fields to those
structures in future without worrying about the API compatibility too
much.

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agoUpdate the comments of packed header
xfengcarl [Fri, 8 Sep 2017 11:51:17 +0000 (19:51 +0800)]
Update the comments of packed header

Driver requires packed header when the related VAConfigAttribEncPackedHeaders
is set.

Signed-off-by: Carl,Zhang <carl.zhang@intel.com>
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agoAdd or update the comment for num_ref_idx_{l0,l1}_default_active_minus1
Xiang, Haihao [Mon, 11 Sep 2017 05:37:57 +0000 (13:37 +0800)]
Add or update the comment for num_ref_idx_{l0,l1}_default_active_minus1

Both AVC and HEVC APIs requires application set the right
value for num_ref_idx_{l0,l1}_active_minus1 when
num_ref_idx_active_override_flag is 0.

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agoUpdate some comment about VA-API
Xiang, Haihao [Fri, 8 Sep 2017 03:04:38 +0000 (11:04 +0800)]
Update some comment about VA-API

VA-API is not only for decode but also for encode and video processing
by now.

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agoUpdate the comments for context and surface
Xiang, Haihao [Wed, 6 Sep 2017 06:08:26 +0000 (14:08 +0800)]
Update the comments for context and surface

Remove the limitation that a surface can't be shared between different
contexts at the same time.

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agova: Use new va*Str() functions
Kelly Ledford [Fri, 15 Sep 2017 21:35:56 +0000 (14:35 -0700)]
va: Use new va*Str() functions

Signed-off-by: Kelly Ledford <kelly.ledford@intel.com>
6 years agova: Add functions for converting common enums to strings
Kelly Ledford [Thu, 14 Sep 2017 00:34:11 +0000 (17:34 -0700)]
va: Add functions for converting common enums to strings

Signed-off-by: Kelly Ledford <kelly.ledford@intel.com>
6 years agova_internal: list va_internal on noinst_HEADERS
Daniel Charles [Tue, 19 Sep 2017 21:18:57 +0000 (14:18 -0700)]
va_internal:  list va_internal on noinst_HEADERS

va_internal.h is not to be installed

Signed-off-by: Daniel Charles <daniel.charles@intel.com>
6 years agooptimize values for VAConfigAttribEncSliceStructure
xfengcarl [Thu, 1 Jun 2017 14:04:03 +0000 (22:04 +0800)]
optimize values for VAConfigAttribEncSliceStructure

redefine VA_ENC_SLICE_STRUCTURE_ARBITRARY_ROW to non-zero value
all slice structure attributes value can OR'd together.

Signed-off-by: xfengcarl <carl.zhang@intel.com>
6 years agoFix deprecated warning
Xiang, Haihao [Thu, 24 Aug 2017 00:45:10 +0000 (08:45 +0800)]
Fix deprecated warning

enums marked as deprecated should not be used any more.

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agova: Add the fourcc of I420 format
Jun Zhao [Sun, 9 Jul 2017 02:48:36 +0000 (10:48 +0800)]
va: Add the fourcc of I420 format

i965 will return the I420 in vaQuerySurfaceAttributes, but va.h didn't
add the pre-define fourcc, and will deprecate IYUV because it same as
I420 but most user perfer I420.

Signed-off-by: Jun Zhao <jun.zhao@intel.com>
6 years agoRemove the comment about vaGetSurfaceAttributes()
Xiang, Haihao [Thu, 10 Aug 2017 16:38:26 +0000 (00:38 +0800)]
Remove the comment about vaGetSurfaceAttributes()

vaGetSurfaceAttributes() was removed years ago, so remove the
corresponding comments

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agoUse portable types for VA structures
Xiang, Haihao [Tue, 20 Jun 2017 04:15:17 +0000 (12:15 +0800)]
Use portable types for VA structures

We have already defined VA structures using portable types in some
header files. Use portable types in the remaining header files to
keep the style consistency,

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agoDeprecate packed misc packed header
Xiang, Haihao [Tue, 20 Jun 2017 02:47:00 +0000 (10:47 +0800)]
Deprecate packed misc packed header

All applications can use VAEncPackedHeaderRawData to insert a packed
header on demand

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agoDelete libva-tpi and libva-egl backends
Xiang, Haihao [Mon, 19 Jun 2017 08:25:39 +0000 (16:25 +0800)]
Delete libva-tpi and libva-egl backends

The APIs/data structures defined in va_tpi.h and va_egl.h are used
to implement buffer sharing between libva and the 3rd party libraries.
We have an official buffer sharing machnism in VA core, so libva-tpi and
libva-egl are unnecessary any more.

However va_egl.h or va_tpi.h is included uselessly in a few places,
e.g. https://github.com/01org/libyami/blob/apache/vaapi/vaapidisplay.h#L22
So va_egl.h and va_tpi.h are kept with a deprecation warning message.

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agodec/VC1: Update the comment for b_picture_fraction
Xiang, Haihao [Tue, 20 Jun 2017 06:02:56 +0000 (14:02 +0800)]
dec/VC1: Update the comment for b_picture_fraction

b_picture_fraction is used as an index in practice, so I updated the
comments to reduce the confusion to user

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agoUpdate the data structure for HEVC decoding
Xiang, Haihao [Thu, 1 Jun 2017 08:06:43 +0000 (16:06 +0800)]
Update the data structure for HEVC decoding

We have defined a codec-independent slice parameter buffer (VASliceParameterBufferBase)
for base mode slice decoding for all codecs, so VASliceParameterBufferBaseHEVC is
unnecessary. Fortunately VASliceParameterBufferBaseHEVC isn't used publicly, hence
we remove VASliceParameterBufferBaseHEVC from VA-API 1.0.0

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agoupdate VAEncMacroblockParameterBufferH264
Xiang, Haihao [Thu, 1 Jun 2017 07:49:46 +0000 (15:49 +0800)]
update VAEncMacroblockParameterBufferH264

The type of bits should be a struct type, otherwise the flags in bits
will be impacted each other.

In addtion this adds a reserved byte to bits struct in inter_fields,
this should fix https://github.com/01org/libva/issues/35

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agoFix a typo in VAConfigAttribValEncROI
Xiang, Haihao [Thu, 1 Jun 2017 07:34:41 +0000 (15:34 +0800)]
Fix a typo in VAConfigAttribValEncROI

The current delat is typo. This fix breaks API, fortunately
roi_rc_qp_delat_support isn't used widely

This fixes https://github.com/01org/libva/issues/32

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
6 years agova_egl.h: add license to file
Daniel Charles [Thu, 29 Jun 2017 20:40:09 +0000 (13:40 -0700)]
va_egl.h:  add license to file

license missing on header file.  Taken from c file

Signed-off-by: Daniel Charles <daniel.charles@intel.com>
6 years agoNote flags which have been renamed in the H.264 standard
Mark Thompson [Thu, 22 Jun 2017 22:20:34 +0000 (23:20 +0100)]
Note flags which have been renamed in the H.264 standard

residual_colour_transform_flag and pic_order_present_flag have
different names in newer versions of the H.264 standard, so add a
comment with the new name to reduce confusion.

Signed-off-by: Mark Thompson <sw@jkqxz.net>
6 years agoDetect short reads when filling fool buffers
Mark Thompson [Mon, 19 Jun 2017 18:09:34 +0000 (19:09 +0100)]
Detect short reads when filling fool buffers

Mainly to fix the warning (glibc marks read(2) with warn_unused_result).
The function continues anyway when this happens (matching current
behaviour when the file can't be opened at all).

Signed-off-by: Mark Thompson <sw@jkqxz.net>
6 years agoAdd namespace prefix to global DRI functions in libva-x11
Mark Thompson [Mon, 19 Jun 2017 18:09:30 +0000 (19:09 +0100)]
Add namespace prefix to global DRI functions in libva-x11

Signed-off-by: Mark Thompson <sw@jkqxz.net>
6 years agoAdd namespace prefix to globals
Mark Thompson [Mon, 19 Jun 2017 18:09:26 +0000 (19:09 +0100)]
Add namespace prefix to globals

Add "va_" prefix to trace_flag, fool_codec and fool_postp to avoid
polluting the global namespace.

Signed-off-by: Mark Thompson <sw@jkqxz.net>
6 years agoDeprecate H.264 baseline profile and FMO support
Mark Thompson [Mon, 19 Jun 2017 18:09:23 +0000 (19:09 +0100)]
Deprecate H.264 baseline profile and FMO support

This is not now and never will be supported by any hardware, nor is
it supported by any current software.

Signed-off-by: Mark Thompson <sw@jkqxz.net>
6 years agoAdd a macro to indicate deprecation
Mark Thompson [Thu, 22 Jun 2017 22:03:15 +0000 (23:03 +0100)]
Add a macro to indicate deprecation

This will generate a warning on gcc and compatible (clang, icc),
and do nothing with other compilers.  There is a separate macro
for enum variables, because gcc did not support deprecating them
until version 6.

Signed-off-by: Mark Thompson <sw@jkqxz.net>
6 years agoMake logging callbacks library-safe
Mark Thompson [Mon, 19 Jun 2017 18:09:20 +0000 (19:09 +0100)]
Make logging callbacks library-safe

Move the logging callbacks into the display context, rather than
having them as global state.  Add user-context parameter as well so
that users can distinguish between callbacks in different instances.

The default behaviour does not change, and LIBVA_MESSAGING_LEVEL
continues to be respected in that case.

Since we're breaking API here, also rename vaMessageCallback to
VAMessageCallback to be consistent with all other types.

Signed-off-by: Mark Thompson <sw@jkqxz.net>
6 years agoMove VADisplay allocation to common code
Mark Thompson [Mon, 19 Jun 2017 18:09:16 +0000 (19:09 +0100)]
Move VADisplay allocation to common code

This is slightly cleaner, and will be required to set common
options on a newly-created display.

Signed-off-by: Mark Thompson <sw@jkqxz.net>
6 years agoMove some common macro definitions to the new internal header
Mark Thompson [Mon, 19 Jun 2017 18:09:12 +0000 (19:09 +0100)]
Move some common macro definitions to the new internal header

Signed-off-by: Mark Thompson <sw@jkqxz.net>
6 years agoMove declarations for internal functions to new header
Mark Thompson [Mon, 19 Jun 2017 18:09:04 +0000 (19:09 +0100)]
Move declarations for internal functions to new header

The new header is internal-only and will not be installed.

Signed-off-by: Mark Thompson <sw@jkqxz.net>
6 years agoRefine the data type of slice_data_flag in VASliceParameterBufferHEVC to be consisten...
Zhao Yakui [Tue, 6 Jun 2017 00:26:20 +0000 (08:26 +0800)]
Refine the data type of slice_data_flag in VASliceParameterBufferHEVC to be consistent with other codecs

Currently the data type of slice_data_flag in VASliceParameterBufferHEVC is
uint16_t while it is uint32_t for other codecs. It is inconsistent.
As the memory is allocated as aligned, it still allocates four bytes for it.
So it will be better to use the consistent data type.

This fixes https://github.com/01org/libva/issues/58

Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
6 years agolibva 2.0.0.pre1 for development
Xiang, Haihao [Thu, 1 Jun 2017 07:26:46 +0000 (15:26 +0800)]
libva 2.0.0.pre1 for development

ABI was broken in the previous versions, so we will bump the VA API version
to 1.0.0 and library version to 2.0.0 for next release. Some data
structures will be changed or removed in the next commits

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>