1. 场景
前段时间有人私信我,说本人辛辛苦苦剪辑的短视频,上传到某平台后,因为播放量太大,收到 降权 的告诉,间接导致这个账号废掉了!
其实,各大视频平台都有本人的一套甄别算法,针对视频的二次创作,如果间接搬运,都会面临着一些未知危险
本篇将带大家用 Python 对短视频做一些非凡解决,保障视频的 原创性 和 唯一性
2. 实现
上面将从 MD5、光线、色调 3 个方面来进行阐明
第 1 步,批改视频的 MD5 值
MD5 是一种明码散列函数,文件的 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 步,亮度调整
亮度调整,相当于调整整个视频的曝光度,减少或者升高视频的光线
首先,装置 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,退出一些非凡的模板、片段片尾突变动画来确保视频的原创性和唯一性
以上就是本次分享的所有内容,想要理解更多 python 常识欢送返回公众号:Python 编程学习圈 ,发送 “J” 即可收费获取,每日干货分享