summaryrefslogtreecommitdiff
path: root/rhimport/converter.go
diff options
context:
space:
mode:
Diffstat (limited to 'rhimport/converter.go')
-rw-r--r--rhimport/converter.go30
1 files changed, 16 insertions, 14 deletions
diff --git a/rhimport/converter.go b/rhimport/converter.go
index f842ef3..0546b97 100644
--- a/rhimport/converter.go
+++ b/rhimport/converter.go
@@ -38,7 +38,7 @@ import (
type FetchConverter interface {
io.WriteCloser
- GetResult() (result string, err error, loudnessCorr float64)
+ GetResult(ctx *Context, res *Result) (result string, err error)
}
type FetchConverterResult struct {
@@ -85,8 +85,8 @@ func (c *NullFetchConverter) Close() (err error) {
return c.file.Close()
}
-func (c *NullFetchConverter) GetResult() (result string, err error, loudnessCorr float64) {
- return "", nil, 0.0
+func (c *NullFetchConverter) GetResult(ctx *Context, res *Result) (result string, err error) {
+ return "", nil
}
//
@@ -131,12 +131,13 @@ func (ff *FFMpegFetchConverter) Close() (err error) {
return ff.pipe.Close()
}
-func (ff *FFMpegFetchConverter) GetResult() (result string, err error, loudnessCorr float64) {
+func (ff *FFMpegFetchConverter) GetResult(ctx *Context, res *Result) (result string, err error) {
if ff.result != nil {
r := <-ff.result
- return r.output, r.err, r.loudnessCorr
+ ctx.LoudnessCorr = r.loudnessCorr
+ return r.output, r.err
}
- return "", nil, 0.0
+ return "", nil
}
//
@@ -198,12 +199,13 @@ func (bs *BS1770FetchConverter) Close() (err error) {
return errPipe
}
-func (bs *BS1770FetchConverter) GetResult() (result string, err error, loudnessCorr float64) {
+func (bs *BS1770FetchConverter) GetResult(ctx *Context, res *Result) (result string, err error) {
if bs.result != nil {
r := <-bs.result
- return r.output, r.err, r.loudnessCorr
+ ctx.LoudnessCorr = r.loudnessCorr
+ return r.output, r.err
}
- return "", nil, 0.0
+ return "", nil
}
//
@@ -281,7 +283,7 @@ func (ff *FFMpegBS1770FetchConverter) Close() (err error) {
return ff.pipe.Close()
}
-func (ff *FFMpegBS1770FetchConverter) GetResult() (result string, err error, loudnessCorr float64) {
+func (ff *FFMpegBS1770FetchConverter) GetResult(ctx *Context, res *Result) (result string, err error) {
var rff, rbs FetchConverterResult
if ff.resultFF != nil {
rff = <-ff.resultFF
@@ -290,11 +292,11 @@ func (ff *FFMpegBS1770FetchConverter) GetResult() (result string, err error, lou
rbs = <-ff.resultBS
}
if rff.err != nil {
- return rff.output, fmt.Errorf("ffmpeg: %v", rff.err), 0.0
+ return rff.output, fmt.Errorf("ffmpeg: %v", rff.err)
}
if rbs.err != nil {
- return rbs.output, fmt.Errorf("bs1770gain: %v", rbs.err), 0.0
+ return rbs.output, fmt.Errorf("bs1770gain: %v", rbs.err)
}
-
- return "", nil, rbs.loudnessCorr
+ ctx.LoudnessCorr = rbs.loudnessCorr
+ return "", nil
}