From 6e2454f6ccd8209491b180b61632299cc30d5b96 Mon Sep 17 00:00:00 2001 From: Deluan Date: Mon, 3 Feb 2020 23:04:58 -0500 Subject: [PATCH] refactor: add -i to ffmpeg ProbeCommand. make it more consistent with the DownsampleCommand --- conf/configuration.go | 2 +- scanner/metadata_ffmpeg.go | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/conf/configuration.go b/conf/configuration.go index 8830218df9a..f53a2f6f0e8 100644 --- a/conf/configuration.go +++ b/conf/configuration.go @@ -25,7 +25,7 @@ type nd struct { EnableDownsampling bool `default:"false"` MaxBitRate int `default:"0"` DownsampleCommand string `default:"ffmpeg -i %s -map 0:0 -b:a %bk -v 0 -f mp3 -"` - ProbeCommand string `default:"ffmpeg %s -f ffmetadata"` + ProbeCommand string `default:"ffmpeg -i %s -f ffmetadata"` ScanInterval string `default:"1m"` // DevFlags. These are used to enable/disable debugging and incomplete features diff --git a/scanner/metadata_ffmpeg.go b/scanner/metadata_ffmpeg.go index daf79aecab8..ba4b0166c35 100644 --- a/scanner/metadata_ffmpeg.go +++ b/scanner/metadata_ffmpeg.go @@ -74,7 +74,7 @@ func ExtractAllMetadata(dirPath string) (map[string]*Metadata, error) { func probe(inputs []string) (map[string]*Metadata, error) { cmdLine, args := createProbeCommand(inputs) - log.Trace("Executing command", "cmdLine", cmdLine, "args", args) + log.Trace("Executing command", "arg0", cmdLine, "args", args) cmd := exec.Command(cmdLine, args...) output, _ := cmd.CombinedOutput() mds := map[string]*Metadata{} @@ -233,10 +233,15 @@ func createProbeCommand(inputs []string) (string, []string) { split := strings.Split(cmd, " ") args := make([]string, 0) + first := true for _, s := range split { if s == "%s" { for _, inp := range inputs { - args = append(args, "-i", inp) + if !first { + args = append(args, "-i") + } + args = append(args, inp) + first = false } continue }