Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package libvdpau for openSUSE:Factory 
checked in at 2022-03-11 21:41:07
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libvdpau (Old)
 and      /work/SRC/openSUSE:Factory/.libvdpau.new.25692 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libvdpau"

Fri Mar 11 21:41:07 2022 rev:38 rq:960927 version:1.5

Changes:
--------
--- /work/SRC/openSUSE:Factory/libvdpau/libvdpau.changes        2021-01-19 
15:58:53.763080838 +0100
+++ /work/SRC/openSUSE:Factory/.libvdpau.new.25692/libvdpau.changes     
2022-03-11 21:41:12.518067954 +0100
@@ -1,0 +2,19 @@
+Thu Mar 10 17:27:33 UTC 2022 - Bj??rn Lie <bjorn....@gmail.com>
+
+- Add U_Support-AV1.patch: Add support for AV1 in vdpauinfo.
+- Minor tweaks to spec.
+
+-------------------------------------------------------------------
+Wed Mar  9 11:42:53 UTC 2022 - Bj??rn Lie <bjorn....@gmail.com>
+
+- Update to version 1.5:
+  * Add AV1 decode support in VDPAU API
+  * Addition of comma and removing the extra braces
+  * Add tracing for HEVCRangeExt picture info
+  * Add tracing for VP9 picture info
+- Also update vdpauinfo to version 1.4
+- Drop patches fixed upstream:
+  * c5a8e7c6c8b4b36a0e4c9a4369404519262a3256.patch
+  * e82dc4bdbb0db3ffa8c78275902738eb63aa5ca8.patch
+
+-------------------------------------------------------------------

Old:
----
  c5a8e7c6c8b4b36a0e4c9a4369404519262a3256.patch
  e82dc4bdbb0db3ffa8c78275902738eb63aa5ca8.patch
  libvdpau-1.4.tar.bz2
  vdpauinfo-1.3.tar.bz2

New:
----
  U_Support-AV1.patch
  libvdpau-1.5.tar.bz2
  vdpauinfo-1.4.tar.bz2

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

Other differences:
------------------
++++++ libvdpau.spec ++++++
--- /var/tmp/diff_new_pack.g8zP8V/_old  2022-03-11 21:41:13.114068411 +0100
+++ /var/tmp/diff_new_pack.g8zP8V/_new  2022-03-11 21:41:13.122068417 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package libvdpau
 #
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -20,22 +20,20 @@
   %define _distconfdir %{_prefix}%{_sysconfdir}
 %endif
 Name:           libvdpau
-Version:        1.4
+Version:        1.5
 Release:        0
 Summary:        VDPAU wrapper and trace libraries
 License:        MIT
 Group:          Development/Libraries/C and C++
 URL:            https://www.freedesktop.org/wiki/Software/VDPAU/
 Source:         
https://gitlab.freedesktop.org/vdpau/libvdpau/-/archive/%{version}/%{name}-%{version}.tar.bz2
-Source1:        
https://gitlab.freedesktop.org/vdpau/vdpauinfo/-/archive/vdpauinfo-1.3/vdpauinfo-1.3.tar.bz2
+Source1:        
https://gitlab.freedesktop.org/vdpau/vdpauinfo/-/archive/1.4/vdpauinfo-1.4.tar.bz2
 Source2:        README
 Source99:       baselibs.conf
 Source100:      %{name}-rpmlintrc
 Patch0:         n_UsrEtc.patch
-# PATCH-FIX-UPSTREAM
-Patch1:         
https://gitlab.freedesktop.org/vdpau/libvdpau/-/commit/c5a8e7c6c8b4b36a0e4c9a4369404519262a3256.patch
-# PATCH-FIX-UPSTREAM
-Patch2:         
https://gitlab.freedesktop.org/vdpau/libvdpau/-/commit/e82dc4bdbb0db3ffa8c78275902738eb63aa5ca8.patch
+Patch1:         U_Support-AV1.patch
+
 BuildRequires:  autoconf
 BuildRequires:  automake
 BuildRequires:  doxygen
@@ -90,7 +88,10 @@
 
 %prep
 %setup -q -b1
-%autopatch -p1
+%patch0 -p1
+pushd ../vdpauinfo-*
+%patch1 -p1
+popd
 
 %build
 %meson
@@ -108,7 +109,7 @@
 VDPAU_CFLAGS=-I%{buildroot}%{_includedir} \
 VDPAU_LIBS="-L%{buildroot}/%{_libdir} -lvdpau -lX11"
 
-make %{?_smp_mflags}
+%make_build
 %make_install
 popd
 
@@ -119,7 +120,9 @@
 
 %files -n libvdpau1
 %dir %{_libdir}/vdpau
+%if 0%{?suse_version} < 1550
 %dir %{_distconfdir}
+%endif
 %{_bindir}/vdpauinfo
 %{_libdir}/libvdpau.so.*
 %{_distconfdir}/vdpau_wrapper.cfg

++++++ U_Support-AV1.patch ++++++
>From da66af25aa327d21179d478f3a6d8c03b6c7f574 Mon Sep 17 00:00:00 2001
From: ManojGuptaBonda <mbo...@nvidia.com>
Date: Tue, 8 Feb 2022 23:25:04 +0530
Subject: [PATCH] Add support for AV1 in vdpauinfo

---
 vdpauinfo.cpp | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/vdpauinfo.cpp b/vdpauinfo.cpp
index 10dbdf3..cf83b4a 100644
--- a/vdpauinfo.cpp
+++ b/vdpauinfo.cpp
@@ -376,6 +376,9 @@ Desc decoder_profiles[] = {
 {"HEVC_MAIN_444",               VDP_DECODER_PROFILE_HEVC_MAIN_444},
 {"HEVC_MAIN_444_10",            VDP_DECODER_PROFILE_HEVC_MAIN_444_10},
 {"HEVC_MAIN_444_12",            VDP_DECODER_PROFILE_HEVC_MAIN_444_12},
+{"AV1_MAIN",                    VDP_DECODER_PROFILE_AV1_MAIN},
+{"AV1_HIGH",                    VDP_DECODER_PROFILE_AV1_HIGH},
+{"AV1_PROFESSIONAL",            VDP_DECODER_PROFILE_AV1_PROFESSIONAL},
 
 };
 const size_t decoder_profile_count = sizeof(decoder_profiles)/sizeof(Desc);
-- 
GitLab


