FFmpeg  1.2.4
Files | Data Structures | Macros | Typedefs | Enumerations | Functions
Maths
Common utility functions | Other

Files

file  avutil.h
 external API header
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  version.h
 Libavcodec version macros.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  avutil.h
 external API header
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  version.h
 Libavcodec version macros.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.
file  attributes.h
 Macro definitions for various function/variable attributes.
file  rational.h
 rational numbers
file  attributes.h
 Macro definitions for various function/variable attributes.

Data Structures

struct  AVRational
 rational number numerator/denominator More...

Macros

#define ff_ctz   ff_ctz_c

Typedefs

typedef struct AVRational AVRational
 rational number numerator/denominator
typedef struct AVRational AVRational
 rational number numerator/denominator
typedef struct AVRational AVRational
 rational number numerator/denominator

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,
  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
}
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,
  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
}
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,
  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
}

Functions

int64_t av_const av_gcd (int64_t a, int64_t b)
 Return the greatest common divisor of a and b.
int64_t av_rescale (int64_t a, int64_t b, int64_t c) av_const
 Rescale a 64-bit integer with rounding to nearest.
int64_t av_rescale_rnd (int64_t a, int64_t b, int64_t c, enum AVRounding) av_const
 Rescale a 64-bit integer with specified rounding.
int64_t av_rescale_q (int64_t a, AVRational bq, AVRational cq) av_const
 Rescale a 64-bit integer by 2 rational numbers.
int64_t av_rescale_q_rnd (int64_t a, AVRational bq, AVRational cq, enum AVRounding) av_const
 Rescale a 64-bit integer by 2 rational numbers with specified rounding.
int av_compare_ts (int64_t ts_a, AVRational tb_a, int64_t ts_b, AVRational tb_b)
 Compare 2 timestamps each in its own timebases.
int64_t av_compare_mod (uint64_t a, uint64_t b, uint64_t mod)
 Compare 2 integers modulo mod.
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.
static int av_cmp_q (AVRational a, AVRational b)
 Compare two rationals.
static double av_q2d (AVRational a)
 Convert rational to double.
int av_reduce (int *dst_num, int *dst_den, int64_t num, int64_t den, int64_t max)
 Reduce a fraction.
AVRational av_mul_q (AVRational b, AVRational c) av_const
 Multiply two rationals.
AVRational av_div_q (AVRational b, AVRational c) av_const
 Divide one rational by another.
AVRational av_add_q (AVRational b, AVRational c) av_const
 Add two rationals.
AVRational av_sub_q (AVRational b, AVRational c) av_const
 Subtract one rational from another.
static av_always_inline AVRational av_inv_q (AVRational q)
 Invert a rational.
AVRational av_d2q (double d, int max) av_const
 Convert a double precision floating point number to a rational.
int av_nearer_q (AVRational q, AVRational q1, AVRational q2)
int av_find_nearest_q_idx (AVRational q, const AVRational *q_list)
 Find the nearest value in q_list to q.
static av_always_inline
av_const int 
ff_ctz_c (int v)
int av_ctz (int v)
 Trailing zero bit count.

Detailed Description

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Reinterpret a 32-bit integer as a float.

Reinterpret a float as a 32-bit integer.

Reinterpret a 64-bit integer as a double.

Reinterpret a double as a 64-bit integer.

Disable warnings about deprecated features This is useful for sections of code kept for backward compatibility and scheduled for removal.

Mark a variable as used and prevent the compiler from optimizing it away. This is useful for variables accessed only from inline assembler without the compiler being aware.

Macro Definition Documentation

#define ff_ctz   ff_ctz_c

Definition at line 108 of file intmath.h.

Referenced by av_ctz().

Typedef Documentation

typedef struct AVRational AVRational

rational number numerator/denominator

Examples:
doc/examples/decoding_encoding.c.
typedef struct AVRational AVRational

rational number numerator/denominator

typedef struct AVRational AVRational

rational number numerator/denominator

Enumeration Type Documentation

enum AVRounding
Enumerator:
AV_ROUND_ZERO 

Round toward zero.

AV_ROUND_INF 

Round away from zero.

AV_ROUND_DOWN 

Round toward -infinity.

AV_ROUND_UP 

Round toward +infinity.

AV_ROUND_NEAR_INF 

Round to nearest and halfway cases away from zero.

AV_ROUND_PASS_MINMAX 

Flag to pass INT64_MIN/MAX through instead of rescaling, this avoids special cases for AV_NOPTS_VALUE.

AV_ROUND_ZERO 

Round toward zero.

AV_ROUND_INF 

Round away from zero.

AV_ROUND_DOWN 

Round toward -infinity.

AV_ROUND_UP 

Round toward +infinity.

AV_ROUND_NEAR_INF 

Round to nearest and halfway cases away from zero.

AV_ROUND_PASS_MINMAX 

Flag to pass INT64_MIN/MAX through instead of rescaling, this avoids special cases for AV_NOPTS_VALUE.

AV_ROUND_ZERO 

Round toward zero.

AV_ROUND_INF 

Round away from zero.

AV_ROUND_DOWN 

Round toward -infinity.

AV_ROUND_UP 

Round toward +infinity.

AV_ROUND_NEAR_INF 

Round to nearest and halfway cases away from zero.

AV_ROUND_PASS_MINMAX 

Flag to pass INT64_MIN/MAX through instead of rescaling, this avoids special cases for AV_NOPTS_VALUE.

Definition at line 67 of file mathematics.h.

enum AVRounding
Enumerator:
AV_ROUND_ZERO 

Round toward zero.

AV_ROUND_INF 

Round away from zero.

AV_ROUND_DOWN 

Round toward -infinity.

AV_ROUND_UP 

Round toward +infinity.

AV_ROUND_NEAR_INF 

Round to nearest and halfway cases away from zero.

AV_ROUND_PASS_MINMAX 

Flag to pass INT64_MIN/MAX through instead of rescaling, this avoids special cases for AV_NOPTS_VALUE.

AV_ROUND_ZERO 

Round toward zero.

AV_ROUND_INF 

Round away from zero.

AV_ROUND_DOWN 

Round toward -infinity.

AV_ROUND_UP 

Round toward +infinity.

AV_ROUND_NEAR_INF 

Round to nearest and halfway cases away from zero.

AV_ROUND_PASS_MINMAX 

Flag to pass INT64_MIN/MAX through instead of rescaling, this avoids special cases for AV_NOPTS_VALUE.

AV_ROUND_ZERO 

Round toward zero.

AV_ROUND_INF 

Round away from zero.

AV_ROUND_DOWN 

Round toward -infinity.

AV_ROUND_UP 

Round toward +infinity.

AV_ROUND_NEAR_INF 

Round to nearest and halfway cases away from zero.

AV_ROUND_PASS_MINMAX 

Flag to pass INT64_MIN/MAX through instead of rescaling, this avoids special cases for AV_NOPTS_VALUE.

Definition at line 67 of file mathematics.h.

enum AVRounding
Enumerator:
AV_ROUND_ZERO 

Round toward zero.

AV_ROUND_INF 

Round away from zero.

AV_ROUND_DOWN 

Round toward -infinity.

AV_ROUND_UP 

Round toward +infinity.

AV_ROUND_NEAR_INF 

Round to nearest and halfway cases away from zero.

AV_ROUND_PASS_MINMAX 

Flag to pass INT64_MIN/MAX through instead of rescaling, this avoids special cases for AV_NOPTS_VALUE.

AV_ROUND_ZERO 

Round toward zero.

AV_ROUND_INF 

Round away from zero.

AV_ROUND_DOWN 

Round toward -infinity.

AV_ROUND_UP 

Round toward +infinity.

AV_ROUND_NEAR_INF 

Round to nearest and halfway cases away from zero.

AV_ROUND_PASS_MINMAX 

Flag to pass INT64_MIN/MAX through instead of rescaling, this avoids special cases for AV_NOPTS_VALUE.

AV_ROUND_ZERO 

Round toward zero.

AV_ROUND_INF 

Round away from zero.

AV_ROUND_DOWN 

Round toward -infinity.

AV_ROUND_UP 

Round toward +infinity.

AV_ROUND_NEAR_INF 

Round to nearest and halfway cases away from zero.

AV_ROUND_PASS_MINMAX 

Flag to pass INT64_MIN/MAX through instead of rescaling, this avoids special cases for AV_NOPTS_VALUE.

Definition at line 67 of file mathematics.h.

Function Documentation

AVRational av_add_q ( AVRational  b,
AVRational  c 
) const

Add two rationals.

Parameters
bfirst rational
csecond rational
Returns
b+c

Definition at line 93 of file rational.c.

Referenced by av_sub_q().

static int av_cmp_q ( AVRational  a,
AVRational  b 
)
inlinestatic

Compare two rationals.

Parameters
afirst rational
bsecond rational
Returns
0 if a==b, 1 if a>b, -1 if a<b, and INT_MIN if one of the values is of the form 0/0

Definition at line 55 of file rational.h.

Referenced by av_nearer_q(), decode_slice_header(), dump_stream_format(), ff_h263_aspect_to_info(), ff_mxf_get_samples_per_frame(), filter_frame(), find_frame_rate_index(), init_muxer(), mpeg_decode_postinit(), sdl_write_header(), and video_thread().

