Hello community,

here is the log from the commit of package libva for openSUSE:Factory checked 
in at 2018-11-06 15:24:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libva (Old)
 and      /work/SRC/openSUSE:Factory/.libva.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libva"

Tue Nov  6 15:24:44 2018 rev:44 rq:645625 version:2.3.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/libva/libva-gl.changes   2018-07-22 
23:38:08.144198818 +0200
+++ /work/SRC/openSUSE:Factory/.libva.new/libva-gl.changes      2018-11-06 
15:24:49.912572555 +0100
@@ -1,0 +2,14 @@
+Tue Oct 30 23:03:07 UTC 2018 - ch...@computersalat.de
+
+- Update to 2.3.0
+  * Bump VA-API version to 1.3.0 and libva to 2.3.0
+  * Add max frame size parameters for multiple pass case in legacy mode
+  * Add new BRC mode AVBR
+  * Add new interface for High Dynamic Range tone mapping
+  * Add missing enum to string conversions
+  * Add hevc subsets parameters structure
+  * Add Customized Noise Reduction (HVS) interfaces
+  * Add new BRC mode definition QVBR
+  * Add more complete colour properties for use in VPP
+
+-------------------------------------------------------------------
libva.changes: same change

Old:
----
  libva-2.2.0.tar.bz2
  libva-2.2.0.tar.bz2.sha1sum

New:
----
  libva-2.3.0.tar.bz2
  libva-2.3.0.tar.bz2.sha1sum

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libva-gl.spec ++++++
--- /var/tmp/diff_new_pack.kyXyZ6/_old  2018-11-06 15:24:50.704571351 +0100
+++ /var/tmp/diff_new_pack.kyXyZ6/_new  2018-11-06 15:24:50.708571346 +0100
@@ -12,7 +12,7 @@
 # license that conforms to the Open Source Definition (Version 1.9)
 # published by the Open Source Initiative.
 
-# Please submit bugfixes or comments via http://bugs.opensuse.org/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
 #
 
 
@@ -29,7 +29,7 @@
 
 Name:           libva-gl
 %define _name   libva
-Version:        2.2.0
+Version:        2.3.0
 Release:        0
 Summary:        Video Acceleration (VA) API
 License:        MIT

++++++ libva.spec ++++++
--- /var/tmp/diff_new_pack.kyXyZ6/_old  2018-11-06 15:24:50.720571327 +0100
+++ /var/tmp/diff_new_pack.kyXyZ6/_new  2018-11-06 15:24:50.728571315 +0100
@@ -12,7 +12,7 @@
 # license that conforms to the Open Source Definition (Version 1.9)
 # published by the Open Source Initiative.
 
-# Please submit bugfixes or comments via http://bugs.opensuse.org/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
 #
 
 
@@ -29,7 +29,7 @@
 
 Name:           libva
 %define _name   libva
-Version:        2.2.0
+Version:        2.3.0
 Release:        0
 Summary:        Video Acceleration (VA) API
 License:        MIT

++++++ libva-2.2.0.tar.bz2 -> libva-2.3.0.tar.bz2 ++++++
++++ 3544 lines of diff (skipped)
++++    retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/libva-2.2.0/NEWS new/libva-2.3.0/NEWS
--- old/libva-2.2.0/NEWS        2018-07-11 09:55:37.000000000 +0200
+++ new/libva-2.3.0/NEWS        2018-10-23 15:52:41.000000000 +0200
@@ -1,7 +1,18 @@
-libva NEWS -- summary of user visible changes.  2018-07-11
+libva NEWS -- summary of user visible changes.  2018-09-30
 Copyright (C) 2009-2018 Intel Corporation
 
-Version 2.2.0 - 11.July.2018
+version 2.3.0 - 30.Sep.2018
+* Bump VA-API version to 1.3.0 and libva to 2.3.0
+* Add max frame size parameters for multiple pass case in legacy mode
+* Add new BRC mode AVBR
+* Add new interface for High Dynamic Range tone mapping
+* Add missing enum to string conversions
+* Add hevc subsets parameters structure
+* Add Customized Noise Reduction (HVS) interfaces
+* Add new BRC mode definition QVBR
+* Add more complete colour properties for use in VPP
+
+Version 2.2.0 - DD.July.2018
 * Bump VA-API version to 1.2.0 and libva to 2.2.0
 * Add support for hevc range extension decoding
 * Add support for fast intra prediction in HEVC FEI
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/libva-2.2.0/config.h.in new/libva-2.3.0/config.h.in
--- old/libva-2.2.0/config.h.in 2018-07-11 09:55:46.000000000 +0200
+++ new/libva-2.3.0/config.h.in 2018-10-23 15:52:54.000000000 +0200
@@ -1,5 +1,8 @@
 /* config.h.in.  Generated from configure.ac by autoheader.  */
 