++++++ libvdpau-1.4.tar.bz2 -> libvdpau-1.5.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libvdpau-1.4/.gitlab-ci.yml 
new/libvdpau-1.5/.gitlab-ci.yml
--- old/libvdpau-1.4/.gitlab-ci.yml     2020-04-09 16:45:23.000000000 +0200
+++ new/libvdpau-1.5/.gitlab-ci.yml     2022-03-07 06:13:23.000000000 +0100
@@ -1,4 +1,4 @@
-image: archlinux/base:latest
+image: archlinux:latest
 
 stages:
  - build
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libvdpau-1.4/AUTHORS new/libvdpau-1.5/AUTHORS
--- old/libvdpau-1.4/AUTHORS    2020-04-09 16:45:23.000000000 +0200
+++ new/libvdpau-1.5/AUTHORS    2022-03-07 06:13:23.000000000 +0100
@@ -7,3 +7,4 @@
 Dave Airlie
 Emil Velikov
 Reimar D??ffinger
+Manoj Bonda
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libvdpau-1.4/include/vdpau/vdpau.h 
new/libvdpau-1.5/include/vdpau/vdpau.h
--- old/libvdpau-1.4/include/vdpau/vdpau.h      2020-04-09 16:45:23.000000000 
+0200
+++ new/libvdpau-1.5/include/vdpau/vdpau.h      2022-03-07 06:13:23.000000000 
+0100
@@ -2685,6 +2685,12 @@
 #define VDP_DECODER_PROFILE_HEVC_MAIN_444_10            
((VdpDecoderProfile)105)
 /** \hideinitializer */
 #define VDP_DECODER_PROFILE_HEVC_MAIN_444_12            
((VdpDecoderProfile)106)
+/** \hideinitializer */
+#define VDP_DECODER_PROFILE_AV1_MAIN                    
((VdpDecoderProfile)107)
+/** \hideinitializer */
+#define VDP_DECODER_PROFILE_AV1_HIGH                    
((VdpDecoderProfile)108)
+/** \hideinitializer */
+#define VDP_DECODER_PROFILE_AV1_PROFESSIONAL            
((VdpDecoderProfile)109)
 
 /** \hideinitializer */
 #define VDP_DECODER_LEVEL_MPEG1_NA 0
