OLD | NEW |
1 /* | 1 /* |
2 * copyright (c) 2005 Michael Niedermayer <michaelni@gmx.at> | 2 * copyright (c) 2005 Michael Niedermayer <michaelni@gmx.at> |
3 * | 3 * |
4 * This file is part of FFmpeg. | 4 * This file is part of FFmpeg. |
5 * | 5 * |
6 * FFmpeg is free software; you can redistribute it and/or | 6 * FFmpeg is free software; you can redistribute it and/or |
7 * modify it under the terms of the GNU Lesser General Public | 7 * modify it under the terms of the GNU Lesser General Public |
8 * License as published by the Free Software Foundation; either | 8 * License as published by the Free Software Foundation; either |
9 * version 2.1 of the License, or (at your option) any later version. | 9 * version 2.1 of the License, or (at your option) any later version. |
10 * | 10 * |
(...skipping 17 matching lines...) Expand all Loading... |
28 | 28 |
29 #ifndef M_E | 29 #ifndef M_E |
30 #define M_E 2.7182818284590452354 /* e */ | 30 #define M_E 2.7182818284590452354 /* e */ |
31 #endif | 31 #endif |
32 #ifndef M_LN2 | 32 #ifndef M_LN2 |
33 #define M_LN2 0.69314718055994530942 /* log_e 2 */ | 33 #define M_LN2 0.69314718055994530942 /* log_e 2 */ |
34 #endif | 34 #endif |
35 #ifndef M_LN10 | 35 #ifndef M_LN10 |
36 #define M_LN10 2.30258509299404568402 /* log_e 10 */ | 36 #define M_LN10 2.30258509299404568402 /* log_e 10 */ |
37 #endif | 37 #endif |
| 38 #ifndef M_LOG2_10 |
| 39 #define M_LOG2_10 3.32192809488736234787 /* log_2 10 */ |
| 40 #endif |
38 #ifndef M_PI | 41 #ifndef M_PI |
39 #define M_PI 3.14159265358979323846 /* pi */ | 42 #define M_PI 3.14159265358979323846 /* pi */ |
40 #endif | 43 #endif |
41 #ifndef M_SQRT1_2 | 44 #ifndef M_SQRT1_2 |
42 #define M_SQRT1_2 0.70710678118654752440 /* 1/sqrt(2) */ | 45 #define M_SQRT1_2 0.70710678118654752440 /* 1/sqrt(2) */ |
43 #endif | 46 #endif |
44 #ifndef NAN | 47 #ifndef NAN |
45 #define NAN (0.0/0.0) | 48 #define NAN (0.0/0.0) |
46 #endif | 49 #endif |
47 #ifndef INFINITY | 50 #ifndef INFINITY |
(...skipping 25 matching lines...) Expand all Loading... |
73 * Rescales a 64-bit integer with specified rounding. | 76 * Rescales a 64-bit integer with specified rounding. |
74 * A simple a*b/c isn't possible as it can overflow. | 77 * A simple a*b/c isn't possible as it can overflow. |
75 */ | 78 */ |
76 int64_t av_rescale_rnd(int64_t a, int64_t b, int64_t c, enum AVRounding) av_cons
t; | 79 int64_t av_rescale_rnd(int64_t a, int64_t b, int64_t c, enum AVRounding) av_cons
t; |
77 | 80 |
78 /** | 81 /** |
79 * Rescales a 64-bit integer by 2 rational numbers. | 82 * Rescales a 64-bit integer by 2 rational numbers. |
80 */ | 83 */ |
81 int64_t av_rescale_q(int64_t a, AVRational bq, AVRational cq) av_const; | 84 int64_t av_rescale_q(int64_t a, AVRational bq, AVRational cq) av_const; |
82 | 85 |
| 86 /** |
| 87 * Compares 2 timestamps each in its own timebases. |
| 88 * The result of the function is undefined if one of the timestamps |
| 89 * is outside the int64_t range when represented in the others timebase. |
| 90 * @returns -1 if ts_a is before ts_b, 1 if ts_a is after ts_b or 0 if they repr
esent the same position |
| 91 */ |
| 92 int av_compare_ts(int64_t ts_a, AVRational tb_a, int64_t ts_b, AVRational tb_b); |
| 93 |
| 94 |
83 #endif /* AVUTIL_MATHEMATICS_H */ | 95 #endif /* AVUTIL_MATHEMATICS_H */ |
OLD | NEW |