+/* Define if SSP C support is enabled. */
+#undef ENABLE_SSP_CC
+
 /* Defined to 1 if va messaging is needed */
 #undef ENABLE_VA_MESSAGING
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/libva-2.2.0/configure.ac new/libva-2.3.0/configure.ac
--- old/libva-2.2.0/configure.ac        2018-07-11 09:55:37.000000000 +0200
+++ new/libva-2.3.0/configure.ac        2018-10-23 15:52:41.000000000 +0200
@@ -27,7 +27,7 @@
 # - reset micro version to zero when minor version is incremented
 # - reset minor version to zero when major version is incremented
 m4_define([va_api_major_version], [1])
-m4_define([va_api_minor_version], [2])
+m4_define([va_api_minor_version], [3])
 m4_define([va_api_micro_version], [0])
 
 m4_define([va_api_version],
@@ -209,6 +209,22 @@
               [Defined to 1 if GCC visibility attribute is supported])
 fi
 
+# Check for -fstack-protector
+ssp_cc=yes
+if test "X$CC-cc" != "X"; then
+    AC_MSG_CHECKING([whether ${CC-cc} accepts -fstack-protector])
+    ssp_old_cflags="$CFLAGS"
+    CFLAGS="$CFLAGS -fstack-protector"
+    AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[alloca(100);]])], [], [ssp_cc=no])
+    AC_MSG_RESULT([$ssp_cc])
+    if test "X$ssp_cc" = "Xno"; then
+        CFLAGS="$ssp_old_cflags"
+    else
+        AC_DEFINE([ENABLE_SSP_CC], 1, [Define if SSP C support is enabled.])
+    fi
+fi
+AM_CONDITIONAL(USE_SSP, test "$ssp_cc" = "yes")
+
 # Check for DRM (mandatory)
 LIBDRM_VERSION=libdrm_version
 PKG_CHECK_MODULES([DRM], [libdrm >= $LIBDRM_VERSION])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/libva-2.2.0/va/Makefile.am new/libva-2.3.0/va/Makefile.am
--- old/libva-2.2.0/va/Makefile.am      2018-07-11 09:55:37.000000000 +0200
+++ new/libva-2.3.0/va/Makefile.am      2018-10-23 15:50:59.000000000 +0200
@@ -77,9 +77,12 @@
 
 libva_cflags = \
        -Wall                   \
-       -fstack-protector       \
        $(NULL)
 
+if USE_SSP
+libva_cflags += -fstack-protector
+endif
+
 lib_LTLIBRARIES                        = libva.la
 libvaincludedir                        = ${includedir}/va
 libvainclude_HEADERS           = $(libva_source_h)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/libva-2.2.0/va/va.c new/libva-2.3.0/va/va.c
--- old/libva-2.2.0/va/va.c     2018-07-11 09:55:37.000000000 +0200
+++ new/libva-2.3.0/va/va.c     2018-10-23 15:50:59.000000000 +0200
@@ -402,6 +402,7 @@
                 int minor;
             } compatible_versions[] = {
                 { VA_MAJOR_VERSION, VA_MINOR_VERSION },
+                { VA_MAJOR_VERSION, 2 },
                 { VA_MAJOR_VERSION, 1 },
                 { VA_MAJOR_VERSION, 0 },
                 { -1, }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/libva-2.2.0/va/va.h new/libva-2.3.0/va/va.h
--- old/libva-2.2.0/va/va.h     2018-07-11 09:55:37.000000000 +0200
+++ new/libva-2.3.0/va/va.h     2018-10-23 15:50:59.000000000 +0200
@@ -820,6 +820,23 @@
  *  simultaneously. And BRC would adjust accordingly. This is so called
  *  Parallel BRC. */
 #define VA_RC_PARALLEL                  0x00000200
+/** \brief Quality defined VBR
+ * Use Quality factor to determine the good enough QP for each MB such that
+ * good enough quality can be obtained without waste of bits
+ * for this BRC mode, you must set all legacy VBR parameters
+ * and reuse quality_factor in \c VAEncMiscParameterRateControl
+ * */
+#define VA_RC_QVBR                      0x00000400
+/** \brief Average VBR
+ *  Average variable bitrate control algorithm focuses on overall encoding
+ *  quality while meeting the specified target bitrate, within the accuracy
+ *  range, after a convergence period.
+ *  bits_per_second in VAEncMiscParameterRateControl is target bitrate for 
AVBR.
+ *  Convergence is specified in the unit of frame.
+ *  window_size in VAEncMiscParameterRateControl is equal to convergence for 
AVBR.
+ *  Accuracy is in the range of [1,100], 1 means one percent, and so on. 
+ *  target_percentage in VAEncMiscParameterRateControl is equal to accuracy 
for AVBR. */
+#define VA_RC_AVBR                      0x00000800
 
 /**@}*/
 
@@ -1633,6 +1650,19 @@
     /** decode stream out buffer, intermedia data of decode, it may include 
MV, MB mode etc.
       * it can be used to detect motion and analyze the frame contain  */
     VADecodeStreamoutBufferType             = 56,
+
+    /** \brief HEVC Decoding Subset Parameter buffer type
+     *
+     * The subsets parameter buffer is concatenation with one or multiple
+     * subset entry point offsets. All the offset values are layed out one
+     * by one according to slice order with first slice segment first, second
+     * slice segment second, etc... The entry number is indicated by parameter
+     * \ref num_entry_point_offsets. And the first entry position of the entry
+     * point offsets for any slice segment is indicated by parameter
+     * entry_offset_to_subset_array in VAPictureParameterBufferHEVC data 
structure.
+     */
+    VASubsetsParameterBufferType        = 57,
+
     VABufferTypeMax
 } VABufferType;
 
