FFmpeg version SVN-r12665, Copyright (c) 2000-2008 Fabrice Bellard, et al. configuration: --enable-gpl --enable-postproc --enable-swscale --enable-avfilter-lavf --enable-pthreads --enable-liba52 --enable-avisynth --enable-libfaac --enable-libfaad --enable-libgsm --enable-memalign-hack --enable-libmp3lame --enable-libnut --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --cpu=i686 --extra-ldflags=-static libavutil version: 49.6.0 libavcodec version: 51.54.0 libavformat version: 52.13.0 libavdevice version: 52.0.0 built on Apr 2 2008 22:35:11, gcc: 4.2.3 [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported audio codec (a) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) [flv @ 00AA6C70]Unsupported video codec (7) Seems stream 0 codec frame rate differs from container frame rate: 1000.00 (1000/1) -> 15.00 (15/1) Input #0, flv, from 'C:\Users\luo_s_000\Desktop\blog\blog\blog\Teacher\playFile\131210165346737.flv': Duration: 00:03:19.5, start: 0.000000, bitrate: N/A Stream #0.0: Video: 0x0007, 15.00 tb(r) Stream #0.1: Audio: 0x000a, 44100 Hz, stereo swScaler: Unknown format is not supported as input pixel format Cannot get resampling context 这是errormsg的错误内容
Unknown format is not supported as input pixel format我传了个flv的格式的,它说未知格式 ,不支持这个格式吗?我没用过你这个ffmpeg.exe 不知道ffmpeg.exe你这个是怎么用法 他支持一些什么呢? 这用这种方式做截图,一但发布到IIS后,是行不通的!有权限问题的
这里catchimg 返回OK吗?
另外你在web中使用 Process pss = new Process();
//设置启动程序的路径
pss.StartInfo.FileName = ffmpeg;
pss.StartInfo.Arguments = " -i " + fileName + " -y -f image2 -ss 2 -vframes 1 -s " + sizeOfImg + " " + imgFile;
//启动进程
pss.Start();
这个Process 还应该注意权限,IIS用户是否对机器上的应用程序有权限!
这个只是用来判断 catchImg有没有出错的。
我是本地VS2010弄的,没有IIS,也不存在权限的问题啊。
{
//获取截图工具路径
string ffmpeg = System.Web.HttpContext.Current.Server.MapPath("../") + ffmpegtool;
Process pss = new Process();
//设置启动程序的路径
pss.StartInfo.FileName = ffmpeg;
pss.StartInfo.Arguments = " -i " + fileName + " -y -f image2 -ss 2 -vframes 1 -s " + sizeOfImg + " " + imgFile;
//启动进程
pss.Start(); string errormsg = pss.StandardError.ReadToEnd();
pss.StandardError.Close(); return true;
}string errormsg = pss.StandardError.ReadToEnd();
pss.StandardError.Close();
加上这个,看看错误信息是什么,Process 执行的错误信息会返回出来的,你之前写法是不会报错的!
行 186: pss.Start();
行 187: string errormsg = pss.StandardError.ReadToEnd();行 188: pss.StandardError.Close();
行 189: return true;
行 186: pss.Start();
行 187: string errormsg = pss.StandardError.ReadToEnd();行 188: pss.StandardError.Close();
行 189: return true;
pss.StartInfo.RedirectStandardError = true;
pss.StartInfo.CreateNoWindow = true;
加上这个吧!你对Process 不太熟吗
pss.Start();
string errormsg = pss.StandardError.ReadToEnd();
pss.StartInfo.RedirectStandardError = true;
pss.StartInfo.CreateNoWindow = false;
pss.StandardError.Close();
return errormsg;结果还是弹出提示框,错误的地方还是一样。StandardError 尚未重定向。行 188: string errormsg = pss.StandardError.ReadToEnd();
StandardError 尚未重定向。行 188: string errormsg = pss.StandardError.ReadToEnd();
这程序是放在服务器端的是吗?如果是它怎么可能运行在客户端去完成截图呢?
Process是可以启动一个进程,但是是在服务器端!
你这个ffmpeg是什么程序方便发我?我给你研究一下,但是我还是说好,你在vs中运行成功,到时发布在IIS,同样可能因为权限问题用不了,你这个想要运行在客户端,完成截图,是不可能的!
string errormsg = pss.StandardError.ReadToEnd();
pss.StartInfo.RedirectStandardError = true;
pss.StartInfo.CreateNoWindow = false;
pss.Start();
pss.StandardError.Close();
return errormsg;换了下顺序,没命令提示符窗口,但是错误依旧。StandardError 尚未重定向。行 188: string errormsg = pss.StandardError.ReadToEnd();
//获取截图工具路径
string ffmpeg = System.Web.HttpContext.Current.Server.MapPath("../") + ffmpegtool;
Process pss = new Process(); proc.StartInfo.UseShellExecute = false;
proc.StartInfo.RedirectStandardInput = true;
proc.StartInfo.RedirectStandardOutput = true;
proc.StartInfo.RedirectStandardError = true;
proc.StartInfo.CreateNoWindow = true;
//设置启动程序的路径
pss.StartInfo.FileName = ffmpeg;
pss.StartInfo.Arguments = " -i " + fileName + " -y -f image2 -ss 2 -vframes 1 -s " + sizeOfImg + " " + imgFile;
//启动进程
pss.Start(); string errormsg = pss.StandardError.ReadToEnd();
pss.StandardError.Close();
弹出上传成功,就是说errormsg是""吧?
是本地VS2010弄的,没传服务器。 string ok = catchImg(Server.MapPath("../" + playFile), Server.MapPath("../" + videoImg));
if (ok!="")
{ Response.Write("<script language=javascript>alert('上传成功');</script>");
this.CheckBox1.Checked = false;
this.CheckBox2.Checked = false;
}
这个是我从一个光盘里面拷出来的,都是VS2008时代的光盘。
你为什么说 弹出上传成功 errormsg就是""
我看你代码只要是没报错都是返回ture啊,所以你为什么说errormsg是“”;
errormsg是把错误信息保存到这里,但整个执行过程中不会抛异常
传参数时,对于路径最好是用双引用括起来,这是命令行常识
pss.StartInfo.Arguments = " -i \"" + fileName + "\" -y -f image2 -ss 2 -vframes 1 -s " + sizeOfImg + " \"" + imgFile + "\"";
我返回了return errormsg;public static string catchImg(string fileName, string imgFile)
{
.
.
return errormsg;
}
还素不行啊,现在根本不知道什么错误,catchimg我有返回errormsg的,但是判断的结果是为空啊,就是没返回了吗?
configuration: --enable-gpl --enable-postproc --enable-swscale --enable-avfilter-lavf --enable-pthreads --enable-liba52 --enable-avisynth --enable-libfaac --enable-libfaad --enable-libgsm --enable-memalign-hack --enable-libmp3lame --enable-libnut --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --cpu=i686 --extra-ldflags=-static
libavutil version: 49.6.0
libavcodec version: 51.54.0
libavformat version: 52.13.0
libavdevice version: 52.0.0
built on Apr 2 2008 22:35:11, gcc: 4.2.3
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported audio codec (a)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
[flv @ 00AA6C70]Unsupported video codec (7)
Seems stream 0 codec frame rate differs from container frame rate: 1000.00 (1000/1) -> 15.00 (15/1)
Input #0, flv, from 'C:\Users\luo_s_000\Desktop\blog\blog\blog\Teacher\playFile\131210165346737.flv':
Duration: 00:03:19.5, start: 0.000000, bitrate: N/A
Stream #0.0: Video: 0x0007, 15.00 tb(r)
Stream #0.1: Audio: 0x000a, 44100 Hz, stereo
swScaler: Unknown format is not supported as input pixel format
Cannot get resampling context
这是errormsg的错误内容
不知道ffmpeg.exe你这个是怎么用法 他支持一些什么呢?
这用这种方式做截图,一但发布到IIS后,是行不通的!有权限问题的
pss.StartInfo.Arguments = " -i " + fileName + " -y -f image2 -ss 2 -vframes 1 -s " + sizeOfImg + " " + imgFile;
//启动进程
pss.Start();红色部分为客户的flv的真实路径 ,到时你发布到IIS 后,你的Process 是运行在服务器端的,所以你命令中的-i 参数不应该是客户端的地址,而是服务端站点下的某地址,另外,你要把ffmpeg.exe这程序设置成允许IIS用户有运行权限!你还可以把应用程序的标识 设置成administrator !
这个ffmpeg.exe是我买的一本书附带的,vs2008时代的。刚才在网上下载了一个也是不行。
看能把图片截到相应文件夹不,如果能成功,代码里也会成功的,前提是在你本机上
看能把图片截到相应文件夹不,如果能成功,代码里也会成功的,前提是在你本机上
额滴天那,我换了一个flv文件可以了。
以前的那些flv都是从优酷上下载的,从优酷视频格式转换过来的FLV. 为什么优酷转换过来的flv会不行呢?
这种不太稳定,不建议你用这个去做视频的图片截取,换换别的办法吧!~
你可以在网上google一下!应该还有别的办法解决视频截图问题!我先下班了,有空帮你找找其它办法
你可以在网上google一下!应该还有别的办法解决视频截图问题!我先下班了,有空帮你找找其它办法好滴,网上基本上就是这种截图办法了,找不到其他的。
暂时没找到其它办法
我再提出我的想法:
第一:还是用ffmpeg.exe来截取,如果截取失败的那种,就显示个默认视频图片
第二:让用户手动截图,再把手动截取的图片当作视频图片传上
第一种方式有要注意的地方就是 你一定要把ffmpeg.exe工具放在站点里,然后用.Server.MapPath("~/ffmpeg.exe");这种方式来访问