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 ...
随机推荐
- Eucalyptus(v4.0)系统需求
1.计算需求 Physical Machines: All Eucalyptus components must be installed on physical machines, not virt ...
- LAMP stack-5.6.22 (OpenLogic CentOS 7.2)
平台: CentOS 类型: 虚拟机镜像 软件包: apache2.4.20 mysql5.6.30 php5.6.22 apache application server basic softwar ...
- SqlServer报错:主体“dbo”不存在
某台SqlServer数据库执行订阅发布的时候,报错: 无法作为数据库主体执行,因为主体“dbo”不存在.无法模拟这种类型的主体,或您没有所需的权限.(源:MSSQLServer,错误号:15517) ...
- codevs 4052 黎恒健大战YJY
时间限制: 1 s 空间限制: 32000 KB 题目等级 : 黄金 Gold 题目描述 Description 现在,黎恒健与YJY由于身处异地,非常迫切地想在最短的时间内相遇,然后干一架.但 ...
- File 与 Log #3--动态加入控件,[图片版]访客计数器(用.txt档案来记录)
File 与 Log #3--动态加入控件,[图片版]访客计数器(用.txt档案来记录) 以前的两篇文章(收录在书本「上集」的第十七章) 请看「ASP.NET专题实务」,松岗出版 File 与 Log ...
- SQL 使用触发器常见错误
今天做代码审查时,看见以下一段触发器的创建脚本,我们一起来分析一下 create trigger [trigger_puClassRoomType] on [dbo].[puClassRoomType ...
- SQL Server Profiler查询跟踪的简单使用
1.打开SQL Server Management Studio,选择工具->SQL Server Profiler,或者直接从路径:开始/程序/Microsoft SQL Server 200 ...
- C语言中的异常处理机制
#define try if(!setjmp(Jump_Buffer)) 返回try现场后重新执行判断,所以有两次执行. http://blog.csdn.net/tian_dao_chou_qin/ ...
- os.walk 模块
os.walk()可以得到一个三元tupple(dirpath, dirnames, filenames),其中第一个为起始路径,第二个为起始路径下的文件夹,第三个是起始路径下的文件. 其中dirpa ...
- C#获取Honeywell voyager 1400g扫码后的数据
一.在类方法中加入 System.IO.Ports.SerialPort com;二.在构造方法中加入 try { com = new System.IO.Ports.SerialPort(&qu ...