@@ -1718,6 +1748,8 @@
     VAEncMiscParameterTypeSkipFrame     = 9,
     /** \brief Buffer type used for region-of-interest (ROI) parameters. */
     VAEncMiscParameterTypeROI           = 10,
+    /** \brief Buffer type used to express a maximum frame size (in bytes) 
settings for multiple pass. */
+    VAEncMiscParameterTypeMultiPassFrameSize       = 11,
     /** \brief Buffer type used for temporal layer structure */
     VAEncMiscParameterTypeTemporalLayerStructure   = 12,
     /** \brief Buffer type used for dirty region-of-interest (ROI) parameters. 
*/
@@ -1907,6 +1939,7 @@
     /** Initial quality factor used in ICQ mode.
      *
      * This value must be between 1 and 51.
+     * this value will be deprecated in future, to use quality_factor instead 
of it.
      */
     uint32_t ICQ_quality_factor;
     /** Maximum quantiser value to use.
@@ -1915,8 +1948,13 @@
      * may exceed the target.  Ignored if set to zero.
      */
     uint32_t max_qp;
+    /** Quality factor
+     *
+     *  the range will be different for different codec
+     */
+    uint32_t quality_factor;
     /** Reserved bytes for future use, must be zero. */
-    uint32_t va_reserved[VA_PADDING_MEDIUM - 2];
+    uint32_t va_reserved[VA_PADDING_MEDIUM - 3];
 } VAEncMiscParameterRateControl;
 
 /** Encode framerate parameters.
@@ -2080,6 +2118,31 @@
 } VAEncMiscParameterBufferMaxFrameSize;
 
 /**
+ * \brief Maximum frame size (in bytes) settings for multiple pass.
+ *
+ * This misc parameter buffer defines the maximum size of a frame (in
+ * bytes) settings for multiple pass. currently only AVC encoder can
+ * support this settings in multiple pass case. If the frame size exceeds
+ * this size, the encoder will do more pak passes to adjust the QP value
+ * to control the frame size.
+ */
+typedef struct _VAEncMiscParameterBufferMultiPassFrameSize {
+    /** \brief Type. Shall be set to 
#VAEncMiscParameterTypeMultiPassMaxFrameSize. */
+    VAEncMiscParameterType      type;
+    /** \brief Maximum size of a frame (in byte) */
+    uint32_t                max_frame_size;
+    /** \brief Reserved bytes for future use, must be zero */
+    uint32_t                reserved;
+    /** \brief number of passes, every pass has different QP, currently AVC 
encoder can support up to 4 passes */
+    uint8_t                 num_passes;
+    /** \brief delta QP list for every pass */
+    uint8_t                *delta_qp;
+
+    /** \brief Reserved bytes for future use, must be zero */
+    unsigned long           va_reserved[VA_PADDING_LOW];
+} VAEncMiscParameterBufferMultiPassFrameSize;
+
+/**
  * \brief Encoding quality level.
  *
  * The encoding quality could be set through this structure, if the 
implementation  
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/libva-2.2.0/va/va_dec_hevc.h new/libva-2.3.0/va/va_dec_hevc.h
--- old/libva-2.2.0/va/va_dec_hevc.h    2018-07-11 09:55:37.000000000 +0200
+++ new/libva-2.3.0/va/va_dec_hevc.h    2018-10-23 15:50:59.000000000 +0200
@@ -481,10 +481,14 @@
     int8_t                  ChromaOffsetL1[15][2];
     /** HEVC syntax element. */
     uint8_t                 five_minus_max_num_merge_cand;
