阅读量:0
下面是一个使用Golang和FFmpeg实现视频水印添加的示例代码:
package main import ( "fmt" "log" "os" "os/exec" ) func main() { // 输入视频文件路径 inputFile := "input.mp4" // 输出视频文件路径 outputFile := "output.mp4" // 水印图片路径 watermarkFile := "watermark.png" // 创建FFmpeg命令 cmd := exec.Command("ffmpeg", "-i", inputFile, "-i", watermarkFile, "-filter_complex", "overlay=W-w-10:H-h-10", outputFile) // 执行命令 err := cmd.Run() if err != nil { log.Fatal(err) } fmt.Println("视频水印添加成功!") }
在上面的代码中,我们使用os/exec
包创建了一个exec.Cmd
对象,该对象代表了一个FFmpeg命令。我们通过传递命令行参数来指定输入视频文件路径、水印图片路径和输出视频文件路径。在本示例中,我们使用了overlay
滤镜来将水印图片添加到视频上,具体的滤镜参数为overlay=W-w-10:H-h-10
,表示将水印图片放置在右下角,距离视频边界右边和底部各10像素的位置。最后,我们调用cmd.Run()
方法来执行FFmpeg命令。
请确保你的系统已经正确安装了FFmpeg,并且将FFmpeg的可执行文件路径添加到了系统的环境变量中。
运行以上代码后,你将得到一个包含水印的输出视频文件output.mp4
。