@@ -2782,6 +2788,55 @@
 /** \hideinitializer */
 #define VDP_DECODER_LEVEL_VP9_L1 1
 
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_2_0 0
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_2_1 1
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_2_2 2
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_2_3 3
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_3_0 4
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_3_1 5
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_3_2 6
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_3_3 7
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_4_0 8
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_4_1 9
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_4_2 10
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_4_3 11
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_5_0 12
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_5_1 13
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_5_2 14
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_5_3 15
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_6_0 16
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_6_1 17
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_6_2 18
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_6_3 19
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_7_0 20
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_7_1 21
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_7_2 22
+/** \hideinitializer */
+#define VDP_DECODER_LEVEL_AV1_7_3 23
+
 /**
  * The VDPAU H.265/HEVC decoder levels correspond to the values of
  * general_level_idc as described in the H.265 Specification, Annex A,
@@ -3652,6 +3707,174 @@
 
 } VdpPictureInfoHEVC444;
 
+
+/**
+ * \brief Picture parameter information for an AV1 picture.
+ *
+ * Note: References to bitstream fields below may refer to data literally 
parsed
+ * from the bitstream, or derived from the bitstream using a mechanism 
described
+ * in the specification.
+ */
+typedef struct
+{
+     unsigned int width;
+     unsigned int height;
+
+     unsigned int   frame_offset;                        // defined as 
order_hint in AV1 specification
+
+     // sequence header
+     unsigned int   profile;                         // 0 = profile0, 1 = 
profile1, 2 = profile2
+     unsigned int   use_128x128_superblock;          // superblock size 
0:64x64, 1: 128x128
+     unsigned int   subsampling_x;                   // (subsampling_x, _y) 
1,1 = 420, 1,0 = 422, 0,0 = 444
+     unsigned int   subsampling_y;
+     unsigned int   mono_chrome;                     // for monochrome 
content, mono_chrome = 1 and (subsampling_x, _y) should be 1,1
+     unsigned int   bit_depth_minus8;                // bit depth minus 8
+     unsigned int   enable_filter_intra;             // tool enable in seq 
level, 0 : disable 1: frame header control
+     unsigned int   enable_intra_edge_filter;        // intra edge filtering 
process, 0 : disable 1: enabled
+     unsigned int   enable_interintra_compound;      // interintra, 0 : not 
present 1: present
+     unsigned int   enable_masked_compound;          // 1: mode info for inter 
blocks may contain the syntax element compound_type.
+                                                         // 0: syntax element 
compound_type will not be present
+     unsigned int   enable_dual_filter;              // vertical and horiz 
filter selection, 1: enable and 0: disable
+     unsigned int   enable_order_hint;               // order hint, and 
related tools, 1: enable and 0: disable
+     unsigned int   order_hint_bits_minus1;          // is used to compute 
OrderHintBits
+     unsigned int   enable_jnt_comp;                 // joint compound modes, 
1: enable and 0: disable
+     unsigned int   enable_superres;                 // superres in seq level, 
0 : disable 1: frame level control
+     unsigned int   enable_cdef;                     // cdef filtering in seq 
level, 0 : disable 1: frame level control
+     unsigned int   enable_restoration;              // loop restoration 
filtering in seq level, 0 : disable 1: frame level control
+     unsigned int   enable_fgs;                      // defined as 
film_grain_params_present in AV1 specification
+
+     // frame header
+     unsigned int   frame_type;                     // 0:Key frame, 1:Inter 
frame, 2:intra only, 3:s-frame
+     unsigned int   show_frame;                     // show_frame = 1 implies 
that frame should be immediately output once decoded
+     unsigned int   disable_cdf_update;              // CDF update during 
symbol decoding, 1: disabled, 0: enabled
+     unsigned int   allow_screen_content_tools;      // 1: intra blocks may 
use palette encoding, 0: palette encoding is never used
+     unsigned int   force_integer_mv;                // 1: motion vectors will 
always be integers, 0: can contain fractional bits
+     unsigned int   coded_denom;                     // coded_denom of the 
superres scale as specified in AV1 specification
+     unsigned int   allow_intrabc;                   // 1: intra block copy 
may be used, 0: intra block copy is not allowed
+     unsigned int   allow_high_precision_mv;         // 1/8 precision mv enable
+     unsigned int   interp_filter;                   // interpolation filter. 
Refer to section 6.8.9 of the AV1 specification Version 1.0.0 with Errata 1
+     unsigned int   switchable_motion_mode ;          // defined as 
is_motion_mode_switchable in AV1 specification
+     unsigned int   use_ref_frame_mvs ;               // 1: current frame can 
use the previous frame mv information, 0: will not use.
+     unsigned int   disable_frame_end_update_cdf ;    // 1: indicates that the 
end of frame CDF update is disabled
+     unsigned int   delta_q_present ;                 // quantizer index delta 
values are present in the block level
+     unsigned int   delta_q_res;                     // left shift which 
should be applied to decoded quantizer index delta values
+     unsigned int   using_qmatrix ;                   // 1: quantizer matrix 
will be used to compute quantizers
+     unsigned int   coded_lossless ;                  // 1: all segments use 
lossless coding
+     unsigned int   use_superres ;                    // 1: superres enabled 
for frame
+     unsigned int   tx_mode;                         // 0: 
ONLY4x4,1:LARGEST,2:SELECT
+     unsigned int   reference_mode ;                  // 0: SINGLE, 1: SELECT
+     unsigned int   allow_warped_motion ;             // 1: 
allow_warped_motion may be present, 0: allow_warped_motion will not be present
+     unsigned int   reduced_tx_set ;                  // 1: frame is 
restricted to subset of the full set of transform types, 0: no such restriction
+     unsigned int   skip_mode ;                       // 1: most of the mode 
info is skipped, 0: mode info is not skipped
+
+     // tiling info
+     unsigned int   num_tile_cols;                   // number of tiles across 
the frame., max is 64
+     unsigned int   num_tile_rows;                   // number of tiles down 
the frame., max is 64
+     unsigned int   context_update_tile_id;          // specifies which tile 
to use for the CDF update
+     unsigned short tile_widths[64];                 // Width of each column 
in superblocks
+     unsigned short tile_heights[64];                // height of each row in 
superblocks
+     unsigned int   tile_info[256 * 2];              //AV1_MAX_TILES = 256
+
+     // CDEF - refer to section 6.10.14 of the AV1 specification Version 1.0.0 
with Errata 1
+     unsigned char  cdef_damping_minus_3;            // controls the amount of 
damping in the deringing filter
+     unsigned char  cdef_bits;                       // the number of bits 
needed to specify which CDEF filter to apply
+     unsigned char  cdef_y_strength[8];                  // 0-3 bits: 
y_pri_strength, 4-7 bits y_sec_strength
+     unsigned char  cdef_uv_strength[8];                 // 0-3 bits: 
uv_pri_strength, 4-7 bits uv_sec_strength
+
+     // SkipModeFrames
+     unsigned char   SkipModeFrame0;                 // specifies the frames 
to use for compound prediction when skip_mode is equal to 1.
+     unsigned char   SkipModeFrame1;
+
+     // qp information - refer to section 6.8.11 of the AV1 specification 
Version 1.0.0 with Errata 1
+     unsigned char  base_qindex;                         // indicates the base 
frame qindex. Defined as base_q_idx in AV1 specification
+     char           qp_y_dc_delta_q;                     // indicates the Y DC 
quantizer relative to base_q_idx. Defined as DeltaQYDc in AV1 specification
+     char           qp_u_dc_delta_q;                     // indicates the U DC 
quantizer relative to base_q_idx. Defined as DeltaQUDc in AV1 specification
+     char           qp_v_dc_delta_q;                     // indicates the V DC 
quantizer relative to base_q_idx. Defined as DeltaQVDc in AV1 specification
+     char           qp_u_ac_delta_q;                     // indicates the U AC 
quantizer relative to base_q_idx. Defined as DeltaQUAc in AV1 specification
+     char           qp_v_ac_delta_q;                     // indicates the V AC 
quantizer relative to base_q_idx. Defined as DeltaQVAc in AV1 specification
+     unsigned char  qm_y;                                // specifies the 
level in the quantizer matrix that should be used for luma plane decoding
+     unsigned char  qm_u;                                // specifies the 
level in the quantizer matrix that should be used for chroma U plane decoding
+     unsigned char  qm_v;                                // specifies the 
level in the quantizer matrix that should be used for chroma V plane decoding
+
+     // segmentation - refer to section 6.8.13 of the AV1 specification 
Version 1.0.0 with Errata 1
+     unsigned char segmentation_enabled ;             // 1 indicates that this 
frame makes use of the segmentation tool
+     unsigned char segmentation_update_map ;          // 1 indicates that the 
segmentation map are updated during the decoding of this frame
+     unsigned char segmentation_update_data ;         // 1 indicates that new 
parameters are about to be specified for each segment
+     unsigned char segmentation_temporal_update ;     // 1 indicates that the 
updates to the segmentation map are coded relative to the existing segmentation 
map
+     short         segmentation_feature_data[8][8];      // specifies the 
feature data for a segment feature
+     unsigned char segmentation_feature_mask[8];         // indicates that the 
corresponding feature is unused or feature value is coded
+
+     // loopfilter - refer to section 6.8.10 of the AV1 specification Version 
1.0.0 with Errata 1
+     unsigned char  loop_filter_level[2];                // contains loop 
filter strength values
+     unsigned char  loop_filter_level_u;                 // loop filter 
strength value of U plane
+     unsigned char  loop_filter_level_v;                 // loop filter 
strength value of V plane
+     unsigned char  loop_filter_sharpness;               // indicates the 
sharpness level
+     char           loop_filter_ref_deltas[8];           // contains the 
adjustment needed for the filter level based on the chosen reference frame
+     char           loop_filter_mode_deltas[2];          // contains the 
adjustment needed for the filter level based on the chosen mode
+     unsigned char  loop_filter_delta_enabled ;       // indicates that the 
filter level depends on the mode and reference frame used to predict a block
+     unsigned char  loop_filter_delta_update ;        // indicates that 
additional syntax elements are present that specify which mode and
+                                                         // reference frame 
deltas are to be updated
+     unsigned char  delta_lf_present ;                // specifies whether 
loop filter delta values are present in the block level
+     unsigned char  delta_lf_res;                    // specifies the left 
shift to apply to the decoded loop filter values
+     unsigned char  delta_lf_multi  ;                 // separate loop filter 
deltas for Hy,Vy,U,V edges
+     unsigned char  reserved4_2bits;                 // reserved bits; must be 
set to 0
+
+     // restoration - refer to section 6.10.15 of the AV1 specification 
Version 1.0.0 with Errata 1
+     unsigned char lr_unit_size[3];                     // specifies the size 
of loop restoration units: 0: 32, 1: 64, 2: 128, 3: 256
+     unsigned char lr_type[3] ;                         // used to compute 
FrameRestorationType
+
+     // reference frames
+     unsigned int primary_ref_frame;                    // specifies which 
reference frame contains the CDF values and other state that should be
+                                                         // loaded at the 
start of the frame
+     unsigned int ref_frame_map[8];                     // frames in dpb that 
can be used as reference for current or future frames
+
+     unsigned char temporal_layer_id;                // temporal layer id
+     unsigned char spatial_layer_id;                 // spatial layer id
+
+     // ref frame list
+     struct
+     {
+         unsigned int   width;
+         unsigned int   height;
+         unsigned int  index;
+     } ref_frame[7];                                     // frames used as 
reference frame for current frame.
+
+     // global motion
+     struct {
+         unsigned char invalid ;
+         unsigned char wmtype;                       // defined as GmType in 
AV1 specification
+         int           wmmat[6];                         // defined as 
gm_params[] in AV1 specification
+     } global_motion[7];                                 // global motion 
params for reference frames
+
+     // film grain params - refer to section 6.8.20 of the AV1 specification 
Version 1.0.0 with Errata 1
+     unsigned short apply_grain ;
+     unsigned short overlap_flag ;
+     unsigned short scaling_shift_minus8;
+     unsigned short chroma_scaling_from_luma ;
+     unsigned short ar_coeff_lag;
+     unsigned short ar_coeff_shift_minus6;
+     unsigned short grain_scale_shift;
+     unsigned short clip_to_restricted_range ;
+     unsigned char  num_y_points;
+     unsigned char  scaling_points_y[14][2];
+     unsigned char  num_cb_points;
+     unsigned char  scaling_points_cb[10][2];
+     unsigned char  num_cr_points;
+     unsigned char  scaling_points_cr[10][2];
+     unsigned short random_seed;
+     short          ar_coeffs_y[24];
+     short          ar_coeffs_cb[25];
+     short          ar_coeffs_cr[25];
+     unsigned char  cb_mult;
+     unsigned char  cb_luma_mult;
+     short          cb_offset;
+     unsigned char  cr_mult;
+     unsigned char  cr_luma_mult;
+     short          cr_offset;
+
+} VdpPictureInfoAV1;
+
+
 /**
  * \brief Picture parameter information for HEVC FormatRangeExtensions picture.
  *
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libvdpau-1.4/meson.build new/libvdpau-1.5/meson.build
--- old/libvdpau-1.4/meson.build        2020-04-09 16:45:23.000000000 +0200
+++ new/libvdpau-1.5/meson.build        2022-03-07 06:13:23.000000000 +0100
@@ -51,7 +51,7 @@
 import('pkgconfig').generate(
     name : 'VDPAU',
     filebase : 'vdpau',
-    version : '1.4',
+    version : '1.5',
     description : 'The Video Decode and Presentation API for UNIX',
     libraries : '-L${libdir} -lvdpau',
     variables : 'moduledir=' + moduledir,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libvdpau-1.4/trace/vdpau_trace.cpp 
new/libvdpau-1.5/trace/vdpau_trace.cpp
--- old/libvdpau-1.4/trace/vdpau_trace.cpp      2020-04-09 16:45:23.000000000 
+0200
+++ new/libvdpau-1.5/trace/vdpau_trace.cpp      2022-03-07 06:13:23.000000000 
+0100
@@ -488,15 +488,252 @@
     case VDP_DECODER_PROFILE_HEVC_MAIN:
     case VDP_DECODER_PROFILE_HEVC_MAIN_10:
     case VDP_DECODER_PROFILE_HEVC_MAIN_STILL:
+        {
+            VdpPictureInfoHEVC const * picture_info_hevc =
+                (VdpPictureInfoHEVC const *)picture_info;
+
+            fprintf(
+                _vdp_cap_data.fp,
+                "{%u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, 
{",
+                (uint32_t)picture_info_hevc->chroma_format_idc,
+                (uint32_t)picture_info_hevc->separate_colour_plane_flag,
+                (uint32_t)picture_info_hevc->pic_width_in_luma_samples,
+                (uint32_t)picture_info_hevc->pic_height_in_luma_samples,
+                (uint32_t)picture_info_hevc->bit_depth_luma_minus8,
+                (uint32_t)picture_info_hevc->bit_depth_chroma_minus8,
+                (uint32_t)picture_info_hevc->log2_max_pic_order_cnt_lsb_minus4,
+                (uint32_t)picture_info_hevc->sps_max_dec_pic_buffering_minus1,
+                
(uint32_t)picture_info_hevc->log2_min_luma_coding_block_size_minus3,
+                
(uint32_t)picture_info_hevc->log2_diff_max_min_luma_coding_block_size,
+                
(uint32_t)picture_info_hevc->log2_min_transform_block_size_minus2,
+                
(uint32_t)picture_info_hevc->log2_diff_max_min_transform_block_size,
+                
(uint32_t)picture_info_hevc->max_transform_hierarchy_depth_inter,
+                
(uint32_t)picture_info_hevc->max_transform_hierarchy_depth_intra,
+                (uint32_t)picture_info_hevc->scaling_list_enabled_flag
+            );
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_hevc->ScalingList4x4); ++i) {
+                fputs((i == 0) ? "{" : "}, {", _vdp_cap_data.fp);
+                for (uint32_t j = 0; j < 
_VDP_TRACE_ARSIZE(picture_info_hevc->ScalingList4x4[0]); ++j) {
+                    fprintf(
+                        _vdp_cap_data.fp,
+                        "%s%u",
+                        (j == 0) ? "" : ", ",
+                        (uint32_t)picture_info_hevc->ScalingList4x4[i][j]
+                    );
+                }
+            }
+            fputs("}}, {", _vdp_cap_data.fp);
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_hevc->ScalingList8x8); ++i) {
+                fputs((i == 0) ? "{" : "}, {", _vdp_cap_data.fp);
+                for (uint32_t j = 0; j < 
_VDP_TRACE_ARSIZE(picture_info_hevc->ScalingList8x8[0]); ++j) {
+                    fprintf(
+                        _vdp_cap_data.fp,
+                        "%s%u",
+                        (j == 0) ? "" : ", ",
+                        (uint32_t)picture_info_hevc->ScalingList8x8[i][j]
+                    );
+                }
+            }
+            fputs("}}, {", _vdp_cap_data.fp);
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_hevc->ScalingList16x16); ++i) {
+                fputs((i == 0) ? "{" : "}, {", _vdp_cap_data.fp);
+                for (uint32_t j = 0; j < 
_VDP_TRACE_ARSIZE(picture_info_hevc->ScalingList16x16[0]); ++j) {
+                    fprintf(
+                        _vdp_cap_data.fp,
+                        "%s%u",
+                        (j == 0) ? "" : ", ",
+                        (uint32_t)picture_info_hevc->ScalingList16x16[i][j]
+                    );
+                }
+            }
+            fputs("}}, {", _vdp_cap_data.fp);
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_hevc->ScalingList32x32); ++i) {
+                fputs((i == 0) ? "{" : "}, {", _vdp_cap_data.fp);
+                for (uint32_t j = 0; j < 
_VDP_TRACE_ARSIZE(picture_info_hevc->ScalingList32x32[0]); ++j) {
+                    fprintf(
+                        _vdp_cap_data.fp,
+                        "%s%u",
+                        (j == 0) ? "" : ", ",
+                        (uint32_t)picture_info_hevc->ScalingList32x32[i][j]
+                    );
+                }
+            }
+            fputs("}}, {", _vdp_cap_data.fp);
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_hevc->ScalingListDCCoeff16x16); ++i) {
+                fprintf(
+                    _vdp_cap_data.fp,
+                    "%s%u",
+                    (i == 0) ? "" : ", ",
+                    (uint32_t)picture_info_hevc->ScalingListDCCoeff16x16[i]
+                );
+            }
+            fputs("}, {", _vdp_cap_data.fp);
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_hevc->ScalingListDCCoeff32x32); ++i) {
+                fprintf(
+                    _vdp_cap_data.fp,
+                    "%s%u",
+                    (i == 0) ? "" : ", ",
+                    (uint32_t)picture_info_hevc->ScalingListDCCoeff32x32[i]
+                );
+            }
+            fputs("}, ", _vdp_cap_data.fp);
+            fprintf(
+                _vdp_cap_data.fp,
+                "%u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, 
%u, %u, %u, %u, %u, %d, %u, %u, %u, %u, %d, %d, %u, %u, %u, %u, %u, %u, %u, %u, 
%u, {",
+                (uint32_t)picture_info_hevc->amp_enabled_flag,
+                
(uint32_t)picture_info_hevc->sample_adaptive_offset_enabled_flag,
+                (uint32_t)picture_info_hevc->pcm_enabled_flag,
+                (uint32_t)picture_info_hevc->pcm_sample_bit_depth_luma_minus1,
+                
(uint32_t)picture_info_hevc->pcm_sample_bit_depth_chroma_minus1,
+                
(uint32_t)picture_info_hevc->log2_min_pcm_luma_coding_block_size_minus3,
+                
(uint32_t)picture_info_hevc->log2_diff_max_min_pcm_luma_coding_block_size,
+                (uint32_t)picture_info_hevc->pcm_loop_filter_disabled_flag,
+                (uint32_t)picture_info_hevc->num_short_term_ref_pic_sets,
+                (uint32_t)picture_info_hevc->long_term_ref_pics_present_flag,
+                (uint32_t)picture_info_hevc->num_long_term_ref_pics_sps,
+                (uint32_t)picture_info_hevc->sps_temporal_mvp_enabled_flag,
+                
(uint32_t)picture_info_hevc->strong_intra_smoothing_enabled_flag,
+                
(uint32_t)picture_info_hevc->dependent_slice_segments_enabled_flag,
+                (uint32_t)picture_info_hevc->output_flag_present_flag,
+                (uint32_t)picture_info_hevc->num_extra_slice_header_bits,
+                (uint32_t)picture_info_hevc->sign_data_hiding_enabled_flag,
+                (uint32_t)picture_info_hevc->cabac_init_present_flag,
+                
(uint32_t)picture_info_hevc->num_ref_idx_l0_default_active_minus1,
+                
(uint32_t)picture_info_hevc->num_ref_idx_l1_default_active_minus1,
+                (int32_t)picture_info_hevc->init_qp_minus26,
+                (uint32_t)picture_info_hevc->constrained_intra_pred_flag,
+                (uint32_t)picture_info_hevc->transform_skip_enabled_flag,
+                (uint32_t)picture_info_hevc->cu_qp_delta_enabled_flag,
+                (uint32_t)picture_info_hevc->diff_cu_qp_delta_depth,
+                (int32_t)picture_info_hevc->pps_cb_qp_offset,
+                (int32_t)picture_info_hevc->pps_cr_qp_offset,
+                
(uint32_t)picture_info_hevc->pps_slice_chroma_qp_offsets_present_flag,
+                (uint32_t)picture_info_hevc->weighted_pred_flag,
+                (uint32_t)picture_info_hevc->weighted_bipred_flag,
+                (uint32_t)picture_info_hevc->transquant_bypass_enabled_flag,
+                (uint32_t)picture_info_hevc->tiles_enabled_flag,
+                (uint32_t)picture_info_hevc->entropy_coding_sync_enabled_flag,
+                (uint32_t)picture_info_hevc->num_tile_columns_minus1,
+                (uint32_t)picture_info_hevc->num_tile_rows_minus1,
+                (uint32_t)picture_info_hevc->uniform_spacing_flag
+            );
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_hevc->column_width_minus1); ++i) {
+                fprintf(
+                    _vdp_cap_data.fp,
+                    "%s%u",
+                    (i == 0) ? "" : ", ",
+                    (uint32_t)picture_info_hevc->column_width_minus1[i]
+                );
+            }
+            fputs("}, {", _vdp_cap_data.fp);
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_hevc->row_height_minus1); ++i) {
+                fprintf(
+                    _vdp_cap_data.fp,
+                    "%s%u",
+                    (i == 0) ? "" : ", ",
+                    (uint32_t)picture_info_hevc->row_height_minus1[i]
+                );
+            }
+            fputs("}, ", _vdp_cap_data.fp);
+            fprintf(
+                _vdp_cap_data.fp,
+                "%u, %u, %u, %u, %u, %d, %d, %u, %u, %u, %u, %u, %u, %u, %u, 
%u, %u, %d, {",
+                
(uint32_t)picture_info_hevc->loop_filter_across_tiles_enabled_flag,
+                
(uint32_t)picture_info_hevc->pps_loop_filter_across_slices_enabled_flag,
+                
(uint32_t)picture_info_hevc->deblocking_filter_control_present_flag,
+                
(uint32_t)picture_info_hevc->deblocking_filter_override_enabled_flag,
+                
(uint32_t)picture_info_hevc->pps_deblocking_filter_disabled_flag,
+                (int32_t)picture_info_hevc->pps_beta_offset_div2,
+                (int32_t)picture_info_hevc->pps_tc_offset_div2,
+                (uint32_t)picture_info_hevc->lists_modification_present_flag,
+                (uint32_t)picture_info_hevc->log2_parallel_merge_level_minus2,
+                
(uint32_t)picture_info_hevc->slice_segment_header_extension_present_flag,
+                (uint32_t)picture_info_hevc->IDRPicFlag,
+                (uint32_t)picture_info_hevc->RAPPicFlag,
+                (uint32_t)picture_info_hevc->CurrRpsIdx,
+                (uint32_t)picture_info_hevc->NumPocTotalCurr,
+                (uint32_t)picture_info_hevc->NumDeltaPocsOfRefRpsIdx,
+                
(uint32_t)picture_info_hevc->NumShortTermPictureSliceHeaderBits,
+                (uint32_t)picture_info_hevc->NumLongTermPictureSliceHeaderBits,
+                (int32_t)picture_info_hevc->CurrPicOrderCntVal
+            );
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_hevc->RefPics); ++i) {
+                fprintf(
+                    _vdp_cap_data.fp,
+                    "%s%u",
+                    (i == 0) ? "" : ", ",
+                    (uint32_t)picture_info_hevc->RefPics[i]
+                );
+            }
+            fputs("}, {", _vdp_cap_data.fp);
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_hevc->PicOrderCntVal); ++i) {
+                fprintf(
+                    _vdp_cap_data.fp,
+                    "%s%d",
+                    (i == 0) ? "" : ", ",
+                    (int32_t)picture_info_hevc->PicOrderCntVal[i]
+                );
+            }
+            fputs("}, {", _vdp_cap_data.fp);
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_hevc->IsLongTerm); ++i) {
+                fprintf(
+                    _vdp_cap_data.fp,
+                    "%s%u",
+                    (i == 0) ? "" : ", ",
+                    (uint32_t)picture_info_hevc->IsLongTerm[i]
+                );
+            }
+            fputs("}, ", _vdp_cap_data.fp);
+            fprintf(
+                _vdp_cap_data.fp,
+                "%u, %u, %u, {",
+                (uint32_t)picture_info_hevc->NumPocStCurrBefore,
+                (uint32_t)picture_info_hevc->NumPocStCurrAfter,
+                (uint32_t)picture_info_hevc->NumPocLtCurr
+            );
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_hevc->RefPicSetStCurrBefore); ++i) {
+                fprintf(
+                    _vdp_cap_data.fp,
+                    "%s%u",
+                    (i == 0) ? "" : ", ",
+                    (uint32_t)picture_info_hevc->RefPicSetStCurrBefore[i]
+                );
+            }
+            fputs("}, {", _vdp_cap_data.fp);
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_hevc->RefPicSetStCurrAfter); ++i) {
+                fprintf(
+                    _vdp_cap_data.fp,
+                    "%s%u",
+                    (i == 0) ? "" : ", ",
+                    (uint32_t)picture_info_hevc->RefPicSetStCurrAfter[i]
+                );
+            }
+            fputs("}, {", _vdp_cap_data.fp);
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_hevc->RefPicSetLtCurr); ++i) {
+                fprintf(
+                    _vdp_cap_data.fp,
+                    "%s%u",
+                    (i == 0) ? "" : ", ",
+                    (uint32_t)picture_info_hevc->RefPicSetLtCurr[i]
+                );
+            }
+            fputs("}}", _vdp_cap_data.fp);
+        }
+        break;
     case VDP_DECODER_PROFILE_HEVC_MAIN_12:
     case VDP_DECODER_PROFILE_HEVC_MAIN_444:
+    case VDP_DECODER_PROFILE_HEVC_MAIN_444_10:
+    case VDP_DECODER_PROFILE_HEVC_MAIN_444_12:
         {
             VdpPictureInfoHEVC const * picture_info_hevc =
                 (VdpPictureInfoHEVC const *)picture_info;
 
+            VdpPictureInfoHEVCRangeExt const * picture_info_hevc_rxt =
+                (VdpPictureInfoHEVCRangeExt const *)picture_info;
+
             fprintf(
                 _vdp_cap_data.fp,
-                "{%u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, 
{",
+                "{{%u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, 
{",
                 (uint32_t)picture_info_hevc->chroma_format_idc,
                 (uint32_t)picture_info_hevc->separate_colour_plane_flag,
                 (uint32_t)picture_info_hevc->pic_width_in_luma_samples,
@@ -719,9 +956,204 @@
                     (uint32_t)picture_info_hevc->RefPicSetLtCurr[i]
                 );
             }
+            fputs("}}, ", _vdp_cap_data.fp);
+            fprintf(
+                _vdp_cap_data.fp,
+                "%u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, 
%u, %u, %u, %u, {",
+                (uint32_t)picture_info_hevc_rxt->sps_range_extension_flag,
+                
(uint32_t)picture_info_hevc_rxt->transformSkipRotationEnableFlag,
+                
(uint32_t)picture_info_hevc_rxt->transformSkipContextEnableFlag,
+                (uint32_t)picture_info_hevc_rxt->implicitRdpcmEnableFlag,
+                (uint32_t)picture_info_hevc_rxt->explicitRdpcmEnableFlag,
+                
(uint32_t)picture_info_hevc_rxt->extendedPrecisionProcessingFlag,
+                (uint32_t)picture_info_hevc_rxt->intraSmoothingDisabledFlag,
+                
(uint32_t)picture_info_hevc_rxt->highPrecisionOffsetsEnableFlag,
+                
(uint32_t)picture_info_hevc_rxt->persistentRiceAdaptationEnableFlag,
+                
(uint32_t)picture_info_hevc_rxt->cabacBypassAlignmentEnableFlag,
+                (uint32_t)picture_info_hevc_rxt->intraBlockCopyEnableFlag,
+                (uint32_t)picture_info_hevc_rxt->pps_range_extension_flag,
+                (uint32_t)picture_info_hevc_rxt->log2MaxTransformSkipSize,
+                
(uint32_t)picture_info_hevc_rxt->crossComponentPredictionEnableFlag,
+                (uint32_t)picture_info_hevc_rxt->chromaQpAdjustmentEnableFlag,
+                (uint32_t)picture_info_hevc_rxt->diffCuChromaQpAdjustmentDepth,
+                (uint32_t)picture_info_hevc_rxt->chromaQpAdjustmentTableSize,
+                (uint32_t)picture_info_hevc_rxt->log2SaoOffsetScaleLuma,
+                (uint32_t)picture_info_hevc_rxt->log2SaoOffsetScaleChroma
+            );
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_hevc_rxt->cb_qp_adjustment); ++i) {
+                fprintf(
+                    _vdp_cap_data.fp,
+                    "%s%u",
+                    (i == 0) ? "" : ", ",
+                    (uint32_t)picture_info_hevc_rxt->cb_qp_adjustment[i]
+                );
+            }
+            fputs("}, {", _vdp_cap_data.fp);
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_hevc_rxt->cr_qp_adjustment); ++i) {
+                fprintf(
+                    _vdp_cap_data.fp,
+                    "%s%u",
+                    (i == 0) ? "" : ", ",
+                    (uint32_t)picture_info_hevc_rxt->cr_qp_adjustment[i]
+                );
+            }
             fputs("}}", _vdp_cap_data.fp);
         }
         break;
+    case VDP_DECODER_PROFILE_VP9_PROFILE_0:
+    case VDP_DECODER_PROFILE_VP9_PROFILE_1:
+    case VDP_DECODER_PROFILE_VP9_PROFILE_2:
+    case VDP_DECODER_PROFILE_VP9_PROFILE_3:
+        {
+            VdpPictureInfoVP9 const * picture_info_vp9 =
+                (VdpPictureInfoVP9 const *)picture_info;
+
+            fprintf(
+                _vdp_cap_data.fp,
+                "{%u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, 
%u, %u, {",
+                (uint32_t)picture_info_vp9->width,
+                (uint32_t)picture_info_vp9->height,
+                picture_info_vp9->lastReference,
+                picture_info_vp9->goldenReference,
+                picture_info_vp9->altReference,
+                (uint32_t)picture_info_vp9->colorSpace,
+                (uint32_t)picture_info_vp9->profile,
+                (uint32_t)picture_info_vp9->frameContextIdx,
+                (uint32_t)picture_info_vp9->keyFrame,
+                (uint32_t)picture_info_vp9->showFrame,
+                (uint32_t)picture_info_vp9->errorResilient,
+                (uint32_t)picture_info_vp9->frameParallelDecoding,
+                (uint32_t)picture_info_vp9->subSamplingX,
+                (uint32_t)picture_info_vp9->subSamplingY,
+                (uint32_t)picture_info_vp9->intraOnly,
+                (uint32_t)picture_info_vp9->allowHighPrecisionMv,
+                (uint32_t)picture_info_vp9->refreshEntropyProbs
+            );
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_vp9->refFrameSignBias); ++i) {
+                fprintf(
+                    _vdp_cap_data.fp,
+                    "%s%u",
+                    (i == 0) ? "" : ", ",
+                    (uint32_t)picture_info_vp9->refFrameSignBias[i]
+                );
+            }
+            fputs("}, ", _vdp_cap_data.fp);
+            fprintf(
+                _vdp_cap_data.fp,
+                "%u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u, {",
+                (uint32_t)picture_info_vp9->bitDepthMinus8Luma,
+                (uint32_t)picture_info_vp9->bitDepthMinus8Chroma,
+                (uint32_t)picture_info_vp9->loopFilterLevel,
+                (uint32_t)picture_info_vp9->loopFilterSharpness,
+                (uint32_t)picture_info_vp9->modeRefLfEnabled,
+                (uint32_t)picture_info_vp9->log2TileColumns,
+                (uint32_t)picture_info_vp9->log2TileRows,
+                (uint32_t)picture_info_vp9->segmentEnabled,
+                (uint32_t)picture_info_vp9->segmentMapUpdate,
+                (uint32_t)picture_info_vp9->segmentMapTemporalUpdate,
+                (uint32_t)picture_info_vp9->segmentFeatureMode
+            );
+           for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_vp9->segmentFeatureEnable); ++i) {
+                fputs((i == 0) ? "{" : "}, {", _vdp_cap_data.fp);
+                for (uint32_t j = 0; j < 
_VDP_TRACE_ARSIZE(picture_info_vp9->segmentFeatureEnable[0]); ++j) {
+                    fprintf(
+                        _vdp_cap_data.fp,
+                        "%s%u",
+                        (j == 0) ? "" : ", ",
+                        (uint32_t)picture_info_vp9->segmentFeatureEnable[i][j]
+                    );
+                }
+            }
+            fputs("}}, {", _vdp_cap_data.fp);
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_vp9->segmentFeatureData); ++i) {
+                fputs((i == 0) ? "{" : "}, {", _vdp_cap_data.fp);
+                for (uint32_t j = 0; j < 
_VDP_TRACE_ARSIZE(picture_info_vp9->segmentFeatureData[0]); ++j) {
+                    fprintf(
+                        _vdp_cap_data.fp,
+                        "%s%d",
+                        (j == 0) ? "" : ", ",
+                        (int32_t)picture_info_vp9->segmentFeatureData[i][j]
+                    );
+                }
+            }
+            fputs("}}, {", _vdp_cap_data.fp);
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_vp9->mbSegmentTreeProbs); ++i) {
+                fprintf(
+                    _vdp_cap_data.fp,
+                    "%s%u",
+                    (i == 0) ? "" : ", ",
+                    (uint32_t)picture_info_vp9->mbSegmentTreeProbs[i]
+                );
+            }
+            fputs("}, {", _vdp_cap_data.fp);
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_vp9->segmentPredProbs); ++i) {
+                fprintf(
+                    _vdp_cap_data.fp,
+                    "%s%u",
+                    (i == 0) ? "" : ", ",
+                    (uint32_t)picture_info_vp9->segmentPredProbs[i]
+                );
+            }
+            fputs("}, {", _vdp_cap_data.fp);
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_vp9->reservedSegment16Bits); ++i) {
+                fprintf(
+                    _vdp_cap_data.fp,
+                    "%s%u",
+                    (i == 0) ? "" : ", ",
+                    (uint32_t)picture_info_vp9->reservedSegment16Bits[i]
+                );
+            }
+            fputs("}, ", _vdp_cap_data.fp);
+            fprintf(
+                _vdp_cap_data.fp,
+                "%d, %d, %d, %d, {",
+                (int32_t)picture_info_vp9->qpYAc,
+                (int32_t)picture_info_vp9->qpYDc,
+                (int32_t)picture_info_vp9->qpChDc,
+                (int32_t)picture_info_vp9->qpChAc
+            );
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_vp9->activeRefIdx); ++i) {
+                fprintf(
+                    _vdp_cap_data.fp,
+                    "%s%u",
+                    (i == 0) ? "" : ", ",
+                    (uint32_t)picture_info_vp9->activeRefIdx[i]
+                );
+            }
+            fputs("}, ", _vdp_cap_data.fp);
+            fprintf(
+                _vdp_cap_data.fp,
+                "%u, %u, {",
+                (uint32_t)picture_info_vp9->resetFrameContext,
+                (uint32_t)picture_info_vp9->mcompFilterType
+            );
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_vp9->mbRefLfDelta); ++i) {
+                fprintf(
+                    _vdp_cap_data.fp,
+                    "%s%u",
+                    (i == 0) ? "" : ", ",
+                    (uint32_t)picture_info_vp9->mbRefLfDelta[i]
+                );
+            }
+            fputs("}, {", _vdp_cap_data.fp);
+            for (uint32_t i = 0; i < 
_VDP_TRACE_ARSIZE(picture_info_vp9->mbModeLfDelta); ++i) {
+                fprintf(
+                    _vdp_cap_data.fp,
+                    "%s%d",
+                    (i == 0) ? "" : ", ",
+                    (int32_t)picture_info_vp9->mbModeLfDelta[i]
+                );
+            }
+            fputs("}, ", _vdp_cap_data.fp);
+            fprintf(
+                _vdp_cap_data.fp,
+                "%u, %u",
+                (uint32_t)picture_info_vp9->uncompressedHeaderSize,
+                (uint32_t)picture_info_vp9->compressedHeaderSize
+            );
+            fputs("}", _vdp_cap_data.fp);
+        }
+        break;
     default:
         fputs("{...}", _vdp_cap_data.fp);
         break;

++++++ vdpauinfo-1.3.tar.bz2 -> vdpauinfo-1.4.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/vdpauinfo-vdpauinfo-1.3-0bc58c03e61e038ba3b81dfff36cc35cadfae447/configure.ac
 new/vdpauinfo-1.4/configure.ac
--- 
old/vdpauinfo-vdpauinfo-1.3-0bc58c03e61e038ba3b81dfff36cc35cadfae447/configure.ac
   2019-12-09 21:16:14.000000000 +0100
+++ new/vdpauinfo-1.4/configure.ac      2020-04-15 08:53:40.000000000 +0200
@@ -1,12 +1,12 @@
 AC_PREREQ([2.57])
-AC_INIT(vdpauinfo,[1.3],[x...@lists.freedesktop.org],vdpauinfo)
+AC_INIT(vdpauinfo,[1.4],[x...@lists.freedesktop.org],vdpauinfo)
 AM_INIT_AUTOMAKE([dist-bzip2 foreign])
 AM_MAINTAINER_MODE
 
 AC_PROG_CXX
 AC_PROG_INSTALL
 
-PKG_CHECK_MODULES(VDPAU, x11 [vdpau >= 1.3])
+PKG_CHECK_MODULES(VDPAU, x11 [vdpau >= 1.4])
 VDPAUINFO_CXXFLAGS="$VDPAUINFO_CXXFLAGS $VDPAU_CFLAGS"
 VDPAUINFO_LIBS="$VDPAUINFO_LIBS $VDPAU_LIBS"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/vdpauinfo-vdpauinfo-1.3-0bc58c03e61e038ba3b81dfff36cc35cadfae447/vdpauinfo.cpp
 new/vdpauinfo-1.4/vdpauinfo.cpp
--- 
old/vdpauinfo-vdpauinfo-1.3-0bc58c03e61e038ba3b81dfff36cc35cadfae447/vdpauinfo.cpp
  2019-12-09 21:16:14.000000000 +0100
+++ new/vdpauinfo-1.4/vdpauinfo.cpp     2020-04-15 08:53:40.000000000 +0200
@@ -64,6 +64,9 @@
 {"420", VDP_CHROMA_TYPE_420},
 {"422", VDP_CHROMA_TYPE_422},
 {"444", VDP_CHROMA_TYPE_444},
+{"420_16", VDP_CHROMA_TYPE_420_16},
+{"422_16", VDP_CHROMA_TYPE_422_16},
+{"444_16", VDP_CHROMA_TYPE_444_16},
 };
 const size_t chroma_type_count = sizeof(chroma_types)/sizeof(Desc);
 
@@ -76,6 +79,9 @@
 {"V8U8Y8A8", VDP_YCBCR_FORMAT_V8U8Y8A8},
 {"NV24", VDP_YCBCR_FORMAT_Y_UV_444},
 {"YV24", VDP_YCBCR_FORMAT_Y_U_V_444},
+{"P010", VDP_YCBCR_FORMAT_P010},
+{"P016", VDP_YCBCR_FORMAT_P016},
+{"Y_U_V_444_16", VDP_YCBCR_FORMAT_Y_U_V_444_16},
 };
 const size_t ycbcr_type_count = sizeof(ycbcr_types)/sizeof(Desc);
 
@@ -368,6 +374,9 @@
 {"HEVC_MAIN_STILL",             VDP_DECODER_PROFILE_HEVC_MAIN_STILL},
 {"HEVC_MAIN_12",                VDP_DECODER_PROFILE_HEVC_MAIN_12},
 {"HEVC_MAIN_444",               VDP_DECODER_PROFILE_HEVC_MAIN_444},
+{"HEVC_MAIN_444_10",            VDP_DECODER_PROFILE_HEVC_MAIN_444_10},
+{"HEVC_MAIN_444_12",            VDP_DECODER_PROFILE_HEVC_MAIN_444_12},
+
 };
 const size_t decoder_profile_count = sizeof(decoder_profiles)/sizeof(Desc);
 

Reply via email to