Projects
Staging
libde265
Sign Up
Log In
Username
Password
We truncated the diff of some files because they were too big. If you want to see the full diff for every file,
click here
.
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 16
View file
libde265.changes
Changed
@@ -1,4 +1,18 @@ ------------------------------------------------------------------- +Wed Mar 18 13:35:29 UTC 2026 - Bjørn Lie <zaitor@opensuse.org> + +- Update to version 1.0.17: + + This release removes the autotools build scripts. Furthermore, + many input validations have been added and security relevant + issues have been fixed. + + Fixes CVE-2026-33165 and CVE-2026-33164 +- Add cmake BuildRequires and macros following upstream changes. +- Drop patches no longer needed: + + libde265-disable_tools.patch + + 03219835991f44c7ecf4dcc6fa8066967561be7e.patch + + 67831118e3d6961fab4c29fc4364fa0eccfb8473.patch + +------------------------------------------------------------------- Wed May 21 07:03:56 UTC 2025 - Bjørn Lie <zaitor@opensuse.org> - Update to version 1.0.16:
View file
libde265.spec
Changed
@@ -18,7 +18,7 @@ %define so_ver 0 Name: libde265 -Version: 1.0.16 +Version: 1.0.17 Release: 0 Summary: Open H.265 video codec implementation License: LGPL-3.0-only @@ -26,12 +26,9 @@ URL: https://www.libde265.org/ Source0: https://github.com/strukturag/libde265/releases/download/v%{version}/%{name}-%{version}.tar.gz Source99: baselibs.conf -Patch0: libde265-disable_tools.patch -Patch1: https://github.com/strukturag/libde265/commit/03219835991f44c7ecf4dcc6fa8066967561be7e.patch -Patch2: https://github.com/strukturag/libde265/commit/67831118e3d6961fab4c29fc4364fa0eccfb8473.patch -BuildRequires: automake + BuildRequires: c++_compiler -BuildRequires: libtool +BuildRequires: cmake BuildRequires: pkgconfig %description @@ -67,19 +64,14 @@ %autosetup -p1 %build -NOCONFIGURE=1 ./autogen.sh -%configure \ - --disable-static \ - --enable-shared \ - --disable-encoder \ - --disable-dec265 \ - --disable-sherlock265 \ +%cmake \ + -D ENABLE_SDL=OFF \ + -D ENABLE_DECODER=OFF \ %{nil} -%make_build +%cmake_build %install -%make_install -find %{buildroot} -type f -name "*.la" -delete -print +%cmake_install %ldconfig_scriptlets -n %{name}-%{so_ver} @@ -90,6 +82,8 @@ %files devel %doc AUTHORS README.md %{_includedir}/%{name}/ +%dir %{_libdir}/cmake/%{name} +%{_libdir}/cmake/%{name}/%{name}*.cmake %{_libdir}/%{name}.so %{_libdir}/pkgconfig/%{name}.pc
View file
03219835991f44c7ecf4dcc6fa8066967561be7e.patch
Deleted
@@ -1,55 +0,0 @@ -From 03219835991f44c7ecf4dcc6fa8066967561be7e Mon Sep 17 00:00:00 2001 -From: Victor Loh <vloh@fb.com> -Date: Mon, 5 May 2025 13:05:53 -0700 -Subject: PATCH libde265 Fix potential data race in image.cc - -There could be potential data race causing s_next_image_ID to not be minting out -ID in monotonically increasing order. Before this fix, there was an TSAN failure -and with this fix, the TSAN failure is resolved. ---- - libde265/image.cc | 5 +++-- - libde265/image.h | 1 - - 2 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/libde265/image.cc b/libde265/image.cc -index fdc80fc2..6acd8c15 100644 ---- a/libde265/image.cc -+++ b/libde265/image.cc -@@ -22,6 +22,8 @@ - #include "decctx.h" - #include "en265.h" - -+#inclue <atomic> -+ - #include <stdlib.h> - #include <string.h> - #include <assert.h> -@@ -187,8 +189,6 @@ void de265_image::set_image_plane(int cIdx, uint8_t* mem, int stride, void *user - } - - --uint32_t de265_image::s_next_image_ID = 0; -- - de265_image::de265_image() - { - ID = -1; -@@ -249,6 +249,7 @@ de265_error de265_image::alloc_image(int w,int h, enum de265_chroma c, - allocated to the requested size. Without the release, the old image-data - will not be freed. */ - -+ static std::atomic<uint32_t> s_next_image_ID(0); - ID = s_next_image_ID++; - removed_at_picture_id = std::numeric_limits<int32_t>::max(); - -diff --git a/libde265/image.h b/libde265/image.h -index 3779580c..78a79de2 100644 ---- a/libde265/image.h -+++ b/libde265/image.h -@@ -344,7 +344,6 @@ struct de265_image { - - private: - uint32_t ID; -- static uint32_t s_next_image_ID; - - uint8_t* pixels3; - uint8_t bpp_shift3; // 0 for 8 bit, 1 for 16 bit
View file
67831118e3d6961fab4c29fc4364fa0eccfb8473.patch
Deleted
@@ -1,22 +0,0 @@ -From 67831118e3d6961fab4c29fc4364fa0eccfb8473 Mon Sep 17 00:00:00 2001 -From: Dirk Farin <dirk.farin@gmail.com> -Date: Mon, 5 May 2025 23:54:25 +0200 -Subject: PATCH fix typo - ---- - libde265/image.cc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libde265/image.cc b/libde265/image.cc -index 6acd8c15..5d66fe99 100644 ---- a/libde265/image.cc -+++ b/libde265/image.cc -@@ -22,7 +22,7 @@ - #include "decctx.h" - #include "en265.h" - --#inclue <atomic> -+#include <atomic> - - #include <stdlib.h> - #include <string.h>
View file
libde265-disable_tools.patch
Deleted
@@ -1,16 +0,0 @@ -Index: libde265-1.0.15+18/Makefile.am -=================================================================== ---- libde265-1.0.15+18.orig/Makefile.am -+++ libde265-1.0.15+18/Makefile.am -@@ -10,9 +10,8 @@ endif - - if ENABLE_ENCODER - SUBDIRS+=enc265 --endif -- - SUBDIRS+=tools -+endif - - # Remove acceleration-speed test program, because it needs many internal functions (that have to be dllexported). - # On the other hand, that tool was only used for development. -
View file
libde265-1.0.16.tar.gz/INSTALL
Deleted
@@ -1,368 +0,0 @@ -Installation Instructions -************************* - - Copyright (C) 1994-1996, 1999-2002, 2004-2017, 2020-2021 Free -Software Foundation, Inc. - - Copying and distribution of this file, with or without modification, -are permitted in any medium without royalty provided the copyright -notice and this notice are preserved. This file is offered as-is, -without warranty of any kind. - -Basic Installation -================== - - Briefly, the shell command './configure && make && make install' -should configure, build, and install this package. The following -more-detailed instructions are generic; see the 'README' file for -instructions specific to this package. Some packages provide this -'INSTALL' file but do not implement all of the features documented -below. The lack of an optional feature in a given package is not -necessarily a bug. More recommendations for GNU packages can be found -in *note Makefile Conventions: (standards)Makefile Conventions. - - The 'configure' shell script attempts to guess correct values for -various system-dependent variables used during compilation. It uses -those values to create a 'Makefile' in each directory of the package. -It may also create one or more '.h' files containing system-dependent -definitions. Finally, it creates a shell script 'config.status' that -you can run in the future to recreate the current configuration, and a -file 'config.log' containing compiler output (useful mainly for -debugging 'configure'). - - It can also use an optional file (typically called 'config.cache' and -enabled with '--cache-file=config.cache' or simply '-C') that saves the -results of its tests to speed up reconfiguring. Caching is disabled by -default to prevent problems with accidental use of stale cache files. - - If you need to do unusual things to compile the package, please try -to figure out how 'configure' could check whether to do them, and mail -diffs or instructions to the address given in the 'README' so they can -be considered for the next release. If you are using the cache, and at -some point 'config.cache' contains results you don't want to keep, you -may remove or edit it. - - The file 'configure.ac' (or 'configure.in') is used to create -'configure' by a program called 'autoconf'. You need 'configure.ac' if -you want to change it or regenerate 'configure' using a newer version of -'autoconf'. - - The simplest way to compile this package is: - - 1. 'cd' to the directory containing the package's source code and type - './configure' to configure the package for your system. - - Running 'configure' might take a while. While running, it prints - some messages telling which features it is checking for. - - 2. Type 'make' to compile the package. - - 3. Optionally, type 'make check' to run any self-tests that come with - the package, generally using the just-built uninstalled binaries. - - 4. Type 'make install' to install the programs and any data files and - documentation. When installing into a prefix owned by root, it is - recommended that the package be configured and built as a regular - user, and only the 'make install' phase executed with root - privileges. - - 5. Optionally, type 'make installcheck' to repeat any self-tests, but - this time using the binaries in their final installed location. - This target does not install anything. Running this target as a - regular user, particularly if the prior 'make install' required - root privileges, verifies that the installation completed - correctly. - - 6. You can remove the program binaries and object files from the - source code directory by typing 'make clean'. To also remove the - files that 'configure' created (so you can compile the package for - a different kind of computer), type 'make distclean'. There is - also a 'make maintainer-clean' target, but that is intended mainly - for the package's developers. If you use it, you may have to get - all sorts of other programs in order to regenerate files that came - with the distribution. - - 7. Often, you can also type 'make uninstall' to remove the installed - files again. In practice, not all packages have tested that - uninstallation works correctly, even though it is required by the - GNU Coding Standards. - - 8. Some packages, particularly those that use Automake, provide 'make - distcheck', which can by used by developers to test that all other - targets like 'make install' and 'make uninstall' work correctly. - This target is generally not run by end users. - -Compilers and Options -===================== - - Some systems require unusual options for compilation or linking that -the 'configure' script does not know about. Run './configure --help' -for details on some of the pertinent environment variables. - - You can give 'configure' initial values for configuration parameters -by setting variables in the command line or in the environment. Here is -an example: - - ./configure CC=c99 CFLAGS=-g LIBS=-lposix - - *Note Defining Variables::, for more details. - -Compiling For Multiple Architectures -==================================== - - You can compile the package for more than one kind of computer at the -same time, by placing the object files for each architecture in their -own directory. To do this, you can use GNU 'make'. 'cd' to the -directory where you want the object files and executables to go and run -the 'configure' script. 'configure' automatically checks for the source -code in the directory that 'configure' is in and in '..'. This is known -as a "VPATH" build. - - With a non-GNU 'make', it is safer to compile the package for one -architecture at a time in the source code directory. After you have -installed the package for one architecture, use 'make distclean' before -reconfiguring for another architecture. - - On MacOS X 10.5 and later systems, you can create libraries and -executables that work on multiple system types--known as "fat" or -"universal" binaries--by specifying multiple '-arch' options to the -compiler but only a single '-arch' option to the preprocessor. Like -this: - - ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ - CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ - CPP="gcc -E" CXXCPP="g++ -E" - - This is not guaranteed to produce working output in all cases, you -may have to build one architecture at a time and combine the results -using the 'lipo' tool if you have problems. - -Installation Names -================== - - By default, 'make install' installs the package's commands under -'/usr/local/bin', include files under '/usr/local/include', etc. You -can specify an installation prefix other than '/usr/local' by giving -'configure' the option '--prefix=PREFIX', where PREFIX must be an -absolute file name. - - You can specify separate installation prefixes for -architecture-specific files and architecture-independent files. If you -pass the option '--exec-prefix=PREFIX' to 'configure', the package uses -PREFIX as the prefix for installing programs and libraries. -Documentation and other data files still use the regular prefix. - - In addition, if you use an unusual directory layout you can give -options like '--bindir=DIR' to specify different values for particular -kinds of files. Run 'configure --help' for a list of the directories -you can set and what kinds of files go in them. In general, the default -for these options is expressed in terms of '${prefix}', so that -specifying just '--prefix' will affect all of the other directory -specifications that were not explicitly provided. - - The most portable way to affect installation locations is to pass the -correct locations to 'configure'; however, many packages provide one or -both of the following shortcuts of passing variable assignments to the -'make install' command line to change installation locations without -having to reconfigure or recompile. - - The first method involves providing an override variable for each -affected directory. For example, 'make install -prefix=/alternate/directory' will choose an alternate location for all -directory configuration variables that were expressed in terms of -'${prefix}'. Any directories that were specified during 'configure', -but not in terms of '${prefix}', must each be overridden at install time -for the entire installation to be relocated. The approach of makefile -variable overrides for each directory variable is required by the GNU -Coding Standards, and ideally causes no recompilation. However, some -platforms have known limitations with the semantics of shared libraries -that end up requiring recompilation when using this method, particularly -noticeable in packages that use GNU Libtool. - - The second method involves providing the 'DESTDIR' variable. For -example, 'make install DESTDIR=/alternate/directory' will prepend -'/alternate/directory' before all installation names. The approach of -'DESTDIR' overrides is not required by the GNU Coding Standards, and -does not work on platforms that have drive letters. On the other hand, -it does better at avoiding recompilation issues, and works well even -when some directory options were not specified in terms of '${prefix}' -at 'configure' time. - -Optional Features -================= - - If the package supports it, you can cause programs to be installed -with an extra prefix or suffix on their names by giving 'configure' the -option '--program-prefix=PREFIX' or '--program-suffix=SUFFIX'. - - Some packages pay attention to '--enable-FEATURE' options to -'configure', where FEATURE indicates an optional part of the package.
View file
libde265-1.0.16.tar.gz/Makefile.am
Deleted
@@ -1,39 +0,0 @@ -## Makefile.am for libde265 - -SUBDIRS = libde265 - -ACLOCAL_AMFLAGS = -I m4 - -if ENABLE_DEC265 -SUBDIRS+=dec265 -endif - -if ENABLE_ENCODER -SUBDIRS+=enc265 -endif - -SUBDIRS+=tools - -# Remove acceleration-speed test program, because it needs many internal functions (that have to be dllexported). -# On the other hand, that tool was only used for development. -# SUBDIRS+=acceleration-speed - -if ENABLE_SHERLOCK265 -SUBDIRS+=sherlock265 -endif - -EXTRA_DIST = \ - autogen.sh \ - build.bat \ - m4/ax_compare_version.m4 \ - m4/ax_cxx_compile_stdcxx_11.m4 \ - m4/m4_ax_check_compile_flag.m4 \ - m4/visibility.m4 \ - Makefile.vc7 \ - CMakeLists.txt \ - README.md \ - libde265.png \ - */COPYING - -pkgconfigdir = $(libdir)/pkgconfig -pkgconfig_DATA = libde265.pc
View file
libde265-1.0.16.tar.gz/Makefile.in
Deleted
@@ -1,937 +0,0 @@ -# Makefile.in generated by automake 1.16.5 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2021 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\\ \ *) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs$$bs $$bs *//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -dEDm) skip_next=yes;; \ - -JT) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -@ENABLE_DEC265_TRUE@am__append_1 = dec265 -@ENABLE_ENCODER_TRUE@am__append_2 = enc265 - -# Remove acceleration-speed test program, because it needs many internal functions (that have to be dllexported). -# On the other hand, that tool was only used for development. -# SUBDIRS+=acceleration-speed -@ENABLE_SHERLOCK265_TRUE@am__append_3 = sherlock265 -subdir = . -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compare_version.m4 \ - $(top_srcdir)/m4/ax_cxx_compile_stdcxx_11.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/m4_ax_check_compile_flag.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \ - $(am__configure_deps) $(am__DIST_COMMON) -am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ - configure.lineno config.status.lineno -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = config.h -CONFIG_CLEAN_FILES = libde265.pc -CONFIG_CLEAN_VPATH_FILES = -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -SOURCES = -DIST_SOURCES = -RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ - ctags-recursive dvi-recursive html-recursive info-recursive \ - install-data-recursive install-dvi-recursive \ - install-exec-recursive install-html-recursive \ - install-info-recursive install-pdf-recursive \ - install-ps-recursive install-recursive installcheck-recursive \ - installdirs-recursive pdf-recursive ps-recursive \ - tags-recursive uninstall-recursive -am__can_run_installinfo = \ - case $$AM_UPDATE_INFO_DIR in \ - n|no|NO) false;; \ - *) (install-info --version) >/dev/null 2>&1;; \ - esac -am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; -am__vpath_adj = case $$p in \ - $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ - *) f=$$p;; \ - esac; -am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; -am__install_max = 40 -am__nobase_strip_setup = \ - srcdirstrip=`echo "$(srcdir)" | sed 's/.^$$\\*|/\\\\&/g'` -am__nobase_strip = \ - for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" -am__nobase_list = $(am__nobase_strip_setup); \ - for p in $$list; do echo "$$p $$p"; done | \ - sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/^/*$$,\1,' | \ - $(AWK) 'BEGIN { files"." = "" } { files$$2 = files$$2 " " $$1; \ - if (++n$$2 == $(am__install_max)) \ - { print $$2, files$$2; n$$2 = 0; files$$2 = "" } } \ - END { for (dir in files) print dir, filesdir }' -am__base_list = \ - sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ - sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' -am__uninstall_files_from_dir = { \ - test -z "$$files" \ - || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ - || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ - $(am__cd) "$$dir" && rm -f $$files; }; \ - } -am__installdirs = "$(DESTDIR)$(pkgconfigdir)" -DATA = $(pkgconfig_DATA) -RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ - distclean-recursive maintainer-clean-recursive -am__recursive_targets = \ - $(RECURSIVE_TARGETS) \ - $(RECURSIVE_CLEAN_TARGETS) \ - $(am__extra_recursive_targets) -AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - cscope distdir distdir-am dist dist-all distcheck -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) \ - config.h.in -# Read a list of newline-separated strings from the standard input, -# and print each of them once, without duplicates. Input order is -# *not* preserved. -am__uniquify_input = $(AWK) '\ - BEGIN { nonempty = 0; } \ - { items$$0 = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in items) print i; }; } \ -' -# Make sure the list of sources is unique. This is necessary because, -# e.g., the same source file might be shared among _SOURCES variables -# for different programs/libraries. -am__define_uniq_tagged_files = \ - list='$(am__tagged_files)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | $(am__uniquify_input)`
View file
libde265-1.0.16.tar.gz/Makefile.vc7
Deleted
@@ -1,4 +0,0 @@ -clean all: - cd libde265 && $(MAKE) -f Makefile.vc7 $* - cd dec265 && $(MAKE) -f Makefile.vc7 $* - cd enc265 && $(MAKE) -f Makefile.vc7 $*
View file
libde265-1.0.16.tar.gz/aclocal.m4
Deleted
@@ -1,1522 +0,0 @@ -# generated automatically by aclocal 1.16.5 -*- Autoconf -*- - -# Copyright (C) 1996-2021 Free Software Foundation, Inc. - -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -m4_ifndef(AC_CONFIG_MACRO_DIRS, m4_defun(_AM_CONFIG_MACRO_DIRS, )m4_defun(AC_CONFIG_MACRO_DIRS, _AM_CONFIG_MACRO_DIRS($@))) -m4_ifndef(AC_AUTOCONF_VERSION, - m4_copy(m4_PACKAGE_VERSION, AC_AUTOCONF_VERSION))dnl -m4_if(m4_defn(AC_AUTOCONF_VERSION), 2.71,, -m4_warning(this file was generated for autoconf 2.71. -You have another version of autoconf. It may work, but is not guaranteed to. -If you have problems, you may need to regenerate the build system entirely. -To do so, use the procedure documented by the package, typically 'autoreconf'.)) - -# pkg.m4 - Macros to locate and use pkg-config. -*- Autoconf -*- -# serial 12 (pkg-config-0.29.2) - -dnl Copyright © 2004 Scott James Remnant <scott@netsplit.com>. -dnl Copyright © 2012-2015 Dan Nicholson <dbn.lists@gmail.com> -dnl -dnl This program is free software; you can redistribute it and/or modify -dnl it under the terms of the GNU General Public License as published by -dnl the Free Software Foundation; either version 2 of the License, or -dnl (at your option) any later version. -dnl -dnl This program is distributed in the hope that it will be useful, but -dnl WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -dnl General Public License for more details. -dnl -dnl You should have received a copy of the GNU General Public License -dnl along with this program; if not, write to the Free Software -dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -dnl 02111-1307, USA. -dnl -dnl As a special exception to the GNU General Public License, if you -dnl distribute this file as part of a program that contains a -dnl configuration script generated by Autoconf, you may include it under -dnl the same distribution terms that you use for the rest of that -dnl program. - -dnl PKG_PREREQ(MIN-VERSION) -dnl ----------------------- -dnl Since: 0.29 -dnl -dnl Verify that the version of the pkg-config macros are at least -dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's -dnl installed version of pkg-config, this checks the developer's version -dnl of pkg.m4 when generating configure. -dnl -dnl To ensure that this macro is defined, also add: -dnl m4_ifndef(PKG_PREREQ, -dnl m4_fatal(must install pkg-config 0.29 or later before running autoconf/autogen)) -dnl -dnl See the "Since" comment for each macro you use to see what version -dnl of the macros you require. -m4_defun(PKG_PREREQ, -m4_define(PKG_MACROS_VERSION, 0.29.2) -m4_if(m4_version_compare(PKG_MACROS_VERSION, $1), -1, - m4_fatal(pkg.m4 version $1 or higher is required but PKG_MACROS_VERSION found)) -)dnl PKG_PREREQ - -dnl PKG_PROG_PKG_CONFIG(MIN-VERSION) -dnl ---------------------------------- -dnl Since: 0.16 -dnl -dnl Search for the pkg-config tool and set the PKG_CONFIG variable to -dnl first found in the path. Checks that the version of pkg-config found -dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is -dnl used since that's the first version where most current features of -dnl pkg-config existed. -AC_DEFUN(PKG_PROG_PKG_CONFIG, -m4_pattern_forbid(^_?PKG_A-Z_+$) -m4_pattern_allow(^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$) -m4_pattern_allow(^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$) -AC_ARG_VAR(PKG_CONFIG, path to pkg-config utility) -AC_ARG_VAR(PKG_CONFIG_PATH, directories to add to pkg-config's search path) -AC_ARG_VAR(PKG_CONFIG_LIBDIR, path overriding pkg-config's built-in search path) - -if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then - AC_PATH_TOOL(PKG_CONFIG, pkg-config) -fi -if test -n "$PKG_CONFIG"; then - _pkg_min_version=m4_default($1, 0.9.0) - AC_MSG_CHECKING(pkg-config is at least version $_pkg_min_version) - if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then - AC_MSG_RESULT(yes) - else - AC_MSG_RESULT(no) - PKG_CONFIG="" - fi -fidnl -)dnl PKG_PROG_PKG_CONFIG - -dnl PKG_CHECK_EXISTS(MODULES, ACTION-IF-FOUND, ACTION-IF-NOT-FOUND) -dnl ------------------------------------------------------------------- -dnl Since: 0.18 -dnl -dnl Check to see whether a particular set of modules exists. Similar to -dnl PKG_CHECK_MODULES(), but does not set variables or print errors. -dnl -dnl Please remember that m4 expands AC_REQUIRE(PKG_PROG_PKG_CONFIG) -dnl only at the first occurrence in configure.ac, so if the first place -dnl it's called might be skipped (such as if it is within an "if", you -dnl have to call PKG_CHECK_EXISTS manually -AC_DEFUN(PKG_CHECK_EXISTS, -AC_REQUIRE(PKG_PROG_PKG_CONFIG)dnl -if test -n "$PKG_CONFIG" && \ - AC_RUN_LOG($PKG_CONFIG --exists --print-errors "$1"); then - m4_default($2, :) -m4_ifvaln($3, else - $3)dnl -fi) - -dnl _PKG_CONFIG(VARIABLE, COMMAND, MODULES) -dnl --------------------------------------------- -dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting -dnl pkg_failed based on the result. -m4_define(_PKG_CONFIG, -if test -n "$$1"; then - pkg_cv_$1="$$1" - elif test -n "$PKG_CONFIG"; then - PKG_CHECK_EXISTS($3, - pkg_cv_$1=`$PKG_CONFIG --$2 "$3" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes , - pkg_failed=yes) - else - pkg_failed=untried -fidnl -)dnl _PKG_CONFIG - -dnl _PKG_SHORT_ERRORS_SUPPORTED -dnl --------------------------- -dnl Internal check to see if pkg-config supports short errors. -AC_DEFUN(_PKG_SHORT_ERRORS_SUPPORTED, -AC_REQUIRE(PKG_PROG_PKG_CONFIG) -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fidnl -)dnl _PKG_SHORT_ERRORS_SUPPORTED - - -dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, ACTION-IF-FOUND, -dnl ACTION-IF-NOT-FOUND) -dnl -------------------------------------------------------------- -dnl Since: 0.4.0 -dnl -dnl Note that if there is a possibility the first call to -dnl PKG_CHECK_MODULES might not happen, you should be sure to include an -dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac -AC_DEFUN(PKG_CHECK_MODULES, -AC_REQUIRE(PKG_PROG_PKG_CONFIG)dnl -AC_ARG_VAR($1_CFLAGS, C compiler flags for $1, overriding pkg-config)dnl -AC_ARG_VAR($1_LIBS, linker flags for $1, overriding pkg-config)dnl - -pkg_failed=no -AC_MSG_CHECKING(for $2) - -_PKG_CONFIG($1_CFLAGS, cflags, $2) -_PKG_CONFIG($1_LIBS, libs, $2) - -m4_define(_PKG_TEXT, Alternatively, you may set the environment variables $1_CFLAGS -and $1_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details.) - -if test $pkg_failed = yes; then - AC_MSG_RESULT(no) - _PKG_SHORT_ERRORS_SUPPORTED - if test $_pkg_short_errors_supported = yes; then - $1_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` - else - $1_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$$1_PKG_ERRORS" >&AS_MESSAGE_LOG_FD - - m4_default($4, AC_MSG_ERROR( -Package requirements ($2) were not met: - -$$1_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -_PKG_TEXT)dnl - ) -elif test $pkg_failed = untried; then - AC_MSG_RESULT(no) - m4_default($4, AC_MSG_FAILURE(
View file
libde265-1.0.16.tar.gz/autogen.sh
Deleted
@@ -1,35 +0,0 @@ -#!/bin/sh -set -eu -# -# H.265 video codec. -# Copyright (c) 2013 struktur AG, Joachim Bauch <bauch@struktur.de> -# -# This file is part of libde265. -# -# libde265 is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# libde265 is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with libde265. If not, see <http://www.gnu.org/licenses/>. -# -if -x "`which autoreconf 2>/dev/null`" ; then - exec autoreconf -ivf -fi - -LIBTOOLIZE=libtoolize -SYSNAME=`uname` -if "x$SYSNAME" = "xDarwin" ; then - LIBTOOLIZE=glibtoolize -fi -aclocal -I m4 && \ - autoheader && \ - $LIBTOOLIZE && \ - autoconf && \ - automake --add-missing --force-missing --copy
View file
libde265-1.0.16.tar.gz/build.bat
Deleted
@@ -1,43 +0,0 @@ -@echo off -if "%1" == "" goto all -if /i %1 == x86 goto x86 -if /i %1 == x64 goto x64 -if /i %1 == amd64 goto x64 -goto all - -:all -echo "Compiling libde265" -cmd /c "%0" x86 -cmd /c "%0" x64 -pause -goto :eof - -:x86 -echo "Compiling libde265 (x86)" -call "%VS110COMNTOOLS%\..\..\VC\vcvarsall.bat" x86 -nmake -f Makefile.vc7 /nologo /s /c -if not exist bin_x86\lib ( - mkdir bin_x86\lib -) -copy /y dec265\dec265.exe bin_x86\ -copy /y enc265\enc265.exe bin_x86\ -copy /y libde265\libde265.dll bin_x86\ -copy /y libde265\libde265.lib bin_x86\lib\ -copy /y libde265\libde265.exp bin_x86\lib\ -goto exit - -:x64 -echo "Compiling libde265 (x64)" -call "%VS110COMNTOOLS%\..\..\VC\vcvarsall.bat" x64 -nmake -f Makefile.vc7 /nologo /s /c -if not exist bin_x64\lib ( - mkdir bin_x64\lib -) -copy /y dec265\dec265.exe bin_x64\ -copy /y enc265\enc265.exe bin_x64\ -copy /y libde265\libde265.dll bin_x64\ -copy /y libde265\libde265.lib bin_x64\lib\ -copy /y libde265\libde265.exp bin_x64\lib\ -goto exit - -:exit
View file
libde265-1.0.16.tar.gz/compile
Deleted
@@ -1,348 +0,0 @@ -#! /bin/sh -# Wrapper for compilers which do not understand '-c -o'. - -scriptversion=2018-03-07.03; # UTC - -# Copyright (C) 1999-2018 Free Software Foundation, Inc. -# Written by Tom Tromey <tromey@cygnus.com>. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <https://www.gnu.org/licenses/>. - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# This file is maintained in Automake, please report -# bugs to <bug-automake@gnu.org> or send patches to -# <automake-patches@gnu.org>. - -nl=' -' - -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent tools from complaining about whitespace usage. -IFS=" "" $nl" - -file_conv= - -# func_file_conv build_file lazy -# Convert a $build file to $host form and store it in $file -# Currently only supports Windows hosts. If the determined conversion -# type is listed in (the comma separated) LAZY, no conversion will -# take place. -func_file_conv () -{ - file=$1 - case $file in - / | /!/*) # absolute file, and not a UNC file - if test -z "$file_conv"; then - # lazily determine how to convert abs files - case `uname -s` in - MINGW*) - file_conv=mingw - ;; - CYGWIN*) - file_conv=cygwin - ;; - *) - file_conv=wine - ;; - esac - fi - case $file_conv/,$2, in - *,$file_conv,*) - ;; - mingw/*) - file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'` - ;; - cygwin/*) - file=`cygpath -m "$file" || echo "$file"` - ;; - wine/*) - file=`winepath -w "$file" || echo "$file"` - ;; - esac - ;; - esac -} - -# func_cl_dashL linkdir -# Make cl look for libraries in LINKDIR -func_cl_dashL () -{ - func_file_conv "$1" - if test -z "$lib_path"; then - lib_path=$file - else - lib_path="$lib_path;$file" - fi - linker_opts="$linker_opts -LIBPATH:$file" -} - -# func_cl_dashl library -# Do a library search-path lookup for cl -func_cl_dashl () -{ - lib=$1 - found=no - save_IFS=$IFS - IFS=';' - for dir in $lib_path $LIB - do - IFS=$save_IFS - if $shared && test -f "$dir/$lib.dll.lib"; then - found=yes - lib=$dir/$lib.dll.lib - break - fi - if test -f "$dir/$lib.lib"; then - found=yes - lib=$dir/$lib.lib - break - fi - if test -f "$dir/lib$lib.a"; then - found=yes - lib=$dir/lib$lib.a - break - fi - done - IFS=$save_IFS - - if test "$found" != yes; then - lib=$lib.lib - fi -} - -# func_cl_wrapper cl arg... -# Adjust compile command to suit cl -func_cl_wrapper () -{ - # Assume a capable shell - lib_path= - shared=: - linker_opts= - for arg - do - if test -n "$eat"; then - eat= - else - case $1 in - -o) - # configure might choose to run compile as 'compile cc -o foo foo.c'. - eat=1 - case $2 in - *.o | *.oObBjJ) - func_file_conv "$2" - set x "$@" -Fo"$file" - shift - ;; - *) - func_file_conv "$2" - set x "$@" -Fe"$file" - shift - ;; - esac - ;; - -I) - eat=1 - func_file_conv "$2" mingw - set x "$@" -I"$file" - shift - ;; - -I*) - func_file_conv "${1#-I}" mingw - set x "$@" -I"$file" - shift - ;; - -l) - eat=1 - func_cl_dashl "$2" - set x "$@" "$lib" - shift - ;; - -l*) - func_cl_dashl "${1#-l}" - set x "$@" "$lib" - shift - ;; - -L) - eat=1 - func_cl_dashL "$2" - ;; - -L*) - func_cl_dashL "${1#-L}" - ;; - -static) - shared=false - ;; - -Wl,*) - arg=${1#-Wl,} - save_ifs="$IFS"; IFS=',' - for flag in $arg; do - IFS="$save_ifs" - linker_opts="$linker_opts $flag" - done - IFS="$save_ifs" - ;; - -Xlinker)
View file
libde265-1.0.16.tar.gz/config.guess
Deleted
@@ -1,1480 +0,0 @@ -#! /bin/sh -# Attempt to guess a canonical system name. -# Copyright 1992-2018 Free Software Foundation, Inc. - -timestamp='2018-02-24' - -# This file is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, see <https://www.gnu.org/licenses/>. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that -# program. This Exception is an additional permission under section 7 -# of the GNU General Public License, version 3 ("GPLv3"). -# -# Originally written by Per Bothner; maintained since 2000 by Ben Elliston. -# -# You can get the latest version of this script from: -# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess -# -# Please send patches to <config-patches@gnu.org>. - - -me=`echo "$0" | sed -e 's,.*/,,'` - -usage="\ -Usage: $0 OPTION - -Output the configuration name of the system \`$me' is run on. - -Options: - -h, --help print this help, then exit - -t, --time-stamp print date of last modification, then exit - -v, --version print version number, then exit - -Report bugs and patches to <config-patches@gnu.org>." - -version="\ -GNU config.guess ($timestamp) - -Originally written by Per Bothner. -Copyright 1992-2018 Free Software Foundation, Inc. - -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." - -help=" -Try \`$me --help' for more information." - -# Parse command line -while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) - echo "$timestamp" ; exit ;; - --version | -v ) - echo "$version" ; exit ;; - --help | --h* | -h ) - echo "$usage"; exit ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. - break ;; - -* ) - echo "$me: invalid option $1$help" >&2 - exit 1 ;; - * ) - break ;; - esac -done - -if test $# != 0; then - echo "$me: too many arguments$help" >&2 - exit 1 -fi - -trap 'exit 1' 1 2 15 - -# CC_FOR_BUILD -- compiler used by this script. Note that the use of a -# compiler to aid in system detection is discouraged as it requires -# temporary files to be created and, as you can see below, it is a -# headache to deal with in a portable fashion. - -# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still -# use `HOST_CC' if defined, but it is deprecated. - -# Portable tmp directory creation inspired by the Autoconf team. - -set_cc_for_build=' -trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; -trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; -: ${TMPDIR=/tmp} ; - { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || - { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || - { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || - { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; -dummy=$tmp/dummy ; -tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; -case $CC_FOR_BUILD,$HOST_CC,$CC in - ,,) echo "int x;" > "$dummy.c" ; - for c in cc gcc c89 c99 ; do - if ($c -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then - CC_FOR_BUILD="$c"; break ; - fi ; - done ; - if test x"$CC_FOR_BUILD" = x ; then - CC_FOR_BUILD=no_compiler_found ; - fi - ;; - ,,*) CC_FOR_BUILD=$CC ;; - ,*,*) CC_FOR_BUILD=$HOST_CC ;; -esac ; set_cc_for_build= ;' - -# This is needed to find uname on a Pyramid OSx when run in the BSD universe. -# (ghazi@noc.rutgers.edu 1994-08-24) -if (test -f /.attbin/uname) >/dev/null 2>&1 ; then - PATH=$PATH:/.attbin ; export PATH -fi - -UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown -UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown -UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown -UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown - -case "$UNAME_SYSTEM" in -Linux|GNU|GNU/*) - # If the system lacks a compiler, then just pick glibc. - # We could probably try harder. - LIBC=gnu - - eval "$set_cc_for_build" - cat <<-EOF > "$dummy.c" - #include <features.h> - #if defined(__UCLIBC__) - LIBC=uclibc - #elif defined(__dietlibc__) - LIBC=dietlibc - #else - LIBC=gnu - #endif - EOF - eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`" - - # If ldd exists, use it to detect musl libc. - if command -v ldd >/dev/null && \ - ldd --version 2>&1 | grep -q ^musl - then - LIBC=musl - fi - ;; -esac - -# Note: order is significant - the case branches are not exclusive. - -case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in - *:NetBSD:*:*) - # NetBSD (nbsd) targets should (where applicable) match one or - # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, - # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently - # switched to ELF, *-*-netbsd* would select the old - # object file format. This provides both forward - # compatibility and a consistent mechanism for selecting the - # object file format. - # - # Note: NetBSD doesn't particularly care about the vendor - # portion of the name. We always set it to "unknown". - sysctl="sysctl -n hw.machine_arch" - UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \ - "/sbin/$sysctl" 2>/dev/null || \ - "/usr/sbin/$sysctl" 2>/dev/null || \ - echo unknown)` - case "$UNAME_MACHINE_ARCH" in - armeb) machine=armeb-unknown ;; - arm*) machine=arm-unknown ;; - sh3el) machine=shl-unknown ;; - sh3eb) machine=sh-unknown ;; - sh5el) machine=sh5le-unknown ;; - earmv*) - arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv0-9\).*$,\1,'` - endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'` - machine="${arch}${endian}"-unknown - ;; - *) machine="$UNAME_MACHINE_ARCH"-unknown ;; - esac - # The Operating System including object format, if it has switched - # to ELF recently (or will in the future) and ABI. - case "$UNAME_MACHINE_ARCH" in - earm*) - os=netbsdelf
View file
libde265-1.0.16.tar.gz/config.h.in
Deleted
@@ -1,236 +0,0 @@ -/* config.h.in. Generated from configure.ac by autoheader. */ - -/* Define to 1 if using 'alloca.c'. */ -#undef C_ALLOCA - -/* Define to 1 if you have the `alarm' function. */ -#undef HAVE_ALARM - -/* Define to 1 if you have 'alloca', as a function or macro. */ -#undef HAVE_ALLOCA - -/* Define to 1 if <alloca.h> works. */ -#undef HAVE_ALLOCA_H - -/* Support ARM instructions */ -#undef HAVE_ARM - -/* Define to 1 if you have the <cstdint> header file. */ -#undef HAVE_CSTDINT - -/* define if the compiler supports basic C++11 syntax */ -#undef HAVE_CXX11 - -/* Define to 1 if you have the <dlfcn.h> header file. */ -#undef HAVE_DLFCN_H - -/* Define to 1 if you have the `gettimeofday' function. */ -#undef HAVE_GETTIMEOFDAY - -/* Define to 1 if you have the <inttypes.h> header file. */ -#undef HAVE_INTTYPES_H - -/* Define to 1 if you have the `malloc' function. */ -#undef HAVE_MALLOC - -/* Define to 1 if you have the <malloc.h> header file. */ -#undef HAVE_MALLOC_H - -/* Define to 1 if you have the `memalign' function. */ -#undef HAVE_MEMALIGN - -/* Define to 1 if you have the `memmove' function. */ -#undef HAVE_MEMMOVE - -/* Define to 1 if you have the `memset' function. */ -#undef HAVE_MEMSET - -/* Support ARM NEON instructions */ -#undef HAVE_NEON - -/* Define to 1 if you have the `posix_memalign' function. */ -#undef HAVE_POSIX_MEMALIGN - -/* Define to 1 if you have the `pow' function. */ -#undef HAVE_POW - -/* Define to 1 if the system has the type `ptrdiff_t'. */ -#undef HAVE_PTRDIFF_T - -/* Whether libsdl2 was found. */ -#undef HAVE_SDL - -/* Define to 1 if you have the <setjmp.h> header file. */ -#undef HAVE_SETJMP_H - -/* Define to 1 if you have the <signal.h> header file. */ -#undef HAVE_SIGNAL_H - -/* Define to 1 if you have the `sqrt' function. */ -#undef HAVE_SQRT - -/* Support SSSE4.1 (Streaming SIMD Extensions 4.1) instructions */ -#undef HAVE_SSE4_1 - -/* Define to 1 if stdbool.h conforms to C99. */ -#undef HAVE_STDBOOL_H - -/* Define to 1 if you have the <stddef.h> header file. */ -#undef HAVE_STDDEF_H - -/* Define to 1 if you have the <stdint.h> header file. */ -#undef HAVE_STDINT_H - -/* Define to 1 if you have the <stdio.h> header file. */ -#undef HAVE_STDIO_H - -/* Define to 1 if you have the <stdlib.h> header file. */ -#undef HAVE_STDLIB_H - -/* Define to 1 if you have the `strchr' function. */ -#undef HAVE_STRCHR - -/* Define to 1 if you have the <strings.h> header file. */ -#undef HAVE_STRINGS_H - -/* Define to 1 if you have the <string.h> header file. */ -#undef HAVE_STRING_H - -/* Define to 1 if you have the `strrchr' function. */ -#undef HAVE_STRRCHR - -/* Whether libswscale was found. */ -#undef HAVE_SWSCALE - -/* Define to 1 if you have the <sys/stat.h> header file. */ -#undef HAVE_SYS_STAT_H - -/* Define to 1 if you have the <sys/time.h> header file. */ -#undef HAVE_SYS_TIME_H - -/* Define to 1 if you have the <sys/types.h> header file. */ -#undef HAVE_SYS_TYPES_H - -/* Define to 1 if you have the <unistd.h> header file. */ -#undef HAVE_UNISTD_H - -/* Whether libvideogfx was found. */ -#undef HAVE_VIDEOGFX - -/* Define to 1 if the system has the type `_Bool'. */ -#undef HAVE__BOOL - -/* Define to 1 if you have the `__malloc_hook' function. */ -#undef HAVE___MALLOC_HOOK - -/* Define to 1 if you have the `__mingw_aligned_free' function. */ -#undef HAVE___MINGW_ALIGNED_FREE - -/* Define to 1 if you have the `__mingw_aligned_malloc' function. */ -#undef HAVE___MINGW_ALIGNED_MALLOC - -/* Define to the sub-directory where libtool stores uninstalled libraries. */ -#undef LT_OBJDIR - -/* Define to 1 if a fallback for "nullptr" is required. */ -#undef NEED_NULLPTR_FALLBACK - -/* Define to 1 if a fallback for "std::move" is required. */ -#undef NEED_STD_MOVE_FALLBACK - -/* Name of package */ -#undef PACKAGE - -/* Define to the address where bug reports for this package should be sent. */ -#undef PACKAGE_BUGREPORT - -/* Define to the full name of this package. */ -#undef PACKAGE_NAME - -/* Define to the full name and version of this package. */ -#undef PACKAGE_STRING - -/* Define to the one symbol short name of this package. */ -#undef PACKAGE_TARNAME - -/* Define to the home page for this package. */ -#undef PACKAGE_URL - -/* Define to the version of this package. */ -#undef PACKAGE_VERSION - -/* If using the C implementation of alloca, define if you know the - direction of stack growth for your system; otherwise it will be - automatically deduced at runtime. - STACK_DIRECTION > 0 => grows toward higher addresses - STACK_DIRECTION < 0 => grows toward lower addresses - STACK_DIRECTION = 0 => direction of growth unknown */ -#undef STACK_DIRECTION - -/* Define to 1 if all of the C90 standard headers exist (not just the ones - required in a freestanding environment). This macro is provided for - backward compatibility; new code need not use it. */ -#undef STDC_HEADERS - -/* Define to 1 if the std::tr1 namespace should be included in the std - namespace. */ -#undef USE_STD_TR1_NAMESPACE - -/* Version number of package */ -#undef VERSION - -/* Define for Solaris 2.5.1 so the uint32_t typedef from <sys/synch.h>, - <pthread.h>, or <semaphore.h> is not used. If the typedef were allowed, the - #define below would cause a syntax error. */ -#undef _UINT32_T - -/* Define for Solaris 2.5.1 so the uint64_t typedef from <sys/synch.h>, - <pthread.h>, or <semaphore.h> is not used. If the typedef were allowed, the - #define below would cause a syntax error. */ -#undef _UINT64_T - -/* Define for Solaris 2.5.1 so the uint8_t typedef from <sys/synch.h>, - <pthread.h>, or <semaphore.h> is not used. If the typedef were allowed, the - #define below would cause a syntax error. */ -#undef _UINT8_T - -/* Define to `__inline__' or `__inline' if that's what the C compiler - calls it, or to nothing if 'inline' is not supported under any name. */ -#ifndef __cplusplus
View file
libde265-1.0.16.tar.gz/config.sub
Deleted
@@ -1,1801 +0,0 @@ -#! /bin/sh -# Configuration validation subroutine script. -# Copyright 1992-2018 Free Software Foundation, Inc. - -timestamp='2018-02-22' - -# This file is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, see <https://www.gnu.org/licenses/>. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that -# program. This Exception is an additional permission under section 7 -# of the GNU General Public License, version 3 ("GPLv3"). - - -# Please send patches to <config-patches@gnu.org>. -# -# Configuration subroutine to validate and canonicalize a configuration type. -# Supply the specified configuration type as an argument. -# If it is invalid, we print an error message on stderr and exit with code 1. -# Otherwise, we print the canonical config type on stdout and succeed. - -# You can get the latest version of this script from: -# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub - -# This file is supposed to be the same for all GNU packages -# and recognize all the CPU types, system types and aliases -# that are meaningful with *any* GNU software. -# Each package is responsible for reporting which valid configurations -# it does not support. The user should be able to distinguish -# a failure to support a valid configuration from a meaningless -# configuration. - -# The goal of this file is to map all the various variations of a given -# machine specification into a single specification in the form: -# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM -# or in some cases, the newer four-part form: -# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM -# It is wrong to echo any other type of specification. - -me=`echo "$0" | sed -e 's,.*/,,'` - -usage="\ -Usage: $0 OPTION CPU-MFR-OPSYS or ALIAS - -Canonicalize a configuration name. - -Options: - -h, --help print this help, then exit - -t, --time-stamp print date of last modification, then exit - -v, --version print version number, then exit - -Report bugs and patches to <config-patches@gnu.org>." - -version="\ -GNU config.sub ($timestamp) - -Copyright 1992-2018 Free Software Foundation, Inc. - -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." - -help=" -Try \`$me --help' for more information." - -# Parse command line -while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) - echo "$timestamp" ; exit ;; - --version | -v ) - echo "$version" ; exit ;; - --help | --h* | -h ) - echo "$usage"; exit ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. - break ;; - -* ) - echo "$me: invalid option $1$help" - exit 1 ;; - - *local*) - # First pass through any local machine types. - echo "$1" - exit ;; - - * ) - break ;; - esac -done - -case $# in - 0) echo "$me: missing argument$help" >&2 - exit 1;; - 1) ;; - *) echo "$me: too many arguments$help" >&2 - exit 1;; -esac - -# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). -# Here we must recognize all the valid KERNEL-OS combinations. -maybe_os=`echo "$1" | sed 's/^\(.*\)-\(^-*-^-*\)$/\2/'` -case $maybe_os in - nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ - linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ - knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \ - kopensolaris*-gnu* | cloudabi*-eabi* | \ - storm-chaos* | os2-emx* | rtmk-nova*) - os=-$maybe_os - basic_machine=`echo "$1" | sed 's/^\(.*\)-\(^-*-^-*\)$/\1/'` - ;; - android-linux) - os=-linux-android - basic_machine=`echo "$1" | sed 's/^\(.*\)-\(^-*-^-*\)$/\1/'`-unknown - ;; - *) - basic_machine=`echo "$1" | sed 's/-^-*$//'` - if "$basic_machine" != "$1" - then os=`echo "$1" | sed 's/.*-/-/'` - else os=; fi - ;; -esac - -### Let's recognize common machines as not being operating systems so -### that things like config.sub decstation-3100 work. We also -### recognize some manufacturers as not being operating systems, so we -### can provide default operating systems below. -case $os in - -sun*os*) - # Prevent following clause from handling this invalid input. - ;; - -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ - -att* | -7300* | -3300* | -delta* | -motorola* | -sun234* | \ - -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ - -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ - -c123* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ - -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ - -apple | -axis | -knuth | -cray | -microblaze*) - os= - basic_machine=$1 - ;; - -bluegene*) - os=-cnk - ;; - -sim | -cisco | -oki | -wec | -winbond) - os= - basic_machine=$1 - ;; - -scout) - ;; - -wrs) - os=-vxworks - basic_machine=$1 - ;; - -chorusos*) - os=-chorusos - basic_machine=$1 - ;; - -chorusrdb) - os=-chorusrdb - basic_machine=$1 - ;; - -hiux*) - os=-hiuxwe2 - ;; - -sco6) - os=-sco5v6 - basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` - ;; - -sco5) - os=-sco3.2v5 - basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` - ;; - -sco4) - os=-sco3.2v4 - basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2.4-9*) - os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` - basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2v4-9*) - # Don't forget version if it is 3.2v4 or newer. - basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` - ;; - -sco5v6*)
View file
libde265-1.0.16.tar.gz/configure
Deleted
@@ -1,23234 +0,0 @@ -#! /bin/sh -# Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.71 for libde265 1.0.16. -# -# Report bugs to <dirk.farin@gmail.com>. -# -# -# Copyright (C) 1992-1996, 1998-2017, 2020-2021 Free Software Foundation, -# Inc. -# -# -# This configure script is free software; the Free Software Foundation -# gives unlimited permission to copy, distribute and modify it. -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -as_nop=: -if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1 -then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else $as_nop - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - - -# Reset variables that may have inherited troublesome values from -# the environment. - -# IFS needs to be set, to space, tab, and newline, in precisely that order. -# (If _AS_PATH_WALK were called with IFS unset, it would have the -# side effect of setting IFS to empty, thus disabling word splitting.) -# Quoting is to prevent editors from complaining about space-tab. -as_nl=' -' -export as_nl -IFS=" "" $as_nl" - -PS1='$ ' -PS2='> ' -PS4='+ ' - -# Ensure predictable behavior from utilities with locale-dependent output. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# We cannot yet rely on "unset" to work, but we need these variables -# to be unset--not just set to an empty or harmless value--now, to -# avoid bugs in old shells (e.g. pre-3.0 UWIN ksh). This construct -# also avoids known problems related to "unset" and subshell syntax -# in other old shells (e.g. bash 2.01 and pdksh 5.2.14). -for as_var in BASH_ENV ENV MAIL MAILPATH CDPATH -do eval test \${$as_var+y} \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done - -# Ensure that fds 0, 1, and 2 are open. -if (exec 3>&0) 2>/dev/null; then :; else exec 0</dev/null; fi -if (exec 3>&1) 2>/dev/null; then :; else exec 1>/dev/null; fi -if (exec 3>&2) ; then :; else exec 2>/dev/null; fi - -# The user is always right. -if ${PATH_SEPARATOR+false} :; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# Find who we are. Look in the path if we contain no directory separator. -as_myself= -case $0 in #(( - *\\/* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - test -r "$as_dir$0" && as_myself=$as_dir$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - printf "%s\n" "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - - -# Use a proper internal environment variable to ensure we don't fall - # into an infinite loop, continuously re-executing ourselves. - if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then - _as_can_reexec=no; export _as_can_reexec; - # We cannot yet assume a decent shell, so we have to provide a -# neutralization value for shells without unset; and this also -# works around shells that cannot unset nonexistent variables. -# Preserve -v and -x to the replacement shell. -BASH_ENV=/dev/null -ENV=/dev/null -(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV -case $- in # (((( - *v*x* | *x*v* ) as_opts=-vx ;; - *v* ) as_opts=-v ;; - *x* ) as_opts=-x ;; - * ) as_opts= ;; -esac -exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} -# Admittedly, this is quite paranoid, since all the known shells bail -# out after a failed `exec'. -printf "%s\n" "$0: could not re-execute with $CONFIG_SHELL" >&2 -exit 255 - fi - # We don't want this to propagate to other subprocesses. - { _as_can_reexec=; unset _as_can_reexec;} -if test "x$CONFIG_SHELL" = x; then - as_bourne_compatible="as_nop=: -if test \${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1 -then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which - # is contrary to our usage. Disable this feature. - alias -g '\${1+\"\$@\"}'='\"\$@\"' - setopt NO_GLOB_SUBST -else \$as_nop - case \`(set -o) 2>/dev/null\` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi -" - as_required="as_fn_return () { (exit \$1); } -as_fn_success () { as_fn_return 0; } -as_fn_failure () { as_fn_return 1; } -as_fn_ret_success () { return 0; } -as_fn_ret_failure () { return 1; } - -exitcode=0 -as_fn_success || { exitcode=1; echo as_fn_success failed.; } -as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } -as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } -as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } -if ( set x; as_fn_ret_success y && test x = \"\$1\" ) -then : - -else \$as_nop - exitcode=1; echo positional parameters were not saved. -fi -test x\$exitcode = x0 || exit 1 -blah=\$(echo \$(echo blah)) -test x\"\$blah\" = xblah || exit 1 -test -x / || exit 1" - as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO - as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO - eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && - test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 - - test -n \"\${ZSH_VERSION+set}\${BASH_VERSION+set}\" || ( - ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' - ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO - ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO - PATH=/empty FPATH=/empty; export PATH FPATH - test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\ - || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1 -test \$(( 1 + 1 )) = 2 || exit 1" - if (eval "$as_required") 2>/dev/null -then : - as_have_required=yes -else $as_nop - as_have_required=no
View file
libde265-1.0.16.tar.gz/configure.ac
Deleted
@@ -1,393 +0,0 @@ -# -*- Autoconf -*- -# Process this file with autoconf to produce a configure script. - -AC_PREREQ(2.68) -AC_INIT(libde265, 1.0.16, dirk.farin@gmail.com) -AC_CONFIG_SRCDIR(libde265/de265.cc) -AC_CONFIG_HEADERS(config.h) - -NUMERIC_VERSION=0x01001600 # Numeric representation of the version (A.B.C.D = 0xAABBCCDD) -AC_SUBST(NUMERIC_VERSION) - -# From https://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html: -# If the library source code has changed at all since the last update, then increment revision (‘c:r:a’ becomes ‘c:r+1:a’). -# If any interfaces have been added, removed, or changed since the last update, increment current, and set revision to 0. -# If any interfaces have been added since the last public release, then increment age. -# If any interfaces have been removed or changed since the last public release, then set age to 0. - -LIBDE265_CURRENT=1 -LIBDE265_REVISION=9 -LIBDE265_AGE=1 - -# --------------------------------------------------------------------------- - -AC_CANONICAL_SYSTEM - -AC_SUBST(LIBDE265_CURRENT) -AC_SUBST(LIBDE265_REVISION) -AC_SUBST(LIBDE265_AGE) - -dnl Initialize libtool -LT_INIT -AC_CONFIG_MACRO_DIR(m4) - -# Checks for programs. -AM_PROG_AS -AC_PROG_CXX -AC_PROG_CC -AC_PROG_INSTALL -AC_PROG_LN_S -AC_PROG_GREP - -# Initialize automake stuff -AM_INIT_AUTOMAKE - -CFLAGS="$CFLAGS -std=c99" -CXXFLAGS="$CXXFLAGS -Werror=return-type -Werror=unused-result -Werror=reorder" -AX_CXX_COMPILE_STDCXX_11() - -dnl Use -Wall if we have gcc. -changequote(,)dnl -if test "x$GCC" = "xyes"; then - case " $CFLAGS " in - *\ \ -Wall\ \ *) ;; - *) CFLAGS="$CFLAGS -Wall" ;; - esac -fi -changequote(,)dnl - -dnl gl_VISIBILITY -dnl : In encoder branch, we still export all library symbols : -HAVE_VISIBILITY=0 -AM_CONDITIONAL(HAVE_VISIBILITY, test "x$HAVE_VISIBILITY" != "x0") - -# Checks for header files. -AC_CHECK_HEADERS(stdlib.h string.h malloc.h signal.h setjmp.h stddef.h sys/time.h) - -AC_LANG_PUSH(C++) -OLD_CPPFLAGS="$CPPFLAGS" -CPPFLAGS="$CXXFLAGS" -AC_CHECK_HEADERS(cstdint) -CPPFLAGS="$OLD_CPPFLAGS" -AC_LANG_POP(C++) - -# Checks for typedefs, structures, and compiler characteristics. -AC_HEADER_STDBOOL -AC_TYPE_SIZE_T -AC_TYPE_INT8_T -AC_TYPE_INT16_T -AC_TYPE_INT32_T -AC_TYPE_INT64_T -AC_TYPE_UINT8_T -AC_TYPE_UINT16_T -AC_TYPE_UINT32_T -AC_TYPE_UINT64_T -AC_CHECK_TYPES(ptrdiff_t) -AC_C_INLINE - -# Checks for library functions. -AC_CHECK_FUNCS(malloc memmove memset __malloc_hook memalign posix_memalign __mingw_aligned_malloc __mingw_aligned_free) - -AC_SEARCH_LIBS(pow, m) -AC_SEARCH_LIBS(sqrt, m) -AC_SEARCH_LIBS(pthread_create, pthread) - -AC_CHECK_FUNCS(gettimeofday) -AC_CHECK_FUNCS(pow sqrt) -AC_CHECK_FUNCS(strchr strrchr) - -AC_FUNC_ALLOCA -AC_FUNC_ERROR_AT_LINE -# Checking for malloc breaks building on ARM for us. A similar issue is described -# here: http://nerdland.net/unstumping-the-internet/malloc-has-not-been-declared/ -# AC_FUNC_MALLOC -# AC_FUNC_REALLOC -AC_FUNC_MKTIME - -LIBS_PRIVATE="$LIBS -lstdc++" -AC_SUBST(LIBS_PRIVATE) - -AM_CONDITIONAL(MINGW, expr $host : '.*-mingw' >/dev/null 2>&1) - -# Check if "__STRICT_ANSI__" is required. -AC_MSG_CHECKING(if __STRICT_ANSI__ is required) -AC_LANG_PUSH(C++) -AC_TRY_COMPILE( -#include <vector> -,,need_strict_ansi=no,need_strict_ansi=yes); -AC_LANG_POP(C++) -if eval "test x$need_strict_ansi = xyes"; then - CFLAGS="$CFLAGS -D__STRICT_ANSI__" - CXXFLAGS="$CXXFLAGS -D__STRICT_ANSI__" -fi -AC_MSG_RESULT($need_strict_ansi) - -# Check if "std::shared_ptr" is "std::tr1::shared_ptr" -AC_MSG_CHECKING(for std::shared_ptr) -AC_LANG_PUSH(C++) -AC_TRY_COMPILE( -#include <memory> -, -class A {}; -std::shared_ptr<A> a; -,has_std_shared_ptr=yes,has_std_shared_ptr=no); -AC_MSG_RESULT($has_std_shared_ptr) -if eval "test x$has_std_shared_ptr = xno"; then - AC_MSG_CHECKING(for std::tr1::shared_ptr) - AC_TRY_COMPILE( - #include <tr1/memory> - , - class A {}; - std::tr1::shared_ptr<A> a; - ,has_std_tr1_shared_ptr=yes,has_std_tr1_shared_ptr=no); - AC_MSG_RESULT($has_std_tr1_shared_ptr) - if eval "test x$has_std_tr1_shared_ptr = xyes"; then - AC_DEFINE(USE_STD_TR1_NAMESPACE,1,Define to 1 if the std::tr1 namespace should be included in the std namespace.) - fi -fi -AC_LANG_POP(C++) - -# Check if "std::move" is available (assume always available with clang) -AC_MSG_CHECKING(for std::move) -AC_LANG_PUSH(C++) -AC_TRY_COMPILE( -#include <utility> -, -#if !defined(__clang__) -class A {}; -A* a = new A(); -A* b = std::move(a); -#endif -,has_std_move=yes,has_std_move=no); -AC_LANG_POP(C++) -if eval "test x$has_std_move = xno"; then - AC_DEFINE(NEED_STD_MOVE_FALLBACK,1,Define to 1 if a fallback for "std::move" is required.) -fi -AC_MSG_RESULT($has_std_move) - -# Check if "nullptr" is available -AC_MSG_CHECKING(for nullptr) -AC_LANG_PUSH(C++) -AC_TRY_COMPILE( -, -class A {}; -A* a = nullptr; -,has_nullptr=yes,has_nullptr=no); -AC_LANG_POP(C++) -if eval "test x$has_nullptr = xno"; then - AC_DEFINE(NEED_NULLPTR_FALLBACK,1,Define to 1 if a fallback for "nullptr" is required.) -fi -AC_MSG_RESULT($has_nullptr) - - - -AC_ARG_ENABLE(encoder, AS_HELP_STRING(--enable-encoder, Build the encoder (experimental).)) -if eval "test x$enable_encoder = x" ; then enable_encoder=no ; fi - -AM_CONDITIONAL(ENABLE_ENCODER, test x"$enable_encoder" = x"yes") - - -# --- machine dependent optimizations --- - -#AX_EXT - -AC_ARG_ENABLE(sse, - AS_HELP_STRING(--disable-sse, - disable SSE optimizations (default=no)), - disable_sse=yes, - disable_sse=no) -
View file
libde265-1.0.16.tar.gz/dec265/Makefile.am
Deleted
@@ -1,37 +0,0 @@ - -bin_PROGRAMS = dec265 # hdrcopy - -AM_CPPFLAGS = -I$(top_srcdir)/libde265 -I$(top_srcdir) - -dec265_DEPENDENCIES = ../libde265/libde265.la -dec265_CXXFLAGS = -dec265_LDFLAGS = -dec265_LDADD = ../libde265/libde265.la -lstdc++ -dec265_SOURCES = dec265.cc - -# hdrcopy_DEPENDENCIES = ../libde265/libde265.la -# hdrcopy_CXXFLAGS = -# hdrcopy_LDFLAGS = -# hdrcopy_LDADD = ../libde265/libde265.la -lstdc++ -# hdrcopy_SOURCES = hdrcopy.cc - -if HAVE_VIDEOGFX - dec265_CXXFLAGS += $(VIDEOGFX_CFLAGS) - dec265_LDFLAGS += $(VIDEOGFX_LIBS) -endif - -if HAVE_SDL - dec265_CXXFLAGS += $(SDL_CFLAGS) - dec265_LDFLAGS += $(SDL_LIBS) - dec265_SOURCES += sdl.cc sdl.hh -endif - -if MINGW - dec265_LDFLAGS += -static-libgcc -static-libstdc++ -endif - -EXTRA_DIST = Makefile.vc7 \ - CMakeLists.txt \ - ../extra/getopt.c \ - ../extra/getopt.h \ - ../extra/getopt_long.c
View file
libde265-1.0.16.tar.gz/dec265/Makefile.in
Deleted
@@ -1,747 +0,0 @@ -# Makefile.in generated by automake 1.16.5 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2021 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\\ \ *) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs$$bs $$bs *//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -dEDm) skip_next=yes;; \ - -JT) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -bin_PROGRAMS = dec265$(EXEEXT) - -# hdrcopy_DEPENDENCIES = ../libde265/libde265.la -# hdrcopy_CXXFLAGS = -# hdrcopy_LDFLAGS = -# hdrcopy_LDADD = ../libde265/libde265.la -lstdc++ -# hdrcopy_SOURCES = hdrcopy.cc -@HAVE_VIDEOGFX_TRUE@am__append_1 = $(VIDEOGFX_CFLAGS) -@HAVE_VIDEOGFX_TRUE@am__append_2 = $(VIDEOGFX_LIBS) -@HAVE_SDL_TRUE@am__append_3 = $(SDL_CFLAGS) -@HAVE_SDL_TRUE@am__append_4 = $(SDL_LIBS) -@HAVE_SDL_TRUE@am__append_5 = sdl.cc sdl.hh -@MINGW_TRUE@am__append_6 = -static-libgcc -static-libstdc++ -subdir = dec265 -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compare_version.m4 \ - $(top_srcdir)/m4/ax_cxx_compile_stdcxx_11.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/m4_ax_check_compile_flag.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -am__installdirs = "$(DESTDIR)$(bindir)" -PROGRAMS = $(bin_PROGRAMS) -am__dec265_SOURCES_DIST = dec265.cc sdl.cc sdl.hh -@HAVE_SDL_TRUE@am__objects_1 = dec265-sdl.$(OBJEXT) -am_dec265_OBJECTS = dec265-dec265.$(OBJEXT) $(am__objects_1) -dec265_OBJECTS = $(am_dec265_OBJECTS) -AM_V_lt = $(am__v_lt_@AM_V@) -am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) -am__v_lt_0 = --silent -am__v_lt_1 = -dec265_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(dec265_CXXFLAGS) \ - $(CXXFLAGS) $(dec265_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) -depcomp = $(SHELL) $(top_srcdir)/depcomp -am__maybe_remake_depfiles = depfiles -am__depfiles_remade = ./$(DEPDIR)/dec265-dec265.Po \ - ./$(DEPDIR)/dec265-sdl.Po -am__mv = mv -f -CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CXXFLAGS) $(CXXFLAGS) -AM_V_CXX = $(am__v_CXX_@AM_V@) -am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@) -am__v_CXX_0 = @echo " CXX " $@; -am__v_CXX_1 = -CXXLD = $(CXX) -CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ - $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CXXLD = $(am__v_CXXLD_@AM_V@) -am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@) -am__v_CXXLD_0 = @echo " CXXLD " $@; -am__v_CXXLD_1 = -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) -AM_V_CC = $(am__v_CC_@AM_V@) -am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) -am__v_CC_0 = @echo " CC " $@; -am__v_CC_1 = -CCLD = $(CC) -LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CCLD = $(am__v_CCLD_@AM_V@) -am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) -am__v_CCLD_0 = @echo " CCLD " $@; -am__v_CCLD_1 = -SOURCES = $(dec265_SOURCES) -DIST_SOURCES = $(am__dec265_SOURCES_DIST) -am__can_run_installinfo = \ - case $$AM_UPDATE_INFO_DIR in \ - n|no|NO) false;; \ - *) (install-info --version) >/dev/null 2>&1;; \ - esac -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) -# Read a list of newline-separated strings from the standard input, -# and print each of them once, without duplicates. Input order is -# *not* preserved. -am__uniquify_input = $(AWK) '\
View file
libde265-1.0.16.tar.gz/dec265/Makefile.vc7
Deleted
@@ -1,36 +0,0 @@ -# -# Makefile for Microsoft Visual Studio 2003 -# -CFLAGS=/I.. /I..\libde265 /I..\extra -CC=cl /nologo -LINK=link /nologo /subsystem:console -DEFINES=/DWIN32 - -CFLAGS=$(CFLAGS) /MT /Ob2 /Oi /W4 /EHsc -CFLAGS=$(CFLAGS) $(DEFINES) - -# unreferenced formal parameter -CFLAGS=$(CFLAGS) /wd4100 - -OBJS=\ - ..\extra\getopt_long.obj \ - ..\extra\getopt.obj \ - dec265.obj - -all: dec265.exe - -dec265.obj: dec265.cc - $(CC) /c $*.cc /Fo$*.obj /TP $(CFLAGS) - -.c.obj: - $(CC) /c $*.c /Fo$*.obj $(CFLAGS) - -.cc.obj: - $(CC) /c $*.cc /Fo$*.obj $(CFLAGS) - -dec265.exe: $(OBJS) ..\libde265\libde265.lib - $(LINK) /out:dec265.exe $** ..\libde265\libde265.lib - -clean: - del dec265.exe - del $(OBJS)
View file
libde265-1.0.16.tar.gz/dec265/sdl.cc
Deleted
@@ -1,298 +0,0 @@ -/* - This file is part of dec265, an example application using libde265. - - MIT License - - Copyright (c) 2013-2014 struktur AG, Dirk Farin <farin@struktur.de> - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in all - copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - SOFTWARE. -*/ - -#include "sdl.hh" -#include <cstring> - - -bool SDL_YUV_Display::init(int frame_width, int frame_height, enum SDL_Chroma chroma) -{ - // reduce image size to a multiple of 8 (apparently required by YUV overlay) - - frame_width &= ~7; - frame_height &= ~7; - - mChroma = chroma; - - if (SDL_Init(SDL_INIT_VIDEO) < 0 ) { - printf("SDL_Init() failed: %s\n", SDL_GetError( ) ); - SDL_Quit(); - return false; - } - - // set window title - const char *window_title = "SDL YUV display"; - mWindow = SDL_CreateWindow(window_title, - SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, - frame_width, frame_height, 0); - if (!mWindow) { - printf("SDL: Couldn't set video mode to %dx%d: %s\n", - frame_width, frame_height, SDL_GetError()); - SDL_Quit(); - return false; - } - - Uint32 flags = 0; // Empty flags prioritize SDL_RENDERER_ACCELERATED. - mRenderer = SDL_CreateRenderer(mWindow, -1, flags); - if (!mRenderer) { - printf("SDL: Couldn't create renderer: %s\n", SDL_GetError()); - SDL_Quit(); - return false; - } - - Uint32 pixelFormat = 0; - switch (mChroma) { - case SDL_CHROMA_MONO: pixelFormat = SDL_PIXELFORMAT_YV12; break; - case SDL_CHROMA_420: pixelFormat = SDL_PIXELFORMAT_YV12; break; - case SDL_CHROMA_422: pixelFormat = SDL_PIXELFORMAT_YV12; break; - case SDL_CHROMA_444: pixelFormat = SDL_PIXELFORMAT_YV12; break; - //case SDL_CHROMA_444: pixelFormat = SDL_PIXELFORMAT_YV12; break; - default: - printf("Unsupported chroma: %d\n", mChroma); - SDL_Quit(); - return false; - } - - mTexture = SDL_CreateTexture(mRenderer, pixelFormat, - SDL_TEXTUREACCESS_STREAMING, frame_width, frame_height); - if (!mTexture ) { - printf("SDL: Couldn't create SDL texture: %s\n", SDL_GetError()); - SDL_Quit(); - return false; - } - - rect.x = 0; - rect.y = 0; - rect.w = frame_width; - rect.h = frame_height; - - mWindowOpen=true; - - return true; -} - -void SDL_YUV_Display::display(const unsigned char *Y, - const unsigned char *U, - const unsigned char *V, - int stride, int chroma_stride) -{ - if (!mWindowOpen) return; - if (SDL_LockTexture(mTexture, nullptr, - reinterpret_cast<void**>(&mPixels), &mStride) < 0) return; - - if (mChroma == SDL_CHROMA_420) { - display420(Y,U,V,stride,chroma_stride); - } - else if (mChroma == SDL_CHROMA_422) { - display422(Y,U,V,stride,chroma_stride); - } - else if (mChroma == SDL_CHROMA_444) { - display444as420(Y,U,V,stride,chroma_stride); - //display444as422(Y,U,V,stride,chroma_stride); - } - else if (mChroma == SDL_CHROMA_MONO) { - display400(Y,stride); - } - - SDL_UnlockTexture(mTexture); - - SDL_RenderCopy(mRenderer, mTexture, nullptr, nullptr); - SDL_RenderPresent(mRenderer); -} - - -void SDL_YUV_Display::display420(const unsigned char *Y, - const unsigned char *U, - const unsigned char *V, - int stride, int chroma_stride) -{ - if (stride == mStride && chroma_stride == mStride/2) { - - // fast copy - - memcpy(mPixels, Y, rect.w * rect.h); - memcpy(&mPixelsrect.w * rect.h, V, rect.w * rect.h / 4); - memcpy(&mPixels(rect.w * rect.h) + (rect.w * rect.h / 4), U, rect.w * rect.h / 4); - } - else { - // copy line by line, because sizes are different - uint8_t *dest = mPixels; - - for (int y=0;y<rect.h;y++,dest+=mStride) - { - memcpy(dest, Y+stride*y, rect.w); - } - - for (int y=0;y<rect.h/2;y++,dest+=mStride/2) - { - memcpy(dest, V+chroma_stride*y, rect.w/2); - } - - for (int y=0;y<rect.h/2;y++,dest+=mStride/2) - { - memcpy(dest, U+chroma_stride*y, rect.w/2); - } - } -} - - -void SDL_YUV_Display::display400(const unsigned char *Y, int stride) -{ - uint8_t *dest = mPixels; - if (stride == mStride) { - - // fast copy - - memcpy(mPixels, Y, rect.w * rect.h); - dest += mStride * rect.h; - } - else { - // copy line by line, because sizes are different - - for (int y=0;y<rect.h;y++,dest+=mStride) - { - memcpy(dest, Y+stride*y, rect.w); - } - } - - // clear chroma planes - - memset(dest, 0x80, mStride * rect.h / 2); -} - - -void SDL_YUV_Display::display422(const unsigned char* Y, - const unsigned char* U, - const unsigned char* V, - int stride, int chroma_stride) -{ - for (int y = 0; y < rect.h; y++) { - unsigned char* dstY = mPixels + y * mStride; - const unsigned char* Yp = Y + y * stride; - - memcpy(dstY, Yp, rect.w); - } - - for (int y = 0; y < rect.h; y += 2) {
View file
libde265-1.0.16.tar.gz/depcomp
Deleted
@@ -1,791 +0,0 @@ -#! /bin/sh -# depcomp - compile a program generating dependencies as side-effects - -scriptversion=2018-03-07.03; # UTC - -# Copyright (C) 1999-2018 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <https://www.gnu.org/licenses/>. - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>. - -case $1 in - '') - echo "$0: No command. Try '$0 --help' for more information." 1>&2 - exit 1; - ;; - -h | --h*) - cat <<\EOF -Usage: depcomp --help --version PROGRAM ARGS - -Run PROGRAMS ARGS to compile a file, generating dependencies -as side-effects. - -Environment variables: - depmode Dependency tracking mode. - source Source file read by 'PROGRAMS ARGS'. - object Object file output by 'PROGRAMS ARGS'. - DEPDIR directory where to store dependencies. - depfile Dependency file to output. - tmpdepfile Temporary file to use when outputting dependencies. - libtool Whether libtool is used (yes/no). - -Report bugs to <bug-automake@gnu.org>. -EOF - exit $? - ;; - -v | --v*) - echo "depcomp $scriptversion" - exit $? - ;; -esac - -# Get the directory component of the given path, and save it in the -# global variables '$dir'. Note that this directory component will -# be either empty or ending with a '/' character. This is deliberate. -set_dir_from () -{ - case $1 in - */*) dir=`echo "$1" | sed -e 's|/^/*$|/|'`;; - *) dir=;; - esac -} - -# Get the suffix-stripped basename of the given path, and save it the -# global variable '$base'. -set_base_from () -{ - base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.^.*$//'` -} - -# If no dependency file was actually created by the compiler invocation, -# we still have to create a dummy depfile, to avoid errors with the -# Makefile "include basename.Plo" scheme. -make_dummy_depfile () -{ - echo "#dummy" > "$depfile" -} - -# Factor out some common post-processing of the generated depfile. -# Requires the auxiliary global variable '$tmpdepfile' to be set. -aix_post_process_depfile () -{ - # If the compiler actually managed to produce a dependency file, - # post-process it. - if test -f "$tmpdepfile"; then - # Each line is of the form 'foo.o: dependency.h'. - # Do two passes, one to just change these to - # $object: dependency.h - # and one to simply output - # dependency.h: - # which is needed to avoid the deleted-header problem. - { sed -e "s,^.*\.$lower*:,$object:," < "$tmpdepfile" - sed -e "s,^.*\.$lower*:$tab *,," -e 's,$,:,' < "$tmpdepfile" - } > "$depfile" - rm -f "$tmpdepfile" - else - make_dummy_depfile - fi -} - -# A tabulation character. -tab=' ' -# A newline character. -nl=' -' -# Character ranges might be problematic outside the C locale. -# These definitions help. -upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ -lower=abcdefghijklmnopqrstuvwxyz -digits=0123456789 -alpha=${upper}${lower} - -if test -z "$depmode" || test -z "$source" || test -z "$object"; then - echo "depcomp: Variables source, object and depmode must be set" 1>&2 - exit 1 -fi - -# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po. -depfile=${depfile-`echo "$object" | - sed 's|^\\/*$|'${DEPDIR-.deps}'/&|;s|\.\(^.*\)$|.P\1|;s|Pobj$|Po|'`} -tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\(^.*\)$/.T\1/'`} - -rm -f "$tmpdepfile" - -# Avoid interferences from the environment. -gccflag= dashmflag= - -# Some modes work just like other modes, but use different flags. We -# parameterize here, but still list the modes in the big case below, -# to make depend.m4 easier to write. Note that we *cannot* use a case -# here, because this file can only contain one case statement. -if test "$depmode" = hp; then - # HP compiler uses -M and no extra arg. - gccflag=-M - depmode=gcc -fi - -if test "$depmode" = dashXmstdout; then - # This is just like dashmstdout with a different argument. - dashmflag=-xM - depmode=dashmstdout -fi - -cygpath_u="cygpath -u -f -" -if test "$depmode" = msvcmsys; then - # This is just like msvisualcpp but w/o cygpath translation. - # Just convert the backslash-escaped backslashes to single forward - # slashes to satisfy depend.m4 - cygpath_u='sed s,\\\\,/,g' - depmode=msvisualcpp -fi - -if test "$depmode" = msvc7msys; then - # This is just like msvc7 but w/o cygpath translation. - # Just convert the backslash-escaped backslashes to single forward - # slashes to satisfy depend.m4 - cygpath_u='sed s,\\\\,/,g' - depmode=msvc7 -fi - -if test "$depmode" = xlc; then - # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information. - gccflag=-qmakedep=gcc,-MF - depmode=gcc -fi - -case "$depmode" in -gcc3) -## gcc 3 implements dependency tracking that does exactly what -## we want. Yay! Note: for some reason libtool 1.4 doesn't like -## it if -MD -MP comes after the -MF stuff. Hmm. -## Unfortunately, FreeBSD c89 acceptance of flags depends upon -## the command line argument order; so add the flags where they -## appear in depend2.am. Note that the slowdown incurred here -## affects only configure: in makefiles, %FASTDEP% shortcuts this. - for arg - do - case $arg in - -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;; - *) set fnord "$@" "$arg" ;; - esac - shift # fnord - shift # $arg - done - "$@" - stat=$? - if test $stat -ne 0; then - rm -f "$tmpdepfile" - exit $stat - fi - mv "$tmpdepfile" "$depfile" - ;; -
View file
libde265-1.0.16.tar.gz/enc265/Makefile.am
Deleted
@@ -1,19 +0,0 @@ - -bin_PROGRAMS = enc265 - -AM_CPPFLAGS = -I$(top_srcdir)/libde265 -I$(top_srcdir) - -enc265_DEPENDENCIES = ../libde265/libde265.la -enc265_CXXFLAGS = -enc265_LDFLAGS = -enc265_LDADD = ../libde265/libde265.la -lstdc++ -enc265_SOURCES = enc265.cc image-io-png.cc image-io-png.h - -if HAVE_VIDEOGFX - enc265_CXXFLAGS += $(VIDEOGFX_CFLAGS) - enc265_LDFLAGS += $(VIDEOGFX_LIBS) -endif - -EXTRA_DIST = \ - CMakeLists.txt \ - Makefile.vc7
View file
libde265-1.0.16.tar.gz/enc265/Makefile.in
Deleted
@@ -1,734 +0,0 @@ -# Makefile.in generated by automake 1.16.5 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2021 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\\ \ *) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs$$bs $$bs *//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -dEDm) skip_next=yes;; \ - -JT) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -bin_PROGRAMS = enc265$(EXEEXT) -@HAVE_VIDEOGFX_TRUE@am__append_1 = $(VIDEOGFX_CFLAGS) -@HAVE_VIDEOGFX_TRUE@am__append_2 = $(VIDEOGFX_LIBS) -subdir = enc265 -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compare_version.m4 \ - $(top_srcdir)/m4/ax_cxx_compile_stdcxx_11.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/m4_ax_check_compile_flag.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -am__installdirs = "$(DESTDIR)$(bindir)" -PROGRAMS = $(bin_PROGRAMS) -am_enc265_OBJECTS = enc265-enc265.$(OBJEXT) \ - enc265-image-io-png.$(OBJEXT) -enc265_OBJECTS = $(am_enc265_OBJECTS) -AM_V_lt = $(am__v_lt_@AM_V@) -am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) -am__v_lt_0 = --silent -am__v_lt_1 = -enc265_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(enc265_CXXFLAGS) \ - $(CXXFLAGS) $(enc265_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) -depcomp = $(SHELL) $(top_srcdir)/depcomp -am__maybe_remake_depfiles = depfiles -am__depfiles_remade = ./$(DEPDIR)/enc265-enc265.Po \ - ./$(DEPDIR)/enc265-image-io-png.Po -am__mv = mv -f -CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CXXFLAGS) $(CXXFLAGS) -AM_V_CXX = $(am__v_CXX_@AM_V@) -am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@) -am__v_CXX_0 = @echo " CXX " $@; -am__v_CXX_1 = -CXXLD = $(CXX) -CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ - $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CXXLD = $(am__v_CXXLD_@AM_V@) -am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@) -am__v_CXXLD_0 = @echo " CXXLD " $@; -am__v_CXXLD_1 = -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) -AM_V_CC = $(am__v_CC_@AM_V@) -am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) -am__v_CC_0 = @echo " CC " $@; -am__v_CC_1 = -CCLD = $(CC) -LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CCLD = $(am__v_CCLD_@AM_V@) -am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) -am__v_CCLD_0 = @echo " CCLD " $@; -am__v_CCLD_1 = -SOURCES = $(enc265_SOURCES) -DIST_SOURCES = $(enc265_SOURCES) -am__can_run_installinfo = \ - case $$AM_UPDATE_INFO_DIR in \ - n|no|NO) false;; \ - *) (install-info --version) >/dev/null 2>&1;; \ - esac -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) -# Read a list of newline-separated strings from the standard input, -# and print each of them once, without duplicates. Input order is -# *not* preserved. -am__uniquify_input = $(AWK) '\ - BEGIN { nonempty = 0; } \ - { items$$0 = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in items) print i; }; } \ -' -# Make sure the list of sources is unique. This is necessary because, -# e.g., the same source file might be shared among _SOURCES variables -# for different programs/libraries. -am__define_uniq_tagged_files = \ - list='$(am__tagged_files)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
View file
libde265-1.0.16.tar.gz/enc265/Makefile.vc7
Deleted
@@ -1,37 +0,0 @@ -# -# Makefile for Microsoft Visual Studio 2003 -# -CFLAGS=/I.. /I..\libde265 /I..\extra -CC=cl /nologo -LINK=link /nologo /subsystem:console -DEFINES=/DWIN32 - -CFLAGS=$(CFLAGS) /MT /Ob2 /Oi /W4 /EHsc -CFLAGS=$(CFLAGS) $(DEFINES) - -# unreferenced formal parameter -CFLAGS=$(CFLAGS) /wd4100 - - -OBJS=\ - ..\extra\getopt_long.obj \ - ..\extra\getopt.obj \ - enc265.obj - -all: enc265.exe - -enc265.obj: enc265.cc - $(CC) /c $*.cc /Fo$*.obj /TP $(CFLAGS) - -.c.obj: - $(CC) /c $*.c /Fo$*.obj $(CFLAGS) - -.cc.obj: - $(CC) /c $*.cc /Fo$*.obj $(CFLAGS) - -enc265.exe: $(OBJS) ..\libde265\libde265.lib - $(LINK) /out:enc265.exe $** ..\libde265\libde265.lib - -clean: - del enc265.exe - del $(OBJS)
View file
libde265-1.0.16.tar.gz/install-sh
Deleted
@@ -1,518 +0,0 @@ -#!/bin/sh -# install - install a program, script, or datafile - -scriptversion=2018-03-11.20; # UTC - -# This originates from X11R5 (mit/util/scripts/install.sh), which was -# later released in X11R6 (xc/config/util/install.sh) with the -# following copyright and license. -# -# Copyright (C) 1994 X Consortium -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to -# deal in the Software without restriction, including without limitation the -# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -# sell copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- -# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -# -# Except as contained in this notice, the name of the X Consortium shall not -# be used in advertising or otherwise to promote the sale, use or other deal- -# ings in this Software without prior written authorization from the X Consor- -# tium. -# -# -# FSF changes to this file are in the public domain. -# -# Calling this script install-sh is preferred over install.sh, to prevent -# 'make' implicit rules from creating a file called install from it -# when there is no Makefile. -# -# This script is compatible with the BSD install script, but was written -# from scratch. - -tab=' ' -nl=' -' -IFS=" $tab$nl" - -# Set DOITPROG to "echo" to test this script. - -doit=${DOITPROG-} -doit_exec=${doit:-exec} - -# Put in absolute file names if you don't have them in your path; -# or use environment vars. - -chgrpprog=${CHGRPPROG-chgrp} -chmodprog=${CHMODPROG-chmod} -chownprog=${CHOWNPROG-chown} -cmpprog=${CMPPROG-cmp} -cpprog=${CPPROG-cp} -mkdirprog=${MKDIRPROG-mkdir} -mvprog=${MVPROG-mv} -rmprog=${RMPROG-rm} -stripprog=${STRIPPROG-strip} - -posix_mkdir= - -# Desired mode of installed file. -mode=0755 - -chgrpcmd= -chmodcmd=$chmodprog -chowncmd= -mvcmd=$mvprog -rmcmd="$rmprog -f" -stripcmd= - -src= -dst= -dir_arg= -dst_arg= - -copy_on_change=false -is_target_a_directory=possibly - -usage="\ -Usage: $0 OPTION... -T SRCFILE DSTFILE - or: $0 OPTION... SRCFILES... DIRECTORY - or: $0 OPTION... -t DIRECTORY SRCFILES... - or: $0 OPTION... -d DIRECTORIES... - -In the 1st form, copy SRCFILE to DSTFILE. -In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. -In the 4th, create DIRECTORIES. - -Options: - --help display this help and exit. - --version display version info and exit. - - -c (ignored) - -C install only if different (preserve the last data modification time) - -d create directories instead of installing files. - -g GROUP $chgrpprog installed files to GROUP. - -m MODE $chmodprog installed files to MODE. - -o USER $chownprog installed files to USER. - -s $stripprog installed files. - -t DIRECTORY install into DIRECTORY. - -T report an error if DSTFILE is a directory. - -Environment variables override the default commands: - CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG - RMPROG STRIPPROG -" - -while test $# -ne 0; do - case $1 in - -c) ;; - - -C) copy_on_change=true;; - - -d) dir_arg=true;; - - -g) chgrpcmd="$chgrpprog $2" - shift;; - - --help) echo "$usage"; exit $?;; - - -m) mode=$2 - case $mode in - *' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *''*) - echo "$0: invalid mode: $mode" >&2 - exit 1;; - esac - shift;; - - -o) chowncmd="$chownprog $2" - shift;; - - -s) stripcmd=$stripprog;; - - -t) - is_target_a_directory=always - dst_arg=$2 - # Protect names problematic for 'test' and other utilities. - case $dst_arg in - -* | =\(\)!) dst_arg=./$dst_arg;; - esac - shift;; - - -T) is_target_a_directory=never;; - - --version) echo "$0 $scriptversion"; exit $?;; - - --) shift - break;; - - -*) echo "$0: invalid option: $1" >&2 - exit 1;; - - *) break;; - esac - shift -done - -# We allow the use of options -d and -T together, by making -d -# take the precedence; this is for compatibility with GNU install. - -if test -n "$dir_arg"; then - if test -n "$dst_arg"; then - echo "$0: target directory not allowed when installing a directory." >&2 - exit 1 - fi -fi - -if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then - # When -d is used, all remaining arguments are directories to create. - # When -t is used, the destination is already specified. - # Otherwise, the last argument is the destination. Remove it from $@. - for arg - do - if test -n "$dst_arg"; then - # $@ is not empty: it contains at least $arg. - set fnord "$@" "$dst_arg" - shift # fnord - fi - shift # arg - dst_arg=$arg - # Protect names problematic for 'test' and other utilities. - case $dst_arg in - -* | =\(\)!) dst_arg=./$dst_arg;; - esac - done -fi - -if test $# -eq 0; then - if test -z "$dir_arg"; then - echo "$0: no input file specified." >&2 - exit 1
View file
libde265-1.0.16.tar.gz/libde265/Makefile.am
Deleted
@@ -1,121 +0,0 @@ -AUTOMAKE_OPTIONS = subdir-objects - -lib_LTLIBRARIES = libde265.la - -libde265_ladir = \ - $(includedir)/libde265 - -libde265_la_CPPFLAGS = -libde265_la_CFLAGS = \ - $(CFLAG_VISIBILITY) \ - -DLIBDE265_EXPORTS -libde265_la_CXXFLAGS = \ - $(CFLAG_VISIBILITY) \ - -DLIBDE265_EXPORTS \ - -I$(top_srcdir) - -if HAVE_VISIBILITY - libde265_la_CFLAGS += -DHAVE_VISIBILITY - libde265_la_CXXFLAGS += -DHAVE_VISIBILITY -endif - -libde265_la_LDFLAGS = -version-info $(LIBDE265_CURRENT):$(LIBDE265_REVISION):$(LIBDE265_AGE) - -libde265_la_SOURCES = \ - acceleration.h \ - alloc_pool.h \ - alloc_pool.cc \ - bitstream.cc \ - bitstream.h \ - cabac.cc \ - cabac.h \ - configparam.cc \ - configparam.h \ - contextmodel.cc \ - contextmodel.h \ - de265.cc \ - deblock.cc \ - deblock.h \ - decctx.cc \ - decctx.h \ - fallback.cc \ - fallback.h \ - fallback-dct.h \ - fallback-dct.cc \ - fallback-motion.cc \ - fallback-motion.h \ - dpb.cc \ - dpb.h \ - image.cc \ - image.h \ - image-io.h \ - image-io.cc \ - intrapred.cc \ - intrapred.h \ - md5.cc \ - md5.h \ - motion.cc \ - motion.h \ - nal.cc \ - nal.h \ - nal-parser.cc \ - nal-parser.h \ - pps.cc \ - pps.h \ - quality.cc \ - quality.h \ - refpic.cc \ - refpic.h \ - sao.cc \ - sao.h \ - scan.cc \ - scan.h \ - sei.cc \ - sei.h \ - slice.cc \ - slice.h \ - sps.cc \ - sps.h \ - threads.cc \ - threads.h \ - transform.cc \ - transform.h \ - util.cc \ - util.h \ - visualize.cc \ - visualize.h \ - vps.cc \ - vps.h \ - vui.cc \ - vui.h - -SUBDIRS = -libde265_la_LIBADD = - -if ENABLE_ENCODER - libde265_la_SOURCES += en265.h en265.cc - SUBDIRS += encoder - libde265_la_LIBADD += encoder/libde265_encoder.la -endif - -if ENABLE_SSE_OPT - SUBDIRS += x86 - libde265_la_LIBADD += x86/libde265_x86.la -endif - -if ENABLE_ARM_OPT - SUBDIRS += arm - libde265_la_LIBADD += arm/libde265_arm.la -endif - -if MINGW - libde265_la_SOURCES += ../extra/win32cond.c ../extra/win32cond.h - libde265_la_LDFLAGS += -no-undefined -static-libgcc -static-libstdc++ -endif - -EXTRA_DIST = Makefile.vc7 \ - CMakeLists.txt - -libde265_la_HEADERS = \ - de265.h \ - de265-version.h
View file
libde265-1.0.16.tar.gz/libde265/Makefile.in
Deleted
@@ -1,1346 +0,0 @@ -# Makefile.in generated by automake 1.16.5 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2021 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - - -VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\\ \ *) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs$$bs $$bs *//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -dEDm) skip_next=yes;; \ - -JT) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -@HAVE_VISIBILITY_TRUE@am__append_1 = -DHAVE_VISIBILITY -@HAVE_VISIBILITY_TRUE@am__append_2 = -DHAVE_VISIBILITY -@ENABLE_ENCODER_TRUE@am__append_3 = en265.h en265.cc -@ENABLE_ENCODER_TRUE@am__append_4 = encoder -@ENABLE_ENCODER_TRUE@am__append_5 = encoder/libde265_encoder.la -@ENABLE_SSE_OPT_TRUE@am__append_6 = x86 -@ENABLE_SSE_OPT_TRUE@am__append_7 = x86/libde265_x86.la -@ENABLE_ARM_OPT_TRUE@am__append_8 = arm -@ENABLE_ARM_OPT_TRUE@am__append_9 = arm/libde265_arm.la -@MINGW_TRUE@am__append_10 = ../extra/win32cond.c ../extra/win32cond.h -@MINGW_TRUE@am__append_11 = -no-undefined -static-libgcc -static-libstdc++ -subdir = libde265 -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compare_version.m4 \ - $(top_srcdir)/m4/ax_cxx_compile_stdcxx_11.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/m4_ax_check_compile_flag.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(libde265_la_HEADERS) \ - $(am__DIST_COMMON) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = de265-version.h -CONFIG_CLEAN_VPATH_FILES = -am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; -am__vpath_adj = case $$p in \ - $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ - *) f=$$p;; \ - esac; -am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; -am__install_max = 40 -am__nobase_strip_setup = \ - srcdirstrip=`echo "$(srcdir)" | sed 's/.^$$\\*|/\\\\&/g'` -am__nobase_strip = \ - for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" -am__nobase_list = $(am__nobase_strip_setup); \ - for p in $$list; do echo "$$p $$p"; done | \ - sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/^/*$$,\1,' | \ - $(AWK) 'BEGIN { files"." = "" } { files$$2 = files$$2 " " $$1; \ - if (++n$$2 == $(am__install_max)) \ - { print $$2, files$$2; n$$2 = 0; files$$2 = "" } } \ - END { for (dir in files) print dir, filesdir }' -am__base_list = \ - sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ - sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' -am__uninstall_files_from_dir = { \ - test -z "$$files" \ - || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ - || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ - $(am__cd) "$$dir" && rm -f $$files; }; \ - } -am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(libde265_ladir)" -LTLIBRARIES = $(lib_LTLIBRARIES) -libde265_la_DEPENDENCIES = $(am__append_5) $(am__append_7) \ - $(am__append_9) -am__libde265_la_SOURCES_DIST = acceleration.h alloc_pool.h \ - alloc_pool.cc bitstream.cc bitstream.h cabac.cc cabac.h \ - configparam.cc configparam.h contextmodel.cc contextmodel.h \ - de265.cc deblock.cc deblock.h decctx.cc decctx.h fallback.cc \ - fallback.h fallback-dct.h fallback-dct.cc fallback-motion.cc \ - fallback-motion.h dpb.cc dpb.h image.cc image.h image-io.h \ - image-io.cc intrapred.cc intrapred.h md5.cc md5.h motion.cc \ - motion.h nal.cc nal.h nal-parser.cc nal-parser.h pps.cc pps.h \ - quality.cc quality.h refpic.cc refpic.h sao.cc sao.h scan.cc \ - scan.h sei.cc sei.h slice.cc slice.h sps.cc sps.h threads.cc \ - threads.h transform.cc transform.h util.cc util.h visualize.cc \ - visualize.h vps.cc vps.h vui.cc vui.h en265.h en265.cc \ - ../extra/win32cond.c ../extra/win32cond.h -@ENABLE_ENCODER_TRUE@am__objects_1 = libde265_la-en265.lo -am__dirstamp = $(am__leading_dot)dirstamp -@MINGW_TRUE@am__objects_2 = ../extra/libde265_la-win32cond.lo -am_libde265_la_OBJECTS = libde265_la-alloc_pool.lo \ - libde265_la-bitstream.lo libde265_la-cabac.lo \ - libde265_la-configparam.lo libde265_la-contextmodel.lo \ - libde265_la-de265.lo libde265_la-deblock.lo \ - libde265_la-decctx.lo libde265_la-fallback.lo \ - libde265_la-fallback-dct.lo libde265_la-fallback-motion.lo \ - libde265_la-dpb.lo libde265_la-image.lo \ - libde265_la-image-io.lo libde265_la-intrapred.lo \ - libde265_la-md5.lo libde265_la-motion.lo libde265_la-nal.lo \ - libde265_la-nal-parser.lo libde265_la-pps.lo \ - libde265_la-quality.lo libde265_la-refpic.lo \ - libde265_la-sao.lo libde265_la-scan.lo libde265_la-sei.lo \ - libde265_la-slice.lo libde265_la-sps.lo libde265_la-threads.lo \ - libde265_la-transform.lo libde265_la-util.lo \ - libde265_la-visualize.lo libde265_la-vps.lo libde265_la-vui.lo \ - $(am__objects_1) $(am__objects_2) -libde265_la_OBJECTS = $(am_libde265_la_OBJECTS) -AM_V_lt = $(am__v_lt_@AM_V@) -am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) -am__v_lt_0 = --silent -am__v_lt_1 = -libde265_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(libde265_la_CXXFLAGS) \ - $(CXXFLAGS) $(libde265_la_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 =
View file
libde265-1.0.16.tar.gz/libde265/Makefile.vc7
Deleted
@@ -1,108 +0,0 @@ -# -# Makefile for Microsoft Visual Studio 2003 -# -CFLAGS=/I..\extra /I.. /I. -CC=cl /nologo -LINK=link /nologo /subsystem:console -DEFINES=/DWIN32 /D_WIN32_WINNT=0x0400 /DNDEBUG /DLIBDE265_EXPORTS /D_CRT_SECURE_NO_WARNINGS /DHAVE_SSE4_1 /DHAVE_STDINT_H - -CFLAGS=$(CFLAGS) /MT /Ox /Ob2 /Oi /TP /W4 /GL /EHsc - -# type conversion, possible loss of data -CFLAGS=$(CFLAGS) /wd4244 -# unreferenced formal parameter -CFLAGS=$(CFLAGS) /wd4100 -# local variable is initialized but not referenced -CFLAGS=$(CFLAGS) /wd4189 -# unreferenced local function has been removed -CFLAGS=$(CFLAGS) /wd4505 -# padded structures -CFLAGS=$(CFLAGS) /wd4324 -# conversion signed/unsigned -CFLAGS=$(CFLAGS) /wd4245 -# comparison signed/unsigned -CFLAGS=$(CFLAGS) /wd4018 /wd4389 -# possible loss of data with return -CFLAGS=$(CFLAGS) /wd4267 -# forcing value to bool (performance warning) -CFLAGS=$(CFLAGS) /wd4800 - -CFLAGS=$(CFLAGS) $(DEFINES) - -OBJS=\ - alloc_pool.obj \ - bitstream.obj \ - cabac.obj \ - configparam.obj \ - contextmodel.obj \ - de265.obj \ - deblock.obj \ - decctx.obj \ - dpb.obj \ - en265.obj \ - fallback-dct.obj \ - fallback-motion.obj \ - fallback.obj \ - image.obj \ - image-io.obj \ - intrapred.obj \ - md5.obj \ - motion.obj \ - nal.obj \ - nal-parser.obj \ - pps.obj \ - quality.obj \ - refpic.obj \ - sao.obj \ - scan.obj \ - sei.obj \ - slice.obj \ - sps.obj \ - threads.obj \ - transform.obj \ - util.obj \ - visualize.obj \ - vps.obj \ - vui.obj \ - encoder\encoder-core.obj \ - encoder\encoder-types.obj \ - encoder\encoder-context.obj \ - encoder\encoder-params.obj \ - encoder\encoder-syntax.obj \ - encoder\encoder-intrapred.obj \ - encoder\encoder-motion.obj \ - encoder\encpicbuf.obj \ - encoder\sop.obj \ - encoder\algo\algo.obj \ - encoder\algo\cb-interpartmode.obj \ - encoder\algo\cb-intra-inter.obj \ - encoder\algo\cb-intrapartmode.obj \ - encoder\algo\cb-mergeindex.obj \ - encoder\algo\cb-skip.obj \ - encoder\algo\cb-split.obj \ - encoder\algo\coding-options.obj \ - encoder\algo\ctb-qscale.obj \ - encoder\algo\pb-mv.obj \ - encoder\algo\tb-intrapredmode.obj \ - encoder\algo\tb-rateestim.obj \ - encoder\algo\tb-split.obj \ - encoder\algo\tb-transform.obj \ - x86\sse.obj \ - x86\sse-dct.obj \ - x86\sse-motion.obj \ - ..\extra\win32cond.obj - -all: libde265.dll - -.c.obj: - $(CC) /c $*.c /Fo$*.obj $(CFLAGS) - -.cc.obj: - $(CC) /c $*.cc /Fo$*.obj $(CFLAGS) - -libde265.dll: $(OBJS) - $(LINK) /dll /out:libde265.dll $** - -clean: - del libde265.dll - del $(OBJS)
View file
libde265-1.0.16.tar.gz/libde265/arm/Makefile.am
Deleted
@@ -1,38 +0,0 @@ -noinst_LTLIBRARIES = libde265_arm.la - -libde265_arm_la_CXXFLAGS = -I.. $(CFLAG_VISIBILITY) -libde265_arm_la_SOURCES = arm.cc arm.h -libde265_arm_la_LIBADD = - -if HAVE_VISIBILITY - libde265_arm_la_CXXFLAGS += -DHAVE_VISIBILITY -endif - - -if ENABLE_NEON_OPT -# NEON specific functions - -noinst_LTLIBRARIES += libde265_arm_neon.la -libde265_arm_la_LIBADD += libde265_arm_neon.la -libde265_arm_neon_la_CXXFLAGS = -mfpu=neon -I.. $(CFLAG_VISIBILITY) -libde265_arm_neon_la_CCASFLAGS = -mfpu=neon -I.. \ - -DHAVE_NEON \ - -DEXTERN_ASM= \ - -DHAVE_AS_FUNC \ - -DHAVE_SECTION_DATA_REL_RO - -if ENABLE_ARM_THUMB - libde265_arm_neon_la_CCASFLAGS += -DCONFIG_THUMB -endif - -libde265_arm_neon_la_SOURCES = \ - asm.S \ - cpudetect.S \ - hevcdsp_qpel_neon.S \ - neon.S - -if HAVE_VISIBILITY - libde265_arm_neon_la_CXXFLAGS += -DHAVE_VISIBILITY -endif - -endif
View file
libde265-1.0.16.tar.gz/libde265/arm/Makefile.in
Deleted
@@ -1,771 +0,0 @@ -# Makefile.in generated by automake 1.16.5 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2021 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\\ \ *) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs$$bs $$bs *//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -dEDm) skip_next=yes;; \ - -JT) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ - -# NEON specific functions -@ENABLE_NEON_OPT_TRUE@am__append_1 = libde265_arm_neon.la -@ENABLE_NEON_OPT_TRUE@am__append_2 = libde265_arm_neon.la -subdir = libde265/arm -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compare_version.m4 \ - $(top_srcdir)/m4/ax_cxx_compile_stdcxx_11.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/m4_ax_check_compile_flag.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -LTLIBRARIES = $(noinst_LTLIBRARIES) -libde265_arm_la_DEPENDENCIES = $(am__append_2) -am_libde265_arm_la_OBJECTS = libde265_arm_la-arm.lo -libde265_arm_la_OBJECTS = $(am_libde265_arm_la_OBJECTS) -AM_V_lt = $(am__v_lt_@AM_V@) -am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) -am__v_lt_0 = --silent -am__v_lt_1 = -libde265_arm_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \ - $(libde265_arm_la_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -libde265_arm_neon_la_LIBADD = -am__libde265_arm_neon_la_SOURCES_DIST = asm.S cpudetect.S \ - hevcdsp_qpel_neon.S neon.S -@ENABLE_NEON_OPT_TRUE@am_libde265_arm_neon_la_OBJECTS = \ -@ENABLE_NEON_OPT_TRUE@ libde265_arm_neon_la-asm.lo \ -@ENABLE_NEON_OPT_TRUE@ libde265_arm_neon_la-cpudetect.lo \ -@ENABLE_NEON_OPT_TRUE@ libde265_arm_neon_la-hevcdsp_qpel_neon.lo \ -@ENABLE_NEON_OPT_TRUE@ libde265_arm_neon_la-neon.lo -libde265_arm_neon_la_OBJECTS = $(am_libde265_arm_neon_la_OBJECTS) -@ENABLE_NEON_OPT_TRUE@am_libde265_arm_neon_la_rpath = -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) -depcomp = $(SHELL) $(top_srcdir)/depcomp -am__maybe_remake_depfiles = depfiles -am__depfiles_remade = ./$(DEPDIR)/libde265_arm_la-arm.Plo \ - ./$(DEPDIR)/libde265_arm_neon_la-asm.Plo \ - ./$(DEPDIR)/libde265_arm_neon_la-cpudetect.Plo \ - ./$(DEPDIR)/libde265_arm_neon_la-hevcdsp_qpel_neon.Plo \ - ./$(DEPDIR)/libde265_arm_neon_la-neon.Plo -am__mv = mv -f -CPPASCOMPILE = $(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CCASFLAGS) $(CCASFLAGS) -LTCPPASCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CCAS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CCASFLAGS) $(CCASFLAGS) -AM_V_CPPAS = $(am__v_CPPAS_@AM_V@) -am__v_CPPAS_ = $(am__v_CPPAS_@AM_DEFAULT_V@) -am__v_CPPAS_0 = @echo " CPPAS " $@; -am__v_CPPAS_1 = -CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CXXFLAGS) $(CXXFLAGS) -AM_V_CXX = $(am__v_CXX_@AM_V@) -am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@) -am__v_CXX_0 = @echo " CXX " $@; -am__v_CXX_1 = -CXXLD = $(CXX) -CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ - $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CXXLD = $(am__v_CXXLD_@AM_V@) -am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@) -am__v_CXXLD_0 = @echo " CXXLD " $@; -am__v_CXXLD_1 = -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) -AM_V_CC = $(am__v_CC_@AM_V@) -am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) -am__v_CC_0 = @echo " CC " $@; -am__v_CC_1 = -CCLD = $(CC) -LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CCLD = $(am__v_CCLD_@AM_V@) -am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) -am__v_CCLD_0 = @echo " CCLD " $@;
View file
libde265-1.0.16.tar.gz/libde265/configparam.cc
Deleted
@@ -1,491 +0,0 @@ -/* - * H.265 video codec. - * Copyright (c) 2013-2014 struktur AG, Dirk Farin <farin@struktur.de> - * - * Authors: struktur AG, Dirk Farin <farin@struktur.de> - * - * This file is part of libde265. - * - * libde265 is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation, either version 3 of - * the License, or (at your option) any later version. - * - * libde265 is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with libde265. If not, see <http://www.gnu.org/licenses/>. - */ - -#include "configparam.h" - -#include <string.h> -#include <ctype.h> -#include <sstream> -#include <iomanip> -#include <iostream> -#include <algorithm> -#include <typeinfo> - -#ifndef RTTI_ENABLED -#error "Need to compile with RTTI enabled." -#endif - -static void remove_option(int* argc,char** argv,int idx, int n=1) -{ - for (int i=idx+n;i<*argc;i++) { - argvi-n = argvi; - } - - *argc-=n; -} - - -bool option_string::processCmdLineArguments(char** argv, int* argc, int idx) -{ - if (argv==NULL) { return false; } - if (idx >= *argc) { return false; } - - value = argvidx; - value_set = true; - - remove_option(argc,argv,idx,1); - - return true; -} - - -void option_int::set_range(int mini,int maxi) -{ - have_low_limit =true; - have_high_limit=true; - low_limit =mini; - high_limit=maxi; -} - -std::string option_int::getTypeDescr() const -{ - std::stringstream sstr; - sstr << "(int)"; - - if (have_low_limit || have_high_limit) { sstr << " "; } - if (have_low_limit) { sstr << low_limit << " <= "; } - if (have_low_limit || have_high_limit) { sstr << "x"; } - if (have_high_limit) { sstr << " <= " << high_limit; } - - if (!valid_values_set.empty()) { - sstr << " {"; - bool first=true; - FOR_LOOP(int, v, valid_values_set) { - if (!first) sstr << ","; else first=false; - sstr << v; - } - sstr << "}"; - } - - return sstr.str(); -} - -bool option_int::processCmdLineArguments(char** argv, int* argc, int idx) -{ - if (argv==NULL) { return false; } - if (idx >= *argc) { return false; } - - int v = atoi(argvidx); - if (!is_valid(v)) { return false; } - - value = v; - value_set = true; - - remove_option(argc,argv,idx,1); - - return true; -} - -bool option_int::is_valid(int v) const -{ - if (have_low_limit && v<low_limit) { return false; } - if (have_high_limit && v>high_limit) { return false; } - - if (!valid_values_set.empty()) { - auto iter = std::find(valid_values_set.begin(), valid_values_set.end(), v); - if (iter==valid_values_set.end()) { return false; } - } - - return true; -} - -std::string option_int::get_default_string() const -{ - std::stringstream sstr; - sstr << default_value; - return sstr.str(); -} - - -std::string choice_option_base::getTypeDescr() const -{ - std::vector<std::string> choices = get_choice_names(); - - std::stringstream sstr; - sstr << "{"; - - bool first=true; -#ifdef FOR_LOOP_AUTO_SUPPORT - FOR_LOOP(auto, c, choices) { -#else - FOR_LOOP(std::string, c, choices) { -#endif - if (first) { first=false; } - else { sstr << ","; } - - sstr << c; - } - - sstr << "}"; - return sstr.str(); -} - - -bool choice_option_base::processCmdLineArguments(char** argv, int* argc, int idx) -{ - if (argv==NULL) { return false; } - if (idx >= *argc) { return false; } - - std::string value = argvidx; - - std::cout << "set " << value << "\n"; - bool success = set_value(value); - std::cout << "success " << success << "\n"; - - remove_option(argc,argv,idx,1); - - return success; -} - - -static char* fill_strings_into_memory(const std::vector<std::string>& strings_list) -{ - // calculate memory requirement - - int totalStringLengths = 0; -#ifdef FOR_LOOP_AUTO_SUPPORT - FOR_LOOP(auto, str, strings_list) { -#else - FOR_LOOP(std::string, str, strings_list) { -#endif - totalStringLengths += str.length() +1; // +1 for null termination - } - - int numStrings = strings_list.size(); - - int pointersSize = (numStrings+1) * sizeof(const char*); - - char* memory = new charpointersSize + totalStringLengths; - - - // copy strings to memory area - - char* stringPtr = memory + (numStrings+1) * sizeof(const char*); - const char** tablePtr = (const char**)memory; - -#ifdef FOR_LOOP_AUTO_SUPPORT - FOR_LOOP(auto, str, strings_list) { -#else - FOR_LOOP(std::string, str, strings_list) { -#endif
View file
libde265-1.0.16.tar.gz/libde265/configparam.h
Deleted
@@ -1,401 +0,0 @@ -/* - * H.265 video codec. - * Copyright (c) 2013-2014 struktur AG, Dirk Farin <farin@struktur.de> - * - * Authors: struktur AG, Dirk Farin <farin@struktur.de> - * - * This file is part of libde265. - * - * libde265 is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation, either version 3 of - * the License, or (at your option) any later version. - * - * libde265 is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with libde265. If not, see <http://www.gnu.org/licenses/>. - */ - -#ifndef CONFIG_PARAM_H -#define CONFIG_PARAM_H - -#include "en265.h" -#include "util.h" - -#include <climits> -#include <vector> -#include <string> -#include <stddef.h> -#include <assert.h> - - -/* Notes: probably best to keep cmd-line-options here. So it will be: - - automatically consistent even when having different combinations of algorithms - - no other place to edit - - if needed, one can still override it at another place - */ - -// TODO: set a stack of default prefixes in config_parameters, such that all options added -// will receive this namespace prefix. - -// TODO: add the possibility to remove long options again, i.e., not use the default id name -class option_base -{ - public: - option_base() : mShortOption(0), mLongOption(NULL) { } - option_base(const char* name) : mIDName(name), mShortOption(0), mLongOption(NULL) { } - virtual ~option_base() { } - - - // --- option identifier --- - - void set_ID(const char* name) { mIDName=name; } - void add_namespace_prefix(std::string prefix) { mPrefix = prefix + ":" + mPrefix; } - - std::string get_name() const { return mPrefix + mIDName; } - - - // --- description --- - - void set_description(std::string descr) { mDescription = descr; } - std::string get_description() const { return mDescription; } - bool has_description() const { return !mDescription.empty(); } - - - // --- value --- - - virtual bool is_defined() const = 0; - bool is_undefined() const { return !is_defined(); } - - virtual bool has_default() const = 0; - - - // --- command line options ---- - - void set_cmd_line_options(const char* long_option, char short_option = 0) - { - mShortOption = short_option; - mLongOption = long_option; - } - - void set_short_option(char short_option) { mShortOption=short_option; } - - void unsetCmdLineOption() - { - mShortOption = 0; - mLongOption = NULL; - } - - bool hasShortOption() const { return mShortOption!=0; } - char getShortOption() const { return mShortOption; } - bool hasLongOption() const { return true; } //mLongOption!=NULL; } - std::string getLongOption() const { return mLongOption ? std::string(mLongOption) : get_name(); } - - virtual LIBDE265_API bool processCmdLineArguments(char** argv, int* argc, int idx) { return false; } - - - - virtual std::string getTypeDescr() const = 0; - - virtual std::string get_default_string() const { return "N/A"; } - - private: - std::string mPrefix; - std::string mIDName; - - std::string mDescription; - - char mShortOption; - const char* mLongOption; -}; - - - -class option_bool : public option_base -{ -public: - option_bool() : value_set(false), default_set(false) { } - - operator bool() const { - assert(value_set || default_set); - return value_set ? value : default_value; - } - - virtual bool is_defined() const { return value_set || default_set; } - virtual bool has_default() const { return default_set; } - - void set_default(bool v) { default_value=v; default_set=true; } - virtual std::string get_default_string() const { return default_value ? "true":"false"; } - - virtual std::string getTypeDescr() const { return "(boolean)"; } - virtual LIBDE265_API bool processCmdLineArguments(char** argv, int* argc, int idx) { set(true); return true; } - - bool set(bool v) { value_set=true; value=v; return true; } - - private: - bool value_set; - bool value; - - bool default_set; - bool default_value; -}; - - -class option_string : public option_base -{ -public: - option_string() : value_set(false), default_set(false) { } - - const option_string& operator=(std::string v) { value=v; value_set=true; return *this; } - - operator std::string() const { return get(); } - std::string get() const { - assert(value_set || default_set); - return value_set ? value : default_value; - } - - virtual bool is_defined() const { return value_set || default_set; } - virtual bool has_default() const { return default_set; } - - void set_default(std::string v) { default_value=v; default_set=true; } - virtual LIBDE265_API std::string get_default_string() const { return default_value; } - - virtual LIBDE265_API std::string getTypeDescr() const { return "(string)"; } - virtual LIBDE265_API bool processCmdLineArguments(char** argv, int* argc, int idx); - - bool set(std::string v) { value_set=true; value=v; return true; } - - private: - bool value_set; - std::string value; - - bool default_set; - std::string default_value; -}; - - -class option_int : public option_base -{ -public: - option_int() : value_set(false), default_set(false), - have_low_limit(false), have_high_limit(false) { } - - void set_minimum(int mini) { have_low_limit =true; low_limit =mini; } - void set_maximum(int maxi) { have_high_limit=true; high_limit=maxi; } - void set_range(int mini,int maxi); - void set_valid_values(const std::vector<int>& v) { valid_values_set = v; } - - const option_int& operator=(int v) { value=v; value_set=true; return *this; } - - int operator() () const { - assert(value_set || default_set); - return value_set ? value : default_value; - } - operator int() const { return operator()(); } -
View file
libde265-1.0.16.tar.gz/libde265/de265-version.h
Deleted
@@ -1,36 +0,0 @@ -/* - * H.265 video codec. - * Copyright (c) 2013-2014 struktur AG, Dirk Farin <farin@struktur.de> - * - * This file is part of libde265. - * - * libde265 is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation, either version 3 of - * the License, or (at your option) any later version. - * - * libde265 is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with libde265. If not, see <http://www.gnu.org/licenses/>. - */ - -/* de265-version.h - * - * This file was generated by autoconf when libde265 was built. - * - * DO NOT EDIT THIS FILE. - */ -#ifndef LIBDE265_VERSION_H -#define LIBDE265_VERSION_H - -/* Numeric representation of the version */ -#define LIBDE265_NUMERIC_VERSION 0x01001600 - -/* Version string */ -#define LIBDE265_VERSION "1.0.16" - -#endif
View file
libde265-1.0.16.tar.gz/libde265/encoder/Makefile.am
Deleted
@@ -1,19 +0,0 @@ -noinst_LTLIBRARIES = libde265_encoder.la - -libde265_encoder_la_CXXFLAGS = -I$(top_srcdir) -I$(top_builddir) -I$(top_srcdir)/libde265 -libde265_encoder_la_SOURCES = \ - encoder-core.cc encoder-core.h \ - encoder-types.h encoder-types.cc \ - encoder-params.h encoder-params.cc \ - encoder-context.h encoder-context.cc \ - encoder-syntax.h encoder-syntax.cc \ - encoder-intrapred.h encoder-intrapred.cc \ - encoder-motion.h encoder-motion.cc \ - encpicbuf.h encpicbuf.cc \ - sop.h sop.cc - -SUBDIRS=algo -libde265_encoder_la_LIBADD = algo/libde265_encoder_algo.la - -EXTRA_DIST = \ - CMakeLists.txt
View file
libde265-1.0.16.tar.gz/libde265/encoder/Makefile.in
Deleted
@@ -1,885 +0,0 @@ -# Makefile.in generated by automake 1.16.5 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2021 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\\ \ *) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs$$bs $$bs *//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -dEDm) skip_next=yes;; \ - -JT) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -subdir = libde265/encoder -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compare_version.m4 \ - $(top_srcdir)/m4/ax_cxx_compile_stdcxx_11.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/m4_ax_check_compile_flag.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -LTLIBRARIES = $(noinst_LTLIBRARIES) -libde265_encoder_la_DEPENDENCIES = algo/libde265_encoder_algo.la -am_libde265_encoder_la_OBJECTS = libde265_encoder_la-encoder-core.lo \ - libde265_encoder_la-encoder-types.lo \ - libde265_encoder_la-encoder-params.lo \ - libde265_encoder_la-encoder-context.lo \ - libde265_encoder_la-encoder-syntax.lo \ - libde265_encoder_la-encoder-intrapred.lo \ - libde265_encoder_la-encoder-motion.lo \ - libde265_encoder_la-encpicbuf.lo libde265_encoder_la-sop.lo -libde265_encoder_la_OBJECTS = $(am_libde265_encoder_la_OBJECTS) -AM_V_lt = $(am__v_lt_@AM_V@) -am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) -am__v_lt_0 = --silent -am__v_lt_1 = -libde265_encoder_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \ - $(libde265_encoder_la_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) -depcomp = $(SHELL) $(top_srcdir)/depcomp -am__maybe_remake_depfiles = depfiles -am__depfiles_remade = \ - ./$(DEPDIR)/libde265_encoder_la-encoder-context.Plo \ - ./$(DEPDIR)/libde265_encoder_la-encoder-core.Plo \ - ./$(DEPDIR)/libde265_encoder_la-encoder-intrapred.Plo \ - ./$(DEPDIR)/libde265_encoder_la-encoder-motion.Plo \ - ./$(DEPDIR)/libde265_encoder_la-encoder-params.Plo \ - ./$(DEPDIR)/libde265_encoder_la-encoder-syntax.Plo \ - ./$(DEPDIR)/libde265_encoder_la-encoder-types.Plo \ - ./$(DEPDIR)/libde265_encoder_la-encpicbuf.Plo \ - ./$(DEPDIR)/libde265_encoder_la-sop.Plo -am__mv = mv -f -CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CXXFLAGS) $(CXXFLAGS) -AM_V_CXX = $(am__v_CXX_@AM_V@) -am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@) -am__v_CXX_0 = @echo " CXX " $@; -am__v_CXX_1 = -CXXLD = $(CXX) -CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ - $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CXXLD = $(am__v_CXXLD_@AM_V@) -am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@) -am__v_CXXLD_0 = @echo " CXXLD " $@; -am__v_CXXLD_1 = -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) -AM_V_CC = $(am__v_CC_@AM_V@) -am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) -am__v_CC_0 = @echo " CC " $@; -am__v_CC_1 = -CCLD = $(CC) -LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CCLD = $(am__v_CCLD_@AM_V@) -am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) -am__v_CCLD_0 = @echo " CCLD " $@; -am__v_CCLD_1 = -SOURCES = $(libde265_encoder_la_SOURCES) -DIST_SOURCES = $(libde265_encoder_la_SOURCES) -RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ - ctags-recursive dvi-recursive html-recursive info-recursive \ - install-data-recursive install-dvi-recursive \ - install-exec-recursive install-html-recursive \ - install-info-recursive install-pdf-recursive \ - install-ps-recursive install-recursive installcheck-recursive \ - installdirs-recursive pdf-recursive ps-recursive \ - tags-recursive uninstall-recursive -am__can_run_installinfo = \
View file
libde265-1.0.16.tar.gz/libde265/encoder/algo/Makefile.am
Deleted
@@ -1,21 +0,0 @@ -noinst_LTLIBRARIES = libde265_encoder_algo.la - -libde265_encoder_algo_la_CXXFLAGS = -I$(top_srcdir) -I$(top_builddir) -libde265_encoder_algo_la_SOURCES = \ - algo.h algo.cc \ - coding-options.h coding-options.cc \ - ctb-qscale.h ctb-qscale.cc \ - cb-split.h cb-split.cc \ - cb-intrapartmode.h cb-intrapartmode.cc \ - cb-interpartmode.h cb-interpartmode.cc \ - cb-skip.h cb-skip.cc \ - cb-intra-inter.h cb-intra-inter.cc \ - cb-mergeindex.h cb-mergeindex.cc \ - tb-split.h tb-split.cc \ - tb-transform.h tb-transform.cc \ - tb-intrapredmode.h tb-intrapredmode.cc \ - tb-rateestim.h tb-rateestim.cc \ - pb-mv.h pb-mv.cc - -EXTRA_DIST = \ - CMakeLists.txt
View file
libde265-1.0.16.tar.gz/libde265/encoder/algo/Makefile.in
Deleted
@@ -1,834 +0,0 @@ -# Makefile.in generated by automake 1.16.5 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2021 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\\ \ *) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs$$bs $$bs *//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -dEDm) skip_next=yes;; \ - -JT) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -subdir = libde265/encoder/algo -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compare_version.m4 \ - $(top_srcdir)/m4/ax_cxx_compile_stdcxx_11.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/m4_ax_check_compile_flag.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -LTLIBRARIES = $(noinst_LTLIBRARIES) -libde265_encoder_algo_la_LIBADD = -am_libde265_encoder_algo_la_OBJECTS = \ - libde265_encoder_algo_la-algo.lo \ - libde265_encoder_algo_la-coding-options.lo \ - libde265_encoder_algo_la-ctb-qscale.lo \ - libde265_encoder_algo_la-cb-split.lo \ - libde265_encoder_algo_la-cb-intrapartmode.lo \ - libde265_encoder_algo_la-cb-interpartmode.lo \ - libde265_encoder_algo_la-cb-skip.lo \ - libde265_encoder_algo_la-cb-intra-inter.lo \ - libde265_encoder_algo_la-cb-mergeindex.lo \ - libde265_encoder_algo_la-tb-split.lo \ - libde265_encoder_algo_la-tb-transform.lo \ - libde265_encoder_algo_la-tb-intrapredmode.lo \ - libde265_encoder_algo_la-tb-rateestim.lo \ - libde265_encoder_algo_la-pb-mv.lo -libde265_encoder_algo_la_OBJECTS = \ - $(am_libde265_encoder_algo_la_OBJECTS) -AM_V_lt = $(am__v_lt_@AM_V@) -am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) -am__v_lt_0 = --silent -am__v_lt_1 = -libde265_encoder_algo_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \ - $(libde265_encoder_algo_la_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) -depcomp = $(SHELL) $(top_srcdir)/depcomp -am__maybe_remake_depfiles = depfiles -am__depfiles_remade = ./$(DEPDIR)/libde265_encoder_algo_la-algo.Plo \ - ./$(DEPDIR)/libde265_encoder_algo_la-cb-interpartmode.Plo \ - ./$(DEPDIR)/libde265_encoder_algo_la-cb-intra-inter.Plo \ - ./$(DEPDIR)/libde265_encoder_algo_la-cb-intrapartmode.Plo \ - ./$(DEPDIR)/libde265_encoder_algo_la-cb-mergeindex.Plo \ - ./$(DEPDIR)/libde265_encoder_algo_la-cb-skip.Plo \ - ./$(DEPDIR)/libde265_encoder_algo_la-cb-split.Plo \ - ./$(DEPDIR)/libde265_encoder_algo_la-coding-options.Plo \ - ./$(DEPDIR)/libde265_encoder_algo_la-ctb-qscale.Plo \ - ./$(DEPDIR)/libde265_encoder_algo_la-pb-mv.Plo \ - ./$(DEPDIR)/libde265_encoder_algo_la-tb-intrapredmode.Plo \ - ./$(DEPDIR)/libde265_encoder_algo_la-tb-rateestim.Plo \ - ./$(DEPDIR)/libde265_encoder_algo_la-tb-split.Plo \ - ./$(DEPDIR)/libde265_encoder_algo_la-tb-transform.Plo -am__mv = mv -f -CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CXXFLAGS) $(CXXFLAGS) -AM_V_CXX = $(am__v_CXX_@AM_V@) -am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@) -am__v_CXX_0 = @echo " CXX " $@; -am__v_CXX_1 = -CXXLD = $(CXX) -CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ - $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CXXLD = $(am__v_CXXLD_@AM_V@) -am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@) -am__v_CXXLD_0 = @echo " CXXLD " $@; -am__v_CXXLD_1 = -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) -AM_V_CC = $(am__v_CC_@AM_V@) -am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) -am__v_CC_0 = @echo " CC " $@; -am__v_CC_1 = -CCLD = $(CC) -LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CCLD = $(am__v_CCLD_@AM_V@) -am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) -am__v_CCLD_0 = @echo " CCLD " $@;
View file
libde265-1.0.16.tar.gz/libde265/x86/Makefile.am
Deleted
@@ -1,22 +0,0 @@ -noinst_LTLIBRARIES = libde265_x86.la libde265_x86_sse.la - -libde265_x86_la_CXXFLAGS = -I$(top_srcdir)/libde265 $(CFLAG_VISIBILITY) -libde265_x86_la_SOURCES = sse.cc sse.h -libde265_x86_la_LIBADD = libde265_x86_sse.la - -if HAVE_VISIBILITY - libde265_x86_la_CXXFLAGS += -DHAVE_VISIBILITY -endif - - -# SSE4 specific functions - -libde265_x86_sse_la_CXXFLAGS = -msse4.1 -I$(top_srcdir) -I$(top_srcdir)/libde265 $(CFLAG_VISIBILITY) -libde265_x86_sse_la_SOURCES = sse-motion.cc sse-motion.h sse-dct.h sse-dct.cc - -if HAVE_VISIBILITY - libde265_x86_sse_la_CXXFLAGS += -DHAVE_VISIBILITY -endif - -EXTRA_DIST = \ - CMakeLists.txt
View file
libde265-1.0.16.tar.gz/libde265/x86/Makefile.in
Deleted
@@ -1,704 +0,0 @@ -# Makefile.in generated by automake 1.16.5 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2021 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\\ \ *) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs$$bs $$bs *//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -dEDm) skip_next=yes;; \ - -JT) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -@HAVE_VISIBILITY_TRUE@am__append_1 = -DHAVE_VISIBILITY -@HAVE_VISIBILITY_TRUE@am__append_2 = -DHAVE_VISIBILITY -subdir = libde265/x86 -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compare_version.m4 \ - $(top_srcdir)/m4/ax_cxx_compile_stdcxx_11.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/m4_ax_check_compile_flag.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -LTLIBRARIES = $(noinst_LTLIBRARIES) -libde265_x86_la_DEPENDENCIES = libde265_x86_sse.la -am_libde265_x86_la_OBJECTS = libde265_x86_la-sse.lo -libde265_x86_la_OBJECTS = $(am_libde265_x86_la_OBJECTS) -AM_V_lt = $(am__v_lt_@AM_V@) -am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) -am__v_lt_0 = --silent -am__v_lt_1 = -libde265_x86_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \ - $(libde265_x86_la_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -libde265_x86_sse_la_LIBADD = -am_libde265_x86_sse_la_OBJECTS = libde265_x86_sse_la-sse-motion.lo \ - libde265_x86_sse_la-sse-dct.lo -libde265_x86_sse_la_OBJECTS = $(am_libde265_x86_sse_la_OBJECTS) -libde265_x86_sse_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \ - $(libde265_x86_sse_la_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) -depcomp = $(SHELL) $(top_srcdir)/depcomp -am__maybe_remake_depfiles = depfiles -am__depfiles_remade = ./$(DEPDIR)/libde265_x86_la-sse.Plo \ - ./$(DEPDIR)/libde265_x86_sse_la-sse-dct.Plo \ - ./$(DEPDIR)/libde265_x86_sse_la-sse-motion.Plo -am__mv = mv -f -CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CXXFLAGS) $(CXXFLAGS) -AM_V_CXX = $(am__v_CXX_@AM_V@) -am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@) -am__v_CXX_0 = @echo " CXX " $@; -am__v_CXX_1 = -CXXLD = $(CXX) -CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ - $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CXXLD = $(am__v_CXXLD_@AM_V@) -am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@) -am__v_CXXLD_0 = @echo " CXXLD " $@; -am__v_CXXLD_1 = -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) -AM_V_CC = $(am__v_CC_@AM_V@) -am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) -am__v_CC_0 = @echo " CC " $@; -am__v_CC_1 = -CCLD = $(CC) -LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CCLD = $(am__v_CCLD_@AM_V@) -am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) -am__v_CCLD_0 = @echo " CCLD " $@; -am__v_CCLD_1 = -SOURCES = $(libde265_x86_la_SOURCES) $(libde265_x86_sse_la_SOURCES) -DIST_SOURCES = $(libde265_x86_la_SOURCES) \ - $(libde265_x86_sse_la_SOURCES) -am__can_run_installinfo = \ - case $$AM_UPDATE_INFO_DIR in \ - n|no|NO) false;; \ - *) (install-info --version) >/dev/null 2>&1;; \ - esac -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) -# Read a list of newline-separated strings from the standard input, -# and print each of them once, without duplicates. Input order is -# *not* preserved. -am__uniquify_input = $(AWK) '\ - BEGIN { nonempty = 0; } \ - { items$$0 = 1; nonempty = 1; } \
View file
libde265-1.0.16.tar.gz/ltmain.sh
Deleted
@@ -1,11251 +0,0 @@ -#! /bin/sh -## DO NOT EDIT - This file generated from ./build-aux/ltmain.in -## by inline-source v2014-01-03.01 - -# libtool (GNU libtool) 2.4.6 -# Provide generalized library-building support services. -# Written by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996 - -# Copyright (C) 1996-2015 Free Software Foundation, Inc. -# This is free software; see the source for copying conditions. There is NO -# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -# GNU Libtool is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# As a special exception to the GNU General Public License, -# if you distribute this file as part of a program or library that -# is built using GNU Libtool, you may include this file under the -# same distribution terms that you use for the rest of that program. -# -# GNU Libtool is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - - -PROGRAM=libtool -PACKAGE=libtool -VERSION="2.4.6 Debian-2.4.6-14" -package_revision=2.4.6 - - -## ------ ## -## Usage. ## -## ------ ## - -# Run './libtool --help' for help with using this script from the -# command line. - - -## ------------------------------- ## -## User overridable command paths. ## -## ------------------------------- ## - -# After configure completes, it has a better idea of some of the -# shell tools we need than the defaults used by the functions shared -# with bootstrap, so set those here where they can still be over- -# ridden by the user, but otherwise take precedence. - -: ${AUTOCONF="autoconf"} -: ${AUTOMAKE="automake"} - - -## -------------------------- ## -## Source external libraries. ## -## -------------------------- ## - -# Much of our low-level functionality needs to be sourced from external -# libraries, which are installed to $pkgauxdir. - -# Set a version string for this script. -scriptversion=2015-01-20.17; # UTC - -# General shell script boiler plate, and helper functions. -# Written by Gary V. Vaughan, 2004 - -# Copyright (C) 2004-2015 Free Software Foundation, Inc. -# This is free software; see the source for copying conditions. There is NO -# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or -# (at your option) any later version. - -# As a special exception to the GNU General Public License, if you distribute -# this file as part of a program or library that is built using GNU Libtool, -# you may include this file under the same distribution terms that you use -# for the rest of that program. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNES FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# Please report bugs or propose patches to gary@gnu.org. - - -## ------ ## -## Usage. ## -## ------ ## - -# Evaluate this file near the top of your script to gain access to -# the functions and variables defined here: -# -# . `echo "$0" | ${SED-sed} 's|^/*$||'`/build-aux/funclib.sh -# -# If you need to override any of the default environment variable -# settings, do that before evaluating this file. - - -## -------------------- ## -## Shell normalisation. ## -## -------------------- ## - -# Some shells need a little help to be as Bourne compatible as possible. -# Before doing anything else, make sure all that help has been provided! - -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in *posix*) set -o posix ;; esac -fi - -# NLS nuisances: We save the old values in case they are required later. -_G_user_locale= -_G_safe_locale= -for _G_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES -do - eval "if test set = \"\${$_G_var+set}\"; then - save_$_G_var=\$$_G_var - $_G_var=C - export $_G_var - _G_user_locale=\"$_G_var=\\\$save_\$_G_var; \$_G_user_locale\" - _G_safe_locale=\"$_G_var=C; \$_G_safe_locale\" - fi" -done - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -# Make sure IFS has a sensible default -sp=' ' -nl=' -' -IFS="$sp $nl" - -# There are apparently some retarded systems that use ';' as a PATH separator! -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - - -## ------------------------- ## -## Locate command utilities. ## -## ------------------------- ## - - -# func_executable_p FILE -# ---------------------- -# Check that FILE is an executable regular file. -func_executable_p () -{ - test -f "$1" && test -x "$1" -} - - -# func_path_progs PROGS_LIST CHECK_FUNC PATH -# -------------------------------------------- -# Search for either a program that responds to --version with output -# containing "GNU", or else returned by CHECK_FUNC otherwise, by -# trying all the directories in PATH with each of the elements of -# PROGS_LIST. -# -# CHECK_FUNC should accept the path to a candidate program, and -# set $func_check_prog_result if it truncates its output less than -# $_G_path_prog_max characters. -func_path_progs () -{ - _G_progs_list=$1 - _G_check_func=$2 - _G_PATH=${3-"$PATH"} - - _G_path_prog_max=0 - _G_path_prog_found=false - _G_save_IFS=$IFS; IFS=${PATH_SEPARATOR-:} - for _G_dir in $_G_PATH; do - IFS=$_G_save_IFS - test -z "$_G_dir" && _G_dir=. - for _G_prog_name in $_G_progs_list; do
View file
libde265-1.0.16.tar.gz/m4
Deleted
-(directory)
View file
libde265-1.0.16.tar.gz/m4/ax_compare_version.m4
Deleted
@@ -1,177 +0,0 @@ -# =========================================================================== -# http://www.gnu.org/software/autoconf-archive/ax_compare_version.html -# =========================================================================== -# -# SYNOPSIS -# -# AX_COMPARE_VERSION(VERSION_A, OP, VERSION_B, ACTION-IF-TRUE, ACTION-IF-FALSE) -# -# DESCRIPTION -# -# This macro compares two version strings. Due to the various number of -# minor-version numbers that can exist, and the fact that string -# comparisons are not compatible with numeric comparisons, this is not -# necessarily trivial to do in a autoconf script. This macro makes doing -# these comparisons easy. -# -# The six basic comparisons are available, as well as checking equality -# limited to a certain number of minor-version levels. -# -# The operator OP determines what type of comparison to do, and can be one -# of: -# -# eq - equal (test A == B) -# ne - not equal (test A != B) -# le - less than or equal (test A <= B) -# ge - greater than or equal (test A >= B) -# lt - less than (test A < B) -# gt - greater than (test A > B) -# -# Additionally, the eq and ne operator can have a number after it to limit -# the test to that number of minor versions. -# -# eq0 - equal up to the length of the shorter version -# ne0 - not equal up to the length of the shorter version -# eqN - equal up to N sub-version levels -# neN - not equal up to N sub-version levels -# -# When the condition is true, shell commands ACTION-IF-TRUE are run, -# otherwise shell commands ACTION-IF-FALSE are run. The environment -# variable 'ax_compare_version' is always set to either 'true' or 'false' -# as well. -# -# Examples: -# -# AX_COMPARE_VERSION(3.15.7,lt,3.15.8) -# AX_COMPARE_VERSION(3.15,lt,3.15.8) -# -# would both be true. -# -# AX_COMPARE_VERSION(3.15.7,eq,3.15.8) -# AX_COMPARE_VERSION(3.15,gt,3.15.8) -# -# would both be false. -# -# AX_COMPARE_VERSION(3.15.7,eq2,3.15.8) -# -# would be true because it is only comparing two minor versions. -# -# AX_COMPARE_VERSION(3.15.7,eq0,3.15) -# -# would be true because it is only comparing the lesser number of minor -# versions of the two values. -# -# Note: The characters that separate the version numbers do not matter. An -# empty string is the same as version 0. OP is evaluated by autoconf, not -# configure, so must be a string, not a variable. -# -# The author would like to acknowledge Guido Draheim whose advice about -# the m4_case and m4_ifvaln functions make this macro only include the -# portions necessary to perform the specific comparison specified by the -# OP argument in the final configure script. -# -# LICENSE -# -# Copyright (c) 2008 Tim Toolan <toolan@ele.uri.edu> -# -# Copying and distribution of this file, with or without modification, are -# permitted in any medium without royalty provided the copyright notice -# and this notice are preserved. This file is offered as-is, without any -# warranty. - -#serial 11 - -dnl ######################################################################### -AC_DEFUN(AX_COMPARE_VERSION, - AC_REQUIRE(AC_PROG_AWK) - - # Used to indicate true or false condition - ax_compare_version=false - - # Convert the two version strings to be compared into a format that - # allows a simple string comparison. The end result is that a version - # string of the form 1.12.5-r617 will be converted to the form - # 0001001200050617. In other words, each number is zero padded to four - # digits, and non digits are removed. - AS_VAR_PUSHDEF(A,ax_compare_version_A) - A=`echo "$1" | sed -e 's/\(0-9*\)/Z\1Z/g' \ - -e 's/Z\(0-9\)Z/Z0\1Z/g' \ - -e 's/Z\(0-90-9\)Z/Z0\1Z/g' \ - -e 's/Z\(0-90-90-9\)Z/Z0\1Z/g' \ - -e 's/^0-9//g'` - - AS_VAR_PUSHDEF(B,ax_compare_version_B) - B=`echo "$3" | sed -e 's/\(0-9*\)/Z\1Z/g' \ - -e 's/Z\(0-9\)Z/Z0\1Z/g' \ - -e 's/Z\(0-90-9\)Z/Z0\1Z/g' \ - -e 's/Z\(0-90-90-9\)Z/Z0\1Z/g' \ - -e 's/^0-9//g'` - - dnl # In the case of le, ge, lt, and gt, the strings are sorted as necessary - dnl # then the first line is used to determine if the condition is true. - dnl # The sed right after the echo is to remove any indented white space. - m4_case(m4_tolower($2), - lt, - ax_compare_version=`echo "x$A -x$B" | sed 's/^ *//' | sort -r | sed "s/x${A}/false/;s/x${B}/true/;1q"` - , - gt, - ax_compare_version=`echo "x$A -x$B" | sed 's/^ *//' | sort | sed "s/x${A}/false/;s/x${B}/true/;1q"` - , - le, - ax_compare_version=`echo "x$A -x$B" | sed 's/^ *//' | sort | sed "s/x${A}/true/;s/x${B}/false/;1q"` - , - ge, - ax_compare_version=`echo "x$A -x$B" | sed 's/^ *//' | sort -r | sed "s/x${A}/true/;s/x${B}/false/;1q"` - , - dnl Split the operator from the subversion count if present. - m4_bmatch(m4_substr($2,2), - 0, - # A count of zero means use the length of the shorter version. - # Determine the number of characters in A and B. - ax_compare_version_len_A=`echo "$A" | $AWK '{print(length)}'` - ax_compare_version_len_B=`echo "$B" | $AWK '{print(length)}'` - - # Set A to no more than B's length and B to no more than A's length. - A=`echo "$A" | sed "s/\(.\{$ax_compare_version_len_B\}\).*/\1/"` - B=`echo "$B" | sed "s/\(.\{$ax_compare_version_len_A\}\).*/\1/"` - , - 0-9+, - # A count greater than zero means use only that many subversions - A=`echo "$A" | sed "s/\(\(0-9\{4\}\)\{m4_substr($2,2)\}\).*/\1/"` - B=`echo "$B" | sed "s/\(\(0-9\{4\}\)\{m4_substr($2,2)\}\).*/\1/"` - , - .+, - AC_WARNING( - illegal OP numeric parameter: $2) - ,) - - # Pad zeros at end of numbers to make same length. - ax_compare_version_tmp_A="$A`echo $B | sed 's/./0/g'`" - B="$B`echo $A | sed 's/./0/g'`" - A="$ax_compare_version_tmp_A" - - # Check for equality or inequality as necessary. - m4_case(m4_tolower(m4_substr($2,0,2)), - eq, - test "x$A" = "x$B" && ax_compare_version=true - , - ne, - test "x$A" != "x$B" && ax_compare_version=true - , - AC_WARNING(illegal OP parameter: $2) - ) - ) - - AS_VAR_POPDEF(A)dnl - AS_VAR_POPDEF(B)dnl - - dnl # Execute ACTION-IF-TRUE / ACTION-IF-FALSE. - if test "$ax_compare_version" = "true" ; then - m4_ifvaln($4,$4,:)dnl - m4_ifvaln($5,else $5)dnl - fi -) dnl AX_COMPARE_VERSION
View file
libde265-1.0.16.tar.gz/m4/ax_cxx_compile_stdcxx_11.m4
Deleted
@@ -1,142 +0,0 @@ -# ============================================================================ -# http://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx_11.html -# ============================================================================ -# -# SYNOPSIS -# -# AX_CXX_COMPILE_STDCXX_11(ext|noext,mandatory|optional) -# -# DESCRIPTION -# -# Check for baseline language coverage in the compiler for the C++11 -# standard; if necessary, add switches to CXXFLAGS to enable support. -# -# The first argument, if specified, indicates whether you insist on an -# extended mode (e.g. -std=gnu++11) or a strict conformance mode (e.g. -# -std=c++11). If neither is specified, you get whatever works, with -# preference for an extended mode. -# -# The second argument, if specified 'mandatory' or if left unspecified, -# indicates that baseline C++11 support is required and that the macro -# should error out if no mode with that support is found. If specified -# 'optional', then configuration proceeds regardless, after defining -# HAVE_CXX11 if and only if a supporting mode is found. -# -# LICENSE -# -# Copyright (c) 2008 Benjamin Kosnik <bkoz@redhat.com> -# Copyright (c) 2012 Zack Weinberg <zackw@panix.com> -# Copyright (c) 2013 Roy Stogner <roystgnr@ices.utexas.edu> -# Copyright (c) 2014 Alexey Sokolov <sokolov@google.com> -# -# Copying and distribution of this file, with or without modification, are -# permitted in any medium without royalty provided the copyright notice -# and this notice are preserved. This file is offered as-is, without any -# warranty. - -#serial 4 - -m4_define(_AX_CXX_COMPILE_STDCXX_11_testbody, - template <typename T> - struct check - { - static_assert(sizeof(int) <= sizeof(T), "not big enough"); - }; - - struct Base { - virtual void f() {} - }; - struct Child : public Base { - virtual void f() {} // DiFa: override {} # override not supported in gcc 4.6 - }; - - typedef check<check<bool>> right_angle_brackets; - - int a; - decltype(a) b; - - typedef check<int> check_type; - check_type c; - check_type&& cr = static_cast<check_type&&>(c); - - auto d = a; - auto l = (){}; -) - -AC_DEFUN(AX_CXX_COMPILE_STDCXX_11, dnl - m4_if($1, , , - $1, ext, , - $1, noext, , - m4_fatal(invalid argument `$1' to AX_CXX_COMPILE_STDCXX_11))dnl - m4_if($2, , ax_cxx_compile_cxx11_required=true, - $2, mandatory, ax_cxx_compile_cxx11_required=true, - $2, optional, ax_cxx_compile_cxx11_required=false, - m4_fatal(invalid second argument `$2' to AX_CXX_COMPILE_STDCXX_11)) - AC_LANG_PUSH(C++)dnl - ac_success=no - AC_CACHE_CHECK(whether $CXX supports C++11 features by default, - ax_cv_cxx_compile_cxx11, - AC_COMPILE_IFELSE(AC_LANG_SOURCE(_AX_CXX_COMPILE_STDCXX_11_testbody), - ax_cv_cxx_compile_cxx11=yes, - ax_cv_cxx_compile_cxx11=no)) - if test x$ax_cv_cxx_compile_cxx11 = xyes; then - ac_success=yes - fi - - m4_if($1, noext, , dnl - if test x$ac_success = xno; then - for switch in -std=gnu++11 -std=gnu++0x; do - cachevar=AS_TR_SH(ax_cv_cxx_compile_cxx11_$switch) - AC_CACHE_CHECK(whether $CXX supports C++11 features with $switch, - $cachevar, - ac_save_CXXFLAGS="$CXXFLAGS" - CXXFLAGS="$CXXFLAGS $switch" - AC_COMPILE_IFELSE(AC_LANG_SOURCE(_AX_CXX_COMPILE_STDCXX_11_testbody), - eval $cachevar=yes, - eval $cachevar=no) - CXXFLAGS="$ac_save_CXXFLAGS") - if eval test x\$$cachevar = xyes; then - CXXFLAGS="$CXXFLAGS $switch" - ac_success=yes - break - fi - done - fi) - - m4_if($1, ext, , dnl - if test x$ac_success = xno; then - for switch in -std=c++11 -std=c++0x; do - cachevar=AS_TR_SH(ax_cv_cxx_compile_cxx11_$switch) - AC_CACHE_CHECK(whether $CXX supports C++11 features with $switch, - $cachevar, - ac_save_CXXFLAGS="$CXXFLAGS" - CXXFLAGS="$CXXFLAGS $switch" - AC_COMPILE_IFELSE(AC_LANG_SOURCE(_AX_CXX_COMPILE_STDCXX_11_testbody), - eval $cachevar=yes, - eval $cachevar=no) - CXXFLAGS="$ac_save_CXXFLAGS") - if eval test x\$$cachevar = xyes; then - CXXFLAGS="$CXXFLAGS $switch" - ac_success=yes - break - fi - done - fi) - AC_LANG_POP(C++) - if test x$ax_cxx_compile_cxx11_required = xtrue; then - if test x$ac_success = xno; then - AC_MSG_ERROR(*** A compiler with support for C++11 language features is required.) - fi - else - if test x$ac_success = xno; then - HAVE_CXX11=0 - AC_MSG_NOTICE(No compiler with C++11 support was found) - else - HAVE_CXX11=1 - AC_DEFINE(HAVE_CXX11,1, - define if the compiler supports basic C++11 syntax) - fi - - AC_SUBST(HAVE_CXX11) - fi -)
View file
libde265-1.0.16.tar.gz/m4/libtool.m4
Deleted
@@ -1,8394 +0,0 @@ -# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- -# -# Copyright (C) 1996-2001, 2003-2015 Free Software Foundation, Inc. -# Written by Gordon Matzigkeit, 1996 -# -# This file is free software; the Free Software Foundation gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. - -m4_define(_LT_COPYING, dnl -# Copyright (C) 2014 Free Software Foundation, Inc. -# This is free software; see the source for copying conditions. There is NO -# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -# GNU Libtool is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of of the License, or -# (at your option) any later version. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program or library that is built -# using GNU Libtool, you may include this file under the same -# distribution terms that you use for the rest of that program. -# -# GNU Libtool is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. -) - -# serial 58 LT_INIT - - -# LT_PREREQ(VERSION) -# ------------------ -# Complain and exit if this libtool version is less that VERSION. -m4_defun(LT_PREREQ, -m4_if(m4_version_compare(m4_defn(LT_PACKAGE_VERSION), $1), -1, - m4_default($3, - m4_fatal(Libtool version $1 or higher is required, - 63)), - $2)) - - -# _LT_CHECK_BUILDDIR -# ------------------ -# Complain if the absolute build directory name contains unusual characters -m4_defun(_LT_CHECK_BUILDDIR, -case `pwd` in - *\ * | *\ *) - AC_MSG_WARN(Libtool does not cope well with whitespace in `pwd`) ;; -esac -) - - -# LT_INIT(OPTIONS) -# ------------------ -AC_DEFUN(LT_INIT, -AC_PREREQ(2.62)dnl We use AC_PATH_PROGS_FEATURE_CHECK -AC_REQUIRE(AC_CONFIG_AUX_DIR_DEFAULT)dnl -AC_BEFORE($0, LT_LANG)dnl -AC_BEFORE($0, LT_OUTPUT)dnl -AC_BEFORE($0, LTDL_INIT)dnl -m4_require(_LT_CHECK_BUILDDIR)dnl - -dnl Autoconf doesn't catch unexpanded LT_ macros by default: -m4_pattern_forbid(^_?LT_A-Z_+$)dnl -m4_pattern_allow(^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$)dnl -dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4 -dnl unless we require an AC_DEFUNed macro: -AC_REQUIRE(LTOPTIONS_VERSION)dnl -AC_REQUIRE(LTSUGAR_VERSION)dnl -AC_REQUIRE(LTVERSION_VERSION)dnl -AC_REQUIRE(LTOBSOLETE_VERSION)dnl -m4_require(_LT_PROG_LTMAIN)dnl - -_LT_SHELL_INIT(SHELL=${CONFIG_SHELL-/bin/sh}) - -dnl Parse OPTIONS -_LT_SET_OPTIONS($0, $1) - -# This can be used to rebuild libtool when needed -LIBTOOL_DEPS=$ltmain - -# Always use our own libtool. -LIBTOOL='$(SHELL) $(top_builddir)/libtool' -AC_SUBST(LIBTOOL)dnl - -_LT_SETUP - -# Only expand once: -m4_define(LT_INIT) -)# LT_INIT - -# Old names: -AU_ALIAS(AC_PROG_LIBTOOL, LT_INIT) -AU_ALIAS(AM_PROG_LIBTOOL, LT_INIT) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN(AC_PROG_LIBTOOL, ) -dnl AC_DEFUN(AM_PROG_LIBTOOL, ) - - -# _LT_PREPARE_CC_BASENAME -# ----------------------- -m4_defun(_LT_PREPARE_CC_BASENAME, -# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. -func_cc_basename () -{ - for cc_temp in @S|@*""; do - case $cc_temp in - compile | *\\/compile | ccache | *\\/ccache ) ;; - distcc | *\\/distcc | purify | *\\/purify ) ;; - \-*) ;; - *) break;; - esac - done - func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` -} -)# _LT_PREPARE_CC_BASENAME - - -# _LT_CC_BASENAME(CC) -# ------------------- -# It would be clearer to call AC_REQUIREs from _LT_PREPARE_CC_BASENAME, -# but that macro is also expanded into generated libtool script, which -# arranges for $SED and $ECHO to be set by different means. -m4_defun(_LT_CC_BASENAME, -m4_require(_LT_PREPARE_CC_BASENAME)dnl -AC_REQUIRE(_LT_DECL_SED)dnl -AC_REQUIRE(_LT_PROG_ECHO_BACKSLASH)dnl -func_cc_basename $1 -cc_basename=$func_cc_basename_result -) - - -# _LT_FILEUTILS_DEFAULTS -# ---------------------- -# It is okay to use these file commands and assume they have been set -# sensibly after 'm4_require(_LT_FILEUTILS_DEFAULTS)'. -m4_defun(_LT_FILEUTILS_DEFAULTS, -: ${CP="cp -f"} -: ${MV="mv -f"} -: ${RM="rm -f"} -)# _LT_FILEUTILS_DEFAULTS - - -# _LT_SETUP -# --------- -m4_defun(_LT_SETUP, -AC_REQUIRE(AC_CANONICAL_HOST)dnl -AC_REQUIRE(AC_CANONICAL_BUILD)dnl -AC_REQUIRE(_LT_PREPARE_SED_QUOTE_VARS)dnl -AC_REQUIRE(_LT_PROG_ECHO_BACKSLASH)dnl - -_LT_DECL(, PATH_SEPARATOR, 1, The PATH separator for the build system)dnl -dnl -_LT_DECL(, host_alias, 0, The host system)dnl -_LT_DECL(, host, 0)dnl -_LT_DECL(, host_os, 0)dnl -dnl -_LT_DECL(, build_alias, 0, The build system)dnl -_LT_DECL(, build, 0)dnl -_LT_DECL(, build_os, 0)dnl -dnl -AC_REQUIRE(AC_PROG_CC)dnl -AC_REQUIRE(LT_PATH_LD)dnl -AC_REQUIRE(LT_PATH_NM)dnl -dnl -AC_REQUIRE(AC_PROG_LN_S)dnl -test -z "$LN_S" && LN_S="ln -s" -_LT_DECL(, LN_S, 1, Whether we need soft or hard links)dnl -dnl -AC_REQUIRE(LT_CMD_MAX_LEN)dnl -_LT_DECL(objext, ac_objext, 0, Object file suffix (normally "o"))dnl -_LT_DECL(, exeext, 0, Executable file suffix (normally ""))dnl -dnl -m4_require(_LT_FILEUTILS_DEFAULTS)dnl -m4_require(_LT_CHECK_SHELL_FEATURES)dnl -m4_require(_LT_PATH_CONVERSION_FUNCTIONS)dnl -m4_require(_LT_CMD_RELOAD)dnl -m4_require(_LT_CHECK_MAGIC_METHOD)dnl -m4_require(_LT_CHECK_SHAREDLIB_FROM_LINKLIB)dnl -m4_require(_LT_CMD_OLD_ARCHIVE)dnl -m4_require(_LT_CMD_GLOBAL_SYMBOLS)dnl -m4_require(_LT_WITH_SYSROOT)dnl -m4_require(_LT_CMD_TRUNCATE)dnl - -_LT_CONFIG_LIBTOOL_INIT( -# See if we are running on zsh, and set the options that allow our -# commands through without removal of \ escapes INIT. -if test -n "\${ZSH_VERSION+set}"; then - setopt NO_GLOB_SUBST -fi -) -if test -n "${ZSH_VERSION+set}"; then - setopt NO_GLOB_SUBST
View file
libde265-1.0.16.tar.gz/m4/ltoptions.m4
Deleted
@@ -1,437 +0,0 @@ -# Helper functions for option handling. -*- Autoconf -*- -# -# Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software -# Foundation, Inc. -# Written by Gary V. Vaughan, 2004 -# -# This file is free software; the Free Software Foundation gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. - -# serial 8 ltoptions.m4 - -# This is to help aclocal find these macros, as it can't see m4_define. -AC_DEFUN(LTOPTIONS_VERSION, m4_if(1)) - - -# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME) -# ------------------------------------------ -m4_define(_LT_MANGLE_OPTION, -_LT_OPTION_m4_bpatsubst($1__$2, ^a-zA-Z0-9_, _)) - - -# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME) -# --------------------------------------- -# Set option OPTION-NAME for macro MACRO-NAME, and if there is a -# matching handler defined, dispatch to it. Other OPTION-NAMEs are -# saved as a flag. -m4_define(_LT_SET_OPTION, -m4_define(_LT_MANGLE_OPTION($1, $2))dnl -m4_ifdef(_LT_MANGLE_DEFUN($1, $2), - _LT_MANGLE_DEFUN($1, $2), - m4_warning(Unknown $1 option '$2'))dnl -) - - -# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, IF-NOT-SET) -# ------------------------------------------------------------ -# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. -m4_define(_LT_IF_OPTION, -m4_ifdef(_LT_MANGLE_OPTION($1, $2), $3, $4)) - - -# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET) -# ------------------------------------------------------- -# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME -# are set. -m4_define(_LT_UNLESS_OPTIONS, -m4_foreach(_LT_Option, m4_split(m4_normalize($2)), - m4_ifdef(_LT_MANGLE_OPTION($1, _LT_Option), - m4_define($0_found)))dnl -m4_ifdef($0_found, m4_undefine($0_found), $3 -)dnl -) - - -# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST) -# ---------------------------------------- -# OPTION-LIST is a space-separated list of Libtool options associated -# with MACRO-NAME. If any OPTION has a matching handler declared with -# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about -# the unknown option and exit. -m4_defun(_LT_SET_OPTIONS, -# Set options -m4_foreach(_LT_Option, m4_split(m4_normalize($2)), - _LT_SET_OPTION($1, _LT_Option)) - -m4_if($1,LT_INIT, - dnl - dnl Simply set some default values (i.e off) if boolean options were not - dnl specified: - _LT_UNLESS_OPTIONS(LT_INIT, dlopen, enable_dlopen=no - ) - _LT_UNLESS_OPTIONS(LT_INIT, win32-dll, enable_win32_dll=no - ) - dnl - dnl If no reference was made to various pairs of opposing options, then - dnl we run the default mode handler for the pair. For example, if neither - dnl 'shared' nor 'disable-shared' was passed, we enable building of shared - dnl archives by default: - _LT_UNLESS_OPTIONS(LT_INIT, shared disable-shared, _LT_ENABLE_SHARED) - _LT_UNLESS_OPTIONS(LT_INIT, static disable-static, _LT_ENABLE_STATIC) - _LT_UNLESS_OPTIONS(LT_INIT, pic-only no-pic, _LT_WITH_PIC) - _LT_UNLESS_OPTIONS(LT_INIT, fast-install disable-fast-install, - _LT_ENABLE_FAST_INSTALL) - _LT_UNLESS_OPTIONS(LT_INIT, aix-soname=aix aix-soname=both aix-soname=svr4, - _LT_WITH_AIX_SONAME(aix)) - ) -)# _LT_SET_OPTIONS - - -## --------------------------------- ## -## Macros to handle LT_INIT options. ## -## --------------------------------- ## - -# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME) -# ----------------------------------------- -m4_define(_LT_MANGLE_DEFUN, -_LT_OPTION_DEFUN_m4_bpatsubst(m4_toupper($1__$2), ^A-Z0-9_, _)) - - -# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE) -# ----------------------------------------------- -m4_define(LT_OPTION_DEFINE, -m4_define(_LT_MANGLE_DEFUN($1, $2), $3)dnl -)# LT_OPTION_DEFINE - - -# dlopen -# ------ -LT_OPTION_DEFINE(LT_INIT, dlopen, enable_dlopen=yes -) - -AU_DEFUN(AC_LIBTOOL_DLOPEN, -_LT_SET_OPTION(LT_INIT, dlopen) -AC_DIAGNOSE(obsolete, -$0: Remove this warning and the call to _LT_SET_OPTION when you -put the 'dlopen' option into LT_INIT's first parameter.) -) - -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN(AC_LIBTOOL_DLOPEN, ) - - -# win32-dll -# --------- -# Declare package support for building win32 dll's. -LT_OPTION_DEFINE(LT_INIT, win32-dll, -enable_win32_dll=yes - -case $host in -*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*) - AC_CHECK_TOOL(AS, as, false) - AC_CHECK_TOOL(DLLTOOL, dlltool, false) - AC_CHECK_TOOL(OBJDUMP, objdump, false) - ;; -esac - -test -z "$AS" && AS=as -_LT_DECL(, AS, 1, Assembler program)dnl - -test -z "$DLLTOOL" && DLLTOOL=dlltool -_LT_DECL(, DLLTOOL, 1, DLL creation program)dnl - -test -z "$OBJDUMP" && OBJDUMP=objdump -_LT_DECL(, OBJDUMP, 1, Object dumper program)dnl -)# win32-dll - -AU_DEFUN(AC_LIBTOOL_WIN32_DLL, -AC_REQUIRE(AC_CANONICAL_HOST)dnl -_LT_SET_OPTION(LT_INIT, win32-dll) -AC_DIAGNOSE(obsolete, -$0: Remove this warning and the call to _LT_SET_OPTION when you -put the 'win32-dll' option into LT_INIT's first parameter.) -) - -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN(AC_LIBTOOL_WIN32_DLL, ) - - -# _LT_ENABLE_SHARED(DEFAULT) -# ---------------------------- -# implement the --enable-shared flag, and supports the 'shared' and -# 'disable-shared' LT_INIT options. -# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'. -m4_define(_LT_ENABLE_SHARED, -m4_define(_LT_ENABLE_SHARED_DEFAULT, m4_if($1, no, no, yes))dnl -AC_ARG_ENABLE(shared, - AS_HELP_STRING(--enable-shared@<:@=PKGS@:>@, - build shared libraries @<:@default=_LT_ENABLE_SHARED_DEFAULT@:>@), - p=${PACKAGE-default} - case $enableval in - yes) enable_shared=yes ;; - no) enable_shared=no ;; - *) - enable_shared=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, - for pkg in $enableval; do - IFS=$lt_save_ifs - if test "X$pkg" = "X$p"; then - enable_shared=yes - fi - done - IFS=$lt_save_ifs - ;; - esac, - enable_shared=_LT_ENABLE_SHARED_DEFAULT) - - _LT_DECL(build_libtool_libs, enable_shared, 0, - Whether or not to build shared libraries) -)# _LT_ENABLE_SHARED - -LT_OPTION_DEFINE(LT_INIT, shared, _LT_ENABLE_SHARED(yes)) -LT_OPTION_DEFINE(LT_INIT, disable-shared, _LT_ENABLE_SHARED(no)) - -# Old names: -AC_DEFUN(AC_ENABLE_SHARED, -_LT_SET_OPTION(LT_INIT, m4_if($1, no, disable-)shared) -)
View file
libde265-1.0.16.tar.gz/m4/ltsugar.m4
Deleted
@@ -1,124 +0,0 @@ -# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*- -# -# Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software -# Foundation, Inc. -# Written by Gary V. Vaughan, 2004 -# -# This file is free software; the Free Software Foundation gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. - -# serial 6 ltsugar.m4 - -# This is to help aclocal find these macros, as it can't see m4_define. -AC_DEFUN(LTSUGAR_VERSION, m4_if(0.1)) - - -# lt_join(SEP, ARG1, ARG2...) -# ----------------------------- -# Produce ARG1SEPARG2...SEPARGn, omitting arguments and their -# associated separator. -# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier -# versions in m4sugar had bugs. -m4_define(lt_join, -m4_if($#, 1, , - $#, 2, $2, - m4_if($2, , , $2_)$0($1, m4_shift(m4_shift($@))))) -m4_define(_lt_join, -m4_if($#$2, 2, , - m4_if($2, , , $1$2)$0($1, m4_shift(m4_shift($@))))) - - -# lt_car(LIST) -# lt_cdr(LIST) -# ------------ -# Manipulate m4 lists. -# These macros are necessary as long as will still need to support -# Autoconf-2.59, which quotes differently. -m4_define(lt_car, $1) -m4_define(lt_cdr, -m4_if($#, 0, m4_fatal($0: cannot be called without arguments), - $#, 1, , - m4_dquote(m4_shift($@)))) -m4_define(lt_unquote, $1) - - -# lt_append(MACRO-NAME, STRING, SEPARATOR) -# ------------------------------------------ -# Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'. -# Note that neither SEPARATOR nor STRING are expanded; they are appended -# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked). -# No SEPARATOR is output if MACRO-NAME was previously undefined (different -# than defined and empty). -# -# This macro is needed until we can rely on Autoconf 2.62, since earlier -# versions of m4sugar mistakenly expanded SEPARATOR but not STRING. -m4_define(lt_append, -m4_define($1, - m4_ifdef($1, m4_defn($1)$3)$2)) - - - -# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, SUFFIX2...) -# ---------------------------------------------------------- -# Produce a SEP delimited list of all paired combinations of elements of -# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list -# has the form PREFIXmINFIXSUFFIXn. -# Needed until we can rely on m4_combine added in Autoconf 2.62. -m4_define(lt_combine, -m4_if(m4_eval($# > 3), 1, - m4_pushdef(_Lt_sep, m4_define(_Lt_sep, m4_defn(lt_car)))dnl -m4_foreach(_Lt_prefix, $2, - m4_foreach(_Lt_suffix, - m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@))))), - _Lt_sep($1)m4_defn(_Lt_prefix)$3m4_defn(_Lt_suffix))))) - - -# lt_if_append_uniq(MACRO-NAME, VARNAME, SEPARATOR, UNIQ, NOT-UNIQ) -# ----------------------------------------------------------------------- -# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited -# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ. -m4_define(lt_if_append_uniq, -m4_ifdef($1, - m4_if(m4_index($3m4_defn($1)$3, $3$2$3), -1, - lt_append($1, $2, $3)$4, - $5), - lt_append($1, $2, $3)$4)) - - -# lt_dict_add(DICT, KEY, VALUE) -# ----------------------------- -m4_define(lt_dict_add, -m4_define($1($2), $3)) - - -# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE) -# -------------------------------------------- -m4_define(lt_dict_add_subkey, -m4_define($1($2:$3), $4)) - - -# lt_dict_fetch(DICT, KEY, SUBKEY) -# ---------------------------------- -m4_define(lt_dict_fetch, -m4_ifval($3, - m4_ifdef($1($2:$3), m4_defn($1($2:$3))), - m4_ifdef($1($2), m4_defn($1($2))))) - - -# lt_if_dict_fetch(DICT, KEY, SUBKEY, VALUE, IF-TRUE, IF-FALSE) -# ----------------------------------------------------------------- -m4_define(lt_if_dict_fetch, -m4_if(lt_dict_fetch($1, $2, $3), $4, - $5, - $6)) - - -# lt_dict_filter(DICT, SUBKEY, VALUE, SEPARATOR, KEY, ...) -# -------------------------------------------------------------- -m4_define(lt_dict_filter, -m4_if($5, , , - lt_join(m4_quote(m4_default($4, , )), - lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car(m4_shiftn(4, $@)), - lt_if_dict_fetch($1, _Lt_key, $2, $3, _Lt_key )))))))dnl -)
View file
libde265-1.0.16.tar.gz/m4/ltversion.m4
Deleted
@@ -1,23 +0,0 @@ -# ltversion.m4 -- version numbers -*- Autoconf -*- -# -# Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc. -# Written by Scott James Remnant, 2004 -# -# This file is free software; the Free Software Foundation gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. - -# @configure_input@ - -# serial 4179 ltversion.m4 -# This file is part of GNU Libtool - -m4_define(LT_PACKAGE_VERSION, 2.4.6) -m4_define(LT_PACKAGE_REVISION, 2.4.6) - -AC_DEFUN(LTVERSION_VERSION, -macro_version='2.4.6' -macro_revision='2.4.6' -_LT_DECL(, macro_version, 0, Which release of libtool.m4 was used?) -_LT_DECL(, macro_revision, 0) -)
View file
libde265-1.0.16.tar.gz/m4/lt~obsolete.m4
Deleted
@@ -1,99 +0,0 @@ -# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*- -# -# Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software -# Foundation, Inc. -# Written by Scott James Remnant, 2004. -# -# This file is free software; the Free Software Foundation gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. - -# serial 5 lt~obsolete.m4 - -# These exist entirely to fool aclocal when bootstrapping libtool. -# -# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN), -# which have later been changed to m4_define as they aren't part of the -# exported API, or moved to Autoconf or Automake where they belong. -# -# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN -# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us -# using a macro with the same name in our local m4/libtool.m4 it'll -# pull the old libtool.m4 in (it doesn't see our shiny new m4_define -# and doesn't know about Autoconf macros at all.) -# -# So we provide this file, which has a silly filename so it's always -# included after everything else. This provides aclocal with the -# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything -# because those macros already exist, or will be overwritten later. -# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. -# -# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here. -# Yes, that means every name once taken will need to remain here until -# we give up compatibility with versions before 1.7, at which point -# we need to keep only those names which we still refer to. - -# This is to help aclocal find these macros, as it can't see m4_define. -AC_DEFUN(LTOBSOLETE_VERSION, m4_if(1)) - -m4_ifndef(AC_LIBTOOL_LINKER_OPTION, AC_DEFUN(AC_LIBTOOL_LINKER_OPTION)) -m4_ifndef(AC_PROG_EGREP, AC_DEFUN(AC_PROG_EGREP)) -m4_ifndef(_LT_AC_PROG_ECHO_BACKSLASH, AC_DEFUN(_LT_AC_PROG_ECHO_BACKSLASH)) -m4_ifndef(_LT_AC_SHELL_INIT, AC_DEFUN(_LT_AC_SHELL_INIT)) -m4_ifndef(_LT_AC_SYS_LIBPATH_AIX, AC_DEFUN(_LT_AC_SYS_LIBPATH_AIX)) -m4_ifndef(_LT_PROG_LTMAIN, AC_DEFUN(_LT_PROG_LTMAIN)) -m4_ifndef(_LT_AC_TAGVAR, AC_DEFUN(_LT_AC_TAGVAR)) -m4_ifndef(AC_LTDL_ENABLE_INSTALL, AC_DEFUN(AC_LTDL_ENABLE_INSTALL)) -m4_ifndef(AC_LTDL_PREOPEN, AC_DEFUN(AC_LTDL_PREOPEN)) -m4_ifndef(_LT_AC_SYS_COMPILER, AC_DEFUN(_LT_AC_SYS_COMPILER)) -m4_ifndef(_LT_AC_LOCK, AC_DEFUN(_LT_AC_LOCK)) -m4_ifndef(AC_LIBTOOL_SYS_OLD_ARCHIVE, AC_DEFUN(AC_LIBTOOL_SYS_OLD_ARCHIVE)) -m4_ifndef(_LT_AC_TRY_DLOPEN_SELF, AC_DEFUN(_LT_AC_TRY_DLOPEN_SELF)) -m4_ifndef(AC_LIBTOOL_PROG_CC_C_O, AC_DEFUN(AC_LIBTOOL_PROG_CC_C_O)) -m4_ifndef(AC_LIBTOOL_SYS_HARD_LINK_LOCKS, AC_DEFUN(AC_LIBTOOL_SYS_HARD_LINK_LOCKS)) -m4_ifndef(AC_LIBTOOL_OBJDIR, AC_DEFUN(AC_LIBTOOL_OBJDIR)) -m4_ifndef(AC_LTDL_OBJDIR, AC_DEFUN(AC_LTDL_OBJDIR)) -m4_ifndef(AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH, AC_DEFUN(AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH)) -m4_ifndef(AC_LIBTOOL_SYS_LIB_STRIP, AC_DEFUN(AC_LIBTOOL_SYS_LIB_STRIP)) -m4_ifndef(AC_PATH_MAGIC, AC_DEFUN(AC_PATH_MAGIC)) -m4_ifndef(AC_PROG_LD_GNU, AC_DEFUN(AC_PROG_LD_GNU)) -m4_ifndef(AC_PROG_LD_RELOAD_FLAG, AC_DEFUN(AC_PROG_LD_RELOAD_FLAG)) -m4_ifndef(AC_DEPLIBS_CHECK_METHOD, AC_DEFUN(AC_DEPLIBS_CHECK_METHOD)) -m4_ifndef(AC_LIBTOOL_PROG_COMPILER_NO_RTTI, AC_DEFUN(AC_LIBTOOL_PROG_COMPILER_NO_RTTI)) -m4_ifndef(AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE, AC_DEFUN(AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE)) -m4_ifndef(AC_LIBTOOL_PROG_COMPILER_PIC, AC_DEFUN(AC_LIBTOOL_PROG_COMPILER_PIC)) -m4_ifndef(AC_LIBTOOL_PROG_LD_SHLIBS, AC_DEFUN(AC_LIBTOOL_PROG_LD_SHLIBS)) -m4_ifndef(AC_LIBTOOL_POSTDEP_PREDEP, AC_DEFUN(AC_LIBTOOL_POSTDEP_PREDEP)) -m4_ifndef(LT_AC_PROG_EGREP, AC_DEFUN(LT_AC_PROG_EGREP)) -m4_ifndef(LT_AC_PROG_SED, AC_DEFUN(LT_AC_PROG_SED)) -m4_ifndef(_LT_CC_BASENAME, AC_DEFUN(_LT_CC_BASENAME)) -m4_ifndef(_LT_COMPILER_BOILERPLATE, AC_DEFUN(_LT_COMPILER_BOILERPLATE)) -m4_ifndef(_LT_LINKER_BOILERPLATE, AC_DEFUN(_LT_LINKER_BOILERPLATE)) -m4_ifndef(_AC_PROG_LIBTOOL, AC_DEFUN(_AC_PROG_LIBTOOL)) -m4_ifndef(AC_LIBTOOL_SETUP, AC_DEFUN(AC_LIBTOOL_SETUP)) -m4_ifndef(_LT_AC_CHECK_DLFCN, AC_DEFUN(_LT_AC_CHECK_DLFCN)) -m4_ifndef(AC_LIBTOOL_SYS_DYNAMIC_LINKER, AC_DEFUN(AC_LIBTOOL_SYS_DYNAMIC_LINKER)) -m4_ifndef(_LT_AC_TAGCONFIG, AC_DEFUN(_LT_AC_TAGCONFIG)) -m4_ifndef(AC_DISABLE_FAST_INSTALL, AC_DEFUN(AC_DISABLE_FAST_INSTALL)) -m4_ifndef(_LT_AC_LANG_CXX, AC_DEFUN(_LT_AC_LANG_CXX)) -m4_ifndef(_LT_AC_LANG_F77, AC_DEFUN(_LT_AC_LANG_F77)) -m4_ifndef(_LT_AC_LANG_GCJ, AC_DEFUN(_LT_AC_LANG_GCJ)) -m4_ifndef(AC_LIBTOOL_LANG_C_CONFIG, AC_DEFUN(AC_LIBTOOL_LANG_C_CONFIG)) -m4_ifndef(_LT_AC_LANG_C_CONFIG, AC_DEFUN(_LT_AC_LANG_C_CONFIG)) -m4_ifndef(AC_LIBTOOL_LANG_CXX_CONFIG, AC_DEFUN(AC_LIBTOOL_LANG_CXX_CONFIG)) -m4_ifndef(_LT_AC_LANG_CXX_CONFIG, AC_DEFUN(_LT_AC_LANG_CXX_CONFIG)) -m4_ifndef(AC_LIBTOOL_LANG_F77_CONFIG, AC_DEFUN(AC_LIBTOOL_LANG_F77_CONFIG)) -m4_ifndef(_LT_AC_LANG_F77_CONFIG, AC_DEFUN(_LT_AC_LANG_F77_CONFIG)) -m4_ifndef(AC_LIBTOOL_LANG_GCJ_CONFIG, AC_DEFUN(AC_LIBTOOL_LANG_GCJ_CONFIG)) -m4_ifndef(_LT_AC_LANG_GCJ_CONFIG, AC_DEFUN(_LT_AC_LANG_GCJ_CONFIG)) -m4_ifndef(AC_LIBTOOL_LANG_RC_CONFIG, AC_DEFUN(AC_LIBTOOL_LANG_RC_CONFIG)) -m4_ifndef(_LT_AC_LANG_RC_CONFIG, AC_DEFUN(_LT_AC_LANG_RC_CONFIG)) -m4_ifndef(AC_LIBTOOL_CONFIG, AC_DEFUN(AC_LIBTOOL_CONFIG)) -m4_ifndef(_LT_AC_FILE_LTDLL_C, AC_DEFUN(_LT_AC_FILE_LTDLL_C)) -m4_ifndef(_LT_REQUIRED_DARWIN_CHECKS, AC_DEFUN(_LT_REQUIRED_DARWIN_CHECKS)) -m4_ifndef(_LT_AC_PROG_CXXCPP, AC_DEFUN(_LT_AC_PROG_CXXCPP)) -m4_ifndef(_LT_PREPARE_SED_QUOTE_VARS, AC_DEFUN(_LT_PREPARE_SED_QUOTE_VARS)) -m4_ifndef(_LT_PROG_ECHO_BACKSLASH, AC_DEFUN(_LT_PROG_ECHO_BACKSLASH)) -m4_ifndef(_LT_PROG_F77, AC_DEFUN(_LT_PROG_F77)) -m4_ifndef(_LT_PROG_FC, AC_DEFUN(_LT_PROG_FC)) -m4_ifndef(_LT_PROG_CXX, AC_DEFUN(_LT_PROG_CXX))
View file
libde265-1.0.16.tar.gz/m4/m4_ax_check_compile_flag.m4
Deleted
@@ -1,72 +0,0 @@ -# =========================================================================== -# http://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html -# =========================================================================== -# -# SYNOPSIS -# -# AX_CHECK_COMPILE_FLAG(FLAG, ACTION-SUCCESS, ACTION-FAILURE, EXTRA-FLAGS) -# -# DESCRIPTION -# -# Check whether the given FLAG works with the current language's compiler -# or gives an error. (Warnings, however, are ignored) -# -# ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on -# success/failure. -# -# If EXTRA-FLAGS is defined, it is added to the current language's default -# flags (e.g. CFLAGS) when the check is done. The check is thus made with -# the flags: "CFLAGS EXTRA-FLAGS FLAG". This can for example be used to -# force the compiler to issue an error when a bad flag is given. -# -# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this -# macro in sync with AX_CHECK_{PREPROC,LINK}_FLAG. -# -# LICENSE -# -# Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de> -# Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com> -# -# This program is free software: you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the -# Free Software Foundation, either version 3 of the License, or (at your -# option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General -# Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program. If not, see <http://www.gnu.org/licenses/>. -# -# As a special exception, the respective Autoconf Macro's copyright owner -# gives unlimited permission to copy, distribute and modify the configure -# scripts that are the output of Autoconf when processing the Macro. You -# need not follow the terms of the GNU General Public License when using -# or distributing such scripts, even though portions of the text of the -# Macro appear in them. The GNU General Public License (GPL) does govern -# all other use of the material that constitutes the Autoconf Macro. -# -# This special exception to the GPL applies to versions of the Autoconf -# Macro released by the Autoconf Archive. When you make and distribute a -# modified version of the Autoconf Macro, you may extend this special -# exception to the GPL to apply to your modified version as well. - -#serial 2 - -AC_DEFUN(AX_CHECK_COMPILE_FLAG, -AC_PREREQ(2.59)dnl for _AC_LANG_PREFIX -AS_VAR_PUSHDEF(CACHEVAR,ax_cv_check__AC_LANG_ABBREVflags_$4_$1)dnl -AC_CACHE_CHECK(whether _AC_LANG compiler accepts $1, CACHEVAR, - ax_check_save_flags=$_AC_LANG_PREFIXFLAGS - _AC_LANG_PREFIXFLAGS="$_AC_LANG_PREFIXFLAGS $4 $1" - AC_COMPILE_IFELSE(AC_LANG_PROGRAM(), - AS_VAR_SET(CACHEVAR,yes), - AS_VAR_SET(CACHEVAR,no)) - _AC_LANG_PREFIXFLAGS=$ax_check_save_flags) -AS_IF(test x"AS_VAR_GET(CACHEVAR)" = xyes, - m4_default($2, :), - m4_default($3, :)) -AS_VAR_POPDEF(CACHEVAR)dnl -)dnl AX_CHECK_COMPILE_FLAGS
View file
libde265-1.0.16.tar.gz/m4/visibility.m4
Deleted
@@ -1,52 +0,0 @@ -# visibility.m4 serial 1 (gettext-0.15) -dnl Copyright (C) 2005 Free Software Foundation, Inc. -dnl This file is free software; the Free Software Foundation -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. - -dnl From Bruno Haible. - -dnl Tests whether the compiler supports the command-line option -dnl -fvisibility=hidden and the function and variable attributes -dnl __attribute__((__visibility__("hidden"))) and -dnl __attribute__((__visibility__("default"))). -dnl Does *not* test for __visibility__("protected") - which has tricky -dnl semantics (see the 'vismain' test in glibc) and does not exist e.g. on -dnl MacOS X. -dnl Does *not* test for __visibility__("internal") - which has processor -dnl dependent semantics. -dnl Does *not* test for #pragma GCC visibility push(hidden) - which is -dnl "really only recommended for legacy code". -dnl Set the variable CFLAG_VISIBILITY. -dnl Defines and sets the variable HAVE_VISIBILITY. - -AC_DEFUN(gl_VISIBILITY, - - AC_REQUIRE(AC_PROG_CC) - CFLAG_VISIBILITY= - HAVE_VISIBILITY=0 - if test -n "$GCC"; then - AC_MSG_CHECKING(for simple visibility declarations) - AC_CACHE_VAL(gl_cv_cc_visibility, - gl_save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -fvisibility=hidden" - AC_TRY_COMPILE( - extern __attribute__((__visibility__("hidden"))) int hiddenvar; - extern __attribute__((__visibility__("default"))) int exportedvar; - extern __attribute__((__visibility__("hidden"))) int hiddenfunc (void); - extern __attribute__((__visibility__("default"))) int exportedfunc (void);, - , - gl_cv_cc_visibility=yes, - gl_cv_cc_visibility=no) - CFLAGS="$gl_save_CFLAGS") - AC_MSG_RESULT($gl_cv_cc_visibility) - if test $gl_cv_cc_visibility = yes; then - CFLAG_VISIBILITY="-fvisibility=hidden" - HAVE_VISIBILITY=1 - fi - fi - AC_SUBST(CFLAG_VISIBILITY) - AC_SUBST(HAVE_VISIBILITY) - AC_DEFINE_UNQUOTED(HAVE_VISIBILITY, $HAVE_VISIBILITY, - Define to 1 or 0, depending whether the compiler supports simple visibility declarations.) -)
View file
libde265-1.0.16.tar.gz/missing
Deleted
@@ -1,215 +0,0 @@ -#! /bin/sh -# Common wrapper for a few potentially missing GNU programs. - -scriptversion=2018-03-07.03; # UTC - -# Copyright (C) 1996-2018 Free Software Foundation, Inc. -# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <https://www.gnu.org/licenses/>. - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -if test $# -eq 0; then - echo 1>&2 "Try '$0 --help' for more information" - exit 1 -fi - -case $1 in - - --is-lightweight) - # Used by our autoconf macros to check whether the available missing - # script is modern enough. - exit 0 - ;; - - --run) - # Back-compat with the calling convention used by older automake. - shift - ;; - - -h|--h|--he|--hel|--help) - echo "\ -$0 OPTION... PROGRAM ARGUMENT... - -Run 'PROGRAM ARGUMENT...', returning a proper advice when this fails due -to PROGRAM being missing or too old. - -Options: - -h, --help display this help and exit - -v, --version output version information and exit - -Supported PROGRAM values: - aclocal autoconf autoheader autom4te automake makeinfo - bison yacc flex lex help2man - -Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and -'g' are ignored when checking the name. - -Send bug reports to <bug-automake@gnu.org>." - exit $? - ;; - - -v|--v|--ve|--ver|--vers|--versi|--versio|--version) - echo "missing $scriptversion (GNU Automake)" - exit $? - ;; - - -*) - echo 1>&2 "$0: unknown '$1' option" - echo 1>&2 "Try '$0 --help' for more information" - exit 1 - ;; - -esac - -# Run the given program, remember its exit status. -"$@"; st=$? - -# If it succeeded, we are done. -test $st -eq 0 && exit 0 - -# Also exit now if we it failed (or wasn't found), and '--version' was -# passed; such an option is passed most likely to detect whether the -# program is present and works. -case $2 in --version|--help) exit $st;; esac - -# Exit code 63 means version mismatch. This often happens when the user -# tries to use an ancient version of a tool on a file that requires a -# minimum version. -if test $st -eq 63; then - msg="probably too old" -elif test $st -eq 127; then - # Program was missing. - msg="missing on your system" -else - # Program was found and executed, but failed. Give up. - exit $st -fi - -perl_URL=https://www.perl.org/ -flex_URL=https://github.com/westes/flex -gnu_software_URL=https://www.gnu.org/software - -program_details () -{ - case $1 in - aclocal|automake) - echo "The '$1' program is part of the GNU Automake package:" - echo "<$gnu_software_URL/automake>" - echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:" - echo "<$gnu_software_URL/autoconf>" - echo "<$gnu_software_URL/m4/>" - echo "<$perl_URL>" - ;; - autoconf|autom4te|autoheader) - echo "The '$1' program is part of the GNU Autoconf package:" - echo "<$gnu_software_URL/autoconf/>" - echo "It also requires GNU m4 and Perl in order to run:" - echo "<$gnu_software_URL/m4/>" - echo "<$perl_URL>" - ;; - esac -} - -give_advice () -{ - # Normalize program name to check for. - normalized_program=`echo "$1" | sed ' - s/^gnu-//; t - s/^gnu//; t - s/^g//; t'` - - printf '%s\n' "'$1' is $msg." - - configure_deps="'configure.ac' or m4 files included by 'configure.ac'" - case $normalized_program in - autoconf*) - echo "You should only need it if you modified 'configure.ac'," - echo "or m4 files included by it." - program_details 'autoconf' - ;; - autoheader*) - echo "You should only need it if you modified 'acconfig.h' or" - echo "$configure_deps." - program_details 'autoheader' - ;; - automake*) - echo "You should only need it if you modified 'Makefile.am' or" - echo "$configure_deps." - program_details 'automake' - ;; - aclocal*) - echo "You should only need it if you modified 'acinclude.m4' or" - echo "$configure_deps." - program_details 'aclocal' - ;; - autom4te*) - echo "You might have modified some maintainer files that require" - echo "the 'autom4te' program to be rebuilt." - program_details 'autom4te' - ;; - bison*|yacc*) - echo "You should only need it if you modified a '.y' file." - echo "You may want to install the GNU Bison package:" - echo "<$gnu_software_URL/bison/>" - ;; - lex*|flex*) - echo "You should only need it if you modified a '.l' file." - echo "You may want to install the Fast Lexical Analyzer package:" - echo "<$flex_URL>" - ;; - help2man*) - echo "You should only need it if you modified a dependency" \ - "of a man page." - echo "You may want to install the GNU Help2man package:" - echo "<$gnu_software_URL/help2man/>" - ;; - makeinfo*) - echo "You should only need it if you modified a '.texi' file, or" - echo "any other file indirectly affecting the aspect of the manual." - echo "You might want to install the Texinfo package:" - echo "<$gnu_software_URL/texinfo/>" - echo "The spurious makeinfo call might also be the consequence of" - echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might" - echo "want to install GNU make:" - echo "<$gnu_software_URL/make/>" - ;; - *) - echo "You might have modified some files without having the proper" - echo "tools for further handling them. Check the 'README' file, it" - echo "often tells you about the needed prerequisites for installing" - echo "this package. You may also peek at any GNU archive site, in" - echo "case some other package contains this missing '$1' program." - ;; - esac
View file
libde265-1.0.16.tar.gz/sherlock265/Makefile.am
Deleted
@@ -1,49 +0,0 @@ - -bin_PROGRAMS = sherlock265 - -AM_CPPFLAGS = -I../libde265 - -sherlock265_DEPENDENCIES = ../libde265/libde265.la -sherlock265_CXXFLAGS = $(QT_CFLAGS) -std=c++0x -fPIC -sherlock265_LDFLAGS = $(QT_LIBS) -sherlock265_LDADD = ../libde265/libde265.la -lstdc++ -lpthread -sherlock265_SOURCES = \ - sherlock265.cc \ - VideoPlayer.cc \ - VideoDecoder.cc \ - VideoWidget.cc \ - VideoPlayer.hh \ - VideoDecoder.hh \ - VideoWidget.hh - -nodist_sherlock265_SOURCES = \ - moc_VideoPlayer.cpp \ - moc_VideoDecoder.cpp \ - moc_VideoWidget.cpp - -CLEANFILES = \ - moc_VideoPlayer.cpp \ - moc_VideoDecoder.cpp \ - moc_VideoWidget.cpp - -if HAVE_VIDEOGFX - sherlock265_CXXFLAGS += $(VIDEOGFX_CFLAGS) - sherlock265_LDFLAGS += $(VIDEOGFX_LIBS) -endif - -if HAVE_SWSCALE - sherlock265_CXXFLAGS += $(SWSCALE_CFLAGS) - sherlock265_LDFLAGS += $(SWSCALE_LIBS) -endif - -moc_VideoWidget.cpp: VideoWidget.hh - $(QTMOC) $(DEFINES) $(INCPATH) VideoWidget.hh -o moc_VideoWidget.cpp - -moc_VideoPlayer.cpp: VideoPlayer.hh - $(QTMOC) $(DEFINES) $(INCPATH) VideoPlayer.hh -o moc_VideoPlayer.cpp - -moc_VideoDecoder.cpp: VideoDecoder.hh - $(QTMOC) $(DEFINES) $(INCPATH) VideoDecoder.hh -o moc_VideoDecoder.cpp - -EXTRA_DIST = \ - README
View file
libde265-1.0.16.tar.gz/sherlock265/Makefile.in
Deleted
@@ -1,882 +0,0 @@ -# Makefile.in generated by automake 1.16.5 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2021 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\\ \ *) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs$$bs $$bs *//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -dEDm) skip_next=yes;; \ - -JT) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -bin_PROGRAMS = sherlock265$(EXEEXT) -@HAVE_VIDEOGFX_TRUE@am__append_1 = $(VIDEOGFX_CFLAGS) -@HAVE_VIDEOGFX_TRUE@am__append_2 = $(VIDEOGFX_LIBS) -@HAVE_SWSCALE_TRUE@am__append_3 = $(SWSCALE_CFLAGS) -@HAVE_SWSCALE_TRUE@am__append_4 = $(SWSCALE_LIBS) -subdir = sherlock265 -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compare_version.m4 \ - $(top_srcdir)/m4/ax_cxx_compile_stdcxx_11.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/m4_ax_check_compile_flag.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -am__installdirs = "$(DESTDIR)$(bindir)" -PROGRAMS = $(bin_PROGRAMS) -am_sherlock265_OBJECTS = sherlock265-sherlock265.$(OBJEXT) \ - sherlock265-VideoPlayer.$(OBJEXT) \ - sherlock265-VideoDecoder.$(OBJEXT) \ - sherlock265-VideoWidget.$(OBJEXT) -nodist_sherlock265_OBJECTS = sherlock265-moc_VideoPlayer.$(OBJEXT) \ - sherlock265-moc_VideoDecoder.$(OBJEXT) \ - sherlock265-moc_VideoWidget.$(OBJEXT) -sherlock265_OBJECTS = $(am_sherlock265_OBJECTS) \ - $(nodist_sherlock265_OBJECTS) -AM_V_lt = $(am__v_lt_@AM_V@) -am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) -am__v_lt_0 = --silent -am__v_lt_1 = -sherlock265_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(sherlock265_CXXFLAGS) \ - $(CXXFLAGS) $(sherlock265_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) -depcomp = $(SHELL) $(top_srcdir)/depcomp -am__maybe_remake_depfiles = depfiles -am__depfiles_remade = ./$(DEPDIR)/sherlock265-VideoDecoder.Po \ - ./$(DEPDIR)/sherlock265-VideoPlayer.Po \ - ./$(DEPDIR)/sherlock265-VideoWidget.Po \ - ./$(DEPDIR)/sherlock265-moc_VideoDecoder.Po \ - ./$(DEPDIR)/sherlock265-moc_VideoPlayer.Po \ - ./$(DEPDIR)/sherlock265-moc_VideoWidget.Po \ - ./$(DEPDIR)/sherlock265-sherlock265.Po -am__mv = mv -f -CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CXXFLAGS) $(CXXFLAGS) -AM_V_CXX = $(am__v_CXX_@AM_V@) -am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@) -am__v_CXX_0 = @echo " CXX " $@; -am__v_CXX_1 = -CXXLD = $(CXX) -CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ - $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CXXLD = $(am__v_CXXLD_@AM_V@) -am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@) -am__v_CXXLD_0 = @echo " CXXLD " $@; -am__v_CXXLD_1 = -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) -AM_V_CC = $(am__v_CC_@AM_V@) -am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) -am__v_CC_0 = @echo " CC " $@; -am__v_CC_1 = -CCLD = $(CC) -LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CCLD = $(am__v_CCLD_@AM_V@) -am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) -am__v_CCLD_0 = @echo " CCLD " $@; -am__v_CCLD_1 = -SOURCES = $(sherlock265_SOURCES) $(nodist_sherlock265_SOURCES) -DIST_SOURCES = $(sherlock265_SOURCES) -am__can_run_installinfo = \ - case $$AM_UPDATE_INFO_DIR in \ - n|no|NO) false;; \ - *) (install-info --version) >/dev/null 2>&1;; \ - esac -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) -# Read a list of newline-separated strings from the standard input, -# and print each of them once, without duplicates. Input order is
View file
libde265-1.0.16.tar.gz/sherlock265/VideoDecoder.hh
Deleted
@@ -1,129 +0,0 @@ -/* - libde265 example application "sherlock265". - - MIT License - - Copyright (c) 2013-2014 struktur AG, Dirk Farin <farin@struktur.de> - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in all - copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - SOFTWARE. -*/ - -#ifndef VIDEODECODER_HH -#define VIDEODECODER_HH - -#ifdef HAVE_CONFIG_H -#include <config.h> -#endif - -#include <QtGui> -#ifdef HAVE_SWSCALE -#ifdef __cplusplus -extern "C" { -#endif -#include <libswscale/swscale.h> -#ifdef __cplusplus -} -#endif -#endif - -#include "VideoWidget.hh" -#include "de265.h" - - -class VideoDecoder : public QThread -{ - Q_OBJECT - -public: - VideoDecoder(); - ~VideoDecoder(); - - void init(const char* filename); - -protected: - void run(); // thread entry point - -public slots: - void startDecoder(); - void stopDecoder(); - void singleStepDecoder(); - - void showCBPartitioning(bool flag); - void showTBPartitioning(bool flag); - void showPBPartitioning(bool flag); - void showIntraPredMode(bool flag); - void showPBPredMode(bool flag); - void showQuantPY(bool flag); - void showMotionVec(bool flag); - void showTiles(bool flag); - void showSlices(bool flag); - void showDecodedImage(bool flag); - -signals: - void displayImage(QImage*); - -private: - // de265 decoder - - FILE* mFH; - //input_context_FILE inputctx; - //rbsp_buffer buf; - de265_decoder_context* ctx; - const de265_image* img; - - QMutex mutex; - - QImage mImgBuffers2; - int mNextBuffer; - int mFrameCount; - - bool mPlayingVideo; - bool mVideoEnded; - bool mSingleStep; - - - bool mShowDecodedImage; - bool mShowQuantPY; - bool mCBShowPartitioning; - bool mTBShowPartitioning; - bool mPBShowPartitioning; - bool mShowIntraPredMode; - bool mShowPBPredMode; - bool mShowMotionVec; - bool mShowTiles; - bool mShowSlices; - - void decoder_loop(); - - void init_decoder(const char* filename); - void free_decoder(); - - void show_frame(const de265_image* img); -#ifdef HAVE_VIDEOGFX - void convert_frame_libvideogfx(const de265_image* img, QImage & qimg); -#endif -#ifdef HAVE_SWSCALE - SwsContext* sws; - int width; - int height; - void convert_frame_swscale(const de265_image* img, QImage & qimg); -#endif -}; - -#endif
View file
libde265-1.0.16.tar.gz/sherlock265/VideoPlayer.hh
Deleted
@@ -1,51 +0,0 @@ -/* - libde265 example application "sherlock265". - - MIT License - - Copyright (c) 2013-2014 struktur AG, Dirk Farin <farin@struktur.de> - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in all - copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - SOFTWARE. -*/ - -#ifndef VIDEOPLAYER_HH -#define VIDEOPLAYER_HH - -#include <QtGui> - -#include "VideoWidget.hh" -#include "VideoDecoder.hh" - - -class VideoPlayer : public QWidget -{ - Q_OBJECT - -public: - VideoPlayer(const char* filename); - -private: - VideoWidget* videoWidget; - QPushButton *startButton; - QPushButton *stopButton; - - VideoDecoder* mDecoder; -}; - -#endif
View file
libde265-1.0.16.tar.gz/tools/Makefile.am
Deleted
@@ -1,45 +0,0 @@ - -bin_PROGRAMS = gen-enc-table yuv-distortion rd-curves block-rate-estim tests bjoentegaard - -AM_CPPFLAGS = -I$(top_srcdir)/libde265 -I$(top_srcdir) - -gen_enc_table_DEPENDENCIES = ../libde265/libde265.la -gen_enc_table_CXXFLAGS = -gen_enc_table_LDFLAGS = -gen_enc_table_LDADD = ../libde265/libde265.la -lstdc++ -gen_enc_table_SOURCES = gen-entropy-table.cc - -yuv_distortion_DEPENDENCIES = ../libde265/libde265.la -yuv_distortion_CXXFLAGS = -yuv_distortion_LDFLAGS = -yuv_distortion_LDADD = ../libde265/libde265.la -lstdc++ -yuv_distortion_SOURCES = yuv-distortion.cc - -if HAVE_VIDEOGFX - yuv_distortion_CXXFLAGS += $(VIDEOGFX_CFLAGS) - yuv_distortion_LDFLAGS += $(VIDEOGFX_LIBS) -endif - -rd_curves_DEPENDENCIES = ../libde265/libde265.la -rd_curves_CXXFLAGS = -rd_curves_LDFLAGS = -rd_curves_LDADD = ../libde265/libde265.la -lstdc++ -rd_curves_SOURCES = rd-curves.cc - -block_rate_estim_DEPENDENCIES = ../libde265/libde265.la -block_rate_estim_CXXFLAGS = -block_rate_estim_LDFLAGS = -block_rate_estim_LDADD = ../libde265/libde265.la -lstdc++ -block_rate_estim_SOURCES = block-rate-estim.cc - -tests_DEPENDENCIES = ../libde265/libde265.la -tests_CXXFLAGS = -tests_LDFLAGS = -tests_LDADD = ../libde265/libde265.la -lstdc++ -tests_SOURCES = tests.cc - -bjoentegaard_DEPENDENCIES = ../libde265/libde265.la -bjoentegaard_CXXFLAGS = -bjoentegaard_LDFLAGS = -bjoentegaard_LDADD = ../libde265/libde265.la -lstdc++ -bjoentegaard_SOURCES = bjoentegaard.cc
View file
libde265-1.0.16.tar.gz/tools/Makefile.in
Deleted
@@ -1,862 +0,0 @@ -# Makefile.in generated by automake 1.16.5 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2021 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\\ \ *) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs$$bs $$bs *//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -dEDm) skip_next=yes;; \ - -JT) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -bin_PROGRAMS = gen-enc-table$(EXEEXT) yuv-distortion$(EXEEXT) \ - rd-curves$(EXEEXT) block-rate-estim$(EXEEXT) tests$(EXEEXT) \ - bjoentegaard$(EXEEXT) -@HAVE_VIDEOGFX_TRUE@am__append_1 = $(VIDEOGFX_CFLAGS) -@HAVE_VIDEOGFX_TRUE@am__append_2 = $(VIDEOGFX_LIBS) -subdir = tools -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compare_version.m4 \ - $(top_srcdir)/m4/ax_cxx_compile_stdcxx_11.m4 \ - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/m4_ax_check_compile_flag.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -am__installdirs = "$(DESTDIR)$(bindir)" -PROGRAMS = $(bin_PROGRAMS) -am_bjoentegaard_OBJECTS = bjoentegaard-bjoentegaard.$(OBJEXT) -bjoentegaard_OBJECTS = $(am_bjoentegaard_OBJECTS) -AM_V_lt = $(am__v_lt_@AM_V@) -am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) -am__v_lt_0 = --silent -am__v_lt_1 = -bjoentegaard_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(bjoentegaard_CXXFLAGS) \ - $(CXXFLAGS) $(bjoentegaard_LDFLAGS) $(LDFLAGS) -o $@ -am_block_rate_estim_OBJECTS = \ - block_rate_estim-block-rate-estim.$(OBJEXT) -block_rate_estim_OBJECTS = $(am_block_rate_estim_OBJECTS) -block_rate_estim_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \ - $(block_rate_estim_CXXFLAGS) $(CXXFLAGS) \ - $(block_rate_estim_LDFLAGS) $(LDFLAGS) -o $@ -am_gen_enc_table_OBJECTS = gen_enc_table-gen-entropy-table.$(OBJEXT) -gen_enc_table_OBJECTS = $(am_gen_enc_table_OBJECTS) -gen_enc_table_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \ - $(gen_enc_table_CXXFLAGS) $(CXXFLAGS) $(gen_enc_table_LDFLAGS) \ - $(LDFLAGS) -o $@ -am_rd_curves_OBJECTS = rd_curves-rd-curves.$(OBJEXT) -rd_curves_OBJECTS = $(am_rd_curves_OBJECTS) -rd_curves_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(rd_curves_CXXFLAGS) \ - $(CXXFLAGS) $(rd_curves_LDFLAGS) $(LDFLAGS) -o $@ -am_tests_OBJECTS = tests-tests.$(OBJEXT) -tests_OBJECTS = $(am_tests_OBJECTS) -tests_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(tests_CXXFLAGS) \ - $(CXXFLAGS) $(tests_LDFLAGS) $(LDFLAGS) -o $@ -am_yuv_distortion_OBJECTS = yuv_distortion-yuv-distortion.$(OBJEXT) -yuv_distortion_OBJECTS = $(am_yuv_distortion_OBJECTS) -yuv_distortion_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \ - $(yuv_distortion_CXXFLAGS) $(CXXFLAGS) \ - $(yuv_distortion_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) -depcomp = $(SHELL) $(top_srcdir)/depcomp -am__maybe_remake_depfiles = depfiles -am__depfiles_remade = ./$(DEPDIR)/bjoentegaard-bjoentegaard.Po \ - ./$(DEPDIR)/block_rate_estim-block-rate-estim.Po \ - ./$(DEPDIR)/gen_enc_table-gen-entropy-table.Po \ - ./$(DEPDIR)/rd_curves-rd-curves.Po ./$(DEPDIR)/tests-tests.Po \ - ./$(DEPDIR)/yuv_distortion-yuv-distortion.Po -am__mv = mv -f -CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CXXFLAGS) $(CXXFLAGS) -AM_V_CXX = $(am__v_CXX_@AM_V@) -am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@) -am__v_CXX_0 = @echo " CXX " $@; -am__v_CXX_1 = -CXXLD = $(CXX) -CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ - $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CXXLD = $(am__v_CXXLD_@AM_V@) -am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@) -am__v_CXXLD_0 = @echo " CXXLD " $@; -am__v_CXXLD_1 = -SOURCES = $(bjoentegaard_SOURCES) $(block_rate_estim_SOURCES) \ - $(gen_enc_table_SOURCES) $(rd_curves_SOURCES) $(tests_SOURCES) \ - $(yuv_distortion_SOURCES) -DIST_SOURCES = $(bjoentegaard_SOURCES) $(block_rate_estim_SOURCES) \ - $(gen_enc_table_SOURCES) $(rd_curves_SOURCES) $(tests_SOURCES) \ - $(yuv_distortion_SOURCES) -am__can_run_installinfo = \ - case $$AM_UPDATE_INFO_DIR in \
View file
libde265-1.0.16.tar.gz/CMakeLists.txt -> libde265-1.0.17.tar.gz/CMakeLists.txt
Changed
@@ -1,18 +1,61 @@ -cmake_minimum_required (VERSION 3.5.0) +cmake_minimum_required (VERSION 3.16.3) project (libde265 LANGUAGES C CXX - VERSION 1.0.16 + VERSION 1.0.17 ) -set(CMAKE_CXX_STANDARD 11) +# Auto-compute BCD-encoded numeric version from project version. +# Each component is BCD-encoded: decimal 16 → 0x16. +# Result: 1.0.16 → 0x01001600 +math(EXPR _maj_bcd "(${PROJECT_VERSION_MAJOR}/10)*16 + (${PROJECT_VERSION_MAJOR}%10)") +math(EXPR _min_bcd "(${PROJECT_VERSION_MINOR}/10)*16 + (${PROJECT_VERSION_MINOR}%10)") +math(EXPR _pat_bcd "(${PROJECT_VERSION_PATCH}/10)*16 + (${PROJECT_VERSION_PATCH}%10)") +math(EXPR NUMERIC_VERSION "${_maj_bcd} * 16777216 + ${_min_bcd} * 65536 + ${_pat_bcd} * 256" OUTPUT_FORMAT HEXADECIMAL) +set (PACKAGE_VERSION ${PROJECT_VERSION}) + +# --- Shared library version (ABI versioning, independent of project version) --- +# +# This controls the shared library filename: +# libde265.so -> libde265.so.0 -> libde265.so.0.1.9 +# ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ +# SOVERSION VERSION +# +# VERSION is a three-part number: MAJOR.MINOR.PATCH +# - MAJOR = the ABI major version (same as SOVERSION). +# Bump when the ABI breaks (exported functions removed or signatures changed). +# Reset MINOR and PATCH to 0. +# - MINOR = backward-compatible ABI additions. +# Bump when new exported functions are added but old ones still work. +# Reset PATCH to 0. +# - PATCH = implementation-only changes (bug fixes, performance improvements). +# Bump when the ABI is unchanged. +# +# SOVERSION must always equal the MAJOR part of VERSION. +# Programs linked against libde265.so.0 will work with any libde265.so.0.x.y. +# +set(DE265_SOVERSION 0) +set(DE265_LIBRARY_VERSION "0.1.10") + +set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_EXTENSIONS OFF) set(CMAKE_POSITION_INDEPENDENT_CODE ON) -# The version number. -set (NUMERIC_VERSION 0x01001600) -set (PACKAGE_VERSION ${PROJECT_VERSION}) +if (CMAKE_BUILD_TYPE STREQUAL "Debug") + add_compile_options(-Wall -Wextra -Wpedantic -Wno-unused-parameter) +endif() + +option(USE_IWYU "Run include-what-you-use analysis during build" OFF) +if (USE_IWYU) + find_program(IWYU_PATH include-what-you-use) + if (IWYU_PATH) + set(CMAKE_CXX_INCLUDE_WHAT_YOU_USE ${IWYU_PATH}) + set(CMAKE_C_INCLUDE_WHAT_YOU_USE ${IWYU_PATH}) + else() + message(WARNING "include-what-you-use not found, USE_IWYU ignored") + endif() +endif() include (${CMAKE_ROOT}/Modules/CheckCCompilerFlag.cmake) include (${CMAKE_ROOT}/Modules/CheckIncludeFile.cmake) @@ -26,22 +69,53 @@ find_package(SDL2) endif() -find_package(Threads REQUIRED) - CHECK_INCLUDE_FILE(malloc.h HAVE_MALLOC_H) CHECK_FUNCTION_EXISTS(posix_memalign HAVE_POSIX_MEMALIGN) -if (HAVE_MALLOC_H) - add_definitions(-DHAVE_MALLOC_H) +include(CheckCSourceCompiles) +check_c_source_compiles( + "#if !defined(__x86_64) && !defined(__i386__) \ + && !defined(_M_IX86) && !defined(_M_AMD64) \ + || defined(_M_ARM64EC) || defined(_ARM64EC_) + #error not x86 + #endif + int main(){return 0;}" + HAVE_X86) + +if(HAVE_X86) + if (MSVC) + set(SUPPORTS_SSE2 1) + set(SUPPORTS_SSSE3 1) + set(SUPPORTS_SSE4_1 1) + else() + check_c_compiler_flag(-msse2 SUPPORTS_SSE2) + check_c_compiler_flag(-mssse3 SUPPORTS_SSSE3) + check_c_compiler_flag(-msse4.1 SUPPORTS_SSE4_1) + endif() + if(SUPPORTS_SSE4_1) + set(HAVE_SSE4_1 TRUE) + endif() endif() -if (HAVE_POSIX_MEMALIGN) - add_definitions(-DHAVE_POSIX_MEMALIGN) + +check_c_source_compiles( + "#if !defined(__arm__) && !defined(__aarch64__) \ + && !defined(_M_ARM) && !defined(_M_ARM64) + #error not ARM + #endif + int main(){return 0;}" + HAVE_ARM) + +if(HAVE_ARM) + enable_language(ASM) + check_c_compiler_flag(-mfpu=neon HAVE_NEON) endif() configure_file (libde265/de265-version.h.in libde265/de265-version.h) +configure_file (cmake/config.h.in config.h) +add_definitions(-DHAVE_CONFIG_H) if(CMAKE_COMPILER_IS_GNUCXX OR ${CMAKE_CXX_COMPILER_ID} MATCHES Clang) - add_definitions(-Wall) + add_definitions(-Wall -Werror=return-type -Werror=unused-result -Werror=reorder) endif() include(CheckCXXSymbolExists) @@ -52,6 +126,9 @@ set(LIBS_PRIVATE "-lstdc++") endif() +configure_file (libde265.pc.in libde265.pc @ONLY) +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libde265.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig) + option(BUILD_SHARED_LIBS "Build shared library" ON) if(NOT BUILD_SHARED_LIBS) add_definitions(-DLIBDE265_STATIC_BUILD) @@ -61,15 +138,26 @@ option(BUILD_FRAMEWORK "Build as Apple Frameworks" OFF) endif() -include_directories ("${PROJECT_SOURCE_DIR}") include_directories ("${PROJECT_BINARY_DIR}") +include_directories ("${PROJECT_SOURCE_DIR}") include_directories ("${PROJECT_SOURCE_DIR}/libde265") if(MSVC) include_directories ("${PROJECT_SOURCE_DIR}/extra") endif() +find_package(Threads) + option(ENABLE_DECODER "Enable Decoder" ON) option(ENABLE_ENCODER "Enable Encoder" OFF) +option(ENABLE_SHERLOCK265 "Build sherlock265 visual inspection tool" OFF) +option(ENABLE_TOOLS "Build tools" OFF) +option(WITH_FUZZERS "Build the fuzzers" OFF) +set(FUZZING_SANITIZER_OPTIONS "-fsanitize=address,shift,integer" "-fno-sanitize=unsigned-shift-base" "-fno-sanitize-recover=shift,integer" CACHE STRING "Sanitizer flags for fuzzing builds") + +if (WITH_FUZZERS) + add_compile_options("-fsanitize=fuzzer-no-link" ${FUZZING_SANITIZER_OPTIONS}) + add_link_options(${FUZZING_SANITIZER_OPTIONS}) +endif() add_subdirectory (libde265) if (ENABLE_DECODER) @@ -78,3 +166,20 @@ if (ENABLE_ENCODER) add_subdirectory (enc265) endif() +if (ENABLE_SHERLOCK265) + add_subdirectory (sherlock265) +endif() +if (ENABLE_TOOLS) + add_subdirectory (tools) +endif() +if (WITH_FUZZERS) + add_subdirectory (fuzzing) +endif() + +add_custom_target(dist + COMMAND git archive --format=tar.gz --worktree-attributes + --prefix=${PROJECT_NAME}-${PROJECT_VERSION}/ + -o ${CMAKE_BINARY_DIR}/${PROJECT_NAME}-${PROJECT_VERSION}.tar.gz HEAD + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} + COMMENT "Creating source tarball ${PROJECT_NAME}-${PROJECT_VERSION}.tar.gz" +)
View file
libde265-1.0.17.tar.gz/CMakePresets.json
Added
@@ -0,0 +1,41 @@ +{ + "version": 6, + "configurePresets": + { + "name": "release", + "displayName": "Release", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Release", + "ENABLE_ENCODER": "OFF" + } + }, + { + "name": "fuzzing", + "displayName": "Fuzzing (libFuzzer)", + "binaryDir": "${sourceDir}/build-fuzzing", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Debug", + "CMAKE_C_COMPILER": "clang", + "CMAKE_CXX_COMPILER": "clang++", + "BUILD_SHARED_LIBS": "OFF", + "WITH_FUZZERS": "ON", + "ENABLE_ENCODER": "OFF", + "ENABLE_SDL": "OFF" + } + }, + { + "name": "afl", + "displayName": "Fuzzing (AFL++)", + "binaryDir": "${sourceDir}/build-afl", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Debug", + "CMAKE_C_COMPILER": "afl-cc", + "CMAKE_CXX_COMPILER": "afl-c++", + "BUILD_SHARED_LIBS": "OFF", + "ENABLE_DECODER": "ON", + "ENABLE_ENCODER": "OFF", + "ENABLE_SDL": "OFF" + } + } + +}
View file
libde265-1.0.16.tar.gz/README.md -> libde265-1.0.17.tar.gz/README.md
Changed
@@ -54,8 +54,14 @@ !Build Status(https://github.com/strukturag/libde265/workflows/build/badge.svg)(https://github.com/strukturag/libde265/actions) !Build Status(https://ci.appveyor.com/api/projects/status/github/strukturag/libde265?svg=true)(https://ci.appveyor.com/project/strukturag/libde265) -If you got libde265 from the git repository, you will first need to run -the included `autogen.sh` script to generate the `configure` script. +libde265 uses the CMake build system. Please do not use to deprecated autotools scripts. +To compile libde265, run +```` +mkdir build +cd build +cmake .. +make +```` libde265 has no dependencies on other libraries, but both optional example programs have dependencies on: @@ -133,6 +139,8 @@ Libde265 has been integrated into these applications: +- libheif source(https://github.com/strukturag/libheif) + - gstreamer plugin, source(https://github.com/strukturag/gstreamer-libde265), binary packages(https://launchpad.net/~strukturag/+archive/libde265). - VLC plugin source(https://github.com/strukturag/vlc-libde265), binary packages(https://launchpad.net/~strukturag/+archive/libde265). @@ -163,5 +171,5 @@ The short video clip in the 'testdata' directory is from the movie 'Girl Shy', which is in the public domain. Copyright (c) 2013-2014 Struktur AG<br> -Copyright (c) 2013-2024 Dirk Farin<br> +Copyright (c) 2013-2026 Dirk Farin<br> Contact: Dirk Farin <dirk.farin@gmail.com>
View file
libde265-1.0.17.tar.gz/cmake
Added
+(directory)
View file
libde265-1.0.17.tar.gz/cmake/config.h.in
Added
@@ -0,0 +1,7 @@ +/* config.h.in - generated by cmake */ + +#cmakedefine HAVE_MALLOC_H 1 +#cmakedefine HAVE_POSIX_MEMALIGN 1 +#cmakedefine HAVE_SSE4_1 1 +#cmakedefine HAVE_ARM 1 +#cmakedefine HAVE_NEON 1
View file
libde265-1.0.17.tar.gz/cmake/toolchains
Added
+(directory)
View file
libde265-1.0.17.tar.gz/cmake/toolchains/arm-linux-gnueabihf.cmake
Added
@@ -0,0 +1,10 @@ +set(CMAKE_SYSTEM_NAME Linux) +set(CMAKE_SYSTEM_PROCESSOR arm) + +set(CMAKE_C_COMPILER arm-linux-gnueabihf-gcc) +set(CMAKE_CXX_COMPILER arm-linux-gnueabihf-g++) + +set(CMAKE_FIND_ROOT_PATH /usr/arm-linux-gnueabihf) +set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) +set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
View file
libde265-1.0.17.tar.gz/cmake/toolchains/mingw-i686.cmake
Added
@@ -0,0 +1,12 @@ +set(CMAKE_SYSTEM_NAME Windows) +set(CMAKE_SYSTEM_PROCESSOR x86) + +set(CMAKE_C_COMPILER i686-w64-mingw32-gcc-posix) +set(CMAKE_CXX_COMPILER i686-w64-mingw32-g++-posix) + +set(CMAKE_FIND_ROOT_PATH /usr/i686-w64-mingw32) +set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) +set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) + +set(CMAKE_EXE_LINKER_FLAGS "-static-libgcc -static-libstdc++")
View file
libde265-1.0.17.tar.gz/cmake/toolchains/mingw-x86_64.cmake
Added
@@ -0,0 +1,12 @@ +set(CMAKE_SYSTEM_NAME Windows) +set(CMAKE_SYSTEM_PROCESSOR x86_64) + +set(CMAKE_C_COMPILER x86_64-w64-mingw32-gcc-posix) +set(CMAKE_CXX_COMPILER x86_64-w64-mingw32-g++-posix) + +set(CMAKE_FIND_ROOT_PATH /usr/x86_64-w64-mingw32) +set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) +set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) + +set(CMAKE_EXE_LINKER_FLAGS "-static-libgcc -static-libstdc++")
View file
libde265-1.0.16.tar.gz/dec265/CMakeLists.txt -> libde265-1.0.17.tar.gz/dec265/CMakeLists.txt
Changed
@@ -3,7 +3,7 @@ target_link_libraries (dec265 PRIVATE de265) if(SDL2_FOUND) - target_sources(dec265 PRIVATE sdl.cc) + target_sources(dec265 PRIVATE sdl-display.cc) target_compile_definitions(dec265 PRIVATE HAVE_SDL) target_include_directories (dec265 PRIVATE "${SDL2_INCLUDE_DIRS}") target_link_libraries (dec265 PRIVATE ${SDL2_LIBRARIES})
View file
libde265-1.0.16.tar.gz/dec265/dec265.cc -> libde265-1.0.17.tar.gz/dec265/dec265.cc
Changed
@@ -27,17 +27,21 @@ #define DO_MEMORY_LOGGING 0 #include "de265.h" +#include <stdexcept> +#include <iostream> +#include <optional> + #ifdef HAVE_CONFIG_H #include "config.h" #endif -#include <stdio.h> -#include <stdlib.h> -#include <limits> +#include <cstdio> +#include <cstdlib> +#include <cinttypes> #include <getopt.h> +#include <cstring> #ifdef HAVE_MALLOC_H #include <malloc.h> #endif -#include <signal.h> #ifndef _MSC_VER #include <sys/time.h> @@ -52,7 +56,7 @@ #endif #if HAVE_SDL -#include "sdl.hh" +#include "sdl-display.h" #endif #ifndef PRIu32 @@ -236,6 +240,9 @@ } #endif + +#if HAVE_SDL + static uint8_t* convert_to_8bit(const uint8_t* data, int width, int height, int pixelsPerLine, int bit_depth) { @@ -251,8 +258,6 @@ return out; } - -#if HAVE_SDL SDL_YUV_Display sdlWin; bool sdl_active=false; @@ -274,6 +279,7 @@ case de265_chroma_422: sdlChroma = SDL_YUV_Display::SDL_CHROMA_422; break; case de265_chroma_444: sdlChroma = SDL_YUV_Display::SDL_CHROMA_444; break; case de265_chroma_mono: sdlChroma = SDL_YUV_Display::SDL_CHROMA_MONO; break; + default: assert(false); sdlChroma = SDL_YUV_Display::SDL_CHROMA_MONO; } sdlWin.init(width,height, sdlChroma); @@ -563,6 +569,40 @@ #endif +int parse_param(const char* arg, std::optional<int> lower_bound, std::optional<int> upper_bound, const char* arg_name) +{ + int value; + + try { + size_t len; + value = std::stoi(optarg, &len); + if (arglen != 0) { + std::cerr << "invalid argument to " << arg_name << "\n"; + exit(5); + } + } catch (std::invalid_argument const& ex) { + std::cerr << "invalid argument to " << arg_name << "\n"; + exit(5); + } + catch (std::out_of_range const& ex) { + std::cerr << "argument to -T is out of range\n"; + exit(5); + } + + if (lower_bound && value < *lower_bound) { + std::cerr << "argument to " << arg_name << " may not be smaller than " << *lower_bound << "\n"; + exit(5); + } + + if (upper_bound && value > *upper_bound) { + std::cerr << "argument to " << arg_name << " may not be larger than " << *upper_bound << "\n"; + exit(5); + } + + return value; +} + + int main(int argc, char** argv) { while (1) { @@ -578,9 +618,9 @@ switch (c) { case 'q': quiet++; break; - case 't': nThreads=atoi(optarg); break; + case 't': nThreads=parse_param(optarg, 0, std::nullopt, "-t"); break; case 'c': check_hash=true; break; - case 'f': max_frames=atoi(optarg); break; + case 'f': max_frames=parse_param(optarg, 1, std::nullopt, "-f"); break; case 'o': write_yuv=true; output_filename=optarg; break; case 'h': show_help=true; break; case 'd': dump_headers=true; break; @@ -592,7 +632,7 @@ case 'm': measure_quality=true; reference_filename=optarg; break; case 's': show_ssim_map=true; break; case 'e': show_psnr_map=true; break; - case 'T': highestTID=atoi(optarg); break; + case 'T': highestTID = parse_param(optarg, 0, std::nullopt, "-T"); break; case 'v': verbosity++; break; } }
View file
libde265-1.0.17.tar.gz/dec265/hdrcopy.cc
Added
@@ -0,0 +1,124 @@ +/* + libde265 example application. + + MIT License + + Copyright (c) 2013-2014 struktur AG, Dirk Farin <farin@struktur.de> + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. +*/ + + +#include "libde265/nal-parser.h" +#include "libde265/decctx.h" +#include <assert.h> + +error_queue errqueue; + +video_parameter_set vps; +seq_parameter_set sps; +pic_parameter_set pps; + +CABAC_encoder_bitstream writer; + + +void process_nal(NAL_unit* nal) +{ + de265_error err = DE265_OK; + + bitreader reader; + bitreader_init(&reader, nal->data(), nal->size()); + + nal_header nal_hdr; + nal_hdr.read(&reader); + writer.write_startcode(); + nal_hdr.write(writer); + + printf("NAL: 0x%x 0x%x - unit type:%s temporal id:%d\n", + nal->data()0, nal->data()1, + get_NAL_name(nal_hdr.nal_unit_type), + nal_hdr.nuh_temporal_id); + + + if (nal_hdr.nal_unit_type<32) { + //err = read_slice_NAL(reader, nal, nal_hdr); + } + else switch (nal_hdr.nal_unit_type) { + case NAL_UNIT_VPS_NUT: + vps.read(&errqueue, &reader); + vps.dump(1); + vps.write(&errqueue, writer); + writer.flush_VLC(); + break; + + case NAL_UNIT_SPS_NUT: + sps.read(&errqueue, &reader); + sps.dump(1); + sps.write(&errqueue, writer); + writer.flush_VLC(); + break; + + case NAL_UNIT_PPS_NUT: + //err = read_pps_NAL(reader); + break; + + case NAL_UNIT_PREFIX_SEI_NUT: + case NAL_UNIT_SUFFIX_SEI_NUT: + //err = read_sei_NAL(reader, nal_hdr.nal_unit_type==NAL_UNIT_SUFFIX_SEI_NUT); + break; + + case NAL_UNIT_EOS_NUT: + //ctx->FirstAfterEndOfSequenceNAL = true; + break; + } +} + + +int main(int argc, char** argv) +{ + NAL_Parser nal_parser; + + FILE* fh = fopen(argv1,"rb"); + unsigned char buf1024; + + writer.write_bits(0,8); // because HM has an extra byte at the beginning + + while(!feof(fh)) + { + int n = fread(buf,1,1024,fh); + if (n>0) { + nal_parser.push_data(buf,n, 0); + } + + if (nal_parser.get_NAL_queue_length()>0) { + NAL_unit* nal = nal_parser.pop_from_NAL_queue(); + assert(nal); + process_nal(nal); + nal_parser.free_NAL_unit(nal); + } + } + + fclose(fh); + + fh = fopen("out.bin","wb"); + fwrite(writer.data(), 1,writer.size(), fh); + fclose(fh); + + return 0; +}
View file
libde265-1.0.17.tar.gz/dec265/sdl-display.cc
Added
@@ -0,0 +1,298 @@ +/* + This file is part of dec265, an example application using libde265. + + MIT License + + Copyright (c) 2013-2014 struktur AG, Dirk Farin <farin@struktur.de> + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. +*/ + +#include "sdl-display.h" +#include <cstring> + + +bool SDL_YUV_Display::init(int frame_width, int frame_height, enum SDL_Chroma chroma) +{ + // reduce image size to a multiple of 8 (apparently required by YUV overlay) + + frame_width &= ~7; + frame_height &= ~7; + + mChroma = chroma; + + if (SDL_Init(SDL_INIT_VIDEO) < 0 ) { + printf("SDL_Init() failed: %s\n", SDL_GetError( ) ); + SDL_Quit(); + return false; + } + + // set window title + const char *window_title = "SDL YUV display"; + mWindow = SDL_CreateWindow(window_title, + SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, + frame_width, frame_height, 0); + if (!mWindow) { + printf("SDL: Couldn't set video mode to %dx%d: %s\n", + frame_width, frame_height, SDL_GetError()); + SDL_Quit(); + return false; + } + + Uint32 flags = 0; // Empty flags prioritize SDL_RENDERER_ACCELERATED. + mRenderer = SDL_CreateRenderer(mWindow, -1, flags); + if (!mRenderer) { + printf("SDL: Couldn't create renderer: %s\n", SDL_GetError()); + SDL_Quit(); + return false; + } + + Uint32 pixelFormat = 0; + switch (mChroma) { + case SDL_CHROMA_MONO: pixelFormat = SDL_PIXELFORMAT_YV12; break; + case SDL_CHROMA_420: pixelFormat = SDL_PIXELFORMAT_YV12; break; + case SDL_CHROMA_422: pixelFormat = SDL_PIXELFORMAT_YV12; break; + case SDL_CHROMA_444: pixelFormat = SDL_PIXELFORMAT_YV12; break; + //case SDL_CHROMA_444: pixelFormat = SDL_PIXELFORMAT_YV12; break; + default: + printf("Unsupported chroma: %d\n", mChroma); + SDL_Quit(); + return false; + } + + mTexture = SDL_CreateTexture(mRenderer, pixelFormat, + SDL_TEXTUREACCESS_STREAMING, frame_width, frame_height); + if (!mTexture ) { + printf("SDL: Couldn't create SDL texture: %s\n", SDL_GetError()); + SDL_Quit(); + return false; + } + + rect.x = 0; + rect.y = 0; + rect.w = frame_width; + rect.h = frame_height; + + mWindowOpen=true; + + return true; +} + +void SDL_YUV_Display::display(const unsigned char *Y, + const unsigned char *U, + const unsigned char *V, + int stride, int chroma_stride) +{ + if (!mWindowOpen) return; + if (SDL_LockTexture(mTexture, nullptr, + reinterpret_cast<void**>(&mPixels), &mStride) < 0) return; + + if (mChroma == SDL_CHROMA_420) { + display420(Y,U,V,stride,chroma_stride); + } + else if (mChroma == SDL_CHROMA_422) { + display422(Y,U,V,stride,chroma_stride); + } + else if (mChroma == SDL_CHROMA_444) { + display444as420(Y,U,V,stride,chroma_stride); + //display444as422(Y,U,V,stride,chroma_stride); + } + else if (mChroma == SDL_CHROMA_MONO) { + display400(Y,stride); + } + + SDL_UnlockTexture(mTexture); + + SDL_RenderCopy(mRenderer, mTexture, nullptr, nullptr); + SDL_RenderPresent(mRenderer); +} + + +void SDL_YUV_Display::display420(const unsigned char *Y, + const unsigned char *U, + const unsigned char *V, + int stride, int chroma_stride) +{ + if (stride == mStride && chroma_stride == mStride/2) { + + // fast copy + + memcpy(mPixels, Y, rect.w * rect.h); + memcpy(&mPixelsrect.w * rect.h, V, rect.w * rect.h / 4); + memcpy(&mPixels(rect.w * rect.h) + (rect.w * rect.h / 4), U, rect.w * rect.h / 4); + } + else { + // copy line by line, because sizes are different + uint8_t *dest = mPixels; + + for (int y=0;y<rect.h;y++,dest+=mStride) + { + memcpy(dest, Y+stride*y, rect.w); + } + + for (int y=0;y<rect.h/2;y++,dest+=mStride/2) + { + memcpy(dest, V+chroma_stride*y, rect.w/2); + } + + for (int y=0;y<rect.h/2;y++,dest+=mStride/2) + { + memcpy(dest, U+chroma_stride*y, rect.w/2); + } + } +} + + +void SDL_YUV_Display::display400(const unsigned char *Y, int stride) +{ + uint8_t *dest = mPixels; + if (stride == mStride) { + + // fast copy + + memcpy(mPixels, Y, rect.w * rect.h); + dest += mStride * rect.h; + } + else { + // copy line by line, because sizes are different + + for (int y=0;y<rect.h;y++,dest+=mStride) + { + memcpy(dest, Y+stride*y, rect.w); + } + } + + // clear chroma planes + + memset(dest, 0x80, mStride * rect.h / 2); +} + + +void SDL_YUV_Display::display422(const unsigned char* Y, + const unsigned char* U, + const unsigned char* V, + int stride, int chroma_stride) +{ + for (int y = 0; y < rect.h; y++) { + unsigned char* dstY = mPixels + y * mStride; + const unsigned char* Yp = Y + y * stride; + + memcpy(dstY, Yp, rect.w); + } + + for (int y = 0; y < rect.h; y += 2) {
View file
libde265-1.0.17.tar.gz/dec265/sdl-display.h
Changed
(renamed from dec265/sdl.hh)
View file
libde265-1.0.16.tar.gz/enc265/enc265.cc -> libde265-1.0.17.tar.gz/enc265/enc265.cc
Changed
@@ -29,7 +29,7 @@ #include "config.h" #endif -#include "libde265/configparam.h" +#include "libde265/encoder/configparam.h" #include "libde265/image-io.h" #include "libde265/encoder/encoder-core.h" #include "libde265/util.h"
View file
libde265-1.0.17.tar.gz/extra/libde265
Added
+(directory)
View file
libde265-1.0.17.tar.gz/extra/libde265/de265-version.h
Added
@@ -0,0 +1,29 @@ +/* + * H.265 video codec. + * Copyright (c) 2013-2014 struktur AG, Dirk Farin <farin@struktur.de> + * + * This file is part of libde265. + * + * libde265 is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * libde265 is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with libde265. If not, see <http://www.gnu.org/licenses/>. + */ + +#ifndef LIBDE265_VERSION_H +#define LIBDE265_VERSION_H + +/* Numeric representation of the version */ +#define LIBDE265_NUMERIC_VERSION 0x01001600 + +#define LIBDE265_VERSION "1.0.16" + +#endif
View file
libde265-1.0.17.tar.gz/fuzzing
Added
+(directory)
View file
libde265-1.0.17.tar.gz/fuzzing/CMakeLists.txt
Added
@@ -0,0 +1,7 @@ +add_executable(stream_fuzzer stream_fuzzer.cc) +target_link_libraries(stream_fuzzer PRIVATE de265) +target_link_options(stream_fuzzer PRIVATE "-fsanitize=fuzzer") + +add_executable(nal_fuzzer nal_fuzzer.cc) +target_link_libraries(nal_fuzzer PRIVATE de265) +target_link_options(nal_fuzzer PRIVATE "-fsanitize=fuzzer")
View file
libde265-1.0.17.tar.gz/fuzzing/nal_fuzzer.cc
Added
@@ -0,0 +1,70 @@ +/* + * H.265 video codec. + * Copyright (c) 2026 Dirk Farin <dirk.farin@gmail.com> + * + * This file is part of libde265. + * + * libde265 is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * libde265 is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with libde265. If not, see <http://www.gnu.org/licenses/>. + */ + +#include "de265.h" +#include <stdint.h> +#include <stddef.h> + +extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) +{ + de265_decoder_context* ctx = de265_new_decoder(); + if (!ctx) { + return 0; + } + + de265_set_parameter_bool(ctx, DE265_DECODER_PARAM_BOOL_SEI_CHECK_HASH, 0); + de265_set_parameter_bool(ctx, DE265_DECODER_PARAM_SUPPRESS_FAULTY_PICTURES, 0); + de265_set_parameter_int(ctx, DE265_DECODER_PARAM_ACCELERATION_CODE, de265_acceleration_SCALAR); + + // Interpret input as a sequence of length-prefixed NAL units. + // Each NAL is preceded by a 4-byte big-endian length. + size_t pos = 0; + while (pos + 4 <= size) { + uint32_t nal_size = (uint32_t(datapos) << 24) | + (uint32_t(datapos + 1) << 16) | + (uint32_t(datapos + 2) << 8) | + uint32_t(datapos + 3); + pos += 4; + + if (nal_size > size - pos) { + break; + } + + de265_push_NAL(ctx, data + pos, nal_size, 0, nullptr); + pos += nal_size; + } + + de265_flush_data(ctx); + + int more = 1; + while (more) { + de265_error err = de265_decode(ctx, &more); + if (!more || (err != DE265_OK && err != DE265_ERROR_WAITING_FOR_INPUT_DATA)) { + break; + } + + while (const de265_image* img = de265_get_next_picture(ctx)) { + (void)img; + } + } + + de265_free_decoder(ctx); + return 0; +}
View file
libde265-1.0.17.tar.gz/fuzzing/stream_fuzzer.cc
Added
@@ -0,0 +1,53 @@ +/* + * H.265 video codec. + * Copyright (c) 2026 Dirk Farin <dirk.farin@gmail.com> + * + * This file is part of libde265. + * + * libde265 is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * libde265 is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with libde265. If not, see <http://www.gnu.org/licenses/>. + */ + +#include "de265.h" +#include <stdint.h> +#include <stddef.h> + +extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) +{ + de265_decoder_context* ctx = de265_new_decoder(); + if (!ctx) { + return 0; + } + + de265_set_parameter_bool(ctx, DE265_DECODER_PARAM_BOOL_SEI_CHECK_HASH, 0); + de265_set_parameter_bool(ctx, DE265_DECODER_PARAM_SUPPRESS_FAULTY_PICTURES, 0); + de265_set_parameter_int(ctx, DE265_DECODER_PARAM_ACCELERATION_CODE, de265_acceleration_SCALAR); + + de265_push_data(ctx, data, size, 0, nullptr); + de265_flush_data(ctx); + + int more = 1; + while (more) { + de265_error err = de265_decode(ctx, &more); + if (!more || (err != DE265_OK && err != DE265_ERROR_WAITING_FOR_INPUT_DATA)) { + break; + } + + while (const de265_image* img = de265_get_next_picture(ctx)) { + (void)img; + } + } + + de265_free_decoder(ctx); + return 0; +}
View file
libde265-1.0.16.tar.gz/libde265.pc.in -> libde265-1.0.17.tar.gz/libde265.pc.in
Changed
@@ -1,13 +1,13 @@ -prefix=@prefix@ -exec_prefix=@exec_prefix@ -libdir=@libdir@ -includedir=@includedir@ +prefix=@CMAKE_INSTALL_PREFIX@ +exec_prefix=${prefix} +libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@ +includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@ Name: libde265 Description: H.265/HEVC video decoder. URL: https://github.com/strukturag/libde265 -Version: @VERSION@ +Version: @PROJECT_VERSION@ Requires: -Libs: -lde265 -L${libdir} +Libs: -L${libdir} -lde265 Libs.private: @LIBS_PRIVATE@ Cflags: -I${includedir}
View file
libde265-1.0.16.tar.gz/libde265/CMakeLists.txt -> libde265-1.0.17.tar.gz/libde265/CMakeLists.txt
Changed
@@ -1,16 +1,14 @@ include(CMakePackageConfigHelpers) -set (libde265_sources +set (libde265_sources alloc_pool.cc bitstream.cc cabac.cc - configparam.cc contextmodel.cc de265.cc deblock.cc decctx.cc dpb.cc - en265.cc fallback-dct.cc fallback-motion.cc fallback.cc @@ -42,14 +40,12 @@ alloc_pool.h bitstream.h cabac.h - configparam.h de265-version.h contextmodel.h de265.h deblock.h decctx.h dpb.h - en265.h fallback-dct.h fallback-motion.h fallback.h @@ -78,7 +74,6 @@ set (libde265_public_headers de265.h - en265.h ${CMAKE_CURRENT_BINARY_DIR}/de265-version.h ) @@ -92,37 +87,24 @@ add_definitions(-DLIBDE265_EXPORTS) -add_subdirectory (encoder) - -check_c_source_compiles( - "#if !defined(__x86_64) && !defined(__i386__) \ - && !defined(_M_IX86) && !defined(_M_AMD64) - #error not x86 - #endif - int main(){return 0;}" - HAVE_X86) +if (ENABLE_ENCODER) + add_subdirectory (encoder) + list(APPEND libde265_sources en265.cc) + list(APPEND libde265_headers en265.h) + list(APPEND libde265_public_headers en265.h) +endif() if(HAVE_X86) - if (MSVC) - set(SUPPORTS_SSE2 1) - set(SUPPORTS_SSSE3 1) - set(SUPPORTS_SSE4_1 1) - else (MSVC) - check_c_compiler_flag(-msse2 SUPPORTS_SSE2) - check_c_compiler_flag(-mssse3 SUPPORTS_SSSE3) - check_c_compiler_flag(-msse4.1 SUPPORTS_SSE4_1) - endif (MSVC) - - if(SUPPORTS_SSE4_1) - add_definitions(-DHAVE_SSE4_1) - endif() if(SUPPORTS_SSE4_1 OR (SUPPORTS_SSE2 AND SUPPORTS_SSSE3)) add_subdirectory (x86) endif() endif() -add_library(de265 ${libde265_sources} ${libde265_public_headers} ${ENCODER_OBJECTS} ${X86_OBJECTS}) -target_link_libraries(de265 PRIVATE Threads::Threads) +if(HAVE_ARM) + add_subdirectory (arm) +endif() + +add_library(de265 ${libde265_sources} ${libde265_public_headers} ${ENCODER_OBJECTS} ${X86_OBJECTS} ${ARM_OBJECTS}) target_include_directories(de265 PRIVATE ${CMAKE_BINARY_DIR} ${CMAKE_CURRENT_BINARY_DIR}) write_basic_package_version_file(libde265ConfigVersion.cmake COMPATIBILITY ExactVersion) @@ -148,6 +130,11 @@ endif() +set_target_properties(de265 PROPERTIES + VERSION "${DE265_LIBRARY_VERSION}" + SOVERSION "${DE265_SOVERSION}" +) + if (WIN32) set_target_properties(de265 PROPERTIES PREFIX "lib") endif()
View file
libde265-1.0.16.tar.gz/libde265/alloc_pool.cc -> libde265-1.0.17.tar.gz/libde265/alloc_pool.cc
Changed
@@ -53,7 +53,7 @@ alloc_pool::~alloc_pool() { - FOR_LOOP(uint8_t*, p, m_memBlocks) { + for (uint8_t* p : m_memBlocks) { delete p; } } @@ -71,7 +71,7 @@ if (DEBUG_MEMORY) { fprintf(stderr,"additional block allocated in memory pool\n"); } } else { - return NULL; + return nullptr; } } @@ -88,7 +88,7 @@ { int memBlockSize = mObjSize * mPoolSize; - FOR_LOOP(uint8_t*, memBlk, m_memBlocks) { + for (uint8_t* memBlk : m_memBlocks) { if (memBlk <= obj && obj < memBlk + memBlockSize) { m_freeList.push_back(obj); return;
View file
libde265-1.0.17.tar.gz/libde265/arm/CMakeLists.txt
Added
@@ -0,0 +1,20 @@ +add_library(arm OBJECT arm.cc arm.h) + +if(HAVE_NEON) + add_library(arm_neon OBJECT + cpudetect.S + hevcdsp_qpel_neon.S + ) + + target_compile_options(arm_neon PRIVATE + -mfpu=neon + -DHAVE_NEON + -DEXTERN_ASM= + -DHAVE_AS_FUNC + -DHAVE_SECTION_DATA_REL_RO + ) + + set(ARM_OBJECTS $<TARGET_OBJECTS:arm> $<TARGET_OBJECTS:arm_neon> PARENT_SCOPE) +else() + set(ARM_OBJECTS $<TARGET_OBJECTS:arm> PARENT_SCOPE) +endif()
View file
libde265-1.0.16.tar.gz/libde265/bitstream.cc -> libde265-1.0.17.tar.gz/libde265/bitstream.cc
Changed
@@ -27,122 +27,125 @@ -void bitreader_init(bitreader* br, unsigned char* buffer, int len) +bitreader::bitreader(unsigned char* buffer, int len) { - br->data = buffer; - br->bytes_remaining = len; - - br->nextbits=0; - br->nextbits_cnt=0; - - bitreader_refill(br); + data = buffer; + bytes_remaining = len; } -void bitreader_refill(bitreader* br) +void bitreader::refill() { - int shift = 64-br->nextbits_cnt; + int shift = 64-nextbits_cnt; - while (shift >= 8 && br->bytes_remaining) { - uint64_t newval = *br->data++; - br->bytes_remaining--; + while (shift >= 8 && bytes_remaining) { + uint64_t newval = *data++; + bytes_remaining--; shift -= 8; newval <<= shift; - br->nextbits |= newval; + nextbits |= newval; } - br->nextbits_cnt = 64-shift; + nextbits_cnt = 64-shift; } -int get_bits(bitreader* br, int n) +uint32_t bitreader::get_bits(int n) { - if (br->nextbits_cnt < n) { - bitreader_refill(br); + if (n == 0) return 0; + assert(n<=32); + + if (nextbits_cnt < n) { + refill(); } - uint64_t val = br->nextbits; + uint64_t val = nextbits; val >>= 64-n; - br->nextbits <<= n; - br->nextbits_cnt -= n; + nextbits <<= n; + nextbits_cnt -= n; return val; } -int get_bits_fast(bitreader* br, int n) +uint32_t bitreader::get_bits_fast(int n) { - assert(br->nextbits_cnt >= n); + if (n == 0) return 0; + assert(n<=32); - uint64_t val = br->nextbits; + assert(nextbits_cnt >= n); + + uint64_t val = nextbits; val >>= 64-n; - br->nextbits <<= n; - br->nextbits_cnt -= n; + nextbits <<= n; + nextbits_cnt -= n; return val; } -int peek_bits(bitreader* br, int n) +uint32_t bitreader::peek_bits(int n) { - if (br->nextbits_cnt < n) { - bitreader_refill(br); + if (n == 0) return 0; + assert(n<=32); + + if (nextbits_cnt < n) { + refill(); } - uint64_t val = br->nextbits; + uint64_t val = nextbits; val >>= 64-n; return val; } -void skip_bits(bitreader* br, int n) +void bitreader::skip_bits(int n) { - if (br->nextbits_cnt < n) { - bitreader_refill(br); + if (nextbits_cnt < n) { + refill(); } - br->nextbits <<= n; - br->nextbits_cnt -= n; + nextbits <<= n; + nextbits_cnt -= n; } -void skip_bits_fast(bitreader* br, int n) +void bitreader::skip_bits_fast(int n) { - br->nextbits <<= n; - br->nextbits_cnt -= n; + nextbits <<= n; + nextbits_cnt -= n; } -void skip_to_byte_boundary(bitreader* br) +void bitreader::skip_to_byte_boundary() { - int nskip = (br->nextbits_cnt & 7); + int nskip = (nextbits_cnt & 7); - br->nextbits <<= nskip; - br->nextbits_cnt -= nskip; + nextbits <<= nskip; + nextbits_cnt -= nskip; } -void prepare_for_CABAC(bitreader* br) +void bitreader::prepare_for_CABAC() { - skip_to_byte_boundary(br); + skip_to_byte_boundary(); - int rewind = br->nextbits_cnt/8; - br->data -= rewind; - br->bytes_remaining += rewind; - br->nextbits = 0; - br->nextbits_cnt = 0; + int rewind = nextbits_cnt/8; + data -= rewind; + bytes_remaining += rewind; + nextbits = 0; + nextbits_cnt = 0; } -int get_uvlc(bitreader* br) +uint32_t bitreader::get_uvlc() { int num_zeros=0; - while (get_bits(br,1)==0) { + while (get_bits(1)==0) { num_zeros++; if (num_zeros > MAX_UVLC_LEADING_ZEROS) { return UVLC_ERROR; } } - int offset = 0; if (num_zeros != 0) { - offset = get_bits(br, num_zeros); - int value = offset + (1<<num_zeros)-1; + uint32_t offset = get_bits(num_zeros); + uint32_t value = offset + (static_cast<uint32_t>(1)<<num_zeros)-1; assert(value>0); return value; } else { @@ -150,23 +153,24 @@ } } -int get_svlc(bitreader* br) +int32_t bitreader::get_svlc() { - int v = get_uvlc(br); - if (v==0) return v; - if (v==UVLC_ERROR) return UVLC_ERROR; + uint32_t v = get_uvlc(); + if (v==0) return 0; + if (v==UVLC_ERROR) return SVLC_ERROR; bool negative = ((v&1)==0); - return negative ? -v/2 : (v+1)/2; + return negative ? -static_cast<int32_t>(v/2) : static_cast<int32_t>((v+1)/2); } -bool check_rbsp_trailing_bits(bitreader* br)
View file
libde265-1.0.16.tar.gz/libde265/bitstream.h -> libde265-1.0.17.tar.gz/libde265/bitstream.h
Changed
@@ -21,40 +21,42 @@ #ifndef DE265_BITSTREAM_H #define DE265_BITSTREAM_H -#ifdef HAVE_CONFIG_H -#include <config.h> -#endif +#include <cstdint> + -#include <stdio.h> -#include <stdint.h> +// HEVC (ITU-T H.265, E.3.3) allows ue(v) values up to 2^32-2 (e.g. bit_rate_value_minus1), +// which requires 31 leading zeros in the exp-Golomb code. 32 leading zeros would give a +// minimum codeNum of 2^32-1, which exceeds every syntax element's valid range. +constexpr int MAX_UVLC_LEADING_ZEROS = 31; +constexpr uint32_t UVLC_ERROR = UINT32_MAX; +constexpr int32_t SVLC_ERROR = INT32_MIN; -#define MAX_UVLC_LEADING_ZEROS 20 -#define UVLC_ERROR -99999 +class bitreader { +public: + bitreader() = default; + bitreader(unsigned char* buffer, int len); + uint32_t get_bits(int n); // n in 0;32 + uint32_t get_bits_fast(int n); // n in 0;32 + uint32_t peek_bits(int n); + void skip_bits(int n); + void skip_bits_fast(int n); + void skip_to_byte_boundary(); + void prepare_for_CABAC(); + uint32_t get_uvlc(); // may return UVLC_ERROR + int32_t get_svlc(); // may return SVLC_ERROR -typedef struct { - uint8_t* data; - int bytes_remaining; + bool check_rbsp_trailing_bits(); // return true if remaining filler bits are all zero - uint64_t nextbits; // left-aligned bits - int nextbits_cnt; -} bitreader; + uint8_t* data = nullptr; + int bytes_remaining = 0; -void bitreader_init(bitreader*, unsigned char* buffer, int len); -void bitreader_refill(bitreader*); // refill to at least 56+1 bits -int next_bit(bitreader*); -int next_bit_norefill(bitreader*); -int get_bits(bitreader*, int n); -int get_bits_fast(bitreader*, int n); -int peek_bits(bitreader*, int n); -void skip_bits(bitreader*, int n); -void skip_bits_fast(bitreader*, int n); -void skip_to_byte_boundary(bitreader*); -void prepare_for_CABAC(bitreader*); -int get_uvlc(bitreader*); // may return UVLC_ERROR -int get_svlc(bitreader*); // may return UVLC_ERROR +private: + void refill(); // refill to at least 56+1 bits -bool check_rbsp_trailing_bits(bitreader*); // return true if remaining filler bits are all zero + uint64_t nextbits = 0; // left-aligned bits + int nextbits_cnt = 0; +}; #endif
View file
libde265-1.0.16.tar.gz/libde265/cabac.cc -> libde265-1.0.17.tar.gz/libde265/cabac.cc
Changed
@@ -133,44 +133,44 @@ int logcnt=1; #endif -void init_CABAC_decoder(CABAC_decoder* decoder, uint8_t* bitstream, int length) +void CABAC_decoder::init(uint8_t* bitstream, int length) { assert(length >= 0); - decoder->bitstream_start = bitstream; - decoder->bitstream_curr = bitstream; - decoder->bitstream_end = bitstream+length; + bitstream_start = bitstream; + bitstream_curr = bitstream; + bitstream_end = bitstream+length; } -void init_CABAC_decoder_2(CABAC_decoder* decoder) +void CABAC_decoder::init_CABAC() { - int length = decoder->bitstream_end - decoder->bitstream_curr; + int length = bitstream_end - bitstream_curr; - decoder->range = 510; - decoder->bits_needed = 8; + range = 510; + bits_needed = 8; - decoder->value = 0; + value = 0; - if (length>0) { decoder->value = (*decoder->bitstream_curr++) << 8; decoder->bits_needed-=8; } - if (length>1) { decoder->value |= (*decoder->bitstream_curr++); decoder->bits_needed-=8; } + if (length>0) { value = (*bitstream_curr++) << 8; bits_needed-=8; } + if (length>1) { value |= (*bitstream_curr++); bits_needed-=8; } - logtrace(LogCABAC,"%3d init_CABAC_decode_2 r:%x v:%x\n", logcnt, decoder->range, decoder->value); + logtrace(LogCABAC,"%3d init_CABAC_decode_2 r:%x v:%x\n", logcnt, range, value); } -int decode_CABAC_bit(CABAC_decoder* decoder, context_model* model) +int CABAC_decoder::decode_bit(context_model* model) { - logtrace(LogCABAC,"%3d decodeBin r:%x v:%x state:%d\n",logcnt,decoder->range, decoder->value, model->state); + logtrace(LogCABAC,"%3d decodeBin r:%x v:%x state:%d\n",logcnt,range, value, model->state); int decoded_bit; - int LPS = LPS_tablemodel->state ( decoder->range >> 6 ) - 4 ; - decoder->range -= LPS; + int LPS = LPS_tablemodel->state ( range >> 6 ) - 4 ; + range -= LPS; - uint32_t scaled_range = decoder->range << 7; + uint32_t scaled_range = range << 7; - logtrace(LogCABAC,"%3d sr:%x v:%x\n",logcnt,scaled_range, decoder->value); + logtrace(LogCABAC,"%3d sr:%x v:%x\n",logcnt,scaled_range, value); - if (decoder->value < scaled_range) + if (value < scaled_range) { logtrace(LogCABAC,"%3d MPS\n",logcnt); @@ -183,15 +183,15 @@ { // scaled range, highest bit (15) not set - decoder->range = scaled_range >> 6; // shift range by one bit - decoder->value <<= 1; // shift value by one bit - decoder->bits_needed++; + range = scaled_range >> 6; // shift range by one bit + value <<= 1; // shift value by one bit + bits_needed++; - if (decoder->bits_needed == 0) + if (bits_needed == 0) { - decoder->bits_needed = -8; - if (decoder->bitstream_curr < decoder->bitstream_end) - { decoder->value |= *decoder->bitstream_curr++; } + bits_needed = -8; + if (bitstream_curr < bitstream_end) + { value |= *bitstream_curr++; } } } } @@ -202,35 +202,36 @@ // LPS path - decoder->value = (decoder->value - scaled_range); + value = (value - scaled_range); - int num_bits = renorm_table LPS >> 3 ; - decoder->value <<= num_bits; - decoder->range = LPS << num_bits; /* this is always >= 0x100 except for state 63, + uint8_t num_bits = renorm_table LPS >> 3 ; + value <<= num_bits; + range = LPS << num_bits; /* this is always >= 0x100 except for state 63, but state 63 is never used */ +#ifndef NDEBUG int num_bitsTab = renorm_table LPS >> 3 ; - assert(num_bits == num_bitsTab); +#endif decoded_bit = 1 - model->MPSbit; if (model->state==0) { model->MPSbit = 1-model->MPSbit; } model->state = next_state_LPSmodel->state; - decoder->bits_needed += num_bits; + bits_needed += num_bits; - if (decoder->bits_needed >= 0) + if (bits_needed >= 0) { - logtrace(LogCABAC,"bits_needed: %d\n", decoder->bits_needed); - if (decoder->bitstream_curr < decoder->bitstream_end) - { decoder->value |= (*decoder->bitstream_curr++) << decoder->bits_needed; } + logtrace(LogCABAC,"bits_needed: %d\n", bits_needed); + if (bitstream_curr < bitstream_end) + { value |= (*bitstream_curr++) << bits_needed; } - decoder->bits_needed -= 8; + bits_needed -= 8; } } - logtrace(LogCABAC,"%3d -> bit %d r:%x v:%x\n", logcnt, decoded_bit, decoder->range, decoder->value); + logtrace(LogCABAC,"%3d -> bit %d r:%x v:%x\n", logcnt, decoded_bit, range, value); #ifdef DE265_LOG_TRACE logcnt++; #endif @@ -238,14 +239,14 @@ return decoded_bit; } -int decode_CABAC_term_bit(CABAC_decoder* decoder) +int CABAC_decoder::decode_term_bit() { - logtrace(LogCABAC,"CABAC term: range=%x\n", decoder->range); + logtrace(LogCABAC,"CABAC term: range=%x\n", range); - decoder->range -= 2; - uint32_t scaledRange = decoder->range << 7; + range -= 2; + uint32_t scaledRange = range << 7; - if (decoder->value >= scaledRange) + if (value >= scaledRange) { return 1; } @@ -255,16 +256,16 @@ if (scaledRange < (256<<7)) { - decoder->range = scaledRange >> 6; - decoder->value *= 2; + range = scaledRange >> 6; + value *= 2; - decoder->bits_needed++; - if (decoder->bits_needed==0) + bits_needed++; + if (bits_needed==0) { - decoder->bits_needed = -8; + bits_needed = -8; - if (decoder->bitstream_curr < decoder->bitstream_end) { - decoder->value += (*decoder->bitstream_curr++); + if (bitstream_curr < bitstream_end) { + value += (*bitstream_curr++); } } } @@ -276,30 +277,30 @@ // When we read past the end of the bitstream (which should only happen on faulty bitstreams), // we will eventually only return zeros. -int decode_CABAC_bypass(CABAC_decoder* decoder) +int CABAC_decoder::decode_bypass() { - logtrace(LogCABAC,"%3d bypass r:%x v:%x\n",logcnt,decoder->range, decoder->value); + logtrace(LogCABAC,"%3d bypass r:%x v:%x\n",logcnt,range, value); - decoder->value <<= 1; - decoder->bits_needed++; + value <<= 1; + bits_needed++; - if (decoder->bits_needed >= 0) + if (bits_needed >= 0) { - if (decoder->bitstream_end > decoder->bitstream_curr) { - decoder->bits_needed = -8;
View file
libde265-1.0.16.tar.gz/libde265/cabac.h -> libde265-1.0.17.tar.gz/libde265/cabac.h
Changed
@@ -25,28 +25,31 @@ #include "contextmodel.h" -typedef struct { - uint8_t* bitstream_start; - uint8_t* bitstream_curr; - uint8_t* bitstream_end; - - uint32_t range; - uint32_t value; - int16_t bits_needed; -} CABAC_decoder; - +class CABAC_decoder { +public: + void init(uint8_t* bitstream, int length); + void init_CABAC(); + int decode_bit(context_model* model); + int decode_TU(int cMax, context_model* model); + int decode_term_bit(); + + int decode_bypass(); + int decode_TU_bypass(int cMax); + uint32_t decode_FL_bypass(int nBits); + int decode_TR_bypass(int cRiceParam, int cTRMax); + uint32_t decode_EGk_bypass(int k); + + uint8_t* bitstream_start = nullptr; + uint8_t* bitstream_curr = nullptr; + uint8_t* bitstream_end = nullptr; -void init_CABAC_decoder(CABAC_decoder* decoder, uint8_t* bitstream, int length); -void init_CABAC_decoder_2(CABAC_decoder* decoder); -int decode_CABAC_bit(CABAC_decoder* decoder, context_model* model); -int decode_CABAC_TU(CABAC_decoder* decoder, int cMax, context_model* model); -int decode_CABAC_term_bit(CABAC_decoder* decoder); +private: + uint32_t range = 0; + uint32_t value = 0; + int16_t bits_needed = 0; -int decode_CABAC_bypass(CABAC_decoder* decoder); -int decode_CABAC_TU_bypass(CABAC_decoder* decoder, int cMax); -uint32_t decode_CABAC_FL_bypass(CABAC_decoder* decoder, int nBits); -int decode_CABAC_TR_bypass(CABAC_decoder* decoder, int cRiceParam, int cTRMax); -int decode_CABAC_EGk_bypass(CABAC_decoder* decoder, int k); + int decode_FL_bypass_parallel(int nBits); +}; // --------------------------------------------------------------------------- @@ -54,7 +57,7 @@ class CABAC_encoder { public: - CABAC_encoder() : mCtxModels(NULL) { } + CABAC_encoder() : mCtxModels(nullptr) { } virtual ~CABAC_encoder() { } virtual int size() const = 0; @@ -105,45 +108,45 @@ CABAC_encoder_bitstream(); ~CABAC_encoder_bitstream(); - virtual void reset(); + void reset() override; - virtual int size() const { return data_size; } + int size() const override { return data_size; } uint8_t* data() const { return data_mem; } // --- VLC --- - virtual void write_bits(uint32_t bits,int n); - virtual bool write_startcode(); - virtual void skip_bits(int nBits); + void write_bits(uint32_t bits,int n) override; + bool write_startcode() override; + void skip_bits(int nBits) override; - virtual int number_free_bits_in_byte() const; + int number_free_bits_in_byte() const override; // output all remaining bits and fill with zeros to next byte boundary - virtual void flush_VLC(); + void flush_VLC() override; // --- CABAC --- - virtual void init_CABAC(); - virtual void write_CABAC_bit(int modelIdx, int bit); - virtual void write_CABAC_bypass(int bit); - virtual void write_CABAC_term_bit(int bit); - virtual void flush_CABAC(); + void init_CABAC() override; + void write_CABAC_bit(int modelIdx, int bit) override; + void write_CABAC_bypass(int bit) override; + void write_CABAC_term_bit(int bit) override; + void flush_CABAC() override; - virtual bool modifies_context() const { return true; } + bool modifies_context() const override { return true; } private: // data buffer - uint8_t* data_mem; - uint32_t data_capacity; - uint32_t data_size; - char state; // for inserting emulation-prevention bytes + uint8_t* data_mem = nullptr; + uint32_t data_capacity = 0; + uint32_t data_size = 0; + char state = 0; // for inserting emulation-prevention bytes // VLC uint32_t vlc_buffer; - uint32_t vlc_buffer_len; + uint32_t vlc_buffer_len = 0; // CABAC @@ -167,33 +170,33 @@ public: CABAC_encoder_estim() : mFracBits(0) { } - virtual void reset() { mFracBits=0; } + void reset() override { mFracBits=0; } - virtual int size() const { return mFracBits>>(15+3); } + int size() const override { return mFracBits>>(15+3); } uint64_t getFracBits() const { return mFracBits; } float getRDBits() const { return mFracBits / float(1<<15); } // --- VLC --- - virtual void write_bits(uint32_t bits,int n) { mFracBits += n<<15; } - virtual void write_bit(int bit) { mFracBits+=1<<15; } - virtual bool write_startcode() { mFracBits += (1<<15)*8*3; return true; } - virtual void skip_bits(int nBits) { mFracBits += nBits<<15; } - virtual int number_free_bits_in_byte() const { return 0; } // TODO, good enough for now + void write_bits(uint32_t bits,int n) override { mFracBits += n<<15; } + void write_bit(int bit) override { mFracBits+=1<<15; } + bool write_startcode() override { mFracBits += (1<<15)*8*3; return true; } + void skip_bits(int nBits) override { mFracBits += nBits<<15; } + int number_free_bits_in_byte() const override { return 0; } // TODO, good enough for now // --- CABAC --- - virtual void write_CABAC_bit(int modelIdx, int bit); - virtual void write_CABAC_bypass(int bit) { + void write_CABAC_bit(int modelIdx, int bit) override; + void write_CABAC_bypass(int bit) override { mFracBits += 0x8000; } - virtual void write_CABAC_FL_bypass(int value, int nBits) { + void write_CABAC_FL_bypass(int value, int nBits) override { mFracBits += nBits<<15; } - virtual void write_CABAC_term_bit(int bit) { /* not implemented (not needed) */ } + void write_CABAC_term_bit(int bit) override { /* not implemented (not needed) */ } - virtual bool modifies_context() const { return true; } + bool modifies_context() const override { return true; } protected: uint64_t mFracBits; @@ -203,9 +206,9 @@ class CABAC_encoder_estim_constant : public CABAC_encoder_estim { public: - void write_CABAC_bit(int modelIdx, int bit); + void write_CABAC_bit(int modelIdx, int bit) override; - virtual bool modifies_context() const { return false; } + bool modifies_context() const override { return false; } }; #endif
View file
libde265-1.0.16.tar.gz/libde265/contextmodel.cc -> libde265-1.0.17.tar.gz/libde265/contextmodel.cc
Changed
@@ -25,15 +25,9 @@ bool D = false; -context_model_table::context_model_table() - : model(NULL), refcnt(NULL) -{ -} - - context_model_table::context_model_table(const context_model_table& src) { - if (D) printf("%p c'tor = %p\n",this,&src); + if (D) printf("%p c'tor = %p\n",static_cast<void*>(this),static_cast<const void*>(&src)); if (src.refcnt) { (*(src.refcnt))++; @@ -46,12 +40,12 @@ context_model_table::~context_model_table() { - if (D) printf("%p destructor\n",this); + if (D) printf("%p destructor\n",static_cast<void*>(this)); if (refcnt) { (*refcnt)--; if (*refcnt==0) { - if (D) printf("mfree %p\n",model); + if (D) printf("mfree %p\n",static_cast<void*>(model)); delete model; delete refcnt; } @@ -61,7 +55,7 @@ void context_model_table::init(int initType, int QPY) { - if (D) printf("%p init\n",this); + if (D) printf("%p init\n",static_cast<void*>(this)); decouple_or_alloc_with_empty_data(); @@ -71,7 +65,7 @@ void context_model_table::release() { - if (D) printf("%p release %p\n",this,refcnt); + if (D) printf("%p release %p\n",static_cast<void*>(this),static_cast<void*>(refcnt)); if (!refcnt) { return; } @@ -90,7 +84,7 @@ void context_model_table::decouple() { - if (D) printf("%p decouple (%p)\n",this,refcnt); + if (D) printf("%p decouple (%p)\n",static_cast<void*>(this),static_cast<void*>(refcnt)); assert(refcnt); // not necessarily so, but we never use it on an uninitialized object @@ -123,7 +117,7 @@ context_model_table& context_model_table::operator=(const context_model_table& src) { - if (D) printf("%p assign = %p\n",this,&src); + if (D) printf("%p assign = %p\n",static_cast<void*>(this),static_cast<const void*>(&src)); // assert(src.refcnt); // not necessarily so, but we never use it on an uninitialized object @@ -178,7 +172,7 @@ (*refcnt)--; } - if (D) printf("%p (alloc)\n",this); + if (D) printf("%p (alloc)\n",static_cast<void*>(this)); model = new context_modelCONTEXT_MODEL_TABLE_LENGTH; // Without initializing the model, we got an invalid model state during decoding (issue #236)
View file
libde265-1.0.16.tar.gz/libde265/contextmodel.h -> libde265-1.0.17.tar.gz/libde265/contextmodel.h
Changed
@@ -99,7 +99,7 @@ class context_model_table { public: - context_model_table(); + context_model_table() = default; context_model_table(const context_model_table&); ~context_model_table(); @@ -109,7 +109,7 @@ context_model_table transfer(); context_model_table copy() const { context_model_table t=*this; t.decouple(); return t; } - bool empty() const { return refcnt != NULL; } + bool empty() const { return refcnt != nullptr; } context_model& operator(int i) { return modeli; } @@ -122,8 +122,8 @@ private: void decouple_or_alloc_with_empty_data(); - context_model* model; // CONTEXT_MODEL_TABLE_LENGTH - int* refcnt; + context_model* model = nullptr; // CONTEXT_MODEL_TABLE_LENGTH + int* refcnt = nullptr; };
View file
libde265-1.0.16.tar.gz/libde265/de265-version.h.in -> libde265-1.0.17.tar.gz/libde265/de265-version.h.in
Changed
@@ -20,7 +20,7 @@ /* de265-version.h * - * This file was generated by autoconf when libde265 was built. + * This file was generated by cmake when libde265 was built. * * DO NOT EDIT THIS FILE. */
View file
libde265-1.0.16.tar.gz/libde265/de265.cc -> libde265-1.0.17.tar.gz/libde265/de265.cc
Changed
@@ -176,6 +176,8 @@ return "Chroma format of reference image does not match current image"; case DE265_WARNING_INVALID_SLICE_HEADER_INDEX_ACCESS: return "Access with invalid slice header index"; + case DE265_WARNING_INVALID_TU_BLOCK_SPLIT: + return "Transform block split below minimum transform size"; default: return "unknown error"; } @@ -244,22 +246,22 @@ { de265_error init_err = de265_init(); if (init_err != DE265_OK) { - return NULL; + return nullptr; } decoder_context* ctx = new decoder_context; if (!ctx) { de265_free(); - return NULL; + return nullptr; } - return (de265_decoder_context*)ctx; + return reinterpret_cast<de265_decoder_context*>(ctx); } LIBDE265_API de265_error de265_free_decoder(de265_decoder_context* de265ctx) { - decoder_context* ctx = (decoder_context*)de265ctx; + decoder_context* ctx = reinterpret_cast<decoder_context*>(de265ctx); ctx->stop_thread_pool(); @@ -271,7 +273,7 @@ LIBDE265_API de265_error de265_start_worker_threads(de265_decoder_context* de265ctx, int number_of_threads) { - decoder_context* ctx = (decoder_context*)de265ctx; + decoder_context* ctx = reinterpret_cast<decoder_context*>(de265ctx); if (number_of_threads > MAX_THREADS) { number_of_threads = MAX_THREADS; @@ -294,10 +296,10 @@ LIBDE265_API de265_error de265_decode_data(de265_decoder_context* de265ctx, const void* data8, int len) { - //decoder_context* ctx = (decoder_context*)de265ctx; + //decoder_context* ctx = reinterpret_cast<decoder_context*>(de265ctx); de265_error err; if (len > 0) { - err = de265_push_data(de265ctx, data8, len, 0, NULL); + err = de265_push_data(de265ctx, data8, len, 0, nullptr); } else { err = de265_flush_data(de265ctx); } @@ -325,6 +327,7 @@ } #endif +#if 0 static void dumpdata(const void* data, int len) { for (int i=0;i<len;i++) { @@ -332,14 +335,15 @@ } printf("\n"); } +#endif LIBDE265_API de265_error de265_push_data(de265_decoder_context* de265ctx, const void* data8, int len, de265_PTS pts, void* user_data) { - decoder_context* ctx = (decoder_context*)de265ctx; - uint8_t* data = (uint8_t*)data8; + decoder_context* ctx = reinterpret_cast<decoder_context*>(de265ctx); + const uint8_t* data = reinterpret_cast<const uint8_t*>(data8); //printf("push data (size %d)\n",len); //dumpdata(data8,16); @@ -352,8 +356,8 @@ const void* data8, int len, de265_PTS pts, void* user_data) { - decoder_context* ctx = (decoder_context*)de265ctx; - uint8_t* data = (uint8_t*)data8; + decoder_context* ctx = reinterpret_cast<decoder_context*>(de265ctx); + const uint8_t* data = reinterpret_cast<const uint8_t*>(data8); //printf("push NAL (size %d)\n",len); //dumpdata(data8,16); @@ -364,7 +368,7 @@ LIBDE265_API de265_error de265_decode(de265_decoder_context* de265ctx, int* more) { - decoder_context* ctx = (decoder_context*)de265ctx; + decoder_context* ctx = reinterpret_cast<decoder_context*>(de265ctx); return ctx->decode(more); } @@ -372,7 +376,7 @@ LIBDE265_API void de265_push_end_of_NAL(de265_decoder_context* de265ctx) { - decoder_context* ctx = (decoder_context*)de265ctx; + decoder_context* ctx = reinterpret_cast<decoder_context*>(de265ctx); ctx->nal_parser.flush_data(); } @@ -382,7 +386,7 @@ { de265_push_end_of_NAL(de265ctx); - decoder_context* ctx = (decoder_context*)de265ctx; + decoder_context* ctx = reinterpret_cast<decoder_context*>(de265ctx); ctx->nal_parser.mark_end_of_frame(); } @@ -391,7 +395,7 @@ { de265_push_end_of_NAL(de265ctx); - decoder_context* ctx = (decoder_context*)de265ctx; + decoder_context* ctx = reinterpret_cast<decoder_context*>(de265ctx); ctx->nal_parser.flush_data(); ctx->nal_parser.mark_end_of_stream(); @@ -402,7 +406,7 @@ LIBDE265_API void de265_reset(de265_decoder_context* de265ctx) { - decoder_context* ctx = (decoder_context*)de265ctx; + decoder_context* ctx = reinterpret_cast<decoder_context*>(de265ctx); //printf("--- reset ---\n"); @@ -423,21 +427,21 @@ LIBDE265_API const struct de265_image* de265_peek_next_picture(de265_decoder_context* de265ctx) { - decoder_context* ctx = (decoder_context*)de265ctx; + decoder_context* ctx = reinterpret_cast<decoder_context*>(de265ctx); if (ctx->num_pictures_in_output_queue()>0) { de265_image* img = ctx->get_next_picture_in_output_queue(); return img; } else { - return NULL; + return nullptr; } } LIBDE265_API void de265_release_next_picture(de265_decoder_context* de265ctx) { - decoder_context* ctx = (decoder_context*)de265ctx; + decoder_context* ctx = reinterpret_cast<decoder_context*>(de265ctx); // no active output picture -> ignore release request @@ -463,45 +467,45 @@ LIBDE265_API int de265_get_highest_TID(de265_decoder_context* de265ctx) { - decoder_context* ctx = (decoder_context*)de265ctx; + decoder_context* ctx = reinterpret_cast<decoder_context*>(de265ctx); return ctx->get_highest_TID(); } LIBDE265_API int de265_get_current_TID(de265_decoder_context* de265ctx) { - decoder_context* ctx = (decoder_context*)de265ctx; + decoder_context* ctx = reinterpret_cast<decoder_context*>(de265ctx); return ctx->get_current_TID(); } LIBDE265_API void de265_set_limit_TID(de265_decoder_context* de265ctx,int max_tid) { - decoder_context* ctx = (decoder_context*)de265ctx; + decoder_context* ctx = reinterpret_cast<decoder_context*>(de265ctx); ctx->set_limit_TID(max_tid); } LIBDE265_API void de265_set_framerate_ratio(de265_decoder_context* de265ctx,int percent) { - decoder_context* ctx = (decoder_context*)de265ctx; + decoder_context* ctx = reinterpret_cast<decoder_context*>(de265ctx); ctx->set_framerate_ratio(percent); } LIBDE265_API int de265_change_framerate(de265_decoder_context* de265ctx,int more) { - decoder_context* ctx = (decoder_context*)de265ctx; + decoder_context* ctx = reinterpret_cast<decoder_context*>(de265ctx); return ctx->change_framerate(more);
View file
libde265-1.0.16.tar.gz/libde265/de265.h -> libde265-1.0.17.tar.gz/libde265/de265.h
Changed
@@ -146,7 +146,8 @@ DE265_WARNING_CHROMA_OF_CURRENT_IMAGE_DOES_NOT_MATCH_SPS=1030, DE265_WARNING_BIT_DEPTH_OF_CURRENT_IMAGE_DOES_NOT_MATCH_SPS=1031, DE265_WARNING_REFERENCE_IMAGE_CHROMA_FORMAT_DOES_NOT_MATCH=1032, - DE265_WARNING_INVALID_SLICE_HEADER_INDEX_ACCESS=1033 + DE265_WARNING_INVALID_SLICE_HEADER_INDEX_ACCESS=1033, + DE265_WARNING_INVALID_TU_BLOCK_SPLIT=1034 } de265_error; LIBDE265_API const char* de265_get_error_text(de265_error err); @@ -165,42 +166,42 @@ But you may want to check the chroma format anyway for future compatibility. */ -struct de265_image; +typedef struct de265_image de265_image; -enum de265_chroma { +typedef enum de265_chroma { de265_chroma_mono=0, de265_chroma_420=1, de265_chroma_422=2, de265_chroma_444=3 -}; +} de265_chroma; typedef int64_t de265_PTS; -LIBDE265_API int de265_get_image_width(const struct de265_image*,int channel); -LIBDE265_API int de265_get_image_height(const struct de265_image*,int channel); -LIBDE265_API enum de265_chroma de265_get_chroma_format(const struct de265_image*); -LIBDE265_API int de265_get_bits_per_pixel(const struct de265_image*,int channel); +LIBDE265_API int de265_get_image_width(const de265_image*,int channel); +LIBDE265_API int de265_get_image_height(const de265_image*,int channel); +LIBDE265_API de265_chroma de265_get_chroma_format(const de265_image*); +LIBDE265_API int de265_get_bits_per_pixel(const de265_image*,int channel); /* The |out_stride| is returned as "bytes per line" if a non-NULL parameter is given. */ -LIBDE265_API const uint8_t* de265_get_image_plane(const struct de265_image*, int channel, int* out_stride); -LIBDE265_API void* de265_get_image_plane_user_data(const struct de265_image*, int channel); -LIBDE265_API de265_PTS de265_get_image_PTS(const struct de265_image*); -LIBDE265_API void* de265_get_image_user_data(const struct de265_image*); -LIBDE265_API void de265_set_image_user_data(struct de265_image*, void *user_data); +LIBDE265_API const uint8_t* de265_get_image_plane(const de265_image*, int channel, int* out_stride); +LIBDE265_API void* de265_get_image_plane_user_data(const de265_image*, int channel); +LIBDE265_API de265_PTS de265_get_image_PTS(const de265_image*); +LIBDE265_API void* de265_get_image_user_data(const de265_image*); +LIBDE265_API void de265_set_image_user_data(de265_image*, void *user_data); /* Get NAL-header information of this frame. You can pass in NULL pointers if you do not need this piece of information. */ -LIBDE265_API void de265_get_image_NAL_header(const struct de265_image*, +LIBDE265_API void de265_get_image_NAL_header(const de265_image*, int* nal_unit_type, const char** nal_unit_name, // textual description of 'nal_unit_type' int* nuh_layer_id, int* nuh_temporal_id); -LIBDE265_API int de265_get_image_full_range_flag(const struct de265_image*); -LIBDE265_API int de265_get_image_colour_primaries(const struct de265_image*); -LIBDE265_API int de265_get_image_transfer_characteristics(const struct de265_image*); -LIBDE265_API int de265_get_image_matrix_coefficients(const struct de265_image*); +LIBDE265_API int de265_get_image_full_range_flag(const de265_image*); +LIBDE265_API int de265_get_image_colour_primaries(const de265_image*); +LIBDE265_API int de265_get_image_transfer_characteristics(const de265_image*); +LIBDE265_API int de265_get_image_matrix_coefficients(const de265_image*); /* === decoder === */ @@ -298,12 +299,12 @@ /* Return next decoded picture, if there is any. If no complete picture has been decoded yet, NULL is returned. You should call de265_release_next_picture() to advance to the next picture. */ -LIBDE265_API const struct de265_image* de265_peek_next_picture(de265_decoder_context*); // may return NULL +LIBDE265_API const de265_image* de265_peek_next_picture(de265_decoder_context*); // may return NULL /* Get next decoded picture and remove this picture from the decoder output queue. Returns NULL is there is no decoded picture ready. You can use the picture only until you call any other de265_* function. */ -LIBDE265_API const struct de265_image* de265_get_next_picture(de265_decoder_context*); // may return NULL +LIBDE265_API const de265_image* de265_get_next_picture(de265_decoder_context*); // may return NULL /* Release the current decoded picture for reuse in the decoder. You should not use the data anymore after calling this function. */ @@ -313,16 +314,16 @@ LIBDE265_API de265_error de265_get_warning(de265_decoder_context*); -enum de265_image_format { +typedef enum de265_image_format { de265_image_format_mono8 = 1, de265_image_format_YUV420P8 = 2, de265_image_format_YUV422P8 = 3, de265_image_format_YUV444P8 = 4 -}; +} de265_image_format; -struct de265_image_spec +typedef struct de265_image_spec { - enum de265_image_format format; + de265_image_format format; int width; int height; int alignment; @@ -336,27 +337,27 @@ int visible_width; // convenience, width - crop_left - crop_right int visible_height; // convenience, height - crop_top - crop_bottom -}; +} de265_image_spec; -struct de265_image_allocation +typedef struct de265_image_allocation { int (*get_buffer)(de265_decoder_context* ctx, // first parameter deprecated - struct de265_image_spec* spec, - struct de265_image* img, + de265_image_spec* spec, + de265_image* img, void* userdata); void (*release_buffer)(de265_decoder_context* ctx, // first parameter deprecated - struct de265_image* img, + de265_image* img, void* userdata); -}; +} de265_image_allocation; /* The user data pointer will be given to the get_buffer() and release_buffer() functions in de265_image_allocation. */ LIBDE265_API void de265_set_image_allocation_functions(de265_decoder_context*, - struct de265_image_allocation*, + de265_image_allocation*, void* userdata); -LIBDE265_API const struct de265_image_allocation *de265_get_default_image_allocation_functions(void); +LIBDE265_API const de265_image_allocation *de265_get_default_image_allocation_functions(void); -LIBDE265_API void de265_set_image_plane(struct de265_image* img, int cIdx, void* mem, int stride, void *userdata); +LIBDE265_API void de265_set_image_plane(de265_image* img, int cIdx, void* mem, int stride, void *userdata); /* --- frame dropping API --- @@ -388,7 +389,7 @@ /* --- decoding parameters --- */ -enum de265_param { +typedef enum de265_param { DE265_DECODER_PARAM_BOOL_SEI_CHECK_HASH=0, // (bool) Perform SEI hash check on decoded pictures. DE265_DECODER_PARAM_DUMP_SPS_HEADERS=1, // (int) Dump headers to specified file-descriptor. DE265_DECODER_PARAM_DUMP_VPS_HEADERS=2, @@ -401,10 +402,10 @@ DE265_DECODER_PARAM_DISABLE_SAO=8 // (bool) disable SAO filter //DE265_DECODER_PARAM_DISABLE_MC_RESIDUAL_IDCT=9, // (bool) disable decoding of IDCT residuals in MC blocks //DE265_DECODER_PARAM_DISABLE_INTRA_RESIDUAL_IDCT=10 // (bool) disable decoding of IDCT residuals in MC blocks -}; +} de265_param; // sorted such that a large ID includes all optimizations from lower IDs -enum de265_acceleration { +typedef enum de265_acceleration { de265_acceleration_SCALAR = 0, // only fallback implementation de265_acceleration_MMX = 10, de265_acceleration_SSE = 20, @@ -415,16 +416,16 @@ de265_acceleration_ARM = 70, de265_acceleration_NEON = 80, de265_acceleration_AUTO = 10000 -}; +} de265_acceleration; /* Set decoding parameters. */ -LIBDE265_API void de265_set_parameter_bool(de265_decoder_context*, enum de265_param param, int value); +LIBDE265_API void de265_set_parameter_bool(de265_decoder_context*, de265_param param, int value); -LIBDE265_API void de265_set_parameter_int(de265_decoder_context*, enum de265_param param, int value); +LIBDE265_API void de265_set_parameter_int(de265_decoder_context*, de265_param param, int value); /* Get decoding parameters. */ -LIBDE265_API int de265_get_parameter_bool(de265_decoder_context*, enum de265_param param); +LIBDE265_API int de265_get_parameter_bool(de265_decoder_context*, de265_param param);
View file
libde265-1.0.16.tar.gz/libde265/deblock.cc -> libde265-1.0.17.tar.gz/libde265/deblock.cc
Changed
@@ -127,7 +127,7 @@ } -bool derive_edgeFlags_CTBRow(de265_image* img, int ctby) +bool derive_edgeFlags_CTBRow(de265_image* img, uint16_t ctby) { const seq_parameter_set& sps = img->get_sps(); const pic_parameter_set& pps = img->get_pps(); @@ -140,8 +140,8 @@ int ctbshift = sps.Log2CtbSizeY; - int cb_y_start = ( ctby << sps.Log2CtbSizeY) >> sps.Log2MinCbSizeY; - int cb_y_end = ((ctby+1) << sps.Log2CtbSizeY) >> sps.Log2MinCbSizeY; + uint16_t cb_y_start = ( ctby << sps.Log2CtbSizeY) >> sps.Log2MinCbSizeY; + uint16_t cb_y_end = ((ctby+1) << sps.Log2CtbSizeY) >> sps.Log2MinCbSizeY; cb_y_end = std::min(cb_y_end, sps.PicHeightInMinCbsY); @@ -253,8 +253,8 @@ xEnd = libde265_min(xEnd,img->get_deblk_width()); yEnd = libde265_min(yEnd,img->get_deblk_height()); - int TUShift = img->get_sps().Log2MinTrafoSize; - int TUStride= img->get_sps().PicWidthInTbsY; + //int TUShift = img->get_sps().Log2MinTrafoSize; + //int TUStride= img->get_sps().PicWidthInTbsY; for (int y=yStart;y<yEnd;y+=yIncr) for (int x=xStart;x<xEnd;x+=xIncr) { @@ -297,15 +297,6 @@ if (shdrP && shdrQ) { - if (mviP.refIdx0 > MAX_NUM_REF_PICS || - mviP.refIdx1 > MAX_NUM_REF_PICS || - mviQ.refIdx0 > MAX_NUM_REF_PICS || - mviQ.refIdx1 > MAX_NUM_REF_PICS) { - // we cannot return an error from here, so just set a valid boundaryStrength value and continue; - img->set_deblk_bS(xDi, yDi, 0); - continue; - } - int refPicP0 = mviP.predFlag0 ? shdrP->RefPicList0 mviP.refIdx0 : -1; int refPicP1 = mviP.predFlag1 ? shdrP->RefPicList1 mviP.refIdx1 : -1; int refPicQ0 = mviQ.predFlag0 ? shdrQ->RefPicList0 mviQ.refIdx0 : -1; @@ -369,7 +360,7 @@ } } else { - bS = 0; // if shdrP==NULL or shdrQ==NULL + bS = 0; // if shdrP==nullptr or shdrQ==nullptr } /* @@ -541,45 +532,39 @@ int dE=0, dEp=0, dEq=0; - if (vertical || !vertical) { - int dp0 = abs_value(p02 - 2*p01 + p00); - int dp3 = abs_value(p32 - 2*p31 + p30); - int dq0 = abs_value(q02 - 2*q01 + q00); - int dq3 = abs_value(q32 - 2*q31 + q30); + int dp0 = abs_value(p02 - 2*p01 + p00); + int dp3 = abs_value(p32 - 2*p31 + p30); + int dq0 = abs_value(q02 - 2*q01 + q00); + int dq3 = abs_value(q32 - 2*q31 + q30); - int dpq0 = dp0 + dq0; - int dpq3 = dp3 + dq3; + int dpq0 = dp0 + dq0; + int dpq3 = dp3 + dq3; - int dp = dp0 + dp3; - int dq = dq0 + dq3; - int d = dpq0+ dpq3; + int dp = dp0 + dp3; + int dq = dq0 + dq3; + int d = dpq0 + dpq3; - if (d<beta) { - //int dpq = 2*dpq0; - bool dSam0 = (2*dpq0 < (beta>>2) && - abs_value(p03-p00)+abs_value(q00-q03) < (beta>>3) && - abs_value(p00-q00) < ((5*tc+1)>>1)); + if (d < beta) { + //int dpq = 2*dpq0; + bool dSam0 = (2 * dpq0 < (beta >> 2) && + abs_value(p03-p00) + abs_value(q00-q03) < (beta >> 3) && + abs_value(p00-q00) < ((5 * tc + 1) >> 1)); - bool dSam3 = (2*dpq3 < (beta>>2) && - abs_value(p33-p30)+abs_value(q30-q33) < (beta>>3) && - abs_value(p30-q30) < ((5*tc+1)>>1)); + bool dSam3 = (2 * dpq3 < (beta >> 2) && + abs_value(p33-p30) + abs_value(q30-q33) < (beta >> 3) && + abs_value(p30-q30) < ((5 * tc + 1) >> 1)); - if (dSam0 && dSam3) { - dE=2; - } - else { - dE=1; - } + if (dSam0 && dSam3) { + dE = 2; + } + else { + dE = 1; + } - if (dp < ((beta + (beta>>1))>>3)) { dEp=1; } - if (dq < ((beta + (beta>>1))>>3)) { dEq=1; } + if (dp < ((beta + (beta >> 1)) >> 3)) { dEp = 1; } + if (dq < ((beta + (beta >> 1)) >> 3)) { dEq = 1; } - logtrace(LogDeblock,"dE:%d dEp:%d dEq:%d\n",dE,dEp,dEq); - } - } - else { - // TODO - assert(0); + logtrace(LogDeblock, "dE:%d dEp:%d dEq:%d\n", dE, dEp, dEq); } @@ -1011,7 +996,6 @@ int nRows = img->get_sps().PicHeightInCtbsY; - int n=0; img->thread_start(nRows*2); for (int pass=0;pass<2;pass++) @@ -1025,8 +1009,7 @@ task->vertical = (pass==0); imgunit->tasks.push_back(task); - add_task(&ctx->thread_pool_, task); - n++; + ctx->thread_pool_.add_task(task); } } } @@ -1034,7 +1017,7 @@ void apply_deblocking_filter(de265_image* img) // decoder_context* ctx) { - decoder_context* ctx = img->decctx; + //decoder_context* ctx = img->decctx; char enabled_deblocking = derive_edgeFlags(img);
View file
libde265-1.0.16.tar.gz/libde265/decctx.cc -> libde265-1.0.17.tar.gz/libde265/decctx.cc
Changed
@@ -24,6 +24,7 @@ #include "sei.h" #include "deblock.h" +#include <algorithm> #include <string.h> #include <assert.h> #include <stdlib.h> @@ -56,75 +57,7 @@ thread_context::thread_context() { - /* - CtbAddrInRS = 0; - CtbAddrInTS = 0; - - CtbX = 0; - CtbY = 0; - */ - - /* - refIdx0 = refIdx1 = 0; - mvd00 = mvd01 = mvd10 = mvd11 = 0; - merge_flag = 0; - merge_idx = 0; - mvp_lX_flag0 = mvp_lX_flag1 = 0; - inter_pred_idc = 0; - */ - - /* - enum IntraPredMode IntraPredModeC; // chroma intra-prediction mode for current CB - */ - - /* - cu_transquant_bypass_flag = false; - memset(transform_skip_flag,0, 3*sizeof(uint8_t)); - */ - - - //memset(coeffList,0,sizeof(int16_t)*3*32*32); - //memset(coeffPos,0,sizeof(int16_t)*3*32*32); - //memset(nCoeff,0,sizeof(int16_t)*3); - - - - IsCuQpDeltaCoded = false; - CuQpDelta = 0; - - IsCuChromaQpOffsetCoded = false; - CuQpOffsetCb = 0; - CuQpOffsetCr = 0; - - /* - currentQPY = 0; - currentQG_x = 0; - currentQG_y = 0; - lastQPYinPreviousQG = 0; - */ - - /* - qPYPrime = 0; - qPCbPrime = 0; - qPCrPrime = 0; - */ - - /* - memset(&cabac_decoder, 0, sizeof(CABAC_decoder)); - memset(&ctx_model, 0, sizeof(ctx_model)); - */ - - decctx = NULL; - img = NULL; - shdr = NULL; - - imgunit = NULL; - sliceunit = NULL; - - - //memset(this,0,sizeof(thread_context)); - - // There is a interesting issue here. When aligning _coeffBuf to 16 bytes offset with + // There is an interesting issue here. When aligning _coeffBuf to 16 bytes offset with // __attribute__((align(16))), the following statement is optimized away since the // compiler assumes that the pointer would be 16-byte aligned. However, this is not the // case when the structure has been dynamically allocated. In this case, the base can @@ -132,7 +65,7 @@ int offset = ((uintptr_t)_coeffBuf) & 0xf; if (offset == 0) { - coeffBuf = _coeffBuf; // correctly aligned already + coeffBuf = _coeffBuf; } else { coeffBuf = (int16_t *) (((uint8_t *)_coeffBuf) + (16-offset)); @@ -143,14 +76,14 @@ slice_unit::slice_unit(decoder_context* decctx) - : nal(NULL), - shdr(NULL), - imgunit(NULL), + : nal(nullptr), + shdr(nullptr), + imgunit(nullptr), flush_reorder_buffer(false), nThreads(0), first_decoded_CTB_RS(-1), last_decoded_CTB_RS(-1), - thread_contexts(NULL), + thread_contexts(nullptr), ctx(decctx) { state = Unprocessed; @@ -169,19 +102,14 @@ void slice_unit::allocate_thread_contexts(int n) { - assert(thread_contexts==NULL); + assert(thread_contexts==nullptr); thread_contexts = new thread_contextn; nThreadContexts = n; } -image_unit::image_unit() -{ - img=NULL; - role=Invalid; - state=Unprocessed; -} +image_unit::image_unit() = default; image_unit::~image_unit() @@ -204,116 +132,8 @@ decoder_context::decoder_context() { - //memset(ctx, 0, sizeof(decoder_context)); - - // --- parameters --- - - param_sei_check_hash = false; - param_conceal_stream_errors = true; - param_suppress_faulty_pictures = false; - - param_disable_deblocking = false; - param_disable_sao = false; - //param_disable_mc_residual_idct = false; - //param_disable_intra_residual_idct = false; - - // --- processing --- - - param_sps_headers_fd = -1; - param_vps_headers_fd = -1; - param_pps_headers_fd = -1; - param_slice_headers_fd = -1; - param_image_allocation_functions = de265_image::default_image_allocation; - param_image_allocation_userdata = NULL; - - /* - memset(&vps, 0, sizeof(video_parameter_set)*DE265_MAX_VPS_SETS); - memset(&sps, 0, sizeof(seq_parameter_set) *DE265_MAX_SPS_SETS); - memset(&pps, 0, sizeof(pic_parameter_set) *DE265_MAX_PPS_SETS); - memset(&slice,0,sizeof(slice_segment_header)*DE265_MAX_SLICES); - */ - - current_vps = NULL; - current_sps = NULL; - current_pps = NULL; - - //memset(&thread_pool,0,sizeof(struct thread_pool)); - num_worker_threads = 0; - - - // frame-rate - - limit_HighestTid = 6; // decode all temporal layers (up to layer 6) - framerate_ratio = 100; // decode all 100% - - goal_HighestTid = 6; - current_HighestTid = 6; - layer_framerate_ratio = 100; - compute_framedrop_table(); - - - // - - current_image_poc_lsb = 0; - first_decoded_picture = 0; - NoRaslOutputFlag = 0; - HandleCraAsBlaFlag = 0; - FirstAfterEndOfSequenceNAL = 0; - PicOrderCntMsb = 0; - prevPicOrderCntLsb = 0; - prevPicOrderCntMsb = 0; - img = NULL;
View file
libde265-1.0.16.tar.gz/libde265/decctx.h -> libde265-1.0.17.tar.gz/libde265/decctx.h
Changed
@@ -37,11 +37,11 @@ #include <memory> -#define DE265_MAX_VPS_SETS 16 // this is the maximum as defined in the standard -#define DE265_MAX_SPS_SETS 16 // this is the maximum as defined in the standard -#define DE265_MAX_PPS_SETS 64 // this is the maximum as defined in the standard +constexpr int DE265_MAX_VPS_SETS = 16; // this is the maximum as defined in the standard +constexpr int DE265_MAX_SPS_SETS = 16; // this is the maximum as defined in the standard +constexpr int DE265_MAX_PPS_SETS = 64; // this is the maximum as defined in the standard -#define MAX_WARNINGS 20 +constexpr int MAX_WARNINGS = 20; class slice_segment_header; @@ -55,10 +55,10 @@ public: thread_context(); - int CtbAddrInRS; - int CtbAddrInTS; + uint32_t CtbAddrInRS; + uint32_t CtbAddrInTS; - int CtbX, CtbY; + uint16_t CtbX, CtbY; // motion vectors @@ -93,10 +93,10 @@ // quantization - int IsCuQpDeltaCoded; - int CuQpDelta; - int IsCuChromaQpOffsetCoded; - int CuQpOffsetCb, CuQpOffsetCr; + int IsCuQpDeltaCoded = 0; + int CuQpDelta = 0; + int IsCuChromaQpOffsetCoded = 0; + int CuQpOffsetCb = 0, CuQpOffsetCr = 0; int currentQPY; int currentQG_x, currentQG_y; @@ -109,17 +109,16 @@ context_model_table ctx_model; uint8_t StatCoeff4; - decoder_context* decctx; - struct de265_image *img; - slice_segment_header* shdr; + decoder_context* decctx = nullptr; + struct de265_image *img = nullptr; + slice_segment_header* shdr = nullptr; - image_unit* imgunit; - slice_unit* sliceunit; - thread_task* task; // executing thread_task or NULL if not multi-threaded + image_unit* imgunit = nullptr; + slice_unit* sliceunit = nullptr; + thread_task* task; // executing thread_task or nullptr if not multi-threaded -private: - thread_context(const thread_context&); // not allowed - const thread_context& operator=(const thread_context&); // not allowed + thread_context(const thread_context&) = delete; + thread_context& operator=(const thread_context&) = delete; }; @@ -127,16 +126,13 @@ class error_queue { public: - error_queue(); - void add_warning(de265_error warning, bool once); de265_error get_warning(); private: - de265_error warningsMAX_WARNINGS; - int nWarnings; - de265_error warnings_shownMAX_WARNINGS; // warnings that have already occurred - int nWarningsShown; + std::mutex m_mutex; + std::vector<de265_error> warnings; + std::vector<de265_error> warnings_shown; // warnings that have already occurred }; @@ -184,9 +180,8 @@ public: decoder_context* ctx; -private: - slice_unit(const slice_unit&); // not allowed - const slice_unit& operator=(const slice_unit&); // not allowed + slice_unit(const slice_unit&) = delete; + slice_unit& operator=(const slice_unit&) = delete; }; @@ -196,7 +191,7 @@ image_unit(); ~image_unit(); - de265_image* img; + de265_image* img = nullptr; de265_image sao_output; // if SAO is used, this is allocated and used as SAO output buffer std::vector<slice_unit*> slice_units; @@ -209,7 +204,7 @@ } } - return NULL; + return nullptr; } slice_unit* get_prev_slice_segment(slice_unit* s) const { @@ -219,7 +214,7 @@ } } - return NULL; + return nullptr; } slice_unit* get_next_slice_segment(slice_unit* s) const { @@ -229,12 +224,12 @@ } } - return NULL; + return nullptr; } void dump_slices() const { for (size_t i=0; i<slice_units.size(); i++) { - printf("%zu = %p\n",i,slice_unitsi); + printf("%zu = %p\n",i,static_cast<void*>(slice_unitsi)); } } @@ -253,13 +248,13 @@ Unknown, // SPS/PPS available Reference, // will be used as reference Leaf // not a reference picture - } role; + } role = Invalid; enum { Unprocessed, InProgress, Decoded, Dropped // will not be decoded - } state; + } state = Unprocessed; std::vector<thread_task*> tasks; // we are the owner @@ -282,9 +277,9 @@ struct acceleration_functions acceleration; // CPU optimized functions - //virtual /* */ de265_image* get_image(int dpb_index) { return dpb.get_image(dpb_index); } - virtual const de265_image* get_image(int frame_id) const = 0; - virtual bool has_image(int frame_id) const = 0; + //virtual /* */ de265_image* get_image(uint16_t dpb_index) { return dpb.get_image(dpb_index); } + virtual const de265_image* get_image(uint16_t frame_id) const = 0; + virtual bool has_image(uint16_t frame_id) const = 0; }; @@ -298,8 +293,8 @@ void reset(); - bool has_sps(int id) const { return (bool)spsid; } - bool has_pps(int id) const { return (bool)ppsid; } + bool has_sps(int id) const { return spsid != nullptr; } + bool has_pps(int id) const { return ppsid != nullptr; } std::shared_ptr<const seq_parameter_set> get_shared_sps(int id) { return spsid; } std::shared_ptr<const pic_parameter_set> get_shared_pps(int id) { return ppsid; } @@ -341,24 +336,24 @@ // --- parameters --- - bool param_sei_check_hash; - bool param_conceal_stream_errors; - bool param_suppress_faulty_pictures; + bool param_sei_check_hash = false; + bool param_conceal_stream_errors = true; + bool param_suppress_faulty_pictures = false; - int param_sps_headers_fd; - int param_vps_headers_fd; - int param_pps_headers_fd; - int param_slice_headers_fd;
View file
libde265-1.0.16.tar.gz/libde265/dpb.cc -> libde265-1.0.17.tar.gz/libde265/dpb.cc
Changed
@@ -24,16 +24,6 @@ #include <assert.h> -#define DPB_DEFAULT_MAX_IMAGES 30 - - -decoded_picture_buffer::decoded_picture_buffer() -{ - max_images_in_DPB = DPB_DEFAULT_MAX_IMAGES; - norm_images_in_DPB = DPB_DEFAULT_MAX_IMAGES; -} - - decoded_picture_buffer::~decoded_picture_buffer() { for (size_t i=0;i<dpb.size();i++) @@ -73,7 +63,7 @@ } -int decoded_picture_buffer::DPB_index_of_picture_with_POC(int poc, int currentID, bool preferLongTerm) const +int decoded_picture_buffer::DPB_index_of_picture_with_POC(int poc, uint32_t currentID, bool preferLongTerm) const { logdebug(LogHeaders,"DPB_index_of_picture_with_POC POC=%d\n",poc); @@ -102,7 +92,7 @@ } -int decoded_picture_buffer::DPB_index_of_picture_with_LSB(int lsb, int currentID, bool preferLongTerm) const +int decoded_picture_buffer::DPB_index_of_picture_with_LSB(int lsb, uint32_t currentID, bool preferLongTerm) const { logdebug(LogHeaders,"get access to picture with LSB %d from DPB\n",lsb); @@ -128,7 +118,7 @@ } -int decoded_picture_buffer::DPB_index_of_picture_with_ID(int id) const +int decoded_picture_buffer::DPB_index_of_picture_with_ID(uint32_t id) const { logdebug(LogHeaders,"get access to picture with ID %d from DPB\n",id); @@ -210,7 +200,9 @@ // --- search for a free slot in the DPB --- - int free_image_buffer_idx = -DE265_ERROR_IMAGE_BUFFER_FULL; + uint8_t free_image_buffer_idx = 0; + uint8_t err = DE265_ERROR_IMAGE_BUFFER_FULL; + for (size_t i=0;i<dpb.size();i++) { if (dpbi->can_be_released()) { dpbi->release(); /* TODO: this is surely not the best place to free the image, but @@ -218,6 +210,7 @@ would break the API compatibility. */ free_image_buffer_idx = i; + err = DE265_OK; break; } } @@ -237,16 +230,20 @@ // create a new image slot if no empty slot remaining - if (free_image_buffer_idx == -DE265_ERROR_IMAGE_BUFFER_FULL) { - free_image_buffer_idx = dpb.size(); + if (err == DE265_ERROR_IMAGE_BUFFER_FULL) { + size_t dpb_size = dpb.size(); + assert(dpb_size < 255); + + free_image_buffer_idx = static_cast<uint8_t>(dpb_size); dpb.push_back(new de265_image); + err = DE265_OK; } // --- allocate new image --- - if (free_image_buffer_idx<0) { - return free_image_buffer_idx; + if (err) { + return -err; } de265_image* img = dpbfree_image_buffer_idx; @@ -263,7 +260,7 @@ default: chroma = de265_chroma_420; assert(0); break; // should never happen } - de265_error error = img->alloc_image(w,h, chroma, sps, true, decctx, /*NULL,*/ pts, user_data, isOutputImage); + de265_error error = img->alloc_image(w,h, chroma, sps, true, decctx, /*nullptr,*/ pts, user_data, isOutputImage); if (error) { return -error; } @@ -280,7 +277,7 @@ loginfo(LogDPB, "DPB output queue: "); - for (int i=0;i<image_output_queue.size();i++) { + for (size_t i=0;i<image_output_queue.size();i++) { loginfo(LogDPB, "*%d ", image_output_queuei->PicOrderCntVal); } loginfo(LogDPB,"*\n");
View file
libde265-1.0.16.tar.gz/libde265/dpb.h -> libde265-1.0.17.tar.gz/libde265/dpb.h
Changed
@@ -31,11 +31,11 @@ class decoded_picture_buffer { public: - decoded_picture_buffer(); + decoded_picture_buffer() = default; ~decoded_picture_buffer(); - void set_max_size_of_DPB(int n) { max_images_in_DPB=n; } - void set_norm_size_of_DPB(int n) { norm_images_in_DPB=n; } + void set_max_size_of_DPB(uint8_t n) { max_images_in_DPB=n; } + void set_norm_size_of_DPB(uint8_t n) { norm_images_in_DPB=n; } /* Alloc a new image in the DPB and return its index. If there is no space for a new image, returns the negative value of an de265_error. @@ -52,24 +52,24 @@ /* Remove all pictures from DPB and queues. Decoding should be stopped while calling this. */ void clear(); - int size() const { return dpb.size(); } + size_t size() const { return dpb.size(); } /* Raw access to the images. */ - /* */ de265_image* get_image(int index) { - if (index>=dpb.size()) return NULL; + /* */ de265_image* get_image(uint16_t index) { + if (index>=dpb.size()) return nullptr; return dpbindex; } - const de265_image* get_image(int index) const { - if (index>=dpb.size()) return NULL; + const de265_image* get_image(uint16_t index) const { + if (index>=dpb.size()) return nullptr; return dpbindex; } /* Search DPB for the slot index of a specific picture. */ - int DPB_index_of_picture_with_POC(int poc, int currentID, bool preferLongTerm=false) const; - int DPB_index_of_picture_with_LSB(int lsb, int currentID, bool preferLongTerm=false) const; - int DPB_index_of_picture_with_ID (int id) const; + int DPB_index_of_picture_with_POC(int poc, uint32_t currentID, bool preferLongTerm=false) const; + int DPB_index_of_picture_with_LSB(int lsb, uint32_t currentID, bool preferLongTerm=false) const; + int DPB_index_of_picture_with_ID (uint32_t id) const; // --- reorder buffer --- @@ -104,17 +104,18 @@ void log_dpb_queues() const; private: - int max_images_in_DPB; - int norm_images_in_DPB; + static const int DPB_DEFAULT_MAX_IMAGES = 30; + + uint8_t max_images_in_DPB = DPB_DEFAULT_MAX_IMAGES; + uint8_t norm_images_in_DPB = DPB_DEFAULT_MAX_IMAGES; std::vector<struct de265_image*> dpb; // decoded picture buffer std::vector<struct de265_image*> reorder_output_queue; std::deque<struct de265_image*> image_output_queue; -private: - decoded_picture_buffer(const decoded_picture_buffer&); // no copy - decoded_picture_buffer& operator=(const decoded_picture_buffer&); // no copy + decoded_picture_buffer(const decoded_picture_buffer&) = delete; + decoded_picture_buffer& operator=(const decoded_picture_buffer&) = delete; }; #endif
View file
libde265-1.0.16.tar.gz/libde265/en265.cc -> libde265-1.0.17.tar.gz/libde265/en265.cc
Changed
@@ -32,14 +32,14 @@ } encoder_context* ectx = new encoder_context(); - return (en265_encoder_context*)ectx; + return reinterpret_cast<en265_encoder_context*>(ectx); } LIBDE265_API de265_error en265_free_encoder(en265_encoder_context* e) { assert(e); - encoder_context* ectx = (encoder_context*)e; + encoder_context* ectx = reinterpret_cast<encoder_context*>(e); delete ectx; return de265_free(); @@ -54,7 +54,7 @@ void* alloc_userdata) { assert(e); - encoder_context* ectx = (encoder_context*)e; + encoder_context* ectx = reinterpret_cast<encoder_context*>(e); ectx->param_image_allocation_userdata = alloc_userdata; ectx->release_func = release_func; @@ -68,7 +68,7 @@ int* argc, char** argv) { assert(e); - encoder_context* ectx = (encoder_context*)e; + encoder_context* ectx = reinterpret_cast<encoder_context*>(e); //if (!ectx->params_config.parse_command_line_params(argc,argv, &ectx->params, true)) { int first_idx=1; @@ -83,7 +83,7 @@ LIBDE265_API void en265_show_parameters(en265_encoder_context* e) { assert(e); - encoder_context* ectx = (encoder_context*)e; + encoder_context* ectx = reinterpret_cast<encoder_context*>(e); //ectx->params_config.show_params(&ectx->params); @@ -94,7 +94,7 @@ LIBDE265_API const char** en265_list_parameters(en265_encoder_context* e) { assert(e); - encoder_context* ectx = (encoder_context*)e; + encoder_context* ectx = reinterpret_cast<encoder_context*>(e); return ectx->params_config.get_parameter_string_table(); } @@ -104,7 +104,7 @@ const char* parametername) { assert(e); - encoder_context* ectx = (encoder_context*)e; + encoder_context* ectx = reinterpret_cast<encoder_context*>(e); return ectx->params_config.get_parameter_type(parametername); } @@ -114,7 +114,7 @@ const char* param,int value) { assert(e); - encoder_context* ectx = (encoder_context*)e; + encoder_context* ectx = reinterpret_cast<encoder_context*>(e); return ectx->params_config.set_bool(param,value) ? DE265_OK : DE265_ERROR_PARAMETER_PARSING; } @@ -124,7 +124,7 @@ const char* param,int value) { assert(e); - encoder_context* ectx = (encoder_context*)e; + encoder_context* ectx = reinterpret_cast<encoder_context*>(e); return ectx->params_config.set_int(param,value) ? DE265_OK : DE265_ERROR_PARAMETER_PARSING; } @@ -133,7 +133,7 @@ const char* param,const char* value) { assert(e); - encoder_context* ectx = (encoder_context*)e; + encoder_context* ectx = reinterpret_cast<encoder_context*>(e); return ectx->params_config.set_string(param,value) ? DE265_OK : DE265_ERROR_PARAMETER_PARSING; } @@ -142,7 +142,7 @@ const char* param,const char* value) { assert(e); - encoder_context* ectx = (encoder_context*)e; + encoder_context* ectx = reinterpret_cast<encoder_context*>(e); return ectx->params_config.set_choice(param,value) ? DE265_OK : DE265_ERROR_PARAMETER_PARSING; } @@ -152,7 +152,7 @@ const char* parametername) { assert(e); - encoder_context* ectx = (encoder_context*)e; + encoder_context* ectx = reinterpret_cast<encoder_context*>(e); return ectx->params_config.get_parameter_choices_table(parametername); } @@ -165,7 +165,7 @@ LIBDE265_API de265_error en265_start_encoder(en265_encoder_context* e, int number_of_threads) { assert(e); - encoder_context* ectx = (encoder_context*)e; + encoder_context* ectx = reinterpret_cast<encoder_context*>(e); ectx->start_encoder(); @@ -178,7 +178,7 @@ de265_PTS pts, void* image_userdata) { assert(e); - encoder_context* ectx = (encoder_context*)e; + encoder_context* ectx = reinterpret_cast<encoder_context*>(e); de265_image* img = new de265_image; if (img->alloc_image(width,height,de265_chroma_420, NULL, false, @@ -218,7 +218,7 @@ struct de265_image* img) { assert(e); - encoder_context* ectx = (encoder_context*)e; + encoder_context* ectx = reinterpret_cast<encoder_context*>(e); ectx->sop->insert_new_input_image(img); return DE265_OK; @@ -228,7 +228,7 @@ LIBDE265_API de265_error en265_push_eof(en265_encoder_context* e) { assert(e); - encoder_context* ectx = (encoder_context*)e; + encoder_context* ectx = reinterpret_cast<encoder_context*>(e); ectx->sop->insert_end_of_stream(); return DE265_OK; @@ -258,7 +258,7 @@ LIBDE265_API de265_error en265_encode(en265_encoder_context* e) { assert(e); - encoder_context* ectx = (encoder_context*)e; + encoder_context* ectx = reinterpret_cast<encoder_context*>(e); while (ectx->picbuf.have_more_frames_to_encode()) { @@ -278,7 +278,7 @@ LIBDE265_API struct en265_packet* en265_get_packet(en265_encoder_context* e, int timeout_ms) { assert(e); - encoder_context* ectx = (encoder_context*)e; + encoder_context* ectx = reinterpret_cast<encoder_context*>(e); assert(timeout_ms==0); // TODO: blocking not implemented yet @@ -296,7 +296,7 @@ LIBDE265_API void en265_free_packet(en265_encoder_context* e, struct en265_packet* pck) { assert(e); - encoder_context* ectx = (encoder_context*)e; + encoder_context* ectx = reinterpret_cast<encoder_context*>(e); // Do not delete images here. They are owned by the EncPicBuf. //delete pck->input_image; @@ -315,7 +315,7 @@ LIBDE265_API int en265_number_of_queued_packets(en265_encoder_context* e) { assert(e); - encoder_context* ectx = (encoder_context*)e; + encoder_context* ectx = reinterpret_cast<encoder_context*>(e); return ectx->output_packets.size(); }
View file
libde265-1.0.16.tar.gz/libde265/encoder/CMakeLists.txt -> libde265-1.0.17.tar.gz/libde265/encoder/CMakeLists.txt
Changed
@@ -1,4 +1,5 @@ set (encoder_sources + configparam.h configparam.cc encoder-core.cc encoder-core.h encoder-types.h encoder-types.cc encoder-params.h encoder-params.cc
View file
libde265-1.0.16.tar.gz/libde265/encoder/algo/algo.cc -> libde265-1.0.17.tar.gz/libde265/encoder/algo/algo.cc
Changed
@@ -52,7 +52,7 @@ fprintf(stdout, ">%s(", name()); vfprintf(stdout, option, va); - fprintf(stdout, ") %d;%d %dx%d %p\n",node->x,node->y,1<<node->log2Size,1<<node->log2Size,node); + fprintf(stdout, ") %d;%d %dx%d %p\n",node->x,node->y,1<<node->log2Size,1<<node->log2Size,static_cast<void*>(node)); } } @@ -69,7 +69,7 @@ fprintf(stdout, "<%s(", name()); vfprintf(stdout, fmt, va); - fprintf(stdout, ") <- %p\n",resultNode); + fprintf(stdout, ") <- %p\n",static_cast<void*>(resultNode)); } descendLevel--;
View file
libde265-1.0.16.tar.gz/libde265/encoder/algo/cb-interpartmode.h -> libde265-1.0.17.tar.gz/libde265/encoder/algo/cb-interpartmode.h
Changed
@@ -32,7 +32,7 @@ #include "libde265/fallback-dct.h" #include "libde265/quality.h" #include "libde265/fallback.h" -#include "libde265/configparam.h" +#include "libde265/encoder/configparam.h" #include "libde265/encoder/algo/algo.h" #include "libde265/encoder/algo/tb-intrapredmode.h"
View file
libde265-1.0.16.tar.gz/libde265/encoder/algo/cb-intra-inter.h -> libde265-1.0.17.tar.gz/libde265/encoder/algo/cb-intra-inter.h
Changed
@@ -32,7 +32,7 @@ #include "libde265/fallback-dct.h" #include "libde265/quality.h" #include "libde265/fallback.h" -#include "libde265/configparam.h" +#include "libde265/encoder/configparam.h" #include "libde265/encoder/algo/algo.h" #include "libde265/encoder/algo/tb-intrapredmode.h"
View file
libde265-1.0.16.tar.gz/libde265/encoder/algo/cb-intrapartmode.h -> libde265-1.0.17.tar.gz/libde265/encoder/algo/cb-intrapartmode.h
Changed
@@ -33,7 +33,7 @@ #include "libde265/fallback-dct.h" #include "libde265/quality.h" #include "libde265/fallback.h" -#include "libde265/configparam.h" +#include "libde265/encoder/configparam.h" #include "libde265/encoder/algo/algo.h" #include "libde265/encoder/algo/tb-intrapredmode.h"
View file
libde265-1.0.16.tar.gz/libde265/encoder/algo/cb-mergeindex.h -> libde265-1.0.17.tar.gz/libde265/encoder/algo/cb-mergeindex.h
Changed
@@ -32,7 +32,7 @@ #include "libde265/fallback-dct.h" #include "libde265/quality.h" #include "libde265/fallback.h" -#include "libde265/configparam.h" +#include "libde265/encoder/configparam.h" #include "libde265/encoder/algo/algo.h" #include "libde265/encoder/algo/tb-split.h"
View file
libde265-1.0.16.tar.gz/libde265/encoder/algo/cb-skip.h -> libde265-1.0.17.tar.gz/libde265/encoder/algo/cb-skip.h
Changed
@@ -32,7 +32,7 @@ #include "libde265/fallback-dct.h" #include "libde265/quality.h" #include "libde265/fallback.h" -#include "libde265/configparam.h" +#include "libde265/encoder/configparam.h" #include "libde265/encoder/algo/algo.h" #include "libde265/encoder/algo/cb-mergeindex.h"
View file
libde265-1.0.16.tar.gz/libde265/encoder/algo/cb-split.h -> libde265-1.0.17.tar.gz/libde265/encoder/algo/cb-split.h
Changed
@@ -32,7 +32,7 @@ #include "libde265/fallback-dct.h" #include "libde265/quality.h" #include "libde265/fallback.h" -#include "libde265/configparam.h" +#include "libde265/encoder/configparam.h" #include "libde265/encoder/algo/algo.h" #include "libde265/encoder/algo/tb-intrapredmode.h"
View file
libde265-1.0.16.tar.gz/libde265/encoder/algo/coding-options.h -> libde265-1.0.17.tar.gz/libde265/encoder/algo/coding-options.h
Changed
@@ -104,7 +104,7 @@ { public: CodingOption() { - mParent = nullptr; + mParent = NULL; mOptionIdx = 0; }
View file
libde265-1.0.16.tar.gz/libde265/encoder/algo/ctb-qscale.h -> libde265-1.0.17.tar.gz/libde265/encoder/algo/ctb-qscale.h
Changed
@@ -33,7 +33,7 @@ #include "libde265/fallback-dct.h" #include "libde265/quality.h" #include "libde265/fallback.h" -#include "libde265/configparam.h" +#include "libde265/encoder/configparam.h" #include "libde265/encoder/algo/cb-split.h"
View file
libde265-1.0.16.tar.gz/libde265/encoder/algo/pb-mv.h -> libde265-1.0.17.tar.gz/libde265/encoder/algo/pb-mv.h
Changed
@@ -32,7 +32,7 @@ #include "libde265/fallback-dct.h" #include "libde265/quality.h" #include "libde265/fallback.h" -#include "libde265/configparam.h" +#include "libde265/encoder/configparam.h" #include "libde265/encoder/algo/algo.h"
View file
libde265-1.0.16.tar.gz/libde265/encoder/algo/tb-intrapredmode.cc -> libde265-1.0.17.tar.gz/libde265/encoder/algo/tb-intrapredmode.cc
Changed
@@ -271,7 +271,7 @@ } assert(false); - return nullptr; + return NULL; } @@ -390,7 +390,7 @@ } assert(false); - return nullptr; + return NULL; } static bool sortDistortions(std::pair<enum IntraPredMode,float> i, @@ -528,5 +528,5 @@ } assert(false); - return nullptr; + return NULL; }
View file
libde265-1.0.16.tar.gz/libde265/encoder/algo/tb-intrapredmode.h -> libde265-1.0.17.tar.gz/libde265/encoder/algo/tb-intrapredmode.h
Changed
@@ -34,7 +34,7 @@ #include "libde265/fallback-dct.h" #include "libde265/quality.h" #include "libde265/fallback.h" -#include "libde265/configparam.h" +#include "libde265/encoder/configparam.h" // ========== TB intra prediction mode ==========
View file
libde265-1.0.16.tar.gz/libde265/encoder/algo/tb-rateestim.h -> libde265-1.0.17.tar.gz/libde265/encoder/algo/tb-rateestim.h
Changed
@@ -34,7 +34,7 @@ #include "libde265/fallback-dct.h" #include "libde265/quality.h" #include "libde265/fallback.h" -#include "libde265/configparam.h" +#include "libde265/encoder/configparam.h" enum ALGO_TB_RateEstimation {
View file
libde265-1.0.16.tar.gz/libde265/encoder/algo/tb-split.h -> libde265-1.0.17.tar.gz/libde265/encoder/algo/tb-split.h
Changed
@@ -34,7 +34,7 @@ #include "libde265/fallback-dct.h" #include "libde265/quality.h" #include "libde265/fallback.h" -#include "libde265/configparam.h" +#include "libde265/encoder/configparam.h" #include "libde265/encoder/algo/tb-intrapredmode.h" #include "libde265/encoder/algo/tb-rateestim.h"
View file
libde265-1.0.16.tar.gz/libde265/encoder/algo/tb-transform.h -> libde265-1.0.17.tar.gz/libde265/encoder/algo/tb-transform.h
Changed
@@ -34,7 +34,7 @@ #include "libde265/fallback-dct.h" #include "libde265/quality.h" #include "libde265/fallback.h" -#include "libde265/configparam.h" +#include "libde265/encoder/configparam.h" #include "libde265/encoder/algo/tb-intrapredmode.h" #include "libde265/encoder/algo/tb-rateestim.h"
View file
libde265-1.0.17.tar.gz/libde265/encoder/configparam.cc
Added
@@ -0,0 +1,471 @@ +/* + * H.265 video codec. + * Copyright (c) 2013-2014 struktur AG, Dirk Farin <farin@struktur.de> + * + * Authors: struktur AG, Dirk Farin <farin@struktur.de> + * + * This file is part of libde265. + * + * libde265 is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * libde265 is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with libde265. If not, see <http://www.gnu.org/licenses/>. + */ + +#include "configparam.h" + +#include <string.h> +#include <ctype.h> +#include <sstream> +#include <iomanip> +#include <iostream> +#include <algorithm> +#include <typeinfo> + +#ifndef RTTI_ENABLED +#error "Need to compile with RTTI enabled." +#endif + +static void remove_option(int* argc,char** argv,int idx, int n=1) +{ + for (int i=idx+n;i<*argc;i++) { + argvi-n = argvi; + } + + *argc-=n; +} + + +bool option_string::processCmdLineArguments(char** argv, int* argc, int idx) +{ + if (argv==NULL) { return false; } + if (idx >= *argc) { return false; } + + value = argvidx; + value_set = true; + + remove_option(argc,argv,idx,1); + + return true; +} + + +void option_int::set_range(int mini,int maxi) +{ + have_low_limit =true; + have_high_limit=true; + low_limit =mini; + high_limit=maxi; +} + +std::string option_int::getTypeDescr() const +{ + std::stringstream sstr; + sstr << "(int)"; + + if (have_low_limit || have_high_limit) { sstr << " "; } + if (have_low_limit) { sstr << low_limit << " <= "; } + if (have_low_limit || have_high_limit) { sstr << "x"; } + if (have_high_limit) { sstr << " <= " << high_limit; } + + if (!valid_values_set.empty()) { + sstr << " {"; + bool first=true; + for (int v : valid_values_set) { + if (!first) sstr << ","; else first=false; + sstr << v; + } + sstr << "}"; + } + + return sstr.str(); +} + +bool option_int::processCmdLineArguments(char** argv, int* argc, int idx) +{ + if (argv==NULL) { return false; } + if (idx >= *argc) { return false; } + + int v = atoi(argvidx); + if (!is_valid(v)) { return false; } + + value = v; + value_set = true; + + remove_option(argc,argv,idx,1); + + return true; +} + +bool option_int::is_valid(int v) const +{ + if (have_low_limit && v<low_limit) { return false; } + if (have_high_limit && v>high_limit) { return false; } + + if (!valid_values_set.empty()) { + auto iter = std::find(valid_values_set.begin(), valid_values_set.end(), v); + if (iter==valid_values_set.end()) { return false; } + } + + return true; +} + +std::string option_int::get_default_string() const +{ + std::stringstream sstr; + sstr << default_value; + return sstr.str(); +} + + +std::string choice_option_base::getTypeDescr() const +{ + std::vector<std::string> choices = get_choice_names(); + + std::stringstream sstr; + sstr << "{"; + + bool first=true; + for (const auto& c : choices) { + if (first) { first=false; } + else { sstr << ","; } + + sstr << c; + } + + sstr << "}"; + return sstr.str(); +} + + +bool choice_option_base::processCmdLineArguments(char** argv, int* argc, int idx) +{ + if (argv==NULL) { return false; } + if (idx >= *argc) { return false; } + + std::string value = argvidx; + + std::cout << "set " << value << "\n"; + bool success = set_value(value); + std::cout << "success " << success << "\n"; + + remove_option(argc,argv,idx,1); + + return success; +} + + +static char* fill_strings_into_memory(const std::vector<std::string>& strings_list) +{ + // calculate memory requirement + + int totalStringLengths = 0; + for (const auto& str : strings_list) { + totalStringLengths += str.length() +1; // +1 for null termination + } + + int numStrings = strings_list.size(); + + int pointersSize = (numStrings+1) * sizeof(const char*); + + char* memory = new charpointersSize + totalStringLengths; + + + // copy strings to memory area + + char* stringPtr = memory + (numStrings+1) * sizeof(const char*); + const char** tablePtr = (const char**)memory; + + for (const auto& str : strings_list) { + *tablePtr++ = stringPtr; + + strcpy(stringPtr, str.c_str()); + stringPtr += str.length()+1; + } + + *tablePtr = NULL; + + return memory; +} + +
View file
libde265-1.0.17.tar.gz/libde265/encoder/configparam.h
Added
@@ -0,0 +1,386 @@ +/* + * H.265 video codec. + * Copyright (c) 2013-2014 struktur AG, Dirk Farin <farin@struktur.de> + * + * Authors: struktur AG, Dirk Farin <farin@struktur.de> + * + * This file is part of libde265. + * + * libde265 is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * libde265 is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with libde265. If not, see <http://www.gnu.org/licenses/>. + */ + +#ifndef CONFIG_PARAM_H +#define CONFIG_PARAM_H + +#include "en265.h" +#include "util.h" + +#include <climits> +#include <vector> +#include <string> +#include <stddef.h> +#include <assert.h> + + +/* Notes: probably best to keep cmd-line-options here. So it will be: + - automatically consistent even when having different combinations of algorithms + - no other place to edit + - if needed, one can still override it at another place + */ + +// TODO: set a stack of default prefixes in config_parameters, such that all options added +// will receive this namespace prefix. + +// TODO: add the possibility to remove long options again, i.e., not use the default id name +class option_base +{ + public: + option_base() : mShortOption(0), mLongOption(NULL) { } + option_base(const char* name) : mIDName(name), mShortOption(0), mLongOption(NULL) { } + virtual ~option_base() { } + + + // --- option identifier --- + + void set_ID(const char* name) { mIDName=name; } + void add_namespace_prefix(std::string prefix) { mPrefix = prefix + ":" + mPrefix; } + + std::string get_name() const { return mPrefix + mIDName; } + + + // --- description --- + + void set_description(std::string descr) { mDescription = descr; } + std::string get_description() const { return mDescription; } + bool has_description() const { return !mDescription.empty(); } + + + // --- value --- + + virtual bool is_defined() const = 0; + bool is_undefined() const { return !is_defined(); } + + virtual bool has_default() const = 0; + + + // --- command line options ---- + + void set_cmd_line_options(const char* long_option, char short_option = 0) + { + mShortOption = short_option; + mLongOption = long_option; + } + + void set_short_option(char short_option) { mShortOption=short_option; } + + void unsetCmdLineOption() + { + mShortOption = 0; + mLongOption = NULL; + } + + bool hasShortOption() const { return mShortOption!=0; } + char getShortOption() const { return mShortOption; } + bool hasLongOption() const { return true; } //mLongOption!=NULL; } + std::string getLongOption() const { return mLongOption ? std::string(mLongOption) : get_name(); } + + virtual LIBDE265_API bool processCmdLineArguments(char** argv, int* argc, int idx) { return false; } + + + + virtual std::string getTypeDescr() const = 0; + + virtual std::string get_default_string() const { return "N/A"; } + + private: + std::string mPrefix; + std::string mIDName; + + std::string mDescription; + + char mShortOption; + const char* mLongOption; +}; + + + +class option_bool : public option_base +{ +public: + option_bool() : value_set(false), default_set(false) { } + + operator bool() const { + assert(value_set || default_set); + return value_set ? value : default_value; + } + + virtual bool is_defined() const { return value_set || default_set; } + virtual bool has_default() const { return default_set; } + + void set_default(bool v) { default_value=v; default_set=true; } + virtual std::string get_default_string() const { return default_value ? "true":"false"; } + + virtual std::string getTypeDescr() const { return "(boolean)"; } + virtual LIBDE265_API bool processCmdLineArguments(char** argv, int* argc, int idx) { set(true); return true; } + + bool set(bool v) { value_set=true; value=v; return true; } + + private: + bool value_set; + bool value; + + bool default_set; + bool default_value; +}; + + +class option_string : public option_base +{ +public: + option_string() : value_set(false), default_set(false) { } + + const option_string& operator=(std::string v) { value=v; value_set=true; return *this; } + + operator std::string() const { return get(); } + std::string get() const { + assert(value_set || default_set); + return value_set ? value : default_value; + } + + virtual bool is_defined() const { return value_set || default_set; } + virtual bool has_default() const { return default_set; } + + void set_default(std::string v) { default_value=v; default_set=true; } + virtual LIBDE265_API std::string get_default_string() const { return default_value; } + + virtual LIBDE265_API std::string getTypeDescr() const { return "(string)"; } + virtual LIBDE265_API bool processCmdLineArguments(char** argv, int* argc, int idx); + + bool set(std::string v) { value_set=true; value=v; return true; } + + private: + bool value_set; + std::string value; + + bool default_set; + std::string default_value; +}; + + +class option_int : public option_base +{ +public: + option_int() : value_set(false), default_set(false), + have_low_limit(false), have_high_limit(false) { } + + void set_minimum(int mini) { have_low_limit =true; low_limit =mini; } + void set_maximum(int maxi) { have_high_limit=true; high_limit=maxi; } + void set_range(int mini,int maxi); + void set_valid_values(const std::vector<int>& v) { valid_values_set = v; } + + const option_int& operator=(int v) { value=v; value_set=true; return *this; } + + int operator() () const { + assert(value_set || default_set); + return value_set ? value : default_value; + } + operator int() const { return operator()(); } +
View file
libde265-1.0.16.tar.gz/libde265/encoder/encoder-context.h -> libde265-1.0.17.tar.gz/libde265/encoder/encoder-context.h
Changed
@@ -41,11 +41,11 @@ encoder_context(); ~encoder_context(); - virtual const de265_image* get_image(int frame_id) const { + virtual const de265_image* get_image(uint16_t frame_id) const { return picbuf.get_picture(frame_id)->reconstruction; } - virtual bool has_image(int frame_id) const { + virtual bool has_image(uint16_t frame_id) const { return picbuf.has_picture(frame_id); }
View file
libde265-1.0.16.tar.gz/libde265/encoder/encoder-core.h -> libde265-1.0.17.tar.gz/libde265/encoder/encoder-core.h
Changed
@@ -33,7 +33,7 @@ #include "libde265/fallback-dct.h" #include "libde265/quality.h" #include "libde265/fallback.h" -#include "libde265/configparam.h" +#include "libde265/encoder/configparam.h" #include "libde265/encoder/algo/tb-intrapredmode.h" #include "libde265/encoder/algo/tb-transform.h"
View file
libde265-1.0.16.tar.gz/libde265/encoder/encoder-motion.cc -> libde265-1.0.17.tar.gz/libde265/encoder/encoder-motion.cc
Changed
@@ -73,7 +73,7 @@ mergeCandListi.predFlag1 && nPbW+nPbH==12) { - mergeCandListi.refIdx1 = -1; + mergeCandListi.refIdx1 = 0; mergeCandListi.predFlag1 = 0; } }
View file
libde265-1.0.16.tar.gz/libde265/encoder/encoder-syntax.cc -> libde265-1.0.17.tar.gz/libde265/encoder/encoder-syntax.cc
Changed
@@ -1431,9 +1431,9 @@ /* enum InterPredIdc - PRED_L0=0, - PRED_L1=1, - PRED_BI=2 + InterPredIdc::PRED_L0=0, + InterPredIdc::PRED_L1=1, + InterPredIdc::PRED_BI=2 */ } }
View file
libde265-1.0.16.tar.gz/libde265/encoder/encpicbuf.cc -> libde265-1.0.17.tar.gz/libde265/encoder/encpicbuf.cc
Changed
@@ -200,30 +200,22 @@ // first, mark all images unused -#ifdef FOR_LOOP_AUTO_SUPPORT - FOR_LOOP(auto, imgdata, mImages) { -#else - FOR_LOOP(image_data *, imgdata, mImages) { -#endif + for (auto imgdata : mImages) { imgdata->mark_used = false; } // mark all images that will be used later - FOR_LOOP(int, f, data->ref0) { get_picture(f)->mark_used=true; } - FOR_LOOP(int, f, data->ref1) { get_picture(f)->mark_used=true; } - FOR_LOOP(int, f, data->longterm) { get_picture(f)->mark_used=true; } - FOR_LOOP(int, f, data->keep) { get_picture(f)->mark_used=true; } + for (int f : data->ref0) { get_picture(f)->mark_used=true; } + for (int f : data->ref1) { get_picture(f)->mark_used=true; } + for (int f : data->longterm) { get_picture(f)->mark_used=true; } + for (int f : data->keep) { get_picture(f)->mark_used=true; } data->mark_used=true; // copy over all images that we still keep std::deque<image_data*> newImageSet; -#ifdef FOR_LOOP_AUTO_SUPPORT - FOR_LOOP(auto, imgdata, mImages) { -#else - FOR_LOOP(image_data *, imgdata, mImages) { -#endif + for (auto imgdata : mImages) { if (imgdata->mark_used || imgdata->is_in_output_queue) { imgdata->reconstruction->PicState = UsedForShortTermReference; // TODO: this is only a hack
View file
libde265-1.0.16.tar.gz/libde265/encoder/sop.h -> libde265-1.0.17.tar.gz/libde265/encoder/sop.h
Changed
@@ -23,7 +23,7 @@ #include "libde265/image.h" #include "libde265/sps.h" -#include "libde265/configparam.h" +#include "libde265/encoder/configparam.h" //#include "libde265/encoder/encoder-context.h" #include "libde265/encoder/encpicbuf.h"
View file
libde265-1.0.16.tar.gz/libde265/fallback-dct.cc -> libde265-1.0.17.tar.gz/libde265/fallback-dct.cc
Changed
@@ -30,6 +30,7 @@ #include <algorithm> +#if 0 static void printMatrix(const char* name, const int16_t* v, int n) { printf("--- %s ---\n",name); @@ -40,7 +41,7 @@ printf("\n"); } } - +#endif void transform_skip_8_fallback(uint8_t *dst, const int16_t *coeffs, ptrdiff_t stride) @@ -84,7 +85,7 @@ for (int y=0;y<nT;y++) for (int x=0;x<nT;x++) { - int32_t c = coeffsx+y*nT << tsShift; + int32_t c = (int32_t)((uint32_t)coeffsx+y*nT << tsShift); // C++ up to C++17 treats left-shift of signed values as UB residualx+y*nT = (c + rnd) >> bdShift; } } @@ -102,7 +103,7 @@ int32_t sum = 0; for (int y=0;y<nT;y++) { - int c = coeffsx+y*nT << tsShift; + int32_t c = (int32_t)((uint32_t)coeffsx+y*nT << tsShift); sum += (c+offset)>>bdShift2; dsty*stride+x = Clip1_8bit(dsty*stride+x + sum); @@ -122,7 +123,7 @@ int32_t sum = 0; for (int x=0;x<nT;x++) { - int c = coeffsx+y*nT << tsShift; + int32_t c = (int32_t)((uint32_t)coeffsx+y*nT << tsShift); sum += (c+offset)>>bdShift2; dsty*stride+x = Clip1_8bit(dsty*stride+x + sum); @@ -190,7 +191,7 @@ for (int x=0;x<nT;x++) { int sum=0; for (int y=0;y<nT;y++) { - int c = coeffsx+y*nT << tsShift; + int32_t c = (int32_t)((uint32_t)coeffsx+y*nT << tsShift); sum += (c+rnd)>>bdShift; residualy*nT+x = sum; } @@ -205,7 +206,7 @@ for (int y=0;y<nT;y++) { int sum=0; for (int x=0;x<nT;x++) { - int c = coeffsx+y*nT << tsShift; + int32_t c = (int32_t)((uint32_t)coeffsx+y*nT << tsShift); sum += (c+rnd)>>bdShift; residualy*nT+x = sum; } @@ -237,8 +238,6 @@ void transform_bypass_16_fallback(uint16_t *dst, const int16_t *coeffs, int nT, ptrdiff_t stride, int bit_depth) { - int bdShift2 = 20-bit_depth; - for (int y=0;y<nT;y++) for (int x=0;x<nT;x++) { int32_t c = coeffsx+y*nT;
View file
libde265-1.0.16.tar.gz/libde265/fallback-motion.cc -> libde265-1.0.17.tar.gz/libde265/fallback-motion.cc
Changed
@@ -79,7 +79,7 @@ { assert(log2WD>=1); // TODO - const int rnd = ((o1+o2+1) << log2WD); + const int rnd = static_cast<int>(static_cast<unsigned int>(o1+o2+1) << log2WD); for (int y=0;y<height;y++) { const int16_t* in1 = &src1y*srcstride; @@ -212,7 +212,7 @@ { assert(log2WD>=1); // TODO - const int rnd = ((o1+o2+1) << log2WD); + const int rnd = static_cast<int>(static_cast<unsigned int>(o1+o2+1) << log2WD); for (int y=0;y<height;y++) { const int16_t* in1 = &src1y*srcstride;
View file
libde265-1.0.16.tar.gz/libde265/image-io.cc -> libde265-1.0.17.tar.gz/libde265/image-io.cc
Changed
@@ -34,7 +34,7 @@ ImageSource_YUV::ImageSource_YUV() - : mFH(NULL) + : mFH(nullptr) { } @@ -49,10 +49,10 @@ bool ImageSource_YUV::set_input_file(const char* filename, int w,int h) { - assert(mFH==NULL); + assert(mFH==nullptr); mFH = fopen(filename,"rb"); - if (mFH==NULL) { + if (mFH==nullptr) { return false; } @@ -66,11 +66,11 @@ de265_image* ImageSource_YUV::read_next_image() { - if (mReachedEndOfFile) return NULL; + if (mReachedEndOfFile) return nullptr; de265_image* img = new de265_image; - img->alloc_image(width,height,de265_chroma_420, NULL, false, - NULL, /*NULL,*/ 0, NULL, false); + img->alloc_image(width,height,de265_chroma_420, nullptr, false, + nullptr, /*nullptr,*/ 0, nullptr, false); assert(img); // TODO: error handling // --- load image --- @@ -79,21 +79,21 @@ int stride; p = img->get_image_plane(0); stride = img->get_image_stride(0); - for (int y=0;y<height;y++) { + for (uint32_t y=0;y<height;y++) { if (fread(p+y*stride,1,width,mFH) != width) { goto check_eof; } } p = img->get_image_plane(1); stride = img->get_image_stride(1); - for (int y=0;y<height/2;y++) { + for (uint32_t y=0;y<height/2;y++) { if (fread(p+y*stride,1,width/2,mFH) != width/2) { goto check_eof; } } p = img->get_image_plane(2); stride = img->get_image_stride(2); - for (int y=0;y<height/2;y++) { + for (uint32_t y=0;y<height/2;y++) { if (fread(p+y*stride,1,width/2,mFH) != width/2) { goto check_eof; } @@ -105,7 +105,7 @@ if (feof(mFH)) { mReachedEndOfFile = true; delete img; - return NULL; + return nullptr; } else { return img; @@ -150,7 +150,7 @@ ImageSink::~ImageSink() { } -ImageSink_YUV::ImageSink_YUV() : mFH(NULL) { } +ImageSink_YUV::ImageSink_YUV() : mFH(nullptr) { } ImageSink_YUV::~ImageSink_YUV() @@ -162,7 +162,7 @@ bool ImageSink_YUV::set_filename(const char* filename) { - assert(mFH==NULL); + assert(mFH==nullptr); mFH = fopen(filename,"wb"); @@ -203,7 +203,7 @@ PacketSink::~PacketSink() { } PacketSink_File::PacketSink_File() - : mFH(NULL) + : mFH(nullptr) { } @@ -218,7 +218,7 @@ LIBDE265_API void PacketSink_File::set_filename(const char* filename) { - assert(mFH==NULL); + assert(mFH==nullptr); mFH = fopen(filename,"wb"); }
View file
libde265-1.0.16.tar.gz/libde265/image-io.h -> libde265-1.0.17.tar.gz/libde265/image-io.h
Changed
@@ -64,7 +64,7 @@ FILE* mFH; bool mReachedEndOfFile; - int width,height; + uint32_t width,height; de265_image* read_next_image(); };
View file
libde265-1.0.16.tar.gz/libde265/image.cc -> libde265-1.0.17.tar.gz/libde265/image.cc
Changed
@@ -22,6 +22,8 @@ #include "decctx.h" #include "en265.h" +#include <atomic> + #include <stdlib.h> #include <string.h> #include <assert.h> @@ -51,9 +53,9 @@ #define FREE_ALIGNED(mem) _aligned_free((mem)) #elif defined(HAVE_POSIX_MEMALIGN) static inline void *ALLOC_ALIGNED(size_t alignment, size_t size) { - void *mem = NULL; + void *mem = nullptr; if (posix_memalign(&mem, alignment, size) != 0) { - return NULL; + return nullptr; } return mem; }; @@ -65,8 +67,6 @@ #define ALLOC_ALIGNED_16(size) ALLOC_ALIGNED(16, size) -static const int alignment = 16; - LIBDE265_API void* de265_alloc_image_plane(struct de265_image* img, int cIdx, void* inputdata, int inputstride, void *userdata) { @@ -74,21 +74,21 @@ int stride = (img->get_width(cIdx) + alignment-1) / alignment * alignment; int height = img->get_height(cIdx); - uint8_t* p = (uint8_t *)ALLOC_ALIGNED_16(stride * height + MEMORY_PADDING); + uint8_t* p = static_cast<uint8_t*>(ALLOC_ALIGNED_16(stride * height + MEMORY_PADDING)); - if (p==NULL) { return NULL; } + if (p==nullptr) { return nullptr; } img->set_image_plane(cIdx, p, stride, userdata); // copy input data if provided - if (inputdata != NULL) { + if (inputdata != nullptr) { if (inputstride == stride) { memcpy(p, inputdata, stride*height); } else { for (int y=0;y<height;y++) { - memcpy(p+y*stride, ((char*)inputdata) + inputstride*y, inputstride); + memcpy(p+y*stride, static_cast<char*>(inputdata) + inputstride*y, inputstride); } } } @@ -99,7 +99,7 @@ LIBDE265_API void de265_free_image_plane(struct de265_image* img, int cIdx) { - uint8_t* p = (uint8_t*)img->get_image_plane(cIdx); + uint8_t* p = img->get_image_plane(cIdx); assert(p); FREE_ALIGNED(p); } @@ -126,18 +126,18 @@ bool alloc_failed = false; uint8_t* p3 = { 0,0,0 }; - p0 = (uint8_t *)ALLOC_ALIGNED_16(luma_height * luma_bpl + MEMORY_PADDING); - if (p0==NULL) { alloc_failed=true; } + p0 = static_cast<uint8_t*>(ALLOC_ALIGNED_16(luma_height * luma_bpl + MEMORY_PADDING)); + if (p0==nullptr) { alloc_failed=true; } if (img->get_chroma_format() != de265_chroma_mono) { - p1 = (uint8_t *)ALLOC_ALIGNED_16(chroma_height * chroma_bpl + MEMORY_PADDING); - p2 = (uint8_t *)ALLOC_ALIGNED_16(chroma_height * chroma_bpl + MEMORY_PADDING); + p1 = static_cast<uint8_t*>(ALLOC_ALIGNED_16(chroma_height * chroma_bpl + MEMORY_PADDING)); + p2 = static_cast<uint8_t*>(ALLOC_ALIGNED_16(chroma_height * chroma_bpl + MEMORY_PADDING)); - if (p1==NULL || p2==NULL) { alloc_failed=true; } + if (p1==nullptr || p2==nullptr) { alloc_failed=true; } } else { - p1 = NULL; - p2 = NULL; + p1 = nullptr; + p2 = nullptr; chroma_stride = 0; } @@ -150,9 +150,9 @@ return 0; } - img->set_image_plane(0, p0, luma_stride, NULL); - img->set_image_plane(1, p1, chroma_stride, NULL); - img->set_image_plane(2, p2, chroma_stride, NULL); + img->set_image_plane(0, p0, luma_stride, nullptr); + img->set_image_plane(1, p1, chroma_stride, nullptr); + img->set_image_plane(2, p2, chroma_stride, nullptr); img->fill_image(0,0,0); @@ -163,7 +163,7 @@ de265_image* img, void* userdata) { for (int i=0;i<3;i++) { - uint8_t* p = (uint8_t*)img->get_image_plane(i); + uint8_t* p = img->get_image_plane(i); if (p) { FREE_ALIGNED(p); } @@ -187,50 +187,7 @@ } -uint32_t de265_image::s_next_image_ID = 0; - -de265_image::de265_image() -{ - ID = -1; - removed_at_picture_id = 0; // picture not used, so we can assume it has been removed - - decctx = NULL; - //encctx = NULL; - - //encoder_image_release_func = NULL; - - //alloc_functions.get_buffer = NULL; - //alloc_functions.release_buffer = NULL; - - for (int c=0;c<3;c++) { - pixelsc = NULL; - pixels_confwinc = NULL; - plane_user_datac = NULL; - } - - width=height=0; - - pts = 0; - user_data = NULL; - - ctb_progress = NULL; - - integrity = INTEGRITY_NOT_DECODED; - - picture_order_cnt_lsb = -1; // undefined - PicOrderCntVal = -1; // undefined - PicState = UnusedForReference; - PicOutputFlag = false; - - nThreadsQueued = 0; - nThreadsRunning = 0; - nThreadsBlocked = 0; - nThreadsFinished = 0; - nThreadsTotal = 0; - - de265_mutex_init(&mutex); - de265_cond_init(&finished_cond); -} +de265_image::de265_image() = default; de265_error de265_image::alloc_image(int w,int h, enum de265_chroma c, @@ -249,8 +206,9 @@ allocated to the requested size. Without the release, the old image-data will not be freed. */ + static std::atomic<uint32_t> s_next_image_ID(0); ID = s_next_image_ID++; - removed_at_picture_id = std::numeric_limits<int32_t>::max(); + removed_at_picture_id = std::numeric_limits<uint32_t>::max(); decctx = dctx; //encctx = ectx; @@ -269,15 +227,16 @@ de265_image_spec spec; - int WinUnitX, WinUnitY; + uint8_t WinUnitX, WinUnitY; switch (chroma_format) { - case de265_chroma_mono: WinUnitX=1; WinUnitY=1; break; - case de265_chroma_420: WinUnitX=2; WinUnitY=2; break; - case de265_chroma_422: WinUnitX=2; WinUnitY=1; break; - case de265_chroma_444: WinUnitX=1; WinUnitY=1; break; - default: - assert(0); + case de265_chroma_mono: WinUnitX=1; WinUnitY=1; break; + case de265_chroma_420: WinUnitX=2; WinUnitY=2; break; + case de265_chroma_422: WinUnitX=2; WinUnitY=1; break; + case de265_chroma_444: WinUnitX=1; WinUnitY=1; break; + default: + assert(0); + WinUnitX = WinUnitY = 0; } switch (chroma_format) {
View file
libde265-1.0.16.tar.gz/libde265/image.h -> libde265-1.0.17.tar.gz/libde265/image.h
Changed
@@ -29,6 +29,7 @@ #include <stdint.h> #include <stdlib.h> #include <string.h> +#include <limits> #include <memory> #include "libde265/de265.h" @@ -52,47 +53,46 @@ At INTEGRITY_DERIVED_FROM_FAULTY_REFERENCE images, we can check the SEI hash, whether the output image is correct despite the faulty reference, and set the state back to correct. */ -#define INTEGRITY_CORRECT 0 -#define INTEGRITY_UNAVAILABLE_REFERENCE 1 -#define INTEGRITY_NOT_DECODED 2 -#define INTEGRITY_DECODING_ERRORS 3 -#define INTEGRITY_DERIVED_FROM_FAULTY_REFERENCE 4 - -#define SEI_HASH_UNCHECKED 0 -#define SEI_HASH_CORRECT 1 -#define SEI_HASH_INCORRECT 2 - -#define TU_FLAG_NONZERO_COEFF (1<<7) -#define TU_FLAG_SPLIT_TRANSFORM_MASK 0x1F - -#define DEBLOCK_FLAG_VERTI (1<<4) -#define DEBLOCK_FLAG_HORIZ (1<<5) -#define DEBLOCK_PB_EDGE_VERTI (1<<6) -#define DEBLOCK_PB_EDGE_HORIZ (1<<7) -#define DEBLOCK_BS_MASK 0x03 - - -#define CTB_PROGRESS_NONE 0 -#define CTB_PROGRESS_PREFILTER 1 -#define CTB_PROGRESS_DEBLK_V 2 -#define CTB_PROGRESS_DEBLK_H 3 -#define CTB_PROGRESS_SAO 4 +constexpr uint8_t INTEGRITY_CORRECT = 0; +constexpr uint8_t INTEGRITY_UNAVAILABLE_REFERENCE = 1; +constexpr uint8_t INTEGRITY_NOT_DECODED = 2; +constexpr uint8_t INTEGRITY_DECODING_ERRORS = 3; +constexpr uint8_t INTEGRITY_DERIVED_FROM_FAULTY_REFERENCE = 4; + +constexpr uint8_t SEI_HASH_UNCHECKED = 0; +constexpr uint8_t SEI_HASH_CORRECT = 1; +constexpr uint8_t SEI_HASH_INCORRECT = 2; + +constexpr uint8_t TU_FLAG_NONZERO_COEFF = (1<<7); +constexpr uint8_t TU_FLAG_SPLIT_TRANSFORM_MASK = 0x1F; + +constexpr uint8_t DEBLOCK_FLAG_VERTI = (1<<4); +constexpr uint8_t DEBLOCK_FLAG_HORIZ = (1<<5); +constexpr uint8_t DEBLOCK_PB_EDGE_VERTI = (1<<6); +constexpr uint8_t DEBLOCK_PB_EDGE_HORIZ = (1<<7); +constexpr uint8_t DEBLOCK_BS_MASK = 0x03; + +constexpr int CTB_PROGRESS_NONE = 0; +constexpr int CTB_PROGRESS_PREFILTER = 1; +constexpr int CTB_PROGRESS_DEBLK_V = 2; +constexpr int CTB_PROGRESS_DEBLK_H = 3; +constexpr int CTB_PROGRESS_SAO = 4; class decoder_context; template <class DataUnit> class MetaDataArray { public: - MetaDataArray() { data=NULL; data_size=0; log2unitSize=0; width_in_units=0; height_in_units=0; } + MetaDataArray() = default; ~MetaDataArray() { free(data); } - LIBDE265_CHECK_RESULT bool alloc(int w,int h, int _log2unitSize) { + LIBDE265_CHECK_RESULT bool alloc(int w,int h, uint8_t _log2unitSize) { int size = w*h; if (size != data_size) { free(data); - data = (DataUnit*)malloc(size * sizeof(DataUnit)); - if (data == NULL) { + data = (DataUnit*)calloc(size, sizeof(DataUnit)); + if (data == nullptr) { data_size = 0; return false; } @@ -104,7 +104,7 @@ log2unitSize = _log2unitSize; - return data != NULL; + return data != nullptr; } void clear() { @@ -147,35 +147,16 @@ int size() const { return data_size; } // private: - DataUnit* data; - int data_size; - int log2unitSize; - int width_in_units; - int height_in_units; + DataUnit* data = nullptr; + int data_size = 0; + uint8_t log2unitSize = 0; + int width_in_units = 0; + int height_in_units = 0; }; -#define SET_CB_BLK(x,y,log2BlkWidth, Field,value) \ - int cbX = x >> cb_info.log2unitSize; \ - int cbY = y >> cb_info.log2unitSize; \ - int width = 1 << (log2BlkWidth - cb_info.log2unitSize); \ - for (int cby=cbY;cby<cbY+width;cby++) \ - for (int cbx=cbX;cbx<cbX+width;cbx++) \ - { \ - cb_info cbx + cby*cb_info.width_in_units .Field = value; \ - } - -#define CLEAR_TB_BLK(x,y,log2BlkWidth) \ - int tuX = x >> tu_info.log2unitSize; \ - int tuY = y >> tu_info.log2unitSize; \ - int width = 1 << (log2BlkWidth - tu_info.log2unitSize); \ - for (int tuy=tuY;tuy<tuY+width;tuy++) \ - for (int tux=tuX;tux<tuX+width;tux++) \ - { \ - tu_info tux + tuy*tu_info.width_in_units = 0; \ - } -typedef struct { +struct CTB_info { uint16_t SliceAddrRS; uint16_t SliceHeaderIndex; // index into array to slice header for this CTB @@ -185,10 +166,10 @@ // The following flag helps to quickly check whether we have to // check all conditions in the SAO filter or whether we can skip them. bool has_pcm_or_cu_transquant_bypass; // pcm or transquant_bypass is used in this CTB -} CTB_info; +}; -typedef struct { +struct CB_ref_info { uint8_t log2CbSize : 3; /* 0;6 (1<<log2CbSize) = 64 This is only set in the top-left corner of the CB. The other values should be zero. @@ -210,8 +191,7 @@ // --- byte boundary --- int8_t QP_Y; // Stored for QP prediction - -} CB_ref_info; +}; @@ -221,7 +201,7 @@ ~de265_image(); - de265_error alloc_image(int w,int h, enum de265_chroma c, + de265_error alloc_image(int w,int h, de265_chroma c, std::shared_ptr<const seq_parameter_set> sps, bool allocMetadata, decoder_context* dctx, @@ -231,7 +211,7 @@ //de265_error alloc_encoder_data(const seq_parameter_set* sps); - bool is_allocated() const { return pixels0 != NULL; } + bool is_allocated() const { return pixels0 != nullptr; } void release(); @@ -304,7 +284,7 @@ int get_width (int cIdx=0) const { return cIdx==0 ? width : chroma_width; } int get_height(int cIdx=0) const { return cIdx==0 ? height : chroma_height; } - enum de265_chroma get_chroma_format() const { return chroma_format; } + de265_chroma get_chroma_format() const { return chroma_format; } int get_bit_depth(int cIdx) const { if (cIdx==0) return sps->BitDepth_Y; @@ -343,61 +323,59 @@ } private: - uint32_t ID; - static uint32_t s_next_image_ID; + uint32_t ID = std::numeric_limits<uint32_t>::max(); - uint8_t* pixels3; - uint8_t bpp_shift3; // 0 for 8 bit, 1 for 16 bit + uint8_t* pixels3 = { nullptr, nullptr, nullptr }; + uint8_t bpp_shift3 = {}; // 0 for 8 bit, 1 for 16 bit - enum de265_chroma chroma_format; + de265_chroma chroma_format = de265_chroma_mono;
View file
libde265-1.0.16.tar.gz/libde265/intrapred.cc -> libde265-1.0.17.tar.gz/libde265/intrapred.cc
Changed
@@ -158,6 +158,7 @@ } +#if 0 void list_chroma_pred_candidates(enum IntraPredMode chroma_mode5, enum IntraPredMode luma_mode) { @@ -178,6 +179,7 @@ break; } } +#endif int get_intra_scan_idx(int log2TrafoSize, enum IntraPredMode intraPredMode, int cIdx,
View file
libde265-1.0.16.tar.gz/libde265/intrapred.h -> libde265-1.0.17.tar.gz/libde265/intrapred.h
Changed
@@ -168,7 +168,7 @@ logtrace(LogIntraPred," "); } - if (available==NULL || availablei) { + if (available==nullptr || availablei) { logtrace(LogIntraPred,"%02x",datai); } else { @@ -254,7 +254,7 @@ logtrace(LogIntraPred,"post filtering: "); - print_border(p,NULL,nT); + print_border(p,nullptr,nT); logtrace(LogIntraPred,"\n"); } @@ -497,11 +497,11 @@ availableLeft ? xLeftCtb+yCurrCtb*picWidthInCtbs : 9999, availableTop ? xCurrCtb+yTopCtb*picWidthInCtbs : 9999); */ - int currCTBTileID = pps->TileIdRSxCurrCtb+yCurrCtb*picWidthInCtbs; - int leftCTBTileID = availableLeft ? pps->TileIdRSxLeftCtb+yCurrCtb*picWidthInCtbs : -1; - int topCTBTileID = availableTop ? pps->TileIdRSxCurrCtb+yTopCtb*picWidthInCtbs : -1; - int topleftCTBTileID = availableTopLeft ? pps->TileIdRSxLeftCtb+yTopCtb*picWidthInCtbs : -1; - int toprightCTBTileID= availableTopRight? pps->TileIdRSxRightCtb+yTopCtb*picWidthInCtbs : -1; + uint32_t currCTBTileID = pps->TileIdRSxCurrCtb+yCurrCtb*picWidthInCtbs; + uint32_t leftCTBTileID = availableLeft ? pps->TileIdRSxLeftCtb+yCurrCtb*picWidthInCtbs : UINT32_MAX; + uint32_t topCTBTileID = availableTop ? pps->TileIdRSxCurrCtb+yTopCtb*picWidthInCtbs : UINT32_MAX; + uint32_t topleftCTBTileID = availableTopLeft ? pps->TileIdRSxLeftCtb+yTopCtb*picWidthInCtbs : UINT32_MAX; + uint32_t toprightCTBTileID= availableTopRight? pps->TileIdRSxRightCtb+yTopCtb*picWidthInCtbs : UINT32_MAX; if (leftCTBSlice != currCTBSlice || leftCTBTileID != currCTBTileID ) availableLeft = false; if (topCTBSlice != currCTBSlice || topCTBTileID != currCTBTileID ) availableTop = false; @@ -666,11 +666,11 @@ } logtrace(LogIntraPred,"availableN: "); - print_border(available,NULL,nT); + print_border(available,nullptr,nT); logtrace(LogIntraPred,"\n"); logtrace(LogIntraPred,"output: "); - print_border(out_border,NULL,nT); + print_border(out_border,nullptr,nT); logtrace(LogIntraPred,"\n"); }
View file
libde265-1.0.16.tar.gz/libde265/motion.cc -> libde265-1.0.17.tar.gz/libde265/motion.cc
Changed
@@ -139,8 +139,13 @@ src_stride = ref_stride; } else { + // Extend fill width to a multiple of 16 so that SIMD over-reads + // in qpel interpolation hit valid (edge-clamped) data. + int fill_width = ((extra_left + nPbW + extra_right + 15) & ~15); + if (fill_width > MAX_CU_SIZE+16) fill_width = MAX_CU_SIZE+16; + for (int y=-extra_top;y<nPbH+extra_bottom;y++) { - for (int x=-extra_left;x<nPbW+extra_right;x++) { + for (int x=-extra_left;x<fill_width - extra_left;x++) { int xA = Clip3(0,w-1,x + xIntOffsL); int yA = Clip3(0,h-1,y + yIntOffsL); @@ -204,7 +209,7 @@ yIntOffsC>=0 && nPbHC+yIntOffsC<=hC) { ctx->acceleration.put_hevc_epel(out, out_stride, &refxIntOffsC + yIntOffsC*ref_stride, ref_stride, - nPbWC,nPbHC, 0,0, NULL, bit_depth_C); + nPbWC,nPbHC, 0,0, nullptr, bit_depth_C); } else { @@ -235,8 +240,13 @@ src_stride = ref_stride; } else { + // Extend fill width to a multiple of 16 so that SIMD over-reads + // in epel interpolation hit valid (edge-clamped) data. + int fill_width = ((extra_left + nPbWC + extra_right + 15) & ~15); + if (fill_width > MAX_CU_SIZE+16) fill_width = MAX_CU_SIZE+16; + for (int y=-extra_top;y<nPbHC+extra_bottom;y++) { - for (int x=-extra_left;x<nPbWC+extra_right;x++) { + for (int x=-extra_left;x<fill_width - extra_left;x++) { int xA = Clip3(0,wC-1,x + xIntOffsC); int yA = Clip3(0,hC-1,y + yIntOffsC); @@ -347,16 +357,28 @@ } + // Fill prediction samples with mid-grey in intermediate precision. + // Used on error paths where the reference picture is unavailable or mismatched. + auto fill_pred_samples = &(int l) { + const int16_t fill = 1 << 13; // mid-grey: (1 << (bd-1)) << (14-bd) for any bd + for (int y = 0; y < nPbH; y++) + for (int x = 0; x < nPbW; x++) + predSamplesLly * nCS + x = fill; + if (img->get_chroma_format() != de265_chroma_mono) { + int cW = nPbW / SubWidthC; + int cH = nPbH / SubHeightC; + for (int y = 0; y < cH; y++) + for (int x = 0; x < cW; x++) { + predSamplesC0ly * nCS + x = fill; + predSamplesC1ly * nCS + x = fill; + } + } + }; + for (int l=0;l<2;l++) { if (predFlagl) { // 8.5.3.2.1 - if (vi->refIdxl >= MAX_NUM_REF_PICS) { - img->integrity = INTEGRITY_DECODING_ERRORS; - ctx->add_warning(DE265_WARNING_NONEXISTING_REFERENCE_PICTURE_ACCESSED, false); - return; - } - const de265_image* refPic = ctx->get_image(shdr->RefPicListlvi->refIdxl); logtrace(LogMotion, "refIdx: %d -> dpb%d\n", vi->refIdxl, shdr->RefPicListlvi->refIdxl); @@ -364,23 +386,25 @@ if (!refPic || refPic->PicState == UnusedForReference) { img->integrity = INTEGRITY_DECODING_ERRORS; ctx->add_warning(DE265_WARNING_NONEXISTING_REFERENCE_PICTURE_ACCESSED, false); - - // TODO: fill predSamplesC with black or grey + fill_pred_samples(l); } else if (refPic->get_width(0) != sps->pic_width_in_luma_samples || refPic->get_height(0) != sps->pic_height_in_luma_samples || img->get_chroma_format() != refPic->get_chroma_format()) { img->integrity = INTEGRITY_DECODING_ERRORS; ctx->add_warning(DE265_WARNING_REFERENCE_IMAGE_SIZE_DOES_NOT_MATCH_SPS, false); + fill_pred_samples(l); } else if (img->get_bit_depth(0) != refPic->get_bit_depth(0) || img->get_bit_depth(1) != refPic->get_bit_depth(1)) { img->integrity = INTEGRITY_DECODING_ERRORS; ctx->add_warning(DE265_WARNING_REFERENCE_IMAGE_BIT_DEPTH_DOES_NOT_MATCH, false); + fill_pred_samples(l); } else if (img->get_chroma_format() != refPic->get_chroma_format()) { img->integrity = INTEGRITY_DECODING_ERRORS; ctx->add_warning(DE265_WARNING_REFERENCE_IMAGE_CHROMA_FORMAT_DOES_NOT_MATCH, false); + fill_pred_samples(l); } else { // 8.5.3.2.2 @@ -1069,7 +1093,7 @@ if (shdr->slice_type==SLICE_TYPE_P) { newCand->refIdx0 = refIdx; - newCand->refIdx1 = -1; + newCand->refIdx1 = 0; newCand->predFlag0 = 1; newCand->predFlag1 = 0; } @@ -1256,7 +1280,7 @@ - int slice_hdr_idx = colImg->get_SliceHeaderIndex(xColPb,yColPb); + uint16_t slice_hdr_idx = colImg->get_SliceHeaderIndex(xColPb,yColPb); if (slice_hdr_idx >= colImg->slices.size()) { ctx->add_warning(DE265_WARNING_INVALID_SLICE_HEADER_INDEX_ACCESS, false); @@ -1439,8 +1463,8 @@ logtrace(LogMotion,"l0Cand:\n"); logmvcand(l0Cand); logtrace(LogMotion,"l1Cand:\n"); logmvcand(l1Cand); - const de265_image* img0 = l0Cand.predFlag0 ? ctx->get_image(shdr->RefPicList0l0Cand.refIdx0) : NULL; - const de265_image* img1 = l1Cand.predFlag1 ? ctx->get_image(shdr->RefPicList1l1Cand.refIdx1) : NULL; + const de265_image* img0 = l0Cand.predFlag0 ? ctx->get_image(shdr->RefPicList0l0Cand.refIdx0) : nullptr; + const de265_image* img1 = l1Cand.predFlag1 ? ctx->get_image(shdr->RefPicList1l1Cand.refIdx1) : nullptr; if (l0Cand.predFlag0 && !img0) { return; // TODO error @@ -1491,8 +1515,8 @@ //int xOrigP = xP; //int yOrigP = yP; - int nOrigPbW = nPbW; - int nOrigPbH = nPbH; + //int nOrigPbW = nPbW; + //int nOrigPbH = nPbH; int singleMCLFlag; // single merge-candidate-list (MCL) flag @@ -1602,7 +1626,7 @@ mergeCandListi.predFlag1 && nPbW+nPbH==12) { - mergeCandListi.refIdx1 = -1; + mergeCandListi.refIdx1 = 0; mergeCandListi.predFlag1 = 0; } } @@ -1630,7 +1654,7 @@ // 8.5.3.1.1 / 9. if (out_vi->predFlag0 && out_vi->predFlag1 && nPbW+nPbH==12) { - out_vi->refIdx1 = -1; + out_vi->refIdx1 = 0; out_vi->predFlag1 = 0; } } @@ -1700,7 +1724,7 @@ // the POC we want to reference in this PB const de265_image* tmpimg = ctx->get_image(shdr->RefPicListX refIdxLX ); - if (tmpimg==NULL) { return; } + if (tmpimg==nullptr) { return; } const int referenced_POC = tmpimg->PicOrderCntVal; for (int k=0;k<=1;k++) { @@ -1715,23 +1739,13 @@ logtrace(LogMotion,"MVP A%d=\n",k); logmvcand(vi); - const de265_image* imgX = NULL; + const de265_image* imgX = nullptr; if (vi.predFlagX) { - // check for input data validity - if (vi.refIdxX<0 || vi.refIdxX >= MAX_NUM_REF_PICS) { - return; - } - imgX = ctx->get_image(shdr->RefPicListX vi.refIdxX ); } - const de265_image* imgY = NULL; + const de265_image* imgY = nullptr; if (vi.predFlagY) { - // check for input data validity - if (vi.refIdxY<0 || vi.refIdxY >= MAX_NUM_REF_PICS) { - return; - } - imgY = ctx->get_image(shdr->RefPicListY vi.refIdxY ); } @@ -1801,7 +1815,10 @@ assert(refPicList>=0); const de265_image* refPicA = ctx->get_image(shdr->RefPicListrefPicListrefIdxA ); - const de265_image* refPicX = ctx->get_image(shdr->RefPicListX refIdxLX);
View file
libde265-1.0.16.tar.gz/libde265/motion.h -> libde265-1.0.17.tar.gz/libde265/motion.h
Changed
@@ -38,7 +38,7 @@ { public: uint8_t predFlag2; // which of the two vectors is actually used - int8_t refIdx2; // index into RefPicList + uint8_t refIdx2; // index into RefPicList (valid when predFlag set) MotionVector mv2; // the absolute motion vectors bool operator==(const PBMotion&) const; @@ -49,7 +49,7 @@ { public: // index into RefPicList - int8_t refIdx2; + uint8_t refIdx2; // motion vector difference int16_t mvd22; // L0/L1x/y (only in top left position - ???)
View file
libde265-1.0.16.tar.gz/libde265/nal-parser.cc -> libde265-1.0.17.tar.gz/libde265/nal-parser.cc
Changed
@@ -33,12 +33,6 @@ NAL_unit::NAL_unit() : skipped_bytes(DE265_SKIPPED_BYTES_INITIAL_SIZE) { - pts=0; - user_data = NULL; - - nal_data = NULL; - data_size = 0; - capacity = 0; } NAL_unit::~NAL_unit() @@ -50,7 +44,7 @@ { header = nal_header(); pts = 0; - user_data = NULL; + user_data = nullptr; // set size to zero but keep memory data_size = 0; @@ -61,12 +55,12 @@ LIBDE265_CHECK_RESULT bool NAL_unit::resize(int new_size) { if (capacity < new_size) { - unsigned char* newbuffer = (unsigned char*)malloc(new_size); - if (newbuffer == NULL) { + unsigned char* newbuffer = static_cast<unsigned char*>(malloc(new_size)); + if (newbuffer == nullptr) { return false; } - if (nal_data != NULL) { + if (nal_data != nullptr) { memcpy(newbuffer, nal_data, data_size); free(nal_data); } @@ -97,13 +91,17 @@ return true; } -void NAL_unit::insert_skipped_byte(int pos) +void NAL_unit::insert_skipped_byte(uint32_t pos) { skipped_bytes.push_back(pos); } -int NAL_unit::num_skipped_bytes_before(int byte_position, int headerLength) const +uint32_t NAL_unit::num_skipped_bytes_before(uint32_t byte_position, uint32_t headerLength) const { + if (skipped_bytes.empty()) { + return 0; + } + for (int k=skipped_bytes.size()-1;k>=0;k--) if (skipped_bytesk >= headerLength && skipped_bytesk-headerLength <= byte_position) { @@ -153,14 +151,7 @@ -NAL_Parser::NAL_Parser() -{ - end_of_stream = false; - end_of_frame = false; - input_push_state = 0; - pending_input_NAL = NULL; - nBytes_in_NAL_queue = 0; -} +NAL_Parser::NAL_Parser() = default; NAL_Parser::~NAL_Parser() @@ -176,7 +167,7 @@ // free the pending input NAL - if (pending_input_NAL != NULL) { + if (pending_input_NAL != nullptr) { free_NAL_unit(pending_input_NAL); } @@ -205,7 +196,7 @@ nal->clear(); if (!nal->resize(size)) { free_NAL_unit(nal); - return NULL; + return nullptr; } return nal; @@ -213,8 +204,8 @@ void NAL_Parser::free_NAL_unit(NAL_unit* nal) { - if (nal == NULL) { - // Allow calling with NULL just like regular "free()" + if (nal == nullptr) { + // Allow calling with nullptr just like regular "free()" return; } if (NAL_free_list.size() < DE265_NAL_FREE_LIST_SIZE) { @@ -228,7 +219,7 @@ NAL_unit* NAL_Parser::pop_from_NAL_queue() { if (NAL_queue.empty()) { - return NULL; + return nullptr; } else { NAL_unit* nal = NAL_queue.front(); @@ -251,9 +242,9 @@ { end_of_frame = false; - if (pending_input_NAL == NULL) { + if (pending_input_NAL == nullptr) { pending_input_NAL = alloc_NAL_unit(len+3); - if (pending_input_NAL == NULL) { + if (pending_input_NAL == nullptr) { return DE265_ERROR_OUT_OF_MEMORY; } pending_input_NAL->pts = pts; @@ -339,7 +330,7 @@ // initialize new, empty NAL unit pending_input_NAL = alloc_NAL_unit(len+3); - if (pending_input_NAL == NULL) { + if (pending_input_NAL == nullptr) { return DE265_ERROR_OUT_OF_MEMORY; } pending_input_NAL->pts = pts; @@ -373,12 +364,12 @@ { // Cannot use byte-stream input and NAL input at the same time. - assert(pending_input_NAL == NULL); + assert(pending_input_NAL == nullptr); end_of_frame = false; NAL_unit* nal = alloc_NAL_unit(len); - if (nal == NULL || !nal->set_data(data, len)) { + if (nal == nullptr || !nal->set_data(data, len)) { free_NAL_unit(nal); return DE265_ERROR_OUT_OF_MEMORY; } @@ -417,7 +408,7 @@ if (input_push_state>=5) { push_to_NAL_queue(nal); - pending_input_NAL = NULL; + pending_input_NAL = nullptr; } input_push_state = 0; @@ -433,7 +424,7 @@ if (pending_input_NAL) { free_NAL_unit(pending_input_NAL); - pending_input_NAL = NULL; + pending_input_NAL = nullptr; } for (;;) {
View file
libde265-1.0.16.tar.gz/libde265/nal-parser.h -> libde265-1.0.17.tar.gz/libde265/nal-parser.h
Changed
@@ -29,8 +29,8 @@ #include <vector> #include <queue> -#define DE265_NAL_FREE_LIST_SIZE 16 -#define DE265_SKIPPED_BYTES_INITIAL_SIZE 16 +constexpr int DE265_NAL_FREE_LIST_SIZE = 16; +constexpr int DE265_SKIPPED_BYTES_INITIAL_SIZE = 16; class NAL_unit { @@ -40,8 +40,8 @@ nal_header header; - de265_PTS pts; - void* user_data; + de265_PTS pts = 0; + void* user_data = nullptr; void clear(); @@ -60,15 +60,15 @@ // --- skipped stuffing bytes --- - int num_skipped_bytes_before(int byte_position, int headerLength) const; - int num_skipped_bytes() const { return skipped_bytes.size(); } + uint32_t num_skipped_bytes_before(uint32_t byte_position, uint32_t headerLength) const; + uint32_t num_skipped_bytes() const { return skipped_bytes.size(); } //void clear_skipped_bytes() { skipped_bytes.clear(); } /* Mark a byte as skipped. It is assumed that the byte is already removed from the input data. The NAL data is not modified. */ - void insert_skipped_byte(int pos); + void insert_skipped_byte(uint32_t pos); /* Remove all stuffing bytes from NAL data. The NAL data is modified and the removed bytes are marked as skipped bytes. @@ -76,11 +76,11 @@ void remove_stuffing_bytes(); private: - unsigned char* nal_data; - int data_size; - int capacity; + unsigned char* nal_data = nullptr; + int data_size = 0; + int capacity = 0; - std::vector<int> skipped_bytes; // up to positionx, there were 'x' skipped bytes + std::vector<uint32_t> skipped_bytes; // up to positionx, there were 'x' skipped bytes }; @@ -91,10 +91,10 @@ ~NAL_Parser(); de265_error push_data(const unsigned char* data, int len, - de265_PTS pts, void* user_data = NULL); + de265_PTS pts, void* user_data = nullptr); de265_error push_NAL(const unsigned char* data, int len, - de265_PTS pts, void* user_data = NULL); + de265_PTS pts, void* user_data = nullptr); NAL_unit* pop_from_NAL_queue(); de265_error flush_data(); @@ -128,17 +128,17 @@ private: // byte-stream level - bool end_of_stream; // data in pending_input_data is end of stream - bool end_of_frame; // data in pending_input_data is end of frame - int input_push_state; + bool end_of_stream = false; // data in pending_input_data is end of stream + bool end_of_frame = false; // data in pending_input_data is end of frame + int input_push_state = 0; - NAL_unit* pending_input_NAL; + NAL_unit* pending_input_NAL = nullptr; // NAL level std::queue<NAL_unit*> NAL_queue; // enqueued NALs have suffing bytes removed - int nBytes_in_NAL_queue; // data bytes currently in NAL_queue + int nBytes_in_NAL_queue = 0; // data bytes currently in NAL_queue void push_to_NAL_queue(NAL_unit*);
View file
libde265-1.0.16.tar.gz/libde265/nal.cc -> libde265-1.0.17.tar.gz/libde265/nal.cc
Changed
@@ -23,12 +23,17 @@ #include <assert.h> -void nal_header::read(bitreader* reader) +de265_error nal_header::read(bitreader* reader) { - skip_bits(reader,1); - nal_unit_type = get_bits(reader,6); - nuh_layer_id = get_bits(reader,6); - nuh_temporal_id = get_bits(reader,3) -1; + reader->skip_bits(1); + nal_unit_type = reader->get_bits(6); + nuh_layer_id = reader->get_bits(6); + uint32_t nuh_temporal_id_plus1 = reader->get_bits(3); + if (nuh_temporal_id_plus1 == 0) { + return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; + } + nuh_temporal_id = nuh_temporal_id_plus1 - 1; + return DE265_OK; }
View file
libde265-1.0.16.tar.gz/libde265/nal.h -> libde265-1.0.17.tar.gz/libde265/nal.h
Changed
@@ -29,6 +29,7 @@ #include "libde265/bitstream.h" #include "libde265/cabac.h" +#include "libde265/de265.h" struct nal_header { nal_header() { @@ -37,7 +38,7 @@ nuh_temporal_id = 0; } - void read(bitreader* reader); + de265_error read(bitreader* reader); void write(CABAC_encoder& writer) const; void set(int unit_type, int layer_id=0, int temporal_id=0) {
View file
libde265-1.0.16.tar.gz/libde265/pps.cc -> libde265-1.0.17.tar.gz/libde265/pps.cc
Changed
@@ -48,39 +48,35 @@ { const seq_parameter_set* sps = ctx->get_sps(pps->seq_parameter_set_id); - int uvlc; + uint32_t uvlc; if (pps->transform_skip_enabled_flag) { - uvlc = get_uvlc(br); + uvlc = br->get_uvlc(); if (uvlc == UVLC_ERROR || - uvlc+2 > sps->Log2MaxTrafoSize) { - - // Note: this is out of spec, but the conformance stream - // PERSIST_RPARAM_A_RExt_Sony_2 codes a too large value. - - //ctx->add_warning(DE265_WARNING_PPS_HEADER_INVALID, false); - //return false; + uvlc > static_cast<uint32_t>(sps->Log2MaxTrafoSize) - 2) { + ctx->add_warning(DE265_WARNING_PPS_HEADER_INVALID, false); + return false; } log2_max_transform_skip_block_size = uvlc+2; } - cross_component_prediction_enabled_flag = get_bits(br,1); + cross_component_prediction_enabled_flag = br->get_bits(1); if (sps->ChromaArrayType != CHROMA_444 && cross_component_prediction_enabled_flag) { ctx->add_warning(DE265_WARNING_PPS_HEADER_INVALID, false); } - chroma_qp_offset_list_enabled_flag = get_bits(br,1); + chroma_qp_offset_list_enabled_flag = br->get_bits(1); if (sps->ChromaArrayType == CHROMA_MONO && chroma_qp_offset_list_enabled_flag) { ctx->add_warning(DE265_WARNING_PPS_HEADER_INVALID, false); } if (chroma_qp_offset_list_enabled_flag) { - uvlc = get_uvlc(br); + uvlc = br->get_uvlc(); if (uvlc == UVLC_ERROR || - uvlc > sps->log2_diff_max_min_luma_coding_block_size) { + uvlc > static_cast<uint32_t>(sps->log2_diff_max_min_luma_coding_block_size)) { ctx->add_warning(DE265_WARNING_PPS_HEADER_INVALID, false); return false; } @@ -88,7 +84,7 @@ diff_cu_chroma_qp_offset_depth = uvlc; - uvlc = get_uvlc(br); + uvlc = br->get_uvlc(); if (uvlc == UVLC_ERROR || uvlc > 5) { ctx->add_warning(DE265_WARNING_PPS_HEADER_INVALID, false); @@ -98,9 +94,9 @@ chroma_qp_offset_list_len = uvlc+1; for (int i=0;i<chroma_qp_offset_list_len;i++) { - int svlc; - svlc = get_svlc(br); - if (svlc == UVLC_ERROR || + int32_t svlc; + svlc = br->get_svlc(); + if (svlc == SVLC_ERROR || svlc < -12 || svlc > 12) { ctx->add_warning(DE265_WARNING_PPS_HEADER_INVALID, false); return false; @@ -108,8 +104,8 @@ cb_qp_offset_listi = svlc; - svlc = get_svlc(br); - if (svlc == UVLC_ERROR || + svlc = br->get_svlc(); + if (svlc == SVLC_ERROR || svlc < -12 || svlc > 12) { ctx->add_warning(DE265_WARNING_PPS_HEADER_INVALID, false); return false; @@ -120,18 +116,18 @@ } - uvlc = get_uvlc(br); + uvlc = br->get_uvlc(); if (uvlc == UVLC_ERROR || - uvlc > libde265_max(0, sps->BitDepth_Y-10)) { + uvlc > static_cast<uint32_t>(libde265_max(0, sps->BitDepth_Y-10))) { ctx->add_warning(DE265_WARNING_PPS_HEADER_INVALID, false); return false; } log2_sao_offset_scale_luma = uvlc; - uvlc = get_uvlc(br); + uvlc = br->get_uvlc(); if (uvlc == UVLC_ERROR || - uvlc > libde265_max(0, sps->BitDepth_C-10)) { + uvlc > static_cast<uint32_t>(libde265_max(0, sps->BitDepth_C-10))) { ctx->add_warning(DE265_WARNING_PPS_HEADER_INVALID, false); return false; } @@ -191,7 +187,7 @@ void pic_parameter_set::set_defaults(enum PresetSet) { pps_read = false; - sps = NULL; + sps = nullptr; pic_parameter_set_id = 0; seq_parameter_set_id = 0; @@ -272,39 +268,39 @@ reset(); - int uvlc; - pic_parameter_set_id = uvlc = get_uvlc(br); - if (uvlc >= DE265_MAX_PPS_SETS || - uvlc == UVLC_ERROR) { + uint32_t uvlc; + uvlc = br->get_uvlc(); + if (uvlc == UVLC_ERROR || uvlc >= DE265_MAX_PPS_SETS) { ctx->add_warning(DE265_WARNING_NONEXISTING_PPS_REFERENCED, false); return false; } + pic_parameter_set_id = uvlc; - seq_parameter_set_id = uvlc = get_uvlc(br); - if (uvlc >= DE265_MAX_SPS_SETS || - uvlc == UVLC_ERROR) { + uvlc = br->get_uvlc(); + if (uvlc == UVLC_ERROR || uvlc >= DE265_MAX_SPS_SETS) { ctx->add_warning(DE265_WARNING_NONEXISTING_SPS_REFERENCED, false); return false; } + seq_parameter_set_id = uvlc; - dependent_slice_segments_enabled_flag = get_bits(br,1); - output_flag_present_flag = get_bits(br,1); - num_extra_slice_header_bits = get_bits(br,3); - sign_data_hiding_flag = get_bits(br,1); - cabac_init_present_flag = get_bits(br,1); - num_ref_idx_l0_default_active = uvlc = get_uvlc(br); - if (uvlc == UVLC_ERROR) { + dependent_slice_segments_enabled_flag = br->get_bits(1); + output_flag_present_flag = br->get_bits(1); + num_extra_slice_header_bits = br->get_bits(3); + sign_data_hiding_flag = br->get_bits(1); + cabac_init_present_flag = br->get_bits(1); + uvlc = br->get_uvlc(); + if (uvlc == UVLC_ERROR || uvlc > 15) { ctx->add_warning(DE265_WARNING_PPS_HEADER_INVALID, false); return false; } - num_ref_idx_l0_default_active++; + num_ref_idx_l0_default_active = uvlc + 1; - num_ref_idx_l1_default_active = uvlc = get_uvlc(br); - if (uvlc == UVLC_ERROR) { + uvlc = br->get_uvlc(); + if (uvlc == UVLC_ERROR || uvlc > 15) { ctx->add_warning(DE265_WARNING_PPS_HEADER_INVALID, false); return false; } - num_ref_idx_l1_default_active++; + num_ref_idx_l1_default_active = uvlc + 1; if (!ctx->has_sps(seq_parameter_set_id)) { @@ -314,106 +310,110 @@ sps = ctx->get_shared_sps(seq_parameter_set_id); - if ((pic_init_qp = get_svlc(br)) == UVLC_ERROR) { - ctx->add_warning(DE265_WARNING_PPS_HEADER_INVALID, false); - return false; + { + int32_t svlc; + if ((svlc = br->get_svlc()) == SVLC_ERROR) { + ctx->add_warning(DE265_WARNING_PPS_HEADER_INVALID, false); + return false; + } + pic_init_qp = svlc + 26; } - pic_init_qp += 26; - constrained_intra_pred_flag = get_bits(br,1); - transform_skip_enabled_flag = get_bits(br,1); - cu_qp_delta_enabled_flag = get_bits(br,1); + constrained_intra_pred_flag = br->get_bits(1); + transform_skip_enabled_flag = br->get_bits(1); + cu_qp_delta_enabled_flag = br->get_bits(1); if (cu_qp_delta_enabled_flag) { - if ((diff_cu_qp_delta_depth = get_uvlc(br)) == UVLC_ERROR) { + // diff_cu_qp_delta_depth shall be in 0, log2_diff_max_min_luma_coding_block_size (Sec. 7.4.3.3.1) + if ((uvlc = br->get_uvlc()) == UVLC_ERROR ||
View file
libde265-1.0.16.tar.gz/libde265/pps.h -> libde265-1.0.17.tar.gz/libde265/pps.h
Changed
@@ -27,8 +27,8 @@ #include <vector> #include <memory> -#define DE265_MAX_TILE_COLUMNS 10 -#define DE265_MAX_TILE_ROWS 10 +constexpr int DE265_MAX_TILE_COLUMNS = 10; +constexpr int DE265_MAX_TILE_ROWS = 10; class decoder_context; class pic_parameter_set; @@ -76,66 +76,66 @@ std::shared_ptr<const seq_parameter_set> sps; - char pic_parameter_set_id; - char seq_parameter_set_id; - char dependent_slice_segments_enabled_flag; - char sign_data_hiding_flag; - char cabac_init_present_flag; - char num_ref_idx_l0_default_active; // 1;16 - char num_ref_idx_l1_default_active; // 1;16 + uint8_t pic_parameter_set_id; + uint8_t seq_parameter_set_id; + bool dependent_slice_segments_enabled_flag; + bool sign_data_hiding_flag; + bool cabac_init_present_flag; + uint8_t num_ref_idx_l0_default_active; // 1;16 + uint8_t num_ref_idx_l1_default_active; // 1;16 int pic_init_qp; - char constrained_intra_pred_flag; - char transform_skip_enabled_flag; + bool constrained_intra_pred_flag; + bool transform_skip_enabled_flag; // --- QP --- - char cu_qp_delta_enabled_flag; - int diff_cu_qp_delta_depth; // 0 ; log2_diff_max_min_luma_coding_block_size + bool cu_qp_delta_enabled_flag; + uint8_t diff_cu_qp_delta_depth; // 0 ; log2_diff_max_min_luma_coding_block_size int pic_cb_qp_offset; int pic_cr_qp_offset; - char pps_slice_chroma_qp_offsets_present_flag; + bool pps_slice_chroma_qp_offsets_present_flag; - char weighted_pred_flag; - char weighted_bipred_flag; - char output_flag_present_flag; - char transquant_bypass_enable_flag; - char entropy_coding_sync_enabled_flag; + bool weighted_pred_flag; + bool weighted_bipred_flag; + bool output_flag_present_flag; + bool transquant_bypass_enable_flag; + bool entropy_coding_sync_enabled_flag; // --- tiles --- - char tiles_enabled_flag; - int num_tile_columns; // 1;PicWidthInCtbsY - int num_tile_rows; // 1;PicHeightInCtbsY - char uniform_spacing_flag; + bool tiles_enabled_flag; + uint8_t num_tile_columns; // 1;PicWidthInCtbsY max DE265_MAX_TILE_COLUMNS + uint8_t num_tile_rows; // 1;PicHeightInCtbsY max DE265_MAX_TILE_ROWS + bool uniform_spacing_flag; // --- --- - char loop_filter_across_tiles_enabled_flag; - char pps_loop_filter_across_slices_enabled_flag; - char deblocking_filter_control_present_flag; + bool loop_filter_across_tiles_enabled_flag; + bool pps_loop_filter_across_slices_enabled_flag; + bool deblocking_filter_control_present_flag; - char deblocking_filter_override_enabled_flag; - char pic_disable_deblocking_filter_flag; + bool deblocking_filter_override_enabled_flag; + bool pic_disable_deblocking_filter_flag; - int beta_offset; - int tc_offset; + int8_t beta_offset; // -12;12 + int8_t tc_offset; // -12;12 - char pic_scaling_list_data_present_flag; + bool pic_scaling_list_data_present_flag; struct scaling_list_data scaling_list; // contains valid data if sps->scaling_list_enabled_flag set - char lists_modification_present_flag; - int log2_parallel_merge_level; // 2 ; log2(max CB size) - char num_extra_slice_header_bits; - char slice_segment_header_extension_present_flag; - char pps_extension_flag; - char pps_range_extension_flag; - char pps_multilayer_extension_flag; - char pps_extension_6bits; + bool lists_modification_present_flag; + uint8_t log2_parallel_merge_level; // 2 ; log2(max CB size) + uint8_t num_extra_slice_header_bits; + bool slice_segment_header_extension_present_flag; + bool pps_extension_flag; + bool pps_range_extension_flag; + bool pps_multilayer_extension_flag; + uint8_t pps_extension_6bits; pps_range_extension range_extension; @@ -151,11 +151,11 @@ int colBd DE265_MAX_TILE_COLUMNS+1 ; int rowBd DE265_MAX_TILE_ROWS+1 ; - std::vector<int> CtbAddrRStoTS; // #CTBs - std::vector<int> CtbAddrTStoRS; // #CTBs - std::vector<int> TileId; // #CTBs // index in tile-scan order - std::vector<int> TileIdRS; // #CTBs // index in raster-scan order - std::vector<int> MinTbAddrZS; // #TBs x + y*PicWidthInTbsY + std::vector<uint32_t> CtbAddrRStoTS; // #CTBs + std::vector<uint32_t> CtbAddrTStoRS; // #CTBs + std::vector<uint32_t> TileId; // #CTBs // index in tile-scan order + std::vector<uint32_t> TileIdRS; // #CTBs // index in raster-scan order + std::vector<uint32_t> MinTbAddrZS; // #TBs x + y*PicWidthInTbsY void set_derived_values(const seq_parameter_set* sps); };
View file
libde265-1.0.16.tar.gz/libde265/refpic.cc -> libde265-1.0.17.tar.gz/libde265/refpic.cc
Changed
@@ -95,7 +95,7 @@ char inter_ref_pic_set_prediction_flag; if (idxRps != 0) { - inter_ref_pic_set_prediction_flag = get_bits(br,1); + inter_ref_pic_set_prediction_flag = br->get_bits(1); } else { inter_ref_pic_set_prediction_flag = 0; @@ -104,15 +104,15 @@ if (inter_ref_pic_set_prediction_flag) { - int vlc; + uint32_t vlc; /* Only for the last ref_pic_set (that's the one coded in the slice header), we can specify relative to which reference set we code the set. */ int delta_idx; if (sliceRefPicSet) { // idxRps == num_short_term_ref_pic_sets) { - delta_idx = vlc = get_uvlc(br); - if (delta_idx==UVLC_ERROR) { + delta_idx = vlc = br->get_uvlc(); + if (vlc==UVLC_ERROR) { return false; } @@ -125,13 +125,14 @@ delta_idx = 1; } - int RIdx = idxRps - delta_idx; // this is our source set, which we will modify - assert(RIdx>=0); + assert(idxRps >= delta_idx); + int RIdx = idxRps - delta_idx; // this is our source set, which we will modify (TODO: change type to uint8_t) - int delta_rps_sign = get_bits(br,1); - int abs_delta_rps = vlc = get_uvlc(br); - if (vlc==UVLC_ERROR) { return false; } - abs_delta_rps++; + int delta_rps_sign = br->get_bits(1); + vlc = br->get_uvlc(); + // abs_delta_rps_minus1 shall be in 0, 2^15-1 (Sec. 7.4.8) + if (vlc==UVLC_ERROR || vlc > 32767) { return false; } + uint16_t abs_delta_rps = vlc + 1; int DeltaRPS = (delta_rps_sign ? -abs_delta_rps : abs_delta_rps); // bits are stored in this order: @@ -147,11 +148,11 @@ char *const use_delta_flag = (char *)alloca((nDeltaPocsRIdx+1) * sizeof(char)); for (int j=0;j<=nDeltaPocsRIdx;j++) { - used_by_curr_pic_flagj = get_bits(br,1); + used_by_curr_pic_flagj = br->get_bits(1); if (used_by_curr_pic_flagj) { use_delta_flagj = 1; // if this frame is used, we also have to apply the delta } else { - use_delta_flagj = get_bits(br,1); // otherwise, it is only optionally included + use_delta_flagj = br->get_bits(1); // otherwise, it is only optionally included } } @@ -171,7 +172,7 @@ // positive list for (int j=nPositiveRIdx-1;j>=0;j--) { - assert(RIdx >= 0 && RIdx < sets.size()); + assert(RIdx >= 0 && static_cast<size_t>(RIdx) < sets.size()); assert(j>=0 && j < MAX_NUM_REF_PICS); int dPoc = setsRIdx.DeltaPocS1j + DeltaRPS; // new delta @@ -252,19 +253,20 @@ // --- first, read the number of past and future frames in this set --- - int num_negative_pics = get_uvlc(br); - int num_positive_pics = get_uvlc(br); + uint32_t num_negative_pics = br->get_uvlc(); + uint32_t num_positive_pics = br->get_uvlc(); if (num_negative_pics == UVLC_ERROR || - num_positive_pics == UVLC_ERROR) { - // invalid num-ref-pics value + num_positive_pics == UVLC_ERROR || + num_negative_pics > MAX_NUM_REF_PICS || + num_positive_pics > MAX_NUM_REF_PICS) { errqueue->add_warning(DE265_WARNING_MAX_NUM_REF_PICS_EXCEEDED, false); return false; } // total number of reference pictures may not exceed buffer capacity if (num_negative_pics + num_positive_pics > - sps->sps_max_dec_pic_buffering sps->sps_max_sub_layers-1 ) { + static_cast<uint32_t>(sps->sps_max_dec_pic_buffering sps->sps_max_sub_layers-1 )) { out_set->NumNegativePics = 0; out_set->NumPositivePics = 0; @@ -275,12 +277,6 @@ return false; } - if (num_negative_pics > MAX_NUM_REF_PICS || - num_positive_pics > MAX_NUM_REF_PICS) { - errqueue->add_warning(DE265_WARNING_MAX_NUM_REF_PICS_EXCEEDED, false); - return false; - } - out_set->NumNegativePics = num_negative_pics; out_set->NumPositivePics = num_positive_pics; @@ -288,30 +284,41 @@ // past frames - int lastPocS=0; - for (int i=0;i<num_negative_pics;i++) { - int delta_poc_s0 = get_uvlc(br); + int16_t lastPocS=0; + for (uint32_t i=0;i<num_negative_pics;i++) { + uint32_t delta_poc_s0 = br->get_uvlc(); if (delta_poc_s0==UVLC_ERROR) { return false; } delta_poc_s0++; - char used_by_curr_pic_s0_flag = get_bits(br,1); + char used_by_curr_pic_s0_flag = br->get_bits(1); - out_set->DeltaPocS0i = lastPocS - delta_poc_s0; + if (delta_poc_s0 > static_cast<uint32_t>(lastPocS - INT16_MIN)) { + errqueue->add_warning(DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE, false); + return false; + } + // cast to int because delta_poc_s0 can be up to 32768 when lastPocS==0 + int16_t pocS = lastPocS - static_cast<int>(delta_poc_s0); + out_set->DeltaPocS0i = pocS; out_set->UsedByCurrPicS0i = used_by_curr_pic_s0_flag; - lastPocS = out_set->DeltaPocS0i; + lastPocS = pocS; } // future frames - lastPocS=0; - for (int i=0;i<num_positive_pics;i++) { - int delta_poc_s1 = get_uvlc(br); + lastPocS = 0; + for (uint32_t i=0;i<num_positive_pics;i++) { + uint32_t delta_poc_s1 = br->get_uvlc(); if (delta_poc_s1==UVLC_ERROR) { return false; } delta_poc_s1++; - char used_by_curr_pic_s1_flag = get_bits(br,1); + char used_by_curr_pic_s1_flag = br->get_bits(1); - out_set->DeltaPocS1i = lastPocS + delta_poc_s1; + if (delta_poc_s1 > static_cast<uint32_t>(INT16_MAX - lastPocS)) { + errqueue->add_warning(DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE, false); + return false; + } + int16_t pocS = lastPocS + static_cast<int16_t>(delta_poc_s1); + out_set->DeltaPocS1i = pocS; out_set->UsedByCurrPicS1i = used_by_curr_pic_s1_flag; - lastPocS = out_set->DeltaPocS1i; + lastPocS = pocS; } }
View file
libde265-1.0.16.tar.gz/libde265/refpic.h -> libde265-1.0.17.tar.gz/libde265/refpic.h
Changed
@@ -22,8 +22,9 @@ #define DE265_REFPIC_H #include "libde265/bitstream.h" +#include <cstdio> -#define MAX_NUM_REF_PICS 16 // maximum defined by standard, may be lower for some Levels +constexpr int MAX_NUM_REF_PICS = 16; // maximum defined by standard, may be lower for some Levels class ref_pic_set
View file
libde265-1.0.16.tar.gz/libde265/sao.cc -> libde265-1.0.17.tar.gz/libde265/sao.cc
Changed
@@ -137,7 +137,7 @@ slice_segment_header* sliceHeader = img->get_SliceHeader(xS<<chromashiftW, yS<<chromashiftH); - if (sliceHeader==NULL) { return; } + if (sliceHeader==nullptr) { return; } int sliceAddrRS = sliceHeader->SliceAddrRS; if (sliceAddrRS < ctbSliceAddrRS && @@ -271,8 +271,8 @@ { if (img->high_bit_depth(cIdx)) { apply_sao_internal<uint16_t>(img,xCtb,yCtb, shdr,cIdx,nSW,nSH, - (uint16_t*)in_img, in_stride, - (uint16_t*)out_img,out_stride); + reinterpret_cast<const uint16_t*>(in_img), in_stride, + reinterpret_cast<uint16_t*>(out_img),out_stride); } else { apply_sao_internal<uint8_t>(img,xCtb,yCtb, shdr,cIdx,nSW,nSH, @@ -336,7 +336,7 @@ int chromaImageSize = img->get_image_stride(1) * img->get_height(1) * img->get_bytes_per_pixel(1); uint8_t* inputCopy = new uint8_t libde265_max(lumaImageSize, chromaImageSize) ; - if (inputCopy == NULL) { + if (inputCopy == nullptr) { img->decctx->add_warning(DE265_WARNING_CANNOT_APPLY_SAO_OUT_OF_MEMORY,false); return; } @@ -356,7 +356,7 @@ for (int xCtb=0; xCtb<sps.PicWidthInCtbsY; xCtb++) { const slice_segment_header* shdr = img->get_SliceHeaderCtb(xCtb,yCtb); - if (shdr==NULL) { + if (shdr==nullptr) { delete inputCopy; return; } @@ -439,7 +439,7 @@ for (int xCtb=0; xCtb<sps.PicWidthInCtbsY; xCtb++) { const slice_segment_header* shdr = img->get_SliceHeaderCtb(xCtb,ctb_y); - if (shdr==NULL) { + if (shdr==nullptr) { break; } @@ -502,7 +502,6 @@ int nRows = sps.PicHeightInCtbsY; - int n=0; img->thread_start(nRows); for (int y=0;y<nRows;y++) @@ -516,8 +515,7 @@ task->inputProgress = saoInputProgress; imgunit->tasks.push_back(task); - add_task(&ctx->thread_pool_, task); - n++; + ctx->thread_pool_.add_task(task); } /* Currently need barrier here because when are finished, we have to swap the pixel
View file
libde265-1.0.16.tar.gz/libde265/sei.cc -> libde265-1.0.17.tar.gz/libde265/sei.cc
Changed
@@ -34,9 +34,9 @@ { sei_decoded_picture_hash* seihash = &sei->data.decoded_picture_hash; - seihash->hash_type = (enum sei_decoded_picture_hash_type)get_bits(reader,8); + seihash->hash_type = (enum sei_decoded_picture_hash_type)reader->get_bits(8); - if (sps==NULL) { + if (sps==nullptr) { return DE265_WARNING_SPS_MISSING_CANNOT_DECODE_SEI; } @@ -44,15 +44,15 @@ for (int i=0;i<nHashes;i++) { switch (seihash->hash_type) { case sei_decoded_picture_hash_type_MD5: - for (int b=0;b<16;b++) { seihash->md5ib = get_bits(reader,8); } + for (int b=0;b<16;b++) { seihash->md5ib = reader->get_bits(8); } break; case sei_decoded_picture_hash_type_CRC: - seihash->crci = get_bits(reader,16); + seihash->crci = reader->get_bits(16); break; case sei_decoded_picture_hash_type_checksum: - seihash->checksumi = get_bits(reader,32); + seihash->checksumi = reader->get_bits(32); break; } } @@ -121,7 +121,7 @@ { mWidth=w; mStride=stride; - mMem = NULL; + mMem = nullptr; } raw_hash_data::~raw_hash_data() @@ -139,7 +139,7 @@ raw_hash_data::data_chunk raw_hash_data::prepare_16bit(const uint8_t* data,int y) { - if (mMem == NULL) { + if (mMem == nullptr) { mMem = new uint8_t2*mWidth; } @@ -157,7 +157,7 @@ } -static uint32_t compute_checksum_8bit(uint8_t* data,int w,int h,int stride, int bit_depth) +static uint32_t compute_checksum(uint8_t* data,int w,int h,int stride, int bit_depth) { uint32_t sum = 0; @@ -169,17 +169,20 @@ } } else { + auto* data16 = reinterpret_cast<uint16_t*>(data); + int stride16 = stride / 2; for (int y=0; y<h; y++) for(int x=0; x<w; x++) { uint8_t xorMask = ( x & 0xFF ) ^ ( y & 0xFF ) ^ ( x >> 8 ) ^ ( y >> 8 ); - sum += (datay*stride + x & 0xFF) ^ xorMask; - sum += (datay*stride + x >> 8) ^ xorMask; + sum += (data16y*stride16 + x & 0xFF) ^ xorMask; + sum += (data16y*stride16 + x >> 8) ^ xorMask; } } return sum & 0xFFFFFFFF; } +/* static inline uint16_t crc_process_byte(uint16_t crc, uint8_t byte) { for (int bit=0;bit<8;bit++) { @@ -194,7 +197,6 @@ return crc; } -/* static uint16_t compute_CRC_8bit_old(const uint8_t* data,int w,int h,int stride) { uint16_t crc = 0xFFFF; @@ -339,7 +341,7 @@ case sei_decoded_picture_hash_type_checksum: { - uint32_t chksum = compute_checksum_8bit(data,w,h,stride, img->get_bit_depth(i)); + uint32_t chksum = compute_checksum(data,w,h,stride, img->get_bit_depth(i)); if (chksum != seihash->checksumi) { /* @@ -360,27 +362,39 @@ } +#define MAX_SEI_SIZE UINT32_C(0xFFFFFFFF) + de265_error read_sei(bitreader* reader, sei_message* sei, bool suffix, const seq_parameter_set* sps) { - int payload_type = 0; + uint16_t payload_type = 0; for (;;) { - int byte = get_bits(reader,8); + uint8_t byte = static_cast<uint8_t>(reader->get_bits(8)); + + if (std::numeric_limits<uint16_t>::max() - byte < payload_type) { + return DE265_ERROR_CANNOT_PROCESS_SEI; + } + payload_type += byte; if (byte != 0xFF) { break; } } //printf("SEI payload: %d\n",payload_type); - int payload_size = 0; + uint32_t payload_size = 0; for (;;) { - int byte = get_bits(reader,8); + uint32_t byte = reader->get_bits(8); + + if (MAX_SEI_SIZE - byte < payload_type) { + return DE265_ERROR_CANNOT_PROCESS_SEI; + } + payload_size += byte; if (byte != 0xFF) { break; } } - sei->payload_type = (enum sei_payload_type)payload_type; + sei->payload_type = payload_type; sei->payload_size = payload_size; @@ -441,7 +455,7 @@ } -const char* sei_type_name(enum sei_payload_type type) +const char* sei_type_name(uint16_t type) { switch (type) { case sei_payload_type_buffering_period:
View file
libde265-1.0.16.tar.gz/libde265/sei.h -> libde265-1.0.17.tar.gz/libde265/sei.h
Changed
@@ -70,8 +70,8 @@ typedef struct { - enum sei_payload_type payload_type; - int payload_size; + uint16_t payload_type; // enum sei_payload_type + uint32_t payload_size; union { sei_decoded_picture_hash decoded_picture_hash; @@ -80,7 +80,7 @@ class seq_parameter_set; -const char* sei_type_name(enum sei_payload_type type); +const char* sei_type_name(uint16_t type); de265_error read_sei(bitreader* reader, sei_message*, bool suffix, const seq_parameter_set* sps); void dump_sei(const sei_message*, const seq_parameter_set* sps);
View file
libde265-1.0.16.tar.gz/libde265/slice.cc -> libde265-1.0.17.tar.gz/libde265/slice.cc
Changed
@@ -42,16 +42,18 @@ const seq_parameter_set* sps, bitreader* br, ref_pic_set* out_set, - int idxRps, // index of the set to be read + int idxRps, // index of the set to be read const std::vector<ref_pic_set>& sets, bool sliceRefPicSet); void read_coding_tree_unit(thread_context* tctx); + void read_coding_quadtree(thread_context* tctx, int xCtb, int yCtb, int Log2CtbSizeY, int ctDepth); + /* void decode_inter_block(decoder_context* ctx,thread_context* tctx, int xC, int yC, int log2CbSize); @@ -90,8 +92,8 @@ slice_sao_chroma_flag = 0; num_ref_idx_active_override_flag = 0; - num_ref_idx_l0_active=1; // 1;16 - num_ref_idx_l1_active=1; // 1;16 + num_ref_idx_l0_active = 1; // 1;16 + num_ref_idx_l1_active = 1; // 1;16 ref_pic_list_modification_flag_l0 = 0; ref_pic_list_modification_flag_l1 = 0; @@ -105,8 +107,8 @@ // --- pred_weight_table --- - luma_log2_weight_denom=0; // 0;7 - ChromaLog2WeightDenom=0; // 0;7 + luma_log2_weight_denom = 0; // 0;7 + ChromaLog2WeightDenom = 0; // 0;7 // first index is L0/L1 /* @@ -129,8 +131,8 @@ deblocking_filter_override_flag = 0; slice_deblocking_filter_disabled_flag = 0; - slice_beta_offset=0; // = pps->beta_offset if undefined - slice_tc_offset=0; // = pps->tc_offset if undefined + slice_beta_offset = 0; // = pps->beta_offset if undefined + slice_tc_offset = 0; // = pps->tc_offset if undefined slice_loop_filter_across_slices_enabled_flag = 0; @@ -144,107 +146,116 @@ } -bool read_pred_weight_table(bitreader* br, slice_segment_header* shdr, decoder_context* ctx) +de265_error read_pred_weight_table(bitreader* br, slice_segment_header* shdr, decoder_context* ctx) { - int vlc; + uint32_t uvlc; + int32_t svlc; - pic_parameter_set* pps = ctx->get_pps((int)shdr->slice_pic_parameter_set_id); + pic_parameter_set* pps = ctx->get_pps((int) shdr->slice_pic_parameter_set_id); assert(pps); - seq_parameter_set* sps = ctx->get_sps((int)pps->seq_parameter_set_id); + seq_parameter_set* sps = ctx->get_sps((int) pps->seq_parameter_set_id); assert(sps); - shdr->luma_log2_weight_denom = vlc = get_uvlc(br); - if (vlc<0 || vlc>7) return false; + uvlc = br->get_uvlc(); + if (uvlc > 7) return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; + shdr->luma_log2_weight_denom = uvlc; if (sps->chroma_format_idc != 0) { - vlc = get_svlc(br); - vlc += shdr->luma_log2_weight_denom; - if (vlc<0 || vlc>7) return false; - shdr->ChromaLog2WeightDenom = vlc; + svlc = br->get_svlc(); + svlc += shdr->luma_log2_weight_denom; + if (svlc < 0 || svlc > 7) return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; + shdr->ChromaLog2WeightDenom = svlc; } - int sumWeightFlags = 0; + int sumWeightFlags2{}; - for (int l=0;l<=1;l++) - if (l==0 || (l==1 && shdr->slice_type == SLICE_TYPE_B)) - { - int num_ref = (l==0 ? shdr->num_ref_idx_l0_active-1 : shdr->num_ref_idx_l1_active-1); + for (int l = 0; l <= 1; l++) + if (l == 0 || (l == 1 && shdr->slice_type == SLICE_TYPE_B)) { + int num_ref = (l == 0 ? shdr->num_ref_idx_l0_active - 1 : shdr->num_ref_idx_l1_active - 1); - for (int i=0;i<=num_ref;i++) { - shdr->luma_weight_flagli = get_bits(br,1); - if (shdr->luma_weight_flagli) sumWeightFlags++; - } + for (int i = 0; i <= num_ref; i++) { + shdr->luma_weight_flagli = br->get_bits(1); + if (shdr->luma_weight_flagli) sumWeightFlagsl++; + } - if (sps->chroma_format_idc != 0) { - for (int i=0;i<=num_ref;i++) { - shdr->chroma_weight_flagli = get_bits(br,1); - if (shdr->chroma_weight_flagli) sumWeightFlags+=2; - } + if (sps->chroma_format_idc != 0) { + for (int i = 0; i <= num_ref; i++) { + shdr->chroma_weight_flagli = br->get_bits(1); + if (shdr->chroma_weight_flagli) sumWeightFlagsl += 2; } + } - for (int i=0;i<=num_ref;i++) { - if (shdr->luma_weight_flagli) { - - // delta_luma_weight + for (int i = 0; i <= num_ref; i++) { + if (shdr->luma_weight_flagli) { + // delta_luma_weight - vlc = get_svlc(br); - if (vlc < -128 || vlc > 127) return false; + svlc = br->get_svlc(); + if (svlc < -128 || svlc > 127) return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; - shdr->LumaWeightli = (1<<shdr->luma_log2_weight_denom) + vlc; + shdr->LumaWeightli = (1 << shdr->luma_log2_weight_denom) + svlc; - // luma_offset + // luma_offset - vlc = get_svlc(br); - if (vlc < -sps->WpOffsetHalfRangeY || vlc > sps->WpOffsetHalfRangeY-1) return false; - shdr->luma_offsetli = vlc; - } - else { - shdr->LumaWeightli = 1<<shdr->luma_log2_weight_denom; - shdr->luma_offsetli = 0; - } + svlc = br->get_svlc(); + if (svlc < -sps->WpOffsetHalfRangeY || svlc > sps->WpOffsetHalfRangeY - 1) return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; + shdr->luma_offsetli = svlc; + } + else { + shdr->LumaWeightli = 1 << shdr->luma_log2_weight_denom; + shdr->luma_offsetli = 0; + } - if (shdr->chroma_weight_flagli) - for (int j=0;j<2;j++) { - // delta_chroma_weight + if (shdr->chroma_weight_flagli) + for (int j = 0; j < 2; j++) { + // delta_chroma_weight - vlc = get_svlc(br); - if (vlc < -128 || vlc > 127) return false; + svlc = br->get_svlc(); + if (svlc < -128 || svlc > 127) return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; - shdr->ChromaWeightlij = (1<<shdr->ChromaLog2WeightDenom) + vlc; + shdr->ChromaWeightlij = (1 << shdr->ChromaLog2WeightDenom) + svlc; - // delta_chroma_offset + // delta_chroma_offset - vlc = get_svlc(br); - if (vlc < -4*sps->WpOffsetHalfRangeC || - vlc > 4*sps->WpOffsetHalfRangeC-1) return false; + svlc = br->get_svlc(); + if (svlc < -4 * sps->WpOffsetHalfRangeC || + svlc > 4 * sps->WpOffsetHalfRangeC - 1) + return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; - vlc = Clip3(-sps->WpOffsetHalfRangeC, - sps->WpOffsetHalfRangeC-1, - (sps->WpOffsetHalfRangeC - +vlc + svlc = Clip3(-sps->WpOffsetHalfRangeC, + sps->WpOffsetHalfRangeC-1, + (sps->WpOffsetHalfRangeC + +svlc -((sps->WpOffsetHalfRangeC*shdr->ChromaWeightlij) >> shdr->ChromaLog2WeightDenom))); - shdr->ChromaOffsetlij = vlc; - } - else { - for (int j=0;j<2;j++) { - shdr->ChromaWeightlij = 1<<shdr->ChromaLog2WeightDenom; - shdr->ChromaOffsetlij = 0; - }
View file
libde265-1.0.16.tar.gz/libde265/slice.h -> libde265-1.0.17.tar.gz/libde265/slice.h
Changed
@@ -35,8 +35,6 @@ #include <string.h> #include <memory> -#define MAX_NUM_REF_PICS 16 - class decoder_context; class thread_context; class error_queue; @@ -83,7 +81,7 @@ PART_nRx2N = 7 }; -const char* part_mode_name(enum PartMode); +const char* part_mode_name(PartMode); enum PredMode @@ -149,47 +147,47 @@ std::shared_ptr<const pic_parameter_set> pps; - char first_slice_segment_in_pic_flag; - char no_output_of_prior_pics_flag; - int slice_pic_parameter_set_id; - char dependent_slice_segment_flag; - int slice_segment_address; + bool first_slice_segment_in_pic_flag; + bool no_output_of_prior_pics_flag; + uint8_t slice_pic_parameter_set_id; // 0;63 + bool dependent_slice_segment_flag; + uint32_t slice_segment_address; - int slice_type; - char pic_output_flag; + uint8_t slice_type; // 0;2 + bool pic_output_flag; char colour_plane_id; int slice_pic_order_cnt_lsb; - char short_term_ref_pic_set_sps_flag; + bool short_term_ref_pic_set_sps_flag; ref_pic_set slice_ref_pic_set; - int short_term_ref_pic_set_idx; - int num_long_term_sps; - int num_long_term_pics; + uint8_t short_term_ref_pic_set_idx; + uint8_t num_long_term_sps; // 0;32 + uint8_t num_long_term_pics; // 0;32 uint8_t lt_idx_spsMAX_NUM_REF_PICS; int poc_lsb_ltMAX_NUM_REF_PICS; - char used_by_curr_pic_lt_flagMAX_NUM_REF_PICS; + bool used_by_curr_pic_lt_flagMAX_NUM_REF_PICS; - char delta_poc_msb_present_flagMAX_NUM_REF_PICS; - int delta_poc_msb_cycle_ltMAX_NUM_REF_PICS; + bool delta_poc_msb_present_flagMAX_NUM_REF_PICS; + uint32_t delta_poc_msb_cycle_ltMAX_NUM_REF_PICS; - char slice_temporal_mvp_enabled_flag; - char slice_sao_luma_flag; - char slice_sao_chroma_flag; + bool slice_temporal_mvp_enabled_flag; + bool slice_sao_luma_flag; + bool slice_sao_chroma_flag; - char num_ref_idx_active_override_flag; - int num_ref_idx_l0_active; // 1;16 - int num_ref_idx_l1_active; // 1;16 + bool num_ref_idx_active_override_flag; + uint8_t num_ref_idx_l0_active; // 1;16 + uint8_t num_ref_idx_l1_active; // 1;16 - char ref_pic_list_modification_flag_l0; - char ref_pic_list_modification_flag_l1; + bool ref_pic_list_modification_flag_l0; + bool ref_pic_list_modification_flag_l1; uint8_t list_entry_l016; uint8_t list_entry_l116; - char mvd_l1_zero_flag; - char cabac_init_flag; - char collocated_from_l0_flag; - int collocated_ref_idx; + bool mvd_l1_zero_flag; + bool cabac_init_flag; + bool collocated_from_l0_flag; + uint8_t collocated_ref_idx; // 0;15 // --- pred_weight_table --- @@ -200,29 +198,29 @@ uint8_t luma_weight_flag216; // bool uint8_t chroma_weight_flag216; // bool int16_t LumaWeight216; - int8_t luma_offset216; + int16_t luma_offset216; int16_t ChromaWeight2162; - int8_t ChromaOffset2162; + int16_t ChromaOffset2162; - int five_minus_max_num_merge_cand; + uint8_t five_minus_max_num_merge_cand; // 0;5 int slice_qp_delta; int slice_cb_qp_offset; int slice_cr_qp_offset; - char cu_chroma_qp_offset_enabled_flag; + bool cu_chroma_qp_offset_enabled_flag; - char deblocking_filter_override_flag; - char slice_deblocking_filter_disabled_flag; - int slice_beta_offset; // = pps->beta_offset if undefined - int slice_tc_offset; // = pps->tc_offset if undefined + bool deblocking_filter_override_flag; + bool slice_deblocking_filter_disabled_flag; + int8_t slice_beta_offset; // -12;12, = pps->beta_offset if undefined + int8_t slice_tc_offset; // -12;12, = pps->tc_offset if undefined - char slice_loop_filter_across_slices_enabled_flag; + bool slice_loop_filter_across_slices_enabled_flag; int num_entry_point_offsets; int offset_len; - std::vector<int> entry_point_offset; + std::vector<uint32_t> entry_point_offset; int slice_segment_header_extension_length; @@ -237,7 +235,7 @@ // --- data for external modules --- - int SliceAddrRS; // slice_segment_address of last independent slice + uint32_t SliceAddrRS; // slice_segment_address of last independent slice int MaxNumMergeCand; // directly derived from 'five_minus_max_num_merge_cand' int CurrRpsIdx; @@ -252,7 +250,7 @@ change in the mean-time (e.g. from ShortTerm to LongTerm). PicState is used in motion.cc */ - char LongTermRefPic2MAX_NUM_REF_PICS; /* Flag whether the picture at this ref-pic-list + bool LongTermRefPic2MAX_NUM_REF_PICS; /* Flag whether the picture at this ref-pic-list is a long-term picture. */ // context storage for dependent slices (stores CABAC model at end of slice segment) @@ -265,7 +263,7 @@ -typedef struct { +struct sao_info { // TODO: we could combine SaoTypeIdx and SaoEoClass into one byte to make the struct 16 bytes only unsigned char SaoTypeIdx; // use with (SaoTypeIdx>>(2*cIdx)) & 0x3 @@ -273,7 +271,7 @@ uint8_t sao_band_position3; int8_t saoOffsetVal34; // index with idx-1 as saoOffsetVal0==0 always -} sao_info; +}; @@ -291,8 +289,8 @@ int debug_startCtbRow; thread_context* tctx; - virtual void work(); - virtual std::string name() const; + void work() override; + std::string name() const override; }; class thread_task_slice_segment : public thread_task @@ -302,8 +300,8 @@ int debug_startCtbX, debug_startCtbY; thread_context* tctx; - virtual void work(); - virtual std::string name() const; + void work() override; + std::string name() const override; };
View file
libde265-1.0.16.tar.gz/libde265/sps.cc -> libde265-1.0.17.tar.gz/libde265/sps.cc
Changed
@@ -27,14 +27,14 @@ #include <stdlib.h> #include <string.h> -#define READ_VLC_OFFSET(variable, vlctype, offset) \ - if ((vlc = get_ ## vlctype(br)) == UVLC_ERROR) { \ +#define D 0 + +#define READ_VLC(variable, vlctype) \ + if ((vlc = br->get_ ## vlctype()) == UVLC_ERROR) { \ errqueue->add_warning(DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE, false); \ return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; \ } \ - variable = vlc + offset; - -#define READ_VLC(variable, vlctype) READ_VLC_OFFSET(variable,vlctype,0) + variable = vlc; static int SubWidthC_tab = { 1,2,2,1 }; @@ -63,28 +63,10 @@ bool sliceRefPicSet); // is this in the slice header? -sps_range_extension::sps_range_extension() -{ - transform_skip_rotation_enabled_flag = 0; - transform_skip_context_enabled_flag = 0; - implicit_rdpcm_enabled_flag = 0; - explicit_rdpcm_enabled_flag = 0; - extended_precision_processing_flag = 0; - intra_smoothing_disabled_flag = 0; - high_precision_offsets_enabled_flag = 0; - persistent_rice_adaptation_enabled_flag = 0; - cabac_bypass_alignment_enabled_flag = 0; -} +sps_range_extension::sps_range_extension() = default; -seq_parameter_set::seq_parameter_set() -{ - // TODO: this is dangerous - //memset(this,0,sizeof(seq_parameter_set)); - - sps_read = false; - //ref_pic_sets = NULL; -} +seq_parameter_set::seq_parameter_set() = default; seq_parameter_set::~seq_parameter_set() @@ -197,64 +179,80 @@ de265_error seq_parameter_set::read(error_queue* errqueue, bitreader* br) { - int vlc; + uint32_t vlc; - video_parameter_set_id = get_bits(br,4); - sps_max_sub_layers = get_bits(br,3) +1; + video_parameter_set_id = br->get_bits(4); + sps_max_sub_layers = br->get_bits(3) +1; if (sps_max_sub_layers>7) { return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; } - sps_temporal_id_nesting_flag = get_bits(br,1); + sps_temporal_id_nesting_flag = br->get_bits(1); profile_tier_level_.read(br, sps_max_sub_layers); - READ_VLC(seq_parameter_set_id, uvlc); - if (seq_parameter_set_id >= DE265_MAX_SPS_SETS) { + if ((vlc = br->get_uvlc()) == UVLC_ERROR || vlc >= DE265_MAX_SPS_SETS) { return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; } + seq_parameter_set_id = vlc; // --- decode chroma type --- - READ_VLC(chroma_format_idc, uvlc); + if ((vlc = br->get_uvlc()) == UVLC_ERROR || vlc > 3) { + errqueue->add_warning(DE265_WARNING_INVALID_CHROMA_FORMAT, false); + return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; + } + chroma_format_idc = vlc; if (chroma_format_idc == 3) { - separate_colour_plane_flag = get_bits(br,1); + separate_colour_plane_flag = br->get_bits(1); } else { separate_colour_plane_flag = 0; } - if (chroma_format_idc<0 || - chroma_format_idc>3) { - errqueue->add_warning(DE265_WARNING_INVALID_CHROMA_FORMAT, false); - return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; - } - // --- picture size --- - READ_VLC(pic_width_in_luma_samples, uvlc); - READ_VLC(pic_height_in_luma_samples, uvlc); - - if (pic_width_in_luma_samples == 0 || - pic_height_in_luma_samples == 0) { + if ((vlc = br->get_uvlc()) == UVLC_ERROR || vlc == 0 || vlc > MAX_PICTURE_WIDTH) { return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; } + pic_width_in_luma_samples = vlc; - if (pic_width_in_luma_samples > MAX_PICTURE_WIDTH || - pic_height_in_luma_samples> MAX_PICTURE_HEIGHT) { + if ((vlc = br->get_uvlc()) == UVLC_ERROR || vlc == 0 || vlc > MAX_PICTURE_HEIGHT) { return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; } + pic_height_in_luma_samples = vlc; - conformance_window_flag = get_bits(br,1); + conformance_window_flag = br->get_bits(1); if (conformance_window_flag) { - READ_VLC(conf_win_left_offset, uvlc); - READ_VLC(conf_win_right_offset, uvlc); - READ_VLC(conf_win_top_offset, uvlc); - READ_VLC(conf_win_bottom_offset,uvlc); + if ((vlc = br->get_uvlc()) == UVLC_ERROR || vlc >= static_cast<uint32_t>(pic_width_in_luma_samples)) { + errqueue->add_warning(DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE, false); + return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; + } + conf_win_left_offset = vlc; + + if ((vlc = br->get_uvlc()) == UVLC_ERROR || + vlc + conf_win_left_offset >= static_cast<uint32_t>(pic_width_in_luma_samples)) { + errqueue->add_warning(DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE, false); + return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; + } + conf_win_right_offset = vlc; + + if ((vlc = br->get_uvlc()) == UVLC_ERROR || vlc >= static_cast<uint32_t>(pic_height_in_luma_samples)) { + errqueue->add_warning(DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE, false); + return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; + } + conf_win_top_offset = vlc; + + if ((vlc = br->get_uvlc()) == UVLC_ERROR || + vlc + conf_win_top_offset >= static_cast<uint32_t>(pic_height_in_luma_samples)) { + errqueue->add_warning(DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE, false); + return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; + } + conf_win_bottom_offset = vlc; } else { conf_win_left_offset = 0; @@ -263,26 +261,29 @@ conf_win_bottom_offset= 0; } - READ_VLC_OFFSET(bit_depth_luma, uvlc, 8); - READ_VLC_OFFSET(bit_depth_chroma,uvlc, 8); - if (bit_depth_luma > 16 || - bit_depth_chroma > 16) { + if ((vlc = br->get_uvlc()) == UVLC_ERROR || vlc > 8) { + errqueue->add_warning(DE265_WARNING_SPS_HEADER_INVALID, false); + return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; + } + bit_depth_luma = vlc + 8; + + if ((vlc = br->get_uvlc()) == UVLC_ERROR || vlc > 8) { errqueue->add_warning(DE265_WARNING_SPS_HEADER_INVALID, false); return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; } + bit_depth_chroma = vlc + 8; - READ_VLC_OFFSET(log2_max_pic_order_cnt_lsb, uvlc, 4); - if (log2_max_pic_order_cnt_lsb<4 || - log2_max_pic_order_cnt_lsb>16) { + if ((vlc = br->get_uvlc()) == UVLC_ERROR || vlc > 12) { errqueue->add_warning(DE265_WARNING_SPS_HEADER_INVALID, false); return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; } + log2_max_pic_order_cnt_lsb = vlc + 4; MaxPicOrderCntLsb = 1<<(log2_max_pic_order_cnt_lsb); // --- sub_layer_ordering_info --- - sps_sub_layer_ordering_info_present_flag = get_bits(br,1); + sps_sub_layer_ordering_info_present_flag = br->get_bits(1); int firstLayer = (sps_sub_layer_ordering_info_present_flag ? 0 : sps_max_sub_layers-1 ); @@ -291,7 +292,7 @@ // sps_max_dec_pic_bufferingi
View file
libde265-1.0.16.tar.gz/libde265/sps.h -> libde265-1.0.17.tar.gz/libde265/sps.h
Changed
@@ -33,11 +33,11 @@ class error_queue; // #define MAX_REF_PIC_SETS 64 // maximum according to standard -#define MAX_NUM_LT_REF_PICS_SPS 32 +constexpr int MAX_NUM_LT_REF_PICS_SPS = 32; // This is just a safety range. It is chosen such that width/height fits into 16bit integers and the total number of pixels in 32bit integers. -#define MAX_PICTURE_WIDTH 65535 -#define MAX_PICTURE_HEIGHT 65535 +constexpr int MAX_PICTURE_WIDTH = 65535; +constexpr int MAX_PICTURE_HEIGHT = 65535; enum { CHROMA_MONO = 0, @@ -48,14 +48,14 @@ }; -typedef struct scaling_list_data { +struct scaling_list_data { // structure size: approx. 4 kB uint8_t ScalingFactor_Size0644; uint8_t ScalingFactor_Size1688; uint8_t ScalingFactor_Size261616; uint8_t ScalingFactor_Size363232; -} scaling_list_data; +}; enum PresetSet { @@ -68,15 +68,15 @@ public: sps_range_extension(); - uint8_t transform_skip_rotation_enabled_flag; - uint8_t transform_skip_context_enabled_flag; - uint8_t implicit_rdpcm_enabled_flag; - uint8_t explicit_rdpcm_enabled_flag; - uint8_t extended_precision_processing_flag; - uint8_t intra_smoothing_disabled_flag; - uint8_t high_precision_offsets_enabled_flag; - uint8_t persistent_rice_adaptation_enabled_flag; - uint8_t cabac_bypass_alignment_enabled_flag; + uint8_t transform_skip_rotation_enabled_flag = 0; + uint8_t transform_skip_context_enabled_flag = 0; + uint8_t implicit_rdpcm_enabled_flag = 0; + uint8_t explicit_rdpcm_enabled_flag = 0; + uint8_t extended_precision_processing_flag = 0; + uint8_t intra_smoothing_disabled_flag = 0; + uint8_t high_precision_offsets_enabled_flag = 0; + uint8_t persistent_rice_adaptation_enabled_flag = 0; + uint8_t cabac_bypass_alignment_enabled_flag = 0; de265_error read(error_queue*, bitreader*); void dump(int fd) const; @@ -98,81 +98,82 @@ void set_TB_log2size_range(int mini,int maxi); void set_resolution(int w,int h); - bool sps_read; // whether the sps has been read from the bitstream + bool sps_read = false; // whether the sps has been read from the bitstream - char video_parameter_set_id; - char sps_max_sub_layers; // 1;7 - char sps_temporal_id_nesting_flag; + uint8_t video_parameter_set_id; + uint8_t sps_max_sub_layers; // 1;7 + bool sps_temporal_id_nesting_flag; profile_tier_level profile_tier_level_; - int seq_parameter_set_id; - int chroma_format_idc; + uint8_t seq_parameter_set_id; // 0;15 + uint8_t chroma_format_idc; // 0;3 - char separate_colour_plane_flag; + bool separate_colour_plane_flag; int pic_width_in_luma_samples; int pic_height_in_luma_samples; - char conformance_window_flag; + bool conformance_window_flag; int conf_win_left_offset; int conf_win_right_offset; int conf_win_top_offset; int conf_win_bottom_offset; - int bit_depth_luma; - int bit_depth_chroma; + uint8_t bit_depth_luma; // 8;16 + uint8_t bit_depth_chroma; // 8;16 - int log2_max_pic_order_cnt_lsb; - char sps_sub_layer_ordering_info_present_flag; + uint8_t log2_max_pic_order_cnt_lsb; // 4;16 + bool sps_sub_layer_ordering_info_present_flag; - int sps_max_dec_pic_buffering7; // for each temporal layer - int sps_max_num_reorder_pics7; - int sps_max_latency_increase_plus17; + uint8_t sps_max_dec_pic_buffering7; // for each temporal layer + uint8_t sps_max_num_reorder_pics7; + uint32_t sps_max_latency_increase_plus17; + bool sps_max_latency_increase_present7 = {}; - int log2_min_luma_coding_block_size; // smallest CB size 3;6 - int log2_diff_max_min_luma_coding_block_size; // largest CB size - int log2_min_transform_block_size; // smallest TB size 2;5 - int log2_diff_max_min_transform_block_size; // largest TB size - int max_transform_hierarchy_depth_inter; - int max_transform_hierarchy_depth_intra; + uint8_t log2_min_luma_coding_block_size; // smallest CB size 3;6 + uint8_t log2_diff_max_min_luma_coding_block_size; // largest CB size + uint8_t log2_min_transform_block_size; // smallest TB size 2;5 + uint8_t log2_diff_max_min_transform_block_size; // largest TB size + uint8_t max_transform_hierarchy_depth_inter; + uint8_t max_transform_hierarchy_depth_intra; - char scaling_list_enable_flag; - char sps_scaling_list_data_present_flag; /* if not set, the default scaling lists will be set + bool scaling_list_enable_flag; + bool sps_scaling_list_data_present_flag; /* if not set, the default scaling lists will be set in scaling_list */ struct scaling_list_data scaling_list; - char amp_enabled_flag; - char sample_adaptive_offset_enabled_flag; - char pcm_enabled_flag; + bool amp_enabled_flag; + bool sample_adaptive_offset_enabled_flag; + bool pcm_enabled_flag; - char pcm_sample_bit_depth_luma; - char pcm_sample_bit_depth_chroma; + uint8_t pcm_sample_bit_depth_luma; + uint8_t pcm_sample_bit_depth_chroma; int log2_min_pcm_luma_coding_block_size; int log2_diff_max_min_pcm_luma_coding_block_size; - char pcm_loop_filter_disable_flag; + bool pcm_loop_filter_disable_flag; int num_short_term_ref_pic_sets() const { return ref_pic_sets.size(); } std::vector<ref_pic_set> ref_pic_sets; // 0 ; num_short_term_ref_pic_set (<=MAX_REF_PIC_SETS) ) - char long_term_ref_pics_present_flag; + bool long_term_ref_pics_present_flag; - int num_long_term_ref_pics_sps; + uint8_t num_long_term_ref_pics_sps; // 0;32 int lt_ref_pic_poc_lsb_spsMAX_NUM_LT_REF_PICS_SPS; - char used_by_curr_pic_lt_sps_flagMAX_NUM_LT_REF_PICS_SPS; + bool used_by_curr_pic_lt_sps_flagMAX_NUM_LT_REF_PICS_SPS; - char sps_temporal_mvp_enabled_flag; - char strong_intra_smoothing_enable_flag; + bool sps_temporal_mvp_enabled_flag; + bool strong_intra_smoothing_enable_flag; - char vui_parameters_present_flag; + bool vui_parameters_present_flag; video_usability_information vui; - char sps_extension_present_flag; - char sps_range_extension_flag; - char sps_multilayer_extension_flag; - char sps_extension_6bits; + bool sps_extension_present_flag; + bool sps_range_extension_flag; + bool sps_multilayer_extension_flag; + uint8_t sps_extension_6bits; sps_range_extension range_extension; @@ -200,16 +201,16 @@ int MaxPicOrderCntLsb; - int Log2MinCbSizeY; - int Log2CtbSizeY; - int MinCbSizeY; - int CtbSizeY; - int PicWidthInMinCbsY; - int PicWidthInCtbsY; - int PicHeightInMinCbsY; - int PicHeightInCtbsY; - int PicSizeInMinCbsY; - int PicSizeInCtbsY; + uint8_t Log2MinCbSizeY; + uint8_t Log2CtbSizeY; + uint8_t MinCbSizeY; + uint8_t CtbSizeY; + uint16_t PicWidthInMinCbsY; + uint16_t PicWidthInCtbsY; + uint16_t PicHeightInMinCbsY;
View file
libde265-1.0.16.tar.gz/libde265/threads.cc -> libde265-1.0.17.tar.gz/libde265/threads.cc
Changed
@@ -29,74 +29,13 @@ #endif -#ifndef _WIN32 -// #include <intrin.h> - -#define THREAD_RESULT_TYPE void* -#define THREAD_PARAM_TYPE void* -#define THREAD_CALLING_CONVENTION - -#include <stdio.h> - -int de265_thread_create(de265_thread* t, void *(*start_routine) (void *), void *arg) { return pthread_create(t,NULL,start_routine,arg); } -void de265_thread_join(de265_thread t) { pthread_join(t,NULL); } -void de265_thread_destroy(de265_thread* t) { } -void de265_mutex_init(de265_mutex* m) { pthread_mutex_init(m,NULL); } -void de265_mutex_destroy(de265_mutex* m) { pthread_mutex_destroy(m); } -void de265_mutex_lock(de265_mutex* m) { pthread_mutex_lock(m); } -void de265_mutex_unlock(de265_mutex* m) { pthread_mutex_unlock(m); } -void de265_cond_init(de265_cond* c) { pthread_cond_init(c,NULL); } -void de265_cond_destroy(de265_cond* c) { pthread_cond_destroy(c); } -void de265_cond_broadcast(de265_cond* c,de265_mutex* m) { pthread_cond_broadcast(c); } -void de265_cond_wait(de265_cond* c,de265_mutex* m) { pthread_cond_wait(c,m); } -void de265_cond_signal(de265_cond* c) { pthread_cond_signal(c); } -#else // _WIN32 - -#define THREAD_RESULT_TYPE DWORD -#define THREAD_CALLING_CONVENTION WINAPI -#define THREAD_PARAM_TYPE LPVOID - -int de265_thread_create(de265_thread* t, LPTHREAD_START_ROUTINE start_routine, void *arg) { - HANDLE handle = CreateThread(NULL, 0, start_routine, arg, 0, NULL); - if (handle == NULL) { - return -1; - } - *t = handle; - return 0; -} -void de265_thread_join(de265_thread t) { WaitForSingleObject(t, INFINITE); } -void de265_thread_destroy(de265_thread* t) { CloseHandle(*t); *t = NULL; } -void de265_mutex_init(de265_mutex* m) { *m = CreateMutex(NULL, FALSE, NULL); } -void de265_mutex_destroy(de265_mutex* m) { CloseHandle(*m); } -void de265_mutex_lock(de265_mutex* m) { WaitForSingleObject(*m, INFINITE); } -void de265_mutex_unlock(de265_mutex* m) { ReleaseMutex(*m); } -void de265_cond_init(de265_cond* c) { win32_cond_init(c); } -void de265_cond_destroy(de265_cond* c) { win32_cond_destroy(c); } -void de265_cond_broadcast(de265_cond* c,de265_mutex* m) -{ - de265_mutex_lock(m); - win32_cond_broadcast(c); - de265_mutex_unlock(m); -} -void de265_cond_wait(de265_cond* c,de265_mutex* m) { win32_cond_wait(c,m); } -void de265_cond_signal(de265_cond* c) { win32_cond_signal(c); } -#endif // _WIN32 - - - - de265_progress_lock::de265_progress_lock() { mProgress = 0; - - de265_mutex_init(&mutex); - de265_cond_init(&cond); } de265_progress_lock::~de265_progress_lock() { - de265_mutex_destroy(&mutex); - de265_cond_destroy(&cond); } void de265_progress_lock::wait_for_progress(int progress) @@ -105,34 +44,29 @@ return; } - de265_mutex_lock(&mutex); + std::unique_lock<std::mutex> lock(mutex); while (mProgress < progress) { - de265_cond_wait(&cond, &mutex); + cond.wait(lock); } - de265_mutex_unlock(&mutex); } void de265_progress_lock::set_progress(int progress) { - de265_mutex_lock(&mutex); + std::unique_lock<std::mutex> lock(mutex); if (progress>mProgress) { mProgress = progress; - de265_cond_broadcast(&cond, &mutex); + cond.notify_all(); } - - de265_mutex_unlock(&mutex); } void de265_progress_lock::increase_progress(int progress) { - de265_mutex_lock(&mutex); + std::unique_lock<std::mutex> lock(mutex); mProgress += progress; - de265_cond_broadcast(&cond, &mutex); - - de265_mutex_unlock(&mutex); + cond.notify_all(); } int de265_progress_lock::get_progress() const @@ -155,7 +89,7 @@ printf("active threads: %d queue len: %d\n",pool->num_threads_working,pool->num_tasks); char *const p = (char *)alloca(w * h * sizeof(char)); - assert(p != NULL); + assert(p != nullptr); memset(p,' ',w*h); for (int i=0;i<pool->num_tasks;i++) { @@ -186,47 +120,44 @@ #endif -static THREAD_RESULT_TYPE THREAD_CALLING_CONVENTION worker_thread(THREAD_PARAM_TYPE pool_ptr) +static void worker_thread(thread_pool* pool) { - thread_pool* pool = (thread_pool*)pool_ptr; - - - de265_mutex_lock(&pool->mutex); - while(true) { - // wait until we can pick a task or until the pool has been stopped + thread_task* task = nullptr; - for (;;) { - // end waiting if thread-pool has been stopped or we have a task to execute + { + std::unique_lock<std::mutex> lock(pool->mutex); - if (pool->stopped || pool->tasks.size()>0) { - break; - } + // wait until we can pick a task or until the pool has been stopped - //printf("going idle\n"); - de265_cond_wait(&pool->cond_var, &pool->mutex); - } + for (;;) { + // end waiting if thread-pool has been stopped or we have a task to execute - // if the pool was shut down, end the execution + if (pool->stopped || pool->tasks.size()>0) { + break; + } - if (pool->stopped) { - de265_mutex_unlock(&pool->mutex); - return (THREAD_RESULT_TYPE)0; - } + //printf("going idle\n"); + pool->cond_var.wait(lock); + } + // if the pool was shut down, end the execution - // get a task + if (pool->stopped) { + return; + } - thread_task* task = pool->tasks.front(); - pool->tasks.pop_front(); - pool->num_threads_working++; + // get a task - //printblks(pool); + task = pool->tasks.front(); + pool->tasks.pop_front(); - de265_mutex_unlock(&pool->mutex); + pool->num_threads_working++; + //printblks(pool); + } // execute the task @@ -234,81 +165,70 @@ // end processing and check if this was the last task to be processed
View file
libde265-1.0.16.tar.gz/libde265/threads.h -> libde265-1.0.17.tar.gz/libde265/threads.h
Changed
@@ -31,45 +31,20 @@ #include <string> #include <atomic> -#ifndef _WIN32 -#include <pthread.h> - -typedef pthread_t de265_thread; -typedef pthread_mutex_t de265_mutex; -typedef pthread_cond_t de265_cond; - -#else // _WIN32 +#ifdef _WIN32 #if !defined(NOMINMAX) -#define NOMINMAX 1 +#define NOMINMAX #endif #include <windows.h> #include "../extra/win32cond.h" #if _MSC_VER > 1310 #include <intrin.h> #endif - -typedef HANDLE de265_thread; -typedef HANDLE de265_mutex; -typedef win32_cond_t de265_cond; #endif // _WIN32 -#ifndef _WIN32 -int de265_thread_create(de265_thread* t, void *(*start_routine) (void *), void *arg); -#else -int de265_thread_create(de265_thread* t, LPTHREAD_START_ROUTINE start_routine, void *arg); -#endif -void de265_thread_join(de265_thread t); -void de265_thread_destroy(de265_thread* t); -void de265_mutex_init(de265_mutex* m); -void de265_mutex_destroy(de265_mutex* m); -void de265_mutex_lock(de265_mutex* m); -void de265_mutex_unlock(de265_mutex* m); -void de265_cond_init(de265_cond* c); -void de265_cond_destroy(de265_cond* c); -void de265_cond_broadcast(de265_cond* c, de265_mutex* m); -void de265_cond_wait(de265_cond* c,de265_mutex* m); -void de265_cond_signal(de265_cond* c); - +#include <mutex> +#include <condition_variable> +#include <thread> class de265_progress_lock { @@ -88,8 +63,8 @@ // private data - de265_mutex mutex; - de265_cond cond; + std::mutex mutex; + std::condition_variable cond; }; @@ -108,7 +83,7 @@ }; -#define MAX_THREADS 32 +constexpr int MAX_THREADS = 32; /* TODO NOTE: When unblocking a task, we have to check first if there are threads waiting because of the run-count limit. @@ -119,26 +94,26 @@ class thread_pool { public: + de265_error start(int num_threads); + void stop(); // do not process remaining tasks + void add_task(thread_task* task); + + bool stopped; std::deque<thread_task*> tasks; // we are not the owner - de265_thread threadMAX_THREADS; - int num_threads; - int num_threads_working; - int ctbxMAX_THREADS; // the CTB the thread is working on - int ctbyMAX_THREADS; - - de265_mutex mutex; - de265_cond cond_var; -}; - + std::mutex mutex; + std::condition_variable cond_var; -de265_error start_thread_pool(thread_pool* pool, int num_threads); -void stop_thread_pool(thread_pool* pool); // do not process remaining tasks +private: + std::thread threadMAX_THREADS; + int num_threads; -void add_task(thread_pool* pool, thread_task* task); // TOCO: can make thread_task const + //int ctbxMAX_THREADS; // the CTB the thread is working on + //int ctbyMAX_THREADS; +}; #endif
View file
libde265-1.0.16.tar.gz/libde265/transform.cc -> libde265-1.0.17.tar.gz/libde265/transform.cc
Changed
@@ -111,7 +111,7 @@ int xTmp = (xQG-1) >> sps.Log2MinTrafoSize; int yTmp = (yQG ) >> sps.Log2MinTrafoSize; int minTbAddrA = pps.MinTbAddrZSxTmp + yTmp*sps.PicWidthInTbsY; - int ctbAddrA = minTbAddrA >> (2 * (sps.Log2CtbSizeY-sps.Log2MinTrafoSize)); + uint32_t ctbAddrA = minTbAddrA >> (2 * (sps.Log2CtbSizeY-sps.Log2MinTrafoSize)); if (ctbAddrA == tctx->CtbAddrInTS) { qPYA = tctx->img->get_QPY(xQG-1,yQG); } @@ -126,8 +126,8 @@ if (tctx->img->available_zscan(xQG,yQG, xQG,yQG-1)) { int xTmp = (xQG ) >> sps.Log2MinTrafoSize; int yTmp = (yQG-1) >> sps.Log2MinTrafoSize; - int minTbAddrB = pps.MinTbAddrZSxTmp + yTmp*sps.PicWidthInTbsY; - int ctbAddrB = minTbAddrB >> (2 * (sps.Log2CtbSizeY-sps.Log2MinTrafoSize)); + uint32_t minTbAddrB = pps.MinTbAddrZSxTmp + yTmp*sps.PicWidthInTbsY; + uint32_t ctbAddrB = minTbAddrB >> (2 * (sps.Log2CtbSizeY-sps.Log2MinTrafoSize)); if (ctbAddrB == tctx->CtbAddrInTS) { qPYB = tctx->img->get_QPY(xQG,yQG-1); } @@ -146,10 +146,9 @@ int QPY = ((qPY_PRED + tctx->CuQpDelta + 52+2*sps.QpBdOffset_Y) % (52 + sps.QpBdOffset_Y)) - sps.QpBdOffset_Y; + assert(QPY >= -sps.QpBdOffset_Y && QPY <= 51); + tctx->qPYPrime = QPY + sps.QpBdOffset_Y; - if (tctx->qPYPrime<0) { - tctx->qPYPrime=0; - } int qPiCb = Clip3(-sps.QpBdOffset_C,57, QPY+pps.pic_cb_qp_offset + shdr->slice_cb_qp_offset + tctx->CuQpOffsetCb); int qPiCr = Clip3(-sps.QpBdOffset_C,57, QPY+pps.pic_cr_qp_offset + shdr->slice_cr_qp_offset + tctx->CuQpOffsetCr); @@ -256,7 +255,7 @@ */ residualy*nT+x += (tctx->ResScaleVal * - ((tctx->residual_lumay*nT+x << BitDepthC ) >> BitDepthY ) ) >> 3; + static_cast<int32_t>((static_cast<uint32_t>(tctx->residual_lumay*nT+x) << BitDepthC ) >> BitDepthY ) ) >> 3; } } @@ -470,8 +469,7 @@ for (int i=0;i<tctx->nCoeffcIdx;i++) { - // usually, this needs to be 64bit, but because we modify the shift above, we can use 16 bit - int32_t currCoeff = tctx->coeffListcIdxi; + int64_t currCoeff = tctx->coeffListcIdxi; //logtrace(LogTransform,"coefficient%d = %d\n",tctx->coeffPoscIdxi, //tctx->coeffListcIdxi); @@ -504,7 +502,7 @@ case 8: sclist = &pps.scaling_list.ScalingFactor_Size1matrixID00; break; case 16: sclist = &pps.scaling_list.ScalingFactor_Size2matrixID00; break; case 32: sclist = &pps.scaling_list.ScalingFactor_Size3matrixID00; break; - default: assert(0); + default: assert(0); sclist = nullptr; } for (int i=0;i<tctx->nCoeffcIdx;i++) { @@ -534,7 +532,9 @@ logtrace(LogTransform,"*\n"); } +#ifdef DE265_LOG_TRACE int bdShift2 = (cIdx==0) ? 20-sps.BitDepth_Y : 20-sps.BitDepth_C; +#endif logtrace(LogTransform,"bdShift2=%d\n",bdShift2); @@ -687,7 +687,6 @@ int rnd = (intra ? 171 : 85) << (qBits-9); int x, y; - int uiAcSum = 0; int nStride = (1<<log2TrSize); @@ -701,7 +700,6 @@ sign = (level < 0 ? -1: 1); level = (abs_value(level) * uiQ + rnd ) >> qBits; - uiAcSum += level; level *= sign; out_coeffblockPos = Clip3(-32768, 32767, level); //logtrace(LogTransform,"%d\n", out_coeffblockPos); @@ -722,7 +720,7 @@ const int offset = (1<<(bdShift-1)); const int fact = m_x_y * levelScaleqP%6 << (qP/6); - int blkSize = (1<<log2TrSize); + //int blkSize = (1<<log2TrSize); int nCoeff = (1<<(log2TrSize<<1)); for (int i=0;i<nCoeff;i++) {
View file
libde265-1.0.16.tar.gz/libde265/util.cc -> libde265-1.0.17.tar.gz/libde265/util.cc
Changed
@@ -73,7 +73,9 @@ } #endif +#ifdef DE265_LOG_TRACE static long logcnt10; +#endif #ifdef DE265_LOG_ERROR void logerror(enum LogModule module, const char* string, ...) @@ -232,7 +234,7 @@ } -static void (*debug_image_output_func)(const struct de265_image*, int slot) = NULL; +static void (*debug_image_output_func)(const struct de265_image*, int slot) = nullptr; void debug_set_image_output(void (*func)(const struct de265_image*, int slot)) {
View file
libde265-1.0.16.tar.gz/libde265/util.h -> libde265-1.0.17.tar.gz/libde265/util.h
Changed
@@ -64,39 +64,6 @@ #define ALIGNED_8( var ) LIBDE265_DECLARE_ALIGNED( var, 8 ) #define ALIGNED_4( var ) LIBDE265_DECLARE_ALIGNED( var, 4 ) -// C++11 specific features -#if defined(_MSC_VER) || (!__clang__ && __GNUC__ && GCC_VERSION < 40600) -#define FOR_LOOP(type, var, list) for each (type var in list) -#undef FOR_LOOP_AUTO_SUPPORT -#else -#define FOR_LOOP(type, var, list) for (type var : list) -#define FOR_LOOP_AUTO_SUPPORT 1 -#endif - -#ifdef USE_STD_TR1_NAMESPACE -#include <tr1/memory> -namespace std { using namespace std::tr1; } -#endif - -#ifdef NEED_STD_MOVE_FALLBACK -// Provide fallback variant of "std::move" for older compilers with -// incomplete/broken C++11 support. -namespace std { - -template<typename _Tp> -inline typename std::remove_reference<_Tp>::type&& move(_Tp&& __t) { - return static_cast<typename std::remove_reference<_Tp>::type&&>(__t); -} - -} // namespace std -#endif - -#ifdef NEED_NULLPTR_FALLBACK -// Compilers with partial/incomplete support for C++11 don't know about -// "nullptr". A simple alias should be fine for our use case. -#define nullptr NULL -#endif - #ifdef _MSC_VER #ifdef _CPPRTTI #define RTTI_ENABLED @@ -193,27 +160,27 @@ #ifdef DE265_LOG_ERROR void logerror(enum LogModule module, const char* string, ...); #else -#define logerror(a,b, ...) { } +#define logerror(...) { } #endif #ifdef DE265_LOG_INFO void loginfo (enum LogModule module, const char* string, ...); #else -#define loginfo(a,b, ...) { } +#define loginfo(...) { } #endif #ifdef DE265_LOG_DEBUG void logdebug(enum LogModule module, const char* string, ...); bool logdebug_enabled(enum LogModule module); #else -#define logdebug(a,b, ...) { } +#define logdebug(...) { } inline bool logdebug_enabled(enum LogModule module) { return false; } #endif #ifdef DE265_LOG_TRACE void logtrace(enum LogModule module, const char* string, ...); #else -#define logtrace(a,b, ...) { } +#define logtrace(...) { } #endif void log2fh(FILE* fh, const char* string, ...);
View file
libde265-1.0.16.tar.gz/libde265/vps.cc -> libde265-1.0.17.tar.gz/libde265/vps.cc
Changed
@@ -27,37 +27,37 @@ void profile_data::set_defaults(enum profile_idc profile, int level_major, int level_minor) { - profile_present_flag = 1; + profile_present_flag = true; profile_space = 0; - tier_flag = 0; + tier_flag = false; profile_idc = profile; for (int i=0;i<32;i++) { - profile_compatibility_flagi=0; + profile_compatibility_flagi=false; } switch (profile) { case Profile_Main: - profile_compatibility_flagProfile_Main=1; - profile_compatibility_flagProfile_Main10=1; + profile_compatibility_flagProfile_Main=true; + profile_compatibility_flagProfile_Main10=true; break; case Profile_Main10: - profile_compatibility_flagProfile_Main10=1; + profile_compatibility_flagProfile_Main10=true; break; default: assert(0); } - progressive_source_flag = 0; - interlaced_source_flag = 0; - non_packed_constraint_flag = 0; - frame_only_constraint_flag = 0; + progressive_source_flag = false; + interlaced_source_flag = false; + non_packed_constraint_flag = false; + frame_only_constraint_flag = false; // --- level --- - level_present_flag = 1; + level_present_flag = true; level_idc = level_major*30 + level_minor*3; } @@ -101,20 +101,20 @@ de265_error video_parameter_set::read(error_queue* errqueue, bitreader* reader) { - int vlc; + uint32_t vlc; - video_parameter_set_id = vlc = get_bits(reader, 4); + video_parameter_set_id = vlc = reader->get_bits(4); if (vlc >= DE265_MAX_VPS_SETS) return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; - skip_bits(reader, 2); - vps_max_layers = vlc = get_bits(reader,6) +1; + reader->skip_bits(2); + vps_max_layers = vlc = reader->get_bits(6) +1; if (vlc > 63) return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; // vps_max_layers_minus1 (range 0...63) - vps_max_sub_layers = vlc = get_bits(reader,3) +1; + vps_max_sub_layers = vlc = reader->get_bits(3) +1; if (vlc >= MAX_TEMPORAL_SUBLAYERS) return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; - vps_temporal_id_nesting_flag = get_bits(reader,1); - skip_bits(reader, 16); + vps_temporal_id_nesting_flag = reader->get_bits(1); + reader->skip_bits(16); profile_tier_level_.read(reader, vps_max_sub_layers); @@ -123,21 +123,27 @@ 0, vps_max_sub_layers-1); */ - vps_sub_layer_ordering_info_present_flag = get_bits(reader,1); + vps_sub_layer_ordering_info_present_flag = reader->get_bits(1); //assert(vps_max_sub_layers-1 < MAX_TEMPORAL_SUBLAYERS); int firstLayerRead = vps_sub_layer_ordering_info_present_flag ? 0 : (vps_max_sub_layers-1); for (int i=firstLayerRead;i<vps_max_sub_layers;i++) { - layeri.vps_max_dec_pic_buffering = get_uvlc(reader); - layeri.vps_max_num_reorder_pics = get_uvlc(reader); - layeri.vps_max_latency_increase = get_uvlc(reader); + uint32_t v1 = reader->get_uvlc(); + uint32_t v2 = reader->get_uvlc(); + uint32_t v3 = reader->get_uvlc(); -if (layeri.vps_max_dec_pic_buffering == UVLC_ERROR || - layeri.vps_max_num_reorder_pics == UVLC_ERROR || - layeri.vps_max_latency_increase == UVLC_ERROR) { + if (v1 == UVLC_ERROR || v2 == UVLC_ERROR || v3 == UVLC_ERROR) { return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; } + + if (v1 > 16 || v2 > v1) { + return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; + } + + layeri.vps_max_dec_pic_buffering = v1; + layeri.vps_max_num_reorder_pics = v2; + layeri.vps_max_latency_increase = v3; } if (!vps_sub_layer_ordering_info_present_flag) { @@ -151,16 +157,13 @@ } - vps_max_layer_id = get_bits(reader,6); - vps_num_layer_sets = get_uvlc(reader); - - if (vps_num_layer_sets+1<0 || - vps_num_layer_sets+1>=1024 || - vps_num_layer_sets == UVLC_ERROR) { + vps_max_layer_id = reader->get_bits(6); + if ((vlc = reader->get_uvlc()) == UVLC_ERROR || + vlc+1>=1024) { errqueue->add_warning(DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE, false); return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; } - vps_num_layer_sets += 1; + vps_num_layer_sets = vlc + 1; layer_id_included_flag.resize(vps_num_layer_sets); @@ -170,34 +173,46 @@ for (int j=0; j <= vps_max_layer_id; j++) { - layer_id_included_flagij = get_bits(reader,1); + layer_id_included_flagij = reader->get_bits(1); } } - vps_timing_info_present_flag = get_bits(reader,1); + vps_timing_info_present_flag = reader->get_bits(1); if (vps_timing_info_present_flag) { - vps_num_units_in_tick = get_bits(reader,32); - vps_time_scale = get_bits(reader,32); - vps_poc_proportional_to_timing_flag = get_bits(reader,1); + vps_num_units_in_tick = reader->get_bits(32); + vps_time_scale = reader->get_bits(32); + vps_poc_proportional_to_timing_flag = reader->get_bits(1); if (vps_poc_proportional_to_timing_flag) { - vps_num_ticks_poc_diff_one = get_uvlc(reader)+1; - vps_num_hrd_parameters = get_uvlc(reader); + vlc = reader->get_uvlc(); + if (vlc == UVLC_ERROR) { + errqueue->add_warning(DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE, false); + return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; + } + vps_num_ticks_poc_diff_one = vlc + 1; - if (vps_num_hrd_parameters >= 1024 || vps_num_hrd_parameters < 0) { + vlc = reader->get_uvlc(); + + if (vlc == UVLC_ERROR || vlc > vps_num_layer_sets) { errqueue->add_warning(DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE, false); return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; } + vps_num_hrd_parameters = vlc; hrd_layer_set_idx .resize(vps_num_hrd_parameters); cprms_present_flag.resize(vps_num_hrd_parameters); for (int i=0; i<vps_num_hrd_parameters; i++) { - hrd_layer_set_idxi = get_uvlc(reader); + vlc = reader->get_uvlc(); + if (vlc == UVLC_ERROR || vlc > 1023) { + errqueue->add_warning(DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE, false); + return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; + } + hrd_layer_set_idxi = vlc; if (i > 0) { - cprms_present_flagi = get_bits(reader,1); + cprms_present_flagi = reader->get_bits(1); } //hrd_parameters(cprms_present_flagi, vps_max_sub_layers_minus1) @@ -207,7 +222,7 @@ } } - vps_extension_flag = get_bits(reader,1); + vps_extension_flag = reader->get_bits(1); if (vps_extension_flag) { /* @@ -253,8 +268,7 @@
View file
libde265-1.0.16.tar.gz/libde265/vps.h -> libde265-1.0.17.tar.gz/libde265/vps.h
Changed
@@ -54,23 +54,23 @@ // --- profile --- - char profile_present_flag; // always true for general profile + bool profile_present_flag; // always true for general profile char profile_space; // currently always 0 - char tier_flag; // main tier or low tier (see Table A-66/A-67) + bool tier_flag; // main tier or low tier (see Table A-66/A-67) enum profile_idc profile_idc; // profile - char profile_compatibility_flag32; // to which profile we are compatible + bool profile_compatibility_flag32; // to which profile we are compatible - char progressive_source_flag; - char interlaced_source_flag; - char non_packed_constraint_flag; - char frame_only_constraint_flag; + bool progressive_source_flag; + bool interlaced_source_flag; + bool non_packed_constraint_flag; + bool frame_only_constraint_flag; // --- level --- - char level_present_flag; // always true for general level + bool level_present_flag; // always true for general level int level_idc; // level * 30 }; @@ -116,9 +116,9 @@ typedef struct { - int vps_max_dec_pic_buffering; // 1 ; - int vps_max_num_reorder_pics; // 0 ; - int vps_max_latency_increase; // 0 -> no limit, otherwise value is (x-1) + uint8_t vps_max_dec_pic_buffering; // 1 ; max_dpb_size + uint8_t vps_max_num_reorder_pics; // 0 ; vps_max_dec_pic_buffering + uint32_t vps_max_latency_increase; // 0 -> no limit, otherwise value is (x-1) } layer_data; @@ -131,30 +131,30 @@ void set_defaults(enum profile_idc profile, int level_major, int level_minor); - int video_parameter_set_id; - int vps_max_layers; // 1;? currently always 1 - int vps_max_sub_layers; // 1;7 number of temporal sub-layers - int vps_temporal_id_nesting_flag; // indicate temporal up-switching always possible + uint8_t video_parameter_set_id; // 0;15 + uint8_t vps_max_layers; // 1;? currently always 1 + uint8_t vps_max_sub_layers; // 1;7 number of temporal sub-layers + bool vps_temporal_id_nesting_flag; // indicate temporal up-switching always possible profile_tier_level profile_tier_level_; - int vps_sub_layer_ordering_info_present_flag; + bool vps_sub_layer_ordering_info_present_flag; layer_data layerMAX_TEMPORAL_SUBLAYERS; uint8_t vps_max_layer_id; // max value for nuh_layer_id in NALs - int vps_num_layer_sets; // 1;1024, currently always 1 + uint16_t vps_num_layer_sets; // 1;1024, currently always 1 std::vector<std::vector<char> > layer_id_included_flag; // max size = 102464 // --- timing info --- - char vps_timing_info_present_flag; + bool vps_timing_info_present_flag; uint32_t vps_num_units_in_tick; uint32_t vps_time_scale; - char vps_poc_proportional_to_timing_flag; + bool vps_poc_proportional_to_timing_flag; uint32_t vps_num_ticks_poc_diff_one; - int vps_num_hrd_parameters; // currently 0;1 + uint16_t vps_num_hrd_parameters; // 0;vps_num_layer_sets std::vector<uint16_t> hrd_layer_set_idx; // max size = 1024 std::vector<char> cprms_present_flag; // max size = 1024 @@ -162,7 +162,7 @@ // --- vps extension --- - char vps_extension_flag; + bool vps_extension_flag; };
View file
libde265-1.0.16.tar.gz/libde265/vui.cc -> libde265-1.0.17.tar.gz/libde265/vui.cc
Changed
@@ -25,14 +25,12 @@ #include <stdlib.h> #include <string.h> -#define READ_VLC_OFFSET(variable, vlctype, offset) \ - if ((vlc = get_ ## vlctype(br)) == UVLC_ERROR) { \ +#define READ_VLC(variable, vlctype) \ + if ((vlc = br->get_ ## vlctype()) == UVLC_ERROR) { \ errqueue->add_warning(DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE, false); \ return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; \ } \ - variable = vlc + offset; - -#define READ_VLC(variable, vlctype) READ_VLC_OFFSET(variable,vlctype,0) + (variable) = vlc; #define NUM_SAR_PRESETS 17 @@ -73,114 +71,46 @@ } -video_usability_information::video_usability_information() -{ - aspect_ratio_info_present_flag = false; - sar_width = 0; - sar_height = 0; - - - // --- overscan --- - - overscan_info_present_flag = false; - overscan_appropriate_flag = false; - - - // --- video signal type --- - - video_signal_type_present_flag = false; - video_format = VideoFormat_Unspecified; - video_full_range_flag = false; - colour_description_present_flag = false; - colour_primaries = 2; - transfer_characteristics = 2; - matrix_coeffs = 2; - - // --- chroma / interlaced --- - - chroma_loc_info_present_flag = false; - chroma_sample_loc_type_top_field = 0; - chroma_sample_loc_type_bottom_field = 0; - - neutral_chroma_indication_flag = false; - field_seq_flag = false; - frame_field_info_present_flag = false; - - // --- default display window --- - - default_display_window_flag = false; - def_disp_win_left_offset = 0; - def_disp_win_right_offset = 0; - def_disp_win_top_offset = 0; - def_disp_win_bottom_offset = 0; - - - // --- timing --- - - vui_timing_info_present_flag = false; - vui_num_units_in_tick = 0; - vui_time_scale = 0; - - vui_poc_proportional_to_timing_flag = false; - vui_num_ticks_poc_diff_one = 1; - - - // --- hrd parameters --- - - vui_hrd_parameters_present_flag = false; - - - // --- bitstream restriction --- - - bitstream_restriction_flag = false; - tiles_fixed_structure_flag = false; - motion_vectors_over_pic_boundaries_flag = true; - restricted_ref_pic_lists_flag = false; - min_spatial_segmentation_idc = 0; - max_bytes_per_pic_denom = 2; - max_bits_per_min_cu_denom = 1; - log2_max_mv_length_horizontal = 15; - log2_max_mv_length_vertical = 15; -} +video_usability_information::video_usability_information() = default; de265_error video_usability_information::hrd_parameters(error_queue* errqueue, bitreader* br, const seq_parameter_set* sps) { - int vlc; + uint32_t vlc; - nal_hrd_parameters_present_flag = get_bits(br, 1); - vcl_hrd_parameters_present_flag = get_bits(br, 1); + nal_hrd_parameters_present_flag = br->get_bits(1); + vcl_hrd_parameters_present_flag = br->get_bits(1); if (nal_hrd_parameters_present_flag || vcl_hrd_parameters_present_flag) { - sub_pic_hrd_params_present_flag = get_bits(br, 1); + sub_pic_hrd_params_present_flag = br->get_bits(1); if (sub_pic_hrd_params_present_flag) { - tick_divisor_minus2 = get_bits(br, 8); - du_cpb_removal_delay_increment_length_minus1 = get_bits(br, 5); - sub_pic_cpb_params_in_pic_timing_sei_flag = get_bits(br, 1); - dpb_output_delay_du_length_minus1 = get_bits(br, 5); + tick_divisor_minus2 = br->get_bits(8); + du_cpb_removal_delay_increment_length_minus1 = br->get_bits(5); + sub_pic_cpb_params_in_pic_timing_sei_flag = br->get_bits(1); + dpb_output_delay_du_length_minus1 = br->get_bits(5); } - bit_rate_scale = get_bits(br, 4); - cpb_size_scale = get_bits(br, 4); + bit_rate_scale = br->get_bits(4); + cpb_size_scale = br->get_bits(4); if (sub_pic_hrd_params_present_flag) { - cpb_size_du_scale = get_bits(br, 4); + cpb_size_du_scale = br->get_bits(4); } - initial_cpb_removal_delay_length_minus1 = get_bits(br, 5); - au_cpb_removal_delay_length_minus1 = get_bits(br, 5); - dpb_output_delay_length_minus1 = get_bits(br, 5); + initial_cpb_removal_delay_length_minus1 = br->get_bits(5); + au_cpb_removal_delay_length_minus1 = br->get_bits(5); + dpb_output_delay_length_minus1 = br->get_bits(5); } - int i, j, nalOrVcl; + int i, nalOrVcl; for (i = 0; i < sps->sps_max_sub_layers; i++) { - fixed_pic_rate_general_flagi = get_bits(br, 1); + fixed_pic_rate_general_flagi = br->get_bits(1); if (!fixed_pic_rate_general_flagi) { - fixed_pic_rate_within_cvs_flagi = get_bits(br, 1); + fixed_pic_rate_within_cvs_flagi = br->get_bits(1); } else { @@ -192,15 +122,15 @@ if (fixed_pic_rate_within_cvs_flagi) { - READ_VLC_OFFSET(elemental_duration_in_tc_minus1i, uvlc, 0); + READ_VLC(elemental_duration_in_tc_minus1i, uvlc); } else { - low_delay_hrd_flagi = get_bits(br, 1); + low_delay_hrd_flagi = br->get_bits(1); } if (!low_delay_hrd_flagi) { - READ_VLC_OFFSET(cpb_cnt_minus1i, uvlc, 0); + READ_VLC(cpb_cnt_minus1i, uvlc); if (cpb_cnt_minus1i > 31) { return DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE; } @@ -211,17 +141,17 @@ if (((nalOrVcl == 0) && nal_hrd_parameters_present_flag) || ((nalOrVcl == 1) && vcl_hrd_parameters_present_flag)) { - for (j = 0; j <= cpb_cnt_minus1i; j++) + for (uint32_t j = 0; j <= cpb_cnt_minus1i; j++) { - READ_VLC_OFFSET(bit_rate_value_minus1ijnalOrVcl, uvlc, 0); - READ_VLC_OFFSET(cpb_size_value_minus1ijnalOrVcl, uvlc, 0); + READ_VLC(bit_rate_value_minus1ijnalOrVcl, uvlc); + READ_VLC(cpb_size_value_minus1ijnalOrVcl, uvlc); if (sub_pic_hrd_params_present_flag) { - READ_VLC_OFFSET(cpb_size_du_value_minus1ijnalOrVcl, uvlc, 0); - READ_VLC_OFFSET(bit_rate_du_value_minus1ijnalOrVcl, uvlc, 0); + READ_VLC(cpb_size_du_value_minus1ijnalOrVcl, uvlc); + READ_VLC(bit_rate_du_value_minus1ijnalOrVcl, uvlc); } - cbr_flagijnalOrVcl = get_bits(br, 1); + cbr_flagijnalOrVcl = br->get_bits(1); } } } @@ -232,21 +162,21 @@ de265_error video_usability_information::read(error_queue* errqueue, bitreader* br, const seq_parameter_set* sps) { - int vlc; + uint32_t vlc;
View file
libde265-1.0.16.tar.gz/libde265/vui.h -> libde265-1.0.17.tar.gz/libde265/vui.h
Changed
@@ -54,59 +54,59 @@ // --- sample aspect ratio (SAR) --- - bool aspect_ratio_info_present_flag; - uint16_t sar_width; // sar_width and sar_height are zero if unspecified - uint16_t sar_height; + bool aspect_ratio_info_present_flag = false; + uint16_t sar_width = 0; // sar_width and sar_height are zero if unspecified + uint16_t sar_height = 0; // --- overscan --- - bool overscan_info_present_flag; - bool overscan_appropriate_flag; + bool overscan_info_present_flag = false; + bool overscan_appropriate_flag = false; // --- video signal type --- - bool video_signal_type_present_flag; - enum VideoFormat video_format; - bool video_full_range_flag; - bool colour_description_present_flag; - uint8_t colour_primaries; - uint8_t transfer_characteristics; - uint8_t matrix_coeffs; + bool video_signal_type_present_flag = false; + enum VideoFormat video_format = VideoFormat_Unspecified; + bool video_full_range_flag = false; + bool colour_description_present_flag = false; + uint8_t colour_primaries = 2; + uint8_t transfer_characteristics = 2; + uint8_t matrix_coeffs = 2; // --- chroma / interlaced --- - bool chroma_loc_info_present_flag; - uint8_t chroma_sample_loc_type_top_field; - uint8_t chroma_sample_loc_type_bottom_field; + bool chroma_loc_info_present_flag = false; + uint8_t chroma_sample_loc_type_top_field = 0; + uint8_t chroma_sample_loc_type_bottom_field = 0; - bool neutral_chroma_indication_flag; - bool field_seq_flag; - bool frame_field_info_present_flag; + bool neutral_chroma_indication_flag = false; + bool field_seq_flag = false; + bool frame_field_info_present_flag = false; // --- default display window --- - bool default_display_window_flag; - uint32_t def_disp_win_left_offset; - uint32_t def_disp_win_right_offset; - uint32_t def_disp_win_top_offset; - uint32_t def_disp_win_bottom_offset; + bool default_display_window_flag = false; + uint32_t def_disp_win_left_offset = 0; + uint32_t def_disp_win_right_offset = 0; + uint32_t def_disp_win_top_offset = 0; + uint32_t def_disp_win_bottom_offset = 0; // --- timing --- - bool vui_timing_info_present_flag; - uint32_t vui_num_units_in_tick; - uint32_t vui_time_scale; + bool vui_timing_info_present_flag = false; + uint32_t vui_num_units_in_tick = 0; + uint32_t vui_time_scale = 0; - bool vui_poc_proportional_to_timing_flag; - uint32_t vui_num_ticks_poc_diff_one; + bool vui_poc_proportional_to_timing_flag = false; + uint32_t vui_num_ticks_poc_diff_one = 1; // --- hrd parameters --- - bool vui_hrd_parameters_present_flag; + bool vui_hrd_parameters_present_flag = false; bool nal_hrd_parameters_present_flag; bool vcl_hrd_parameters_present_flag; bool sub_pic_hrd_params_present_flag; @@ -133,15 +133,15 @@ // --- bitstream restriction --- - bool bitstream_restriction_flag; - bool tiles_fixed_structure_flag; - bool motion_vectors_over_pic_boundaries_flag; - bool restricted_ref_pic_lists_flag; - uint16_t min_spatial_segmentation_idc; - uint8_t max_bytes_per_pic_denom; - uint8_t max_bits_per_min_cu_denom; - uint8_t log2_max_mv_length_horizontal; - uint8_t log2_max_mv_length_vertical; + bool bitstream_restriction_flag = false; + bool tiles_fixed_structure_flag = false; + bool motion_vectors_over_pic_boundaries_flag = true; + bool restricted_ref_pic_lists_flag = false; + uint16_t min_spatial_segmentation_idc = 0; + uint8_t max_bytes_per_pic_denom = 2; + uint8_t max_bits_per_min_cu_denom = 1; + uint8_t log2_max_mv_length_horizontal = 15; + uint8_t log2_max_mv_length_vertical = 15; };
View file
libde265-1.0.16.tar.gz/libde265/x86/sse-motion.cc -> libde265-1.0.17.tar.gz/libde265/x86/sse-motion.cc
Changed
@@ -45,11 +45,11 @@ }; static const uint8_t qpel_extra_before4 = { 0, 3, 3, 2 }; -static const uint8_t qpel_extra_after4 = { 0, 3, 4, 4 }; +//static const uint8_t qpel_extra_after4 = { 0, 3, 4, 4 }; static const uint8_t qpel_extra4 = { 0, 6, 7, 6 }; static const int epel_extra_before = 1; -static const int epel_extra_after = 2; +//static const int epel_extra_after = 2; static const int epel_extra = 3; #define MAX_PB_SIZE 64
View file
libde265-1.0.16.tar.gz/libde265/x86/sse.cc -> libde265-1.0.17.tar.gz/libde265/x86/sse.cc
Changed
@@ -30,7 +30,7 @@ #include "config.h" #endif -#ifdef __GNUC__ +#if defined(__GNUC__) && !defined(__EMSCRIPTEN__) #include <cpuid.h> #endif @@ -46,11 +46,21 @@ ecx = regs2; edx = regs3; -#else +#elif !defined(__EMSCRIPTEN__) uint32_t eax,ebx; __get_cpuid(1, &eax,&ebx,&ecx,&edx); #endif - + +#ifdef __EMSCRIPTEN__ + int have_SSE = 0; + int have_SSE4_1 = 0; +#ifdef __SSE__ + have_SSE = 1; +#endif +#ifdef __SSE4_1__ + have_SSE4_1 = 1; +#endif +#else // printf("CPUID EAX=1 -> ECX=%x EDX=%x\n", regs2, regs3); //int have_MMX = !!(edx & (1<<23)); @@ -61,6 +71,7 @@ if (have_SSE) { } +#endif #if HAVE_SSE4_1 if (have_SSE4_1) {
View file
libde265-1.0.17.tar.gz/sherlock265/CMakeLists.txt
Added
@@ -0,0 +1,36 @@ +find_package(Qt5 COMPONENTS Core Gui Widgets QUIET) +if(NOT Qt5_FOUND) + message(STATUS "Qt5 not found, skipping sherlock265") + return() +endif() + +set(CMAKE_AUTOMOC ON) + +add_executable(sherlock265 + sherlock265.cc + VideoPlayer.cc + VideoDecoder.cc + VideoWidget.cc + VideoPlayer.h + VideoDecoder.h + VideoWidget.h +) + +target_link_libraries(sherlock265 PRIVATE + de265 + Qt5::Core + Qt5::Gui + Qt5::Widgets + Threads::Threads +) + +find_package(PkgConfig QUIET) +if(PkgConfig_FOUND) + pkg_check_modules(SWSCALE IMPORTED_TARGET libswscale) + if(SWSCALE_FOUND) + target_compile_definitions(sherlock265 PRIVATE HAVE_SWSCALE) + target_link_libraries(sherlock265 PRIVATE PkgConfig::SWSCALE) + endif() +endif() + +install(TARGETS sherlock265 DESTINATION ${CMAKE_INSTALL_BINDIR})
View file
libde265-1.0.16.tar.gz/sherlock265/VideoDecoder.cc -> libde265-1.0.17.tar.gz/sherlock265/VideoDecoder.cc
Changed
@@ -24,7 +24,7 @@ SOFTWARE. */ -#include "VideoDecoder.hh" +#include "VideoDecoder.h" #ifdef HAVE_VIDEOGFX #include <libvideogfx.hh> #endif @@ -141,6 +141,7 @@ uint8_t buf4096; int buf_size = fread(buf,1,sizeof(buf),mFH); int err = de265_push_data(ctx,buf,buf_size ,0,0); + (void)err; } else if (!more) {
View file
libde265-1.0.17.tar.gz/sherlock265/VideoDecoder.h
Added
@@ -0,0 +1,129 @@ +/* + libde265 example application "sherlock265". + + MIT License + + Copyright (c) 2013-2014 struktur AG, Dirk Farin <farin@struktur.de> + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. +*/ + +#ifndef VIDEODECODER_HH +#define VIDEODECODER_HH + +#ifdef HAVE_CONFIG_H +#include <config.h> +#endif + +#include <QtGui> +#ifdef HAVE_SWSCALE +#ifdef __cplusplus +extern "C" { +#endif +#include <libswscale/swscale.h> +#ifdef __cplusplus +} +#endif +#endif + +#include "VideoWidget.h" +#include "de265.h" + + +class VideoDecoder : public QThread +{ + Q_OBJECT + +public: + VideoDecoder(); + ~VideoDecoder(); + + void init(const char* filename); + +protected: + void run(); // thread entry point + +public slots: + void startDecoder(); + void stopDecoder(); + void singleStepDecoder(); + + void showCBPartitioning(bool flag); + void showTBPartitioning(bool flag); + void showPBPartitioning(bool flag); + void showIntraPredMode(bool flag); + void showPBPredMode(bool flag); + void showQuantPY(bool flag); + void showMotionVec(bool flag); + void showTiles(bool flag); + void showSlices(bool flag); + void showDecodedImage(bool flag); + +signals: + void displayImage(QImage*); + +private: + // de265 decoder + + FILE* mFH; + //input_context_FILE inputctx; + //rbsp_buffer buf; + de265_decoder_context* ctx; + const de265_image* img; + + QMutex mutex; + + QImage mImgBuffers2; + int mNextBuffer; + int mFrameCount; + + bool mPlayingVideo; + bool mVideoEnded; + bool mSingleStep; + + + bool mShowDecodedImage; + bool mShowQuantPY; + bool mCBShowPartitioning; + bool mTBShowPartitioning; + bool mPBShowPartitioning; + bool mShowIntraPredMode; + bool mShowPBPredMode; + bool mShowMotionVec; + bool mShowTiles; + bool mShowSlices; + + void decoder_loop(); + + void init_decoder(const char* filename); + void free_decoder(); + + void show_frame(const de265_image* img); +#ifdef HAVE_VIDEOGFX + void convert_frame_libvideogfx(const de265_image* img, QImage & qimg); +#endif +#ifdef HAVE_SWSCALE + SwsContext* sws; + int width; + int height; + void convert_frame_swscale(const de265_image* img, QImage & qimg); +#endif +}; + +#endif
View file
libde265-1.0.16.tar.gz/sherlock265/VideoPlayer.cc -> libde265-1.0.17.tar.gz/sherlock265/VideoPlayer.cc
Changed
@@ -24,7 +24,7 @@ SOFTWARE. */ -#include "VideoPlayer.hh" +#include "VideoPlayer.h" VideoPlayer::VideoPlayer(const char* filename)
View file
libde265-1.0.17.tar.gz/sherlock265/VideoPlayer.h
Added
@@ -0,0 +1,51 @@ +/* + libde265 example application "sherlock265". + + MIT License + + Copyright (c) 2013-2014 struktur AG, Dirk Farin <farin@struktur.de> + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. +*/ + +#ifndef VIDEOPLAYER_HH +#define VIDEOPLAYER_HH + +#include <QtGui> + +#include "VideoWidget.h" +#include "VideoDecoder.h" + + +class VideoPlayer : public QWidget +{ + Q_OBJECT + +public: + VideoPlayer(const char* filename); + +private: + VideoWidget* videoWidget; + QPushButton *startButton; + QPushButton *stopButton; + + VideoDecoder* mDecoder; +}; + +#endif
View file
libde265-1.0.16.tar.gz/sherlock265/VideoWidget.cc -> libde265-1.0.17.tar.gz/sherlock265/VideoWidget.cc
Changed
@@ -24,7 +24,7 @@ SOFTWARE. */ -#include "VideoWidget.hh" +#include "VideoWidget.h" #include <QtGui> @@ -35,7 +35,7 @@ setAttribute(Qt::WA_NoSystemBackground, true); QPalette palette = this->palette(); - palette.setColor(QPalette::Background, Qt::black); + palette.setColor(QPalette::Window, Qt::black); setPalette(palette); setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding); @@ -62,22 +62,22 @@ QRect videoRect = mImg->rect(); videoRect.moveCenter(this->rect().center()); - QRect erect = event->rect(); + //QRect erect = event->rect(); if (!videoRect.contains(event->rect())) { QRegion region = event->region(); region = region.subtracted(videoRect); - QBrush brush = palette().background(); + QBrush brush = palette().window(); - foreach (const QRect &rect, region.rects()) { + for (const QRect &rect : region) { painter.fillRect(rect, brush); } } painter.drawImage(videoRect, *mImg); } else { - painter.fillRect(event->rect(), palette().background()); + painter.fillRect(event->rect(), palette().window()); } }
View file
libde265-1.0.17.tar.gz/sherlock265/VideoWidget.h
Changed
(renamed from sherlock265/VideoWidget.hh)
View file
libde265-1.0.16.tar.gz/sherlock265/sherlock265.cc -> libde265-1.0.17.tar.gz/sherlock265/sherlock265.cc
Changed
@@ -24,7 +24,7 @@ SOFTWARE. */ -#include "VideoPlayer.hh" +#include "VideoPlayer.h" int main(int argc, char **argv)
View file
libde265-1.0.17.tar.gz/tools/CMakeLists.txt
Added
@@ -0,0 +1,22 @@ +set(tool_targets + gen-enc-table + yuv-distortion + rd-curves + block-rate-estim + tests + bjoentegaard +) + +set(gen-enc-table_SOURCES gen-entropy-table.cc) +set(yuv-distortion_SOURCES yuv-distortion.cc) +set(rd-curves_SOURCES rd-curves.cc) +set(block-rate-estim_SOURCES block-rate-estim.cc) +set(tests_SOURCES tests.cc) +set(bjoentegaard_SOURCES bjoentegaard.cc) + +foreach(tool ${tool_targets}) + add_executable(${tool} ${${tool}_SOURCES}) + target_link_libraries(${tool} PRIVATE de265) +endforeach() + +install(TARGETS ${tool_targets} DESTINATION ${CMAKE_INSTALL_BINDIR})
View file
libde265-1.0.16.tar.gz/tools/rd-curves.cc -> libde265-1.0.17.tar.gz/tools/rd-curves.cc
Changed
@@ -34,7 +34,7 @@ #include <sys/time.h> -#ifndef WIN32 +#if !defined(_WIN32) && !defined(WIN32) #include <sys/times.h> #endif @@ -414,14 +414,14 @@ void init_clock() { -#ifndef WIN32 +#if !defined(_WIN32) && !defined(WIN32) ticks_per_second = sysconf(_SC_CLK_TCK); #endif } double get_cpu_time() { -#ifndef WIN32 +#if !defined(_WIN32) && !defined(WIN32) struct tms t; times(&t); return double(t.tms_cutime)/ticks_per_second;
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.