Clean some comments

This commit is contained in:
2016-05-04 01:50:12 +01:00
parent 399065965b
commit 501e24fc5d
24 changed files with 168 additions and 153 deletions
+64 -64
View File
@@ -38,13 +38,13 @@ PROJECT_NAME = PlaYUVer
# could be handy for archiving the generated documentation or if some version
# control system is used.
PROJECT_NUMBER =
PROJECT_NUMBER =
# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a
# quick idea about the purpose of the project. Keep the description short.
PROJECT_BRIEF =
PROJECT_BRIEF =
# With the PROJECT_LOGO tag one can specify a logo or an icon that is included
# in the documentation. The maximum height of the logo should not exceed 55
@@ -162,7 +162,7 @@ FULL_PATH_NAMES = YES
# will be relative from the directory where doxygen is started.
# This tag requires that the tag FULL_PATH_NAMES is set to YES.
STRIP_FROM_PATH =
STRIP_FROM_PATH =
# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the
# path mentioned in the documentation of a class, which tells the reader which
@@ -171,7 +171,7 @@ STRIP_FROM_PATH =
# specify the list of include paths that are normally passed to the compiler
# using the -I flag.
STRIP_FROM_INC_PATH =
STRIP_FROM_INC_PATH =
# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but
# less readable) file names. This can be useful is your file systems doesn't
@@ -244,7 +244,7 @@ ALIASES = "returns=\"\par Returns\" "
# A mapping has the form "name=value". For example adding "class=itcl::class"
# will allow you to use the command class in the itcl::class meaning.
TCL_SUBST =
TCL_SUBST =
# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
# only. Doxygen will then generate output that is more tailored for C. For
@@ -291,7 +291,7 @@ OPTIMIZE_OUTPUT_VHDL = NO
# Note that for custom extensions you also need to set FILE_PATTERNS otherwise
# the files are not read by doxygen.
EXTENSION_MAPPING =
EXTENSION_MAPPING =
# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments
# according to the Markdown format, which allows for more readable
@@ -554,7 +554,7 @@ INLINE_INFO = YES
# name. If set to NO, the members will appear in declaration order.
# The default value is: YES.
SORT_MEMBER_DOCS = YES
SORT_MEMBER_DOCS = NO
# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief
# descriptions of file, namespace and class members alphabetically by member
@@ -632,7 +632,7 @@ GENERATE_DEPRECATEDLIST= YES
# sections, marked by \if <section_label> ... \endif and \cond <section_label>
# ... \endcond blocks.
ENABLED_SECTIONS =
ENABLED_SECTIONS =
# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the
# initial value of a variable or macro / define can have for it to appear in the
@@ -674,7 +674,7 @@ SHOW_NAMESPACES = YES
# by doxygen. Whatever the program writes to standard output is used as the file
# version. For an example see the documentation.
FILE_VERSION_FILTER =
FILE_VERSION_FILTER =
# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
# by doxygen. The layout file controls the global structure of the generated
@@ -687,7 +687,7 @@ FILE_VERSION_FILTER =
# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE
# tag is left empty.
LAYOUT_FILE =
LAYOUT_FILE =
# The CITE_BIB_FILES tag can be used to specify one or more bib files containing
# the reference definitions. This must be a list of .bib files. The .bib
@@ -697,7 +697,7 @@ LAYOUT_FILE =
# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the
# search path. See also \cite for info how to create references.
CITE_BIB_FILES =
CITE_BIB_FILES =
#---------------------------------------------------------------------------
# Configuration options related to warning and progress messages
@@ -756,7 +756,7 @@ WARN_FORMAT = "$file:$line: $text"
# messages should be written. If left blank the output is written to standard
# error (stderr).
WARN_LOGFILE =
WARN_LOGFILE =
#---------------------------------------------------------------------------
# Configuration options related to the input files
@@ -768,7 +768,7 @@ WARN_LOGFILE =
# spaces.
# Note: If this tag is empty the current directory is searched.
INPUT =
INPUT =
# 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
@@ -869,7 +869,7 @@ EXCLUDE_SYMLINKS = NO
# Note that the wildcards are matched against the file with absolute path, so to
# exclude all test directories for example use the pattern */test/*
EXCLUDE_PATTERNS =
EXCLUDE_PATTERNS =
# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
# (namespaces, classes, functions, etc.) that should be excluded from the
@@ -880,13 +880,13 @@ EXCLUDE_PATTERNS =
# Note that the wildcards are matched against the file with absolute path, so to
# exclude all test directories use the pattern */test/*
EXCLUDE_SYMBOLS =
EXCLUDE_SYMBOLS =
# The EXAMPLE_PATH tag can be used to specify one or more files or directories
# that contain example code fragments that are included (see the \include
# command).
EXAMPLE_PATH =
EXAMPLE_PATH =
# If the value of the EXAMPLE_PATH tag contains directories, you can use the
# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and
@@ -906,7 +906,7 @@ EXAMPLE_RECURSIVE = NO
# that contain images that are to be included in the documentation (see the
# \image command).
IMAGE_PATH =
IMAGE_PATH =
# The INPUT_FILTER tag can be used to specify a program that doxygen should
# invoke to filter for each input file. Doxygen will invoke the filter program
@@ -923,7 +923,7 @@ IMAGE_PATH =
# code is scanned, but not when the output code is generated. If lines are added
# or removed, the anchors will not be placed correctly.
INPUT_FILTER =
INPUT_FILTER =
# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
# basis. Doxygen will compare the file name with each pattern and apply the
@@ -932,7 +932,7 @@ INPUT_FILTER =
# filters are used. If the FILTER_PATTERNS tag is empty or if none of the
# patterns match the file name, INPUT_FILTER is applied.
FILTER_PATTERNS =
FILTER_PATTERNS =
# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
# INPUT_FILTER) will also be used to filter the input files that are used for
@@ -947,14 +947,14 @@ FILTER_SOURCE_FILES = NO
# *.ext= (so without naming a filter).
# This tag requires that the tag FILTER_SOURCE_FILES is set to YES.
FILTER_SOURCE_PATTERNS =
FILTER_SOURCE_PATTERNS =
# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that
# is part of the input, its contents will be placed on the main page
# (index.html). This can be useful if you have a project on for instance GitHub
# and want to reuse the introduction page also for the doxygen output.
USE_MDFILE_AS_MAINPAGE =
USE_MDFILE_AS_MAINPAGE =
#---------------------------------------------------------------------------
# Configuration options related to source browsing
@@ -1066,7 +1066,7 @@ COLS_IN_ALPHA_INDEX = 5
# while generating the index headers.
# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
IGNORE_PREFIX =
IGNORE_PREFIX =
#---------------------------------------------------------------------------
# Configuration options related to the HTML output
@@ -1110,7 +1110,7 @@ HTML_FILE_EXTENSION = .html
# of the possible markers and block names see the documentation.
# This tag requires that the tag GENERATE_HTML is set to YES.
HTML_HEADER =
HTML_HEADER =
# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each
# generated HTML page. If the tag is left blank doxygen will generate a standard
@@ -1120,7 +1120,7 @@ HTML_HEADER =
# that doxygen normally uses.
# This tag requires that the tag GENERATE_HTML is set to YES.
HTML_FOOTER =
HTML_FOOTER =
# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style
# sheet that is used by each HTML page. It can be used to fine-tune the look of
@@ -1132,7 +1132,7 @@ HTML_FOOTER =
# obsolete.
# This tag requires that the tag GENERATE_HTML is set to YES.
HTML_STYLESHEET =
HTML_STYLESHEET =
# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined
# cascading style sheets that are included after the standard style sheets
@@ -1145,7 +1145,7 @@ HTML_STYLESHEET =
# list). For an example see the documentation.
# This tag requires that the tag GENERATE_HTML is set to YES.
HTML_EXTRA_STYLESHEET =
HTML_EXTRA_STYLESHEET =
# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
# other source files which should be copied to the HTML output directory. Note
@@ -1155,7 +1155,7 @@ HTML_EXTRA_STYLESHEET =
# files will be copied as-is; there are no commands or markers available.
# This tag requires that the tag GENERATE_HTML is set to YES.
HTML_EXTRA_FILES =
HTML_EXTRA_FILES =
# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
# will adjust the colors in the style sheet and background images according to
@@ -1283,7 +1283,7 @@ GENERATE_HTMLHELP = NO
# written to the html output directory.
# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
CHM_FILE =
CHM_FILE =
# The HHC_LOCATION tag can be used to specify the location (absolute path
# including file name) of the HTML help compiler (hhc.exe). If non-empty,
@@ -1291,7 +1291,7 @@ CHM_FILE =
# The file has to be specified with full path.
# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
HHC_LOCATION =
HHC_LOCATION =
# The GENERATE_CHI flag controls if a separate .chi index file is generated
# (YES) or that it should be included in the master .chm file (NO).
@@ -1304,7 +1304,7 @@ GENERATE_CHI = NO
# and project file content.
# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
CHM_INDEX_ENCODING =
CHM_INDEX_ENCODING =
# The BINARY_TOC flag controls whether a binary table of contents is generated
# (YES) or a normal table of contents (NO) in the .chm file. Furthermore it
@@ -1335,7 +1335,7 @@ GENERATE_QHP = NO
# the HTML output folder.
# This tag requires that the tag GENERATE_QHP is set to YES.
QCH_FILE =
QCH_FILE =
# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help
# Project output. For more information please see Qt Help Project / Namespace
@@ -1360,7 +1360,7 @@ QHP_VIRTUAL_FOLDER = doc
# filters).
# This tag requires that the tag GENERATE_QHP is set to YES.
QHP_CUST_FILTER_NAME =
QHP_CUST_FILTER_NAME =
# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the
# custom filter to add. For more information please see Qt Help Project / Custom
@@ -1368,21 +1368,21 @@ QHP_CUST_FILTER_NAME =
# filters).
# This tag requires that the tag GENERATE_QHP is set to YES.
QHP_CUST_FILTER_ATTRS =
QHP_CUST_FILTER_ATTRS =
# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
# project's filter section matches. Qt Help Project / Filter Attributes (see:
# http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes).
# This tag requires that the tag GENERATE_QHP is set to YES.
QHP_SECT_FILTER_ATTRS =
QHP_SECT_FILTER_ATTRS =
# The QHG_LOCATION tag can be used to specify the location of Qt's
# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the
# generated .qhp file.
# This tag requires that the tag GENERATE_QHP is set to YES.
QHG_LOCATION =
QHG_LOCATION =
# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be
# generated, together with the HTML files, they form an Eclipse help plugin. To
@@ -1515,7 +1515,7 @@ MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest
# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols
# This tag requires that the tag USE_MATHJAX is set to YES.
MATHJAX_EXTENSIONS =
MATHJAX_EXTENSIONS =
# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces
# of code that will be used on startup of the MathJax code. See the MathJax site
@@ -1523,7 +1523,7 @@ MATHJAX_EXTENSIONS =
# example see the documentation.
# This tag requires that the tag USE_MATHJAX is set to YES.
MATHJAX_CODEFILE =
MATHJAX_CODEFILE =
# When the SEARCHENGINE tag is enabled doxygen will generate a search box for
# the HTML output. The underlying search engine uses javascript and DHTML and
@@ -1583,7 +1583,7 @@ EXTERNAL_SEARCH = NO
# Searching" for details.
# This tag requires that the tag SEARCHENGINE is set to YES.
SEARCHENGINE_URL =
SEARCHENGINE_URL =
# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the unindexed
# search data is written to a file for indexing by an external tool. With the
@@ -1599,7 +1599,7 @@ SEARCHDATA_FILE = searchdata.xml
# projects and redirect the results back to the right project.
# This tag requires that the tag SEARCHENGINE is set to YES.
EXTERNAL_SEARCH_ID =
EXTERNAL_SEARCH_ID =
# The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen
# projects other than the one defined by this configuration file, but that are
@@ -1609,7 +1609,7 @@ EXTERNAL_SEARCH_ID =
# EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ...
# This tag requires that the tag SEARCHENGINE is set to YES.
EXTRA_SEARCH_MAPPINGS =
EXTRA_SEARCH_MAPPINGS =
#---------------------------------------------------------------------------
# Configuration options related to the LaTeX output
@@ -1670,7 +1670,7 @@ PAPER_TYPE = a4wide
# If left blank no extra packages will be included.
# This tag requires that the tag GENERATE_LATEX is set to YES.
EXTRA_PACKAGES =
EXTRA_PACKAGES =
# The LATEX_HEADER tag can be used to specify a personal LaTeX header for the
# generated LaTeX document. The header should contain everything until the first
@@ -1686,7 +1686,7 @@ EXTRA_PACKAGES =
# to HTML_HEADER.
# This tag requires that the tag GENERATE_LATEX is set to YES.
LATEX_HEADER =
LATEX_HEADER =
# The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for the
# generated LaTeX document. The footer should contain everything after the last
@@ -1697,7 +1697,7 @@ LATEX_HEADER =
# Note: Only use a user-defined footer if you know what you are doing!
# This tag requires that the tag GENERATE_LATEX is set to YES.
LATEX_FOOTER =
LATEX_FOOTER =
# The LATEX_EXTRA_STYLESHEET tag can be used to specify additional user-defined
# LaTeX style sheets that are included after the standard style sheets created
@@ -1708,7 +1708,7 @@ LATEX_FOOTER =
# list).
# This tag requires that the tag GENERATE_LATEX is set to YES.
LATEX_EXTRA_STYLESHEET =
LATEX_EXTRA_STYLESHEET =
# The LATEX_EXTRA_FILES tag can be used to specify one or more extra images or
# other source files which should be copied to the LATEX_OUTPUT output
@@ -1716,7 +1716,7 @@ LATEX_EXTRA_STYLESHEET =
# markers available.
# This tag requires that the tag GENERATE_LATEX is set to YES.
LATEX_EXTRA_FILES =
LATEX_EXTRA_FILES =
# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated is
# prepared for conversion to PDF (using ps2pdf or pdflatex). The PDF file will
@@ -1816,14 +1816,14 @@ RTF_HYPERLINKS = NO
# default style sheet that doxygen normally uses.
# This tag requires that the tag GENERATE_RTF is set to YES.
RTF_STYLESHEET_FILE =
RTF_STYLESHEET_FILE =
# Set optional variables used in the generation of an RTF document. Syntax is
# similar to doxygen's config file. A template extensions file can be generated
# using doxygen -e rtf extensionFile.
# This tag requires that the tag GENERATE_RTF is set to YES.
RTF_EXTENSIONS_FILE =
RTF_EXTENSIONS_FILE =
# If the RTF_SOURCE_CODE tag is set to YES then doxygen will include source code
# with syntax highlighting in the RTF output.
@@ -1868,7 +1868,7 @@ MAN_EXTENSION = .3
# MAN_EXTENSION with the initial . removed.
# This tag requires that the tag GENERATE_MAN is set to YES.
MAN_SUBDIR =
MAN_SUBDIR =
# If the MAN_LINKS tag is set to YES and doxygen generates man output, then it
# will generate one additional man file for each entity documented in the real
@@ -1981,7 +1981,7 @@ PERLMOD_PRETTY = YES
# overwrite each other's variables.
# This tag requires that the tag GENERATE_PERLMOD is set to YES.
PERLMOD_MAKEVAR_PREFIX =
PERLMOD_MAKEVAR_PREFIX =
#---------------------------------------------------------------------------
# Configuration options related to the preprocessor
@@ -2022,7 +2022,7 @@ SEARCH_INCLUDES = YES
# preprocessor.
# This tag requires that the tag SEARCH_INCLUDES is set to YES.
INCLUDE_PATH =
INCLUDE_PATH =
# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
# patterns (like *.h and *.hpp) to filter out the header-files in the
@@ -2030,7 +2030,7 @@ INCLUDE_PATH =
# used.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
INCLUDE_FILE_PATTERNS =
INCLUDE_FILE_PATTERNS =
# The PREDEFINED tag can be used to specify one or more macro names that are
# defined before the preprocessor is started (similar to the -D option of e.g.
@@ -2040,7 +2040,7 @@ INCLUDE_FILE_PATTERNS =
# recursively expanded use the := operator instead of the = operator.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
PREDEFINED =
PREDEFINED =
# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
# tag can be used to specify a list of macro names that should be expanded. The
@@ -2049,7 +2049,7 @@ PREDEFINED =
# definition found in the source code.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
EXPAND_AS_DEFINED =
EXPAND_AS_DEFINED =
# If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will
# remove all references to function-like macros that are alone on a line, have
@@ -2078,13 +2078,13 @@ SKIP_FUNCTION_MACROS = YES
# the path). If a tag file is not located in the directory in which doxygen is
# run, you must also specify the path to the tagfile here.
TAGFILES =
TAGFILES =
# When a file name is specified after GENERATE_TAGFILE, doxygen will create a
# tag file that is based on the input files it reads. See section "Linking to
# external documentation" for more information about the usage of tag files.
GENERATE_TAGFILE =
GENERATE_TAGFILE =
# If the ALLEXTERNALS tag is set to YES, all external class will be listed in
# the class index. If set to NO, only the inherited external classes will be
@@ -2133,14 +2133,14 @@ CLASS_DIAGRAMS = YES
# the mscgen tool resides. If left empty the tool is assumed to be found in the
# default search path.
MSCGEN_PATH =
MSCGEN_PATH =
# You can include diagrams made with dia in doxygen documentation. Doxygen will
# then run dia to produce the diagram and insert it in the documentation. The
# DIA_PATH tag allows you to specify the directory where the dia binary resides.
# If left empty dia is assumed to be found in the default search path.
DIA_PATH =
DIA_PATH =
# If set to YES the inheritance and collaboration graphs will hide inheritance
# and usage relations if the target is undocumented or is not a class.
@@ -2189,7 +2189,7 @@ DOT_FONTSIZE = 10
# the path where dot can find it using this tag.
# This tag requires that the tag HAVE_DOT is set to YES.
DOT_FONTPATH =
DOT_FONTPATH =
# If the CLASS_GRAPH tag is set to YES then doxygen will generate a graph for
# each documented class showing the direct and indirect inheritance relations.
@@ -2327,26 +2327,26 @@ INTERACTIVE_SVG = NO
# found. If left blank, it is assumed the dot tool can be found in the path.
# This tag requires that the tag HAVE_DOT is set to YES.
DOT_PATH =
DOT_PATH =
# The DOTFILE_DIRS tag can be used to specify one or more directories that
# contain dot files that are included in the documentation (see the \dotfile
# command).
# This tag requires that the tag HAVE_DOT is set to YES.
DOTFILE_DIRS =
DOTFILE_DIRS =
# The MSCFILE_DIRS tag can be used to specify one or more directories that
# contain msc files that are included in the documentation (see the \mscfile
# command).
MSCFILE_DIRS =
MSCFILE_DIRS =
# The DIAFILE_DIRS tag can be used to specify one or more directories that
# contain dia files that are included in the documentation (see the \diafile
# command).
DIAFILE_DIRS =
DIAFILE_DIRS =
# When using plantuml, the PLANTUML_JAR_PATH tag should be used to specify the
# path where java can find the plantuml.jar file. If left blank, it is assumed
@@ -2354,12 +2354,12 @@ DIAFILE_DIRS =
# generate a warning when it encounters a \startuml command in this case and
# will not generate output for the diagram.
PLANTUML_JAR_PATH =
PLANTUML_JAR_PATH =
# When using plantuml, the specified paths are searched for files specified by
# the !include statement in a plantuml block.
PLANTUML_INCLUDE_PATH =
PLANTUML_INCLUDE_PATH =
# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of nodes
# that will be shown in the graph. If the number of nodes in a graph becomes
+1 -2
View File
@@ -13,9 +13,8 @@ set(PlaYUVer_Lib_SRCS
PlaYUVerStream.cpp
StreamHandlerRaw.cpp
StreamHandlerPortableMap.cpp
# Command Parser
# Options Parser
PlaYUVerOptions.cpp
# PlaYUVerCmdParser.cpp
)
IF( USE_FFMPEG )
+1
View File
@@ -27,6 +27,7 @@
#define __PLAYUVERDEFS_H__
#include <string>
#include <vector>
#include <algorithm>
+5 -9
View File
@@ -19,23 +19,19 @@
/**
* \file PlaYUVerFrame.cpp
* \ingroup PlaYUVerLib
* \brief Video Frame handling
*/
#include "config.h"
#include <cstdio>
#include <cmath>
#include "LibMemory.h"
#include "PlaYUVerFrame.h"
#include "PlaYUVerFramePixelFormats.h"
#ifdef USE_FFMPEG
#include "StreamHandlerLibav.h"
#endif
#include <cmath>
#ifdef USE_OPENCV
#include "StreamHandlerOpenCV.h"
#include <opencv2/core.hpp>
#endif
#include "LibMemory.h"
#include "PlaYUVerFramePixelFormats.h"
/*! \brief Supported formats
*
+10 -15
View File
@@ -19,21 +19,15 @@
/**
* \file PlaYUVerFrame.h
* \ingroup PlaYUVerLib
* \brief Video Frame handling
*/
#ifndef __PLAYUVERFRAME_H__
#define __PLAYUVERFRAME_H__
#include <iostream>
#include <cstdio>
#include <cassert>
#include <vector>
#include "PlaYUVerDefs.h"
#include "PlaYUVerPixel.h"
namespace cv
{
class Mat;
@@ -51,7 +45,6 @@ struct PlaYUVerFramePrivate;
* \brief Frame handling class
*/
class PlaYUVerFrame
//: public PlaYUVerFrameStats
{
public:
@@ -133,8 +126,6 @@ public:
~PlaYUVerFrame();
Void clear();
Bool haveSameFmt( PlaYUVerFrame* other, UInt match = MATCH_ALL ) const;
/**
@@ -144,11 +135,13 @@ public:
Int getPelFormat() const;
/**
* Get pixel format information
* @return pixel format name
*/
String getPelFmtName();
/**
* Get color space information
* @return get color space index
* @
*/
@@ -198,6 +191,11 @@ public:
*/
static UInt64 getBytesPerFrame( UInt uiWidth, UInt uiHeight, Int iPixelFormat, UInt bitsPixel );
/**
* Reset frame pixels to zero
*/
Void clear();
Pel*** getPelBufferYUV() const;
Pel*** getPelBufferYUV();
UChar* getRGBBuffer() const;
@@ -236,16 +234,13 @@ public:
Bool fromMat( cv::Mat& cvMat );
/**
* @defgroup PlaYUVerLib_QualityMetrics Quality Metrics Interface
* \ingroup PlaYUVerLib_Frame
* @defgroup PlaYUVerLib_Frame_QualityMetrics Quality Metrics Interface
* @{
* \ingroup PlaYUVerLib
* Quality metrics interface
*
* @}
*/
//! @ingroup PlaYUVerLib_QualityMetrics
//! @{
enum QualityMetrics
{
NO_METRIC = -1,
@@ -269,7 +264,7 @@ public:
Double getPSNR( PlaYUVerFrame* Org, Int component );
Double getSSIM( PlaYUVerFrame* Org, Int component );
//! @}
/** @} */
private:
PlaYUVerFramePrivate* d;
+6 -4
View File
@@ -19,22 +19,24 @@
/**
* \file PlaYUVerFramePixelFormats.cpp
* \ingroup PlaYUVerLib
* \brief Handling the pixel formats definition
*/
#include "config.h"
#include <cstdio>
#include "LibMemory.h"
#include "PlaYUVerFramePixelFormats.h"
// #include <cstdio>
#ifdef USE_SSE
#include <emmintrin.h>
#include <smmintrin.h>
#include <limits.h>
#endif
#include "LibMemory.h"
#ifdef USE_FFMPEG
#include "StreamHandlerLibav.h"
#endif
#include "PlaYUVerFramePixelFormats.h"
/*
+1 -3
View File
@@ -19,7 +19,6 @@
/**
* \file PlaYUVerFramePixelFormats.h
* \ingroup PlaYUVerLib
* \brief Handling the pixel formats definition
*/
@@ -27,9 +26,8 @@
#define __PLAYUVERFRAMEPIXELFORMATS_H__
#include "PlaYUVerDefs.h"
#include "PlaYUVerFrame.h"
#include "PlaYUVerPixel.h"
#include "PlaYUVerFrame.h"
#define CHROMA_RESAMPLING( X ) ( ( ( X + 1 ) >> 1 ) << 1 )
+5 -6
View File
@@ -19,7 +19,6 @@
/**
* \file PlaYUVerLib.h
* \ingroup PlaYUVerLib
* \brief Inlcude all modules of PlaYUVer Lib
*/
@@ -40,16 +39,16 @@
* This guaratees that the top-level applications does not need to worry
* about dealig with different stream formats as well as different pixel formats
*
* @defgroup PlaYUVerLib_Stream PlaYUVer Stream
* @{
* Describe PlaYUVerStream
* @}
*
* @defgroup PlaYUVerLib_Frame PlaYUVer Frame
* @{
* Describe PlaYUVerFrame
* @}
*
* @defgroup PlaYUVerLib_Stream PlaYUVer Stream
* @{
* Describe PlaYUVerStream
* @}
*
* @}
*
*/
+41 -6
View File
@@ -19,12 +19,22 @@
/**
* \file PlaYUVerModuleIf.h
* \ingroup PlaYUVerLib_Modules
* \brief PlaYUVer modules interface
*/
#ifndef __PLAYUVERMODULESIF_H__
#define __PLAYUVERMODULESIF_H__
/**
* \ingroup PlaYUVerLib
* @defgroup PlaYUVerLib_Modules PlaYUVer Modules
* @{
* PlaYUVerLib supports the creation of independent
* frame processing modules
* @}
*/
#include "PlaYUVerDefs.h"
#include "PlaYUVerFrame.h"
#include "PlaYUVerOptions.h"
@@ -46,31 +56,48 @@ for( UInt i = 0; i < apcFrameList.size(); i++ ) \
if( !apcFrameList[i] ) \
return false;
enum // Module API
/** Module_API_Version Enum
* \ingroup PlaYUVerLib_Modules
* Version of the modules API required
* @see m_iModuleAPI
*/
enum Module_API_Version
{
MODULE_API_1,
MODULE_API_2,
};
enum // Module type
/** Module_Type Enum
* \ingroup PlaYUVerLib_Modules
* Type of module
* @see m_iModuleType
*/
enum Module_Type
{
FRAME_PROCESSING_MODULE,
FRAME_MEASUREMENT_MODULE,
};
#define APPLY_WHILE_PLAYING true
#define MAX_NUMBER_FRAMES 3
/** Module_NumberOfFrames Enum
* \ingroup PlaYUVerLib_Modules
* Number of frames requires by a module
* @see m_uiNumberOfFrames
*/
enum Module_NumberOfFrames
{
MODULE_REQUIRES_ONE_FRAME = 1,
MODULE_REQUIRES_TWO_FRAMES,
MODULE_REQUIRES_THREE_FRAMES,
MODULE_REQUIRES_FOUR_FRAMES,
MODULE_REQUIRES_FIVE_FRAMES,
MODULE_REQUIRES_SIX_FRAMES,
MODULE_REQUIRES_MAX_FRAMES = 255,
};
/** Module_Features Enum
* \ingroup PlaYUVerLib_Modules
* Features/Requirements of a module
* @see m_uiModuleRequirements
*/
enum Module_Features
{
MODULE_REQUIRES_NOTHING = 0,
@@ -89,6 +116,11 @@ enum Module_Key_Supported
};
/**
* \class PlaYUVerModuleIf
* \ingroup PlaYUVerLib PlaYUVerLib_Modules
* \brief Abstract class for modules
*/
class PlaYUVerModuleIf
{
public:
@@ -98,7 +130,10 @@ public:
const Char* m_pchModuleCategory;
const Char* m_pchModuleName;
const Char* m_pchModuleTooltip;
//! Number of frames
enum Module_NumberOfFrames m_uiNumberOfFrames;
//! Features/Requirements
UInt m_uiModuleRequirements;
PlaYUVerOptions m_cModuleOptions;
+1 -1
View File
@@ -33,7 +33,7 @@
/**
* \file PlaYUVerOptions.cpp
* \brief Input args handler
* \brief Options handler
*/
#include "config.h"
+1 -1
View File
@@ -33,7 +33,7 @@
/**
* \file PlaYUVerOptions.h
* \brief Input args handler
* \brief Options handler
*/
#ifndef __PROGRAMOPTIONS_H__
-1
View File
@@ -19,7 +19,6 @@
/**
* \file PlaYUVerPixel.cpp
* \ingroup PlaYUVerLib
* \brief Pixel handling
*/
-1
View File
@@ -19,7 +19,6 @@
/**
* \file PlaYUVerPixel.h
* \ingroup PlaYUVerLib
* \brief Pixel handling
*/
+8 -9
View File
@@ -19,19 +19,18 @@
/**
* \file PlaYUVerStream.cpp
* \ingroup PlaYUVerLib
* \brief Input stream handling
*/
#include "config.h"
#include <cstdio>
#include <vector>
#include "LibMemory.h"
#include "PlaYUVerStream.h"
#include <cstdio>
#include "LibMemory.h"
#include "PlaYUVerStreamHandlerIf.h"
#include "StreamHandlerRaw.h"
#include "StreamHandlerPortableMap.h"
#ifdef USE_FFMPEG
#include "StreamHandlerLibav.h"
#endif
@@ -43,8 +42,8 @@
std::vector<PlaYUVerSupportedFormat> PlaYUVerStream::supportedReadFormats()
{
INI_REGIST_PLAYUVER_SUPPORTED_FMT;
REGIST_PLAYUVER_SUPPORTED_FMT( &PlaYUVerRawHandler::Create, "Raw Video", "yuv" );
REGIST_PLAYUVER_SUPPORTED_FMT( &PlaYUVerRawHandler::Create, "Raw Video", "gray" );
REGIST_PLAYUVER_SUPPORTED_FMT( &StreamHandlerRaw::Create, "Raw Video", "yuv" );
REGIST_PLAYUVER_SUPPORTED_FMT( &StreamHandlerRaw::Create, "Raw Video", "gray" );
REGIST_PLAYUVER_SUPPORTED_FMT( &StreamHandlerPortableMap::Create, "Portable BitMap ", "pbm" );
REGIST_PLAYUVER_SUPPORTED_FMT( &StreamHandlerPortableMap::Create, "Portable GrayMap ", "pgm" );
REGIST_PLAYUVER_SUPPORTED_FMT( &StreamHandlerPortableMap::Create, "Portable PixMap ", "ppm" );
@@ -60,7 +59,7 @@ std::vector<PlaYUVerSupportedFormat> PlaYUVerStream::supportedReadFormats()
std::vector<PlaYUVerSupportedFormat> PlaYUVerStream::supportedWriteFormats()
{
INI_REGIST_PLAYUVER_SUPPORTED_FMT;
REGIST_PLAYUVER_SUPPORTED_FMT( &PlaYUVerRawHandler::Create, "Raw Video", "yuv" );
REGIST_PLAYUVER_SUPPORTED_FMT( &StreamHandlerRaw::Create, "Raw Video", "yuv" );
REGIST_PLAYUVER_SUPPORTED_FMT( &StreamHandlerPortableMap::Create, "Portable BitMap ", "pbm" );
REGIST_PLAYUVER_SUPPORTED_FMT( &StreamHandlerPortableMap::Create, "Portable GrayMap ", "pgm" );
#ifdef USE_FFMPEG
@@ -124,7 +123,7 @@ CreateStreamHandlerFn PlaYUVerStream::findStreamHandler( String strFilename, boo
return supportedFmts[i].formatFct;
}
}
return &PlaYUVerRawHandler::Create;
return &StreamHandlerRaw::Create;
}
PlaYUVerStream::PlaYUVerStream()
+1 -6
View File
@@ -19,7 +19,6 @@
/**
* \file PlaYUVerStream.h
* \ingroup PlaYUVerLib
* \brief Input stream handling
*/
@@ -27,13 +26,8 @@
#define __PLAYUVERSTREAM_H__
#include "PlaYUVerDefs.h"
#include <iostream>
#include <fstream>
#include <cstdio>
#include "PlaYUVerFrame.h"
class LibOpenCVHandler;
class PlaYUVerStreamHandlerIf;
typedef struct
@@ -76,6 +70,7 @@ typedef struct
/**
* \class PlaYUVerStream
* \ingroup PlaYUVerLib PlaYUVerLib_Stream
* \brief Stream handling class
*/
class PlaYUVerStream
{
+1 -1
View File
@@ -37,7 +37,7 @@
/**
* \class PlaYUVerStreamHandlerIf
* \ingroup PlaYUVerLib PlaYUVerLib_Stream
* \ingroup PlaYUVerLib_Stream
* \brief Abstract class for stream handling
*/
class PlaYUVerStreamHandlerIf
-1
View File
@@ -19,7 +19,6 @@
/**
* \file StreamHandlerLibav.cpp
* \ingroup PlaYUVerLib
* \brief Interface with libav libs
*/
+8 -3
View File
@@ -19,7 +19,6 @@
/**
* \file StreamHandlerLibav.h
* \ingroup PlaYUVerLib
* \brief Interface with libav libs
*/
@@ -43,7 +42,6 @@ extern "C"
#include <libavutil/avutil.h>
#include <libavutil/imgutils.h>
#include <libavutil/samplefmt.h>
//#include <libavutil/timestamp.h>
#include <libavformat/avformat.h>
}
@@ -52,6 +50,14 @@ extern "C"
#include "PlaYUVerStreamHandlerIf.h"
struct AVFormatContext;
struct AVCodecContext;
struct AVStream;
struct AVStream;
struct AVPacket;
class StreamHandlerLibav: public PlaYUVerStreamHandlerIf
{
REGISTER_STREAM_HANDLER( StreamHandlerLibav )
@@ -85,7 +91,6 @@ public:
UInt64 m_uiFrameBufferSize;
private:
AVFormatContext* m_cFmtCtx;
AVCodecContext* m_cCodecCtx;
AVStream* m_cStream;
-1
View File
@@ -19,7 +19,6 @@
/**
* \file StreamHandlerOpenCV.cpp
* \ingroup PlaYUVerLib
* \brief Interface with opencv lib
*/
-1
View File
@@ -19,7 +19,6 @@
/**
* \file StreamHandlerOpenCV.h
* \ingroup PlaYUVerLib
* \brief Interface with opencv lib
*/
+1 -2
View File
@@ -19,8 +19,7 @@
/**
* \file StreamHandlerPortableMap.cpp
* \ingroup PlaYUVerLib
* \brief Interface with opencv lib
* \brief Handling portable pixmap formats
*/
#include <cstdio>
+1 -2
View File
@@ -19,8 +19,7 @@
/**
* \file StreamHandlerPortableMap.h
* \ingroup PlaYUVerLib
* \brief Interface with opencv lib
* \brief Handling portable pixmap formats
*/
#ifndef __STREAMHANDLERPORTABLEMAP_H__
+7 -8
View File
@@ -19,7 +19,6 @@
/**
* \file StreamHandlerRaw.cpp
* \ingroup PlaYUVerLib
* \brief Interface for raw (yuv) streams
*/
@@ -30,7 +29,7 @@
#include "LibMemory.h"
Bool PlaYUVerRawHandler::openHandler( String strFilename, Bool bInput )
Bool StreamHandlerRaw::openHandler( String strFilename, Bool bInput )
{
m_bIsInput = bInput;
m_pFile = NULL;
@@ -44,19 +43,19 @@ Bool PlaYUVerRawHandler::openHandler( String strFilename, Bool bInput )
return true;
}
Void PlaYUVerRawHandler::closeHandler()
Void StreamHandlerRaw::closeHandler()
{
if( m_pFile )
fclose( m_pFile );
}
Bool PlaYUVerRawHandler::configureBuffer( PlaYUVerFrame* pcFrame )
Bool StreamHandlerRaw::configureBuffer( PlaYUVerFrame* pcFrame )
{
return getMem1D<Byte>( &m_pStreamBuffer, pcFrame->getBytesPerFrame() );
}
UInt64 PlaYUVerRawHandler::calculateFrameNumber()
UInt64 StreamHandlerRaw::calculateFrameNumber()
{
if( !m_pFile || m_uiNBytesPerFrame == 0 )
return 0;
@@ -66,7 +65,7 @@ UInt64 PlaYUVerRawHandler::calculateFrameNumber()
return ( fileSize / m_uiNBytesPerFrame );
}
Bool PlaYUVerRawHandler::seek( UInt64 iFrameNum )
Bool StreamHandlerRaw::seek( UInt64 iFrameNum )
{
if( m_bIsInput && m_pFile )
{
@@ -76,7 +75,7 @@ Bool PlaYUVerRawHandler::seek( UInt64 iFrameNum )
return false;
}
Bool PlaYUVerRawHandler::read( PlaYUVerFrame* pcFrame )
Bool StreamHandlerRaw::read( PlaYUVerFrame* pcFrame )
{
UInt64 processed_bytes = fread( m_pStreamBuffer, sizeof( Byte ), m_uiNBytesPerFrame, m_pFile );
if( processed_bytes != m_uiNBytesPerFrame )
@@ -85,7 +84,7 @@ Bool PlaYUVerRawHandler::read( PlaYUVerFrame* pcFrame )
return true;
}
Bool PlaYUVerRawHandler::write( PlaYUVerFrame* pcFrame )
Bool StreamHandlerRaw::write( PlaYUVerFrame* pcFrame )
{
pcFrame->frameToBuffer( m_pStreamBuffer );
UInt64 processed_bytes = fwrite( m_pStreamBuffer, sizeof( Byte ), m_uiNBytesPerFrame, m_pFile );
+5 -6
View File
@@ -30,20 +30,19 @@
/**
* \class PlaYUVerRawHandler
* \ingroup PlaYUVerLib PlaYUVerLib_Stream
* \class StreamHandlerRaw
* \brief Class to handle raw video format
*/
class PlaYUVerRawHandler: public PlaYUVerStreamHandlerIf
class StreamHandlerRaw: public PlaYUVerStreamHandlerIf
{
REGISTER_STREAM_HANDLER( PlaYUVerRawHandler )
REGISTER_STREAM_HANDLER( StreamHandlerRaw )
private:
FILE* m_pFile; /**< The input file pointer >*/
public:
PlaYUVerRawHandler() {}
~PlaYUVerRawHandler() {}
StreamHandlerRaw() {}
~StreamHandlerRaw() {}
Bool openHandler( String strFilename, Bool bInput );
Void closeHandler();