FFmpeg
Macros | Enumerations | Functions
mathematics.h File Reference
#include <stdint.h>
#include <math.h>
#include "attributes.h"
#include "rational.h"
#include "intfloat.h"

Go to the source code of this file.

Macros

#define M_E   2.7182818284590452354 /* e */
 
#define M_Ef   2.7182818284590452354f /* e */
 
#define M_LN2   0.69314718055994530942 /* log_e 2 */
 
#define M_LN2f   0.69314718055994530942f /* log_e 2 */
 
#define M_LN10   2.30258509299404568402 /* log_e 10 */
 
#define M_LN10f   2.30258509299404568402f /* log_e 10 */
 
#define M_LOG2_10   3.32192809488736234787 /* log_2 10 */
 
#define M_LOG2_10f   3.32192809488736234787f /* log_2 10 */
 
#define M_PHI   1.61803398874989484820 /* phi / golden ratio */
 
#define M_PHIf   1.61803398874989484820f /* phi / golden ratio */
 
#define M_PI   3.14159265358979323846 /* pi */
 
#define M_PIf   3.14159265358979323846f /* pi */
 
#define M_PI_2   1.57079632679489661923 /* pi/2 */
 
#define M_PI_2f   1.57079632679489661923f /* pi/2 */
 
#define M_PI_4   0.78539816339744830962 /* pi/4 */
 
#define M_PI_4f   0.78539816339744830962f /* pi/4 */
 
#define M_1_PI   0.31830988618379067154 /* 1/pi */
 
#define M_1_PIf   0.31830988618379067154f /* 1/pi */
 
#define M_2_PI   0.63661977236758134308 /* 2/pi */
 
#define M_2_PIf   0.63661977236758134308f /* 2/pi */
 
#define M_2_SQRTPI   1.12837916709551257390 /* 2/sqrt(pi) */
 
#define M_2_SQRTPIf   1.12837916709551257390f /* 2/sqrt(pi) */
 
#define M_SQRT1_2   0.70710678118654752440 /* 1/sqrt(2) */
 
#define M_SQRT1_2f   0.70710678118654752440f /* 1/sqrt(2) */
 
#define M_SQRT2   1.41421356237309504880 /* sqrt(2) */
 
#define M_SQRT2f   1.41421356237309504880f /* sqrt(2) */
 
#define NAN   av_int2float(0x7fc00000)
 
#define INFINITY   av_int2float(0x7f800000)
 

Enumerations

enum  AVRounding {
  AV_ROUND_ZERO = 0, AV_ROUND_INF = 1, AV_ROUND_DOWN = 2, AV_ROUND_UP = 3,
  AV_ROUND_NEAR_INF = 5, AV_ROUND_PASS_MINMAX = 8192, AV_ROUND_ZERO = 0, AV_ROUND_INF = 1,
  AV_ROUND_DOWN = 2, AV_ROUND_UP = 3, AV_ROUND_NEAR_INF = 5, AV_ROUND_PASS_MINMAX = 8192
}
 Rounding methods. More...
 

Functions

int64_t av_const av_gcd (int64_t a, int64_t b)
 Compute the greatest common divisor of two integer operands. More...
 
int64_t av_rescale (int64_t a, int64_t b, int64_t c) av_const
 Rescale a 64-bit integer with rounding to nearest. More...
 
int64_t av_rescale_rnd (int64_t a, int64_t b, int64_t c, enum AVRounding rnd) av_const
 Rescale a 64-bit integer with specified rounding. More...
 
int64_t av_rescale_q (int64_t a, AVRational bq, AVRational cq) av_const
 Rescale a 64-bit integer by 2 rational numbers. More...
 
int64_t av_rescale_q_rnd (int64_t a, AVRational bq, AVRational cq, enum AVRounding rnd) av_const
 Rescale a 64-bit integer by 2 rational numbers with specified rounding. More...
 
int av_compare_ts (int64_t ts_a, AVRational tb_a, int64_t ts_b, AVRational tb_b)
 Compare two timestamps each in its own time base. More...
 
int64_t av_compare_mod (uint64_t a, uint64_t b, uint64_t mod)
 Compare the remainders of two integer operands divided by a common divisor. More...
 
int64_t av_rescale_delta (AVRational in_tb, int64_t in_ts, AVRational fs_tb, int duration, int64_t *last, AVRational out_tb)
 Rescale a timestamp while preserving known durations. More...
 
