13518219792

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

巧用Ffmpeg从视频中截图,你会吗?

 本文转载自微信公众号「UP技术控」,作者conan5566。转载本文请联系UP技术控公众号。  

成都创新互联公司是一家网站设计公司,集创意、互联网应用、软件技术为一体的创意网站建设服务商,主营产品:响应式网站设计成都品牌网站建设营销型网站建设。我们专注企业品牌在网站中的整体树立,网络互动的体验,以及在手机等移动端的优质呈现。成都做网站、成都网站建设、移动互联产品、网络运营、VI设计、云产品.运维为核心业务。为用户提供一站式解决方案,我们深知市场的竞争激烈,认真对待每位客户,为客户提供赏析悦目的作品,网站的价值服务。

概述

之前做了个项目,涉及到上传视频,那么我们知道,一般在界面显示的时候,是需要对视频有个预览的效果,就是显示某一帧视频的画面。

找了下发现http://ffmpeg.org/ 可以实现这个功能。

FFmpeg是一个自由软件,可以运行音频和视频多种格式的录影、转换、流功能,包含了libavcodec——这是一个用于多个项目中音频和视频的解码器库,以及libavformat——一个音频与视频格式转换库。

主要参数

下面我们来看下ffmpeg如何实现视频截图的操作。

实现方式

1、下载 ffmpeg http://ffmpeg.org/ ,解压后在 bin 目录下找到 ffmpeg.exe

2、命令方式

-i 视频地址 -ss 第几帧 -f image2 图片存放地址

用cmd试一下,首先切换到ffmpeg.exe所在目录,输入命令,回车

3、c#代码实现

 
 
 
 
  1. using (System.Diagnostics.Process process = new System.Diagnostics.Process()){ 
  2.     process.StartInfo.FileName = @"D:\ffmpeg.exe"; 
  3.     process.StartInfo.Arguments= @"-i D:\111.mp4 -ss 10 -f image2 D:\test\1.jpg"; 
  4.     process.Start();} 

或者如下

 
 
 
 
  1. using System.Diagnostics; 
  2. ..... 
  3.  
  4.  
  5.             ProcessStartInfo startInfo = new ProcessStartInfo("ffmpeg物理路径"); 
  6.  
  7.  
  8.             startInfo.WindowStyle = ProcessWindowStyle.Hidden; 
  9.  
  10.  
  11.             startInfo.Arguments = "  -i 视频文件路径 -y -f image2 -ss 3 -t 0.001 -s 480*360 截图物理路径";//480*360是图片分辨率 
  12.  
  13.             startInfo.UseShellExecute = false; 
  14.  
  15.  
  16.             try 
  17.  
  18.  
  19.             { 
  20.  
  21.  
  22.                 Process.Start(startInfo); 
  23.  
  24.  
  25.                 return true; 
  26.  
  27.  
  28.             } 
  29.  
  30.  
  31.             catch 
  32.  
  33.  
  34.             { 
  35.  
  36.  
  37.             } 

网页标题:巧用Ffmpeg从视频中截图,你会吗?
当前链接:http://cdbrznjsb.com/article/cohgphp.html

其他资讯

让你的专属顾问为你服务