diff --git a/global/codec.go b/global/codec.go index 6a5f088..0c155a4 100644 --- a/global/codec.go +++ b/global/codec.go @@ -33,9 +33,15 @@ func EncoderSilk(data []byte) ([]byte, error) { // EncodeMP4 将给定视频文件编码为MP4 func EncodeMP4(src string, dst string) error { // -y 覆盖文件 cmd1 := exec.Command("ffmpeg", "-i", src, "-y", "-c", "copy", "-map", "0", dst) + if errors.Is(cmd1.Err, exec.ErrDot) { + cmd1.Err = nil + } err := cmd1.Run() if err != nil { cmd2 := exec.Command("ffmpeg", "-i", src, "-y", "-c:v", "h264", "-c:a", "mp3", dst) + if errors.Is(cmd2.Err, exec.ErrDot) { + cmd2.Err = nil + } return errors.Wrap(cmd2.Run(), "convert mp4 failed") } return err @@ -44,5 +50,8 @@ func EncodeMP4(src string, dst string) error { // -y 覆盖文件 // ExtractCover 获取给定视频文件的Cover func ExtractCover(src string, target string) error { cmd := exec.Command("ffmpeg", "-i", src, "-y", "-ss", "0", "-frames:v", "1", target) + if errors.Is(cmd.Err, exec.ErrDot) { + cmd.Err = nil + } return errors.Wrap(cmd.Run(), "extract video cover failed") } diff --git a/modules/silk/codec.go b/modules/silk/codec.go index 19118c6..26f9ca6 100644 --- a/modules/silk/codec.go +++ b/modules/silk/codec.go @@ -32,6 +32,9 @@ func encode(record []byte, tempName string) (silkWav []byte, err error) { // 2.转换pcm pcmPath := path.Join(silkCachePath, tempName+".pcm") cmd := exec.Command("ffmpeg", "-i", rawPath, "-f", "s16le", "-ar", "24000", "-ac", "1", pcmPath) + if errors.Is(cmd.Err, exec.ErrDot) { + cmd.Err = nil + } if base.Debug { cmd.Stdout = os.Stdout cmd.Stderr = os.Stderr