Python竟然能剪輯視頻
大傢好,我是辰哥。
辰哥之前就想著Python可不可以剪輯視頻(提取視頻的音頻,視頻截取等等),然後辰哥在網上一搜,還真找到瞭Python的一個處理音頻的庫-MoivePy
MoivePy能幹嘛呢,下面辰哥來給大傢簡單介紹一下。
提取音頻
視頻截取
視頻合並
視頻疊加
添加字幕
追蹤人臉,打馬賽克
炫酷的特效
陰影效果
…….
01提取音頻
平時我們在刷短視頻或者看到一些視頻的時候(視頻裡才有,網上搜不到這種剪輯的音頻時),希望能夠把視頻裡面的音頻提取出來當背景音樂或者想平時聽聽但是不想打開視頻時。
那麼辰哥就用python教大傢如何去提取一個視頻裡面的音頻。
在開始之前,先把Moivepy庫安裝一下,通過下面的命令即可安裝
pip install moviepy
安裝好之後,接著咱們就開始對視頻進行處理瞭。
from moviepy.editor import * video = VideoFileClip('七次人口普查.mp4') audio = video.audio audio.write_audiofile('七次人口普查.mp3')
這裡以視頻:七次人口普查.mp4為例,這個視頻是辰哥之前錄制的一個視頻
提取好的音頻保存為:七次人口普查.mp3
打開音頻,音質和視頻中的音質一模一樣(完美提取成功)
02截取視頻
此外還可以將視頻進行截取。截圖的視頻不僅可以是保存成視頻,還可以將截取的視頻保存為gif格式
1.截取後保存為視頻
同樣還是以視頻:七次人口普查.mp4為例(視頻一共是38秒),咱們從截取其中的一段(第5s~第25s)20秒。
video = VideoFileClip('七次人口普查.mp4') # 剪輯這個clip 的5s-25s,保存mp4 video2 = video.subclip(5, 25) video2.write_videofile("七次人口普查5_25.mp4")
截取後的視頻保存為:七次人口普查5_25.mp4
運行結束之後,視頻就已經保存到本地(同時視頻中的音頻也對應的保存過來)
最終效果:
打開之後,沒問題,成功截取。
2.截取後保存為gif
接著將截取的視頻保存成gif格式
video = VideoFileClip('七次人口普查.mp4') # 剪輯這個clip 的5s-25s,保存mp4 video2 = video.subclip(5, 25) video2.write_gif("七次人口普查5_25.gif",fps=16)
代碼中的fps是幀率,這裡設置為16,fps越大,gif越清晰,同時gif也會越大。(這裡設置瞭16,已經較為清晰瞭)
截取後的視頻保存gif:七次人口普查5_25.gif
打開後如下:
03視頻合並
除瞭對視頻截取外,還可以將多個視頻進行合並。
video1 = VideoFileClip('七次人口普查.mp4') video2 = VideoFileClip("七次人口普查5_25.mp4") video3 = concatenate_videoclips([video1, video2]) video3.write_videofile("七次人口普查_合並.mp4")
視頻:七次人口普查.mp4原視頻(38秒),視頻:七次人口普查5_25.mp4上面案例截取的視頻(20秒),最後合並成:七次人口普查_合並.mp4。
ps:上面代碼隻是演示合並兩個視頻,實際是可以合並多個的
原視頻:
最終合並視頻:
04視頻疊加
通常在電影中都可以看到視頻中分塊的部分不同的畫面。這用瞭視頻疊加的效果。接下來辰哥教大傢如何用Python去實現。
video1 = VideoFileClip("七次人口普查.mp4").margin(10) video2 = video1.fx(vfx.mirror_x) # x軸鏡像 video3 = video1.fx(vfx.mirror_y) # y軸鏡像 video4 = video1.resize(0.8) # 尺寸等比縮放0.8 newvideo = clips_array([ [video1, video2], [video3, video4] ]) newvideo.resize(width=480).write_videofile("七次人口普查_疊加.mp4")
這裡主要是以視頻:七次人口普查.mp4為例,弄成四方塊的樣式進行疊加。最候保存成:七次人口普查_疊加.mp4。
最終效果:
05小結
ok,辰哥就介紹以上這四種剪輯視頻的方法,此外還有很多方法。比如:
添加字幕
追蹤人臉,打馬賽克
炫酷的特效
陰影效果
…………
這裡辰哥就不一一演示瞭,感興趣的小夥伴可以去搜索moviepy的文檔教程進行學習。
以上就是哇哦 Python竟然能剪輯視頻的詳細內容,更多關於Python剪輯視頻的資料請關註WalkonNet其它相關文章!
推薦閱讀:
- python用moviepy對視頻進行簡單的處理
- Python多個MP4合成視頻的實現方法
- python編程簡單幾行代碼實現視頻轉換Gif示例
- Python輕松搞定視頻剪輯重復性工作問題
- python基於moviepy實現音視頻剪輯