python 的一些有趣的操作,還有解決 RuntimeError: No ffmpeg exe could be found. 的問題
此篇來源於被迫營業,但是我很開心
目錄
前置需要 提示:安裝 moviepy 的坑
猹這裏依然是在 linux 服務器中進行的操作
- 首先你得安裝
python
吧,我這裏用的還是python3
- 然後你需要
pip
用來安裝第三方庫 - 前兩步不會的話看看猹的其他文章獲取靈感吖
最後要安裝第三方庫 moviepy
用於剪輯視頻
pip install moviepy
然而當你導包的時候會有缺少這個東西的提示。。。
import moviepy.editor
然而答案 不是 重裝 moviepy !也 不是 重裝 imageio_ffmpeg !更不是降版本啥的 都 沒 用 !
也有見到有人說需要 玄學上網 不過我感覺沒安裝什麼安裝不了的東西,主要是沒安裝這個軟件 ⬇ ⬇ ⬇
錯誤報告都提示了:No ffmpeg exe could be found.
爲什麼百度出來的都沒有說讓安裝這個軟件的= =哭了
apt install ffmpeg
那麼安裝完這個軟件以後,一運行,沒問題了。我估計這是個視頻圖形處理什麼的比較常用的庫,大部分系統可能都自帶了,因爲我這個 debian 是官方下載的,而且安裝的時候除了 ssh 服務什麼都沒預裝 ~ 不然就像這次,說不定要少了解不少東西呢嘿嘿【吐舌頭
錄製視頻
很多做過視頻或者 up 主的同學可能知道不少軟件,obs 真好用但是配置起來太麻煩了
日常臨時錄製一小段視頻的話,這裏給大家推薦一個輕量化操作簡單的錄屏軟件
FSCapture
這個軟件好像有免費版,有一些限制(水印?)還是什麼的,自己用的話可以去網上找找資源,有錢了記得還是要支持正版吖。
官方英文,不過不要怕,界面很簡單,隨便查幾個單詞就能搞懂用法了
寫程序
有一說一,程序很簡單,就是安裝那個第三方庫給我整的難受半天。
這個 VideoFileClip
貌似支持大部分的視頻格式,包括我都沒用過的,然而一上來就不支持 .wmv
/笑哭
所以格式工廠轉 .mp4
再開始整活
# 習慣性的設置編碼,以及把主要程序寫在一個判斷主文件的 if 裏,看不慣的同學見諒哈,主要是我不加自己看着難受=w=
#-*- coding:utf-8 -*-
from moviepy.editor import VideoFileClip
if __name__ == '__main__':
mc = VideoFileClip('./movies/test.mp4')
mc = mc.subclip((0, 2), (0, 18)).resize((480, 320))
mc = mc.crop(20, 0, 440, 200)
mc.write_gif('./pika.gif', fps = 2)
- 這裏我們只需要使用包裏
VideoFileClip
這個類 - 先使用視頻生成一個視頻切片
Movie Clips
- 設置截取的視頻片段,示例中是截取了
0 分 2 秒 ~ 0 分 18 秒
中間的視頻,並使用.resize()
方法重新設定了視頻的分辨率 - 由於我錄 的視頻有一些多餘的部分,因此我使用
.crop()
方法對所有切片都選取了x = 20 ~ 400; y = 0 ~ 200;
的畫面 - 最後使用
.write_gif()
這個方法處理過的視頻切片導出成一個 gif 圖片
我是運行了 十四學長的一個有趣的程序 之後錄了一下運行結果,挺有意思的大家可以去康康