diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2003-02-14 21:27:25 +0000 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2003-02-14 21:27:25 +0000 |
commit | bba9b16c265f7a0ce3a1bc5dbf88d178ebec457a (patch) | |
tree | 16024959c1ac83c766f7dd0cf556a5ecaf6c4a19 /libavcodec/libpostproc/postprocess.h | |
parent | 7d67e968a4ec375257c21e4658d91452aeba9a74 (diff) | |
download | ffmpeg-bba9b16c265f7a0ce3a1bc5dbf88d178ebec457a.tar.gz |
moving postprocess to ffmpeg/libavcodec
Originally committed as revision 1586 to svn://svn.ffmpeg.org/ffmpeg/trunk
Originally committed as revision 9427 to svn://svn.mplayerhq.hu/mplayer/trunk/postproc
Originally committed as revision 9428 to svn://svn.mplayerhq.hu/mplayer/trunk/postproc
Diffstat (limited to 'libavcodec/libpostproc/postprocess.h')
-rw-r--r-- | libavcodec/libpostproc/postprocess.h | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/libavcodec/libpostproc/postprocess.h b/libavcodec/libpostproc/postprocess.h new file mode 100644 index 0000000000..c8af1b11b4 --- /dev/null +++ b/libavcodec/libpostproc/postprocess.h @@ -0,0 +1,73 @@ +/* + Copyright (C) 2001-2003 Michael Niedermayer (michaelni@gmx.at) + + 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 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, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ + +#ifndef NEWPOSTPROCESS_H +#define NEWPOSTPROCESS_H + +/** + * @file postprocess.h + * @brief + * external api for the pp stuff + */ + +#ifdef __cplusplus +extern "C" { +#endif + +#define PP_QUALITY_MAX 6 + +#define QP_STORE_T int8_t + +typedef void pp_context_t; +typedef void pp_mode_t; + +extern char *pp_help; //a simple help text + +void pp_postprocess(uint8_t * src[3], int srcStride[3], + uint8_t * dst[3], int dstStride[3], + int horizontalSize, int verticalSize, + QP_STORE_T *QP_store, int QP_stride, + pp_mode_t *mode, pp_context_t *ppContext, int pict_type); + + +/** + * returns a pp_mode_t or NULL if an error occured + * name is the string after "-pp" on the command line + * quality is a number from 0 to PP_QUALITY_MAX + */ +pp_mode_t *pp_get_mode_by_name_and_quality(char *name, int quality); +void pp_free_mode(pp_mode_t *mode); + +pp_context_t *pp_get_context(int width, int height, int flags); +void pp_free_context(pp_context_t *ppContext); + +#define PP_CPU_CAPS_MMX 0x80000000 +#define PP_CPU_CAPS_MMX2 0x20000000 +#define PP_CPU_CAPS_3DNOW 0x40000000 + +#define PP_FORMAT 0x00000008 +#define PP_FORMAT_420 (0x00000011|PP_FORMAT) +#define PP_FORMAT_422 (0x00000001|PP_FORMAT) +#define PP_FORMAT_411 (0x00000002|PP_FORMAT) +#define PP_FORMAT_444 (0x00000000|PP_FORMAT) + +#ifdef __cplusplus +} +#endif + +#endif |