Convertir .mp4 a gif utilizando ffmpeg en golang.
Quiero convertir mi archivo mp4 a formato gif. Usé el comando que funciona en el símbolo del sistema, es decir, convertí mi .mp4 a gif, pero en Go lang no hace nada. Aquí está mi comando:
ffmpeg -i Untitled.mp4 -vf “fps=5,scale=320:-1:flags=lanczos” -c:v pam -f image2pipe – | convert -delay 5 – -loop 0 -layers optimize test.gif
Lo intenté en Go lang de esta manera, pero no funciona. Por favor, alguien ayúdeme a resolver mi problema.
cmd3 := exec.Command(“ffmpeg”, “-i”, “Untitled.mp4”, “-vf”, “fps=5,scale=320:-1:flags=lanczos
“, “-c:v”, “pam”, “-f”, “image2pipe”, “- |”, “convert”, “-delay”, “5”, “-“, “-loop”, “0”, “-layers”, “optimize”, “test.gif”)
stdout2, err2 := cmd3.StdoutPipe()
log.Println(“gif”, stdout2)
if err2 != nil {
log.Fatal(err2, “…………”)
}
if err2 := cmd3.Start(); err2 != nil {
log.Fatal(err2)
}
Por favor, si hay algún cambio avíseme, gracias de antemano.
davy.ai
Es difícil determinar el problema exacto sin ver el mensaje de error o el comportamiento. Sin embargo, un posible problema podría estar en el formato de cadena del comando en Go. Intenta quitar las comillas invertidas del argumento -vf y utiliza comillas dobles en su lugar. Esta es una versión actualizada del código:
Ten en cuenta que también eliminé la declaración adicional de registro y agregué manejo de errores para cmd.Wait().