python+opencv使用VideoWriter保存攝像頭視頻,保存文件0字節

背景

研究python+opencv,使用VideoWriter保存攝像頭視頻時,jupyter notebook開發代碼,在開發環境時,可以創建視頻文件並正常保存視頻流,但是通過pyinstaller編譯打包成exe後,不能創建視頻文件,或者創建了視頻文件,但是不能保存視頻流,視頻文件顯示0字節。

網上查詢了很多都是強調視頻編碼格式不對,也就是

cv2.VideoWriter_fourcc('X','V','I','D')  #DIVX,XVID,MJPG,X264,WMV1,WMV2。

也許有些人的問題出現在這裏,試試其他的編碼格式,就可以解決問題。

但是我將各種格式試了個遍,都不能解決問題,網上幾乎沒有再搜到有用的東東。

 

解決靈感以及方案

就這樣折騰了2天,一天吃飯的時候突然有個靈感,想到曾經看opencv的文檔時,提到有個基礎庫(暫且這麼稱呼)opencv_ffmpeg,然後在opencv的目錄下搜了下果然有這個文件(opencv_videoio_ffmpeg420,不同版本名字可能不用),然後搜了下pyinstaller編譯成exe的目錄dist下應用程序文件夾(此時需要通過pyinstaller -D xxx.py  編譯),沒有此文件,那麼很顯然缺少文件,將此文件複製到應用程序下面cv2文件夾下,運行exe,應用正常創建文件並寫入了視頻。

親,如果您覺得本文不錯,願意給我一些動力的話,請用手機掃描二維碼即可向我打賞

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章