亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python?moviepy?的用法入門篇

 更新時間:2022年02月22日 10:10:11   作者:夢想橡皮擦  
MoviePy(全套文件)是一個用于視頻編輯Python庫:切割、拼接、標題插入,視頻合成(即非線性編輯),視頻處理和自定義效果的創(chuàng)造,本文給大家介紹python?moviepy?的用法詳解,感興趣的朋友跟隨小編一起看看吧

python 中的視頻處理模塊,有一個叫做 moviepy,今天我們就來嘮嘮它。

模塊安裝使用如下命令即可

pip install moviepy

接下來完成第一個 Demo,為后續(xù)學習提高信心,截取視頻中的一段。

截取視頻

下述代碼重點使用的是 subclip 方法,但需要提前聲明一個 VideoFileClip 對象, VideoFileClip 類的構造函數(shù)在代碼后進行說明。

from moviepy.editor import *
import time
clip = VideoFileClip('./1644974996.mp4').subclip(10, 20)
new_file = str(int(time.time())) + '_subclip.mp4'
clip.write_videofile(new_file)

代碼運行結果如下所示:

在這里插入圖片描述

subclip(t_start,t_end) 方法中的時間參數(shù)可以用 (t_start=10) ,以秒的時間來表示,也可以用 (t_start=(1,20)) ,以1分20秒的形式來表示,還可以 (t_start=(0,1,20)) 或者 (t_start=(00:01:20)) , 以小時: 分鐘: 秒的形式表示, t_end 的默認值就是視頻的長度

VideoFileClip 類的構造函數(shù)如下所示:

__init__(self, filename, has_mask=False,
	audio=True, audio_buffersize=200000,
	target_resolution=None, resize_algorithm='bicubic',
	audio_fps=44100, audio_nbytes=2, verbose=False,
	fps_source='tbr')

其中只有 filename 為必填項,其余都為選填內容。

  • filename:視頻文件名,一般常見格式都支持;
  • has_mask:是否包含遮罩;
  • audio:是否加載音頻;
  • audio_buffersize:音頻緩沖區(qū)大?。?/li>
  • target_resolution:加載后需要變換到的分辨率;
  • resize_algorithm:調整分辨率的算法,默認是 bicubic,可以設置為 bilinear,fast_bilinear
  • audio_fps:聲音的采樣頻率;
  • audio_nbytes:采樣的位數(shù);
  • verbose:是否輸出處理信息。

subclip(t1,t2) 方法的含義為截取t1到t2時間段內的片段。
write_videofile() 方法用于視頻輸出。

提取A視頻的音頻,注入到B視頻中

from moviepy.editor import *

# 讀取2個視頻文件 
videoclip_a = VideoFileClip("1644974996.mp4")
videoclip_b = VideoFileClip("1644974998.mp4")
# 提取A視頻文件的音頻部分
audio_a = videoclip_a.audio
# 給B設置音頻,注意視頻最終合成的大小會依據(jù)長的為準
videoclip_c = videoclip_b.set_audio(audio_a)
# 輸出新的視頻文件
videoclip_c.write_videofile("videoclip_c.mp4")

使用 VideoFileClip 對象的 audio 屬性,可以獲取視頻的音頻部分,然后調用 set_audio() 方法對文件進行音頻設置,這里要注意一點,合成的音頻和視頻等于長度的。

去掉視頻聲音

from moviepy.editor import *

video = VideoFileClip('1644974996.mp4')
video = video.without_audio()
video.write_videofile('cc.mp4')

without_audio() 方法見名知意 - 去除聲音。

獲取視頻信息

視頻的分辨率和時間可以直接通過屬性讀取

from moviepy.editor import *

video = VideoFileClip('1644974996.mp4')
print(dir(video))
print(video.size) # 獲取分辨率
print(video.duration) # 獲取視頻總時長

獲取文件大小就比較簡單了,使用 os 模塊的 os.path.getsize() 方法即可,得到的是字節(jié)大小。