int64_t av_compare_mod ( uint64_t  a,
uint64_t  b,
uint64_t  mod 
)

Compare 2 integers modulo mod.

That is we compare integers a and b for which only the least significant log2(mod) bits are known.

Parameters
modmust be a power of 2
Returns
a negative value if a is smaller than b a positive value if a is greater than b 0 if a equals b

Definition at line 145 of file mathematics.c.

Referenced by av_read_frame().

int av_compare_ts ( int64_t  ts_a,
AVRational  tb_a,
int64_t  ts_b,
AVRational  tb_b 
)

Compare 2 timestamps each in its own timebases.

The result of the function is undefined if one of the timestamps is outside the int64_t range when represented in the others timebase.

Returns
-1 if ts_a is before ts_b, 1 if ts_a is after ts_b or 0 if they represent the same position

Definition at line 135 of file mathematics.c.

Referenced by check_recording_time(), ff_gen_syncpoint_search(), ff_interleave_compare_dts(), hls_read_packet(), hls_write_packet(), ism_write_packet(), nut_write_packet(), search_hi_lo_keyframes(), seg_write_packet(), and try_filter_frame().

int av_ctz ( int  v)

Trailing zero bit count.

Parameters
vinput value. If v is 0, the result is undefined.
Returns
the number of trailing 0-bits

Definition at line 36 of file intmath.c.

Referenced by remove_wasted_bits().

AVRational av_d2q ( double  d,
int  max 
) const

Convert a double precision floating point number to a rational.

inf is expressed as {1,0} or {-1,0} depending on the sign.

Parameters
ddouble to convert
maxthe maximum allowed numerator and denominator
Returns
(AVRational) d

Definition at line 106 of file rational.c.

Referenced by av_get_q(), av_opt_get_q(), av_opt_set_defaults2(), av_parse_ratio(), config_output_props(), decode_frame(), microdvd_read_header(), mov_read_tkhd(), mov_read_trak(), mpeg_decode_postinit(), nuv_header(), read_header(), thp_read_header(), transcode_init(), var_read_float(), and write_number().

AVRational av_div_q ( AVRational  b,
AVRational  c 
) const

Divide one rational by another.

Parameters
bfirst rational
csecond rational
Returns
b/c

Definition at line 88 of file rational.c.

Referenced by avi_read_header(), build_frame_code(), config_output(), config_output_props(), config_props_output(), configure_input_video_filter(), and mpeg_decode_postinit().

int av_find_nearest_q_idx ( AVRational  q,
const AVRational q_list 
)

Find the nearest value in q_list to q.

Parameters
q_listan array of rationals terminated by {0, 0}
Returns
the index of the nearest value found in the array

Definition at line 138 of file rational.c.

Referenced by transcode_init().

int64_t av_const av_gcd ( int64_t  a,
int64_t  b 
)

Return the greatest common divisor of a and b.

If both a and b are 0 or either or both are <0 then behavior is undefined.

Definition at line 55 of file mathematics.c.

Referenced by av_gcd(), av_reduce(), avcodec_string(), avformat_find_stream_info(), decode_main_header(), dump_stream_format(), eval_expr(), ff_h263_decode_picture_header(), ff_MPV_encode_init(), find_frame_rate_index(), rtp_send_samples(), and xvid_correct_framerate().

static av_always_inline AVRational av_inv_q ( AVRational  q)
static
AVRational av_mul_q ( AVRational  b,
AVRational  c 
) const

Multiply two rationals.

Parameters
bfirst rational
csecond rational
Returns
b*c

Definition at line 80 of file rational.c.

Referenced by av_div_q(), avi_write_header(), config_input(), config_props(), find_frame_rate_index(), mpeg_decode_postinit(), mxf_compute_sample_count(), rv20_decode_picture_header(), sdl_write_header(), and update_sar().

int av_nearer_q ( AVRational  q,
AVRational  q1,
AVRational  q2 
)
Returns
1 if q1 is nearer to q than q2, -1 if q2 is nearer than q1, 0 if they have the same distance.

Definition at line 123 of file rational.c.

Referenced by av_find_nearest_q_idx(), and find_frame_rate_index().

static double av_q2d ( AVRational  a)
inlinestatic
int av_reduce ( int *  dst_num,
int *  dst_den,
int64_t  num,
int64_t  den,
int64_t  max 
)
int64_t av_rescale ( int64_t  a,
int64_t  b,
int64_t  c 
) const
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.

Parameters
in_tsInput timestamp
in_tbInput timesbase
fs_tbDuration and *last timebase
durationduration till the next call
out_tbOutput timesbase

Definition at line 152 of file mathematics.c.

Referenced by decode_audio(), and do_streamcopy().

