asp.net实现调用ffmpeg实现视频格式的转换
视频格式转换的函数
//视频转换
public void VideoConvertFlv(string FromName, string ExportName)
{ string ffmpeg = HttpContext.Current.Server.MapPath("~/UploadFiles/FLV/ffmpeg.exe");
FromName = HttpContext.Current.Server.MapPath(FromName);
ExportName = HttpContext.Current.Server.MapPath(ExportName);
string Command = " -i \"" + FromName + "\" -y -ab 32 -ar 22050 -b 800000 -s 480*360 \"" + ExportName + "\""; //Flv格式
//string Command = " -i \"test.wmv\" -y -ab 32 -ar 22050 -b 800000 -s 320*240 \"2.flv\""; //string Command = "E:\\FFmpeg\\ffmpeg.exe -i E:\\ClibDemo\\VideoPath\\admin\\a.wmv -y -ab 56 -ar 22050 -b 500 -r 15 -s 320*240 " ExportName;
System.Diagnostics.Process p = new System.Diagnostics.Process();
p.StartInfo.FileName = ffmpeg;
p.StartInfo.Arguments = Command;
p.StartInfo.WorkingDirectory = HttpContext.Current.Server.MapPath("~/UploadFiles/FLV/");
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardError = true;
p.StartInfo.CreateNoWindow = false;
//开始执行
p.Start();
p.BeginErrorReadLine();
p.WaitForExit();
p.Close();
p.Dispose();
}
调用视频格式转换
protected void btnSaveUploadVod_Click(object sender, EventArgs e)
{
string fileName = txtATitle.Text;//上传文件的名称的命名规则是标题
bool flag = true; //视频格式是否正确的标志
if (fileName.Equals(""))
{
Response.Write("<script>alert('请先填写标题!')</script>");
}
else
{
filePathTemp = "UploadFiles/武夷概况/视频";
string fpath = Path.Combine(Request.PhysicalApplicationPath, filePathTemp);
UploadFile upFile = AspnetUpload.GetUploadFile("file2");
if (upFile != null)
{
string sourceFileName = Path.GetFileName(upFile.get_FileName()); //取出上传的视频的文件名,进而取出该文件的扩展名
string extendName = sourceFileName.Substring(sourceFileName.LastIndexOf(".") + );
//上传后的文件名的命名规则是:标题+数字+后缀
if (!isAllowedVodType(extendName))
{
flag = false;
}
else
{ VodWarehouseManage vodWarehouseBll = new VodWarehouseManage();
//先上传到服务器,然后转换格式,最后删掉原来非FLV格式的视频
//上传后的文件名的命名规则是:标题+后缀
string fileNameTemp = fileName + "." + extendName;
string savePath = filePathTemp + "/" + fileNameTemp;
upFile.SaveAs(Path.Combine(fpath, fileNameTemp));
if (!extendName.ToLower().Equals("flv"))
{//进行视频转换 //调用视频转换函数将其它格式的视频转为FLV格式的视频
string fromName = "~/" + savePath;
string exportName = "~/" + filePathTemp + "/" + fileName + ".flv";
// Response.Write("<script>alert('fromName=" + fromName + " and exportName=" + exportName + "')</script>"); //转换视频格式
VideoConvertFlv(fromName, exportName); //删除非FLV格式的视频
vodWarehouseBll.DeleteFile(Path.Combine(fpath, fileNameTemp)); savePath = filePathTemp + "/" + fileName + ".flv"; } //保存视频的信息
VodWarehouse vodWarehouse = new VodWarehouse();
vodWarehouse.VodSortId = ;//1代表媒体的类型为武夷概况
vodWarehouse.VodPath = savePath;
vodWarehouse.AttachId = Int32.Parse(articleId.Value);//隐藏域中的值 if (vodWarehouseBll.SaveVodsInfo(vodWarehouse) == false)
{
Response.Write("<script>alert('保存视频的过程出错!')</script>");
}
else
{
//Response.Write("<script>alert('视频上传成功!')</script>");
//将上传的路径写入相应的上传文本框中 }
}
}//end foreach if (flag == true)
{
this.upLoadVodResult.Text = "视频上传成功";
this.vodPannel.Visible = false;
}
else
{
//this.upLoadVodResult.Text = "您选择的视频的格式不正确,请确保您的视频的格式是:flv/mov/wmv/avi/mp4";
Response.Write("<script>alert('您选择的视频的格式不正确,请确保您的视频的格式是:flv/mov/wmv/avi/mp4!')</script>");
}
}
}
asp.net实现调用ffmpeg实现视频格式的转换的更多相关文章
- C#使用FFmpeg 将视频格式转换成Gif图片示例
根据EFmpeg封装的视频转换gif工具:https://my.oschina.net/tianma3798/blog/825317 一.本次使用参数说明 /* * 参数说明: * -i 源文件位置 ...
- 如何使用java代码进行视频格式的转换(FLV)
如何使用java代码进行视频格式的转换(FLV) 一,前言 在给网页添加视频播放功能后,发现上传的视频有各种格式,那么就需要将他么转换成FLV,以很好的支持在线视频播放. 公司一直在使用中,配合使用, ...
- java程序实现视频格式的转换
http://blog.sina.com.cn/s/blog_96b60b0c01013mi5.html 原文地址:java程序实现视频格式的转换作者:笑看风云 flv格式转换--第一步 不定期更新. ...
- ASP.NET下调用ffmpeg与mencoder实现视频转换截屏
最近要做一个视频播放的系统,用到了ffmpeg和mencoder两个工具,查了一些资料,发现这方面的资料还挺多的,但是就是乱了一点,我自己从头整理了一下,和大家分享一下: 1.ffmpeg实现视频(a ...
- NET 2.0(C#)调用ffmpeg处理视频的方法
另外:ffmpeg的net封装库 http://www.intuitive.sk/fflib/ NET 2.0 调用FFMPEG,并异步读取输出信息的代码...public void ConvertV ...
- Java调用ffmepg+mencoder视频格式转换(*)
PS: 建议大家在官网下载最新的资源 其他格式转FLV格式,可以用Java调用ffmpeg和memcoder实现 ffmepg: D:\ffmpeg\bin\ffmpeg.exe -i E:\1.mp ...
- C#使用FFmpeg 将视频格式转换成MP4示例
一.常用视频格式分辨率 640x480p 720p格式,分辨率为1280×720p / 60Hz,行频为45kHz 1080p格式,分辨率为1920×1080逐行扫描,专业格式 二.FFmpeg部分参 ...
- Java调用FFmpeg进行视频处理及Builder设计模式的应用
1.FFmpeg是什么 FFmpeg(https://www.ffmpeg.org)是一套可以用来记录.转换数字音频.视频,并能将其转化为流的开源计算机程序.它用来干吗呢?视频采集.视频格式转化.视频 ...
- ffmpeg转换参数和对几种视频格式的转换分析
我们在将多种格式的视频转换成flv格式的时候,我们关注的就是转换后的flv视频的品质和大小.下面就自己的实践所得来和大家分享一下,主要针对avi.3gp.mp4和wmv四种格式来进行分析.通常在使用f ...
随机推荐
- h5新增属性本地存储
---恢复内容开始--- 存储的两种类型: localStorage 和 sessionStorage localstorage:没有时间限制的数据存储 sessionStorage 针对一个ses ...
- 美国L-1A签证简介
一. L-1A签证是美国非移民签证种类之一,主要发给外国跨国公司在美所设公司的高层管理人员.申请程序是先经美国移民局批准,美驻外使领馆凭移民局的批准函(I-797表)核发签证.移民局的批准函并不意味着 ...
- 奇怪的Unrooted Tests错误
错误如图: 条件如下: Eclipse里的Maven工程. 使用JUnit4(这个是否必须不知,反正我的工程用的4) 修改某个Test类里的方法名,或者增加一个Test方法. 现象: 在MyEclip ...
- Linux下bash的快捷键
Ctrl + A :切换到命令行开始 Ctrl + E :切换到命令行末尾 Ctrl + L : 清屏,相当于clear Ctrl + U :清除剪切光标前的内容 Ctrl + K :剪切清除光标后 ...
- 【BZOJ1040】[ZJOI2008] 骑士(基环外向树DP)
点此看题面 大致题意: 给你一片基环外向树森林,如果选定了一个点,就不能选择与其相邻的节点.求选中点的最大权值和. 树形\(DP\) 此题应该是 树形\(DP\) 的一个升级版:基环外向树\(DP\) ...
- 操作系统(5)_内存管理_李善平ppt
i386先通过段是管理,在通过页是管理
- Java 解决IE浏览器下载文件,文件名出现乱码问题
/** * 区分ie 和其他浏览器的下载文件乱码问题 * @param request * @param fileName * @return */ public String getFileName ...
- [mysql] Can't read from messagefile
系统:windows 重启mysql服务出现 Server] Can't read from messagefile 等错误时候, 应先执行 mysqld --initialize-insecure ...
- 转:maven国内镜像(maven下载慢的解决方法)
http://www.cnblogs.com/xiongxx/p/6057558.html https://jingyan.baidu.com/article/1876c8524ee0d0890a13 ...
- 【JAVA】cxf使用springboot与xml配置的差别所导致的问题。
使用xml时使用以下配置使报文没有加上命名空间时也能正常访问接口.bean定义的前后顺序不影响程序正常注册对象. <!-- 通过Spring创建数据绑定的类 --> <bean id ...