from moviepy.editor import *

video = VideoFileClip('1644974996.mp4')
size = os.path.getsize('1644974996.mp4')
print(size)

設置視頻倍速播放

讀取視頻,調用 speedx() 方法,其中設置要加速到的倍數(shù)。

from moviepy.editor import *
clip = VideoFileClip('./1644974996.mp4')

video_1 = clip.speedx(2)
video_1.write_videofile('sss.mp4')

截取視頻封面

很多時候我們需要生成視頻的封面,直接使用下述幾行代碼,即可實現(xiàn)。

from moviepy.editor import *

clip = VideoFileClip('./1644974996.mp4')
clip.save_frame("frame.jpg")  # 保存第1幀
clip.save_frame("frame.png", t=2)  # 保存2s時刻的那1幀

提取視頻中的音頻內容

如果想要把目標視頻中的某段音頻截取出來,可以使用如下代碼

from moviepy.editor import *

clip = VideoFileClip('./1644974996.mp4').subclip(10, 20)
audioclip1 = clip.audio  # 從視頻對象中提取音頻
audioclip1.write_audiofile('a.mp3')  # 寫入音頻文件

截取視頻中的一段,將其保存為 gif

from moviepy.editor import *

clip = VideoFileClip('./1644974996.mp4').subclip(10, 20)
# clip.write_gif('demo.gif',fps=15) # 生成之后的文件大
clip.write_gif('demo.gif',fps=5) # 生成之后的文件小

寫在后面

到這里,相信你能順著這個思路去學習 moviepy 更多的高級用法啦。

到此這篇關于python moviepy 的用法入門篇的文章就介紹到這了,更多相關python moviepy用法內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • python之django母板頁面的使用

    python之django母板頁面的使用

    這篇文章主要介紹了python之django母板頁面的使用,母版頁用于處理html頁面相同部分內容,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • python獲取對象信息的實例詳解

    python獲取對象信息的實例詳解

    在本篇文章和里小編給大家整理的是一篇關于python獲取對象信息的實例詳解內容,有興趣的朋友們可以學習參考下。
    2021-07-07
  • 用Python代碼來解圖片迷宮的方法整理

    用Python代碼來解圖片迷宮的方法整理

    這篇文章主要介紹了用Python代碼來解圖片迷宮的方法整理,本文精選了StackOverflow相關人氣問題上的幾個回答,需要的朋友可以參考下
    2015-04-04
  • Python如何實用File文件的實現(xiàn)

    Python如何實用File文件的實現(xiàn)

    本文主要介紹了Python如何實用File文件的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-02-02
  • 從運行效率與開發(fā)效率比較Python和C++

    從運行效率與開發(fā)效率比較Python和C++

    今天小編就為大家分享一篇關于從運行效率與開發(fā)效率比較Python和C++,小編覺得內容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-12-12
  • python詞云庫wordCloud使用方法詳解(解決中文亂碼)

    python詞云庫wordCloud使用方法詳解(解決中文亂碼)

    這篇文章主要介紹了python詞云庫wordCloud使用方法詳解(解決中文亂碼),需要的朋友可以參考下
    2020-02-02
  • 利用python生成照片墻的示例代碼

    利用python生成照片墻的示例代碼

    這篇文章主要介紹了利用python生成照片墻的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-04-04
  • Python 列表排序詳解

    Python 列表排序詳解

    這篇文章主要介紹了Python中對列表排序實例,本文給出了9個List的排序實例,需要的朋友可以參考下,希望能夠給你帶來幫助
    2021-10-10
  • python中的decorator的作用詳解

    python中的decorator的作用詳解

    這篇文章主要介紹了python中的decorator的作用詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • python如何發(fā)送xml格式請求數(shù)據(jù)

    python如何發(fā)送xml格式請求數(shù)據(jù)

    這篇文章主要介紹了python如何發(fā)送xml格式請求數(shù)據(jù)問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06

最新評論