一、实现原理
实现原理 : JianYingPro
项目文件是 json
的形式存储的,只需要创建draft_content.json
,draft_mate_info.json
打开软件后会自动补全。
作用:快速生成草稿,可以完成一个比较粗剪辑,提升效率。
二、简单的示例
本库可以帮你快速自动识别音频和视频添加到对应的轨道。自动生成草稿后,就可以自动剪辑了。
- 添加一个媒体到轨道顺序
草稿媒体库
->内容媒体库
->轨道片段
add_media_to_track
会识别媒体类型,加入到对应轨道。- 当没有视频轨道时,创建音频轨道会先创建视频轨道。
if __name__ == "__main__": # 新建草稿 draft = Draft("测试草稿") # 将媒体转化为草稿素材 audio = Material("D:/Music/Krubb Wenkroist - Bleach.mp3") # 将媒体添加到轨道中 draft.add_media_to_track(audio) draft.add_media_to_track('D:/Videos/剪印导出/测试1(1).mp4') # 保存草稿 draft.save()
使用前先修改main.py
中的草稿文件夹路径
drafts_folder = "D:/JianyingPro Drafts"
三、完整的测试代码
可以支持添加鼓点和裁剪视频
import randomimport osimport seleniumfrom draft import Draftfrom draft import Material# 新建项目draft = Draft("测试草稿")# 选择背景音乐并添加鼓点audio = "D:/Music/Krubb Wenkroist - Bleach.mp3"draft.add_media_to_track(audio)# 读取鼓点beats = draft.content_materials['beats'][0]['user_beats']# 加载视频files= []for pt in os.listdir('D:/myCode/Python/spider/douyin_spider/media/video/小仙儿'): file_path = os.path.join('D:/myCode/Python/spider/douyin_spider/media/video/小仙儿',pt) files.append(file_path)# 随机裁切视频为合适时长end = 0for beat in beats: duration = beat - end mate = Material(files[random.randint(0,len(files)-1)]) start = int(random.uniform(0,(mate.duration-duration)/1000))*1000 Draft.add_media_to_track(mate,start,duration) end = beat# 保存草稿draft.save()
四、完整代码下载
https://download.csdn.net/download/huangbangqing12/88136001
来源地址:https://blog.csdn.net/huangbangqing12/article/details/132025526