int64_t av_rescale_q ( int64_t  a,
AVRational  bq,
AVRational  cq 
) const

Rescale a 64-bit integer by 2 rational numbers.

Examples:
doc/examples/filtering_video.c, and doc/examples/muxing.c.

Definition at line 130 of file mathematics.c.

Referenced by av_mpeg4_decode_header(), av_rescale_delta(), avcodec_decode_audio4(), avcodec_decode_subtitle2(), avformat_find_stream_info(), avformat_seek_file(), avi_read_packet(), avi_read_seek(), buffer_offset(), caca_write_header(), choose_output(), close_output_stream(), compute_chapters_end(), concat_read_packet(), copy_chapters(), decode_audio(), decode_frame(), decode_video(), display_picref(), do_audio_out(), do_streamcopy(), do_subtitle_out(), do_video_out(), dv_extract_video_info(), dv_read_header(), ff_af_queue_add(), ff_buffersink_read_samples_compat(), ff_dv_offset_reset(), ff_filter_frame_needs_framing(), ff_interleave_compare_dts(), ff_interleave_new_audio_packet(), ff_interleave_packet_per_dts(), ff_read_packet(), ff_samples_to_time_base(), ff_update_link_current_pts(), ff_write_chained(), fill_all_stream_timings(), filter_frame(), flush_encoders(), get_subtitle_pkt(), guess_ni_flag(), http_prepare_data(), init(), init_convert_timestamp(), lavfi_read_packet(), main(), microdvd_decode_frame(), mkv_write_chapters(), mov_create_chapter_track(), mov_read_seek(), mov_text_decode_frame(), mov_write_chpl_tag(), mov_write_single_packet(), mp3_parse_vbr_tags(), mpl2_decode_frame(), mxf_parse_structural_metadata(), mxf_read_seek(), ogg_buffer_data(), ogg_compare_granule(), ogg_write_packet(), output_packet(), parse_forced_key_frames(), plot_spectrum_column(), print_report(), process_input(), push_frame(), push_samples(), r3d_read_rdvo(), r3d_seek(), rawvideo_read_header(), read_from_fifo(), read_header(), reap_filters(), request_frame(), rl2_read_seek(), rtcp_send_sr(), rtp_parse_one_packet(), rtp_write_header(), rtsp_read_play(), rtsp_read_seek(), sami_decode_frame(), sbg_read_seek2(), seek_subtitle(), seg_write_packet(), send_silence(), source_request_frame(), srt_decode_frame(), sub2video_heartbeat(), sub2video_update(), tee_write_packet(), text_decode_frame(), transcode_init(), ts_str(), update_stream_timings(), video_thread(), and webvtt_decode_frame().

int64_t av_rescale_q_rnd ( int64_t  a,
AVRational  bq,
AVRational  cq,
enum  AVRounding 
) const

Rescale a 64-bit integer by 2 rational numbers with specified rounding.

Returns
rescaled value a, or if AV_ROUND_PASS_MINMAX is set and a is INT64_MIN or INT64_MAX then a is passed through unchanged.

Definition at line 122 of file mathematics.c.

Referenced by av_rescale_delta(), av_rescale_q(), ff_interleave_add_packet(), ff_interleave_packet_per_dts(), filter_frame(), parse_packet(), and rtp_write_header().

int64_t av_rescale_rnd ( int64_t  a,
int64_t  b,
int64_t  c,
enum  AVRounding 
) const

Rescale a 64-bit integer with specified rounding.

A simple a*b/c isn't possible as it can overflow.

Returns
rescaled value a, or if AV_ROUND_PASS_MINMAX is set and a is INT64_MIN or INT64_MAX then a is passed through unchanged.
Examples:
doc/examples/resampling_audio.c.

Definition at line 60 of file mathematics.c.

Referenced by av_compare_ts(), av_nearer_q(), av_rescale(), av_rescale_q_rnd(), av_rescale_rnd(), avformat_seek_file(), compute_pkt_fields(), dv_write_pack(), ff_nut_reset_ts(), ff_pcm_read_seek(), filter_frame(), gxf_compare_field_nb(), gxf_write_media_preamble(), handle_file(), hls_read_packet(), hls_read_seek(), main(), mov_write_edts_tag(), mov_write_mvhd_tag(), mov_write_tkhd_tag(), nut_write_packet(), request_frame(), rtmp_read_seek(), vpx_init(), and vqf_read_seek().

AVRational av_sub_q ( AVRational  b,
AVRational  c 
) const

Subtract one rational from another.

Parameters
bfirst rational
csecond rational
Returns
b-c

Definition at line 101 of file rational.c.

static av_always_inline av_const int ff_ctz_c ( int  v)
static

Definition at line 109 of file intmath.h.