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 ...
随机推荐
- 创建一个自己的GitHub,创建自己的开源项目
作者是一个大学在读学生,自己在平时的学习中,GitHub上的开源项目给自己提供了很大的帮助.GitHub是目前使用最广泛的分布式项目管理软件,GitHub上面托管了许多非常优秀的开源项目.我觉得每一个 ...
- 允许被ping设置方法
参考下图设置:
- linux 命令——51 lsof(转)
lsof(list open files) 是一个列出当前系统打开文件的工具.在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件.所以 如传输控制 ...
- EF和linq语句查询条件不等于某个参数出现的问题
where t.a!=字符串 这是错误的写法,正确为 where t.a!=字符串.trim() 其他类型变量需要保持实体类型和查询条件参数的类型是一致的,不然出现的语句可能会是 类似`Exten ...
- JS获取本地文件并且解析文件内容(XML,TXT)
$(function(){ $("body").on("change", "#file", function (event) { uploa ...
- 梁勇Java语言程序设计第三章全部例题 为第五次作业
完成例题3-1,通过系统当前时间毫秒值获取随机10以内的整数判断加的结果是否正确,不用if语句 package com.swift; import java.util.Scanner; public ...
- linux网络编程之断点传输文件
以下载链接"http://www.boa.org/boa-0.94.13.tar.gz"为例: 断点续传实验大概步骤: ===================== 1,使用geth ...
- LAMP 搭建练习
目录 LAMP 搭建 1:CentOS 7, lamp (module): http + php + phpMyAdmin + wordpress 192.168.1.7 配置虚拟主机 xcache ...
- build path导入的jar失效导致找不到类
今天碰到一个很奇葩的问题,搞起我以后都不敢 build path到jar了 所以我就全部放到lib目录下了,因为之前使用build path导入的jar失效了,一直找不类,具体原因我也不清楚,我之前的 ...
- 小程序wafer2操作数据库
小程序操作数据库 //小程序控制台phpmyadmin里给数据库cAuth添加表 //controllers/hello.js const { mysql } = require('../qcloud ...