Build started at 2021-11-22T18:52:05.254985 Main binary: /usr/bin/python3.10 Build Options: -Dwith_encoders=yes -Dwith_drm=yes -Dwith_x11=yes -Dwith_wayland=no -Dwith_egl=yes -Dwith_glx=yes -Dexamples=disabled -Dtests=disabled -Dpackage-origin=https://www.gentoo.org -Dprefix=/usr -Dlibdir=lib64 -Dlocalstatedir=/var/lib -Dsysconfdir=/etc -Dbuildtype=plain -Dwrap_mode=nodownload -Dbuild.pkg_config_path=/usr/share/pkgconfig -Dpkg_config_path=/usr/share/pkgconfig '--native-file /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/meson.x86_64-pc-linux-gnu.amd64.ini' Python system: Linux The Meson build system Version: 0.60.1 Source dir: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4 Build dir: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64 Build type: native build Project name: gstreamer-vaapi Project version: 1.18.4 Sanity testing C compiler: x86_64-pc-linux-gnu-gcc Is cross compiler: False. Sanity check compiler command line: x86_64-pc-linux-gnu-gcc sanitycheckc.c -o sanitycheckc.exe -O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -D_FILE_OFFSET_BITS=64 -Wl,-O1 -Wl,--as-needed -Wl,--defsym=__gentoo_check_ldflags__=0 Sanity check compile stdout: ----- Sanity check compile stderr: ----- Running test binary command: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/sanitycheckc.exe C compiler for the host machine: x86_64-pc-linux-gnu-gcc (gcc 11.2.0 "x86_64-pc-linux-gnu-gcc (Gentoo 11.2.0 p1) 11.2.0") C linker for the host machine: x86_64-pc-linux-gnu-gcc ld.bfd 2.37 Sanity testing C compiler: x86_64-pc-linux-gnu-gcc Is cross compiler: False. Sanity check compiler command line: x86_64-pc-linux-gnu-gcc sanitycheckc.c -o sanitycheckc.exe -D_FILE_OFFSET_BITS=64 Sanity check compile stdout: ----- Sanity check compile stderr: ----- Running test binary command: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/sanitycheckc.exe C compiler for the build machine: x86_64-pc-linux-gnu-gcc (gcc 11.2.0 "x86_64-pc-linux-gnu-gcc (Gentoo 11.2.0 p1) 11.2.0") C linker for the build machine: x86_64-pc-linux-gnu-gcc ld.bfd 2.37 Build machine cpu family: x86_64 Build machine cpu: x86_64 Host machine cpu family: x86_64 Host machine cpu: x86_64 Target machine cpu family: x86_64 Target machine cpu: x86_64 Running compile: Working directory: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp7z1jarg_ Command line: x86_64-pc-linux-gnu-gcc /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp7z1jarg_/testfile.c -o /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp7z1jarg_/output.exe -O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -D_FILE_OFFSET_BITS=64 -O0 -Wl,--fatal-warnings -Wl,-Bsymbolic-functions -Wl,-O1 -Wl,--as-needed -Wl,--defsym=__gentoo_check_ldflags__=0 Code: int main(void) { return 0; } Compiler stdout: Compiler stderr: Compiler for C supports link arguments -Wl,-Bsymbolic-functions: YES Running compile: Working directory: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp26wqhvo9 Command line: x86_64-pc-linux-gnu-gcc /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp26wqhvo9/testfile.c -o /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp26wqhvo9/output.obj -c -O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -D_FILE_OFFSET_BITS=64 -O0 -fvisibility=hidden Code: extern int i; int i; Compiler stdout: Compiler stderr: Compiler for C supports arguments -fvisibility=hidden: YES Running compile: Working directory: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmpq6a65a9k Command line: x86_64-pc-linux-gnu-gcc /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmpq6a65a9k/testfile.c -o /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmpq6a65a9k/output.obj -c -O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -D_FILE_OFFSET_BITS=64 -O0 -fno-strict-aliasing Code: extern int i; int i; Compiler stdout: Compiler stderr: Compiler for C supports arguments -fno-strict-aliasing: YES Running compile: Working directory: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp_ay3v6hf Command line: x86_64-pc-linux-gnu-gcc /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp_ay3v6hf/testfile.c -o /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp_ay3v6hf/output.exe -O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -D_FILE_OFFSET_BITS=64 -O0 -Wl,--start-group -lm -Wl,--end-group -Wl,--allow-shlib-undefined -Wl,-O1 -Wl,--as-needed -Wl,--defsym=__gentoo_check_ldflags__=0 Code: int main(void) { return 0; } Compiler stdout: Compiler stderr: Library m found: YES Pkg-config binary for MachineChoice.HOST is not cached. Pkg-config binary for 1 specified from cross file, native file, or env var as ['x86_64-pc-linux-gnu-pkg-config'] Found pkg-config: /usr/bin/x86_64-pc-linux-gnu-pkg-config (1.8.0) Determining dependency 'gstreamer-1.0' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion gstreamer-1.0` -> 0 1.18.4 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --cflags gstreamer-1.0` -> 0 -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib64/libffi/include -pthread env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gstreamer-1.0` -> 0 -L/usr/lib64 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gstreamer-1.0` -> 0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 Running compile: Working directory: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp1k54u8de Command line: x86_64-pc-linux-gnu-gcc /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp1k54u8de/testfile.c -o /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp1k54u8de/output.exe -O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -D_FILE_OFFSET_BITS=64 -O0 -Wl,-O1 -Wl,--as-needed -Wl,--defsym=__gentoo_check_ldflags__=0 Code: #include int main(void) { printf("%ld\n", (long)(sizeof(void *))); return 0; } Compiler stdout: Compiler stderr: Program stdout: 8 Program stderr: Running compile: Working directory: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmpwg_1qenz Command line: x86_64-pc-linux-gnu-gcc /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmpwg_1qenz/testfile.c -o /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmpwg_1qenz/output.obj -c -O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -D_FILE_OFFSET_BITS=64 -O0 --print-search-dirs Code: Compiler stdout: install: /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/ programs: =/usr/libexec/gcc/x86_64-pc-linux-gnu/11.2.0/:/usr/libexec/gcc/x86_64-pc-linux-gnu/11.2.0/:/usr/libexec/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/../../../../x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu/11.2.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/../../../../x86_64-pc-linux-gnu/bin/ libraries: =/usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/../../../../x86_64-pc-linux-gnu/lib/x86_64-pc-linux-gnu/11.2.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/../../../../x86_64-pc-linux-gnu/lib/../lib64/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/../../../x86_64-pc-linux-gnu/11.2.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/../../../../lib64/:/lib/x86_64-pc-linux-gnu/11.2.0/:/lib/../lib64/:/usr/lib/x86_64-pc-linux-gnu/11.2.0/:/usr/lib/../lib64/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/../../../../x86_64-pc-linux-gnu/lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.2.0/../../../:/lib/:/usr/lib/ Compiler stderr: Run-time dependency gstreamer-1.0 found: YES 1.18.4 Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'gstreamer-base-1.0' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion gstreamer-base-1.0` -> 0 1.18.4 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --cflags gstreamer-base-1.0` -> 0 -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib64/libffi/include -pthread env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gstreamer-base-1.0` -> 0 -L/usr/lib64 -lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gstreamer-base-1.0` -> 0 -lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 Run-time dependency gstreamer-base-1.0 found: YES 1.18.4 Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'gstreamer-pbutils-1.0' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion gstreamer-pbutils-1.0` -> 0 1.18.4 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --cflags gstreamer-pbutils-1.0` -> 0 -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib64/libffi/include -I/usr/include/orc-0.4 -pthread env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gstreamer-pbutils-1.0` -> 0 -L/usr/lib64 -lgstpbutils-1.0 -lgstaudio-1.0 -lgstvideo-1.0 -lgstbase-1.0 -lgsttag-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gstreamer-pbutils-1.0` -> 0 -lgstpbutils-1.0 -lgstaudio-1.0 -lgstvideo-1.0 -lgstbase-1.0 -lgsttag-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 Run-time dependency gstreamer-pbutils-1.0 found: YES 1.18.4 Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'gstreamer-allocators-1.0' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion gstreamer-allocators-1.0` -> 0 1.18.4 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --cflags gstreamer-allocators-1.0` -> 0 -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib64/libffi/include -pthread env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gstreamer-allocators-1.0` -> 0 -L/usr/lib64 -lgstallocators-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gstreamer-allocators-1.0` -> 0 -lgstallocators-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 Run-time dependency gstreamer-allocators-1.0 found: YES 1.18.4 Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'gstreamer-video-1.0' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion gstreamer-video-1.0` -> 0 1.18.4 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --cflags gstreamer-video-1.0` -> 0 -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib64/libffi/include -pthread -I/usr/include/orc-0.4 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gstreamer-video-1.0` -> 0 -L/usr/lib64 -lgstvideo-1.0 -lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gstreamer-video-1.0` -> 0 -lgstvideo-1.0 -lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 Run-time dependency gstreamer-video-1.0 found: YES 1.18.4 Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'gstreamer-codecparsers-1.0' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion gstreamer-codecparsers-1.0` -> 0 1.18.4 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --cflags gstreamer-codecparsers-1.0` -> 0 -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib64/libffi/include -pthread env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gstreamer-codecparsers-1.0` -> 0 -L/usr/lib64 -lgstcodecparsers-1.0 -lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gstreamer-codecparsers-1.0` -> 0 -lgstcodecparsers-1.0 -lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 Run-time dependency gstreamer-codecparsers-1.0 found: YES 1.18.4 Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'gstreamer-gl-1.0' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion gstreamer-gl-1.0` -> 0 1.18.4 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --cflags gstreamer-gl-1.0` -> 0 -I/usr/include/gstreamer-1.0 -I/usr/lib64/gstreamer-1.0/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib64/libffi/include -I/usr/include/orc-0.4 -pthread env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gstreamer-gl-1.0` -> 0 -L/usr/lib64 -lgstgl-1.0 -lgstvideo-1.0 -lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gstreamer-gl-1.0` -> 0 -lgstgl-1.0 -lgstvideo-1.0 -lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 Run-time dependency gstreamer-gl-1.0 found: YES 1.18.4 Running compile: Working directory: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp6p252a_z Command line: x86_64-pc-linux-gnu-gcc -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib64/libffi/include /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp6p252a_z/testfile.c -o /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp6p252a_z/output.obj -c -pthread -O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -D_FILE_OFFSET_BITS=64 -O0 Code: #include int main(void) { /* If it's not defined as a macro, try to use as a symbol */ #ifndef GST_DISABLE_GST_DEBUG GST_DISABLE_GST_DEBUG; #endif return 0; } Compiler stdout: Compiler stderr: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp6p252a_z/testfile.c: In function 'main': /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp6p252a_z/testfile.c:6:17: error: 'GST_DISABLE_GST_DEBUG' undeclared (first use in this function); did you mean 'GST_DISABLE_CAST_CHECKS'? 6 | GST_DISABLE_GST_DEBUG; | ^~~~~~~~~~~~~~~~~~~~~ | GST_DISABLE_CAST_CHECKS /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp6p252a_z/testfile.c:6:17: note: each undeclared identifier is reported only once for each function it appears in Header has symbol "GST_DISABLE_GST_DEBUG" with dependency gstreamer-1.0: NO Message: GStreamer debug system is enabled Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'gmodule-2.0' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion gmodule-2.0` -> 0 2.70.0 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --cflags gmodule-2.0` -> 0 -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gmodule-2.0` -> 0 -Wl,--export-dynamic -L/usr/lib64 -lgmodule-2.0 -pthread -lglib-2.0 -lglib-2.0 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gmodule-2.0` -> 0 -Wl,--export-dynamic -lgmodule-2.0 -pthread -lglib-2.0 -lglib-2.0 Run-time dependency gmodule-2.0 found: YES 2.70.0 Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'libva' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion libva` -> 0 1.13.0 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --cflags libva` -> 0 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs libva` -> 0 -L/usr/lib64 -lva env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs libva` -> 0 -lva Run-time dependency libva found: YES 1.13.0 Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'libva-drm' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion libva-drm` -> 0 1.13.0 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --cflags libva-drm` -> 0 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs libva-drm` -> 0 -L/usr/lib64 -lva-drm -lva env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs libva-drm` -> 0 -lva-drm -lva Run-time dependency libva-drm found: YES 1.13.0 Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'libva-wayland' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion libva-wayland` -> 1 CMake binary for 1 is not cached CMake binary missing from cross or native file, or env var undefined. Trying a default CMake fallback at cmake Found CMake: /usr/bin/cmake (3.22.0) Extracting basic cmake information CMake Toolchain: Calling CMake once to generate the compiler state Calling CMake (['/usr/bin/cmake']) in /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/__CMake_compiler_info__ with: - "--trace-expand" - "--trace-format=json-v1" - "--no-warn-unused-cli" - "--trace-redirect=cmake_trace.txt" - "-G" - "Ninja" - "-DCMAKE_TOOLCHAIN_FILE=/var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/__CMake_compiler_info__/CMakeMesonTempToolchainFile.cmake" - "." Try CMake generator: auto Calling CMake (['/usr/bin/cmake']) in /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/cmake_libva-wayland with: - "--trace-expand" - "--trace-format=json-v1" - "--no-warn-unused-cli" - "--trace-redirect=cmake_trace.txt" - "-DCMAKE_TOOLCHAIN_FILE=/var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/cmake_libva-wayland/CMakeMesonToolchainFile.cmake" - "." -- Module search paths: ['/', '/opt', '/usr', '/usr/local'] -- CMake root: /usr/share/cmake -- CMake architectures: [] -- CMake lib search paths: ['lib', 'lib32', 'lib64', 'libx32', 'share'] Preliminary CMake check failed. Aborting. Run-time dependency libva-wayland found: NO (tried pkgconfig and cmake) Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'libva-x11' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion libva-x11` -> 0 1.13.0 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --cflags libva-x11` -> 0 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs libva-x11` -> 0 -L/usr/lib64 -lva-x11 -lva env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs libva-x11` -> 0 -lva-x11 -lva Run-time dependency libva-x11 found: YES 1.13.0 Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'libdrm' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion libdrm` -> 0 2.4.107 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --cflags libdrm` -> 0 -I/usr/include/libdrm env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs libdrm` -> 0 -L/usr/lib64 -ldrm env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs libdrm` -> 0 -ldrm Run-time dependency libdrm found: YES 2.4.107 Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'libudev' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion libudev` -> 0 249 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --cflags libudev` -> 0 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs libudev` -> 0 -L/usr/lib64 -ludev env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs libudev` -> 0 -ludev Run-time dependency libudev found: YES 249 Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'egl' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion egl` -> 0 1.5 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --cflags egl` -> 0 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs egl` -> 0 -L/usr/lib64 -lEGL env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs egl` -> 0 -lEGL Run-time dependency egl found: YES 1.5 Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'gl' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion gl` -> 0 1.2 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --cflags gl` -> 0 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gl` -> 0 -L/usr/lib64 -lGL env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gl` -> 0 -lGL Run-time dependency gl found: YES 1.2 Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'glesv2' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion glesv2` -> 0 3.2 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --cflags glesv2` -> 0 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs glesv2` -> 0 -L/usr/lib64 -lGLESv2 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs glesv2` -> 0 -lGLESv2 Run-time dependency glesv2 found: YES 3.2 Dependency gstreamer-check-1.0 skipped: feature tests disabled Running compile: Working directory: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp4tfnbwrt Command line: x86_64-pc-linux-gnu-gcc /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp4tfnbwrt/testfile.c -o /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp4tfnbwrt/output.exe -O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -D_FILE_OFFSET_BITS=64 -O0 -Wl,--start-group -ldl -Wl,--end-group -Wl,--allow-shlib-undefined -Wl,-O1 -Wl,--as-needed -Wl,--defsym=__gentoo_check_ldflags__=0 Code: int main(void) { return 0; } Compiler stdout: Compiler stderr: Library dl found: YES Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'wayland-client' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion wayland-client` -> 1 CMake binary for 1 is cached. Preliminary CMake check failed. Aborting. Run-time dependency wayland-client found: NO (tried pkgconfig and cmake) Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'wayland-protocols' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion wayland-protocols` -> 1 CMake binary for 1 is cached. Preliminary CMake check failed. Aborting. Run-time dependency wayland-protocols found: NO (tried pkgconfig and cmake) Program wayland-scanner found: NO Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'x11' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion x11` -> 0 1.7.2 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --cflags x11` -> 0 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs x11` -> 0 -L/usr/lib64 -lX11 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs x11` -> 0 -lX11 Run-time dependency x11 found: YES 1.7.2 Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'xrandr' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion xrandr` -> 0 1.5.2 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --cflags xrandr` -> 0 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs xrandr` -> 0 -L/usr/lib64 -lXrandr env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs xrandr` -> 0 -lXrandr Run-time dependency xrandr found: YES 1.5.2 Dependency gtk+-3.0 skipped: feature examples disabled Running compile: Working directory: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmpgs9_gzy9 Command line: x86_64-pc-linux-gnu-gcc /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmpgs9_gzy9/testfile.c -E -P -O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -D_FILE_OFFSET_BITS=64 -P -O0 Code: #ifdef __has_include #if !__has_include("GLES2/gl2.h") #error "Header 'GLES2/gl2.h' could not be found" #endif #else #include #endif Compiler stdout: Compiler stderr: Has header "GLES2/gl2.h" with dependency glesv2: YES Running compile: Working directory: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmplj7pmtz6 Command line: x86_64-pc-linux-gnu-gcc /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmplj7pmtz6/testfile.c -E -P -O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -D_FILE_OFFSET_BITS=64 -P -O0 Code: #ifdef __has_include #if !__has_include("GLES2/gl2ext.h") #error "Header 'GLES2/gl2ext.h' could not be found" #endif #else #include #endif Compiler stdout: Compiler stderr: Has header "GLES2/gl2ext.h" with dependency glesv2: YES Running compile: Working directory: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmpfsikuk95 Command line: x86_64-pc-linux-gnu-gcc /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmpfsikuk95/testfile.c -E -P -O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -D_FILE_OFFSET_BITS=64 -P -O0 Code: #ifdef __has_include #if !__has_include("GLES3/gl3.h") #error "Header 'GLES3/gl3.h' could not be found" #endif #else #include #endif Compiler stdout: Compiler stderr: Has header "GLES3/gl3.h" with dependency glesv2: YES Running compile: Working directory: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmps9a_w0aq Command line: x86_64-pc-linux-gnu-gcc /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmps9a_w0aq/testfile.c -E -P -O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -D_FILE_OFFSET_BITS=64 -P -O0 Code: #ifdef __has_include #if !__has_include("GLES3/gl3ext.h") #error "Header 'GLES3/gl3ext.h' could not be found" #endif #else #include #endif Compiler stdout: Compiler stderr: Has header "GLES3/gl3ext.h" with dependency glesv2: YES Using cached compile: Cached command line: Code: #ifdef __has_include #if !__has_include("GLES2/gl2ext.h") #error "Header 'GLES2/gl2ext.h' could not be found" #endif #else #include #endif Cached compiler stdout: Cached compiler stderr: Has header "GLES2/gl2ext.h" with dependency glesv2: YES (cached) Running compile: Working directory: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp7o1pwxn1 Command line: x86_64-pc-linux-gnu-gcc /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmp7o1pwxn1/testfile.c -E -P -O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -D_FILE_OFFSET_BITS=64 -P -O0 Code: #include #ifdef __has_include #if !__has_include("va/va_enc_vp9.h") #error "Header 'va/va_enc_vp9.h' could not be found" #endif #else #include #endif Compiler stdout: typedef long int ptrdiff_t; typedef long unsigned int size_t; typedef int wchar_t; typedef struct { long long __max_align_ll __attribute__((__aligned__(__alignof__(long long)))); long double __max_align_ld __attribute__((__aligned__(__alignof__(long double)))); } max_align_t; typedef unsigned char __u_char; typedef unsigned short int __u_short; typedef unsigned int __u_int; typedef unsigned long int __u_long; typedef signed char __int8_t; typedef unsigned char __uint8_t; typedef signed short int __int16_t; typedef unsigned short int __uint16_t; typedef signed int __int32_t; typedef unsigned int __uint32_t; typedef signed long int __int64_t; typedef unsigned long int __uint64_t; typedef __int8_t __int_least8_t; typedef __uint8_t __uint_least8_t; typedef __int16_t __int_least16_t; typedef __uint16_t __uint_least16_t; typedef __int32_t __int_least32_t; typedef __uint32_t __uint_least32_t; typedef __int64_t __int_least64_t; typedef __uint64_t __uint_least64_t; typedef long int __quad_t; typedef unsigned long int __u_quad_t; typedef long int __intmax_t; typedef unsigned long int __uintmax_t; typedef unsigned long int __dev_t; typedef unsigned int __uid_t; typedef unsigned int __gid_t; typedef unsigned long int __ino_t; typedef unsigned long int __ino64_t; typedef unsigned int __mode_t; typedef unsigned long int __nlink_t; typedef long int __off_t; typedef long int __off64_t; typedef int __pid_t; typedef struct { int __val[2]; } __fsid_t; typedef long int __clock_t; typedef unsigned long int __rlim_t; typedef unsigned long int __rlim64_t; typedef unsigned int __id_t; typedef long int __time_t; typedef unsigned int __useconds_t; typedef long int __suseconds_t; typedef long int __suseconds64_t; typedef int __daddr_t; typedef int __key_t; typedef int __clockid_t; typedef void * __timer_t; typedef long int __blksize_t; typedef long int __blkcnt_t; typedef long int __blkcnt64_t; typedef unsigned long int __fsblkcnt_t; typedef unsigned long int __fsblkcnt64_t; typedef unsigned long int __fsfilcnt_t; typedef unsigned long int __fsfilcnt64_t; typedef long int __fsword_t; typedef long int __ssize_t; typedef long int __syscall_slong_t; typedef unsigned long int __syscall_ulong_t; typedef __off64_t __loff_t; typedef char *__caddr_t; typedef long int __intptr_t; typedef unsigned int __socklen_t; typedef int __sig_atomic_t; typedef __int8_t int8_t; typedef __int16_t int16_t; typedef __int32_t int32_t; typedef __int64_t int64_t; typedef __uint8_t uint8_t; typedef __uint16_t uint16_t; typedef __uint32_t uint32_t; typedef __uint64_t uint64_t; typedef __int_least8_t int_least8_t; typedef __int_least16_t int_least16_t; typedef __int_least32_t int_least32_t; typedef __int_least64_t int_least64_t; typedef __uint_least8_t uint_least8_t; typedef __uint_least16_t uint_least16_t; typedef __uint_least32_t uint_least32_t; typedef __uint_least64_t uint_least64_t; typedef signed char int_fast8_t; typedef long int int_fast16_t; typedef long int int_fast32_t; typedef long int int_fast64_t; typedef unsigned char uint_fast8_t; typedef unsigned long int uint_fast16_t; typedef unsigned long int uint_fast32_t; typedef unsigned long int uint_fast64_t; typedef long int intptr_t; typedef unsigned long int uintptr_t; typedef __intmax_t intmax_t; typedef __uintmax_t uintmax_t; typedef void* VADisplay; typedef int VAStatus; const char *vaErrorStr(VAStatus error_status); typedef struct _VARectangle { int16_t x; int16_t y; uint16_t width; uint16_t height; } VARectangle; typedef struct _VAMotionVector { int16_t mv0[2]; int16_t mv1[2]; } VAMotionVector; typedef void (*VAMessageCallback)(void *user_context, const char *message); VAMessageCallback vaSetErrorCallback(VADisplay dpy, VAMessageCallback callback, void *user_context); VAMessageCallback vaSetInfoCallback(VADisplay dpy, VAMessageCallback callback, void *user_context); typedef void* VANativeDisplay; int vaDisplayIsValid(VADisplay dpy); VAStatus vaSetDriverName(VADisplay dpy, char *driver_name ); VAStatus vaInitialize( VADisplay dpy, int *major_version, int *minor_version ); VAStatus vaTerminate( VADisplay dpy ); const char *vaQueryVendorString( VADisplay dpy ); typedef int (*VAPrivFunc)(void); VAPrivFunc vaGetLibFunc( VADisplay dpy, const char *func ); typedef enum { VAProfileNone = -1, VAProfileMPEG2Simple = 0, VAProfileMPEG2Main = 1, VAProfileMPEG4Simple = 2, VAProfileMPEG4AdvancedSimple = 3, VAProfileMPEG4Main = 4, VAProfileH264Baseline __attribute__((deprecated)) = 5, VAProfileH264Main = 6, VAProfileH264High = 7, VAProfileVC1Simple = 8, VAProfileVC1Main = 9, VAProfileVC1Advanced = 10, VAProfileH263Baseline = 11, VAProfileJPEGBaseline = 12, VAProfileH264ConstrainedBaseline = 13, VAProfileVP8Version0_3 = 14, VAProfileH264MultiviewHigh = 15, VAProfileH264StereoHigh = 16, VAProfileHEVCMain = 17, VAProfileHEVCMain10 = 18, VAProfileVP9Profile0 = 19, VAProfileVP9Profile1 = 20, VAProfileVP9Profile2 = 21, VAProfileVP9Profile3 = 22, VAProfileHEVCMain12 = 23, VAProfileHEVCMain422_10 = 24, VAProfileHEVCMain422_12 = 25, VAProfileHEVCMain444 = 26, VAProfileHEVCMain444_10 = 27, VAProfileHEVCMain444_12 = 28, VAProfileHEVCSccMain = 29, VAProfileHEVCSccMain10 = 30, VAProfileHEVCSccMain444 = 31, VAProfileAV1Profile0 = 32, VAProfileAV1Profile1 = 33, VAProfileHEVCSccMain444_10 = 34, VAProfileProtected = 35 } VAProfile; typedef enum { VAEntrypointVLD = 1, VAEntrypointIZZ = 2, VAEntrypointIDCT = 3, VAEntrypointMoComp = 4, VAEntrypointDeblocking = 5, VAEntrypointEncSlice = 6, VAEntrypointEncPicture = 7, VAEntrypointEncSliceLP = 8, VAEntrypointVideoProc = 10, VAEntrypointFEI = 11, VAEntrypointStats = 12, VAEntrypointProtectedTEEComm = 13, VAEntrypointProtectedContent = 14, } VAEntrypoint; typedef enum { VAConfigAttribRTFormat = 0, VAConfigAttribSpatialResidual = 1, VAConfigAttribSpatialClipping = 2, VAConfigAttribIntraResidual = 3, VAConfigAttribEncryption = 4, VAConfigAttribRateControl = 5, VAConfigAttribDecSliceMode = 6, VAConfigAttribDecJPEG = 7, VAConfigAttribDecProcessing = 8, VAConfigAttribEncPackedHeaders = 10, VAConfigAttribEncInterlaced = 11, VAConfigAttribEncMaxRefFrames = 13, VAConfigAttribEncMaxSlices = 14, VAConfigAttribEncSliceStructure = 15, VAConfigAttribEncMacroblockInfo = 16, VAConfigAttribMaxPictureWidth = 18, VAConfigAttribMaxPictureHeight = 19, VAConfigAttribEncJPEG = 20, VAConfigAttribEncQualityRange = 21, VAConfigAttribEncQuantization = 22, VAConfigAttribEncIntraRefresh = 23, VAConfigAttribEncSkipFrame = 24, VAConfigAttribEncROI = 25, VAConfigAttribEncRateControlExt = 26, VAConfigAttribProcessingRate = 27, VAConfigAttribEncDirtyRect = 28, VAConfigAttribEncParallelRateControl = 29, VAConfigAttribEncDynamicScaling = 30, VAConfigAttribFrameSizeToleranceSupport = 31, VAConfigAttribFEIFunctionType = 32, VAConfigAttribFEIMVPredictors = 33, VAConfigAttribStats = 34, VAConfigAttribEncTileSupport = 35, VAConfigAttribCustomRoundingControl = 36, VAConfigAttribQPBlockSize = 37, VAConfigAttribMaxFrameSize = 38, VAConfigAttribPredictionDirection = 39, VAConfigAttribMultipleFrame = 40, VAConfigAttribContextPriority = 41, VAConfigAttribDecAV1Features = 42, VAConfigAttribTEEType = 43, VAConfigAttribTEETypeClient = 44, VAConfigAttribProtectedContentCipherAlgorithm = 45, VAConfigAttribProtectedContentCipherBlockSize = 46, VAConfigAttribProtectedContentCipherMode = 47, VAConfigAttribProtectedContentCipherSampleType = 48, VAConfigAttribProtectedContentUsage = 49, VAConfigAttribEncHEVCFeatures = 50, VAConfigAttribEncHEVCBlockSizes = 51, VAConfigAttribTypeMax } VAConfigAttribType; typedef struct _VAConfigAttrib { VAConfigAttribType type; uint32_t value; } VAConfigAttrib; typedef union _VAConfigAttribValDecJPEG { struct { uint32_t rotation : 4; uint32_t reserved : 28; } bits; uint32_t value; } VAConfigAttribValDecJPEG; typedef union _VAConfigAttribValMaxFrameSize { struct { uint32_t max_frame_size : 1; uint32_t multiple_pass : 1; uint32_t reserved : 30; } bits; uint32_t value; } VAConfigAttribValMaxFrameSize; typedef union _VAConfigAttribValEncJPEG { struct { uint32_t arithmatic_coding_mode : 1; uint32_t progressive_dct_mode : 1; uint32_t non_interleaved_mode : 1; uint32_t differential_mode : 1; uint32_t max_num_components : 3; uint32_t max_num_scans : 4; uint32_t max_num_huffman_tables : 3; uint32_t max_num_quantization_tables : 3; } bits; uint32_t value; } VAConfigAttribValEncJPEG; typedef union _VAConfigAttribValEncROI { struct { uint32_t num_roi_regions : 8; uint32_t roi_rc_priority_support : 1; uint32_t roi_rc_qp_delta_support : 1; uint32_t reserved : 22; } bits; uint32_t value; } VAConfigAttribValEncROI; typedef union _VAConfigAttribValEncRateControlExt { struct { uint32_t max_num_temporal_layers_minus1 : 8; uint32_t temporal_layer_bitrate_control_flag : 1; uint32_t reserved : 23; } bits; uint32_t value; } VAConfigAttribValEncRateControlExt; typedef union _VAConfigAttribValMultipleFrame { struct { uint32_t max_num_concurrent_frames : 8; uint32_t mixed_quality_level : 1; uint32_t reserved : 23; } bits; uint32_t value; } VAConfigAttribValMultipleFrame; typedef union _VAConfigAttribValContextPriority { struct { uint32_t priority : 16; uint32_t reserved : 16; } bits; uint32_t value; } VAConfigAttribValContextPriority; int vaMaxNumProfiles( VADisplay dpy ); int vaMaxNumEntrypoints( VADisplay dpy ); int vaMaxNumConfigAttributes( VADisplay dpy ); VAStatus vaQueryConfigProfiles( VADisplay dpy, VAProfile *profile_list, int *num_profiles ); VAStatus vaQueryConfigEntrypoints( VADisplay dpy, VAProfile profile, VAEntrypoint *entrypoint_list, int *num_entrypoints ); VAStatus vaGetConfigAttributes( VADisplay dpy, VAProfile profile, VAEntrypoint entrypoint, VAConfigAttrib *attrib_list, int num_attribs ); typedef unsigned int VAGenericID; typedef VAGenericID VAConfigID; VAStatus vaCreateConfig( VADisplay dpy, VAProfile profile, VAEntrypoint entrypoint, VAConfigAttrib *attrib_list, int num_attribs, VAConfigID *config_id ); VAStatus vaDestroyConfig( VADisplay dpy, VAConfigID config_id ); VAStatus vaQueryConfigAttributes( VADisplay dpy, VAConfigID config_id, VAProfile *profile, VAEntrypoint *entrypoint, VAConfigAttrib *attrib_list, int *num_attribs ); typedef VAGenericID VAContextID; typedef VAGenericID VASurfaceID; typedef enum { VAGenericValueTypeInteger = 1, VAGenericValueTypeFloat, VAGenericValueTypePointer, VAGenericValueTypeFunc } VAGenericValueType; typedef void (*VAGenericFunc)(void); typedef struct _VAGenericValue { VAGenericValueType type; union { int32_t i; float f; void *p; VAGenericFunc fn; } value; } VAGenericValue; typedef enum { VASurfaceAttribNone = 0, VASurfaceAttribPixelFormat, VASurfaceAttribMinWidth, VASurfaceAttribMaxWidth, VASurfaceAttribMinHeight, VASurfaceAttribMaxHeight, VASurfaceAttribMemoryType, VASurfaceAttribExternalBufferDescriptor, VASurfaceAttribUsageHint, VASurfaceAttribDRMFormatModifiers, VASurfaceAttribCount } VASurfaceAttribType; typedef struct _VASurfaceAttrib { VASurfaceAttribType type; uint32_t flags; VAGenericValue value; } VASurfaceAttrib; typedef struct _VASurfaceAttribExternalBuffers { uint32_t pixel_format; uint32_t width; uint32_t height; uint32_t data_size; uint32_t num_planes; uint32_t pitches[4]; uint32_t offsets[4]; uintptr_t *buffers; uint32_t num_buffers; uint32_t flags; void *private_data; } VASurfaceAttribExternalBuffers; VAStatus vaQuerySurfaceAttributes( VADisplay dpy, VAConfigID config, VASurfaceAttrib *attrib_list, unsigned int *num_attribs ); VAStatus vaCreateSurfaces( VADisplay dpy, unsigned int format, unsigned int width, unsigned int height, VASurfaceID *surfaces, unsigned int num_surfaces, VASurfaceAttrib *attrib_list, unsigned int num_attribs ); VAStatus vaDestroySurfaces( VADisplay dpy, VASurfaceID *surfaces, int num_surfaces ); VAStatus vaCreateContext( VADisplay dpy, VAConfigID config_id, int picture_width, int picture_height, int flag, VASurfaceID *render_targets, int num_render_targets, VAContextID *context ); VAStatus vaDestroyContext( VADisplay dpy, VAContextID context ); typedef VAGenericID VAMFContextID; VAStatus vaCreateMFContext( VADisplay dpy, VAMFContextID *mf_context ); VAStatus vaMFAddContext( VADisplay dpy, VAMFContextID mf_context, VAContextID context ); VAStatus vaMFReleaseContext( VADisplay dpy, VAMFContextID mf_context, VAContextID context ); typedef VAGenericID VABufferID; typedef enum { VAPictureParameterBufferType = 0, VAIQMatrixBufferType = 1, VABitPlaneBufferType = 2, VASliceGroupMapBufferType = 3, VASliceParameterBufferType = 4, VASliceDataBufferType = 5, VAMacroblockParameterBufferType = 6, VAResidualDataBufferType = 7, VADeblockingParameterBufferType = 8, VAImageBufferType = 9, VAProtectedSliceDataBufferType = 10, VAQMatrixBufferType = 11, VAHuffmanTableBufferType = 12, VAProbabilityBufferType = 13, VAEncCodedBufferType = 21, VAEncSequenceParameterBufferType = 22, VAEncPictureParameterBufferType = 23, VAEncSliceParameterBufferType = 24, VAEncPackedHeaderParameterBufferType = 25, VAEncPackedHeaderDataBufferType = 26, VAEncMiscParameterBufferType = 27, VAEncMacroblockParameterBufferType = 28, VAEncMacroblockMapBufferType = 29, VAEncQPBufferType = 30, VAProcPipelineParameterBufferType = 41, VAProcFilterParameterBufferType = 42, VAEncFEIMVBufferType = 43, VAEncFEIMBCodeBufferType = 44, VAEncFEIDistortionBufferType = 45, VAEncFEIMBControlBufferType = 46, VAEncFEIMVPredictorBufferType = 47, VAStatsStatisticsParameterBufferType = 48, VAStatsStatisticsBufferType = 49, VAStatsStatisticsBottomFieldBufferType = 50, VAStatsMVBufferType = 51, VAStatsMVPredictorBufferType = 52, VAEncMacroblockDisableSkipMapBufferType = 53, VAEncFEICTBCmdBufferType = 54, VAEncFEICURecordBufferType = 55, VADecodeStreamoutBufferType = 56, VASubsetsParameterBufferType = 57, VAContextParameterUpdateBufferType = 58, VAProtectedSessionExecuteBufferType = 59, VAEncryptionParameterBufferType = 60, VABufferTypeMax } VABufferType; typedef struct _VAContextParameterUpdateBuffer { union { struct { uint32_t context_priority_update : 1; uint32_t reserved : 31; } bits; uint32_t value; } flags; VAConfigAttribValContextPriority context_priority; uint32_t reserved[8]; } VAContextParameterUpdateBuffer; typedef struct _VAEncryptionSegmentInfo { uint32_t segment_start_offset; uint32_t segment_length; uint32_t partial_aes_block_size; uint32_t init_byte_length; uint8_t aes_cbc_iv_or_ctr[64]; uint32_t va_reserved[8]; } VAEncryptionSegmentInfo; typedef struct _VAEncryptionParameters { uint32_t encryption_type; uint32_t num_segments; VAEncryptionSegmentInfo *segment_info; uint32_t status_report_index; uint32_t size_of_length; uint8_t wrapped_decrypt_blob[64]; uint8_t wrapped_encrypt_blob[64]; uint32_t key_blob_size; uint32_t blocks_stripe_encrypted; uint32_t blocks_stripe_clear; uint32_t va_reserved[8]; } VAEncryptionParameters; typedef struct _VAProcessingRateParameterEnc { uint8_t level_idc; uint8_t reserved[3]; uint32_t quality_level; uint32_t intra_period; uint32_t ip_period; } VAProcessingRateParameterEnc; typedef struct _VAProcessingRateParameterDec { uint8_t level_idc; uint8_t reserved0[3]; uint32_t reserved; } VAProcessingRateParameterDec; typedef struct _VAProcessingRateParameter { union { VAProcessingRateParameterEnc proc_buf_enc; VAProcessingRateParameterDec proc_buf_dec; }; } VAProcessingRateParameter; VAStatus vaQueryProcessingRate( VADisplay dpy, VAConfigID config, VAProcessingRateParameter *proc_buf, unsigned int *processing_rate ); typedef enum { VAEncMiscParameterTypeFrameRate = 0, VAEncMiscParameterTypeRateControl = 1, VAEncMiscParameterTypeMaxSliceSize = 2, VAEncMiscParameterTypeAIR = 3, VAEncMiscParameterTypeMaxFrameSize = 4, VAEncMiscParameterTypeHRD = 5, VAEncMiscParameterTypeQualityLevel = 6, VAEncMiscParameterTypeRIR = 7, VAEncMiscParameterTypeQuantization = 8, VAEncMiscParameterTypeSkipFrame = 9, VAEncMiscParameterTypeROI = 10, VAEncMiscParameterTypeMultiPassFrameSize = 11, VAEncMiscParameterTypeTemporalLayerStructure = 12, VAEncMiscParameterTypeDirtyRect = 13, VAEncMiscParameterTypeParallelBRC = 14, VAEncMiscParameterTypeSubMbPartPel = 15, VAEncMiscParameterTypeEncQuality = 16, VAEncMiscParameterTypeCustomRoundingControl = 17, VAEncMiscParameterTypeFEIFrameControl = 18, VAEncMiscParameterTypeExtensionData = 19 } VAEncMiscParameterType; typedef enum { VAEncPackedHeaderSequence = 1, VAEncPackedHeaderPicture = 2, VAEncPackedHeaderSlice = 3, VAEncPackedHeaderRawData = 4, VAEncPackedHeaderMiscMask __attribute__((deprecated)) = 0x80000000, } VAEncPackedHeaderType; typedef struct _VAEncPackedHeaderParameterBuffer { uint32_t type; uint32_t bit_length; uint8_t has_emulation_bytes; uint32_t va_reserved[4]; } VAEncPackedHeaderParameterBuffer; typedef struct _VAEncMiscParameterBuffer { VAEncMiscParameterType type; uint32_t data[]; } VAEncMiscParameterBuffer; typedef struct _VAEncMiscParameterTemporalLayerStructure { uint32_t number_of_layers; uint32_t periodicity; uint32_t layer_id[32]; uint32_t va_reserved[4]; } VAEncMiscParameterTemporalLayerStructure; typedef struct _VAEncMiscParameterRateControl { uint32_t bits_per_second; uint32_t target_percentage; uint32_t window_size; uint32_t initial_qp; uint32_t min_qp; uint32_t basic_unit_size; union { struct { uint32_t reset : 1; uint32_t disable_frame_skip : 1; uint32_t disable_bit_stuffing : 1; uint32_t mb_rate_control : 4; uint32_t temporal_id : 8; uint32_t cfs_I_frames : 1; uint32_t enable_parallel_brc : 1; uint32_t enable_dynamic_scaling : 1; uint32_t frame_tolerance_mode : 2; uint32_t reserved : 12; } bits; uint32_t value; } rc_flags; uint32_t ICQ_quality_factor; uint32_t max_qp; uint32_t quality_factor; uint32_t target_frame_size; uint32_t va_reserved[4]; } VAEncMiscParameterRateControl; typedef struct _VAEncMiscParameterFrameRate { uint32_t framerate; union { struct { uint32_t temporal_id : 8; uint32_t reserved : 24; } bits; uint32_t value; } framerate_flags; uint32_t va_reserved[4]; } VAEncMiscParameterFrameRate; typedef struct _VAEncMiscParameterMaxSliceSize { uint32_t max_slice_size; uint32_t va_reserved[4]; } VAEncMiscParameterMaxSliceSize; typedef struct _VAEncMiscParameterAIR { uint32_t air_num_mbs; uint32_t air_threshold; uint32_t air_auto; uint32_t va_reserved[4]; } VAEncMiscParameterAIR; typedef struct _VAEncMiscParameterRIR { union { struct { uint32_t enable_rir_column : 1; uint32_t enable_rir_row : 1; uint32_t reserved : 30; } bits; uint32_t value; } rir_flags; uint16_t intra_insertion_location; uint16_t intra_insert_size; uint8_t qp_delta_for_inserted_intra; uint32_t va_reserved[4]; } VAEncMiscParameterRIR; typedef struct _VAEncMiscParameterHRD { uint32_t initial_buffer_fullness; uint32_t buffer_size; uint32_t va_reserved[4]; } VAEncMiscParameterHRD; typedef struct _VAEncMiscParameterBufferMaxFrameSize { __attribute__((deprecated)) VAEncMiscParameterType type; uint32_t max_frame_size; uint32_t va_reserved[4]; } VAEncMiscParameterBufferMaxFrameSize; typedef struct _VAEncMiscParameterBufferMultiPassFrameSize { __attribute__((deprecated)) VAEncMiscParameterType type; uint32_t max_frame_size; uint32_t reserved; uint8_t num_passes; uint8_t *delta_qp; unsigned long va_reserved[4]; } VAEncMiscParameterBufferMultiPassFrameSize; typedef struct _VAEncMiscParameterBufferQualityLevel { uint32_t quality_level; uint32_t va_reserved[4]; } VAEncMiscParameterBufferQualityLevel; typedef struct _VAEncMiscParameterQuantization { union { struct { uint32_t disable_trellis : 1; uint32_t enable_trellis_I : 1; uint32_t enable_trellis_P : 1; uint32_t enable_trellis_B : 1; uint32_t reserved : 28; } bits; uint32_t value; } quantization_flags; uint32_t va_reserved; } VAEncMiscParameterQuantization; typedef struct _VAEncMiscParameterSkipFrame { uint8_t skip_frame_flag; uint8_t num_skip_frames; uint32_t size_skip_frames; uint32_t va_reserved[4]; } VAEncMiscParameterSkipFrame; typedef struct _VAEncROI { VARectangle roi_rectangle; int8_t roi_value; } VAEncROI; typedef struct _VAEncMiscParameterBufferROI { uint32_t num_roi; int8_t max_delta_qp; int8_t min_delta_qp; VAEncROI *roi; union { struct { uint32_t roi_value_is_qp_delta : 1; uint32_t reserved : 31; } bits; uint32_t value; } roi_flags; uint32_t va_reserved[4]; } VAEncMiscParameterBufferROI; typedef struct _VAEncMiscParameterBufferDirtyRect { uint32_t num_roi_rectangle; VARectangle *roi_rectangle; } VAEncMiscParameterBufferDirtyRect; typedef struct _VAEncMiscParameterParallelRateControl { uint32_t num_layers; uint32_t *num_b_in_gop; } VAEncMiscParameterParallelRateControl; typedef struct _VAEncMiscParameterEncQuality { union { struct { uint32_t useRawPicForRef : 1; uint32_t skipCheckDisable : 1; uint32_t FTQOverride : 1; uint32_t FTQEnable : 1; uint32_t FTQSkipThresholdLUTInput : 1; uint32_t NonFTQSkipThresholdLUTInput : 1; uint32_t ReservedBit : 1; uint32_t directBiasAdjustmentEnable : 1; uint32_t globalMotionBiasAdjustmentEnable : 1; uint32_t HMEMVCostScalingFactor : 2; uint32_t HMEDisable : 1; uint32_t SuperHMEDisable : 1; uint32_t UltraHMEDisable : 1; uint32_t PanicModeDisable : 1; uint32_t ForceRepartitionCheck : 2; }; uint32_t encControls; }; uint8_t FTQSkipThresholdLUT[52]; uint16_t NonFTQSkipThresholdLUT[52]; uint32_t reserved[16]; } VAEncMiscParameterEncQuality; typedef struct _VAEncMiscParameterCustomRoundingControl { union { struct { uint32_t enable_custom_rouding_intra : 1 ; uint32_t rounding_offset_intra : 7; uint32_t enable_custom_rounding_inter : 1 ; uint32_t rounding_offset_inter : 7; uint32_t reserved : 16; } bits; uint32_t value; } rounding_offset_setting; } VAEncMiscParameterCustomRoundingControl; typedef struct _VASliceParameterBufferBase { uint32_t slice_data_size; uint32_t slice_data_offset; uint32_t slice_data_flag; } VASliceParameterBufferBase; typedef struct _VAHuffmanTableBufferJPEGBaseline { uint8_t load_huffman_table[2]; struct { uint8_t num_dc_codes[16]; uint8_t dc_values[12]; uint8_t num_ac_codes[16]; uint8_t ac_values[162]; uint8_t pad[2]; } huffman_table[2]; uint32_t va_reserved[4]; } VAHuffmanTableBufferJPEGBaseline; typedef struct _VAPictureParameterBufferMPEG2 { uint16_t horizontal_size; uint16_t vertical_size; VASurfaceID forward_reference_picture; VASurfaceID backward_reference_picture; int32_t picture_coding_type; int32_t f_code; union { struct { uint32_t intra_dc_precision : 2; uint32_t picture_structure : 2; uint32_t top_field_first : 1; uint32_t frame_pred_frame_dct : 1; uint32_t concealment_motion_vectors : 1; uint32_t q_scale_type : 1; uint32_t intra_vlc_format : 1; uint32_t alternate_scan : 1; uint32_t repeat_first_field : 1; uint32_t progressive_frame : 1; uint32_t is_first_field : 1; } bits; uint32_t value; } picture_coding_extension; uint32_t va_reserved[4]; } VAPictureParameterBufferMPEG2; typedef struct _VAIQMatrixBufferMPEG2 { int32_t load_intra_quantiser_matrix; int32_t load_non_intra_quantiser_matrix; int32_t load_chroma_intra_quantiser_matrix; int32_t load_chroma_non_intra_quantiser_matrix; uint8_t intra_quantiser_matrix[64]; uint8_t non_intra_quantiser_matrix[64]; uint8_t chroma_intra_quantiser_matrix[64]; uint8_t chroma_non_intra_quantiser_matrix[64]; uint32_t va_reserved[4]; } VAIQMatrixBufferMPEG2; typedef struct _VASliceParameterBufferMPEG2 { uint32_t slice_data_size; uint32_t slice_data_offset; uint32_t slice_data_flag; uint32_t macroblock_offset; uint32_t slice_horizontal_position; uint32_t slice_vertical_position; int32_t quantiser_scale_code; int32_t intra_slice_flag; uint32_t va_reserved[4]; } VASliceParameterBufferMPEG2; typedef struct _VAMacroblockParameterBufferMPEG2 { uint16_t macroblock_address; uint8_t macroblock_type; union { struct { uint32_t frame_motion_type : 2; uint32_t field_motion_type : 2; uint32_t dct_type : 1; } bits; uint32_t value; } macroblock_modes; uint8_t motion_vertical_field_select; int16_t PMV[2][2][2]; uint16_t coded_block_pattern; uint16_t num_skipped_macroblocks; uint32_t va_reserved[4]; } VAMacroblockParameterBufferMPEG2; typedef struct _VAPictureParameterBufferMPEG4 { uint16_t vop_width; uint16_t vop_height; VASurfaceID forward_reference_picture; VASurfaceID backward_reference_picture; union { struct { uint32_t short_video_header : 1; uint32_t chroma_format : 2; uint32_t interlaced : 1; uint32_t obmc_disable : 1; uint32_t sprite_enable : 2; uint32_t sprite_warping_accuracy : 2; uint32_t quant_type : 1; uint32_t quarter_sample : 1; uint32_t data_partitioned : 1; uint32_t reversible_vlc : 1; uint32_t resync_marker_disable : 1; } bits; uint32_t value; } vol_fields; uint8_t no_of_sprite_warping_points; int16_t sprite_trajectory_du[3]; int16_t sprite_trajectory_dv[3]; uint8_t quant_precision; union { struct { uint32_t vop_coding_type : 2; uint32_t backward_reference_vop_coding_type : 2; uint32_t vop_rounding_type : 1; uint32_t intra_dc_vlc_thr : 3; uint32_t top_field_first : 1; uint32_t alternate_vertical_scan_flag : 1; } bits; uint32_t value; } vop_fields; uint8_t vop_fcode_forward; uint8_t vop_fcode_backward; uint16_t vop_time_increment_resolution; uint8_t num_gobs_in_vop; uint8_t num_macroblocks_in_gob; int16_t TRB; int16_t TRD; uint32_t va_reserved[4]; } VAPictureParameterBufferMPEG4; typedef struct _VAIQMatrixBufferMPEG4 { int32_t load_intra_quant_mat; int32_t load_non_intra_quant_mat; uint8_t intra_quant_mat[64]; uint8_t non_intra_quant_mat[64]; uint32_t va_reserved[4]; } VAIQMatrixBufferMPEG4; typedef struct _VASliceParameterBufferMPEG4 { uint32_t slice_data_size; uint32_t slice_data_offset; uint32_t slice_data_flag; uint32_t macroblock_offset; uint32_t macroblock_number; int32_t quant_scale; uint32_t va_reserved[4]; } VASliceParameterBufferMPEG4; typedef enum { VAMvMode1Mv = 0, VAMvMode1MvHalfPel = 1, VAMvMode1MvHalfPelBilinear = 2, VAMvModeMixedMv = 3, VAMvModeIntensityCompensation = 4 } VAMvModeVC1; typedef struct _VAPictureParameterBufferVC1 { VASurfaceID forward_reference_picture; VASurfaceID backward_reference_picture; VASurfaceID inloop_decoded_picture; union { struct { uint32_t pulldown : 1; uint32_t interlace : 1; uint32_t tfcntrflag : 1; uint32_t finterpflag : 1; uint32_t psf : 1; uint32_t multires : 1; uint32_t overlap : 1; uint32_t syncmarker : 1; uint32_t rangered : 1; uint32_t max_b_frames : 3; uint32_t profile : 2; } bits; uint32_t value; } sequence_fields; uint16_t coded_width; uint16_t coded_height; union { struct { uint32_t broken_link : 1; uint32_t closed_entry : 1; uint32_t panscan_flag : 1; uint32_t loopfilter : 1; } bits; uint32_t value; } entrypoint_fields; uint8_t conditional_overlap_flag; uint8_t fast_uvmc_flag; union { struct { uint32_t luma_flag : 1; uint32_t luma : 3; uint32_t chroma_flag : 1; uint32_t chroma : 3; } bits; uint32_t value; } range_mapping_fields; uint8_t b_picture_fraction; uint8_t cbp_table; uint8_t mb_mode_table; uint8_t range_reduction_frame; uint8_t rounding_control; uint8_t post_processing; uint8_t picture_resolution_index; uint8_t luma_scale; uint8_t luma_shift; union { struct { uint32_t picture_type : 3; uint32_t frame_coding_mode : 3; uint32_t top_field_first : 1; uint32_t is_first_field : 1; uint32_t intensity_compensation : 1; } bits; uint32_t value; } picture_fields; union { struct { uint32_t mv_type_mb : 1; uint32_t direct_mb : 1; uint32_t skip_mb : 1; uint32_t field_tx : 1; uint32_t forward_mb : 1; uint32_t ac_pred : 1; uint32_t overflags : 1; } flags; uint32_t value; } raw_coding; union { struct { uint32_t bp_mv_type_mb : 1; uint32_t bp_direct_mb : 1; uint32_t bp_skip_mb : 1; uint32_t bp_field_tx : 1; uint32_t bp_forward_mb : 1; uint32_t bp_ac_pred : 1; uint32_t bp_overflags : 1; } flags; uint32_t value; } bitplane_present; union { struct { uint32_t reference_distance_flag : 1; uint32_t reference_distance : 5; uint32_t num_reference_pictures: 1; uint32_t reference_field_pic_indicator : 1; } bits; uint32_t value; } reference_fields; union { struct { uint32_t mv_mode : 3; uint32_t mv_mode2 : 3; uint32_t mv_table : 3; uint32_t two_mv_block_pattern_table: 2; uint32_t four_mv_switch : 1; uint32_t four_mv_block_pattern_table : 2; uint32_t extended_mv_flag : 1; uint32_t extended_mv_range : 2; uint32_t extended_dmv_flag : 1; uint32_t extended_dmv_range : 2; } bits; uint32_t value; } mv_fields; union { struct { uint32_t dquant : 2; uint32_t quantizer : 2; uint32_t half_qp : 1; uint32_t pic_quantizer_scale : 5; uint32_t pic_quantizer_type : 1; uint32_t dq_frame : 1; uint32_t dq_profile : 2; uint32_t dq_sb_edge : 2; uint32_t dq_db_edge : 2; uint32_t dq_binary_level : 1; uint32_t alt_pic_quantizer : 5; } bits; uint32_t value; } pic_quantizer_fields; union { struct { uint32_t variable_sized_transform_flag : 1; uint32_t mb_level_transform_type_flag : 1; uint32_t frame_level_transform_type : 2; uint32_t transform_ac_codingset_idx1 : 2; uint32_t transform_ac_codingset_idx2 : 2; uint32_t intra_transform_dc_table : 1; } bits; uint32_t value; } transform_fields; uint8_t luma_scale2; uint8_t luma_shift2; uint8_t intensity_compensation_field; uint32_t va_reserved[8 - 1]; } VAPictureParameterBufferVC1; typedef struct _VASliceParameterBufferVC1 { uint32_t slice_data_size; uint32_t slice_data_offset; uint32_t slice_data_flag; uint32_t macroblock_offset; uint32_t slice_vertical_position; uint32_t va_reserved[4]; } VASliceParameterBufferVC1; typedef struct _VAPictureH264 { VASurfaceID picture_id; uint32_t frame_idx; uint32_t flags; int32_t TopFieldOrderCnt; int32_t BottomFieldOrderCnt; uint32_t va_reserved[4]; } VAPictureH264; typedef struct _VAPictureParameterBufferH264 { VAPictureH264 CurrPic; VAPictureH264 ReferenceFrames[16]; uint16_t picture_width_in_mbs_minus1; uint16_t picture_height_in_mbs_minus1; uint8_t bit_depth_luma_minus8; uint8_t bit_depth_chroma_minus8; uint8_t num_ref_frames; union { struct { uint32_t chroma_format_idc : 2; uint32_t residual_colour_transform_flag : 1; uint32_t gaps_in_frame_num_value_allowed_flag : 1; uint32_t frame_mbs_only_flag : 1; uint32_t mb_adaptive_frame_field_flag : 1; uint32_t direct_8x8_inference_flag : 1; uint32_t MinLumaBiPredSize8x8 : 1; uint32_t log2_max_frame_num_minus4 : 4; uint32_t pic_order_cnt_type : 2; uint32_t log2_max_pic_order_cnt_lsb_minus4 : 4; uint32_t delta_pic_order_always_zero_flag : 1; } bits; uint32_t value; } seq_fields; __attribute__((deprecated)) uint8_t num_slice_groups_minus1; __attribute__((deprecated)) uint8_t slice_group_map_type; __attribute__((deprecated)) uint16_t slice_group_change_rate_minus1; int8_t pic_init_qp_minus26; int8_t pic_init_qs_minus26; int8_t chroma_qp_index_offset; int8_t second_chroma_qp_index_offset; union { struct { uint32_t entropy_coding_mode_flag : 1; uint32_t weighted_pred_flag : 1; uint32_t weighted_bipred_idc : 2; uint32_t transform_8x8_mode_flag : 1; uint32_t field_pic_flag : 1; uint32_t constrained_intra_pred_flag : 1; uint32_t pic_order_present_flag : 1; uint32_t deblocking_filter_control_present_flag : 1; uint32_t redundant_pic_cnt_present_flag : 1; uint32_t reference_pic_flag : 1; } bits; uint32_t value; } pic_fields; uint16_t frame_num; uint32_t va_reserved[8]; } VAPictureParameterBufferH264; typedef struct _VAIQMatrixBufferH264 { uint8_t ScalingList4x4[6][16]; uint8_t ScalingList8x8[2][64]; uint32_t va_reserved[4]; } VAIQMatrixBufferH264; typedef struct _VASliceParameterBufferH264 { uint32_t slice_data_size; uint32_t slice_data_offset; uint32_t slice_data_flag; uint16_t slice_data_bit_offset; uint16_t first_mb_in_slice; uint8_t slice_type; uint8_t direct_spatial_mv_pred_flag; uint8_t num_ref_idx_l0_active_minus1; uint8_t num_ref_idx_l1_active_minus1; uint8_t cabac_init_idc; int8_t slice_qp_delta; uint8_t disable_deblocking_filter_idc; int8_t slice_alpha_c0_offset_div2; int8_t slice_beta_offset_div2; VAPictureH264 RefPicList0[32]; VAPictureH264 RefPicList1[32]; uint8_t luma_log2_weight_denom; uint8_t chroma_log2_weight_denom; uint8_t luma_weight_l0_flag; int16_t luma_weight_l0[32]; int16_t luma_offset_l0[32]; uint8_t chroma_weight_l0_flag; int16_t chroma_weight_l0[32][2]; int16_t chroma_offset_l0[32][2]; uint8_t luma_weight_l1_flag; int16_t luma_weight_l1[32]; int16_t luma_offset_l1[32]; uint8_t chroma_weight_l1_flag; int16_t chroma_weight_l1[32][2]; int16_t chroma_offset_l1[32][2]; uint32_t va_reserved[4]; } VASliceParameterBufferH264; typedef enum { VAEncPictureTypeIntra = 0, VAEncPictureTypePredictive = 1, VAEncPictureTypeBidirectional = 2, } VAEncPictureType; typedef struct _VAEncSliceParameterBuffer { uint32_t start_row_number; uint32_t slice_height; union { struct { uint32_t is_intra : 1; uint32_t disable_deblocking_filter_idc : 2; uint32_t uses_long_term_ref : 1; uint32_t is_long_term_ref : 1; } bits; uint32_t value; } slice_flags; uint32_t va_reserved[4]; } VAEncSliceParameterBuffer; typedef struct _VAEncSequenceParameterBufferH263 { uint32_t intra_period; uint32_t bits_per_second; uint32_t frame_rate; uint32_t initial_qp; uint32_t min_qp; uint32_t va_reserved[4]; } VAEncSequenceParameterBufferH263; typedef struct _VAEncPictureParameterBufferH263 { VASurfaceID reference_picture; VASurfaceID reconstructed_picture; VABufferID coded_buf; uint16_t picture_width; uint16_t picture_height; VAEncPictureType picture_type; uint32_t va_reserved[4]; } VAEncPictureParameterBufferH263; typedef struct _VAEncSequenceParameterBufferMPEG4 { uint8_t profile_and_level_indication; uint32_t intra_period; uint32_t video_object_layer_width; uint32_t video_object_layer_height; uint32_t vop_time_increment_resolution; uint32_t fixed_vop_rate; uint32_t fixed_vop_time_increment; uint32_t bits_per_second; uint32_t frame_rate; uint32_t initial_qp; uint32_t min_qp; uint32_t va_reserved[4]; } VAEncSequenceParameterBufferMPEG4; typedef struct _VAEncPictureParameterBufferMPEG4 { VASurfaceID reference_picture; VASurfaceID reconstructed_picture; VABufferID coded_buf; uint16_t picture_width; uint16_t picture_height; uint32_t modulo_time_base; uint32_t vop_time_increment; VAEncPictureType picture_type; uint32_t va_reserved[4]; } VAEncPictureParameterBufferMPEG4; VAStatus vaCreateBuffer( VADisplay dpy, VAContextID context, VABufferType type, unsigned int size, unsigned int num_elements, void *data, VABufferID *buf_id ); VAStatus vaCreateBuffer2( VADisplay dpy, VAContextID context, VABufferType type, unsigned int width, unsigned int height, unsigned int *unit_size, unsigned int *pitch, VABufferID *buf_id ); VAStatus vaBufferSetNumElements( VADisplay dpy, VABufferID buf_id, unsigned int num_elements ); typedef struct _VACodedBufferSegment { uint32_t size; uint32_t bit_offset; uint32_t status; uint32_t reserved; void *buf; void *next; uint32_t va_reserved[4]; } VACodedBufferSegment; VAStatus vaMapBuffer( VADisplay dpy, VABufferID buf_id, void **pbuf ); VAStatus vaUnmapBuffer( VADisplay dpy, VABufferID buf_id ); VAStatus vaDestroyBuffer( VADisplay dpy, VABufferID buffer_id ); typedef struct { uintptr_t handle; uint32_t type; uint32_t mem_type; size_t mem_size; uint32_t va_reserved[4]; } VABufferInfo; VAStatus vaAcquireBufferHandle(VADisplay dpy, VABufferID buf_id, VABufferInfo *buf_info); VAStatus vaReleaseBufferHandle(VADisplay dpy, VABufferID buf_id); VAStatus vaExportSurfaceHandle(VADisplay dpy, VASurfaceID surface_id, uint32_t mem_type, uint32_t flags, void *descriptor); VAStatus vaBeginPicture( VADisplay dpy, VAContextID context, VASurfaceID render_target ); VAStatus vaRenderPicture( VADisplay dpy, VAContextID context, VABufferID *buffers, int num_buffers ); VAStatus vaEndPicture( VADisplay dpy, VAContextID context ); VAStatus vaMFSubmit( VADisplay dpy, VAMFContextID mf_context, VAContextID * contexts, int num_contexts ); VAStatus vaSyncSurface( VADisplay dpy, VASurfaceID render_target ); VAStatus vaSyncSurface2( VADisplay dpy, VASurfaceID surface, uint64_t timeout_ns ); typedef enum { VASurfaceRendering = 1, VASurfaceDisplaying = 2, VASurfaceReady = 4, VASurfaceSkipped = 8 } VASurfaceStatus; VAStatus vaQuerySurfaceStatus( VADisplay dpy, VASurfaceID render_target, VASurfaceStatus *status ); typedef enum { VADecodeSliceMissing = 0, VADecodeMBError = 1, } VADecodeErrorType; typedef struct _VASurfaceDecodeMBErrors { int32_t status; uint32_t start_mb; uint32_t end_mb; VADecodeErrorType decode_error_type; uint32_t num_mb; uint32_t va_reserved[4 - 1]; } VASurfaceDecodeMBErrors; VAStatus vaQuerySurfaceError( VADisplay dpy, VASurfaceID surface, VAStatus error_status, void **error_info ); VAStatus vaSyncBuffer( VADisplay dpy, VABufferID buf_id, uint64_t timeout_ns ); typedef struct _VAImageFormat { uint32_t fourcc; uint32_t byte_order; uint32_t bits_per_pixel; uint32_t depth; uint32_t red_mask; uint32_t green_mask; uint32_t blue_mask; uint32_t alpha_mask; uint32_t va_reserved[4]; } VAImageFormat; typedef VAGenericID VAImageID; typedef struct _VAImage { VAImageID image_id; VAImageFormat format; VABufferID buf; uint16_t width; uint16_t height; uint32_t data_size; uint32_t num_planes; uint32_t pitches[3]; uint32_t offsets[3]; int32_t num_palette_entries; int32_t entry_bytes; int8_t component_order[4]; uint32_t va_reserved[4]; } VAImage; int vaMaxNumImageFormats( VADisplay dpy ); VAStatus vaQueryImageFormats( VADisplay dpy, VAImageFormat *format_list, int *num_formats ); VAStatus vaCreateImage( VADisplay dpy, VAImageFormat *format, int width, int height, VAImage *image ); VAStatus vaDestroyImage( VADisplay dpy, VAImageID image ); VAStatus vaSetImagePalette( VADisplay dpy, VAImageID image, unsigned char *palette ); VAStatus vaGetImage( VADisplay dpy, VASurfaceID surface, int x, int y, unsigned int width, unsigned int height, VAImageID image ); VAStatus vaPutImage( VADisplay dpy, VASurfaceID surface, VAImageID image, int src_x, int src_y, unsigned int src_width, unsigned int src_height, int dest_x, int dest_y, unsigned int dest_width, unsigned int dest_height ); VAStatus vaDeriveImage( VADisplay dpy, VASurfaceID surface, VAImage *image ); typedef VAGenericID VASubpictureID; int vaMaxNumSubpictureFormats( VADisplay dpy ); VAStatus vaQuerySubpictureFormats( VADisplay dpy, VAImageFormat *format_list, unsigned int *flags, unsigned int *num_formats ); VAStatus vaCreateSubpicture( VADisplay dpy, VAImageID image, VASubpictureID *subpicture ); VAStatus vaDestroySubpicture( VADisplay dpy, VASubpictureID subpicture ); VAStatus vaSetSubpictureImage( VADisplay dpy, VASubpictureID subpicture, VAImageID image ); VAStatus vaSetSubpictureChromakey( VADisplay dpy, VASubpictureID subpicture, unsigned int chromakey_min, unsigned int chromakey_max, unsigned int chromakey_mask ); VAStatus vaSetSubpictureGlobalAlpha( VADisplay dpy, VASubpictureID subpicture, float global_alpha ); VAStatus vaAssociateSubpicture( VADisplay dpy, VASubpictureID subpicture, VASurfaceID *target_surfaces, int num_surfaces, int16_t src_x, int16_t src_y, uint16_t src_width, uint16_t src_height, int16_t dest_x, int16_t dest_y, uint16_t dest_width, uint16_t dest_height, uint32_t flags ); VAStatus vaDeassociateSubpicture( VADisplay dpy, VASubpictureID subpicture, VASurfaceID *target_surfaces, int num_surfaces ); typedef enum { VADISPLAYATTRIB_BLE_OFF = 0x00, VADISPLAYATTRIB_BLE_LOW, VADISPLAYATTRIB_BLE_MEDIUM, VADISPLAYATTRIB_BLE_HIGH, VADISPLAYATTRIB_BLE_NONE, } VADisplayAttribBLEMode; typedef union _VADisplayAttribValSubDevice { struct { uint32_t current_sub_device : 4; uint32_t sub_device_count : 4; uint32_t reserved : 8; uint32_t sub_device_mask : 16; } bits; uint32_t value; } VADisplayAttribValSubDevice; typedef enum { VADisplayAttribBrightness = 0, VADisplayAttribContrast = 1, VADisplayAttribHue = 2, VADisplayAttribSaturation = 3, VADisplayAttribBackgroundColor = 4, VADisplayAttribDirectSurface = 5, VADisplayAttribRotation = 6, VADisplayAttribOutofLoopDeblock = 7, VADisplayAttribBLEBlackMode = 8, VADisplayAttribBLEWhiteMode = 9, VADisplayAttribBlueStretch = 10, VADisplayAttribSkinColorCorrection = 11, VADisplayAttribCSCMatrix = 12, VADisplayAttribBlendColor = 13, VADisplayAttribOverlayAutoPaintColorKey = 14, VADisplayAttribOverlayColorKey = 15, VADisplayAttribRenderMode = 16, VADisplayAttribRenderDevice = 17, VADisplayAttribRenderRect = 18, VADisplayAttribSubDevice = 19, VADisplayAttribCopy = 20, } VADisplayAttribType; typedef struct _VADisplayAttribute { VADisplayAttribType type; int32_t min_value; int32_t max_value; int32_t value; uint32_t flags; uint32_t va_reserved[4]; } VADisplayAttribute; int vaMaxNumDisplayAttributes( VADisplay dpy ); VAStatus vaQueryDisplayAttributes( VADisplay dpy, VADisplayAttribute *attr_list, int *num_attributes ); VAStatus vaGetDisplayAttributes( VADisplay dpy, VADisplayAttribute *attr_list, int num_attributes ); VAStatus vaSetDisplayAttributes( VADisplay dpy, VADisplayAttribute *attr_list, int num_attributes ); typedef struct _VAPictureHEVC { VASurfaceID picture_id; int32_t pic_order_cnt; uint32_t flags; uint32_t va_reserved[4]; } VAPictureHEVC; typedef enum { VACopyObjectSurface = 0, VACopyObjectBuffer = 1, } VACopyObjectType; typedef struct _VACopyObject { VACopyObjectType obj_type; union { VASurfaceID surface_id; VABufferID buffer_id; } object; uint32_t va_reserved[8]; } VACopyObject; typedef union _VACopyOption { struct { uint32_t va_copy_sync : 2; uint32_t va_copy_mode : 4; uint32_t reserved : 26; } bits; uint32_t value; } VACopyOption; VAStatus vaCopy(VADisplay dpy, VACopyObject * dst, VACopyObject * src, VACopyOption option); typedef struct _VAPictureParameterBufferHEVC { VAPictureHEVC CurrPic; VAPictureHEVC ReferenceFrames[15]; uint16_t pic_width_in_luma_samples; uint16_t pic_height_in_luma_samples; union { struct { uint32_t chroma_format_idc : 2; uint32_t separate_colour_plane_flag : 1; uint32_t pcm_enabled_flag : 1; uint32_t scaling_list_enabled_flag : 1; uint32_t transform_skip_enabled_flag : 1; uint32_t amp_enabled_flag : 1; uint32_t strong_intra_smoothing_enabled_flag : 1; uint32_t sign_data_hiding_enabled_flag : 1; uint32_t constrained_intra_pred_flag : 1; uint32_t cu_qp_delta_enabled_flag : 1; uint32_t weighted_pred_flag : 1; uint32_t weighted_bipred_flag : 1; uint32_t transquant_bypass_enabled_flag : 1; uint32_t tiles_enabled_flag : 1; uint32_t entropy_coding_sync_enabled_flag : 1; uint32_t pps_loop_filter_across_slices_enabled_flag : 1; uint32_t loop_filter_across_tiles_enabled_flag : 1; uint32_t pcm_loop_filter_disabled_flag : 1; uint32_t NoPicReorderingFlag : 1; uint32_t NoBiPredFlag : 1; uint32_t ReservedBits : 11; } bits; uint32_t value; } pic_fields; uint8_t sps_max_dec_pic_buffering_minus1; uint8_t bit_depth_luma_minus8; uint8_t bit_depth_chroma_minus8; uint8_t pcm_sample_bit_depth_luma_minus1; uint8_t pcm_sample_bit_depth_chroma_minus1; uint8_t log2_min_luma_coding_block_size_minus3; uint8_t log2_diff_max_min_luma_coding_block_size; uint8_t log2_min_transform_block_size_minus2; uint8_t log2_diff_max_min_transform_block_size; uint8_t log2_min_pcm_luma_coding_block_size_minus3; uint8_t log2_diff_max_min_pcm_luma_coding_block_size; uint8_t max_transform_hierarchy_depth_intra; uint8_t max_transform_hierarchy_depth_inter; int8_t init_qp_minus26; uint8_t diff_cu_qp_delta_depth; int8_t pps_cb_qp_offset; int8_t pps_cr_qp_offset; uint8_t log2_parallel_merge_level_minus2; uint8_t num_tile_columns_minus1; uint8_t num_tile_rows_minus1; uint16_t column_width_minus1[19]; uint16_t row_height_minus1[21]; union { struct { uint32_t lists_modification_present_flag : 1; uint32_t long_term_ref_pics_present_flag : 1; uint32_t sps_temporal_mvp_enabled_flag : 1; uint32_t cabac_init_present_flag : 1; uint32_t output_flag_present_flag : 1; uint32_t dependent_slice_segments_enabled_flag : 1; uint32_t pps_slice_chroma_qp_offsets_present_flag : 1; uint32_t sample_adaptive_offset_enabled_flag : 1; uint32_t deblocking_filter_override_enabled_flag : 1; uint32_t pps_disable_deblocking_filter_flag : 1; uint32_t slice_segment_header_extension_present_flag : 1; uint32_t RapPicFlag : 1; uint32_t IdrPicFlag : 1; uint32_t IntraPicFlag : 1; uint32_t ReservedBits : 18; } bits; uint32_t value; } slice_parsing_fields; uint8_t log2_max_pic_order_cnt_lsb_minus4; uint8_t num_short_term_ref_pic_sets; uint8_t num_long_term_ref_pic_sps; uint8_t num_ref_idx_l0_default_active_minus1; uint8_t num_ref_idx_l1_default_active_minus1; int8_t pps_beta_offset_div2; int8_t pps_tc_offset_div2; uint8_t num_extra_slice_header_bits; uint32_t st_rps_bits; uint32_t va_reserved[8]; } VAPictureParameterBufferHEVC; typedef struct _VAPictureParameterBufferHEVCRext { union { struct { uint32_t transform_skip_rotation_enabled_flag : 1; uint32_t transform_skip_context_enabled_flag : 1; uint32_t implicit_rdpcm_enabled_flag : 1; uint32_t explicit_rdpcm_enabled_flag : 1; uint32_t extended_precision_processing_flag : 1; uint32_t intra_smoothing_disabled_flag : 1; uint32_t high_precision_offsets_enabled_flag : 1; uint32_t persistent_rice_adaptation_enabled_flag : 1; uint32_t cabac_bypass_alignment_enabled_flag : 1; uint32_t cross_component_prediction_enabled_flag : 1; uint32_t chroma_qp_offset_list_enabled_flag : 1; uint32_t reserved : 21; } bits; uint32_t value; } range_extension_pic_fields; uint8_t diff_cu_chroma_qp_offset_depth; uint8_t chroma_qp_offset_list_len_minus1; uint8_t log2_sao_offset_scale_luma; uint8_t log2_sao_offset_scale_chroma; uint8_t log2_max_transform_skip_block_size_minus2; int8_t cb_qp_offset_list[6]; int8_t cr_qp_offset_list[6]; } VAPictureParameterBufferHEVCRext; typedef struct _VAPictureParameterBufferHEVCScc { union { struct { uint32_t pps_curr_pic_ref_enabled_flag : 1; uint32_t palette_mode_enabled_flag : 1; uint32_t motion_vector_resolution_control_idc : 2; uint32_t intra_boundary_filtering_disabled_flag : 1; uint32_t residual_adaptive_colour_transform_enabled_flag : 1; uint32_t pps_slice_act_qp_offsets_present_flag : 1; uint32_t reserved : 25; } bits; uint32_t value; } screen_content_pic_fields; uint8_t palette_max_size; uint8_t delta_palette_max_predictor_size; uint8_t predictor_palette_size; uint16_t predictor_palette_entries[3][128]; int8_t pps_act_y_qp_offset_plus5; int8_t pps_act_cb_qp_offset_plus5; int8_t pps_act_cr_qp_offset_plus3; } VAPictureParameterBufferHEVCScc; typedef struct _VAPictureParameterBufferHEVCExtension { VAPictureParameterBufferHEVC base; VAPictureParameterBufferHEVCRext rext; VAPictureParameterBufferHEVCScc scc; } VAPictureParameterBufferHEVCExtension; typedef struct _VASliceParameterBufferHEVC { uint32_t slice_data_size; uint32_t slice_data_offset; uint32_t slice_data_flag; uint32_t slice_data_byte_offset; uint32_t slice_segment_address; uint8_t RefPicList[2][15]; union { uint32_t value; struct { uint32_t LastSliceOfPic : 1; uint32_t dependent_slice_segment_flag : 1; uint32_t slice_type : 2; uint32_t color_plane_id : 2; uint32_t slice_sao_luma_flag : 1; uint32_t slice_sao_chroma_flag : 1; uint32_t mvd_l1_zero_flag : 1; uint32_t cabac_init_flag : 1; uint32_t slice_temporal_mvp_enabled_flag : 1; uint32_t slice_deblocking_filter_disabled_flag : 1; uint32_t collocated_from_l0_flag : 1; uint32_t slice_loop_filter_across_slices_enabled_flag : 1; uint32_t reserved : 18; } fields; } LongSliceFlags; uint8_t collocated_ref_idx; uint8_t num_ref_idx_l0_active_minus1; uint8_t num_ref_idx_l1_active_minus1; int8_t slice_qp_delta; int8_t slice_cb_qp_offset; int8_t slice_cr_qp_offset; int8_t slice_beta_offset_div2; int8_t slice_tc_offset_div2; uint8_t luma_log2_weight_denom; int8_t delta_chroma_log2_weight_denom; int8_t delta_luma_weight_l0[15]; int8_t luma_offset_l0[15]; int8_t delta_chroma_weight_l0[15][2]; int8_t ChromaOffsetL0[15][2]; int8_t delta_luma_weight_l1[15]; int8_t luma_offset_l1[15]; int8_t delta_chroma_weight_l1[15][2]; int8_t ChromaOffsetL1[15][2]; uint8_t five_minus_max_num_merge_cand; uint16_t num_entry_point_offsets; uint16_t entry_offset_to_subset_array; uint16_t slice_data_num_emu_prevn_bytes; uint32_t va_reserved[4 - 2]; } VASliceParameterBufferHEVC; typedef struct _VASliceParameterBufferHEVCRext { int16_t luma_offset_l0[15]; int16_t ChromaOffsetL0[15][2]; int16_t luma_offset_l1[15]; int16_t ChromaOffsetL1[15][2]; union { struct { uint32_t cu_chroma_qp_offset_enabled_flag : 1; uint32_t use_integer_mv_flag : 1; uint32_t reserved : 30; } bits; uint32_t value; } slice_ext_flags; int8_t slice_act_y_qp_offset; int8_t slice_act_cb_qp_offset; int8_t slice_act_cr_qp_offset; } VASliceParameterBufferHEVCRext; typedef struct _VASliceParameterBufferHEVCExtension { VASliceParameterBufferHEVC base; VASliceParameterBufferHEVCRext rext; } VASliceParameterBufferHEVCExtension; typedef struct _VAIQMatrixBufferHEVC { uint8_t ScalingList4x4[6][16]; uint8_t ScalingList8x8[6][64]; uint8_t ScalingList16x16[6][64]; uint8_t ScalingList32x32[2][64]; uint8_t ScalingListDC16x16[6]; uint8_t ScalingListDC32x32[2]; uint32_t va_reserved[4]; } VAIQMatrixBufferHEVC; typedef struct _VAPictureParameterBufferJPEGBaseline { uint16_t picture_width; uint16_t picture_height; struct { uint8_t component_id; uint8_t h_sampling_factor; uint8_t v_sampling_factor; uint8_t quantiser_table_selector; } components[255]; uint8_t num_components; uint8_t color_space; uint32_t rotation; uint32_t va_reserved[8 - 1]; } VAPictureParameterBufferJPEGBaseline; typedef struct _VAIQMatrixBufferJPEGBaseline { uint8_t load_quantiser_table[4]; uint8_t quantiser_table[4][64]; uint32_t va_reserved[4]; } VAIQMatrixBufferJPEGBaseline; typedef struct _VASliceParameterBufferJPEGBaseline { uint32_t slice_data_size; uint32_t slice_data_offset; uint32_t slice_data_flag; uint32_t slice_horizontal_position; uint32_t slice_vertical_position; struct { uint8_t component_selector; uint8_t dc_table_selector; uint8_t ac_table_selector; } components[4]; uint8_t num_components; uint16_t restart_interval; uint32_t num_mcus; uint32_t va_reserved[4]; } VASliceParameterBufferJPEGBaseline; typedef struct _VABoolCoderContextVPX { uint8_t range; uint8_t value; uint8_t count; } VABoolCoderContextVPX; typedef struct _VAPictureParameterBufferVP8 { uint32_t frame_width; uint32_t frame_height; VASurfaceID last_ref_frame; VASurfaceID golden_ref_frame; VASurfaceID alt_ref_frame; VASurfaceID out_of_loop_frame; union { struct { uint32_t key_frame : 1; uint32_t version : 3; uint32_t segmentation_enabled : 1; uint32_t update_mb_segmentation_map : 1; uint32_t update_segment_feature_data : 1; uint32_t filter_type : 1; uint32_t sharpness_level : 3; uint32_t loop_filter_adj_enable : 1; uint32_t mode_ref_lf_delta_update : 1; uint32_t sign_bias_golden : 1; uint32_t sign_bias_alternate : 1; uint32_t mb_no_coeff_skip : 1; uint32_t loop_filter_disable : 1; } bits; uint32_t value; } pic_fields; uint8_t mb_segment_tree_probs[3]; uint8_t loop_filter_level[4]; int8_t loop_filter_deltas_ref_frame[4]; int8_t loop_filter_deltas_mode[4]; uint8_t prob_skip_false; uint8_t prob_intra; uint8_t prob_last; uint8_t prob_gf; uint8_t y_mode_probs[4]; uint8_t uv_mode_probs[3]; uint8_t mv_probs[2][19]; VABoolCoderContextVPX bool_coder_ctx; uint32_t va_reserved[4]; } VAPictureParameterBufferVP8; typedef struct _VASliceParameterBufferVP8 { uint32_t slice_data_size; uint32_t slice_data_offset; uint32_t slice_data_flag; uint32_t macroblock_offset; uint8_t num_of_partitions; uint32_t partition_size[9]; uint32_t va_reserved[4]; } VASliceParameterBufferVP8; typedef struct _VAProbabilityDataBufferVP8 { uint8_t dct_coeff_probs[4][8][3][11]; uint32_t va_reserved[4]; } VAProbabilityDataBufferVP8; typedef struct _VAIQMatrixBufferVP8 { uint16_t quantization_index[4][6]; uint32_t va_reserved[4]; } VAIQMatrixBufferVP8; typedef struct _VADecPictureParameterBufferVP9 { uint16_t frame_width; uint16_t frame_height; VASurfaceID reference_frames[8]; union { struct { uint32_t subsampling_x : 1; uint32_t subsampling_y : 1; uint32_t frame_type : 1; uint32_t show_frame : 1; uint32_t error_resilient_mode : 1; uint32_t intra_only : 1; uint32_t allow_high_precision_mv : 1; uint32_t mcomp_filter_type : 3; uint32_t frame_parallel_decoding_mode : 1; uint32_t reset_frame_context : 2; uint32_t refresh_frame_context : 1; uint32_t frame_context_idx : 2; uint32_t segmentation_enabled : 1; uint32_t segmentation_temporal_update : 1; uint32_t segmentation_update_map : 1; uint32_t last_ref_frame : 3; uint32_t last_ref_frame_sign_bias : 1; uint32_t golden_ref_frame : 3; uint32_t golden_ref_frame_sign_bias : 1; uint32_t alt_ref_frame : 3; uint32_t alt_ref_frame_sign_bias : 1; uint32_t lossless_flag : 1; } bits; uint32_t value; } pic_fields; uint8_t filter_level; uint8_t sharpness_level; uint8_t log2_tile_rows; uint8_t log2_tile_columns; uint8_t frame_header_length_in_bytes; uint16_t first_partition_size; uint8_t mb_segment_tree_probs[7]; uint8_t segment_pred_probs[3]; uint8_t profile; uint8_t bit_depth; uint32_t va_reserved[8]; } VADecPictureParameterBufferVP9; typedef struct _VASegmentParameterVP9 { union { struct { uint16_t segment_reference_enabled : 1; uint16_t segment_reference : 2; uint16_t segment_reference_skipped : 1; } fields; uint16_t value; } segment_flags; uint8_t filter_level[4][2]; int16_t luma_ac_quant_scale; int16_t luma_dc_quant_scale; int16_t chroma_ac_quant_scale; int16_t chroma_dc_quant_scale; uint32_t va_reserved[4]; } VASegmentParameterVP9; typedef struct _VASliceParameterBufferVP9 { uint32_t slice_data_size; uint32_t slice_data_offset; uint32_t slice_data_flag; VASegmentParameterVP9 seg_param[8]; uint32_t va_reserved[4]; } VASliceParameterBufferVP9; typedef union VAConfigAttribValDecAV1Features { struct { uint32_t lst_support : 2; uint32_t reserved : 30; } bits; uint32_t value; } VAConfigAttribValDecAV1Features; typedef struct _VASegmentationStructAV1 { union { struct { uint32_t enabled : 1; uint32_t update_map : 1; uint32_t temporal_update : 1; uint32_t update_data : 1; uint32_t reserved : 28; } bits; uint32_t value; } segment_info_fields; int16_t feature_data[8][8]; uint8_t feature_mask[8]; uint32_t va_reserved[4]; } VASegmentationStructAV1; typedef struct _VAFilmGrainStructAV1 { union { struct { uint32_t apply_grain : 1; uint32_t chroma_scaling_from_luma : 1; uint32_t grain_scaling_minus_8 : 2; uint32_t ar_coeff_lag : 2; uint32_t ar_coeff_shift_minus_6 : 2; uint32_t grain_scale_shift : 2; uint32_t overlap_flag : 1; uint32_t clip_to_restricted_range : 1; uint32_t reserved : 20; } bits; uint32_t value; } film_grain_info_fields; uint16_t grain_seed; uint8_t num_y_points; uint8_t point_y_value[14]; uint8_t point_y_scaling[14]; uint8_t num_cb_points; uint8_t point_cb_value[10]; uint8_t point_cb_scaling[10]; uint8_t num_cr_points; uint8_t point_cr_value[10]; uint8_t point_cr_scaling[10]; int8_t ar_coeffs_y[24]; int8_t ar_coeffs_cb[25]; int8_t ar_coeffs_cr[25]; uint8_t cb_mult; uint8_t cb_luma_mult; uint16_t cb_offset; uint8_t cr_mult; uint8_t cr_luma_mult; uint16_t cr_offset; uint32_t va_reserved[4]; } VAFilmGrainStructAV1; typedef enum { VAAV1TransformationIdentity = 0, VAAV1TransformationTranslation = 1, VAAV1TransformationRotzoom = 2, VAAV1TransformationAffine = 3, VAAV1TransformationCount } VAAV1TransformationType; typedef struct _VAWarpedMotionParamsAV1 { VAAV1TransformationType wmtype; int32_t wmmat[8]; uint8_t invalid; uint32_t va_reserved[4]; } VAWarpedMotionParamsAV1; typedef struct _VADecPictureParameterBufferAV1 { uint8_t profile; uint8_t order_hint_bits_minus_1; uint8_t bit_depth_idx; uint8_t matrix_coefficients; union { struct { uint32_t still_picture : 1; uint32_t use_128x128_superblock : 1; uint32_t enable_filter_intra : 1; uint32_t enable_intra_edge_filter : 1; uint32_t enable_interintra_compound : 1; uint32_t enable_masked_compound : 1; uint32_t enable_dual_filter : 1; uint32_t enable_order_hint : 1; uint32_t enable_jnt_comp : 1; uint32_t enable_cdef : 1; uint32_t mono_chrome : 1; uint32_t color_range : 1; uint32_t subsampling_x : 1; uint32_t subsampling_y : 1; __attribute__((deprecated)) uint32_t chroma_sample_position : 1; uint32_t film_grain_params_present : 1; uint32_t reserved : 16; } fields; uint32_t value; } seq_info_fields; VASurfaceID current_frame; VASurfaceID current_display_picture; uint8_t anchor_frames_num; VASurfaceID *anchor_frames_list; uint16_t frame_width_minus1; uint16_t frame_height_minus1; uint16_t output_frame_width_in_tiles_minus_1; uint16_t output_frame_height_in_tiles_minus_1; VASurfaceID ref_frame_map[8]; uint8_t ref_frame_idx[7]; uint8_t primary_ref_frame; uint8_t order_hint; VASegmentationStructAV1 seg_info; VAFilmGrainStructAV1 film_grain_info; uint8_t tile_cols; uint8_t tile_rows; uint16_t width_in_sbs_minus_1[63]; uint16_t height_in_sbs_minus_1[63]; uint16_t tile_count_minus_1; uint16_t context_update_tile_id; union { struct { uint32_t frame_type : 2; uint32_t show_frame : 1; uint32_t showable_frame : 1; uint32_t error_resilient_mode : 1; uint32_t disable_cdf_update : 1; uint32_t allow_screen_content_tools : 1; uint32_t force_integer_mv : 1; uint32_t allow_intrabc : 1; uint32_t use_superres : 1; uint32_t allow_high_precision_mv : 1; uint32_t is_motion_mode_switchable : 1; uint32_t use_ref_frame_mvs : 1; uint32_t disable_frame_end_update_cdf : 1; uint32_t uniform_tile_spacing_flag : 1; uint32_t allow_warped_motion : 1; uint32_t large_scale_tile : 1; uint32_t reserved : 15; } bits; uint32_t value; } pic_info_fields; uint8_t superres_scale_denominator; uint8_t interp_filter; uint8_t filter_level[2]; uint8_t filter_level_u; uint8_t filter_level_v; union { struct { uint8_t sharpness_level : 3; uint8_t mode_ref_delta_enabled : 1; uint8_t mode_ref_delta_update : 1; uint8_t reserved : 3; } bits; uint8_t value; } loop_filter_info_fields; int8_t ref_deltas[8]; int8_t mode_deltas[2]; uint8_t base_qindex; int8_t y_dc_delta_q; int8_t u_dc_delta_q; int8_t u_ac_delta_q; int8_t v_dc_delta_q; int8_t v_ac_delta_q; union { struct { uint16_t using_qmatrix : 1; uint16_t qm_y : 4; uint16_t qm_u : 4; uint16_t qm_v : 4; uint16_t reserved : 3; } bits; uint16_t value; } qmatrix_fields; union { struct { uint32_t delta_q_present_flag : 1; uint32_t log2_delta_q_res : 2; uint32_t delta_lf_present_flag : 1; uint32_t log2_delta_lf_res : 2; uint32_t delta_lf_multi : 1; uint32_t tx_mode : 2; uint32_t reference_select : 1; uint32_t reduced_tx_set_used : 1; uint32_t skip_mode_present : 1; uint32_t reserved : 20; } bits; uint32_t value; } mode_control_fields; uint8_t cdef_damping_minus_3; uint8_t cdef_bits; uint8_t cdef_y_strengths[8]; uint8_t cdef_uv_strengths[8]; union { struct { uint16_t yframe_restoration_type : 2; uint16_t cbframe_restoration_type : 2; uint16_t crframe_restoration_type : 2; uint16_t lr_unit_shift : 2; uint16_t lr_uv_shift : 1; uint16_t reserved : 7; } bits; uint16_t value; } loop_restoration_fields; VAWarpedMotionParamsAV1 wm[7]; uint32_t va_reserved[8]; } VADecPictureParameterBufferAV1; typedef struct _VASliceParameterBufferAV1 { uint32_t slice_data_size; uint32_t slice_data_offset; uint32_t slice_data_flag; uint16_t tile_row; uint16_t tile_column; __attribute__((deprecated)) uint16_t tg_start; __attribute__((deprecated)) uint16_t tg_end; uint8_t anchor_frame_idx; uint16_t tile_idx_in_tile_list; uint32_t va_reserved[4]; } VASliceParameterBufferAV1; typedef union VAConfigAttribValEncHEVCFeatures { struct { uint32_t separate_colour_planes : 2; uint32_t scaling_lists : 2; uint32_t amp : 2; uint32_t sao : 2; uint32_t pcm : 2; uint32_t temporal_mvp : 2; uint32_t strong_intra_smoothing : 2; uint32_t dependent_slices : 2; uint32_t sign_data_hiding : 2; uint32_t constrained_intra_pred : 2; uint32_t transform_skip : 2; uint32_t cu_qp_delta : 2; uint32_t weighted_prediction : 2; uint32_t transquant_bypass : 2; uint32_t deblocking_filter_disable : 2; uint32_t reserved : 2; } bits; uint32_t value; } VAConfigAttribValEncHEVCFeatures; typedef union VAConfigAttribValEncHEVCBlockSizes { struct { uint32_t log2_max_coding_tree_block_size_minus3 : 2; uint32_t log2_min_coding_tree_block_size_minus3 : 2; uint32_t log2_min_luma_coding_block_size_minus3 : 2; uint32_t log2_max_luma_transform_block_size_minus2 : 2; uint32_t log2_min_luma_transform_block_size_minus2 : 2; uint32_t max_max_transform_hierarchy_depth_inter : 2; uint32_t min_max_transform_hierarchy_depth_inter : 2; uint32_t max_max_transform_hierarchy_depth_intra : 2; uint32_t min_max_transform_hierarchy_depth_intra : 2; uint32_t log2_max_pcm_coding_block_size_minus3 : 2; uint32_t log2_min_pcm_coding_block_size_minus3 : 2; uint32_t reserved : 10; } bits; uint32_t value; } VAConfigAttribValEncHEVCBlockSizes; typedef enum { VAEncPackedHeaderHEVC_VPS = VAEncPackedHeaderSequence, VAEncPackedHeaderHEVC_SPS = VAEncPackedHeaderSequence, VAEncPackedHeaderHEVC_PPS = VAEncPackedHeaderPicture, VAEncPackedHeaderHEVC_Slice = VAEncPackedHeaderSlice, VAEncPackedHeaderHEVC_SEI __attribute__((deprecated)) = (0x80000000 | 1), } VAEncPackedHeaderTypeHEVC; typedef struct _VAEncSequenceParameterBufferHEVC { uint8_t general_profile_idc; uint8_t general_level_idc; uint8_t general_tier_flag; uint32_t intra_period; uint32_t intra_idr_period; uint32_t ip_period; uint32_t bits_per_second; uint16_t pic_width_in_luma_samples; uint16_t pic_height_in_luma_samples; union { struct { uint32_t chroma_format_idc : 2; uint32_t separate_colour_plane_flag : 1; uint32_t bit_depth_luma_minus8 : 3; uint32_t bit_depth_chroma_minus8 : 3; uint32_t scaling_list_enabled_flag : 1; uint32_t strong_intra_smoothing_enabled_flag : 1; uint32_t amp_enabled_flag : 1; uint32_t sample_adaptive_offset_enabled_flag : 1; uint32_t pcm_enabled_flag : 1; uint32_t pcm_loop_filter_disabled_flag : 1; uint32_t sps_temporal_mvp_enabled_flag : 1; uint32_t low_delay_seq : 1; uint32_t hierachical_flag : 1; uint32_t reserved_bits : 14; } bits; uint32_t value; } seq_fields; uint8_t log2_min_luma_coding_block_size_minus3; uint8_t log2_diff_max_min_luma_coding_block_size; uint8_t log2_min_transform_block_size_minus2; uint8_t log2_diff_max_min_transform_block_size; uint8_t max_transform_hierarchy_depth_inter; uint8_t max_transform_hierarchy_depth_intra; uint32_t pcm_sample_bit_depth_luma_minus1; uint32_t pcm_sample_bit_depth_chroma_minus1; uint32_t log2_min_pcm_luma_coding_block_size_minus3; uint32_t log2_max_pcm_luma_coding_block_size_minus3; uint8_t vui_parameters_present_flag; union { struct { uint32_t aspect_ratio_info_present_flag : 1; uint32_t neutral_chroma_indication_flag : 1; uint32_t field_seq_flag : 1; uint32_t vui_timing_info_present_flag : 1; uint32_t bitstream_restriction_flag : 1; uint32_t tiles_fixed_structure_flag : 1; uint32_t motion_vectors_over_pic_boundaries_flag : 1; uint32_t restricted_ref_pic_lists_flag : 1; uint32_t log2_max_mv_length_horizontal : 5; uint32_t log2_max_mv_length_vertical : 5; } bits; uint32_t value; } vui_fields; uint8_t aspect_ratio_idc; uint32_t sar_width; uint32_t sar_height; uint32_t vui_num_units_in_tick; uint32_t vui_time_scale; uint16_t min_spatial_segmentation_idc; uint8_t max_bytes_per_pic_denom; uint8_t max_bits_per_min_cu_denom; union { struct { uint32_t palette_mode_enabled_flag : 1; uint32_t reserved : 31; } bits; uint32_t value; } scc_fields; uint32_t va_reserved[8 - 1]; } VAEncSequenceParameterBufferHEVC; typedef struct _VAEncPictureParameterBufferHEVC { VAPictureHEVC decoded_curr_pic; VAPictureHEVC reference_frames[15]; VABufferID coded_buf; uint8_t collocated_ref_pic_index; uint8_t last_picture; uint8_t pic_init_qp; uint8_t diff_cu_qp_delta_depth; int8_t pps_cb_qp_offset; int8_t pps_cr_qp_offset; uint8_t num_tile_columns_minus1; uint8_t num_tile_rows_minus1; uint8_t column_width_minus1[19]; uint8_t row_height_minus1[21]; uint8_t log2_parallel_merge_level_minus2; uint8_t ctu_max_bitsize_allowed; uint8_t num_ref_idx_l0_default_active_minus1; uint8_t num_ref_idx_l1_default_active_minus1; uint8_t slice_pic_parameter_set_id; uint8_t nal_unit_type; union { struct { uint32_t idr_pic_flag : 1; uint32_t coding_type : 3; uint32_t reference_pic_flag : 1; uint32_t dependent_slice_segments_enabled_flag : 1; uint32_t sign_data_hiding_enabled_flag : 1; uint32_t constrained_intra_pred_flag : 1; uint32_t transform_skip_enabled_flag : 1; uint32_t cu_qp_delta_enabled_flag : 1; uint32_t weighted_pred_flag : 1; uint32_t weighted_bipred_flag : 1; uint32_t transquant_bypass_enabled_flag : 1; uint32_t tiles_enabled_flag : 1; uint32_t entropy_coding_sync_enabled_flag : 1; uint32_t loop_filter_across_tiles_enabled_flag : 1; uint32_t pps_loop_filter_across_slices_enabled_flag : 1; uint32_t scaling_list_data_present_flag : 1; uint32_t screen_content_flag : 1; uint32_t enable_gpu_weighted_prediction : 1; uint32_t no_output_of_prior_pics_flag : 1; uint32_t reserved : 11; } bits; uint32_t value; } pic_fields; uint8_t hierarchical_level_plus1; uint8_t va_byte_reserved; union { struct { uint16_t pps_curr_pic_ref_enabled_flag : 1; uint16_t reserved : 15; } bits; uint16_t value; } scc_fields; uint32_t va_reserved[16 - 1]; } VAEncPictureParameterBufferHEVC; typedef struct _VAEncSliceParameterBufferHEVC { uint32_t slice_segment_address; uint32_t num_ctu_in_slice; uint8_t slice_type; uint8_t slice_pic_parameter_set_id; uint8_t num_ref_idx_l0_active_minus1; uint8_t num_ref_idx_l1_active_minus1; VAPictureHEVC ref_pic_list0[15]; VAPictureHEVC ref_pic_list1[15]; uint8_t luma_log2_weight_denom; int8_t delta_chroma_log2_weight_denom; int8_t delta_luma_weight_l0[15]; int8_t luma_offset_l0[15]; int8_t delta_chroma_weight_l0[15][2]; int8_t chroma_offset_l0[15][2]; int8_t delta_luma_weight_l1[15]; int8_t luma_offset_l1[15]; int8_t delta_chroma_weight_l1[15][2]; int8_t chroma_offset_l1[15][2]; uint8_t max_num_merge_cand; int8_t slice_qp_delta; int8_t slice_cb_qp_offset; int8_t slice_cr_qp_offset; int8_t slice_beta_offset_div2; int8_t slice_tc_offset_div2; union { struct { uint32_t last_slice_of_pic_flag : 1; uint32_t dependent_slice_segment_flag : 1; uint32_t colour_plane_id : 2; uint32_t slice_temporal_mvp_enabled_flag : 1; uint32_t slice_sao_luma_flag : 1; uint32_t slice_sao_chroma_flag : 1; uint32_t num_ref_idx_active_override_flag : 1; uint32_t mvd_l1_zero_flag : 1; uint32_t cabac_init_flag : 1; uint32_t slice_deblocking_filter_disabled_flag : 2; uint32_t slice_loop_filter_across_slices_enabled_flag : 1; uint32_t collocated_from_l0_flag : 1; } bits; uint32_t value; } slice_fields; uint32_t pred_weight_table_bit_offset; uint32_t pred_weight_table_bit_length; uint32_t va_reserved[8 - 2]; } VAEncSliceParameterBufferHEVC; typedef struct _VAQMatrixBufferHEVC { uint8_t scaling_lists_4x4[3][2][16]; uint8_t scaling_lists_8x8[3][2][64]; uint8_t scaling_lists_16x16[3][2][64]; uint8_t scaling_lists_32x32[2][64]; uint8_t scaling_list_dc_16x16[3][2]; uint8_t scaling_list_dc_32x32[2]; uint32_t va_reserved[4]; } VAQMatrixBufferHEVC; typedef union _VAConfigAttribValStats { struct { uint32_t max_num_past_references : 4; uint32_t max_num_future_references : 4; uint32_t num_outputs : 3; uint32_t interlaced : 1; uint32_t reserved : 20; } bits; uint32_t value; } VAConfigAttribValStats; typedef struct _VAPictureStats { VASurfaceID picture_id; uint32_t flags; } VAPictureStats; typedef struct _VAStatsStatisticsParameter { VAPictureStats input; VAPictureStats *past_references; uint32_t num_past_references; VABufferID *past_ref_stat_buf; VAPictureStats *future_references; uint32_t num_future_references; VABufferID *future_ref_stat_buf; VABufferID *outputs; VABufferID mv_predictor; VABufferID qp; } VAStatsStatisticsParameter; typedef struct _VAEncMiscParameterFEIFrameControlHEVC { uint32_t function; VABufferID ctb_ctrl; VABufferID ctb_cmd; VABufferID cu_record; VABufferID distortion; VABufferID qp; VABufferID mv_predictor; uint32_t num_mv_predictors_l0 : 16; uint32_t num_mv_predictors_l1 : 16; uint32_t search_path : 8; uint32_t len_sp : 8; uint32_t reserved0 : 16; uint32_t multi_pred_l0 : 4; uint32_t multi_pred_l1 : 4; uint32_t sub_pel_mode : 2; uint32_t adaptive_search : 1; uint32_t mv_predictor_input : 3; uint32_t per_block_qp : 1; uint32_t per_ctb_input : 1; uint32_t colocated_ctb_distortion : 1; uint32_t force_lcu_split : 1; uint32_t enable_cu64_check : 1; uint32_t enable_cu64_amp_check : 1; uint32_t cu64_skip_check_only : 1; uint32_t reserved1 : 11; uint32_t ref_width : 8; uint32_t ref_height : 8; uint32_t search_window : 8; uint32_t max_num_ime_search_center : 3; uint32_t fast_intra_mode : 1; uint32_t reserved2 : 4; uint32_t num_concurrent_enc_frame_partition : 8; uint32_t reserved3 : 24; uint32_t max_frame_size; uint32_t num_passes; uint8_t *delta_qp; uint32_t reserved4[2]; } VAEncMiscParameterFEIFrameControlHEVC; typedef struct _VAEncFEIMVPredictorHEVC { struct { uint8_t ref_idx_l0 : 4; uint8_t ref_idx_l1 : 4; } ref_idx[4]; uint32_t block_size : 2; uint32_t reserved : 30; VAMotionVector mv[4]; } VAEncFEIMVPredictorHEVC; typedef struct _VAEncFEICTBControlHEVC { uint32_t force_to_intra : 1; uint32_t force_to_inter : 1; uint32_t force_to_skip : 1; uint32_t force_to_zero_coeff : 1; uint32_t reserved0 : 28; uint32_t reserved1; uint32_t reserved2; uint32_t reserved3; } VAEncFEICTBControlHEVC; typedef struct _VAEncFEIDistortionHevc { uint32_t best_distortion; uint32_t colocated_ctb_distortion; } VAEncFEIDistortionHevc; typedef enum { VAEncPackedHeaderH264_SPS = VAEncPackedHeaderSequence, VAEncPackedHeaderH264_PPS = VAEncPackedHeaderPicture, VAEncPackedHeaderH264_Slice = VAEncPackedHeaderSlice, VAEncPackedHeaderH264_SEI __attribute__((deprecated)) = (0x80000000 | 1), } VAEncPackedHeaderTypeH264; typedef struct _VAEncSequenceParameterBufferH264 { uint8_t seq_parameter_set_id; uint8_t level_idc; uint32_t intra_period; uint32_t intra_idr_period; uint32_t ip_period; uint32_t bits_per_second; uint32_t max_num_ref_frames; uint16_t picture_width_in_mbs; uint16_t picture_height_in_mbs; union { struct { uint32_t chroma_format_idc : 2; uint32_t frame_mbs_only_flag : 1; uint32_t mb_adaptive_frame_field_flag : 1; uint32_t seq_scaling_matrix_present_flag : 1; uint32_t direct_8x8_inference_flag : 1; uint32_t log2_max_frame_num_minus4 : 4; uint32_t pic_order_cnt_type : 2; uint32_t log2_max_pic_order_cnt_lsb_minus4 : 4; uint32_t delta_pic_order_always_zero_flag : 1; } bits; uint32_t value; } seq_fields; uint8_t bit_depth_luma_minus8; uint8_t bit_depth_chroma_minus8; uint8_t num_ref_frames_in_pic_order_cnt_cycle; int32_t offset_for_non_ref_pic; int32_t offset_for_top_to_bottom_field; int32_t offset_for_ref_frame[256]; uint8_t frame_cropping_flag; uint32_t frame_crop_left_offset; uint32_t frame_crop_right_offset; uint32_t frame_crop_top_offset; uint32_t frame_crop_bottom_offset; uint8_t vui_parameters_present_flag; union { struct { uint32_t aspect_ratio_info_present_flag : 1; uint32_t timing_info_present_flag : 1; uint32_t bitstream_restriction_flag : 1; uint32_t log2_max_mv_length_horizontal : 5; uint32_t log2_max_mv_length_vertical : 5; uint32_t fixed_frame_rate_flag : 1; uint32_t low_delay_hrd_flag : 1; uint32_t motion_vectors_over_pic_boundaries_flag: 1; uint32_t reserved : 16; } bits; uint32_t value; } vui_fields; uint8_t aspect_ratio_idc; uint32_t sar_width; uint32_t sar_height; uint32_t num_units_in_tick; uint32_t time_scale; uint32_t va_reserved[4]; } VAEncSequenceParameterBufferH264; typedef struct _VAEncPictureParameterBufferH264 { VAPictureH264 CurrPic; VAPictureH264 ReferenceFrames[16]; VABufferID coded_buf; uint8_t pic_parameter_set_id; uint8_t seq_parameter_set_id; uint8_t last_picture; uint16_t frame_num; uint8_t pic_init_qp; uint8_t num_ref_idx_l0_active_minus1; uint8_t num_ref_idx_l1_active_minus1; int8_t chroma_qp_index_offset; int8_t second_chroma_qp_index_offset; union { struct { uint32_t idr_pic_flag : 1; uint32_t reference_pic_flag : 2; uint32_t entropy_coding_mode_flag : 1; uint32_t weighted_pred_flag : 1; uint32_t weighted_bipred_idc : 2; uint32_t constrained_intra_pred_flag : 1; uint32_t transform_8x8_mode_flag : 1; uint32_t deblocking_filter_control_present_flag : 1; uint32_t redundant_pic_cnt_present_flag : 1; uint32_t pic_order_present_flag : 1; uint32_t pic_scaling_matrix_present_flag : 1; } bits; uint32_t value; } pic_fields; uint32_t va_reserved[4]; } VAEncPictureParameterBufferH264; typedef struct _VAEncQPBufferH264 { uint8_t qp; } VAEncQPBufferH264; typedef struct _VAEncSliceParameterBufferH264 { uint32_t macroblock_address; uint32_t num_macroblocks; VABufferID macroblock_info; uint8_t slice_type; uint8_t pic_parameter_set_id; uint16_t idr_pic_id; uint16_t pic_order_cnt_lsb; int32_t delta_pic_order_cnt_bottom; int32_t delta_pic_order_cnt[2]; uint8_t direct_spatial_mv_pred_flag; uint8_t num_ref_idx_active_override_flag; uint8_t num_ref_idx_l0_active_minus1; uint8_t num_ref_idx_l1_active_minus1; VAPictureH264 RefPicList0[32]; VAPictureH264 RefPicList1[32]; uint8_t luma_log2_weight_denom; uint8_t chroma_log2_weight_denom; uint8_t luma_weight_l0_flag; signed short luma_weight_l0[32]; signed short luma_offset_l0[32]; uint8_t chroma_weight_l0_flag; signed short chroma_weight_l0[32][2]; signed short chroma_offset_l0[32][2]; uint8_t luma_weight_l1_flag; signed short luma_weight_l1[32]; signed short luma_offset_l1[32]; uint8_t chroma_weight_l1_flag; signed short chroma_weight_l1[32][2]; signed short chroma_offset_l1[32][2]; uint8_t cabac_init_idc; int8_t slice_qp_delta; uint8_t disable_deblocking_filter_idc; int8_t slice_alpha_c0_offset_div2; int8_t slice_beta_offset_div2; uint32_t va_reserved[4]; } VAEncSliceParameterBufferH264; typedef struct _VAEncMacroblockParameterBufferH264 { uint8_t qp; union { union { struct { uint32_t pred_avail_override_flag : 1; uint32_t pred_avail_flags : 8; } bits; uint32_t value; } intra_fields; union { struct { uint32_t reserved; } bits; uint32_t value; } inter_fields; } info; uint32_t va_reserved[4]; } VAEncMacroblockParameterBufferH264; typedef struct _VAEncMiscParameterSubMbPartPelH264 { uint32_t disable_inter_sub_mb_partition; union { struct { uint32_t disable_16x16_inter_mb_partition : 1; uint32_t disable_16x8_inter_mb_partition : 1; uint32_t disable_8x16_inter_mb_partition : 1; uint32_t disable_8x8_inter_mb_partition : 1; uint32_t disable_8x4_inter_mb_partition : 1; uint32_t disable_4x8_inter_mb_partition : 1; uint32_t disable_4x4_inter_mb_partition : 1; uint32_t reserved : 1; } bits; uint8_t value; } inter_sub_mb_partition_mask; uint32_t enable_sub_pel_mode; uint8_t sub_pel_mode; uint8_t reserved[3]; } VAEncMiscParameterSubMbPartPelH264; typedef struct _VAEncPictureParameterBufferJPEG { VASurfaceID reconstructed_picture; uint16_t picture_width; uint16_t picture_height; VABufferID coded_buf; union { struct { uint32_t profile : 2; uint32_t progressive : 1; uint32_t huffman : 1; uint32_t interleaved : 1; uint32_t differential : 1; } bits; uint32_t value; } pic_flags; uint8_t sample_bit_depth; uint8_t num_scan; uint16_t num_components; uint8_t component_id[4]; uint8_t quantiser_table_selector[4]; uint8_t quality; uint32_t va_reserved[4]; } VAEncPictureParameterBufferJPEG; typedef struct _VAEncSliceParameterBufferJPEG { uint16_t restart_interval; uint16_t num_components; struct { uint8_t component_selector; uint8_t dc_table_selector; uint8_t ac_table_selector; } components[4]; uint32_t va_reserved[4]; } VAEncSliceParameterBufferJPEG; typedef struct _VAQMatrixBufferJPEG { int32_t load_lum_quantiser_matrix; int32_t load_chroma_quantiser_matrix; uint8_t lum_quantiser_matrix[64]; uint8_t chroma_quantiser_matrix[64]; uint32_t va_reserved[4]; } VAQMatrixBufferJPEG; typedef VAIQMatrixBufferMPEG2 VAQMatrixBufferMPEG2; typedef enum { VAEncPackedHeaderMPEG2_SPS = VAEncPackedHeaderSequence, VAEncPackedHeaderMPEG2_PPS = VAEncPackedHeaderPicture, VAEncPackedHeaderMPEG2_Slice = VAEncPackedHeaderSlice, } VAEncPackedHeaderTypeMPEG2; typedef struct _VAEncSequenceParameterBufferMPEG2 { uint32_t intra_period; uint32_t ip_period; uint16_t picture_width; uint16_t picture_height; uint32_t bits_per_second; float frame_rate; uint16_t aspect_ratio_information; uint32_t vbv_buffer_size; union { struct { uint32_t profile_and_level_indication : 8; uint32_t progressive_sequence : 1; uint32_t chroma_format : 2; uint32_t low_delay : 1; uint32_t frame_rate_extension_n : 2; uint32_t frame_rate_extension_d : 5; } bits; uint32_t value; } sequence_extension; uint32_t new_gop_header; union { struct { uint32_t time_code : 25; uint32_t closed_gop : 1; uint32_t broken_link : 1; } bits; uint32_t value; } gop_header; uint32_t va_reserved[4]; } VAEncSequenceParameterBufferMPEG2; typedef struct _VAEncPictureParameterBufferMPEG2 { VASurfaceID forward_reference_picture; VASurfaceID backward_reference_picture; VASurfaceID reconstructed_picture; VABufferID coded_buf; uint8_t last_picture; VAEncPictureType picture_type; uint32_t temporal_reference; uint32_t vbv_delay; uint8_t f_code[2][2]; union { struct { uint32_t intra_dc_precision : 2; uint32_t picture_structure : 2; uint32_t top_field_first : 1; uint32_t frame_pred_frame_dct : 1; uint32_t concealment_motion_vectors : 1; uint32_t q_scale_type : 1; uint32_t intra_vlc_format : 1; uint32_t alternate_scan : 1; uint32_t repeat_first_field : 1; uint32_t progressive_frame : 1; uint32_t composite_display_flag : 1; } bits; uint32_t value; } picture_coding_extension; union { struct { uint32_t v_axis : 1; uint32_t field_sequence : 3; uint32_t sub_carrier : 1; uint32_t burst_amplitude : 7; uint32_t sub_carrier_phase : 8; } bits; uint32_t value; } composite_display; uint32_t va_reserved[4]; } VAEncPictureParameterBufferMPEG2; typedef struct _VAEncSliceParameterBufferMPEG2 { uint32_t macroblock_address; uint32_t num_macroblocks; int32_t quantiser_scale_code; int32_t is_intra_slice; uint32_t va_reserved[4]; } VAEncSliceParameterBufferMPEG2; typedef struct _VAEncMiscParameterExtensionDataSeqDisplayMPEG2 { uint8_t extension_start_code_identifier; uint8_t video_format; uint8_t colour_description; uint8_t colour_primaries; uint8_t transfer_characteristics; uint8_t matrix_coefficients; uint16_t display_horizontal_size; uint16_t display_vertical_size; } VAEncMiscParameterExtensionDataSeqDisplayMPEG2; typedef struct _VAEncSequenceParameterBufferVP8 { uint32_t frame_width; uint32_t frame_height; uint32_t frame_width_scale; uint32_t frame_height_scale; uint32_t error_resilient; uint32_t kf_auto; uint32_t kf_min_dist; uint32_t kf_max_dist; uint32_t bits_per_second; uint32_t intra_period; VASurfaceID reference_frames[4]; uint32_t va_reserved[4]; } VAEncSequenceParameterBufferVP8; typedef struct _VAEncPictureParameterBufferVP8 { VASurfaceID reconstructed_frame; VASurfaceID ref_last_frame; VASurfaceID ref_gf_frame; VASurfaceID ref_arf_frame; VABufferID coded_buf; union { struct { uint32_t force_kf : 1; uint32_t no_ref_last : 1; uint32_t no_ref_gf : 1; uint32_t no_ref_arf : 1; uint32_t temporal_id : 8; uint32_t first_ref : 2; uint32_t second_ref : 2; uint32_t reserved : 16; } bits; uint32_t value; } ref_flags; union { struct { uint32_t frame_type : 1; uint32_t version : 3; uint32_t show_frame : 1; uint32_t color_space : 1; uint32_t recon_filter_type : 2; uint32_t loop_filter_type : 2; uint32_t auto_partitions : 1; uint32_t num_token_partitions : 2; uint32_t clamping_type : 1; uint32_t segmentation_enabled : 1; uint32_t update_mb_segmentation_map : 1; uint32_t update_segment_feature_data : 1; uint32_t loop_filter_adj_enable : 1; uint32_t refresh_entropy_probs : 1; uint32_t refresh_golden_frame : 1; uint32_t refresh_alternate_frame : 1; uint32_t refresh_last : 1; uint32_t copy_buffer_to_golden : 2; uint32_t copy_buffer_to_alternate : 2; uint32_t sign_bias_golden : 1; uint32_t sign_bias_alternate : 1; uint32_t mb_no_coeff_skip : 1; uint32_t forced_lf_adjustment : 1; uint32_t reserved : 2; } bits; uint32_t value; } pic_flags; int8_t loop_filter_level[4]; int8_t ref_lf_delta[4]; int8_t mode_lf_delta[4]; uint8_t sharpness_level; uint8_t clamp_qindex_high; uint8_t clamp_qindex_low; uint32_t va_reserved[4]; } VAEncPictureParameterBufferVP8; typedef struct _VAEncMBMapBufferVP8 { uint32_t num_mbs; uint8_t *mb_segment_id; uint32_t va_reserved[4]; } VAEncMBMapBufferVP8; typedef struct _VAQMatrixBufferVP8 { uint16_t quantization_index[4]; int16_t quantization_index_delta[5]; uint32_t va_reserved[4]; } VAQMatrixBufferVP8; typedef struct _VACodedBufferVP9Status { uint16_t base_qp_index; uint8_t loop_filter_level; uint8_t long_term_indication; uint16_t next_frame_width; uint16_t next_frame_height; uint32_t va_reserved[4]; } VACodedBufferVP9Status; typedef struct _VAEncSequenceParameterBufferVP9 { uint32_t max_frame_width; uint32_t max_frame_height; uint32_t kf_auto; uint32_t kf_min_dist; uint32_t kf_max_dist; uint32_t bits_per_second; uint32_t intra_period; uint32_t va_reserved[4]; } VAEncSequenceParameterBufferVP9; typedef struct _VAEncPictureParameterBufferVP9 { uint32_t frame_width_src; uint32_t frame_height_src; uint32_t frame_width_dst; uint32_t frame_height_dst; VASurfaceID reconstructed_frame; VASurfaceID reference_frames[8]; VABufferID coded_buf; union { struct { uint32_t force_kf : 1; uint32_t ref_frame_ctrl_l0 : 3; uint32_t ref_frame_ctrl_l1 : 3; uint32_t ref_last_idx : 3; uint32_t ref_last_sign_bias : 1; uint32_t ref_gf_idx : 3; uint32_t ref_gf_sign_bias : 1; uint32_t ref_arf_idx : 3; uint32_t ref_arf_sign_bias : 1; uint32_t temporal_id : 8; uint32_t reserved : 5; } bits; uint32_t value; } ref_flags; union { struct { uint32_t frame_type : 1; uint32_t show_frame : 1; uint32_t error_resilient_mode : 1; uint32_t intra_only : 1; uint32_t allow_high_precision_mv : 1; uint32_t mcomp_filter_type : 3; uint32_t frame_parallel_decoding_mode : 1; uint32_t reset_frame_context : 2; uint32_t refresh_frame_context : 1; uint32_t frame_context_idx : 2; uint32_t segmentation_enabled : 1; uint32_t segmentation_temporal_update : 1; uint32_t segmentation_update_map : 1; uint32_t lossless_mode : 1; uint32_t comp_prediction_mode : 2; uint32_t auto_segmentation : 1; uint32_t super_frame_flag : 1; uint32_t reserved : 10; } bits; uint32_t value; } pic_flags; uint8_t refresh_frame_flags; uint8_t luma_ac_qindex; int8_t luma_dc_qindex_delta; int8_t chroma_ac_qindex_delta; int8_t chroma_dc_qindex_delta; uint8_t filter_level; uint8_t sharpness_level; int8_t ref_lf_delta[4]; int8_t mode_lf_delta[2]; uint16_t bit_offset_ref_lf_delta; uint16_t bit_offset_mode_lf_delta; uint16_t bit_offset_lf_level; uint16_t bit_offset_qindex; uint16_t bit_offset_first_partition_size; uint16_t bit_offset_segmentation; uint16_t bit_size_segmentation; uint8_t log2_tile_rows; uint8_t log2_tile_columns; uint8_t skip_frame_flag; uint8_t number_skip_frames; uint32_t skip_frames_size; uint32_t va_reserved[8]; } VAEncPictureParameterBufferVP9; typedef struct _VAEncSegParamVP9 { union { struct { uint8_t segment_reference_enabled : 1; uint8_t segment_reference : 2; uint8_t segment_reference_skipped : 1; uint8_t reserved : 4; } bits; uint8_t value; } seg_flags; int8_t segment_lf_level_delta; int16_t segment_qindex_delta; uint32_t va_reserved[4]; } VAEncSegParamVP9; typedef struct _VAEncMiscParameterTypeVP9PerSegmantParam { VAEncSegParamVP9 seg_data[8]; uint32_t va_reserved[4]; } VAEncMiscParameterTypeVP9PerSegmantParam; typedef struct _VAEncMiscParameterFEIFrameControlH264 { uint32_t function; VABufferID mb_ctrl; VABufferID distortion; VABufferID mv_data; VABufferID mb_code_data; VABufferID qp; VABufferID mv_predictor; uint32_t num_mv_predictors_l0 : 16; uint32_t num_mv_predictors_l1 : 16; uint32_t search_path : 8; uint32_t len_sp : 8; uint32_t reserved0 : 16; uint32_t sub_mb_part_mask : 7; uint32_t intra_part_mask : 5; uint32_t multi_pred_l0 : 1; uint32_t multi_pred_l1 : 1; uint32_t sub_pel_mode : 2; uint32_t inter_sad : 2; uint32_t intra_sad : 2; uint32_t distortion_type : 1; uint32_t repartition_check_enable : 1; uint32_t adaptive_search : 1; uint32_t mv_predictor_enable : 1; uint32_t mb_qp : 1; uint32_t mb_input : 1; uint32_t mb_size_ctrl : 1; uint32_t colocated_mb_distortion : 1; uint32_t reserved1 : 4; uint32_t ref_width : 8; uint32_t ref_height : 8; uint32_t search_window : 4; uint32_t reserved2 : 12; uint32_t max_frame_size; uint32_t num_passes; uint8_t *delta_qp; uint32_t reserved3[4]; } VAEncMiscParameterFEIFrameControlH264; typedef struct _VAEncFEIMBControlH264 { uint32_t force_to_intra : 1; uint32_t force_to_skip : 1; uint32_t force_to_nonskip : 1; uint32_t enable_direct_bias_adjustment : 1; uint32_t enable_motion_bias_adjustment : 1; uint32_t ext_mv_cost_scaling_factor : 3; uint32_t reserved0 : 24; uint32_t reserved1; uint32_t reserved2; uint32_t reserved3 : 16; uint32_t target_size_in_word : 8; uint32_t max_size_in_word : 8; } VAEncFEIMBControlH264; typedef struct _VAEncFEIMVPredictorH264 { struct { uint8_t ref_idx_l0 : 4; uint8_t ref_idx_l1 : 4; } ref_idx[4]; uint32_t reserved; VAMotionVector mv[4]; } VAEncFEIMVPredictorH264; typedef struct _VAEncFEIMBCodeH264 { uint32_t reserved0[3]; uint32_t inter_mb_mode : 2; uint32_t mb_skip_flag : 1; uint32_t reserved1 : 1; uint32_t intra_mb_mode : 2; uint32_t reserved2 : 1; uint32_t field_mb_polarity_flag : 1; uint32_t mb_type : 5; uint32_t intra_mb_flag : 1; uint32_t field_mb_flag : 1; uint32_t transform8x8_flag : 1; uint32_t reserved3 : 1; uint32_t dc_block_coded_cr_flag : 1; uint32_t dc_block_coded_cb_flag : 1; uint32_t dc_block_coded_y_flag : 1; uint32_t reserved4 : 12; uint32_t horz_origin : 8; uint32_t vert_origin : 8; uint32_t cbp_y : 16; uint32_t cbp_cb : 16; uint32_t cbp_cr : 16; uint32_t qp_prime_y : 8; uint32_t reserved5 : 17; uint32_t mb_skip_conv_disable : 1; uint32_t is_last_mb : 1; uint32_t enable_coefficient_clamp : 1; uint32_t direct8x8_pattern : 4; union { struct { uint32_t luma_intra_pred_modes0 : 16; uint32_t luma_intra_pred_modes1 : 16; uint32_t luma_intra_pred_modes2 : 16; uint32_t luma_intra_pred_modes3 : 16; uint32_t chroma_intra_pred_mode : 2; uint32_t intra_pred_avail_flag : 5; uint32_t intra_pred_avail_flagF : 1; uint32_t reserved6 : 24; } intra_mb; struct { uint32_t sub_mb_shapes : 8; uint32_t sub_mb_pred_modes : 8; uint32_t reserved7 : 16; uint32_t ref_idx_l0_0 : 8; uint32_t ref_idx_l0_1 : 8; uint32_t ref_idx_l0_2 : 8; uint32_t ref_idx_l0_3 : 8; uint32_t ref_idx_l1_0 : 8; uint32_t ref_idx_l1_1 : 8; uint32_t ref_idx_l1_2 : 8; uint32_t ref_idx_l1_3 : 8; } inter_mb; } mb_mode; uint32_t reserved8 : 16; uint32_t target_size_in_word : 8; uint32_t max_size_in_word : 8; uint32_t reserved9[4]; uint32_t reserved10; } VAEncFEIMBCodeH264; typedef struct _VAEncFEIDistortionH264 { uint16_t inter_distortion[16]; uint32_t best_inter_distortion : 16; uint32_t best_intra_distortion : 16; uint32_t colocated_mb_distortion : 16; uint32_t reserved0 : 16; uint32_t reserved1[2]; } VAEncFEIDistortionH264; typedef struct _VAStatsStatisticsParameterH264 { VAStatsStatisticsParameter stats_params; uint32_t frame_qp : 8; uint32_t len_sp : 8; uint32_t search_path : 8; uint32_t reserved0 : 8; uint32_t sub_mb_part_mask : 7; uint32_t sub_pel_mode : 2; uint32_t inter_sad : 2; uint32_t intra_sad : 2; uint32_t adaptive_search : 1; uint32_t mv_predictor_ctrl : 3; uint32_t mb_qp : 1; uint32_t ft_enable : 1; uint32_t intra_part_mask : 5; uint32_t reserved1 : 8; uint32_t ref_width : 8; uint32_t ref_height : 8; uint32_t search_window : 4; uint32_t reserved2 : 12; uint32_t disable_mv_output : 1; uint32_t disable_statistics_output : 1; uint32_t enable_8x8_statistics : 1; uint32_t reserved3 : 29; uint32_t reserved4[2]; } VAStatsStatisticsParameterH264; typedef struct _VAStatsStatisticsH264 { uint32_t best_inter_distortion0 : 16; uint32_t inter_mode0 : 16; uint32_t best_inter_distortion1 : 16; uint32_t inter_mode1 : 16; uint32_t best_intra_distortion : 16; uint32_t intra_mode : 16; uint32_t num_non_zero_coef : 16; uint32_t reserved0 : 16; uint32_t sum_coef; uint32_t mb_is_flat : 1; uint32_t reserved1 : 31; uint32_t variance_16x16; uint32_t variance_8x8[4]; uint32_t pixel_average_16x16; uint32_t pixel_average_8x8[4]; } VAStatsStatisticsH264; typedef enum _VAProcFilterType { VAProcFilterNone = 0, VAProcFilterNoiseReduction, VAProcFilterDeinterlacing, VAProcFilterSharpening, VAProcFilterColorBalance, VAProcFilterSkinToneEnhancement, VAProcFilterTotalColorCorrection, VAProcFilterHVSNoiseReduction, VAProcFilterHighDynamicRangeToneMapping, VAProcFilter3DLUT, VAProcFilterCount } VAProcFilterType; typedef enum _VAProcDeinterlacingType { VAProcDeinterlacingNone = 0, VAProcDeinterlacingBob, VAProcDeinterlacingWeave, VAProcDeinterlacingMotionAdaptive, VAProcDeinterlacingMotionCompensated, VAProcDeinterlacingCount } VAProcDeinterlacingType; typedef enum _VAProcColorBalanceType { VAProcColorBalanceNone = 0, VAProcColorBalanceHue, VAProcColorBalanceSaturation, VAProcColorBalanceBrightness, VAProcColorBalanceContrast, VAProcColorBalanceAutoSaturation, VAProcColorBalanceAutoBrightness, VAProcColorBalanceAutoContrast, VAProcColorBalanceCount } VAProcColorBalanceType; typedef enum _VAProcColorStandardType { VAProcColorStandardNone = 0, VAProcColorStandardBT601, VAProcColorStandardBT709, VAProcColorStandardBT470M, VAProcColorStandardBT470BG, VAProcColorStandardSMPTE170M, VAProcColorStandardSMPTE240M, VAProcColorStandardGenericFilm, VAProcColorStandardSRGB, VAProcColorStandardSTRGB, VAProcColorStandardXVYCC601, VAProcColorStandardXVYCC709, VAProcColorStandardBT2020, VAProcColorStandardExplicit, VAProcColorStandardCount } VAProcColorStandardType; typedef enum _VAProcTotalColorCorrectionType { VAProcTotalColorCorrectionNone = 0, VAProcTotalColorCorrectionRed, VAProcTotalColorCorrectionGreen, VAProcTotalColorCorrectionBlue, VAProcTotalColorCorrectionCyan, VAProcTotalColorCorrectionMagenta, VAProcTotalColorCorrectionYellow, VAProcTotalColorCorrectionCount } VAProcTotalColorCorrectionType; typedef enum _VAProcHighDynamicRangeMetadataType { VAProcHighDynamicRangeMetadataNone = 0, VAProcHighDynamicRangeMetadataHDR10, VAProcHighDynamicRangeMetadataTypeCount } VAProcHighDynamicRangeMetadataType; typedef enum _VAProcMode { VAProcDefaultMode = 0, VAProcPowerSavingMode, VAProcPerformanceMode } VAProcMode; typedef struct _VABlendState { unsigned int flags; float global_alpha; float min_luma; float max_luma; } VABlendState; typedef struct _VAProcPipelineCaps { uint32_t pipeline_flags; uint32_t filter_flags; uint32_t num_forward_references; uint32_t num_backward_references; VAProcColorStandardType *input_color_standards; uint32_t num_input_color_standards; VAProcColorStandardType *output_color_standards; uint32_t num_output_color_standards; uint32_t rotation_flags; uint32_t blend_flags; uint32_t mirror_flags; uint32_t num_additional_outputs; uint32_t num_input_pixel_formats; uint32_t *input_pixel_format; uint32_t num_output_pixel_formats; uint32_t *output_pixel_format; uint32_t max_input_width; uint32_t max_input_height; uint32_t min_input_width; uint32_t min_input_height; uint32_t max_output_width; uint32_t max_output_height; uint32_t min_output_width; uint32_t min_output_height; uint32_t va_reserved[16 - 2]; } VAProcPipelineCaps; typedef struct _VAProcFilterValueRange { float min_value; float max_value; float default_value; float step; uint32_t va_reserved[4]; } VAProcFilterValueRange; typedef struct _VAProcColorProperties { uint8_t chroma_sample_location; uint8_t color_range; uint8_t colour_primaries; uint8_t transfer_characteristics; uint8_t matrix_coefficients; uint8_t reserved[3]; } VAProcColorProperties; typedef struct _VAHdrMetaDataHDR10 { uint16_t display_primaries_x[3]; uint16_t display_primaries_y[3]; uint16_t white_point_x; uint16_t white_point_y; uint32_t max_display_mastering_luminance; uint32_t min_display_mastering_luminance; uint16_t max_content_light_level; uint16_t max_pic_average_light_level; uint16_t reserved[16]; } VAHdrMetaDataHDR10; typedef struct _VAProcFilterCapHighDynamicRange { VAProcHighDynamicRangeMetadataType metadata_type; uint16_t caps_flag; uint16_t va_reserved[16]; } VAProcFilterCapHighDynamicRange; typedef struct _VAHdrMetaData { VAProcHighDynamicRangeMetadataType metadata_type; void* metadata; uint32_t metadata_size; uint32_t reserved[4]; } VAHdrMetaData; typedef struct _VAProcPipelineParameterBuffer { VASurfaceID surface; const VARectangle *surface_region; VAProcColorStandardType surface_color_standard; const VARectangle *output_region; uint32_t output_background_color; VAProcColorStandardType output_color_standard; uint32_t pipeline_flags; uint32_t filter_flags; VABufferID *filters; uint32_t num_filters; VASurfaceID *forward_references; uint32_t num_forward_references; VASurfaceID *backward_references; uint32_t num_backward_references; uint32_t rotation_state; const VABlendState *blend_state; uint32_t mirror_state; VASurfaceID *additional_outputs; uint32_t num_additional_outputs; uint32_t input_surface_flag; uint32_t output_surface_flag; VAProcColorProperties input_color_properties; VAProcColorProperties output_color_properties; VAProcMode processing_mode; VAHdrMetaData *output_hdr_metadata; uint32_t va_reserved[32 - 16]; } VAProcPipelineParameterBuffer; typedef struct _VAProcFilterParameterBufferBase { VAProcFilterType type; } VAProcFilterParameterBufferBase; typedef struct _VAProcFilterParameterBuffer { VAProcFilterType type; float value; uint32_t va_reserved[4]; } VAProcFilterParameterBuffer; typedef struct _VAProcFilterParameterBufferDeinterlacing { VAProcFilterType type; VAProcDeinterlacingType algorithm; uint32_t flags; uint32_t va_reserved[4]; } VAProcFilterParameterBufferDeinterlacing; typedef struct _VAProcFilterParameterBufferColorBalance { VAProcFilterType type; VAProcColorBalanceType attrib; float value; uint32_t va_reserved[4]; } VAProcFilterParameterBufferColorBalance; typedef struct _VAProcFilterParameterBufferTotalColorCorrection { VAProcFilterType type; VAProcTotalColorCorrectionType attrib; float value; } VAProcFilterParameterBufferTotalColorCorrection; typedef struct _VAProcFilterParameterBufferHVSNoiseReduction { VAProcFilterType type; uint16_t qp; uint16_t strength; uint16_t mode; uint16_t va_reserved[16 - 1]; } VAProcFilterParameterBufferHVSNoiseReduction; typedef struct _VAProcFilterParameterBufferHDRToneMapping { VAProcFilterType type; VAHdrMetaData data; uint32_t va_reserved[16]; } VAProcFilterParameterBufferHDRToneMapping; typedef struct _VAProcFilterParameterBuffer3DLUT { VAProcFilterType type; VASurfaceID lut_surface; uint16_t lut_size; uint16_t lut_stride[3]; uint16_t bit_depth; uint16_t num_channel; uint32_t channel_mapping; uint32_t va_reserved[16]; } VAProcFilterParameterBuffer3DLUT; typedef struct _VAProcFilterCap3DLUT { uint16_t lut_size; uint16_t lut_stride[3]; uint16_t bit_depth; uint16_t num_channel; uint32_t channel_mapping; uint32_t va_reserved[16]; } VAProcFilterCap3DLUT; typedef struct _VAProcFilterCap { VAProcFilterValueRange range; uint32_t va_reserved[4]; } VAProcFilterCap; typedef struct _VAProcFilterCapDeinterlacing { VAProcDeinterlacingType type; uint32_t va_reserved[4]; } VAProcFilterCapDeinterlacing; typedef struct _VAProcFilterCapColorBalance { VAProcColorBalanceType type; VAProcFilterValueRange range; uint32_t va_reserved[4]; } VAProcFilterCapColorBalance; typedef struct _VAProcFilterCapTotalColorCorrection { VAProcTotalColorCorrectionType type; VAProcFilterValueRange range; } VAProcFilterCapTotalColorCorrection; VAStatus vaQueryVideoProcFilters( VADisplay dpy, VAContextID context, VAProcFilterType *filters, unsigned int *num_filters ); VAStatus vaQueryVideoProcFilterCaps( VADisplay dpy, VAContextID context, VAProcFilterType type, void *filter_caps, unsigned int *num_filter_caps ); VAStatus vaQueryVideoProcPipelineCaps( VADisplay dpy, VAContextID context, VABufferID *filters, unsigned int num_filters, VAProcPipelineCaps *pipeline_caps ); typedef VAGenericID VAProtectedSessionID; typedef enum _VA_TEE_EXEC_FUNCTION_ID { VA_TEE_EXECUTE_FUNCTION_ID_PASS_THROUGH = 0x00000001, VA_TEE_EXECUTE_FUNCTION_ID_GET_FIRMWARE_VERSION = 0x00000002, } VA_TEE_EXECUTE_FUNCTION_ID; typedef struct _VAProtectedSessionBuffer { uint32_t max_data_size; uint32_t data_size; void *data; uint32_t va_reserved[4]; } VAProtectedSessionBuffer; typedef struct _VAProtectedSessionExecuteBuffer { uint32_t function_id; VAProtectedSessionBuffer input; VAProtectedSessionBuffer output; uint32_t status; uint32_t va_reserved[4]; } VAProtectedSessionExecuteBuffer; VAStatus vaCreateProtectedSession(VADisplay dpy, VAConfigID config_id, VAProtectedSessionID *protected_session); VAStatus vaDestroyProtectedSession(VADisplay dpy, VAProtectedSessionID protected_session); VAStatus vaAttachProtectedSession(VADisplay dpy, VAGenericID id, VAProtectedSessionID protected_session); VAStatus vaDetachProtectedSession(VADisplay dpy, VAGenericID id); VAStatus vaProtectedSessionExecute(VADisplay dpy, VAProtectedSessionID protected_session, VABufferID buf_id); Compiler stderr: Has header "va/va_enc_vp9.h" with dependency libva: YES Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'gstreamer-gl-prototypes-1.0' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion gstreamer-gl-prototypes-1.0` -> 0 1.18.4 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --cflags gstreamer-gl-prototypes-1.0` -> 0 -I/usr/include/gstreamer-1.0 -I/usr/lib64/gstreamer-1.0/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib64/libffi/include -I/usr/include/orc-0.4 -pthread env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gstreamer-gl-prototypes-1.0` -> 0 -L/usr/lib64 -lgstgl-1.0 -lgstvideo-1.0 -lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 -lGL env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gstreamer-gl-prototypes-1.0` -> 0 -lgstgl-1.0 -lgstvideo-1.0 -lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 -lGL Run-time dependency gstreamer-gl-prototypes-1.0 found: YES 1.18.4 Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'gstreamer-gl-x11-1.0' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion gstreamer-gl-x11-1.0` -> 0 1.18.4 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --cflags gstreamer-gl-x11-1.0` -> 0 -I/usr/include/gstreamer-1.0 -I/usr/lib64/gstreamer-1.0/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib64/libffi/include -I/usr/include/orc-0.4 -pthread env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gstreamer-gl-x11-1.0` -> 0 -L/usr/lib64 -lgstgl-1.0 -lgstvideo-1.0 -lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 -lX11-xcb -lX11 -lxcb env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gstreamer-gl-x11-1.0` -> 0 -lgstgl-1.0 -lgstvideo-1.0 -lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 -lX11-xcb -lX11 -lxcb Run-time dependency gstreamer-gl-x11-1.0 found: YES 1.18.4 Pkg-config binary for MachineChoice.HOST is cached. Determining dependency 'gstreamer-gl-egl-1.0' with pkg-config executable '/usr/bin/x86_64-pc-linux-gnu-pkg-config' env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --modversion gstreamer-gl-egl-1.0` -> 0 1.18.4 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --cflags gstreamer-gl-egl-1.0` -> 0 -I/usr/include/gstreamer-1.0 -I/usr/lib64/gstreamer-1.0/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib64/libffi/include -I/usr/include/orc-0.4 -pthread env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gstreamer-gl-egl-1.0` -> 0 -L/usr/lib64 -lgstgl-1.0 -lgstvideo-1.0 -lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 -lEGL env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --libs gstreamer-gl-egl-1.0` -> 0 -lgstgl-1.0 -lgstvideo-1.0 -lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 -lEGL Run-time dependency gstreamer-gl-egl-1.0 found: YES 1.18.4 env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --variable=driverdir libva` -> 0 /usr/lib64/va/drivers Got pkgconfig variable driverdir : /usr/lib64/va/drivers Running compile: Working directory: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmpsa4f8cat Command line: x86_64-pc-linux-gnu-gcc /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4-abi_x86_64.amd64/meson-private/tmpsa4f8cat/testfile.c -E -P -O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -D_FILE_OFFSET_BITS=64 -P -O0 Code: #ifdef __has_include #if !__has_include("X11/XKBlib.h") #error "Header 'X11/XKBlib.h' could not be found" #endif #else #include #endif Compiler stdout: Compiler stderr: Has header "X11/XKBlib.h" with dependency x11: YES env[PKG_TMPDIR]: /var/tmp/portage/._unmerge_ env[PKG_LOGDIR]: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/temp/logging env[PKG_CONFIG_PATH]: /usr/share/pkgconfig env[PKG_CONFIG_LIBDIR]: /usr/lib64/pkgconfig Called `/usr/bin/x86_64-pc-linux-gnu-pkg-config --variable=libexecdir gstreamer-1.0` -> 0 /usr/libexec Got pkgconfig variable libexecdir : /usr/libexec Program /usr/libexec/gstreamer-1.0/gst-plugins-doc-cache-generator found: YES (/usr/libexec/gstreamer-1.0/gst-plugins-doc-cache-generator) Program hotdoc found: NO Message: Hotdoc not found, not building the documentation Program scripts/extract-release-date-from-doap-file.py found: YES (/var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4/scripts/extract-release-date-from-doap-file.py) Running command: /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4/scripts/extract-release-date-from-doap-file.py 1.18.4 /var/tmp/portage/media-plugins/gst-plugins-vaapi-1.18.4-r2/work/gstreamer-vaapi-1.18.4/gstreamer-vaapi.doap --- stdout --- --- stderr --- /usr/bin/env: ‘python3’: No such file or directory ../gstreamer-vaapi-1.18.4/meson.build:205:4: ERROR: Problem encountered: /usr/bin/env: ‘python3’: No such file or directory