python 玩玩樂 - moviepy 剪輯視頻變成 gif 圖

python 的一些有趣的操作,還有解決 RuntimeError: No ffmpeg exe could be found. 的問題

此篇來源於被迫營業,但是我很開心

目錄

前置需要 提示:安裝 moviepy 的坑

猹這裏依然是在 linux 服務器中進行的操作

  1. 首先你得安裝 python 吧,我這裏用的還是 python3
  2. 然後你需要 pip 用來安裝第三方庫
  3. 前兩步不會的話看看猹的其他文章獲取靈感吖

最後要安裝第三方庫 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)
  1. 這裏我們只需要使用包裏 VideoFileClip 這個類
  2. 先使用視頻生成一個視頻切片 Movie Clips
  3. 設置截取的視頻片段,示例中是截取了 0 分 2 秒 ~ 0 分 18 秒 中間的視頻,並使用 .resize() 方法重新設定了視頻的分辨率
  4. 由於我錄 的視頻有一些多餘的部分,因此我使用 .crop() 方法對所有切片都選取了 x = 20 ~ 400; y = 0 ~ 200; 的畫面
  5. 最後使用 .write_gif() 這個方法處理過的視頻切片導出成一個 gif 圖片

我是運行了 十四學長的一個有趣的程序 之後錄了一下運行結果,挺有意思的大家可以去康康
在這裏插入圖片描述

參考文章

基於python的moviepy包
python小應用之moviepy的視頻剪輯製作gif圖

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