From e29f2594fa70a38115b5c2b379f16a82e0b5f76b Mon Sep 17 00:00:00 2001 From: Alexey Khit Date: Tue, 15 Nov 2022 16:16:22 +0300 Subject: [PATCH] Fix multiple transcoding when track not exists --- cmd/ffmpeg/ffmpeg.go | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/cmd/ffmpeg/ffmpeg.go b/cmd/ffmpeg/ffmpeg.go index 6f3d8283..b9798cc8 100644 --- a/cmd/ffmpeg/ffmpeg.go +++ b/cmd/ffmpeg/ffmpeg.go @@ -146,7 +146,7 @@ func Init() { s += " -vn" case 1: if len(query["audio"]) > 1 { - s += " -map 0:v:0" + s += " -map 0:v:0?" } for _, video := range query["video"] { if video == "copy" { @@ -158,9 +158,9 @@ func Init() { default: for i, video := range query["video"] { if video == "copy" { - s += " -map 0:v:0 -c:v:" + strconv.Itoa(i) + " copy" + s += " -map 0:v:0? -c:v:" + strconv.Itoa(i) + " copy" } else { - s += " -map 0:v:0 " + strings.ReplaceAll(tpl[video], ":v ", ":v:"+strconv.Itoa(i)+" ") + s += " -map 0:v:0? " + strings.ReplaceAll(tpl[video], ":v ", ":v:"+strconv.Itoa(i)+" ") } } } @@ -170,7 +170,7 @@ func Init() { s += " -an" case 1: if len(query["video"]) > 1 { - s += " -map 0:a:0" + s += " -map 0:a:0?" } for _, audio := range query["audio"] { if audio == "copy" { @@ -182,9 +182,9 @@ func Init() { default: for i, audio := range query["audio"] { if audio == "copy" { - s += " -map 0:a:0 -c:a:" + strconv.Itoa(i) + " copy" + s += " -map 0:a:0? -c:a:" + strconv.Itoa(i) + " copy" } else { - s += " -map 0:a:0 " + strings.ReplaceAll(tpl[audio], ":a ", ":a:"+strconv.Itoa(i)+" ") + s += " -map 0:a:0? " + strings.ReplaceAll(tpl[audio], ":a ", ":a:"+strconv.Itoa(i)+" ") } } }