Hello community,

here is the log from the commit of package libva for openSUSE:Factory checked 
in at 2019-02-01 11:43:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libva (Old)
 and      /work/SRC/openSUSE:Factory/.libva.new.28833 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libva"

Fri Feb  1 11:43:12 2019 rev:45 rq:668840 version:2.4.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/libva/libva-gl.changes   2018-11-06 
15:24:49.912572555 +0100
+++ /work/SRC/openSUSE:Factory/.libva.new.28833/libva-gl.changes        
2019-02-01 11:43:15.392687386 +0100
@@ -1,0 +2,18 @@
+Sat Jan 26 20:27:33 UTC 2019 - bjorn....@gmail.com
+
+- Update to version 2.4.0:
+  * va_TraceSurface support for VA_FOURCC_P010
+  * Add pointer to struct wl_interface for driver to use
+  * (integrate) va: fix new line symbol in error message
+  * av: avoid driver path truncation
+  * Fix compilation warning (uninit and wrong variable types) for
+    Android O MR1
+  * Allow import of the DRM PRIME 2 memory type
+  * android: ignore unimportant compile warnnings
+  * compile: fix sign/unsign compare in va_trace.c
+  * android: replace utils/Log.h with log/log.h
+  * High Dynamic Range Tone Mapping: Add a new filter for input
+    metadata and some comments
+  * Remove restrictions on vaSetDriverName()
+
+-------------------------------------------------------------------
libva.changes: same change

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

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

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

Other differences:
------------------
++++++ libva-gl.spec ++++++
--- /var/tmp/diff_new_pack.SM7Lzo/_old  2019-02-01 11:43:17.176685554 +0100
+++ /var/tmp/diff_new_pack.SM7Lzo/_new  2019-02-01 11:43:17.180685549 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package libva-gl
 #
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -29,7 +29,7 @@
 
 Name:           libva-gl
 %define _name   libva
-Version:        2.3.0
+Version:        2.4.0
 Release:        0
 Summary:        Video Acceleration (VA) API
 License:        MIT

++++++ libva.spec ++++++
--- /var/tmp/diff_new_pack.SM7Lzo/_old  2019-02-01 11:43:17.196685533 +0100
+++ /var/tmp/diff_new_pack.SM7Lzo/_new  2019-02-01 11:43:17.200685529 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package libva
 #
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -29,7 +29,7 @@
 
 Name:           libva
 %define _name   libva
-Version:        2.3.0
+Version:        2.4.0
 Release:        0
 Summary:        Video Acceleration (VA) API
 License:        MIT

++++++ libva-2.3.0.tar.bz2 -> libva-2.4.0.tar.bz2 ++++++
++++ 3941 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.3.0/NEWS new/libva-2.4.0/NEWS
--- old/libva-2.3.0/NEWS        2018-10-23 15:52:41.000000000 +0200
+++ new/libva-2.4.0/NEWS        2019-01-25 19:40:26.000000000 +0100
@@ -1,5 +1,18 @@
-libva NEWS -- summary of user visible changes.  2018-09-30
-Copyright (C) 2009-2018 Intel Corporation
+libva NEWS -- summary of user visible changes.  2019-01-25
+Copyright (C) 2009-2019 Intel Corporation
+
+version 2.4.0 - 25.Jan.2019
+* va_TraceSurface support for VA_FOURCC_P010
+* Add pointer to struct wl_interface for driver to use
+* (integrate) va: fix new line symbol in error message
+* av: avoid driver path truncation
+* Fix compilation warning (uninit and wrong variable types) for Android O MR1
+* Allow import of the DRM PRIME 2 memory type
+* android: ignore unimportant compile warnnings
+* compile: fix sign/unsign compare in va_trace.c
+* android: replace utils/Log.h with log/log.h
+* High Dynamic Range Tone Mapping: Add a new filter for input metadata and 
some comments.
+* Remove restrictions on vaSetDriverName()
 
 version 2.3.0 - 30.Sep.2018
 * Bump VA-API version to 1.3.0 and libva to 2.3.0
@@ -12,7 +25,7 @@
 * Add new BRC mode definition QVBR
 * Add more complete colour properties for use in VPP
 
