爆款视频生成器-视频批量剪辑系统源码开发分享

news2025/1/31 17:44:10

 创建视频

该接口用于创建抖音视频(支持话题, 小程序等功能)。该接口适用于抖音

使用限制

  • 抖音的 OAuth API 以https://open.douyin.com/ 开头。
  • 挂载小程序请先完成注册开发者平台账号。
  • 创建抖音视频后, 会有一个审核过程, 期间只有自己可见。
  • 如果发布视频想@用户,需要获取昵称与open_id。
  • 目前发布视频接口,支持两种锚点类型,包括:小程序、POI。不支持携带多种类型的锚点
  • 如需代用户创建视频,除授权外,每次调用都需要在产品设计中让用户明确感知相关操作。如发现未经用户感知代用户创建视频,或将回收相关接口权限并处罚应用及账号。

接口说明

基本信息

基本信息

HTTP URL

https://open.douyin.com/api/douyin/v1/video/create_video/

HTTP Method

POST

Scope

video.create.bind

权限要求

  • 需要申请权限。
    路径:抖音开放平台控制台 > 应用详情 > 能力管理 > 能力实验室 > 代替用户发布内容到抖音
  • 需要用户授权

视频批量剪辑剪辑模式:

混剪模式介绍

智能混剪合成:仅需上传 1 个长度为 15-60 秒的长视频即可,系统将抽取音频,随后裁剪为多个小

片段,用户发布视频时系统随机选择该模式下多个片段进行组合,再和抽取的音频合成。

智能随机组合:需上传至少 6 个(越多越好)6 秒以内的短视频,系统将视频转静音,用户发布视频

时系统随机选择该模式下的 5 个短视频素材随机组合,再和音频素材合成。

场景顺序组合:需在 5 个场景中分别上传至少 1 个或多个 6 秒以内的短视频,系统将视频转静音,

用户发布视频时系统在每个场景中随机选择 1 个短视频素材组合,再和音频素材合成。

智能图片组合:需上传尽可能多的图片素材,从中选择 6 个图片素材,用户发布视频时系统把图片

随机组合成视频,再和音频合成。

*:模式一旦选定后,请勿轻易切换视频合成模式,否则将导致素材清空,缓存视频清空

素材管理:

代码展示示例:

$breadcrumbs = [
    ['title' => 'AI视频创意', 'link' => '#'],
    ['title' => '开始创作', 'link' => ''],
];
$this->buildBreadcrumbs($breadcrumbs);
//搜索专用
$keyword_type = $this->request->getStrParam('keyword_type');
$keyword = $this->request->getStrParam('keyword');
$this->output['keyword_type'] = $keyword_type;
$this->output['keyword'] = $keyword;

$dv_id = $this->request->getIntParam('dv_id');  //视频工程ID
$this->output['dv_id'] = $dv_id;
$type = $this->request->getIntParam('type', 0);   //素材类型
$scene = $this->request->getIntParam('scene', 1);
$this->output['scene'] = $scene;
//获取视频信息
$video_model = new App_Model_Douyin_MysqlVideoStorage();
$video_info = $video_model->getRowByIdSid($dv_id, $this->sid);
if (empty($video_info)) {
    plum_redirect_with_msg('视频创意工程不存在');
}

$mixed_video_mode = $video_info['dv_video_mode'];
if (in_array($mixed_video_mode, [11])) {    //智能图片组合
    $type = in_array($type, [0, 1]) ? 3 : $type;   //默认为图片素材类型
} else {
    $type = in_array($type, [0, 3]) ? 1 : $type;  //默认为视频素材类型
}

//获取素材列表
$where = [
    ['name' => 'dvm_ds_id', 'oper' => '=', 'value' => $this->sid],
    ['name' => 'dvm_dv_id', 'oper' => '=', 'value' => $dv_id],
    ['name' => 'dvm_material_type', 'oper' => '=', 'value' => $type]
];
//视频类型,区分混剪模式
if ($type == 1) {
    $where[] = ['name' => 'dvm_video_mixed_mode', 'oper' => '=', 'value' => $video_info['dv_video_mode']];
}
if (!empty($keyword_type)) {
    $where[] = ['name' => $keyword_type, 'oper' => 'like', 'value' => "%{$keyword}%"];
}
//智能场景组合,视频素材加场景值筛选
if ($type == 1 && $mixed_video_mode == 4) {
    $scene_model = new App_Model_Douyin_MysqlVideoSceneStorage();
    $scene_count = $scene_model->getCountByDvid($dv_id);
    if ($scene_count == 0 && $video_info['dv_video_use'] > 0) {
        for ($i = 1; $i <= $video_info['dv_video_use']; $i++) {
            $indata = [
                'dvs_ds_id' => $this->sid,
                'dvs_dv_id' => $dv_id,
                'dvs_name' => "场景" . $i,
                'dvs_duration' => $video_info['dv_video_shot'] * 1000,
                'dvs_

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/631643.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C/C++】带你快速掌握 使用—增强for(范围for循环)

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; &#x1f525;c系列专栏&#xff1a;C/C零基础到精通 &#x1f525; 给大…

Cefsharp-Winform114.2.100(5735)最新版本体验

版本说明: 官方仓库最新版本体验,114.2.100 (分支5735),支持MP3,WEBGL,不支持H264 视频体验H264参阅109版本(CSDN中搜索) Cefsharp109.1.110(winfrom)最新支持H264-MP3-MP4功能体验,导出pdf和下载方法有变调整_cef h264_久爱物联网的博客-CSDN博客 效果预览: 一…

LinuxC编程——高级文件操作

目录 一、查询文件信息1、stat2、stat fstat lstat区别 二、目录操作2.1 opendir2.2 readdir2.3 closedir例练习&#xff1a;实现ls操作 三、库3.1 库的定义3.2 库的分类3.2.1 静态库3.2.2 动态库 3.3 创建库3.3.1 静态库制作3.3.2 动态库制作 一、查询文件信息 1、stat int …

TLD7002学习笔记(二)-使用S32K144驱动TLD7002

文章目录 1. 前言2. 评估板简介3. 官方驱动3.1 官网驱动的介绍3.2 官方驱动的移植3.3 官方驱动的使用 4. 参考资料 1. 前言 本篇文章是TLD7002学习笔记的第二篇&#xff0c;主要是介绍如何使用S32K144驱动TLD7002-16ES。为此&#xff0c;笔者做了一套基于TLD7002-16ES的评估板…

重学Java的第一章

1.写在前面 今年的行情很差&#xff0c;差到很多人都没有办法找到工作&#xff0c;博主也是一个菜逼&#xff0c;找了一家小破公司&#xff0c;导致我那段时间很迷茫&#xff0c;也是也很焦虑&#xff0c;思考了很多&#xff0c;觉得我自己学的已经够多了&#xff0c;但是每一…

《Lua程序设计》--学习7

数据结构 数组 矩阵和多维数组 不规则数组&#xff1a;数组的数组&#xff0c;也就是所有元素均是另一个表的表 将两个索引合并为一个&#xff1a;声明一个长数组&#xff0c;然后根据 行数*行所拥有的元素个数列数来访问这样 链表 因为表是动态对象&#xff0c;所以在Lua语…

4.7 wait notify - 4.11 多把锁

目录 4.7 wait notify1、为什么需要wait2、原理之wait/notify3、API的介绍 4.8 wait notify 的正确姿势4.9 Park & Unpark4.10 重新理解线程状态转换4.11 多把锁 4.7 wait notify 1、为什么需要wait 当持有锁的线程因为某种条件不能满足不能执行时&#xff0c;由于其持有…

usb的传输类型

usb的传输类型 usb的四种传输类型: 批量传输同步传输(或等时传输)中断传输控制传输 其中的批量,同步,中断,三种传输中,每完整传输一次数据都称做一个事务(主要的数据传输是靠这三种传输) 事务的具体表现(批量,同步,中断) ​ 上图说说的输入事务是以主机来说的, 主机需要先发…

EMC学习笔记(三)滤波

滤波 1.概述2.滤波器件2.1 电阻2.2 电感2.3 电容2.4 铁氧体磁珠2.5 共模电感 3.滤波电路3.1 滤波电路的形式3.2 滤波电路的布局与布线 4.电容在PCB的EMC设计中的应用4.1 滤波电容的种类4.2 电容自谐振问题4.3 ESR对并联电容幅频特性的影响4.4 ESL对并联电容幅频特性的影响4.5 电…

JVM原理:JVM运行时内存模型(通俗易懂)

目录 前言正文虚拟机栈局部变量表操作数栈动态链接方法返回地址 本地方法栈本地方法存在的意义本地方法的调用 虚拟机堆堆结构Eden区Survivor区域老年代Old区常用参数指令 方法区常量池 运行时常量池方法信息类信息域信息JDK1.7前的方法区JDK1.7时的方法区JDK1.7后的方法区 程序…

Spring-2

DI 依赖注入 所谓依赖注入&#xff0c;是指程序运行过程中&#xff0c;如果需要调用另一个对象协助时&#xff0c;无须在代码中创建被调用者&#xff0c;而是依赖于外部的注入<bean id”” class”” p:属性名称-ref”另外受管 bean 的名称”/> IoC 实际上有 2 种实现 …

探索Python工具库合集:提高开发效率的秘密武器

前言&#x1f680;&#x1f680; 在开发过程中&#xff0c;笔者积累了许多实用的Python工具函数和模块&#xff0c;决定将它们整理成一个工具库集合&#xff0c;并与大家分享。本文将介绍笔者的Python工具库集合的核心功能和用途&#xff0c; 在日常的Python开发中&#xff0c;…

Selenium Python教程第6章:使用页面对象

6. Page Objects 页面对象 6.1 什么是页面对象模型(POM)&#xff1f; 页面对象模型(Page Objects Model, POM )是一组旨在表示一个或多个网页的类, 用1个类来保存1个网页上所有的元素&#xff0c;相似的网页可以重用此类。 1个网站通常有多个页面&#xff0c;可以用多个页面类…

(opencv)图像几何变换——缩放

图像缩放是指将图像的尺寸变小或变大的过程&#xff0c;也就是减少或增加源图像数据的像素个数。图像缩放一定程度上会造成信息的丢失&#xff0c;因此需要考虑适宜的方法进行操作。 下面介绍两种常用的图像缩放方法的原理及实现 1.基于等间隔提取图像缩放 等间隔提取图像缩…

多线程目录

基础概念篇 001线程状态图示_存在,及合理的博客-CSDN博客例如&#xff1a;随着人工智能的不断发展&#xff0c;机器学习这门技术也越来越重要&#xff0c;很多人都开启了学习机器学习&#xff0c;本文就介绍了机器学习的基础内容。提示&#xff1a;以下是本篇文章正文内容&…

机器学习 day16(前向传播算法,Tensorflow的实现代码)

1. 手写数字识别的神经网络模型 为简单起见&#xff0c;仅区分手写0和1&#xff0c;并用8*8的像素矩阵&#xff0c;共有64个像素&#xff08;特征&#xff09;&#xff0c;展开写成向量x&#xff0c;即该神经网络模型的输入特征向量x的维数为64&#xff0c;设该模型有两层隐藏…

一文打通:从字节码指令的角度解读前置后置自增自减(加加++减减--)

文章目录 1.前置了解的知识1.1 栈这种数据结构1.2 局部变量表和操作数栈1.3 三个字节码指令 2.单独使用后置与前置2.1 后置字节码指令2.2 前置字节码指令2.3 总结 3.需要返回值的情况下使用后置与前置3.1 后置字节码指令3.2 前置字节码指令3.3 总结3.4 练习&#x1f340; 练习一…

npm i安装依赖包报错proxy‘ config is set properly. See: ‘npm help config‘

npm i 报错proxy‘ config is set properly. See: ‘npm help config‘ 网上搜了解决方法&#xff1a; https://blog.csdn.net/zz00008888/article/details/127852233 但是执行完还是报错&#xff0c;查代理已经是false了 看到是cnpm镜像&#xff0c;于是用cnpm i 就运行成功…

设计模式篇---原型模式

文章目录 概念Java中的克隆方法实例使用场景 概念 定义&#xff1a;使用原型实例指定待创建对象的类型&#xff0c;并通过复制这个原型来创建新的对象。 原型模式主要有以下几部分组成&#xff1a; Prototype(抽象原型类):具体原型类的接口或者抽象类。 ConcretePrototype(具体…

Mybatis 全系列目录引导(持续更新)

基础篇 001Mybatis常用的网站及工具_存在,及合理的博客-CSDN博客GITHUB。https://blog.csdn.net/qq_26594041/article/details/131098123002Mybatis初始化引入_存在,及合理的博客-CSDN博客自动检测工程中的DataSource创建并注册SqlSessionFactory实例创建并注册SqlSessionTemp…