aboutsummaryrefslogtreecommitdiff
path: root/transcoder
diff options
context:
space:
mode:
Diffstat (limited to 'transcoder')
-rw-r--r--transcoder/src/fragment.rs9
1 files changed, 5 insertions, 4 deletions
diff --git a/transcoder/src/fragment.rs b/transcoder/src/fragment.rs
index 3be7d39..7c5cadd 100644
--- a/transcoder/src/fragment.rs
+++ b/transcoder/src/fragment.rs
@@ -38,9 +38,9 @@ pub async fn transcode(
.unwrap_or("ffmpeg %a".to_owned());
let filter = match kind {
- TrackKind::Video => format!("-vf scale={}:-1", format.width.unwrap()),
- TrackKind::Audio => String::new(),
- TrackKind::Subtitle => String::new(),
+ TrackKind::Video => "-vf scale=%w:%h",
+ TrackKind::Audio => "",
+ TrackKind::Subtitle => "",
};
let typechar = match kind {
TrackKind::Video => "v",
@@ -61,8 +61,9 @@ pub async fn transcode(
.replace("%a", "-hide_banner %i %f %e %o")
.replace("%i", "-f matroska -i pipe:0 -copyts")
.replace("%o", "-f matroska pipe:1")
- .replace("%w", &format.width.unwrap_or_default().to_string())
.replace("%f", &filter)
+ .replace("%w", &format.width.unwrap_or_default().to_string())
+ .replace("%h", &format.height.unwrap_or_default().to_string())
.replace("%e", "-c:%t %c -b:%t %r")
.replace("%t", typechar)
.replace("%c", fallback_encoder)