Refactored code to resize JPEG snapshot if "h" parameter exists in the URL query

This commit is contained in:
Sergey Krashevich
2023-07-11 10:35:53 +03:00
parent b5d40caffc
commit 490a48cd50
3 changed files with 25 additions and 5 deletions
+8 -2
View File
@@ -2,11 +2,17 @@ package ffmpeg
import (
"bytes"
"fmt"
"os/exec"
)
func TranscodeToJPEG(b []byte) ([]byte, error) {
cmd := exec.Command(defaults["bin"], "-hide_banner", "-i", "-", "-f", "mjpeg", "-")
func TranscodeToJPEG(b []byte, height ...int) ([]byte, error) {
cmdArgs := []string{defaults["bin"], "-hide_banner", "-i", "-", "-f", "mjpeg"}
if len(height) > 0 {
cmdArgs = append(cmdArgs, "-vf", fmt.Sprintf("scale=-1:%d", height[0]))
}
cmdArgs = append(cmdArgs, "-")
cmd := exec.Command(cmdArgs[0], cmdArgs[1:]...)
cmd.Stdin = bytes.NewBuffer(b)
return cmd.Output()
}