程序核心如下: System.Diagnostics.ProcessStartInfo FilestartInfo = new System.Diagnostics.ProcessStartInfo(tool);
FilestartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
FilestartInfo.Arguments = " " + vFileName + " -o " + flv_file + " -of lavf -lavfopts i_certify_that_my_video_stream_does_not_use_b_frames -oac mp3lame -lameopts abr:br=56 -ovc lavc -lavcopts vcodec=flv:vbitrate=200:mbd=2:mv0:trell:v4mv:cbp:last_pred=1:dia=-1:cmp=0:vb_strategy=1 -vf scale=" + widthOfFile + ":" +heightOfFile + " -ofps 12 -srate 22050";
try
{
System.Diagnostics.Process.Start(FilestartInfo);
//需要延时或是什么的吗?
}
catch
{
return "";
} 我用上面程序做转换的时候,RM和RMVB的格式老是转换失败!不知道是怎么搞的,转换后的FLV文件老是显示0KB,打开也没内容.但是在做了大量实验后有一个RMVB的文件又能转换成功,头疼.所以我怀疑是我下的MENCODER.EXE有问题.但是感觉又不是.是不是需要延时呢?还是需要什么来的.希望遇到过的朋友帮我看看.谢
FilestartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
FilestartInfo.Arguments = " " + vFileName + " -o " + flv_file + " -of lavf -lavfopts i_certify_that_my_video_stream_does_not_use_b_frames -oac mp3lame -lameopts abr:br=56 -ovc lavc -lavcopts vcodec=flv:vbitrate=200:mbd=2:mv0:trell:v4mv:cbp:last_pred=1:dia=-1:cmp=0:vb_strategy=1 -vf scale=" + widthOfFile + ":" +heightOfFile + " -ofps 12 -srate 22050";
try
{
System.Diagnostics.Process.Start(FilestartInfo);
//需要延时或是什么的吗?
}
catch
{
return "";
} 我用上面程序做转换的时候,RM和RMVB的格式老是转换失败!不知道是怎么搞的,转换后的FLV文件老是显示0KB,打开也没内容.但是在做了大量实验后有一个RMVB的文件又能转换成功,头疼.所以我怀疑是我下的MENCODER.EXE有问题.但是感觉又不是.是不是需要延时呢?还是需要什么来的.希望遇到过的朋友帮我看看.谢
或者你改一下参数:
FilestartInfo.Arguments = " " + vFileName + " -0 " + flv_file + " -of lavf -lavfopts i_certify_that_my_video_stream_does_not_use_b_frames -oac mp3lame -lameopts abr:br=56 -ovc lavc -lavcopts vcodec=flv:vbitrate=500 -vf scale=" + widthOfFile + ":" + heightOfFile + " -ofps 18 -srate 22050";
少了几个参数,我的就可以,不知道你可不可以,试试咯。
如果你还想对flv文件截图的话,那也要暂停程序一下。
暂停:System.Threading.Thread.Sleep(10000);//时间为10秒