Mercurial > libavcodec.hg
comparison rational.c @ 2127:2c2f738772b7 libavcodec
more comments
author | michael |
---|---|
date | Thu, 15 Jul 2004 14:06:39 +0000 |
parents | c910ff78ef80 |
children |
comparison
equal
deleted
inserted
replaced
2126:181cb6785f6b | 2127:2c2f738772b7 |
---|---|
29 | 29 |
30 #include "common.h" | 30 #include "common.h" |
31 #include "avcodec.h" | 31 #include "avcodec.h" |
32 #include "rational.h" | 32 #include "rational.h" |
33 | 33 |
34 /** | |
35 * returns b*c. | |
36 */ | |
34 AVRational av_mul_q(AVRational b, AVRational c){ | 37 AVRational av_mul_q(AVRational b, AVRational c){ |
35 av_reduce(&b.num, &b.den, b.num * (int64_t)c.num, b.den * (int64_t)c.den, INT_MAX); | 38 av_reduce(&b.num, &b.den, b.num * (int64_t)c.num, b.den * (int64_t)c.den, INT_MAX); |
36 return b; | 39 return b; |
37 } | 40 } |
38 | 41 |
42 /** | |
43 * returns b/c. | |
44 */ | |
39 AVRational av_div_q(AVRational b, AVRational c){ | 45 AVRational av_div_q(AVRational b, AVRational c){ |
40 av_reduce(&b.num, &b.den, b.num * (int64_t)c.den, b.den * (int64_t)c.num, INT_MAX); | 46 av_reduce(&b.num, &b.den, b.num * (int64_t)c.den, b.den * (int64_t)c.num, INT_MAX); |
41 return b; | 47 return b; |
42 } | 48 } |
43 | 49 |
50 /** | |
51 * returns b+c. | |
52 */ | |
44 AVRational av_add_q(AVRational b, AVRational c){ | 53 AVRational av_add_q(AVRational b, AVRational c){ |
45 av_reduce(&b.num, &b.den, b.num * (int64_t)c.den + c.num * (int64_t)b.den, b.den * (int64_t)c.den, INT_MAX); | 54 av_reduce(&b.num, &b.den, b.num * (int64_t)c.den + c.num * (int64_t)b.den, b.den * (int64_t)c.den, INT_MAX); |
46 return b; | 55 return b; |
47 } | 56 } |
48 | 57 |
58 /** | |
59 * returns b-c. | |
60 */ | |
49 AVRational av_sub_q(AVRational b, AVRational c){ | 61 AVRational av_sub_q(AVRational b, AVRational c){ |
50 av_reduce(&b.num, &b.den, b.num * (int64_t)c.den - c.num * (int64_t)b.den, b.den * (int64_t)c.den, INT_MAX); | 62 av_reduce(&b.num, &b.den, b.num * (int64_t)c.den - c.num * (int64_t)b.den, b.den * (int64_t)c.den, INT_MAX); |
51 return b; | 63 return b; |
52 } | 64 } |
53 | 65 |