我在第二行遇到“恐慌:退出状态254”。
你能否发现我在这里犯的错误:
command := exec.Command("avprobe", "inputfile.mp4 -loglevel quiet -show_streams -frame_size -print_format -show_format -of json")
output, err := command.StdoutPipe();
if err != nil {
log.Panic(err)
}
if err := command.Run(); err != nil {
log.Panic(err)
}
json.NewDecoder(output).Decode(&struct1)
答案 0 :(得分:1)
您正在运行等效的
avprobe "inputfile.mp4 -loglevel quiet -show_streams -frame_size -print_format -show_format -of json"
我猜avprobe不喜欢这样,试试
command := exec.Command("avprobe", "inputfile.mp4", "-loglevel", ...)
您还可以使用exec.CombinedOutput()
从avprobe获取输出并查看其内容。
答案 1 :(得分:0)
包exec
func Command(name string, arg ...string) *Cmd
例如,
arg := []string{
"inputfile.mp4",
"-loglevel", "quiet",
"-show_streams",
"-frame_size",
"-print_format",
"-show_format",
"-of", "json",
}
command := exec.Command("avprobe", arg...)