mirror of
https://github.com/ultravideo/uvg266.git
synced 2024-11-23 18:14:06 +00:00
Update Doxygen documentation
Add module information to all header files. Update all header file documentations to briefly say what they are, and to use the javadoc format so the brief actually gets included into the doxygen documentation. Remove \file from implementation files, in order to not repeat the info from the header files. Add files under strategies and tools to Doxygen and update the Doxygen settings to be just plain better. Make README be the main page of Doxygen documentation.
This commit is contained in:
parent
84e2c0c9b7
commit
947bae24f9
|
@ -1,4 +1,5 @@
|
|||
#Kvazaar
|
||||
Kvazaar {#mainpage}
|
||||
=========
|
||||
An open-source HEVC encoder licensed under LGPLv2.1
|
||||
|
||||
Join channel #kvazaar_hevc in Freenode IRC network to contact us.
|
||||
|
|
11
docs.doxy
11
docs.doxy
|
@ -97,7 +97,7 @@ BRIEF_MEMBER_DESC = YES
|
|||
# brief descriptions will be completely suppressed.
|
||||
# The default value is: YES.
|
||||
|
||||
REPEAT_BRIEF = YES
|
||||
REPEAT_BRIEF = NO
|
||||
|
||||
# This tag implements a quasi-intelligent brief description abbreviator that is
|
||||
# used to form the text in various listings. Each string in this list, if found
|
||||
|
@ -167,7 +167,7 @@ SHORT_NAMES = NO
|
|||
# description.)
|
||||
# The default value is: NO.
|
||||
|
||||
JAVADOC_AUTOBRIEF = NO
|
||||
JAVADOC_AUTOBRIEF = YES
|
||||
|
||||
# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first
|
||||
# line (until the first dot) of a Qt-style comment as the brief description. If
|
||||
|
@ -734,7 +734,8 @@ WARN_LOGFILE =
|
|||
# spaces.
|
||||
# Note: If this tag is empty the current directory is searched.
|
||||
|
||||
INPUT = src
|
||||
INPUT = README.md src src/strategies src/strategies/altivec src/strategies/avx2 src/strategies/generic src/strategies/sse2 src/strategies/sse41 src/strategies/x86_asm tools
|
||||
USE_MDFILE_AS_MAINPAGE = README.md
|
||||
|
||||
# This tag can be used to specify the character encoding of the source files
|
||||
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
|
||||
|
@ -754,7 +755,7 @@ INPUT_ENCODING = UTF-8
|
|||
# *.md, *.mm, *.dox, *.py, *.f90, *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf,
|
||||
# *.qsf, *.as and *.js.
|
||||
|
||||
FILE_PATTERNS =
|
||||
FILE_PATTERNS = *.md *.c *.h *.asm *.py
|
||||
|
||||
# The RECURSIVE tag can be used to specify whether or not subdirectories should
|
||||
# be searched for input files as well.
|
||||
|
@ -2043,7 +2044,7 @@ HAVE_DOT = YES
|
|||
# Minimum value: 0, maximum value: 32, default value: 0.
|
||||
# This tag requires that the tag HAVE_DOT is set to YES.
|
||||
|
||||
DOT_NUM_THREADS = 1 # Marko usually has encoding in the background.
|
||||
DOT_NUM_THREADS = 6
|
||||
|
||||
# When you want a differently looking font n the dot files that doxygen
|
||||
# generates you can specify the font name using DOT_FONTNAME. You need to make
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include "bitstream.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
|
|
@ -20,9 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup CABAC
|
||||
* \file
|
||||
* \brief Bitstream can be written to one or several bits at a time.
|
||||
* Appending bits into an Annex-B coded bitstream.
|
||||
*/
|
||||
|
||||
#include "kvazaar.h"
|
||||
|
|
|
@ -18,11 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*
|
||||
*/
|
||||
|
||||
#include "cabac.h"
|
||||
|
||||
#include <assert.h>
|
||||
|
|
|
@ -20,9 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup CABAC
|
||||
* \file
|
||||
* \brief The Content Adaptive Binary Arithmetic Coder (CABAC).
|
||||
* Coding bins using CABAC.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
|
|
@ -20,6 +20,11 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Printing of debug information.
|
||||
*/
|
||||
|
||||
#ifdef CHECKPOINTS
|
||||
#ifdef NDEBUG
|
||||
#error "CHECKPOINTS require assertions to be enabled!"
|
||||
|
|
|
@ -20,10 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
* \brief Contains code related to command line interface.
|
||||
*/
|
||||
/**
|
||||
* \file
|
||||
* Command line interface
|
||||
*/
|
||||
|
||||
#include "kvazaar.h"
|
||||
#include "global.h"
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
|
|
@ -20,9 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup Control
|
||||
* \file
|
||||
* \brief Handles parsing and storing of configuration of the encoder.
|
||||
* Runtime configuration through defaults and parsing of arguments.
|
||||
*/
|
||||
|
||||
#include "kvazaar.h"
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include "context.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
|
|
@ -20,9 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup CABAC
|
||||
* \file
|
||||
* \brief Context derivation for CABAC.
|
||||
* Context derivation for CABAC.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
|
4
src/cu.c
4
src/cu.c
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
|
|
5
src/cu.h
5
src/cu.h
|
@ -20,9 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup DataStructures
|
||||
* \file
|
||||
* \brief CU and coefficients related functions
|
||||
* Coding Unit data structure and related functions.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include "encoder.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
|
|
@ -20,9 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup Control
|
||||
* \file
|
||||
* \brief The highest level of the encoder.
|
||||
* Initialization of encoder_control_t.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
|
|
@ -20,8 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup Bitstream
|
||||
* \file
|
||||
* Coding of HEVC bitstream elements.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
|
|
@ -20,8 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup Control
|
||||
* \file
|
||||
* Creation and destruction of encoder_state_t.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
|
|
@ -20,8 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup Control
|
||||
* \file
|
||||
* Helper functions for tiles and slices.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include "encoderstate.h"
|
||||
|
||||
#include <math.h>
|
||||
|
|
|
@ -20,9 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup Control
|
||||
* \file
|
||||
* \brief
|
||||
* Top level of the encoder implementation.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
@ -38,7 +39,6 @@
|
|||
#include "threadqueue.h"
|
||||
#include "imagelist.h"
|
||||
|
||||
|
||||
// Submodules
|
||||
// Functions to obtain geometry information from LCU
|
||||
#include "encoder_state-geometry.h"
|
||||
|
@ -252,5 +252,6 @@ static const uint8_t g_min_in_group[10] = {
|
|||
#define OFFSET_HOR_BUF(position_x, position_y, cur_pic, i) ((position_x) + i + ((position_y)/LCU_WIDTH - 1) * (cur_pic)->width)
|
||||
#define OFFSET_HOR_BUF_C(position_x, position_y, cur_pic, i) ((position_x/2) + i + ((position_y)/LCU_WIDTH - 1) * (cur_pic)->width / 2)
|
||||
|
||||
/** @} */
|
||||
|
||||
#endif //ENCODERSTATE_H_
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include "filter.h"
|
||||
|
||||
#include <assert.h>
|
||||
|
|
|
@ -20,9 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup Reconstruction
|
||||
* \file
|
||||
* \brief Filtering, such as deblocking.
|
||||
* Deblocking filter.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
|
35
src/global.h
35
src/global.h
|
@ -20,9 +20,9 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \file
|
||||
* \brief Header that is included in every other header.
|
||||
* Header that is included in every other header.
|
||||
*
|
||||
* This file contains global constants that can be referred to from any header
|
||||
* or source file. It also contains some helper macros and includes stdint.h
|
||||
|
@ -39,6 +39,37 @@
|
|||
|
||||
#include "kvazaar.h"
|
||||
|
||||
|
||||
/**
|
||||
* \defgroup Bitstream
|
||||
* HEVC bitstream coding
|
||||
*
|
||||
* \defgroup CABAC
|
||||
* Context Adaptive Binary Arithmetic Encoder implementation
|
||||
*
|
||||
* \defgroup Compression
|
||||
* Prediction parameter decisions and ratedistortion optimization
|
||||
*
|
||||
* \defgroup Control
|
||||
* Initialization and control flow of the encoder
|
||||
*
|
||||
* \defgroup DataStructures
|
||||
* Containers for images, predictions parameters and such
|
||||
*
|
||||
* \defgroup Extras
|
||||
* 3rd party modules not considered part of the encoder.
|
||||
*
|
||||
* \defgroup Optimization
|
||||
* Architecture dependant SIMD optimizations and dynamic dispatch mechanism
|
||||
*
|
||||
* \defgroup Reconstruction
|
||||
* Stuff required for creating the resulting image after lossy compression
|
||||
*
|
||||
* \defgroup Threading
|
||||
* Stuff related to multi-threading using pthreads
|
||||
*/
|
||||
|
||||
|
||||
#if defined(_MSC_VER) && defined(_M_AMD64)
|
||||
#define X86_64
|
||||
#endif
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include "threads.h"
|
||||
#include "image.h"
|
||||
#include "strategyselector.h"
|
||||
|
|
|
@ -20,9 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup DataStructures
|
||||
* \file
|
||||
* \brief Image and pixel related functions
|
||||
* A reference counted YUV pixel buffer.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include "threads.h"
|
||||
#include "imagelist.h"
|
||||
#include "strategyselector.h"
|
||||
|
|
|
@ -20,9 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup DataStructures
|
||||
* \file
|
||||
* \brief List of images (for reference pictures)
|
||||
* Container for a list of reference pictures.
|
||||
*/
|
||||
|
||||
#include "image.h"
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include "input_frame_buffer.h"
|
||||
#include "encoderstate.h"
|
||||
#include <assert.h>
|
||||
|
|
|
@ -20,8 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup Control
|
||||
* \file
|
||||
* Buffering of input for reordering.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include "inter.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
|
|
@ -20,9 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup Reconstruction
|
||||
* \file
|
||||
* \brief Handling Coding Units (CU's) for inter frames.
|
||||
* Inter prediction.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
|
|
@ -18,11 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* \brief Functions for handling intra frames.
|
||||
*/
|
||||
|
||||
#include "intra.h"
|
||||
|
||||
#include <assert.h>
|
||||
|
|
|
@ -20,10 +20,11 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
* \brief Handling Coding Units (CU's) for intra frames.
|
||||
*/
|
||||
/**
|
||||
* \ingroup Reconstruction
|
||||
* \file
|
||||
* Intra prediction.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
||||
|
|
|
@ -20,9 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
/**
|
||||
* \ingroup Control
|
||||
* \file
|
||||
* \brief This file defines the public API of Kvazaar when used as a library.
|
||||
* This file defines the public API of Kvazaar when used as a library.
|
||||
*/
|
||||
|
||||
#include <stddef.h>
|
||||
|
|
|
@ -20,6 +20,12 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Control
|
||||
* \file
|
||||
* \brief Definitions for opaque structs in kvazaar.h
|
||||
*/
|
||||
|
||||
#include "kvazaar.h"
|
||||
#include "input_frame_buffer.h"
|
||||
|
||||
|
|
|
@ -20,6 +20,12 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Control
|
||||
* \file
|
||||
* \brief Libkvazaar version numbers.
|
||||
*/
|
||||
|
||||
// KVZ_API_VERSION is incremented every time the public api changes.
|
||||
#define KVZ_API_VERSION 10
|
||||
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include "nal.h"
|
||||
#include "strategyselector.h"
|
||||
|
||||
|
|
|
@ -21,8 +21,9 @@
|
|||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \ingroup Bitstream
|
||||
* \file
|
||||
* \brief Network Abstraction Layer (NAL) messages.
|
||||
* Network Abstraction Layer (NAL) messages.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
|
|
@ -20,9 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup Control
|
||||
* \file
|
||||
* \brief Functions related with rate control
|
||||
* \brief Functions related to rate control.
|
||||
*/
|
||||
|
||||
#include "encoderstate.h"
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
|
|
@ -20,9 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup Compression
|
||||
* \file
|
||||
* \brief Handling Rate-Distortion Optimization related functionality
|
||||
* Rate-Distortion Optimization related functionality.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include "sao.h"
|
||||
#include "rdo.h"
|
||||
#include "strategies/strategies-picture.h"
|
||||
|
|
|
@ -20,9 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup Reconstruction
|
||||
* \file
|
||||
* \brief Coding Unit (CU) and picture data related functions.
|
||||
* Sample Adaptive Offset filter.
|
||||
*/
|
||||
|
||||
#include "checkpoint.h"
|
||||
|
|
|
@ -20,9 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup Reconstruction
|
||||
* \file
|
||||
* \brief Coding Unit (CU) and picture data related functions.
|
||||
* Scaling list initialization.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include "search.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
|
|
@ -20,9 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup Compression
|
||||
* \file
|
||||
* \brief Searching of parameters for intra and inter frames.
|
||||
* \brief Compression of a single coding tree unit (CTU).
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include "search_inter.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
|
|
|
@ -20,10 +20,11 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
* \brief Functions related to inter prediction mode search.
|
||||
*/
|
||||
/**
|
||||
* \ingroup Compression
|
||||
* \file
|
||||
* Inter prediction parameter search.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include "search_intra.h"
|
||||
|
||||
#include "encoderstate.h"
|
||||
|
|
|
@ -20,10 +20,11 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
* \brief Functions related to intra prediction mode search.
|
||||
*/
|
||||
/**
|
||||
* \ingroup Compression
|
||||
* \file
|
||||
* Intra prediction parameter search.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
||||
|
|
|
@ -18,9 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
#include "picture-altivec.h"
|
||||
#include "strategyselector.h"
|
||||
#include "image.h"
|
||||
|
|
|
@ -19,6 +19,13 @@
|
|||
* You should have received a copy of the GNU General Public License along
|
||||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Optimizations for Altivec.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
||||
int kvz_strategy_register_picture_altivec(void* opaque, uint8_t bitdepth);
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
#ifndef STRATEGIES_DCT_AVX2_H_
|
||||
#define STRATEGIES_DCT_AVX2_H_
|
||||
|
||||
#include "global.h"
|
||||
/*****************************************************************************
|
||||
* This file is part of Kvazaar HEVC encoder.
|
||||
*
|
||||
|
@ -22,6 +20,14 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Optimizations for AVX2.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
||||
int kvz_strategy_register_dct_avx2(void* opaque, uint8_t bitdepth);
|
||||
|
||||
#endif //STRATEGIES_DCT_AVX2_H_
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "intra-avx2.h"
|
||||
|
|
|
@ -19,6 +19,13 @@
|
|||
* You should have received a copy of the GNU General Public License along
|
||||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Optimizations for AVX2.
|
||||
*/
|
||||
|
||||
#include <stdint.h>
|
||||
#include "encoderstate.h"
|
||||
|
||||
|
|
|
@ -19,6 +19,13 @@
|
|||
* You should have received a copy of the GNU General Public License along
|
||||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Optimizations for AVX2.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
||||
int kvz_strategy_register_ipol_avx2(void* opaque, uint8_t bitdepth);
|
||||
|
|
|
@ -19,6 +19,13 @@
|
|||
* You should have received a copy of the GNU General Public License along
|
||||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Optimizations for AVX2.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
||||
int kvz_strategy_register_picture_avx2(void* opaque, uint8_t bitdepth);
|
||||
|
|
|
@ -19,6 +19,13 @@
|
|||
* You should have received a copy of the GNU General Public License along
|
||||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Optimizations for AVX2.
|
||||
*/
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
int kvz_strategy_register_quant_avx2(void* opaque, uint8_t bitdepth);
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "strategyselector.h"
|
||||
|
|
|
@ -20,6 +20,12 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Generic C implementations of optimized functions.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
||||
extern const int16_t kvz_g_dst_4[4][4];
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "intra-generic.h"
|
||||
|
|
|
@ -19,6 +19,13 @@
|
|||
* You should have received a copy of the GNU General Public License along
|
||||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Generic C implementations of optimized functions.
|
||||
*/
|
||||
|
||||
#include <stdint.h>
|
||||
#include "encoderstate.h"
|
||||
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "ipol-generic.h"
|
||||
|
|
|
@ -19,6 +19,13 @@
|
|||
* You should have received a copy of the GNU General Public License along
|
||||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Generic C implementations of optimized functions.
|
||||
*/
|
||||
|
||||
#include "encoder.h"
|
||||
|
||||
int kvz_strategy_register_ipol_generic(void* opaque, uint8_t bitdepth);
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <assert.h>
|
||||
|
||||
|
|
|
@ -19,6 +19,13 @@
|
|||
* You should have received a copy of the GNU General Public License along
|
||||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Generic C implementations of optimized functions.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
||||
int kvz_strategy_register_nal_generic(void* opaque, uint8_t bitdepth);
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "strategyselector.h"
|
||||
|
|
|
@ -20,6 +20,12 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Generic C implementations of optimized functions.
|
||||
*/
|
||||
|
||||
int kvz_strategy_register_picture_generic(void* opaque, uint8_t bitdepth);
|
||||
|
||||
// Function to clip int16_t to pixel. (0-255 or 0-1023)
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "quant-generic.h"
|
||||
|
|
|
@ -19,6 +19,13 @@
|
|||
* You should have received a copy of the GNU General Public License along
|
||||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Generic C implementations of optimized functions.
|
||||
*/
|
||||
|
||||
#include <stdint.h>
|
||||
#include "encoderstate.h"
|
||||
|
||||
|
|
|
@ -18,9 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
#include "picture-sse2.h"
|
||||
#include "strategyselector.h"
|
||||
|
||||
|
|
|
@ -20,6 +20,12 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Optimizations for SSE2.
|
||||
*/
|
||||
|
||||
int kvz_strategy_register_picture_sse2(void* opaque, unsigned char bitdepth);
|
||||
|
||||
#endif //STRATEGIES_PICTURE_SSE2_H_
|
||||
|
|
|
@ -18,9 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
#include "picture-sse41.h"
|
||||
#include "strategyselector.h"
|
||||
|
||||
|
|
|
@ -22,6 +22,12 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Optimizations for SSE4.1.
|
||||
*/
|
||||
|
||||
int kvz_strategy_register_picture_sse41(void* opaque, uint8_t bitdepth);
|
||||
|
||||
#endif //STRATEGIES_PICTURE_SSE41_H_
|
||||
|
|
|
@ -1,8 +1,14 @@
|
|||
#ifndef STRATEGIES_COMMON_H_
|
||||
#define STRATEGIES_COMMON_H_
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Common tools strategies.
|
||||
*/
|
||||
|
||||
//Use with shuffle and permutation intrinsics.
|
||||
//Parameters are indices to packed elements. Each must be 0, 1, 2 or 3.
|
||||
#define KVZ_PERMUTE(a, b, c, d) ( (a << 0) | (b << 2) | (c << 4) | (d << 6) )
|
||||
|
||||
#endif //STRATEGIES_COMMON_H_
|
||||
#endif //STRATEGIES_COMMON_H_
|
||||
|
|
|
@ -19,7 +19,13 @@
|
|||
* You should have received a copy of the GNU General Public License along
|
||||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Interface for transform functions.
|
||||
*/
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
typedef unsigned (dct_func)(int8_t bitdepth, const int16_t *input, int16_t *output);
|
||||
|
|
|
@ -19,7 +19,13 @@
|
|||
* You should have received a copy of the GNU General Public License along
|
||||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Interface for intra prediction functions.
|
||||
*/
|
||||
|
||||
#include "encoderstate.h"
|
||||
|
||||
typedef void (angular_pred_func)(
|
||||
|
|
|
@ -19,7 +19,13 @@
|
|||
* You should have received a copy of the GNU General Public License along
|
||||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Interface for subpixel interpolation functions.
|
||||
*/
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#include "encoder.h"
|
||||
|
|
|
@ -20,6 +20,12 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Interface for hash functions.
|
||||
*/
|
||||
|
||||
#include "../nal.h"
|
||||
|
||||
//Function pointer to kvz_array_checksum
|
||||
|
|
|
@ -20,6 +20,12 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Interface for distortion metric functions.
|
||||
*/
|
||||
|
||||
#include "../image.h"
|
||||
|
||||
typedef kvz_pixel (*pred_buffer)[32 * 32];
|
||||
|
|
|
@ -19,7 +19,13 @@
|
|||
* You should have received a copy of the GNU General Public License along
|
||||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Interface for quantization functions.
|
||||
*/
|
||||
|
||||
#include "encoderstate.h"
|
||||
|
||||
// Declare function pointers.
|
||||
|
|
|
@ -20,9 +20,11 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*! \file picture-x86-asm-sad.h
|
||||
\brief assembly functions header for sad
|
||||
*/
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Optimizations for AVX, utilizing ASM implementations.
|
||||
*/
|
||||
|
||||
unsigned kvz_sad_4x4_avx(const kvz_pixel*, const kvz_pixel*);
|
||||
unsigned kvz_sad_8x8_avx(const kvz_pixel*, const kvz_pixel*);
|
||||
|
|
|
@ -20,10 +20,12 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Optimizations for AVX, utilizing ASM implementations.
|
||||
*/
|
||||
|
||||
/*! \file picture-x86-asm-satd.h
|
||||
\brief assembly functions header for satd
|
||||
*/
|
||||
unsigned kvz_satd_4x4_avx(const kvz_pixel *org, const kvz_pixel *cur);
|
||||
unsigned kvz_satd_8x8_avx(const kvz_pixel *org, const kvz_pixel *cur);
|
||||
unsigned kvz_satd_16x16_avx(const kvz_pixel *org, const kvz_pixel *cur);
|
||||
|
|
|
@ -18,9 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
#include <stdlib.h>
|
||||
#include "strategyselector.h"
|
||||
|
||||
|
|
|
@ -20,6 +20,12 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Optimizations for AVX, utilizing ASM implementations.
|
||||
*/
|
||||
|
||||
int kvz_strategy_register_picture_x86_asm_avx(void* opaque, uint8_t bitdepth);
|
||||
|
||||
#endif //STRATEGIES_PICTURE_X86_ASM_H_
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include "strategyselector.h"
|
||||
|
||||
#include <assert.h>
|
||||
|
|
|
@ -20,6 +20,12 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Optimization
|
||||
* \file
|
||||
* Dynamic dispatch based on cpuid.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
||||
#if defined(KVZ_DEBUG) && !defined(DEBUG_STRATEGYSELECTOR)
|
||||
|
|
|
@ -20,6 +20,12 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Reconstruction
|
||||
* \file
|
||||
* Various tables.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
||||
//4 8 16 32 64 128
|
||||
|
|
|
@ -20,6 +20,12 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Threading
|
||||
* \file
|
||||
* Container for worker tasks.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
||||
#include <pthread.h>
|
||||
|
|
|
@ -20,6 +20,12 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* \ingroup Threading
|
||||
* \file
|
||||
* Abstractions for operating system specific stuff.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
||||
#include <pthread.h>
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include "transform.h"
|
||||
|
||||
#include <string.h>
|
||||
|
|
|
@ -20,9 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup Reconstruction
|
||||
* \file
|
||||
* \brief Transformations, such as quantization and DST.
|
||||
* Quantization and transform functions.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
|
|
@ -18,10 +18,6 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* \file
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
|
|
|
@ -20,9 +20,10 @@
|
|||
* with Kvazaar. If not, see <http://www.gnu.org/licenses/>.
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
/**
|
||||
* \ingroup DataStructures
|
||||
* \file
|
||||
* \brief Video frame stuff
|
||||
* \brief Container for the frame currently being encoded.
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
|
|
Loading…
Reference in a new issue