据我了解,“ffprobe”将以 JSON 格式提供文件相关数据。所以,我已经在我的 Ubuntu 机器上安装了 ffprobe,但我不知道如何使用 Java/Grails 访问 ffprobe JSON 响应。
预期响应格式:
{
"format": {
"filename": "/Users/karthick/Documents/videos/TestVideos/sample.ts",
"nb_streams": 2,
"nb_programs": 1,
"format_name": "mpegts",
"format_long_name": "MPEG-TS (MPEG-2 Transport Stream)",
"start_time": "1.430800",
"duration": "170.097489",
"size": "80425836",
"bit_rate": "3782576",
"probe_score": 100
}
}
这是我的常规代码
def process = "ffprobe -v quiet -print_format json -show_format -show_streams HelloWorld.mpeg ".execute()
println "Found ${process.text}"
render process as JSON
我能够获得进程对象,但我无法获得 json 响应
我应该将进程对象转换为 json 对象吗?
输出:
发现 java.lang.UNIXProcess@75566697 org.codehaus.groovy.grails.web.converters.exceptions.ConverterException: Error conversion Bean with class java.lang.UNIXProcess