avconv: add Options.SupportedCodecTypes

This commit is contained in:
nareix 2016-07-12 13:29:00 +08:00
parent 12b407d5e4
commit ae360fea7d

View File

@ -33,6 +33,7 @@ type Option struct {
} }
type Options struct { type Options struct {
OutputCodecTypes []av.CodecType
} }
type Demuxer struct { type Demuxer struct {
@ -40,7 +41,6 @@ type Demuxer struct {
streams []av.CodecData streams []av.CodecData
Options Options
Demuxer av.Demuxer Demuxer av.Demuxer
Muxer av.Muxer
} }
func (self *Demuxer) Close() (err error) { func (self *Demuxer) Close() (err error) {
@ -77,7 +77,7 @@ func (self *Demuxer) prepare() (err error) {
} }
*/ */
supports := self.Muxer.SupportedCodecTypes() supports := self.Options.OutputCodecTypes
transopts := transcode.Options{} transopts := transcode.Options{}
transopts.FindAudioDecoderEncoder = func(codec av.AudioCodecData, i int) (ok bool, err error, dec av.AudioDecoder, enc av.AudioEncoder) { transopts.FindAudioDecoderEncoder = func(codec av.AudioCodecData, i int) (ok bool, err error, dec av.AudioDecoder, enc av.AudioEncoder) {
@ -188,10 +188,10 @@ func ConvertCmdline(args []string) (err error) {
} }
defer muxer.Close() defer muxer.Close()
options.OutputCodecTypes = muxer.SupportedCodecTypes()
convdemux := &Demuxer{ convdemux := &Demuxer{
Options: options, Options: options,
Demuxer: demuxer, Demuxer: demuxer,
Muxer: muxer,
} }
defer convdemux.Close() defer convdemux.Close()