+    /** HEVC syntax element. */
+    uint16_t                 num_entry_point_offsets;
+    /** HEVC syntax element. */
+    uint16_t                 entry_offset_to_subset_array;
     /**@}*/
 
     /** \brief Reserved bytes for future use, must be zero */
-    uint32_t                va_reserved[VA_PADDING_LOW];
+    uint32_t                va_reserved[VA_PADDING_LOW - 1];
 } VASliceParameterBufferHEVC;
 
 /**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/libva-2.2.0/va/va_str.c new/libva-2.3.0/va/va_str.c
--- old/libva-2.2.0/va/va_str.c 2018-07-11 09:55:37.000000000 +0200
+++ new/libva-2.3.0/va/va_str.c 2018-10-23 15:50:59.000000000 +0200
@@ -171,6 +171,7 @@
     TOSTR(VAStatsMVPredictorBufferType);
     TOSTR(VAEncFEICTBCmdBufferType);
     TOSTR(VAEncFEICURecordBufferType);
+    TOSTR(VASubsetsParameterBufferType);
     case VABufferTypeMax: break;
     }
     return "<unknown buffer type>";
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/libva-2.2.0/va/va_trace.c new/libva-2.3.0/va/va_trace.c
--- old/libva-2.2.0/va/va_trace.c       2018-07-11 09:55:37.000000000 +0200
+++ new/libva-2.3.0/va/va_trace.c       2018-10-23 15:50:59.000000000 +0200
@@ -3241,6 +3241,18 @@
         va_TraceMsg(trace_ctx, "\tmax_frame_size = %d\n", p->max_frame_size);
         break;
     }
+    case VAEncMiscParameterTypeMultiPassFrameSize:
+    {
+        int i;
+        VAEncMiscParameterBufferMultiPassFrameSize *p = 
(VAEncMiscParameterBufferMultiPassFrameSize *)tmp->data;
+
+        va_TraceMsg(trace_ctx, 
"\t--VAEncMiscParameterTypeMultiPassFrameSize\n");
+        va_TraceMsg(trace_ctx, "\tmax_frame_size = %d\n", p->max_frame_size);
+        va_TraceMsg(trace_ctx, "\tnum_passes = %d\n", p->num_passes);
+        for(i = 0; i<p->num_passes; ++i)
+            va_TraceMsg(trace_ctx, "\tdelta_qp[%d] = %d\n", i, p->delta_qp[i]);
+        break;
+    }
     case VAEncMiscParameterTypeQualityLevel:
     {
         VAEncMiscParameterBufferQualityLevel *p = 
(VAEncMiscParameterBufferQualityLevel *)tmp->data;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/libva-2.2.0/va/va_version.h new/libva-2.3.0/va/va_version.h
--- old/libva-2.2.0/va/va_version.h     2018-07-11 09:55:45.000000000 +0200
+++ new/libva-2.3.0/va/va_version.h     2018-10-23 15:52:51.000000000 +0200
@@ -37,7 +37,7 @@
  *
  * The minor version of VA-API (2, if %VA_VERSION is 1.2.3)
  */
-#define VA_MINOR_VERSION    2
+#define VA_MINOR_VERSION    3
 
 /**
  * VA_MICRO_VERSION:
@@ -51,7 +51,7 @@
  *
  * The full version of VA-API, like 1.2.3
  */
-#define VA_VERSION          1.2.0
+#define VA_VERSION          1.3.0
 
 /**
  * VA_VERSION_S:
@@ -59,7 +59,7 @@
  * The full version of VA-API, in string form (suited for string
  * concatenation)
  */
-#define VA_VERSION_S       "1.2.0"
+#define VA_VERSION_S       "1.3.0"
 
 /**
  * VA_VERSION_HEX:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/libva-2.2.0/va/va_vpp.h new/libva-2.3.0/va/va_vpp.h
--- old/libva-2.2.0/va/va_vpp.h 2018-07-11 09:55:37.000000000 +0200
+++ new/libva-2.3.0/va/va_vpp.h 2018-10-23 15:50:59.000000000 +0200
@@ -249,6 +249,10 @@
     VAProcFilterSkinToneEnhancement,
     /** \brief Total Color Correction. */
     VAProcFilterTotalColorCorrection,
+    /** \brief Human Vision System(HVS) Noise reduction filter. */
+    VAProcFilterHVSNoiseReduction,
+    /** \brief High Dynamic Range Tone Mapping. */
+    VAProcFilterHighDynamicRangeToneMapping,
     /** \brief Number of video filters. */
     VAProcFilterCount
 } VAProcFilterType;
@@ -289,33 +293,122 @@
     VAProcColorBalanceCount
 } VAProcColorBalanceType;
 
