This commit is contained in:
2024-03-25 10:32:03 +00:00
parent 529e3b6234
commit 9a086d80c1
22 changed files with 615 additions and 448 deletions

View File

@ -1,5 +1,5 @@
use crate::fraction::Fraction;
use std::fmt::{Display, Formatter};
use serde::{Deserialize, Serialize};
use uuid::Uuid;
@ -71,7 +71,7 @@ impl Display for VideoVariant {
pub struct AudioVariant {
/// Unique ID of this variant
pub id: Uuid,
/// Source video stream to use for this variant
pub src_index: usize,
@ -89,6 +89,9 @@ pub struct AudioVariant {
/// Sample rate
pub sample_rate: usize,
/// Sample format as ffmpeg sample format string
pub sample_fmt: String,
}
impl Display for AudioVariant {
@ -102,3 +105,14 @@ impl Display for AudioVariant {
)
}
}
impl VariantStream {
pub fn src_index(&self) -> usize {
match self {
VariantStream::Video(v) => v.src_index,
VariantStream::Audio(v) => v.src_index,
VariantStream::CopyVideo(v) => v.clone(),
VariantStream::CopyAudio(v) => v.clone(),
}
}
}