解決VC6.0用opencv無法開啟avi檔案的方法

來源:互聯網
上載者:User

 

      剛開始接觸OpenCV,開始用的是1.0版本,支援VC6.0,如果想瞭解opencv1.0如何在VC6.0下配置,可以看一下我的另一篇文章----VC6.0下配置OpenCV1.0,都是自己一步一個腳印走過來的,絕對可靠!

    

     opencv1.0似乎只能開啟avi格式的視頻檔案,而且對avi格式的視頻檔案也有嚴格的編碼要求,這可能是opencv1.0的一個小小的缺陷,呵呵……

      在用VC6.0編譯執行opencv利用cvCreateFileCapture()開啟i視頻檔案的時候,語句如下;

      CvCapture* capture =cvCreateFileCapture("2.avi"); debug時候可以看到 capture 傳回值一直是NULL ,運行時會一閃而過,無法播放視頻。在這裡我可以告訴你程式一般沒問題,主要原因是你的電腦裡面因為沒有相應的解碼器。所以無法識別AVI視頻!(你會說你的播放器為什麼可以播放,我可以問問你,你的播放器和你的電腦有個毛關係??你的播放器的解碼外掛程式在它自己的檔案裡,你能讓你的windows程式去尋找那些外掛程式嗎?)               

    解決方案:利用ffdshow  軟體下載安裝相應的解碼器。

FFDShow 下載與安裝:

ffdshow:

http://sourceforge.net/projects/ffdshow-tryout/files/latest/download

安裝指導:

1、安裝時候,一定要選上“VFW介面”和“VirtualDub”(如果使用VirtualDub來進行格式的轉換,要選擇VirtualDub)

2、安裝完成。進入開始->程式->ffdshow->ffdshow VFW設定,在Decoder選項卡下,選擇轉碼器,使各種視頻格式對應的解碼器沒有被Disable就可以了,之後確定就OK了。

 

到此,你的電腦裡面就有新的血液了……

  現在在試一下,是不是問題迎刃而解了……

 

如果,還沒有解決,那就是你的視頻格式的問題,下載一個VirtualDub或者格式工廠進行格式轉換一下就好啦。

VirtualDub使用方法:

下載VitualDub, (百度去吧,太多了~~) 步驟:

a. File->Open Video File;

 b. Video->Filters->Add->Convert format; 選擇4:2:0 Planar YCbCr (YV12)或者 32-Bit RGB。

c. Save as AVI. 儲存完畢。

格式工廠的話,中文的,那麼容易操作,我都不好意思說怎麼用~~~但是注意選擇好編碼格式,是Xvid 編碼~注意哦!

 

   GOOD LUCK  !!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.