From 5d45f1ec271fbd86dfa4264e784a962054947fa5 Mon Sep 17 00:00:00 2001 From: "Baik S. Hyun" Date: Thu, 13 Jan 2022 19:55:49 +0900 Subject: [PATCH] add encoding codec - alaw,mulaw,g729 --- cgo/ffmpeg/audio.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/cgo/ffmpeg/audio.go b/cgo/ffmpeg/audio.go index 296431a..57ea0a0 100644 --- a/cgo/ffmpeg/audio.go +++ b/cgo/ffmpeg/audio.go @@ -587,7 +587,7 @@ func (self *AudioDecoder) Decode(pkt []byte) (gotframe bool, frame av.AudioFrame if ff.codecCtx == nil || &pkt[0] == nil { err = fmt.Errorf("ffmpeg: Decode ff.codecCtx NULL or pkg NULL") - return + return } cerr := C.decode(ff.codecCtx, ff.frame, (*C.uchar)(unsafe.Pointer(&pkt[0])), C.int(len(pkt)), &cgotframe) @@ -620,6 +620,12 @@ func NewAudioEncoderByCodecType(typ av.CodecType) (enc *AudioEncoder, err error) switch typ { case av.AAC: id = C.AV_CODEC_ID_AAC + case av.PCM_ALAW: + id = C.AV_CODEC_ID_PCM_ALAW + case av.PCM_MULAW: + id = C.AV_CODEC_ID_PCM_MULAW + case av.G729: + id = C.AV_CODEC_ID_G729 default: err = fmt.Errorf("ffmpeg: cannot find encoder codecType=%d", typ)