package probe import ( "fmt" "os" ) // FFprobeExeName 释放到当前目录的解码器文件名 const FFprobeExeName = "ffprobe.exe" // FFprobePath 返回当前目录下的 ffprobe 可执行路径(Windows/Unix 均可直接执行) func FFprobePath() string { return "." + string(os.PathSeparator) + FFprobeExeName } // HasEmbeddedFFprobe 当前平台是否内嵌了 ffprobe func HasEmbeddedFFprobe() bool { return len(embeddedFFprobe) > 0 } // ReleaseFFprobe 释放内嵌的 ffprobe 到当前目录(按当前系统自动选择对应版本) func ReleaseFFprobe() error { if len(embeddedFFprobe) == 0 { return fmt.Errorf("当前系统没有内嵌的ffprobe") } return os.WriteFile(FFprobeExeName, embeddedFFprobe, 0777) } // RemoveFFprobe 删除当前目录下释放的 ffprobe func RemoveFFprobe() { _ = os.Remove(FFprobeExeName) }