如何利用Ffmpeg进行视频截图

ffmpeg.exe  能解析的格式 (asx,asf,mpg,wmv,3gp,mp4,mov,avi,flv等)
对ffmpeg.exe无法解析的文件格式(wmv9,rm,rmvb等),

可以先用别的工具(mencoder)转换为avi(ffmpeg能解析的)格式;

那么在Java中如何实现视频截图呢?案例如下

package com.yrj.ffmpeg;

import java.util.List;
public class Fmmpeg {
   /**
    * 
    * @param videoLocation
    * @param imageLocation
    * @param timeStart "hh:mm:ss[.xxx] or Secends"
    * @param frames 帧数
    * @return
    */
   public static boolean Capture(String videoLocation,String timeStart,String frames)  
   {  
        List commend = new java.util.ArrayList();  
        commend.add("res\\ffmpeg");  
        commend.add("-ss"); 
        commend.add(timeStart);  
        commend.add("-i");  
        commend.add(videoLocation);  
        commend.add("-y");  
        commend.add("-f");  
        commend.add("image2");  
        commend.add("-vframes");  
        commend.add(frames);  
        commend.add("picture\\b-%3d"+"timeStart.jpg");  
        try {  
            ProcessBuilder builder = new ProcessBuilder();  
            builder.command(commend);  
            builder.start();  
            return true;  
        } catch (Exception e) {  
            e.printStackTrace();  
            return false;  
        }  
   }  
   public static void main(String[] args){
	   boolean flag = Capture("Video\\video.wmv","1","4");
	   if(flag != false)
	   {
		   System.out.println("视频截图成功!!!");
	   }
   }
}


你可能感兴趣的:(java)