win7 下ffmpeg release 版本崩潰問題

vs2010 win7 下開發視頻服務器,用到ffmpeg,debug版本運行正常,切換到release時,出現"0x00905a4d 處未處理的異常: 0xC0000005: 讀取位置 0x00905a4d 時發生訪問衝突",原以爲是jrtplib得問題,鼓搗半天才發現是ffmpeg. 用一個很小的測試程序驗證,在av_register_all處就崩潰.鳥!
難道是用mingw生成ffmpeg時有調試信息,應用程序用release編譯衝突?
ffmpeg版本老舊,有這個bug?
我編譯的選項不對?
測試排除了上面3個疑問. 那就只有debug和release版本的區別了. 將release的優化選項逐個的剔除測試,找到了問題所在:
連接器->優化->引用 

在release版本下面使用"保留未引用數據(/OPT:NOREF)"選項纔可以正常運行.

google "ffmpeg OPT:NOREF" 發現有人已經發現並解決了這個問題. 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章