欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

关于视频自动截取封面_ ffmpeg

程序员文章站 2022-07-14 19:23:48
...

后台富文本框内 插入视频后,保存信息时 对视频封面处理

ffmpeg下载地址

关于视频自动截取封面_ ffmpeg

创建bat文件, 如以下关于bat文件的内容

start

C:/Users/83469/Desktop/ffmpeg-20180310-2536bd8-win64-static/bin/ffmpeg.exe -i %1 -ss 20 -vframes 1 -r 1 -ac 1 -ab 2 -s 160*120 -f  image2 %2  

exit

关于视频自动截取封面_ ffmpeg


String content = articles.getContent();
			 String[] videoRealPath_arr =  content.split("<vedio>");
			 	String[] vsrc=videoRealPath_arr[0].split("src=\"/hbjg");
			 	if(vsrc!=null || (vsrc==null && vsrc.length!=0)){
			 	String videoRealPath=vsrc[1].split(".mp4")[0];
			 	SimpleDateFormat df = new SimpleDateFormat("HHmmss");//设置日期格式
			 	;// new Date()为获取当前系统时间
		        //截图的路径(输出路径)   
			 	String f="/static/u/www/image/"+sdf.format(new Date());
			 	String fileurl=request.getSession().getServletContext().getRealPath(f);
	            File file = new File(fileurl);
	            if(!file.exists()){
	                file.mkdirs();
	            }
	            String xdPath=df.format(new Date())+".jpg";
	            String upImg=f+"/"+xdPath;
			 	String imageRealPath=fileurl+"/"+xdPath;
			    String iurl=request.getSession().getServletContext().getRealPath(videoRealPath)+".mp4";
			    String ffmpeg_address = PropertyUtil.getProperty("ffmpeg_address");
			    String cmd ="cmd /c start "+ffmpeg_address+" ";
		        String ec=cmd + iurl + " " + imageRealPath;
		        articles.setImagePath(upImg);
		        Process p;
			  p =Runtime.getRuntime().exec(ec);
			  p.waitFor();
	 public void killProcess(){
		  Runtime rt = Runtime.getRuntime();
		  Process p = null;  
		  try {
		   rt.exec("cmd.exe /C start wmic process where name='cmd.exe' call terminate");
		  } catch (IOException e) {
		   e.printStackTrace();
		  }
		 }

 killProcess()这是一段去掉执行后出现的cmd窗口的方法


写的很粗糙,  问题还有很多 目前截取文本.MP4 写死的, 还有如果上传2个视频或以上的处理等..

 
相关标签: 视频