-/** \brief Color standard types. */
+/** \brief Color standard types.
+ *
+ * These define a set of color properties corresponding to particular
+ * video standards.
+ *
+ * Where matrix_coefficients is specified, it applies only to YUV data -
+ * RGB data always use the identity matrix (matrix_coefficients = 0).
+ */
 typedef enum _VAProcColorStandardType {
     VAProcColorStandardNone = 0,
-    /** \brief ITU-R BT.601. */
+    /** \brief ITU-R BT.601.
+     *
+     * It is unspecified whether this will use 525-line or 625-line values;
+     * specify the colour primaries and matrix coefficients explicitly if
+     * it is known which one is required.
+     *
+     * Equivalent to:
+     *   colour_primaries = 5 or 6
+     *   transfer_characteristics = 6
+     *   matrix_coefficients = 5 or 6
+     */
     VAProcColorStandardBT601,
-    /** \brief ITU-R BT.709. */
+    /** \brief ITU-R BT.709.
+     *
+     * Equivalent to:
+     *   colour_primaries = 1
+     *   transfer_characteristics = 1
+     *   matrix_coefficients = 1
+     */
     VAProcColorStandardBT709,
-    /** \brief ITU-R BT.470-2 System M. */
+    /** \brief ITU-R BT.470-2 System M.
+     *
+     * Equivalent to:
+     *   colour_primaries = 4
+     *   transfer_characteristics = 4
+     *   matrix_coefficients = 4
+     */
     VAProcColorStandardBT470M,
-    /** \brief ITU-R BT.470-2 System B, G. */
+    /** \brief ITU-R BT.470-2 System B, G.
+     *
+     * Equivalent to:
+     *   colour_primaries = 5
+     *   transfer_characteristics = 5
+     *   matrix_coefficients = 5
+     */
     VAProcColorStandardBT470BG,
-    /** \brief SMPTE-170M. */
+    /** \brief SMPTE-170M.
+     *
+     * Equivalent to:
+     *   colour_primaries = 6
+     *   transfer_characteristics = 6
+     *   matrix_coefficients = 6
+     */
     VAProcColorStandardSMPTE170M,
-    /** \brief SMPTE-240M. */
+    /** \brief SMPTE-240M.
+     *
+     * Equivalent to:
+     *   colour_primaries = 7
+     *   transfer_characteristics = 7
+     *   matrix_coefficients = 7
+     */
     VAProcColorStandardSMPTE240M,
-    /** \brief Generic film. */
+    /** \brief Generic film.
+     *
+     * Equivalent to:
+     *   colour_primaries = 8
+     *   transfer_characteristics = 1
+     *   matrix_coefficients = 1
+     */
     VAProcColorStandardGenericFilm,
-    /** \brief sRGB. */
+    /** \brief sRGB.
+     *
+     * Equivalent to:
+     *   colour_primaries = 1
+     *   transfer_characteristics = 13
+     *   matrix_coefficients = 0
+     */
     VAProcColorStandardSRGB,
-    /** \brief stRGB. */
+    /** \brief stRGB.
+     *
+     * ???
+     */
     VAProcColorStandardSTRGB,
-    /** \brief xvYCC601. */
+    /** \brief xvYCC601.
+     *
+     * Equivalent to:
+     *   colour_primaries = 1
+     *   transfer_characteristics = 11
+     *   matrix_coefficients = 5
+     */
     VAProcColorStandardXVYCC601,
-    /** \brief xvYCC709. */
+    /** \brief xvYCC709.
+     *
+     * Equivalent to:
+     *   colour_primaries = 1
+     *   transfer_characteristics = 11
+     *   matrix_coefficients = 1
+     */
     VAProcColorStandardXVYCC709,
-    /** \brief ITU-R BT.2020. */
+    /** \brief ITU-R BT.2020.
+     *
+     * Equivalent to:
+     *   colour_primaries = 9
+     *   transfer_characteristics = 14
+     *   matrix_coefficients = 9
+     */
     VAProcColorStandardBT2020,
+    /** \brief Explicitly specified color properties.
+     *
+     * Use corresponding color properties section.
+     * For example, HDR10 content:
+     *   colour_primaries = 9 (BT2020)
+     *   transfer_characteristics = 16 (SMPTE ST2084)
+     *   matrix_coefficients = 9
+     */
+    VAProcColorStandardExplicit,
     /** \brief Number of color standards. */
     VAProcColorStandardCount
 } VAProcColorStandardType;
@@ -338,6 +431,34 @@
     /** \brief Number of color correction attributes. */
     VAProcTotalColorCorrectionCount
 } VAProcTotalColorCorrectionType;
