用java实现视频截帧的方法

在软件系统中有时在wed端、移动端显示视频时,如果同时显示多个视频,有可能会将多个视频的数据全部装入内存,在一定程度上回影响系统性能。比较好的一中解决方案是显示视频的一帧图片,点击图片之后即可播放视频,是一种比较节省内存的方法,大型的网站很多也使用此方法,本篇文章主要是介绍如何用java调用FFmpeg解决视频截图的问题。

FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPLGPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。

使用java调用FFmpeg的代码如下:

用java实现视频截帧的方法_第1张图片


在实际操作中要注意一下几点:

1, linux上安装ffmpeg的时候,最好使用静态编译的版本,安装成功的概率会比较高,不会出现缺少动态链接库的情况。

2, 使用java在调用命令行的时候,系统会将tomcat的安装位置作为当前目录的位置,所以要找到安装的可执行文件,需要使用命令行确定安装文件的位置。

3, Javawindows系统上调用可执行文件,相对比较简单,可参考网上的其它例子。

本人在实践中发现,视频截图好像不能截取ios上的mov格式的视频的帧,如果各位盆友有好的方案,还请指教。


    

你可能感兴趣的:(java)