/*
* This file is part of FFmpeg .
*
* FFmpeg 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 2 . 1 of the License , or ( at your option ) any later version .
*
* FFmpeg 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 FFmpeg ; if not , write to the Free Software
* Foundation , Inc . , 51 Franklin Street , Fifth Floor , Boston , MA 02110 - 1301 USA
*/
/**
* @ file
* @ ingroup lavu
* Utility Preprocessor macros
*/
#ifndef AVUTIL_MACROS_H
#define AVUTIL_MACROS_H
#include "libavutil/avconfig.h"
#if AV_HAVE_BIGENDIAN
# define AV_NE(be, le) (be)
#else
# define AV_NE(be, le) (le)
#endif
/**
* Comparator .
* For two numerical expressions x and y , gives 1 if x > y , - 1 if x < y , and 0
* if x = = y . This is useful for instance in a qsort comparator callback .
* Furthermore , compilers are able to optimize this to branchless code , and
* there is no risk of overflow with signed types .
* As with many macros , this evaluates its argument multiple times , it thus
* must not have a side - effect .
*/
#define FFDIFFSIGN(x,y) (((x)>(y)) - ((x)<(y)))
#define FFMAX(a,b) ((a) > (b) ? (a) : (b))
#define FFMAX3(a,b,c) FFMAX(FFMAX(a,b),c)
#define FFMIN(a,b) ((a) > (b) ? (b) : (a))
#define FFMIN3(a,b,c) FFMIN(FFMIN(a,b),c)
#define FFSWAP(type,a,b) do {type SWAP_tmp= b; b= a; a= SWAP_tmp;}while (0 )
#define FF_ARRAY_ELEMS(a) (sizeof (a) / sizeof ((a)[0 ]))
#define MKTAG(a,b,c,d) ((a) | ((b) << 8 ) | ((c) << 16 ) | ((unsigned )(d) << 24 ))
#define MKBETAG(a,b,c,d) ((d) | ((c) << 8 ) | ((b) << 16 ) | ((unsigned )(a) << 24 ))
/**
* @ addtogroup preproc_misc Preprocessor String Macros
*
* String manipulation macros
*
* @ {
*/
#define AV_STRINGIFY(s) AV_TOSTRING(s)
#define AV_TOSTRING(s) #s
#define AV_GLUE(a, b) a ## b
#define AV_JOIN(a, b) AV_GLUE(a, b)
/**
* @ }
*/
#define AV_PRAGMA(s) _Pragma(#s )
#define FFALIGN(x, a) (((x)+(a)-1 )&~((a)-1 ))
#endif /* AVUTIL_MACROS_H */
Messung V0.5 in Prozent C=88 H=90 G=88
¤ Dauer der Verarbeitung: 0.15 Sekunden
(vorverarbeitet am 2026-08-25)
¤
*© Formatika GbR, Deutschland