The advantage of binding between Surface and Context.
by Hirokazu Honda
Hi,
According to libva document
(http://01org.github.io/libva_staging_doxygen/group__api__core.html#ga4af3...),
Surfaces are bound to a context if passing them as an argument when
creating the context.
Seeing intel-vaapi-driver code, the surfaces are just stored in
object_context.render_targets.
A surface processed by
vaBeginPicture()-vaRenderPicture()-vaEndPicture() are specified in
vaBeginPicture(). (object_context.current_render_target)
It looks like a surface can be processed using a context by being
specified in vaBeginPicture(), even if it is not bound to the context.
Here, my questions are below.
What is the advantage of binding?
In what circumstances do we need to associate the context with surfaces?
In which scenarios passing surfaces to vaCreateContext is required,
and in which it is not?
Best Regards,
Hirokazu Honda
2 years, 11 months
[ANNOUNCE] libva-utils 2.0.0
by Xiang, Haihao
Hi all,
I'm pleased to announce the 2.0.0 release of libva-utils, the collection of tests for Video Acceleration API (VA-API). libva 2.0.0 is required to build the new version of libva-utils.
Highlights:
* Bump version to 2.0.0
* Add option '--device <device>' to vainfo
* Add vp9enc for VP9 encoding
* Add vavpp for video processing
* Add FEI gtest cases
* Fix segmentation fault in putsurface_wayland
* Fix GCC 7.1.1 warnings/errors
* Fix libva version printed out by vainfo
Thanks to everybody who contributed to this release!
git tag: 2.0.0
tarball: https://github.com/01org/libva-utils/releases/download/2.0.0/libva-utils-...
sha1sum: b4dc39459f8539c1ea16e7ca957a853fb7735ec4 libva-utils-2.0.0.tar.bz2
Thanks
Haihao
4 years, 6 months
[ANNOUNCE] intel-vaapi-driver 2.0.0
by Xiang, Haihao
Hi all,
I'm pleased to announce the 2.0.0 release of intel-vaapi-driver, the VA-API backend driver for Intel GEN graphics. libva 2.0.0 is required to build the new version of intel-vaapi-driver. Thanks to everybody who contributed to this release!
Highlights:
* Bump version to 2.0.0
* Add support for Coffee Lake (aka. CFL)
- Decoding: H.264/MPEG-2/VC-1/JPEG/VP8/HEVC/HEVC 10-bit/VP9/VP9 10-bit
- Encoding: H.264/MPEG-2/JPEG/VP8/VP9/HEVC/HEVC 10-bit/AVC low power CQP/CBR/VBR mode
- VPP: CSC/scaling/NoiseReduction/Deinterlacing{Bob, MotionAdaptive, MotionCompensated}/ColorBalance/STD
* Add support for H264 FEI
* Add support for HEVC ROI encoding
* Add support for intensity compensation for VC-1 decoding
* Improve the quality of the H264 encoder on BDW/BSW
* Improve the CSC performance between I420/NV12/P010/YUY2/VYUY format
* Improve the performace of va{Get, Put}Image for I420/NV12/P010/YUY2/VYUY format
* Fix image corruption for VP9 decoding
* Fix race condition in wayland support
* Fix ROI support in VDEnc support
* Fix corrupted stream when using VDEnc CBR/VBR
* Fix GCC 7.1.1 warnings/errors
* Update the HEVCE encoding kernel
git tag: 2.0.0
tarball: https://github.com/01org/intel-vaapi-driver/releases/download/2.0.0/intel...
sha1sum: 19e83c084a404817263c04371c42345b617900ff intel-vaapi-driver-2.0.0.tar.bz2
Thanks
Haihao
4 years, 6 months
[ANNOUNCE] libva 2.0.0
by Xiang, Haihao
Hi all,
I'm pleased to announce the 2.0.0 release of libva, the implementation of Video Acceleration API (VA-API).
Highlights:
* Bump VA-API version to 1.0.0 and libva to 2.0.0
* Add new API for H264 FEI support
* Add definition of VA_FOURCC_I420
* Add functions for converting common enums to strings
* Deprecate H.264 baseline profile and FMO support
* Deprecate packed misc packed header flag
* Delete libva-tpi and libva-egl backends
* Refine VASliceParameterBufferHEVC, VAEncMiscParameterBuffer
* Fix errors in VAConfigAttribValEncROI, VAEncMacroblockParameterBufferH264
* Fix race condition in wayland support
* Rename vaMessageCallback to VAMessageCallback
* Make logging callbacks library-safe
Note libva 2.0.0 is not compatible with the old version of libva, but for most user, what you need to do is to rebuild your VA-API based application against libva 2.0.0.
Thanks to everybody who contributed to this release!
git tag: 2.0.0
tarball: https://github.com/01org/libva/releases/download/2.0.0/libva-2.0.0.tar.bz2
sha1sum: 762a49f8925ca1d0531c5071afbd629ffea93b90 libva-2.0.0.tar.bz2
Thanks
Haihao
4 years, 6 months
[ANNOUNCE] libva/libva-utils/intel-vaapi-driver 2.0.0.pre1
by Xiang, Haihao
Hi all,
libva/libva-utils/intel-vaapi-driver 2.0.0.pre1 are planned for release within the coming weeks. Please report any critical issues in the following test packages:
libva:
------
https://github.com/01org/libva/releases/tag/2.0.0.pre1
tarball: https://github.com/01org/libva/releases/download/2.0.0.pre1/libva-2.0.0.p...
* Bump VA-API version to 1.0.0 and libva to 2.0.0
* Add new API for H264 FEI support
* Add definition of VA_FOURCC_I420
* Add functions for converting common enums to strings
* Deprecate H.264 baseline profile and FMO support
* Deprecate packed misc packed header flag
* Delete libva-tpi and libva-egl backends
* Refine VASliceParameterBufferHEVC, VAEncMiscParameterBuffer
* Fix errors in VAConfigAttribValEncROI, VAEncMacroblockParameterBufferH264
* Fix race condition in wayland support
* Rename vaMessageCallback to VAMessageCallback
* Make logging callbacks library-safe
Note: libva-2.0.0 is not compatible with the old version of libva, but for most user, what you need to do is to rebuild your application against libva 2.0.0 pre1
libva-utils:
------------
https://github.com/01org/libva-utils/releases/tag/2.0.0.pre1
tarball: https://github.com/01org/libva-utils/releases/download/2.0.0.pre...
* Bump version to 2.0.0
* Add option '--device ' to vainfo
* Add vp9enc for VP9 encoding
* Add vavpp for video processing
* Add FEI gtest cases
* Fix segmentation fault in putsurface_wayland
* Fix GCC 7.1.1 warnings/errors
* Fix libva version printed out by vainfo
intel-vaapi-driver:
---------------------
https://github.com/01org/intel-vaapi-driver/releases/tag/2.0.0.pre1
tarball: https://github.com/01org/intel-vaapi-driver/releases/download/2.0.0.pre1/...
* Bump version to 2.0.0
* Add support for Coffee Lake (aka. CFL)
- Decoding: H.264/MPEG-2/VC-1/JPEG/VP8/HEVC/HEVC 10-bit/VP9/VP9 10-bit
- Encoding: H.264/MPEG-2/JPEG/VP8/VP9/HEVC/HEVC 10-bit/AVC low power CQP/CBR/VBR mode
- VPP: CSC/scaling/NoiseReduction/Deinterlacing{Bob, MotionAdaptive, MotionCompensated}/ColorBalance/STD
* Add support for H264 FEI
* Add support for HEVC ROI encoding
* Add support for intensity compensation for VC-1 decoding
* Improve the quality of the H264 encoder on BDW/BSW
* Improve the CSC performance between I420/NV12/P010/YUY2/VYUY format
* Improve the performace of va{Get, Put}Image for I420/NV12/P010/YUY2/VYUY format
* Fix image corruption for VP9 decoding
* Fix race condition in wayland support
* Fix ROI support in VDEnc support
* Fix corrupted stream when using VDEnc CBR/VBR
* Fix GCC 7.1.1 warnings/errors
* Update the shader for HEVC encoding
Thanks
Haihao
4 years, 7 months
Questions on configuration for iHD driver.
by Paul Knopf
My company is using a Yocto solution (pyro) that is using meta-intel. By
default, it is using the i965 driver/vaapi. I need to switch to using iHD
for the added throughput, so that we can achieve 4k60fps.
I have followed Intel's guidance here:
https://software.intel.com/en-us/media-sdk/choose-download/embedded-iot
However, it is for jethro (older version of Yocto).
With that said, I need to find out which configuration (libraries) I should
update in my pyro solution to properly support the iHD driver.
I am finding little guidance on how to build a custom configuration that
supports iHD. There is just so many different
repors/forks/versions/dependencies, and little documentation.
I am using an i7 6th gen CPU (as 7th gen apparently isn't support by iHD).
My assumptions currently are:
- I must use a specific kernel. The supported jethro example uses 4.1. Is
this correct? Is it possible to use the 4.9 version supplied by meta-intel?
- I need to use the github.com/iotg-lin-gfx-* family of repositories. This
includes
- iotg-lin-gfx-mesa
- iotg-lin-gfx-libva
- iotg-lin-gfx-libdrm
Each of this repos contain an "m3" branch. How does this branch relate to
the iHD driver provided by intel? I'd like to use the R2.1 deliverable of
the msdk.
Another question, what is the iotg-lin-gfx-va-driver used for? It is fork
of the i965 driver? If so, why the fork?
Attached are my notes which details each configuration (supported jethro
and custom pyro).
Any help is greatly appreciated. I am currently lost in the ocean of forks
and versions! :)
4 years, 7 months