利用Golang和FFmpeg实现视频水印的添加

avatar
作者
筋斗云
阅读量: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

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!