首页 > 解决方案 > 视频文件上的 ffprobe exec 导致错误 - 未在测试中捕获

问题描述

我创建了一个 cmd exec 以从输入视频文件(尝试 mov+mp4)运行,该文件被创建为临时文件:

cmd := exec.Command(ffprobe, "-v", "error", "-print_format", "json", "-show_format", "-show_streams", "-hide_banner", fileName)

当我运行这些函数作为测试时,ffprobe cmd 工作正常,但是当我从 http 创建请求时,cmd 失败并显示 msg:

/var/folders/b1/53jz_b9j1rb0nhhzmv4kwbk80000gn/T/prefix-044409485:处理输入时发现无效数据

我在 http 请求和测试函数中都将文件读取为一个io.Reader,因此输入数据类型应该是相同的。

应该发生什么:http 请求将返回与测试函数相同的输出。

你认为是什么原因造成的?临时文件正在完美创建,但我怀疑http请求正文是否根据请求将一些元数据添加到文件中。其他想法是 mp4 文件中的“moov atom”问题。

标签: apigoffprobe

解决方案


推荐阅读