selene_core/media_container/
sample_format.rs1use serde::{Deserialize, Serialize};
2use symphonia::core::audio;
3
4#[derive(Debug, PartialEq, PartialOrd, Clone, Serialize, Deserialize, Copy)]
5pub enum SampleFormat {
6 U8,
7 U16,
8 U24,
9 U32,
10 S8,
11 S16,
12 S24,
13 S32,
14 F32,
15 F64,
16}
17
18impl From<audio::sample::SampleFormat> for SampleFormat {
19 fn from(value: audio::sample::SampleFormat) -> Self {
20 match value {
21 audio::sample::SampleFormat::U8 => Self::U8,
22 audio::sample::SampleFormat::U16 => Self::U16,
23 audio::sample::SampleFormat::U24 => Self::U24,
24 audio::sample::SampleFormat::U32 => Self::U32,
25 audio::sample::SampleFormat::S8 => Self::S8,
26 audio::sample::SampleFormat::S16 => Self::S16,
27 audio::sample::SampleFormat::S24 => Self::S24,
28 audio::sample::SampleFormat::S32 => Self::S32,
29 audio::sample::SampleFormat::F32 => Self::F32,
30 audio::sample::SampleFormat::F64 => Self::F64,
31 }
32 }
33}