+
+/** \brief High Dynamic Range Metadata types. */
+typedef enum _VAProcHighDynamicRangeMetadataType {
+    VAProcHighDynamicRangeMetadataNone = 0,
+    /** \brief Metadata type for HDR10. */
+    VAProcHighDynamicRangeMetadataHDR10
+} VAProcHighDynamicRangeMetadataType;
+
+/** \brief Video Processing Mode. */
+typedef enum _VAProcMode {
+    /**
+     * \brief Default Mode.
+     * In this mode, pipeline is decided in driver to the appropriate mode.
+     * e.g. a mode that's a balance between power and performance.
+     */
+    VAProcDefaultMode = 0,
+    /**
+     * \brief Power Saving Mode.
+     * In this mode, pipeline is optimized for power saving.
+     */
+    VAProcPowerSavingMode,
+    /**
+     * \brief Performance Mode.
+     * In this mode, pipeline is optimized for performance.
+     */
+    VAProcPerformanceMode
+} VAProcMode;
+
 /** @name Video blending flags */
 /**@{*/
 /** \brief Global alpha blending. */
@@ -435,6 +556,18 @@
 #define VA_SOURCE_RANGE_REDUCED         1
 #define VA_SOURCE_RANGE_FULL            2
 
+/** @name Tone Mapping flags multiple HDR mode*/
+/**@{*/
+/** \brief Tone Mapping from HDR content to HDR display. */
+#define VA_TONE_MAPPING_HDR_TO_HDR      0x0001
+/** \brief Tone Mapping from HDR content to SDR display. */
+#define VA_TONE_MAPPING_HDR_TO_SDR      0x0002
+/** \brief Tone Mapping from HDR content to EDR display. */
+#define VA_TONE_MAPPING_HDR_TO_EDR      0x0004
+/** \brief Tone Mapping from SDR content to HDR display. */
+#define VA_TONE_MAPPING_SDR_TO_HDR      0x0008
+/**@}*/
+
 /** \brief Video processing pipeline capabilities. */
 typedef struct _VAProcPipelineCaps {
     /** \brief Pipeline flags. See 
VAProcPipelineParameterBuffer::pipeline_flags. */
@@ -522,9 +655,9 @@
     uint32_t        min_output_height;
     /** \brief Reserved bytes for future use, must be zero */
     #if defined(__AMD64__) || defined(__x86_64__) || defined(__amd64__) || 
defined(__LP64__)
-    uint32_t                va_reserved[VA_PADDING_HIGH - 2];
+    uint32_t        va_reserved[VA_PADDING_HIGH - 2];
     #else
-    uint32_t                va_reserved[VA_PADDING_HIGH];
+    uint32_t        va_reserved[VA_PADDING_HIGH];
     #endif
 } VAProcPipelineCaps;
 
@@ -540,7 +673,7 @@
     float               step;
 
     /** \brief Reserved bytes for future use, must be zero */
-    uint32_t                va_reserved[VA_PADDING_LOW];
+    uint32_t            va_reserved[VA_PADDING_LOW];
 } VAProcFilterValueRange;
 
 typedef struct _VAProcColorProperties {
@@ -548,9 +681,124 @@
     uint8_t chroma_sample_location;
     /** Chroma sample location. \c VA_SOURCE_RANGE_XXX*/
     uint8_t color_range;
-    uint8_t reserved[6];
+    /** Colour primaries.
+     *
+     * See ISO/IEC 23001-8 or ITU H.273, section 8.1 and table 2.
+     * Only used if the color standard in use is \c VAColorStandardExplicit.
+     */
+    uint8_t colour_primaries;
+    /** Transfer characteristics.
+     *
+     * See ISO/IEC 23001-8 or ITU H.273, section 8.2 and table 3.
+     * Only used if the color standard in use is \c VAColorStandardExplicit.
+     */
+    uint8_t transfer_characteristics;
+    /** Matrix coefficients.
+     *
+     * See ISO/IEC 23001-8 or ITU H.273, section 8.3 and table 4.
+     * Only used if the color standard in use is \c VAColorStandardExplicit.
+     */
+    uint8_t matrix_coefficients;
+    /** Reserved bytes for future use, must be zero. */
+    uint8_t reserved[3];
 } VAProcColorProperties;
 
