C#利用开源软件ffMpeg截取视频图片
#region 从视频画面中截取一帧画面为图片
/// <summary>
/// 从视频画面中截取一帧画面为图片
/// </summary>
/// <param name="VideoName">视频文件,绝对路径</param>
/// <param name="WidthAndHeight">图片的尺寸如:240*180</param>
/// <param name="CutTimeFrame">开始截取的时间如:"1"</param>
/// <returns></returns>
public string GetPicFromVideo(string VideoName, string WidthAndHeight, string CutTimeFrame)
{
string ffmpeg = Server.MapPath("/") + "ffmpeg.exe";//ffmpeg执行文件的路径
string PicName = VideoName + ".jpg";//视频图片的名字,绝对路径
System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo(ffmpeg);
startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
startInfo.Arguments = " -i " + VideoName
+ " -y -f image2 -ss " + CutTimeFrame
+ " -t 0.001 -s " + WidthAndHeight
+ " " + PicName; //設定程式執行參數
try
{
System.Diagnostics.Process.Start(startInfo);
Thread.Sleep();//线程挂起,等待ffmpeg截图完毕
}
catch (Exception)
{
return "";
} //返回视频图片完整路径
if (System.IO.File.Exists(PicName))
return PicName;
return "";
}
#endregion
C#利用开源软件ffMpeg截取视频图片的更多相关文章
- php ffmpeg截取视频第一帧保存为图片的方法
php ffmpeg截取视频第一帧保存为图片的方法 <pre> $xiangmupath = $this->getxiangmupath(); $filename = 'chengs ...
- 利用开源软件 Hugin 实现照片的景深合成
利用开源软件 Hugin 实现照片的景深合成 本文主要参考了下面的文章:http://macrocam.blogspot.jp/2013/09/using-hugin-for-focus-stacki ...
- 利用开源软件strongSwan实现支持IKEv2的企业级IPsec VPN,并结合FreeRadius实现AAA协议(下篇)
续篇—— 利用开源软件strongSwan实现支持IKEv2的企业级IPsec VPN,并结合FreeRadius实现AAA协议(上篇) 上篇文章写了如何构建一个支持IKEv2的VPN,本篇记录的是如 ...
- 【Java SE】使用Javacv截取视频图片
[Java Web开发学习]使用Javacv截取视频图片 转载:https://www.cnblogs.com/yangchongxing/p/9482935.html github地址:https: ...
- 使用ffmpeg截取视频封面并批量上传
需求:将视频文件压入zip包,然后上传服务器.服务器对zip解压,使用bat/shell,使用ffmpeg对视频进行封面截取.再使用OSS对视频和封面进行批量上传.最后将信息存入数据库 遇到的问题 1 ...
- (转载)[FFmpeg]使用ffmpeg从各种视频文件中直接截取视频图片
你曾想过从一个视频文件中提取图片吗?在Linux下就可以,在这个教程中我将使用ffmpeg来从视频中获取图片. 什么是ffmpeg?What is ffmpeg? ffmpeg是一个非常有用的命令行程 ...
- 利用开源jPlayer播放.flv视频文件
最近工作中用到视频播放,在网上搜索对比了好几款开源播放插件后,觉得 jPlayer 是比较不错的,故作此记录! 接下来先快速的展示一下 利用jPlayer播放.flv视频的效果: <!DOCTY ...
- ffmpeg截取视频
ffmpeg -i ./suen071520.mp4 -vcodec copy -acodec copy -ss 00:55:00 -to 01:14:50 ./suen071520sp3.mp4-- ...
- 使用ffmpeg进行视频图片提取
环境:windows10-x64 ffmpeg的功能很强大,可以进行音频和视频的处理,这里记录下需要从视频文件提取图片的情况. ffmpeg官方地址:https://www.ffmpeg.org/使用 ...
随机推荐
- centos安装zendstudio centos系统
查看centos系统32或64位命令(位数):在终端中执行“getconf LONG_BIT”命令并回车键确定 安装zend studio : 1. 首先安装好Java环境yum -y install ...
- 你真的会用UITableView嘛
UITableView是工程开发中最经常使用到的UI控件,但是你真的了解它嘛,这里记录几点有用的但你可能并不知道的. 当我们的数据未能显示满一屏幕的时候,UITableView会显示多余的横线,这个时 ...
- Team Queue
Team Queue Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 2471 Accepted: 926 Descrip ...
- (转载)ubuntu创建、删除文件及文件夹,强制清空回收站方法
mkdir 目录名 => 创建一个目录 rmdir 空目录名 => 删除一个空目录 rm 文件名 文件名 => 删除一个文件或多个文件 rm –rf 非 ...
- shell(1)
bash变量类别: 本地变量 : 又叫局部变量,仅对当前shell进程有效 环境变量 : 当前shell及其子shell,子子shell-. 特殊变量 : $? 上一个命令执行的状态,0表示执行成功 ...
- C++编译器的函数名修饰规则
我们知道在C++中有函数重载这样一个东西,当我们定义了几个功能类似且函数名是一样的函数的时候,只要它的参数列表不同,编译是可以通过的,但是在C中是不可以的. double add(double a, ...
- div容器内文本对齐--神奇的css
有时候使用一些css往往能达到意想不到的效果 最近需要在页面上显示读取的文本内容,中英文混杂着,我把它们统统抛到div中div设置了宽度,效果是相当糟糕,左对齐,右端长短不一,有的超出长度,有的不够长 ...
- [改善Java代码]子列表只是原列表的一个视图
List接口提供了subList方法,其作用是返回一个列表的子列表.这与String类的subString有点类似.但是他们的功能是否相同?看代码: import java.util.ArrayLis ...
- 关于docker中的几个小命令
问题 A VirtualBox machine with the name 'vagrant_c__devops_docker_vagrant' already exists. 解决命令:VBoxMa ...
- Sublime Text—设置浏览器快捷键
在不同浏览器查看代码效果可谓是家常便饭,所以用不同快捷键打开相应浏览器可以大大提高工作效率. 介绍个简单的方法只需二步: 一.安装插件SideBarEnhancements 打开Package Con ...