playa_ffmpeg/codec/
discard.rs1use crate::ffi::{AVDiscard::*, *};
2
3#[derive(Eq, PartialEq, Clone, Copy, Debug)]
4pub enum Discard {
5 None,
6 Default,
7 NonReference,
8 Bidirectional,
9 NonIntra,
10 NonKey,
11 All,
12}
13
14impl From<AVDiscard> for Discard {
15 fn from(value: AVDiscard) -> Self {
16 match value {
17 AVDISCARD_NONE => Discard::None,
18 AVDISCARD_DEFAULT => Discard::Default,
19 AVDISCARD_NONREF => Discard::NonReference,
20 AVDISCARD_BIDIR => Discard::Bidirectional,
21 AVDISCARD_NONINTRA => Discard::NonIntra,
22 AVDISCARD_NONKEY => Discard::NonKey,
23 AVDISCARD_ALL => Discard::All,
24 }
25 }
26}
27
28impl From<Discard> for AVDiscard {
29 fn from(value: Discard) -> AVDiscard {
30 match value {
31 Discard::None => AVDISCARD_NONE,
32 Discard::Default => AVDISCARD_DEFAULT,
33 Discard::NonReference => AVDISCARD_NONREF,
34 Discard::Bidirectional => AVDISCARD_BIDIR,
35 Discard::NonIntra => AVDISCARD_NONINTRA,
36 Discard::NonKey => AVDISCARD_NONKEY,
37 Discard::All => AVDISCARD_ALL,
38 }
39 }
40}