+/** \berief Describes High Dynamic Range Meta Data for HDR10. */
+typedef struct _VAHdrMetaDataHDR10
+{
+    /**
+     * \brief X chromaticity coordinate of the mastering display.
+     *
+     * Index value c equal to 0 should correspond to the green primary.
+     * Index value c equal to 1 should correspond to the blue primary.
+     * Index value c equal to 2 should correspond to the red primary.
+     * The value for display_primaries_x shall be in the range of 0 to 50000 
inclusive.
+     */
+    uint16_t   display_primaries_x[3];
+    /**
+     * \brief Y chromaticity coordinate of the mastering display.
+     *
+     * Index value c equal to 0 should correspond to the green primary.
+     * Index value c equal to 1 should correspond to the blue primary.
+     * Index value c equal to 2 should correspond to the red primary.
+     * The value for display_primaries_y shall be in the range of 0 to 50000 
inclusive.
+     */
+    uint16_t   display_primaries_y[3];
+    /**
+     * \brief X chromaticity coordinate of the white point of the mastering 
display.
+     *
+     * The value for white_point_x shall be in the range of 0 to 50000 
inclusive.
+     */
+    uint16_t   white_point_x;
+    /**
+     * \brief Y chromaticity coordinate of the white point of the mastering 
display.
+     *
+     * The value for white_point_y shall be in the range of 0 to 50000 
inclusive.
+     */
+    uint16_t   white_point_y;
+    /**
+     * \brief The maximum display luminance of the mastering display.
+     *
+     * The value is in units of 0.0001 candelas per square metre.
+     */
+    uint32_t    max_display_mastering_luminance;
+    /**
+     * \brief The minumum display luminance of the mastering display.
+     *
+     * The value is in units of 0.0001 candelas per square metre.
+     */
+    uint32_t    min_display_mastering_luminance;
+    /**
+     * \brief The maximum content light level.
+     *
+     * The value is in units of 0.0001 candelas per square metre.
+     */
+    uint16_t    max_content_light_level;
+    /**
+     * \brief The maximum picture average light level.
+     *
+     * The value is in units of 0.0001 candelas per square metre.
+     */
+    uint16_t    max_pic_average_light_level;
+    /** Resevered */
+    uint16_t    reserved[VA_PADDING_HIGH];
+} VAHdrMetaDataHDR10;
+
+/** \brief Capabilities specification for the High Dynamic Range filter. */
+typedef struct _VAProcFilterCapHighDynamicRange {
+    /** \brief high dynamic range type. */
+    VAProcHighDynamicRangeMetadataType     metadata_type;
+    /**
+     * \brief flag for high dynamic range tone mapping
+     *
+     * The flag is the combination of VA_TONE_MAPPING_XXX_TO_XXX.
+     * It could be VA_TONE_MAPPING_HDR_TO_HDR | VA_TONE_MAPPING_HDR_TO_SDR.
+     * SDR content to SDR display is always supported by default since it is 
legacy path.
+     */
+    uint16_t                               caps_flag;
+    /** \brief Reserved bytes for future use, must be zero */
+    uint16_t                               va_reserved[VA_PADDING_HIGH];
+} VAProcFilterCapHighDynamicRange;
+
+/** \brief High Dynamic Range Meta Data. */
+typedef struct _VAHdrMetaData
+{
+    /** \brief high dynamic range metadata type, HDR10 etc. */
+    VAProcHighDynamicRangeMetadataType       metadata_type;
+    /**
+     *  \brief Pointer to high dynamic range metadata.
+     *
+     *  The pointer could point to VAHdrMetaDataHDR10 or other HDR meta data.
+     */
+    void*                                    metadata;
+    /**
+     *  \brief Size of high dynamic range metadata.
+     */
+    uint32_t                                 metadata_size;
+    /** \brief Reserved bytes for future use, must be zero */
+    uint32_t                                 reserved[VA_PADDING_LOW];
+} VAHdrMetaData;
+
 /**
  * \brief Video processing pipeline configuration.
  *
@@ -597,12 +845,15 @@
      */
     const VARectangle  *surface_region;
     /**
-     * \brief Requested input color primaries.
+     * \brief Requested input color standard.
      *
-     * Color primaries are implicitly converted throughout the processing
+     * Color properties are implicitly converted throughout the processing
      * pipeline. The video processor chooses the best moment to apply
-     * this conversion. The set of supported color primaries primaries
-     * for input shall be queried with vaQueryVideoProcPipelineCaps().
+     * this conversion. The set of supported color standards for input shall
+     * be queried with vaQueryVideoProcPipelineCaps().
+     *
+     * If this is set to VAProcColorStandardExplicit, the color properties
+     * are specified explicitly in surface_color_properties instead.
      */
     VAProcColorStandardType surface_color_standard;
     /**
@@ -610,7 +861,7 @@
      *
      * Pointer to a #VARectangle defining the region within the output
      * surface that receives the processed pixels. If NULL, \c output_region
-     * implies the whole surface. 
+     * implies the whole surface.
      *
      * Note that any pixels residing outside the specified region will
      * be filled in with the \ref output_background_color.
@@ -633,7 +884,10 @@
      */
     uint32_t        output_background_color;
     /**
-     * \brief Requested output color primaries.
+     * \brief Requested output color standard.
+     *
+     * If this is set to VAProcColorStandardExplicit, the color properties
+     * are specified explicitly in output_color_properties instead.
      */
     VAProcColorStandardType output_color_standard;
     /**
@@ -656,7 +910,7 @@
      *   \c VA_BOTTOM_FIELD. Note that any deinterlacing filter
      *   (#VAProcFilterDeinterlacing) will override those flags.
      * - Color space conversion: \c VA_SRC_BT601, \c VA_SRC_BT709,
-     *   \c VA_SRC_SMPTE_240. 
+     *   \c VA_SRC_SMPTE_240.
      * - Scaling: \c VA_FILTER_SCALING_DEFAULT, \c VA_FILTER_SCALING_FAST,
      *   \c VA_FILTER_SCALING_HQ, \c VA_FILTER_SCALING_NL_ANAMORPHIC.
      */
