Go言語でFFmpegを呼び出す方法
Go言語でFFmpegを使用するには、os/execパッケージを使用した外部コマンドの実行方法を用いる必要があります。
まず、ffmpegがインストール済みであることを確認し、システム環境変数に追加してください。
そして、Go コード内では os/exec パッケージを使って FFmpeg コマンドを実行する。以下にサンプルを示す。
package main
import (
"log"
"os/exec"
)
func main() {
// 创建一个cmd对象
cmd := exec.Command("ffmpeg", "-i", "input.mp4", "output.mp4")
// 执行命令并等待完成
err := cmd.Run()
if err != nil {
log.Fatal(err)
}
}
exec.Command() 関数は、最初の引数で指定するコマンド名を、それに続く引数で指定するパラメータとともに実行するための cmd オブジェクトを作成します。
cmd.Run()メソッドはコマンドを実行し、コマンドの完了を待ちます。
FFmpeg のトランスコード機能は上記例では簡略に呼び出していますが、実際には必要に応じたコマンド引数の調整が必要です。また、 `cmd.Stdout` と `cmd.Stderr` 属性を使用してコマンドの出力を取得できます。
また、github.com/golang/exampleなどのサードパーティFFmpegパッケージも使用できます。これらはos/execパッケージを使用してFFmpegを呼び出すためのサンプルコードを提供するexecサブパッケージを含んでおり、参照できます。