我在我的java应用程序中使用FFmpeg将视频转换为BufferedImages的ArayList。我正在使用此代码将视频文件拆分为单独的jpg帧:
builder.command(FFmpeg, "-i", "<video url>", "-vf", "fps=5,scale=128:128,format=rgb8,format=rgb24", "out%d.jpg");
这会产生一个装满jpg帧的文件夹,它工作正常。但我宁愿不将它们写入单个文件,我宁愿将输出转换为BufferedImages的ArrayList,而不必将每个帧写入单独的文件。
这应该是上面代码的命令行:
FFmpeg.exe -i <video url> -vf fps=5,scale=128:128,format=rgb8,format=rgb24 out%d.jpg
如果无法直接解析ArrayList,我还有哪些其他更优雅的解决方案?
答案 0 :(得分:0)
我建议您尝试openimaj 您可以加载视频文件并从那里提取图像。使用的格式可以转换为java缓冲图像。这是一个例子:http://www.openimaj.org/tutorial/processing-video.html。