-Version 2.2.0 - DD.July.2018
+Version 2.2.0 - 12.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.3.0/compile new/libva-2.4.0/compile
--- old/libva-2.3.0/compile     2018-10-23 15:52:00.000000000 +0200
+++ new/libva-2.4.0/compile     2018-12-26 11:22:44.000000000 +0100
@@ -3,7 +3,7 @@
 
 scriptversion=2012-10-14.11; # UTC
 
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
 # Written by Tom Tromey <tro...@cygnus.com>.
 #
 # This program is free software; you can redistribute it and/or modify
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.3.0/configure.ac new/libva-2.4.0/configure.ac
--- old/libva-2.3.0/configure.ac        2018-10-23 15:52:41.000000000 +0200
+++ new/libva-2.4.0/configure.ac        2019-01-25 19:47:35.000000000 +0100
@@ -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], [3])
+m4_define([va_api_minor_version], [4])
 m4_define([va_api_micro_version], [0])
 
 m4_define([va_api_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.3.0/m4/ltsugar.m4 new/libva-2.4.0/m4/ltsugar.m4
--- old/libva-2.3.0/m4/ltsugar.m4       2018-10-23 15:51:57.000000000 +0200
+++ new/libva-2.4.0/m4/ltsugar.m4       2018-12-26 11:22:44.000000000 +0100
@@ -1,7 +1,6 @@
 # ltsugar.m4 -- libtool m4 base layer.                         -*-Autoconf-*-
 #
-# Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software
-# Foundation, Inc.
+# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
 # Written by Gary V. Vaughan, 2004
 #
 # This file is free software; the Free Software Foundation gives
@@ -34,7 +33,7 @@
 # ------------
 # Manipulate m4 lists.
 # These macros are necessary as long as will still need to support
-# Autoconf-2.59, which quotes differently.
+# Autoconf-2.59 which quotes differently.
 m4_define([lt_car], [[$1]])
 m4_define([lt_cdr],
 [m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
@@ -45,7 +44,7 @@
 
 # lt_append(MACRO-NAME, STRING, [SEPARATOR])
 # ------------------------------------------
-# Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'.
+# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
 # Note that neither SEPARATOR nor STRING are expanded; they are appended
 # to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
 # No SEPARATOR is output if MACRO-NAME was previously undefined (different
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.3.0/m4/lt~obsolete.m4 new/libva-2.4.0/m4/lt~obsolete.m4
--- old/libva-2.3.0/m4/lt~obsolete.m4   2018-10-23 15:51:58.000000000 +0200
+++ new/libva-2.4.0/m4/lt~obsolete.m4   2018-12-26 11:22:44.000000000 +0100
@@ -1,7 +1,6 @@
 # lt~obsolete.m4 -- aclocal satisfying obsolete definitions.    -*-Autoconf-*-
 #
-#   Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software
-#   Foundation, Inc.
+#   Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
 #   Written by Scott James Remnant, 2004.
 #
 # This file is free software; the Free Software Foundation gives
@@ -12,7 +11,7 @@
 
 # These exist entirely to fool aclocal when bootstrapping libtool.
 #
-# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN),
+# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
 # which have later been changed to m4_define as they aren't part of the
 # exported API, or moved to Autoconf or Automake where they belong.
 #
@@ -26,7 +25,7 @@
 # included after everything else.  This provides aclocal with the
 # AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
 # because those macros already exist, or will be overwritten later.
-# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
+# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. 
 #
 # Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
 # Yes, that means every name once taken will need to remain here until
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.3.0/missing new/libva-2.4.0/missing
--- old/libva-2.3.0/missing     2018-10-23 15:52:00.000000000 +0200
+++ new/libva-2.4.0/missing     2018-12-26 11:22:45.000000000 +0100
@@ -1,9 +1,9 @@
 #! /bin/sh
 # Common wrapper for a few potentially missing GNU programs.
 
-scriptversion=2013-10-28.13; # UTC
+scriptversion=2012-06-26.16; # UTC
 
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 # Originally written by Fran,cois Pinard <pin...@iro.umontreal.ca>, 1996.
 
 # This program is free software; you can redistribute it and/or modify
@@ -160,7 +160,7 @@
       ;;
    autom4te*)
       echo "You might have modified some maintainer files that require"
-      echo "the 'autom4te' program to be rebuilt."
+      echo "the 'automa4te' program to be rebuilt."
       program_details 'autom4te'
       ;;
     bison*|yacc*)
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.3.0/va/drm/va_drm_utils.c new/libva-2.4.0/va/drm/va_drm_utils.c
--- old/libva-2.3.0/va/drm/va_drm_utils.c       2018-10-23 15:50:59.000000000 
+0200
+++ new/libva-2.4.0/va/drm/va_drm_utils.c       2019-01-25 19:00:10.000000000 
+0100
@@ -44,7 +44,7 @@
     { "nouveau",    7, "nouveau"  }, // Mesa Gallium driver
     { "radeon",     6, "r600"     }, // Mesa Gallium driver
     { "amdgpu",     6, "radeonsi" }, // Mesa Gallium driver
-    { NULL, }
+    { NULL,         0, NULL }
 };
 
 /* Returns the VA driver name for the active display */
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.3.0/va/sysdeps.h new/libva-2.4.0/va/sysdeps.h
--- old/libva-2.3.0/va/sysdeps.h        2018-10-23 15:50:59.000000000 +0200
+++ new/libva-2.4.0/va/sysdeps.h        2019-01-25 19:00:10.000000000 +0100
@@ -45,7 +45,7 @@
 # define LIBVA_VERSION_S "1.1.0"
 
 /* Android logging utilities */
-# include <utils/Log.h>
+# include <log/log.h>
 #endif
 
 #if defined __GNUC__ && defined HAVE_GNUC_VISIBILITY_ATTRIBUTE
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.3.0/va/va.c new/libva-2.4.0/va/va.c
--- old/libva-2.3.0/va/va.c     2018-10-23 15:50:59.000000000 +0200
+++ new/libva-2.4.0/va/va.c     2019-01-25 19:00:10.000000000 +0100
@@ -39,7 +39,7 @@
 #include <dlfcn.h>
 #include <unistd.h>
 #ifdef ANDROID
-#include <cutils/log.h>
+#include <log/log.h>
 /* support versions < JellyBean */
 #ifndef ALOGE
 #define ALOGE LOGE
@@ -349,6 +349,23 @@
     return pDisplayContext->vaGetDriverName(pDisplayContext, driver_name);
 }
 
