首頁 > 軟體

Python騷操作完美實現短視訊偽原創

2022-02-17 13:00:20

1. 場景

大家好,我是J哥。

前段時間有人私信我,說自己辛辛苦苦剪輯的短視訊,上傳到某平臺後,由於播放量太大,收到 降權 的通知,直接導致這個賬號廢掉了!

其實,各大視訊平臺都有自己的一套鑑別演演算法,針對視訊的 二次創作,如果直接搬運,都會面臨著一些未知風險

本篇將帶大家用 Python 對短視訊做一些特殊處理, 保證視訊的 原創性 和 唯一性。

2. 實現

下面將從 MD5、光線、色彩 3 個方面來進行說明

第 1 步, 修改視訊的 MD5 值

MD5 是一種密碼雜湊函數,檔案的 MD5 值可以判斷檔案是否被修改

使用 Python 自帶的 hashlib 模組, 分段讀取檔案, 可以獲取檔案的 MD5 值

乾貨主要有:

① 200 多本 Python 電子書(和經典的書籍)應該有

② Python標準庫資料(最全中文版)

③ 專案原始碼(四五十個有趣且可靠的練手專案及原始碼)

④ Python基礎入門、爬蟲、網路開發、巨量資料分析方面的視訊(適合小白學習)

⑤ Python學習路線圖(告別不入流的學習)

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 步, 亮度調整

亮度調整,相當於調整整個視訊的曝光度,增加或者降低視訊的光線

首先,安裝 moviepy 依賴庫

# 安裝依賴庫
pip3 install moviepy

接著,增加畫面亮度, 這裡有兩 種方式增加視訊亮度

第一種方式,對視訊的每一幀圖片,做亮度值調整

def handle_frame(image_frame):
    """
    處理圖片幀
    :param image_frame:圖片幀
    :return:
    """
    image_frame_result = image_frame * 1.2
    # 如果顏色值超過255,直接設定為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() 函數中的 vfx.colorx 引數,指定一個係數,直接對視訊畫面亮度進行調整

def increase_video_brightness2(file_path):
    """
    增加視訊整體亮度2
    :param file_path:源視訊路徑
    :return:
    """
    # 調整係數值
    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)

如果想降低視訊整體的亮度,可以將上面的係數調整為小於 1 的數即可

第 3 步, 色彩調整

色彩調整,具體包含:色相、色彩明亮度、飽和度等,這裡以視訊轉為黑白效果為例

同樣,使用 fx() 函數中的 vfx.blackwhite 引數,可以將彩色視訊畫面一鍵轉為黑白視訊

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,加入一些特殊的模板、片段片尾漸變動畫來確保視訊的原創性和唯一性。

原始碼下載

連結:https://pan.baidu.com/s/1b6_9UpLpMd25CbC0nKo2Mg
提取碼:1234

到此這篇關於Python騷操作完美實現短視訊偽原創的文章就介紹到這了,更多相關Python 視訊偽原創內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com