如题,在asp.net(C#)中。。怎么知道一个视频已经转换完成了呢,我的代码大致如下:
System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo(pathexe);
startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
startInfo.Arguments = " -i " + uplj + name + " -ab 56 -ar 22050 -b 500 -r 15 -s 320x240 " + mvlj + name + ".flv";
System.Diagnostics.Process.Start(startInfo);
是不是在转换的时候有什么返回值啊??
各位大虾帮帮忙了!!!
System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo(pathexe);
startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
startInfo.Arguments = " -i " + uplj + name + " -ab 56 -ar 22050 -b 500 -r 15 -s 320x240 " + mvlj + name + ".flv";
System.Diagnostics.Process.Start(startInfo);
是不是在转换的时候有什么返回值啊??
各位大虾帮帮忙了!!!
p.StartInfo = startInfo;
p.Start();int e = p.WaitForExit("最大转换时间");
e为进程的退出代码.通过判断e的值是否为0和非0 可以判断ffmpeg是否截图成功. 楼主在做视频网站吧. 呵呵
试试。。看,
呵。没办法啊。。老大要弄。。以前也没学过这个
还有就是e不能声名。。这样会有不同含义
int pCode = p.ExitCode;
即可了转换rm的话 你用mencoder 可以直接转flv ffmpeg支持的他都支持 对wmv/rm也支持
这是什么原因!
我是这样写的不知道对不对。麻烦flaigd了
System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo(pathexe);
startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
startInfo.Arguments = " -i " + uplj +"qq.wmv -ab 56 -ar 22050 -b 500 -r 15 -s 320x240 " + mvlj+"qq.flv 2>&1";
System.Diagnostics.Process.Start(startInfo);
//Response.Write(outputArr);
System.Diagnostics.Process p = new System.Diagnostics.Process();
p.StartInfo = startInfo;
p.Start();
int pCode = p.WaitForExit(500000);
int pCode = p.ExitCode;
if (pCode == 0)
{
Response.Write("up_index.htm");
}
呵呵。谢谢flaigd
可惜的是没法弄出时间来不能不说是一个遗憾不知道哪位大虾有这方面的资料。
忘了说了。。(int)这个用不了。
我把他写成这样就可以了
int pCode = Convert.ToInt32(p.WaitForExit(99999999));再次谢谢flaigd