ffmpeg_the_third/software/resampling/
engine.rs1use crate::ffi::*;
2#[cfg(feature = "serialize")]
3use serde::{Deserialize, Serialize};
4
5#[derive(Eq, PartialEq, Copy, Clone, Debug)]
6#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))]
7pub enum Engine {
8 Software,
9 SoundExchange,
10}
11
12impl From<SwrEngine> for Engine {
13 fn from(value: SwrEngine) -> Engine {
14 use SwrEngine as AV;
15
16 match value {
17 AV::SWR => Engine::Software,
18 AV::SOXR => Engine::SoundExchange,
19
20 AV::NB => unreachable!(),
21
22 _ => unimplemented!(),
23 }
24 }
25}
26
27impl From<Engine> for SwrEngine {
28 fn from(value: Engine) -> SwrEngine {
29 use SwrEngine as AV;
30
31 match value {
32 Engine::Software => AV::SWR,
33 Engine::SoundExchange => AV::SOXR,
34 }
35 }
36}