| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
|
|
|
|
| |
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
| |
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
|
|
|
|
| |
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
|
|
|
|
| |
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
| |
Signed-off-by: Kelly Ledford <kelly.ledford@intel.com>
|
|
|
|
| |
Signed-off-by: Kelly Ledford <kelly.ledford@intel.com>
|
|
|
|
|
|
| |
va_internal.h is not to be installed
Signed-off-by: Daniel Charles <daniel.charles@intel.com>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
enums marked as deprecated should not be used any more.
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
vaGetSurfaceAttributes() was removed years ago, so remove the
corresponding comments
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
All applications can use VAEncPackedHeaderRawData to insert a packed
header on demand
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
license missing on header file. Taken from c file
Signed-off-by: Daniel Charles <daniel.charles@intel.com>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
| |
Signed-off-by: Mark Thompson <sw@jkqxz.net>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
| |
Signed-off-by: Mark Thompson <sw@jkqxz.net>
|
|
|
|
|
|
| |
The new header is internal-only and will not be installed.
Signed-off-by: Mark Thompson <sw@jkqxz.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
| |
ISO C/C++ forbids zero-size array, but flexible array member is
supported since C99.
This fixes https://github.com/01org/libva/issues/76
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
|
|
|
|
|
|
| |
Some new definitions were added for FEI, so bump a new VA API version
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The purpose of FEI (Flexible Encoding Infrastructure) is to allow applications
to have more controls and trade off quality for speed with their own IPs. The
application can optionally provide input to ENC for extra encode control and
get the output from ENC. Application can chose to modify the ENC output/PAK
input during encoding, but the performance impact is significant.
FEI EntryPoint/BufferType/Attrib changes are in va.h, codec common
changes are in va_fei.h, va_fei_h264.h is for H264 special changes
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>
|
|
|
|
|
|
|
|
|
|
|
| |
VAEncQPBufferH264 structure is defined to hold QP per 16x16 macroblock
for H.264 encoding, we can add similar structures for other codecs in
the future. VAEncQPBufferType is added to pass the corresponding
QP buffer to the driver for each codec.
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Signed-off-by: Jonathan Bian <jonathan.bian@intel.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Events on wl_drm could get lost if the listener is bound only after
the roundtrip is complete. While it is correct that to get all wl_drm
events at most two roundtrips are required, in fact one roundtrip may
be enough if another thread flushes and reads from the connection
in parallel to the initial libva wl_registry roundtrip. It is thus too
late to call wl_drm_add_listener after the roundtrip.
Fixes: #101
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Wayland event handlers are never optional. libwayland-client will abort
the program if events for unbound handlers are to be dispatched.
Although the event queue is only dispatched a few times during
initialization for getting the wl_drm global and authenticating the DRM
device, in rare circumstances it can happen that another global such as
a wl_output - or even wl_drm itself - is removed during that time, which
would crash the program. Implement the handler to fix this.
Fixes: #99
Signed-off-by: Philipp Kerling <pkerling@casix.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The Wayland protocol is only used to determine which device driver to
load and initialize the DRM state. After the initial roundtrips that
open and authenticate the DRM device, the Wayland protocol objects
are not used anymore and will only take up memory and possibly have
events queued that never get handled.
As fix, destroy them immediately after DRM auth is through. This commit
also adds more error checking to the initialization function.
Fixes: #100
Signed-off-by: Philipp Kerling <pkerling@casix.org>
|
|\ |
|
| |
| |
| |
| | |
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
|
| |
| |
| |
| | |
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previous to this commit, changing verbosity level
was only possible at build time via the definition
of ENABLE_VA_MESSAGING.
Now it's possible to choose a verbosity level between
{0, 1, 2} by modifying /etc/libva.conf or by setting
the corresponding environment variable LIBVA_MESSAGING_LEVEL.
Signed-off-by: Giuseppe <giuscri@gmail.com>
(cherry picked from commit b4d0874dcbe99d1f47bd39d0c156ea89ecd0ebcc)
|