+static char *va_getDriverPath(const char *driver_dir, const char *driver_name)
+{
+  int n = snprintf(0, 0, "%s/%s%s", driver_dir, driver_name, DRIVER_EXTENSION);
+  if (n < 0)
+      return NULL;
+  char *driver_path = (char *) malloc(n + 1);
+  if (!driver_path)
+      return NULL;
+  n = snprintf(driver_path, n + 1, "%s/%s%s",
+               driver_dir, driver_name, DRIVER_EXTENSION);
+  if (n < 0) {
+    free(driver_path);
+    return NULL;
+  }
+  return driver_path;
+}
+
 static VAStatus va_openDriver(VADisplay dpy, char *driver_name)
 {
     VADriverContextP ctx = CTX(dpy);
@@ -367,21 +384,14 @@
     driver_dir = strtok_r(search_path, ":", &saveptr);
     while (driver_dir) {
         void *handle = NULL;
-        char *driver_path = (char *) malloc( strlen(driver_dir) +
-                                             strlen(driver_name) +
-                                             strlen(DRIVER_EXTENSION) + 2 );
+        char *driver_path = va_getDriverPath(driver_dir, driver_name);
         if (!driver_path) {
-            va_errorMessage(dpy, "%s L%d Out of memory!n",
+            va_errorMessage(dpy, "%s L%d Out of memory\n",
                             __FUNCTION__, __LINE__);
             free(search_path);
             return VA_STATUS_ERROR_ALLOCATION_FAILED;
         }
 
-        strncpy( driver_path, driver_dir, strlen(driver_dir) + 1);
-        strncat( driver_path, "/", strlen("/") );
-        strncat( driver_path, driver_name, strlen(driver_name) );
-        strncat( driver_path, DRIVER_EXTENSION, strlen(DRIVER_EXTENSION) );
-        
         va_infoMessage(dpy, "Trying to open %s\n", driver_path);
 #ifndef ANDROID
         handle = dlopen( driver_path, RTLD_NOW | RTLD_GLOBAL | RTLD_NODELETE );
@@ -402,10 +412,11 @@
                 int minor;
             } compatible_versions[] = {
                 { VA_MAJOR_VERSION, VA_MINOR_VERSION },
+                { VA_MAJOR_VERSION, 3 },
                 { VA_MAJOR_VERSION, 2 },
                 { VA_MAJOR_VERSION, 1 },
                 { VA_MAJOR_VERSION, 0 },
-                { -1, }
+                { -1, -1}
             };
 
             for (i = 0; compatible_versions[i].major >= 0; i++) {
@@ -604,13 +615,6 @@
     return "unknown libva error / description missing";
 }
 
-const static char *prefer_driver_list[4] = {
-    "i965",
-    "hybrid",
-    "pvr",
-    "iHD",
-};
-
 VAStatus vaSetDriverName(
     VADisplay dpy,
     char *driver_name
@@ -619,15 +623,8 @@
     VADriverContextP ctx;
     VAStatus vaStatus = VA_STATUS_SUCCESS;
     char *override_driver_name = NULL;
-    int i, found;
     ctx = CTX(dpy);
 
-    if (geteuid() != getuid()) {
-        vaStatus = VA_STATUS_ERROR_OPERATION_FAILED;
-        va_errorMessage(dpy, "no permission to vaSetDriverName\n");
-        return vaStatus;
-    }
-
     if (strlen(driver_name) == 0 || strlen(driver_name) >=256) {
         vaStatus = VA_STATUS_ERROR_INVALID_PARAMETER;
         va_errorMessage(dpy, "vaSetDriverName returns %s\n",
@@ -635,25 +632,7 @@
         return vaStatus;
     }
 
-    found = 0;
-    for (i = 0; i < sizeof(prefer_driver_list) / sizeof(char *); i++) {
-        if (strlen(prefer_driver_list[i]) != strlen(driver_name))
-            continue;
-        if (!strncmp(prefer_driver_list[i], driver_name, strlen(driver_name))) 
{
-            found = 1;
-            break;
-        }
-    }
-
-    if (!found) {
-        vaStatus = VA_STATUS_ERROR_INVALID_PARAMETER;
-        va_errorMessage(dpy, "vaSetDriverName returns %s. Incorrect 
parameter\n",
-                         vaErrorStr(vaStatus));
-        return vaStatus;
-    }
-
     override_driver_name = strdup(driver_name);
-
     if (!override_driver_name) {
         vaStatus = VA_STATUS_ERROR_ALLOCATION_FAILED;
         va_errorMessage(dpy, "vaSetDriverName returns %s. Out of Memory\n",
@@ -974,7 +953,7 @@
         { VASurfaceAttribMinHeight,     VAGenericValueTypeInteger },
         { VASurfaceAttribMaxHeight,     VAGenericValueTypeInteger },
         { VASurfaceAttribMemoryType,    VAGenericValueTypeInteger },
-        { VASurfaceAttribNone, }
+        { VASurfaceAttribNone,          VAGenericValueTypeInteger }
     };
 
     if (!out_attribs || !out_num_attribs_ptr)
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.3.0/va/va.h new/libva-2.4.0/va/va.h
--- old/libva-2.3.0/va/va.h     2018-10-23 15:50:59.000000000 +0200
+++ new/libva-2.4.0/va/va.h     2019-01-25 19:00:10.000000000 +0100
@@ -1260,7 +1260,12 @@
     VASurfaceAttribMaxHeight,
     /** \brief Surface memory type expressed in bit fields (int, read/write). 
*/
     VASurfaceAttribMemoryType,
-    /** \brief External buffer descriptor (pointer, write). */
+    /** \brief External buffer descriptor (pointer, write).
+     *
+     * Refer to the documentation for the memory type being created to
+     * determine what descriptor structure to pass here.  If not otherwise
+     * stated, the common VASurfaceAttribExternalBuffers should be used.
+     */
     VASurfaceAttribExternalBufferDescriptor,
     /** \brief Surface usage hint, gives the driver a hint of intended usage 
      *  to optimize allocation (e.g. tiling) (int, read/write). */
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.3.0/va/va_drmcommon.h new/libva-2.4.0/va/va_drmcommon.h
--- old/libva-2.3.0/va/va_drmcommon.h   2018-10-23 15:50:59.000000000 +0200
+++ new/libva-2.4.0/va/va_drmcommon.h   2019-01-25 19:00:10.000000000 +0100
@@ -90,8 +90,6 @@
 /**
  * \brief External buffer descriptor for a DRM PRIME surface.
  *
- * This can currently only be used for export.
- *
  * For export, call vaExportSurfaceHandle() with mem_type set to
  * VA_SURFACE_ATTRIB_MEM_TYPE_DRM_PRIME_2 and pass a pointer to an
  * instance of this structure to fill.
@@ -101,6 +99,23 @@
  * one of DRM_FORMAT_GR88.
  * If VA_EXPORT_SURFACE_COMPOSED_LAYERS is specified on export,
  * there will be exactly one layer.
+ *
+ * For import, call vaCreateSurfaces() with the MemoryType attribute
+ * set to VA_SURFACE_ATTRIB_MEM_TYPE_DRM_PRIME_2 and the
+ * ExternalBufferDescriptor attribute set to point to an array of
+ * num_surfaces instances of this structure.
+ * The number of planes which need to be provided for a given layer
+ * is dependent on both the format and the format modifier used for
+ * the objects containing it.  For example, the format DRM_FORMAT_RGBA
+ * normally requires one plane, but with the format modifier
+ * I915_FORMAT_MOD_Y_TILED_CCS it requires two planes - the first
+ * being the main data plane and the second containing the color
+ * control surface.
+ * Note that a given driver may only support a subset of possible
+ * representations of a particular format.  For example, it may only
+ * support NV12 surfaces when they are contained within a single DRM
+ * object, and therefore fail to create such surfaces if the two
+ * planes are in different DRM objects.
  */
 typedef struct _VADRMPRIMESurfaceDescriptor {
     /** Pixel format fourcc of the whole surface (VA_FOURCC_*). */
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.3.0/va/va_fool.c new/libva-2.4.0/va/va_fool.c
--- old/libva-2.3.0/va/va_fool.c        2018-10-23 15:50:59.000000000 +0200
+++ new/libva-2.4.0/va/va_fool.c        2019-01-25 19:00:10.000000000 +0100
@@ -265,7 +265,7 @@
 static int va_FoolFillCodedBufEnc(VADisplay dpy, struct fool_context *fool_ctx)
 {
     char file_name[1024];
-    struct stat file_stat = {0};
+    struct stat file_stat = {};
     VACodedBufferSegment *codedbuf;
     int i, fd = -1;
     ssize_t ret;
@@ -311,7 +311,7 @@
 
 static int va_FoolFillCodedBufJPG(VADisplay dpy, struct fool_context *fool_ctx)
 {
-    struct stat file_stat = {0};
+    struct stat file_stat = {};
     VACodedBufferSegment *codedbuf;
     int fd = -1;
     ssize_t ret;
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.3.0/va/va_trace.c new/libva-2.4.0/va/va_trace.c
--- old/libva-2.3.0/va/va_trace.c       2018-10-23 15:50:59.000000000 +0200
+++ new/libva-2.4.0/va/va_trace.c       2019-01-25 19:00:10.000000000 +0100
@@ -185,7 +185,7 @@
 #define DPY2TRACECTX(dpy, context, buf_id)                                  \
     struct va_trace *pva_trace = NULL;                                      \
     struct trace_context *trace_ctx = NULL;                                 \
-    int ctx_id = context;                                                   \
+    VAContextID ctx_id = context;                                           \
                                                                             \
     pva_trace = (struct va_trace *)(((VADisplayContextP)dpy)->vatrace);     \
     if(!pva_trace)                                                          \
@@ -955,6 +955,7 @@
     unsigned int buffer_name;
     void *buffer = NULL;
     unsigned char *Y_data, *UV_data, *tmp;
+    unsigned int pixel_byte;
     VAStatus va_status;
     DPY2TRACECTX(dpy, context, VA_INVALID_ID);
 
@@ -1001,20 +1002,27 @@
     Y_data = (unsigned char*)buffer;
     UV_data = (unsigned char*)buffer + chroma_u_offset;
 
+    if (fourcc == VA_FOURCC_P010)
+        pixel_byte = 2;
+    else
+        pixel_byte = 1;
+
     tmp = Y_data + luma_stride * trace_ctx->trace_surface_yoff;
+
     for (i=0; i<trace_ctx->trace_surface_height; i++) {
         fwrite(tmp + trace_ctx->trace_surface_xoff,
                trace_ctx->trace_surface_width,
-               1, trace_ctx->trace_fp_surface);
+               pixel_byte, trace_ctx->trace_fp_surface);
         
         tmp += luma_stride;
     }
+
     tmp = UV_data + chroma_u_stride * trace_ctx->trace_surface_yoff / 2;
-    if (fourcc == VA_FOURCC_NV12) {
+    if (fourcc == VA_FOURCC_NV12 || fourcc == VA_FOURCC_P010) {
         for (i=0; i<trace_ctx->trace_surface_height/2; i++) {
             fwrite(tmp + trace_ctx->trace_surface_xoff,
                    trace_ctx->trace_surface_width,
-                   1, trace_ctx->trace_fp_surface);
+                   pixel_byte, trace_ctx->trace_fp_surface);
             
             tmp += chroma_u_stride;
         }
@@ -1134,7 +1142,7 @@
             va_TraceMsg(trace_ctx, "\t\tvalue.value.p = %p\n", 
p->value.value.p);
             if ((p->type == VASurfaceAttribExternalBufferDescriptor) && 
p->value.value.p) {
                 VASurfaceAttribExternalBuffers *tmp = 
(VASurfaceAttribExternalBuffers *) p->value.value.p;
-                int j;
+                uint32_t j;
                 
                 va_TraceMsg(trace_ctx, 
"\t\t--VASurfaceAttribExternalBufferDescriptor\n");
                 va_TraceMsg(trace_ctx, "\t\t  pixel_format=0x%08x\n", 
tmp->pixel_format);
@@ -4629,7 +4637,7 @@
     unsigned int size;
     unsigned int num_elements;
     VAProcFilterParameterBufferBase *base_filter = NULL;
-    int i;
+    unsigned int i;
 
     DPY2TRACECTX(dpy, context, VA_INVALID_ID);
 
@@ -4694,7 +4702,7 @@
 )
 {
     VAProcPipelineParameterBuffer *p = (VAProcPipelineParameterBuffer *)data;
-    int i;
+    uint32_t i;
 
     DPY2TRACECTX(dpy, context, VA_INVALID_ID);
 
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.3.0/va/va_version.h new/libva-2.4.0/va/va_version.h
--- old/libva-2.3.0/va/va_version.h     2018-10-23 15:52:51.000000000 +0200
+++ new/libva-2.4.0/va/va_version.h     2019-01-25 20:09:20.000000000 +0100
@@ -37,7 +37,7 @@
  *
  * The minor version of VA-API (2, if %VA_VERSION is 1.2.3)
  */
-#define VA_MINOR_VERSION    3
+#define VA_MINOR_VERSION    4
 
 /**
  * VA_MICRO_VERSION:
@@ -51,7 +51,7 @@
  *
  * The full version of VA-API, like 1.2.3
  */
-#define VA_VERSION          1.3.0
+#define VA_VERSION          1.4.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.3.0"
+#define VA_VERSION_S       "1.4.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.3.0/va/va_vpp.h new/libva-2.4.0/va/va_vpp.h
--- old/libva-2.3.0/va/va_vpp.h 2018-10-23 15:50:59.000000000 +0200
+++ new/libva-2.4.0/va/va_vpp.h 2019-01-25 19:00:10.000000000 +0100
@@ -436,7 +436,9 @@
 typedef enum _VAProcHighDynamicRangeMetadataType {
     VAProcHighDynamicRangeMetadataNone = 0,
     /** \brief Metadata type for HDR10. */
-    VAProcHighDynamicRangeMetadataHDR10
+    VAProcHighDynamicRangeMetadataHDR10,
+    /** \brief Number of Metadata type. */
+    VAProcHighDynamicRangeMetadataTypeCount
 } VAProcHighDynamicRangeMetadataType;
 
 /** \brief Video Processing Mode. */
@@ -703,7 +705,20 @@
     uint8_t reserved[3];
 } VAProcColorProperties;
 
-/** \berief Describes High Dynamic Range Meta Data for HDR10. */
+/** \berief Describes High Dynamic Range Meta Data for HDR10.
+ *
+ *  Specifies the colour volume(the colour primaries, white point and 
luminance range) of
+ *  a display considered to be the mastering display for the associated video 
content -e.g.,
+ *  the colour volume of a display that was used for viewing while authoring 
the video content.
+ *  See ITU-T H.265 D.3.27 Mastering display colour volume SEI message 
semantics.
+ *
+ *  Specifies upper bounds for the nominal light level of the content. See 
ITU-T H.265 D.3.35
+ *  Content light level information SEI message semantics.
+ *
+ *  This structure can be used to indicate the HDR10 metadata for 1) the 
content which was authored;
+ *  2) the display on which the content will be presented. If it is for 
display, max_content_light_level
+ *  and max_pic_average_light_level are ignored.
+ */
 typedef struct _VAHdrMetaDataHDR10
 {
     /**
@@ -1217,6 +1232,22 @@
     uint16_t            va_reserved[VA_PADDING_HIGH];
 } VAProcFilterParameterBufferHVSNoiseReduction;
 
+/** \brief High Dynamic Range(HDR) Tone Mapping filter parametrization. */
+typedef struct _VAProcFilterParameterBufferHDRToneMapping {
+    /** \brief Filter type. Shall be set to 
#VAProcFilterHighDynamicRangeToneMapping.*/
+    VAProcFilterType    type;
+    /**
+     *  \brief High Dynamic Range metadata, could be HDR10 etc.
+     *
+     *  This metadata is mainly for the input surface. Given that dynamic 
metadata is changing
+     *  on frame-by-frame or scene-by-scene basis for HDR10 plus, 
differentiate the metadata
+     *  for the input and output.
+     */
+    VAHdrMetaData       data;
+    /** \brief Reserved bytes for future use, must be zero */
+    uint32_t            va_reserved[VA_PADDING_HIGH];
+} VAProcFilterParameterBufferHDRToneMapping;
+
 /**
  * \brief Default filter cap specification (single range value).
  *
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.3.0/va/wayland/va_backend_wayland.h 
new/libva-2.4.0/va/wayland/va_backend_wayland.h
--- old/libva-2.3.0/va/wayland/va_backend_wayland.h     2018-10-23 
15:50:59.000000000 +0200
+++ new/libva-2.4.0/va/wayland/va_backend_wayland.h     2019-01-25 
19:00:10.000000000 +0100
@@ -64,8 +64,16 @@
     /** \brief Indicate whether buffer sharing with prime fd is supported. */
     unsigned int has_prime_sharing;
 
+    /**
+     * Pointer to an implementation of struct wl_interface
+     *
+     * It is set by libva-wayland when a context is created, then the backend
+     * driver may reuse it.
+     */
+    const void *wl_interface;
+
     /** \brief Reserved bytes for future use, must be zero */
-    unsigned long reserved[8];
+    unsigned long reserved[7];
 };
 
 #endif /* VA_BACKEND_WAYLAND_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.3.0/va/wayland/va_wayland_drm.c 
new/libva-2.4.0/va/wayland/va_wayland_drm.c
--- old/libva-2.3.0/va/wayland/va_wayland_drm.c 2018-10-23 15:50:59.000000000 
+0200
+++ new/libva-2.4.0/va/wayland/va_wayland_drm.c 2019-01-25 19:00:10.000000000 
+0100
@@ -136,6 +136,7 @@
     struct VADriverVTableWayland *vtable = ctx->vtable_wayland;
 
     vtable->has_prime_sharing = 0;
+    vtable->wl_interface = NULL;
 
     wl_drm_ctx->is_authenticated = 0;
 
@@ -222,6 +223,8 @@
     struct VADriverVTableWayland *vtable = ctx->vtable_wayland;
     struct wl_display *wrapped_display = NULL;
 
+    vtable->wl_interface = NULL;
+
     wl_drm_ctx = malloc(sizeof(*wl_drm_ctx));
     if (!wl_drm_ctx) {
         va_wayland_error("could not allocate wl_drm_ctx");
@@ -300,6 +303,7 @@
         goto end;
     }
 
+    vtable->wl_interface = &wl_drm_interface;
     result = true;
 
 end:

++++++ libva-2.3.0.tar.bz2.sha1sum -> libva-2.4.0.tar.bz2.sha1sum ++++++
--- /work/SRC/openSUSE:Factory/libva/libva-2.3.0.tar.bz2.sha1sum        
2018-11-06 15:24:48.772574288 +0100
+++ /work/SRC/openSUSE:Factory/.libva.new.28833/libva-2.4.0.tar.bz2.sha1sum     
2019-02-01 11:43:14.752688044 +0100
@@ -1 +1 @@
-e1138529355cce78fa2edc7c5b1c5aeb40dd0ce5  libva-2.3.0.tar.bz2
+2e7b69ebb615d039b9253d4708eeec889b812dbf  libva-2.4.0.tar.bz2


Reply via email to