2014-04-09 118 views
0

我使用Emgu CV创建视频播放器。它的做工精细,具有体积小视频(< 500KB),但是当我尝试打大尺寸视频(> 20MB的),它表明这个错误大尺寸视频EmguCV

An unhandled exception of type 'System.NullReferenceException' occurred in Emgu.CV.dll 
Additional information: Unable to create capture from E:\Tugas Akhir\wiman\3a.avi 

我在我的项目emgu CV参考,也有opencv_ffmpeg290_64。 DLL和其他opencv DLL在我的项目。 这是代码的原因这个错误路线,

string videodir="E:\Tugas Akhir\wiman\3a.avi"; 
capture = new Capture(@videodir); 

我怎么能解决这个问题?

+0

你确认你在那个位置该文件?我可以打开超过1GB的avi文件,所以尺寸不应该是问题。 –

回答

0

(我意识到这是一个有点老,但我通过它追踪不同的问题来了。)

我相信,如果你在调试器看着你只是具有文件路径和字符转义序列的问题。

线:

string videodir="E:\Tugas Akhir\wiman\3a.avi"; 

需要在下列之一:

string [email protected]"E:\Tugas Akhir\wiman\3a.avi"; 

string videodir="E:\\Tugas Akhir\\wiman\\3a.avi"; 

没有告诉编译器,该斜线将被字面或使用\的转义序列,那么你传递给Capture的是videodir = "E:Tugas Akhirwiman3a.avi"这可能不存在(虽然它是windows中的合法文件路径),如果文件不存在,Capture将抛出一个空异常。

祝你好运!

-1

我有同样的问题,最后我。随着EmguCV在C#中,你需要把opencv_ffmpeg.dll,例如:opencv_ffmpeg2410.dll,要小心,如果你有86或64位