我对golang和encoding.com都很陌生,我正在尝试使用the encoding.com API wrapper对一个简单的视频文件进行转码,但是我对使用的格式感到困惑。
在查看测试时,我可以看到如何调用AddMedia
函数(https://github.com/nytimes/encoding-wrapper/blob/master/encodingcom/media_test.go#L9-L39),但是不幸的是,它对我不起作用。
package main
import ("github.com/NYTimes/encoding-wrapper/encodingcom")
func main() {
client, err := encodingcom.NewClient("https://manage.encoding.com", "123", "key")
format := encodingcom.Format{
Output: []string{"https://key:secret@bucket.s3.amazonaws.com/aladin.ogg"},
VideoCodec: "libtheora",
AudioCodec: "libvorbis",
Bitrate: "400k",
AudioBitrate: "64k",
}
addMediaResponse, err := client.AddMedia([]string{"https://samples.mplayerhq.hu/h264/Aladin.mpg"},
[]encodingcom.Format{format}, "us-east-1")
}
}
错误“引发”是
APIError.Errors.Errors0: Output format 'https://key:secret@bucket.s3.amazonaws.com/aladin.aac' is not allowed! (format #0)
APIError.Message:
我真的不明白,“格式”中的Output
元素似乎放错了位置,我在读测试时是否错了?使用API构建器,format参数应该只接收格式,例如“ ogg”,并且S3有一个“目标”参数。它也没有指定URL是否必须使用urlencoded,但是说实话我不这么认为。静止键和机密可以包含例如char'/'
更有经验的地鼠吗?