summaryrefslogtreecommitdiff
path: root/rhimport/converter.go
diff options
context:
space:
mode:
authorChristian Pointner <equinox@helsinki.at>2016-07-07 14:44:03 (GMT)
committerChristian Pointner <equinox@helsinki.at>2016-07-07 14:44:03 (GMT)
commitd4a48a491f9ee9ece54f7a3e38ef4d76f8543425 (patch)
tree0894544e7af2b1bed9491b602629dd95e671c2b2 /rhimport/converter.go
parent3792e6dd768bc9d71a498a83cde47cb379ad37e9 (diff)
archiv importer add metadata
Diffstat (limited to 'rhimport/converter.go')
-rw-r--r--rhimport/converter.go9
1 files changed, 8 insertions, 1 deletions
diff --git a/rhimport/converter.go b/rhimport/converter.go
index a451e24..f48a041 100644
--- a/rhimport/converter.go
+++ b/rhimport/converter.go
@@ -26,6 +26,7 @@ package rhimport
import (
"errors"
+ "fmt"
"io"
"os"
"os/exec"
@@ -96,7 +97,13 @@ func NewFFMpegFetchConverter(filename string, metadata map[string]string) (ff *F
ext := filepath.Ext(filename)
filenameFlac = strings.TrimSuffix(filename, ext) + ".flac"
rhl.Printf("ffmpeg-converter: starting ffmpeg for file '%s' (had extension: '%s')", filenameFlac, ext)
- ff.cmd = exec.Command("ffmpeg", "-loglevel", "warning", "-i", "-", "-map_metadata", "0", "-f", "flac", filenameFlac)
+ ff.cmd = exec.Command("ffmpeg", "-loglevel", "warning", "-i", "-", "-map_metadata", "0")
+ if metadata != nil {
+ for key, value := range metadata {
+ ff.cmd.Args = append(ff.cmd.Args, "-metadata", fmt.Sprintf("%s=%q", key, value))
+ }
+ }
+ ff.cmd.Args = append(ff.cmd.Args, "-f", "flac", filenameFlac)
if ff.pipe, err = ff.cmd.StdinPipe(); err != nil {
return nil, "", err
}