问题描述
- 求助!在cmd中运行ffmped可以输出flv文件,在.net中调用却不能输出,代码如下
- public static bool changeVideoType(string fileName string playFile)
{
//获取视频转换工具的路径
string ffmpeg = System.Web.HttpContext.Current.Server.MapPath(""../"") + ffmpegtool;
//获取需要转换的视频路径
string Name = System.Web.HttpContext.Current.Server.MapPath(""../"") + upFile + ""/"" + fileName;
if ((!System.IO.File.Exists(ffmpeg)) || (!System.IO.File.Exists(Name)))
{
return false;
}
//获取视频转换后需要保存的路径
string flv_file = playFile;
//创建Process对象
System.Diagnostics.Process pss = new System.Diagnostics.Process();
//不显示窗口
pss.StartInfo.CreateNoWindow = true;//设置启动程序的路径
pss.StartInfo.FileName = ffmpeg;
pss.StartInfo.WorkingDirectory = System.Web.HttpContext.Current.Server.MapPath(""../"")+""tool/"";
//设置执行的参数
pss.StartInfo.Arguments = "" -i "" + Name + ""-ab 128 -ar 22050 -qscale 6 -r 29.97 -s "" + widthOfFile + ""x"" + heightOfFile + "" "" + flv_file;
pss.StartInfo.UseShellExecute = false;
pss.StartInfo.RedirectStandardError = true;
pss.StartInfo.RedirectStandardInput = true;
pss.StartInfo.RedirectStandardOutput = true;try { //启动转换工具 pss.Start(); while (!pss.HasExited) { continue; } return true; } catch { return false; }}
解决方案
检查路径、权限等问题
时间: 2024-09-23 17:55:27