int64_t av_add_stable (AVRational ts_tb, int64_t ts, AVRational inc_tb, int64_t inc)
 Add a value to a timestamp. More...
 
double av_bessel_i0 (double x)
 0th order modified bessel function of the first kind. More...
 

Macro Definition Documentation

◆ M_E

#define M_E   2.7182818284590452354 /* e */

Definition at line 37 of file mathematics.h.

◆ M_Ef

#define M_Ef   2.7182818284590452354f /* e */

Definition at line 40 of file mathematics.h.

◆ M_LN2

#define M_LN2   0.69314718055994530942 /* log_e 2 */

Definition at line 43 of file mathematics.h.

◆ M_LN2f

#define M_LN2f   0.69314718055994530942f /* log_e 2 */

Definition at line 46 of file mathematics.h.

◆ M_LN10

#define M_LN10   2.30258509299404568402 /* log_e 10 */

Definition at line 49 of file mathematics.h.

◆ M_LN10f

#define M_LN10f   2.30258509299404568402f /* log_e 10 */

Definition at line 52 of file mathematics.h.

◆ M_LOG2_10

#define M_LOG2_10   3.32192809488736234787 /* log_2 10 */

Definition at line 55 of file mathematics.h.

◆ M_LOG2_10f

#define M_LOG2_10f   3.32192809488736234787f /* log_2 10 */

Definition at line 58 of file mathematics.h.

◆ M_PHI

#define M_PHI   1.61803398874989484820 /* phi / golden ratio */

Definition at line 61 of file mathematics.h.

◆ M_PHIf

#define M_PHIf   1.61803398874989484820f /* phi / golden ratio */

Definition at line 64 of file mathematics.h.

◆ M_PI

#define M_PI   3.14159265358979323846 /* pi */
Examples
encode_audio.c, filter_audio.c, mux.c, and resample_audio.c.

Definition at line 67 of file mathematics.h.

◆ M_PIf

#define M_PIf   3.14159265358979323846f /* pi */

Definition at line 70 of file mathematics.h.

◆ M_PI_2

#define M_PI_2   1.57079632679489661923 /* pi/2 */

Definition at line 73 of file mathematics.h.

◆ M_PI_2f

#define M_PI_2f   1.57079632679489661923f /* pi/2 */

Definition at line 76 of file mathematics.h.

◆ M_PI_4

#define M_PI_4   0.78539816339744830962 /* pi/4 */

Definition at line 79 of file mathematics.h.

◆ M_PI_4f

#define M_PI_4f   0.78539816339744830962f /* pi/4 */

Definition at line 82 of file mathematics.h.

◆ M_1_PI

#define M_1_PI   0.31830988618379067154 /* 1/pi */

Definition at line 85 of file mathematics.h.

◆ M_1_PIf

#define M_1_PIf   0.31830988618379067154f /* 1/pi */

Definition at line 88 of file mathematics.h.

◆ M_2_PI

#define M_2_PI   0.63661977236758134308 /* 2/pi */

Definition at line 91 of file mathematics.h.

◆ M_2_PIf

#define M_2_PIf   0.63661977236758134308f /* 2/pi */

Definition at line 94 of file mathematics.h.

◆ M_2_SQRTPI

#define M_2_SQRTPI   1.12837916709551257390 /* 2/sqrt(pi) */

Definition at line 97 of file mathematics.h.

◆ M_2_SQRTPIf

#define M_2_SQRTPIf   1.12837916709551257390f /* 2/sqrt(pi) */

Definition at line 100 of file mathematics.h.

◆ M_SQRT1_2

#define M_SQRT1_2   0.70710678118654752440 /* 1/sqrt(2) */

Definition at line 103 of file mathematics.h.

◆ M_SQRT1_2f

#define M_SQRT1_2f   0.70710678118654752440f /* 1/sqrt(2) */

Definition at line 106 of file mathematics.h.

◆ M_SQRT2

#define M_SQRT2   1.41421356237309504880 /* sqrt(2) */

Definition at line 109 of file mathematics.h.

◆ M_SQRT2f

#define M_SQRT2f   1.41421356237309504880f /* sqrt(2) */

Definition at line 112 of file mathematics.h.

◆ NAN

#define NAN   av_int2float(0x7fc00000)

Definition at line 115 of file mathematics.h.

◆ INFINITY

#define INFINITY   av_int2float(0x7f800000)

Definition at line 118 of file mathematics.h.