@@ -675,15 +929,15 @@
      */
     VABufferID         *filters;
     /** \brief Actual number of filters. */
-    uint32_t        num_filters;
+    uint32_t           num_filters;
     /** \brief Array of forward reference frames. */
     VASurfaceID        *forward_references;
     /** \brief Number of forward reference frames that were supplied. */
-    uint32_t        num_forward_references;
+    uint32_t           num_forward_references;
     /** \brief Array of backward reference frames. */
     VASurfaceID        *backward_references;
     /** \brief Number of backward reference frames that were supplied. */
-    uint32_t        num_backward_references;
+    uint32_t           num_backward_references;
     /**
      * \brief Rotation state. See rotation angles.
      *
@@ -754,16 +1008,30 @@
      * bit 1~31 for future
      */
     uint32_t        output_surface_flag;
-
+    /**
+     * \brief Input Color Properties. See "VAProcColorProperties".
+     */
     VAProcColorProperties  input_color_properties;
-
+    /**
+     * \brief Output Color Properties. See "VAProcColorProperties".
+     */
     VAProcColorProperties  output_color_properties;
+    /**
+     * \brief Processing mode. See "VAProcMode".
+     */
+    VAProcMode             processing_mode;
+    /**
+     * \brief Output High Dynamic Metadata.
+     *
+     * If output_metadata is NULL, then output default to SDR.
+     */
+    VAHdrMetaData          *output_hdr_metadata;
 
     /** \brief Reserved bytes for future use, must be zero */
     #if defined(__AMD64__) || defined(__x86_64__) || defined(__amd64__)|| 
defined(__LP64__)
-    uint32_t                va_reserved[VA_PADDING_LARGE - 13];
+    uint32_t                va_reserved[VA_PADDING_LARGE - 16];
     #else
-    uint32_t                va_reserved[VA_PADDING_LARGE - 11];
+    uint32_t                va_reserved[VA_PADDING_LARGE - 13];
     #endif
 } VAProcPipelineParameterBuffer;
 
@@ -929,6 +1197,26 @@
     /** \brief Color correction value. */
     float                             value;
 } VAProcFilterParameterBufferTotalColorCorrection;
+
+/** \brief Human Vision System(HVS) Noise reduction filter parametrization. */
+typedef struct _VAProcFilterParameterBufferHVSNoiseReduction {
+    /** \brief Filter type. Shall be set to #VAProcFilterHVSNoiseReduction. */
+    VAProcFilterType    type;
+    /** \brief QP for encoding, used for HVS Denoise */
+    uint16_t            qp;
+    /**
+     *  \brief QP to Noise Reduction Strength Mode, used for Human Vision 
System Based Noise Reduction.
+     *  Controls Noise Reduction strength of conservative and aggressive mode.
+     *  It is an integer from [0-16].
+     *  Value 0 means completely turn off Noise Reduction;
+     *  Value 16 means the most aggressive mode of Noise Reduction;
+     *  Value 10 is the default value.
+     */
+    uint16_t            strength;
+    /** \brief Reserved bytes for future use, must be zero */
+    uint16_t            va_reserved[VA_PADDING_HIGH];
+} VAProcFilterParameterBufferHVSNoiseReduction;
+
 /**
  * \brief Default filter cap specification (single range value).
  *

++++++ libva-2.2.0.tar.bz2.sha1sum -> libva-2.3.0.tar.bz2.sha1sum ++++++
--- /work/SRC/openSUSE:Factory/libva/libva-2.2.0.tar.bz2.sha1sum        
2018-07-22 23:38:08.128198824 +0200
+++ /work/SRC/openSUSE:Factory/.libva.new/libva-2.3.0.tar.bz2.sha1sum   
2018-11-06 15:24:48.772574288 +0100
@@ -1 +1 @@
-5b19d2fbf532f14e24c3bedb4074238a1d7f1686  libva-2.2.0.tar.bz2
+e1138529355cce78fa2edc7c5b1c5aeb40dd0ce5  libva-2.3.0.tar.bz2


Reply via email to