成都創(chuàng)新互聯(lián)公司專(zhuān)注為客戶(hù)提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、崇信網(wǎng)絡(luò)推廣、微信小程序開(kāi)發(fā)、崇信網(wǎng)絡(luò)營(yíng)銷(xiāo)、崇信企業(yè)策劃、崇信品牌公關(guān)、搜索引擎seo、人物專(zhuān)訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);成都創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供崇信建站搭建服務(wù),24小時(shí)服務(wù)熱線:18980820575,官方網(wǎng)址:chinadenli.net
【閱讀全文】
實(shí)現(xiàn)的思路:將準(zhǔn)備好的圖片通過(guò)opencv讀取出來(lái),并將其設(shè)置好幀數(shù)等參數(shù)后合成為無(wú)聲視頻。
最后通過(guò)moviepy編輯視頻將背景音樂(lè)加入到視頻中。
開(kāi)始之前還是需要說(shuō)明一下非標(biāo)準(zhǔn)庫(kù)的來(lái)源,因?yàn)橛行?kù)的名稱(chēng)和需要導(dǎo)入模塊的名稱(chēng)不一定就是一樣的。
import os # python標(biāo)準(zhǔn)庫(kù),不需要安裝,用于系統(tǒng)文件操作相關(guān)
import cv2 # python非標(biāo)準(zhǔn)庫(kù),pip install opencv-python 多媒體處理
from PIL import Image # python非標(biāo)準(zhǔn)庫(kù),pip install pillow,圖像處理
import moviepy.editor as mov # python非標(biāo)準(zhǔn)庫(kù),pip install moviepy,多媒體編輯
要使用到什么模塊已經(jīng)敘述了,若是沒(méi)有的話安裝一下就可以了。接下來(lái)第一步就是將圖片素材準(zhǔn)備好來(lái)編寫(xiě)如何將圖片轉(zhuǎn)換成視頻。
def image_to_video(image_path, media_path):
'''
圖片合成視頻函數(shù)
:param image_path: 圖片路徑
:param media_path: 合成視頻保存路徑
:return:
'''
# 獲取圖片路徑下面的所有圖片名稱(chēng)
image_names = os.listdir(image_path)
# 對(duì)提取到的圖片名稱(chēng)進(jìn)行排序
image_names.sort(key=lambda n: int(n[:-4]))
# 設(shè)置寫(xiě)入格式
fourcc = cv2.VideoWriter_fourcc('M', 'P', '4', 'V')
# 設(shè)置每秒幀數(shù)
fps = 2 # 由于圖片數(shù)目較少,這里設(shè)置的幀數(shù)比較低
# 讀取第一個(gè)圖片獲取大小尺寸,因?yàn)樾枰D(zhuǎn)換成視頻的圖片大小尺寸是一樣的
image = Image.open(image_path + image_names[0])
# 初始化媒體寫(xiě)入對(duì)象
media_writer = cv2.VideoWriter(media_path, fourcc, fps, image.size)
# 遍歷圖片,將每張圖片加入視頻當(dāng)中
for image_name in image_names:
im = cv2.imread(os.path.join(image_path, image_name))
media_writer.write(im)
print(image_name, '合并完成!')
# 釋放媒體寫(xiě)入對(duì)象
media_writer.release()
print('無(wú)聲視頻寫(xiě)入完成!')
向合成后的無(wú)聲視頻中添加背景音樂(lè),背景音樂(lè)可以選擇從另外一段視頻中提取音頻。最后將提取到的音頻文件添加到該無(wú)聲視頻中。
def set_music():
'''
合成視頻設(shè)置背景音樂(lè)函數(shù)
:return:
'''
print('開(kāi)始添加背景音樂(lè)!')
# 初始化視頻文件對(duì)象
clip = mov.VideoFileClip('./media.mp4')
# 從某個(gè)視頻中提取一段背景音樂(lè)
audio = mov.AudioFileClip('./source.mp4').subclip(0, 83)
# 將背景音樂(lè)寫(xiě)入.mp3文件
audio.write_audiofile('./background.mp3')
# 向合成好的無(wú)聲視頻中添加背景音樂(lè)
clip = clip.set_audio(audio)
# 保存視頻
clip.write_videofile('./media.mp4')
print('背景音樂(lè)添加完成!')
# image_to_video('./images/', './media.mp4')
set_music()
上述代碼塊已經(jīng)過(guò)素材完成測(cè)試,運(yùn)行沒(méi)有任何報(bào)錯(cuò)直接copy使用即可。
最后,分享一下我從視頻中提取出來(lái)的輕音樂(lè)聽(tīng)起來(lái)還挺好聽(tīng)。
background.mp3
【往期精彩】
如何實(shí)現(xiàn)根據(jù)照片獲取地理位置及如何防御照片泄漏地理位置!
python如何實(shí)現(xiàn)網(wǎng)絡(luò)測(cè)試,了解一下speedtest-cli...
模型已經(jīng)寫(xiě)好了,怎么表白就看你的了!
又是櫻花盛開(kāi)的季節(jié),使用小烏龜來(lái)畫(huà)一顆櫻花樹(shù)吧!
Python 讀取PDF文件為文本字符并轉(zhuǎn)換為音頻...
python 獲取最新房?jī)r(jià)信息-以北京房?jī)r(jià)為例
辦公自動(dòng)化:Image圖片轉(zhuǎn)換成PDF文檔存儲(chǔ)...
python做一個(gè)微型美顏圖片處理器,十行代碼即可完成...
用python做一個(gè)文本翻譯器,自動(dòng)將中文翻譯成英文,超方便的!
python 表情包下載器,輕松下載上萬(wàn)個(gè)表情包、斗圖不用愁...
小王,給這2000個(gè)客戶(hù)發(fā)一下節(jié)日祝福的郵件...
python 一行命令開(kāi)啟網(wǎng)絡(luò)間的文件共享...
網(wǎng)頁(yè)標(biāo)題:如何將多張圖片合成mp4視頻格式,并加入背景音樂(lè)...
URL分享:http://chinadenli.net/article44/dsogpee.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計(jì)、ChatGPT、電子商務(wù)、網(wǎng)站建設(shè)、做網(wǎng)站、動(dòng)態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容