revid: handling csv output var in revid's update function

This commit is contained in:
Saxon 2019-03-05 10:50:31 +10:30
parent 300b55548b
commit 003808858b
1 changed files with 19 additions and 17 deletions

View File

@ -387,23 +387,25 @@ func (r *Revid) Update(vars map[string]string) error {
for key, value := range vars {
switch key {
case "Output":
r.config.Outputs = make([]uint8, 1)
// FIXME(kortschak): There can be only one!
// How do we specify outputs after the first?
//
// Maybe we shouldn't be doing this!
switch value {
case "File":
r.config.Outputs[0] = File
case "Http":
r.config.Outputs[0] = Http
case "Rtmp":
r.config.Outputs[0] = Rtmp
case "FfmpegRtmp":
r.config.Outputs[0] = FfmpegRtmp
default:
r.config.Logger.Log(logger.Warning, pkg+"invalid Output1 param", "value", value)
continue
outputs := strings.Split(value, ",")
r.config.Outputs = make([]uint8, len(outputs))
for i, output := range outputs {
switch output {
case "File":
r.config.Outputs[i] = File
case "Http":
r.config.Outputs[i] = Http
case "Rtmp":
r.config.Outputs[i] = Rtmp
case "FfmpegRtmp":
r.config.Outputs[i] = FfmpegRtmp
case "Rtp":
r.config.Outputs[i] = Rtp
default:
r.config.Logger.Log(logger.Warning, pkg+"invalid output param", "value", value)
continue
}
}
case "Packetization":