三行代码,教你在python中将MP4转化为GIF,这不完胜迅捷视频转化器?
對于經常發博文的人來說,GIF會使你的博文更完美,特別是運行程序時,如果有GIF展示,會使得結果十分直觀。網上雖然有將MP4轉為GIF的網站和app,但是都比較麻煩,還不如自己寫個三行代碼,今天我試了一下迅捷視頻轉化器,雖然其中有許多功能,但是,但是這些功能的完美實現幾乎是建立在VIP客戶上,對于我這樣的白嫖黨來說屬實不實在。
對于迅捷視頻轉化器的MP4轉GIF功能,非VIP客戶使用該功能生成的GIF不僅有水印(這在意料之中),意料之外的是水印在畫面正中央,而且還不小(如下圖)。這屬實太丑了。
?所以這還不如自己花個幾分鐘寫3行代碼!!!下面步入正題
目錄
一、模塊安裝
?二、代碼展示及講解
三、結果展示
?四、總結
一、模塊安裝
這里我采用的是pycharm中安裝該模塊,大家也可以用pip install moviepy進行安裝
tips:1-2 file---settings,3-6如下圖,然后等待一會就可以使用moviepy模塊了
?二、代碼展示及講解
import moviepy.editor as mpe GIF = mpe.VideoFileClip(r"C:\Users\knighthood\OneDrive\桌面\QQ視頻20210907122402.mp4") # 打印MP4的fps,值為30 print(GIF.fps) # 剪輯MP4的1-10秒,這會保存fps GIF.subclip(1, 10) # 將它保存為GIF格式,且將其fps設為2 GIF.write_gif(".\操作2.gif", fps=2)①moviepy是一個包,由于只使用視頻轉gif,相關功能在editor模塊內,因此導入使用指令:
import moviepy.editor as mpe
②VideoFileClip就是從視頻文件(支持大部分視頻格式)或者GIF格式文件讀取生成的clip。
通俗的講,該方法就是構造一個VideoFileClip對象,這個對象就是視頻的內容,可以通過該對象對視頻進行剪輯、轉換格式等具體操作
③fps參數是指 生成GIF每秒抽取的幀數,這個數字越大,同樣視頻生成的gif文件就越大,所以需要有所取舍。一般原MP4的fps為30。由于csdn中放的圖片不能超過5M,所以一般將生成的GIF的fps設置在2-5之間。
④subclip(start, end),這是截取視頻的方法,通過設置截取的開頭時間和結尾時間。它的返回值還是一個VideoFileClip對象。
⑤將視頻導出為一個GIF動畫,并設置導出的GIF的fps
以上雖然只有短短幾行代碼,就將MP4轉GIF給輕松解決了,這不完勝某視頻轉化器?
三、結果展示
?它還會顯示轉化進度,非常人性化
?四、總結
這只是簡單實現了將MP4轉化為GIF的功能,你也可以查看一下下面的網址
https://zulko.github.io/moviepy/
之后如果感興趣的話可以將它做成交互式的頁面,會更加方便。
如果覺得對你有幫助的話,麻煩給個贊!!!
總結
以上是生活随笔為你收集整理的三行代码,教你在python中将MP4转化为GIF,这不完胜迅捷视频转化器?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: React开发(262):react中活
- 下一篇: python做社会网络分析_利用GooS