moviepy音視頻剪輯VideoClip類fl_image方法image_func報錯ValueError: assignment destination is read-only解決辦法


☞ ░ 前往老猿Python博文目錄

moviepy音視頻剪輯模塊的視頻剪輯基類VideoClip的fl_image方法用於進行對剪輯幀數據進行變換。 調用語法:fl_image(self, image_func, apply_to=None)

其中參數image_func用於對幀數據進行變換,可以調用moviepy提供的相關方法,也可以自己實現,但自己實現時可能在運行時報錯:ValueError: assignment destination is read-only

這是因為image_func參數對應的幀數組是只讀的,不能修改,實際上get_frame(t)返回的所有幀數組都是只讀的。幀的類型為numpy.ndarray,而numpy.ndarray直接定義的數據是可修改的,為什么幀數據不能修改筆者暫時還沒弄明白(報錯ValueError: assignment destination is read-only),為了規避該問題,將參數img數據采用如下形式的賦值語句:frame= np.array(img)就可以對新的變量frame進行修改,所有變換可以針對新變量frame進行,返回也必須是新變量frame。

更多關於VideoClip的屬性和方法請參考《moviepy音視頻剪輯:視頻剪輯基類VideoClip的屬性及方法詳解》(免費文章)或《moviepy音視頻剪輯:視頻剪輯基類VideoClip詳解》(付費專欄文章,但內容更全、案例更多)。

更多moviepy的介紹請參考《PyQt+moviepy音視頻剪輯實戰文章目錄》或《moviepy音視頻開發專欄》。

關於收費專欄

老猿的付費專欄《使用PyQt開發圖形界面Python應用》專門介紹基於Python的PyQt圖形界面開發基礎教程,付費專欄《moviepy音視頻開發專欄》詳細介紹moviepy音視頻剪輯合成處理的類相關方法及使用相關方法進行相關剪輯合成場景的處理,兩個專欄加起來只需要19.9元,都適合有一定Python基礎但無相關專利知識的小白讀者學習。

對於缺乏Python基礎的同仁,可以通過老猿的免費專欄《專欄:Python基礎教程目錄》從零開始學習Python。

如果有興趣也願意支持老猿的讀者,歡迎購買付費專欄。

跟老猿學Python、學5G!

☞ ░ 前往老猿Python博文目錄


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM