虽然剪映没有sdk来进行模板批量剪辑,但是通过剪映的草稿箱可以实现这个功能。
实现原理:剪映草稿文件采用 JSON 格式保存。只需手动创建draft_content.json和draft_mate_info.json文件,其余文件在打开剪映软件后将自动完成。这两个文件都包含素材信息,其中draft_mate_info.json中的素材将显示在剪映左侧的素材库中,而draft_content.json中的素材将显示在下方的时间线上。将媒体素材添加到剪映软件,相关数据将被记录进 “草稿元数据库” 和 “草稿内容库”,包括素材和轨道信息。
代码示例:
import os.path from BasicLibrary.projectHelper import ProjectHelper from JianYingDraft.core.draft import Draft from JianYingDraft.utils import tools from JianYingDraft.utils.dataStruct import TransitionData, AnimationData from draftContext import DraftContext def basic_using(): """ 最简使用方式 @return: """ # 0. 可以给草稿指定名字,比如Draft("古诗词欣赏");如果不指定名字的话,默认是根据时间戳自动生成草稿名字 draft = Draft() root_path = ProjectHelper.get_root_physical_path() middle_path = ".res" # 1. 添加两幅图片,分别设置不同的播放时间 image1_full_name = os.path.join(root_path, middle_path, "古诗1.jpg") image2_full_name = os.path.join(root_path, middle_path, "古诗2.jpg") draft.add_media(image1_full_name) # 图片如果不指定duration,默认播放5秒 draft.add_media(image2_full_name, duration=4_000_000) # 指定图片播放时长为4秒 # 2. 添加背景音乐,音频长度会根据视频的长度自动剪截 music_full_name = os.path.join(root_path, middle_path, "似是故人来.mp3") ## 2.1. 最简方式:直接添加音频文件的地址即可。 # draft.add_media(music_full_name) ## 2.2. 也可以给音频指定淡入淡出时长 draft.add_media(music_full_name, fade_in_duration=1_000_000, fade_out_duration=1_500_000) draft.save()
推荐这个项目:https://github.com/notinmood/JianyingDraft.PY
网友回复
python如何调用openai的api实现知识讲解类动画讲解视频的合成?
html如何直接调用openai的api实现海报可视化设计及文本描述生成可编辑海报?
f12前端调试如何找出按钮点击事件触发的那段代码进行调试?
abcjs如何将曲谱播放后导出mid和wav格式音频下载?
python如何将曲子文本生成音乐mp3或wav、mid文件
python中mp3、wav音乐如何转成mid格式?
js在HTML中如何将曲谱生成音乐在线播放并下载本地?
python如何实现在windows上通过键盘来模拟鼠标操作?
python如何给win10电脑增加文件或文件夹右键自定义菜单?
python如何将音乐mp3文件解析获取曲调数据?