diff --git a/src/lib.rs b/src/lib.rs index e36755a..10391b5 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -8,3 +8,4 @@ extern crate ffmpeg_sys as ffi; pub mod util; pub use util::error::Error; pub use util::dictionary::Dictionary; +pub use util::rational::Rational; diff --git a/src/util/mod.rs b/src/util/mod.rs index a4a5f89..97caa2f 100644 --- a/src/util/mod.rs +++ b/src/util/mod.rs @@ -1,5 +1,6 @@ pub mod dictionary; pub mod error; +pub mod rational; use std::ffi::CStr; use std::str::from_utf8_unchecked; diff --git a/src/util/rational.rs b/src/util/rational.rs new file mode 100644 index 0000000..143c610 --- /dev/null +++ b/src/util/rational.rs @@ -0,0 +1,14 @@ +use ffi::*; + +#[derive(Eq, PartialEq, Copy, Clone, Debug)] +pub struct Rational(pub AVRational); + +impl Rational { + pub fn numerator(&self) -> i32 { + self.0.num + } + + pub fn denominator(&self) -> i32 { + self.0.den + } +}