1. 場(chǎng)景
前段時(shí)間有人私信我,說(shuō)自己辛辛苦苦剪輯的短視頻,上傳到某平臺(tái)后,由于播放量太大,收到 降權(quán) 的通知,直接導(dǎo)致這個(gè)賬號(hào)廢掉了!
其實(shí),各大視頻平臺(tái)都有自己的一套鑒別算法,針對(duì)視頻的二次創(chuàng)作,如果直接搬運(yùn),都會(huì)面臨著一些未知風(fēng)險(xiǎn)
本篇將帶大家用 Python 對(duì)短視頻做一些特殊處理,保證視頻的 原創(chuàng)性 和 唯一性
2. 實(shí)現(xiàn)
下面將從 MD5、光線、色彩 3 個(gè)方面來(lái)進(jìn)行說(shuō)明
第 1 步,修改視頻的 MD5 值
MD5 是一種密碼散列函數(shù),文件的 MD5 值可以判斷文件是否被修改
使用 Python 自帶的 hashlib 模塊,分段讀取文件,可以獲取文件的 MD5 值
def get_file_md5(file_path):
"""
分段讀取,獲取文件的md5值
:param file_path:
:return:
"""
with open(file_path, 'rb') as file:
md5_obj = hashlib.md5()
while True:
buffer = file.read(8096)
if not buffer:
break
md5_obj.update(buffer)
hash_code = md5_obj.hexdigest()
md5 = str(hash_code).lower()
return md5
要修改文件的 MD5 值,只需要在文件尾部追加一段字符串即可
def modify_file_md5(file_path):
"""
修改文件的md5值
:param file_path:
:return:
"""
with open(file_path, 'a') as file:
file.write("####&&&&")
第 2 步,亮度調(diào)整
亮度調(diào)整,相當(dāng)于調(diào)整整個(gè)視頻的曝光度,增加或者降低視頻的光線
首先,安裝 moviepy 依賴(lài)庫(kù)
# 安裝依賴(lài)庫(kù)
pip3 install moviepy
接著,增加畫(huà)面亮度,這里有兩種方式增加視頻亮度
第一種方式,對(duì)視頻的每一幀圖片,做亮度值調(diào)整
def handle_frame(image_frame):
"""
處理圖片幀
:param image_frame:圖片幀
:return:
"""
image_frame_result = image_frame * 1.2
# 如果顏色值超過(guò)255,直接設(shè)置為255
image_frame_result[image_frame_result > 255] = 255
return image_frame_result
def increase_video_brightness(file_path):
"""
增加視頻整體亮度
:param file_path:源視頻路徑
:return:
"""
video = VideoFileClip(file_path)
result = video.fl_image(handle_frame)
file_path_new = "/Users/xingag/Desktop/new.mp4"
result.write_videofile(file_path_new)
第二種方式,從文件中提取視頻剪輯 VideoFileClip,使用 fx() 函數(shù)中的 vfx.colorx 參數(shù),指定一個(gè)系數(shù),直接對(duì)視頻畫(huà)面亮度進(jìn)行調(diào)整
def increase_video_brightness2(file_path):
"""
增加視頻整體亮度2
:param file_path:源視頻路徑
:return:
"""
# 調(diào)整系數(shù)值
coefficient_value = 1.2
video = VideoFileClip(file_path)
file_path_new = "/Users/xingag/Desktop/new.mp4"
video.fx(vfx.colorx, coefficient_value).write_videofile(file_path_new)
如果想降低視頻整體的亮度,可以將上面的系數(shù)調(diào)整為小于 1 的數(shù)即可
第 3 步,色彩調(diào)整
色彩調(diào)整,具體包含:色相、色彩明亮度、飽和度等,這里以視頻轉(zhuǎn)為黑白效果為例
同樣,使用 fx() 函數(shù)中的 vfx.blackwhite 參數(shù),可以將彩色視頻畫(huà)面一鍵轉(zhuǎn)為黑白視頻
def change_video_bhd(file_path):
"""
黑白處理
:param file_path:
:return:
"""
video = VideoFileClip(file_path)
file_path_new = "/Users/xingag/Desktop/new.mp4"
video.fx(vfx.blackwhite).write_videofile(file_path_new)
3. 最后
除了上面的幾種視頻修改方式外,還可以借助 CV2 和 MoviePy,加入一些特殊的模板、片段片尾漸變動(dòng)畫(huà)來(lái)確保視頻的原創(chuàng)性和唯一性。
-
視頻
+關(guān)注
關(guān)注
6文章
1942瀏覽量
72884 -
文件
+關(guān)注
關(guān)注
1文章
565瀏覽量
24727 -
函數(shù)
+關(guān)注
關(guān)注
3文章
4327瀏覽量
62569 -
python
+關(guān)注
關(guān)注
56文章
4792瀏覽量
84627
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論