asp.net中使用ffmpeg (上传的视频转换成flv格式,并接一张图片)
2012-04-05 10:16
751 查看
protected void Button1_Click(object sender, EventArgs e) { string FFmpegArguments = @" -i D:\离歌.wmv -ab 56 -ar 22050 -b 500 -r 15 -s 320x240 D:\离歌.flv "; //ProcessStartInfo info = new ProcessStartInfo("D:/ffmpeg/ffmpeg", FFmpegArguments); //Process.Start(info); Process p = new Process(); //Process類有一個StartInfo屬性,這個是ProcessStartInfo類,包括了一些屬性和方法,下面我們用到了他的幾個屬性: p.StartInfo.FileName = "D:/ffmpeg/ffmpeg.exe";//設定程序名 p.StartInfo.Arguments = FFmpegArguments; //設定程式執行參數 p.StartInfo.UseShellExecute = false; //關閉Shell的使用 p.StartInfo.RedirectStandardInput = true; //重定向標準輸入 p.StartInfo.RedirectStandardOutput = true; //重定向標準輸出 p.StartInfo.RedirectStandardError = true; //重定向錯誤輸出 p.StartInfo.CreateNoWindow = true; //設置不顯示窗口 p.Start(); //啟動 //p.StandardInput.WriteLine(FFmpegArguments);//也可以用這種方式輸入要執行的命令 //p.StandardInput.WriteLine("exit"); //不過要記得加上Exit要不然下一行程式執行的時候會當機 } /**//// 视频(avi,mov等等格式)转换为flv格式视频 /// </summary> /// <param name="FromName">被转换的视频文件</param> /// <param name="ExportName">转换flv后的文件名</param> /// <param name="ExportName">视频大小的尺寸</param> /// <returns></returns> public string VideoConvertFlv(string FromName,string ExportName,string WidthAndHeight) { string ffmpeg=@"D:\ffmpeg\ffmpeg.exe"; System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo(ffmpeg); startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden; //startInfo.Arguments = " -i " + Server.MapPath(FromName) + " -ab 56 -ar 22050 -b 500 -r 15 -s "+WidthAndHeight+" "+Server.MapPath (ExportName); startInfo.Arguments = " -i " + FromName + " -ab 56 -ar 22050 -b 500 -r 15 -s " + WidthAndHeight + " " + ExportName; try { System.Diagnostics.Process.Start(startInfo); return ExportName; } catch(Exception err) { return err.Message; } } /**//// <summary> /// 从视频画面中截取一帧画面为图片 /// </summary> /// <param name="VideoName">视频文件pic/guiyu.mov</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=@"C:Inetpubwwwrootdemopic fmpeg.exe"; string PicName =Server.MapPath(Guid.NewGuid().ToString().Replace("-","")+".jpg"); System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo(ffmpeg); startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden; startInfo.Arguments = " -i " + Server.MapPath(VideoName) + " -y -f image2 -ss "+CutTimeFrame+" -t 0.001 -s " + WidthAndHeight + " " + PicName ; try { System.Diagnostics.Process.Start(startInfo); return PicName; } catch(Exception err) { return err.Message; } }
相关文章推荐
- asp.net使用ffmpeg进行视频转换
- C#(asp.net)上传视频转换为flv格式并给视频截图代码
- Asp.net 上传视频时将视频格式转换成.flv格式!!
- ASP.NET上传视频文件同时转换为flv并且抓取第一帧生成图片
- asp.net微信开发第十篇----使用百度编辑器编辑图文消息,上传图片、微信视频
- ASP.NET上传视频文件同时转换为flv并且抓取第一帧生面图片源码分析
- ASP.net 视频上传转换flv并且抓取第一帧生成图片源码
- C#(asp.net)上传视频转换为flv格式并给视频截图代码
- C#(asp.net)上传视频转换为flv格式并给视频截图代码
- input type="file" 上传文件,若是flv格式,则截取保存一张图片asp.net
- ASP.NET z中使用crop实现图片上传、剪裁和保存
- ASP.Net中使用FreeTextBox图片上传功能的修改(点上传直接返回编辑器显示图片)
- 使用ASP.NET上传图片汇总
- asp.net中做视频转换,将各种视频文件转换成.flv格式
- 使用ASP.NET上传图片汇总
- asp.net 使用ckfinder 不弹窗直接上传图片、文件。
- 使用ASP.net(C#)批量上传图片并自动生成缩略图,文字水印图,图片水印图
- ASP.NET下调用ffmpeg与mencoder实现视频转换截屏
- 在asp.net中做视频转换,将各种视频文件转换成.flv格式【转:http://www.cnblogs.com/seebook/archive/2007/09/25/aspnet.html】
- ASP.NET 使用FileUpload控件上传图片并自动生成缩略图