高燃混剪成片

本文旨在介绍高燃混剪成片的合成参数。

重要
  • 注意:在此接口中,所有媒资的OSS URL中的区域(region)必须与调用OpenAPI服务地址中的区域(region)保持一致。

  • 支持的区域:华东2(上海)、华北2(北京)、华东1(杭州)、华南1(深圳)、美国(西部)、新加坡。

  • 当前版本暂不支持输入不含人声的视频素材,请您务必仔细甄别视频素材是否符合此条件。

  • 在实际使用过程中,请将文档所有参数示例中的 [your-bucket]、[your-region-id]、[your-file-name]、[your-file-path]、媒资ID(例如:“****9d46c8b4548681030f6e****”)等参数替换为您的实际值。

使用说明

InputConfig 参数说明

用户可通过配置InputConfig,指定视频素材、口播、背景音乐、贴纸等基础素材的参数配置。

参数

类型

说明

示例值

是否必填

MediaArray

List<String>

  • 影视剧素材,仅支持视频。支持传入媒资ID或素材OSS URL列表,视频总时长最多两小时,数量上限20个。

  • 素材支持的格式详见视频格式

    重要

    暂不支持输入不含字幕和人声的视频素材

详见参数示例

HighlightStrategy

HighlightStrategy

高燃混剪策略。

详见参数示例

OpeningArray

List<Media>

  • 固定片头,每次合成随机选一个,支持传入媒资ID或素材OSS URL列表,数量上限20。

  • 素材支持图片、视频,格式详见视频格式图片格式

详见参数示例

EndingArray

List<Media>

  • 固定片尾,每次合成随机选一个,支持传入媒资ID或素材OSS URL列表,数量上限20。

  • 素材支持图片、视频,格式详见视频格式图片格式

详见参数示例

TitleArray

List<String>

标题,最多50个,每次合成随机选一个,每个标题不超过50

["回龙观盒马鲜生开业啦","盒马鲜生开业啦"]

SubHeadingArray

List<SubHeading>

副标题,最多5级。

详见参数示例

StickerArray

List<Sticker>

  • 贴纸数组,每次合成随机选一个。最多50个,支持媒资ID 或 OSS URL。

  • 随机规则:假设传入10个贴纸,成片数量设置为20。首先,随机生成一个110之间的数字,例如3,然后按照3、4、5、6、7、8、9、10、1、2、3、4、5、6、7...的顺序选择贴纸。

  • 素材支持的格式详见图片格式

详见参数示例

BackgroundMusicArray

List<String>

  • 背景音乐数组,每次合成随机选一个。最多50个,支持媒资ID 或 OSS URL。

  • 随机规则:假设传入10个背景音乐,成片数量设置为20。首先,随机生成一个110之间的数字,例如3,然后按照3、4、5、6、7、8、9、10、1、2、3、4、5、6、7...的顺序选择背景音乐。

  • 素材支持的格式详见音频格式

详见参数示例

BackgroundImageArray

List<String>

  • 背景图片数组,每次合成随机选择一个。最多50个,支持媒资ID 或 OSS URL。

  • 随机规则:假设传入10张背景图,成片数量设置为20。首先,随机生成一个110之间的数字,例如3,然后按照3、4、5、6、7、8、9、10、1、2、3、4、5、6、7...的顺序选择背景图。

  • 素材支持的格式详见图片格式

详见参数示例

HighlightStrategy 参数说明

参数

数据类型

说明

示例值

是否必填

IntroConfig

JSON

高燃部分的开头配置

  • Mode: 选取模式,默认为Disabled

    • Auto: 自动选取最高能片段作为开头

    • Disabled:不额外添加开头

{"Mode":"Disabled"}

TargetDurationConfig

TargetDurationConfig

成片时长配置

{"TargetDuration": 180, "SpeedRange": [0.95, 1]}

PlotPacingType

String

  • 高燃部分的剧情节奏,取值范围:

    • 慢:Slow

    • 中等:Normal

    • 快:Fast

Slow

否,默认Normal

TargetDurationConfig 参数说明

参数

数据类型

说明

示例值

是否必填

TargetDuration

Float

  • 高燃部分(不包括固定的片头、片尾及高燃部分的开头)的期望总时长,单位:秒。可能会存在一定的波动。如不填写,将根据剧情自动适配时长。

  • 取值范围大于等于5秒,小于等于素材总时长。

180

SpeedRange

List<String>

变速范围设置。

如果期望成片能够以固定值进行变速,可以将变速范围的起始值和结束值设置为相同,例如[1.2, 1.2],则会以1.2倍的速率进行变速。

如果期望实际成片的时长尽可能与目标时长TargetDuration一致,可以通过设置可接受的“变速范围”来实现,示例如下:

  • 假设TargetDuration10,SpeedRange为[0.95,1],则通过SpeedRange计算得出的实际可接受的变速时长为[10,10.526]秒。实际成片时长的计算逻辑如下:

    • 如果实际成片时长为10.5秒,则在可接受范围[10,10.526]内,此时按(10/10.5)≈0.9524倍速进行变速处理,最终成片时长为10秒。

    • 如果实际成片时长为11秒,则需按照SpeedRange的下限值0.95倍进行变速,因此最终成片时长为11秒乘以0.95,最终成片时长=10.45秒。

[0.95, 1]

Media 参数说明

参数

数据类型

说明

示例值

是否必填

MediaId

String

媒资ID

****b4549dfvc88681030f6e****

二选一必填

都填写时优先取用MediaId

MediaURL

String

媒资URL,仅支持自有OSS

规则:http://[your-bucket].oss-[your-region-id].aliyuncs.com/[your-file-path]/[your-file-name]_{index}.mp4

示例:http://example.oss-cn-shanghai.aliyuncs.com/example/example_{index}.mp4

In

Float

当素材为视频时,表示素材入点,单位:秒。

0

Out

Float

当素材为视频时,表示素材出点,单位:秒。

5

Duration

Float

当素材是图片时,表示素材展示的时长,单位:秒。

2

DyncFrames

Integer

当素材为gif格式时,表示动图的帧数

25

参数示例

{
  "MediaArray": [
    "****9d46c8b42f4581030f6e****",
    "****9d46c8b4frtf81030f6e****",
    "****9d46c8b4asdf81030f6e****",
    "****9d46c8b43d3481030f6e****"
  ],
  "HighlightStrategy": {
    "IntroConfig": {
      "Mode": "Disabled"
    }
  },
  "OpeningArray": [
    {
      "MediaId": "****9d46c8b4548681030f6e****",
      "In": 0,
      "Out": 5
    },
    {
      "MediaId": "****9d46c8b4548661030f6e****",
      "In": 0,
      "Out": 5
    }
  ],
  "EndingArray": [
    {
      "MediaId": "****9d46c8b4548681030f6e****",
      "In": 0,
      "Out": 5
    },
    {
      "MediaId": "****9d46c8b4548661030f6e****",
      "In": 0,
      "Out": 5
    }
  ],
  "TitleArray": [
    "回龙观盒马鲜生开业啦",
    "盒马鲜生开业啦"
  ],
  "SubHeadingArray": [
    {
      "Level": 1,
      "TitleArray": [
        "副标题1",
        "副标题2"
      ]
    },
    {
      "Level": 3,
      "TitleArray": [
        "三级副标题"
      ]
    }
  ],
  "StickerArray": [
    {
      "MediaId": "****9d46c8b4548681030f6e****",
      "X": 10,
      "Y": 100,
      "Width": 300,
      "Height": 300,
      "Opacity": 0.6
    },
    {
      "MediaURL": "http://[your-bucket].oss-[your-region-id].aliyuncs.com/[your-file-name].png",
      "X": 10,
      "Y": 100,
      "Width": 300,
      "Height": 300
    }
  ],
  "BackgroundMusicArray": [
    "****b4549d46c88681030f6e****",
    "****549d46c88b4681030f6e****",
    "http://[your-bucket].oss-[your-region-id].aliyuncs.com/[your-file-name].mp3"
  ],
  "BackgroundImageArray": [
    "****6c886b4549d481030f6e****",
    "****9d46c8548b4681030f6e****",
    "http://[your-bucket].oss-[your-region-id].aliyuncs.com/[your-file-name].png"
  ]
}

EditingConfig 参数说明

用户可通过配置EditingConfig,指定成片素材的音量、位置及其他合成参数。

参数

类型

说明

示例值

是否必填

MediaConfig

JSON

输入视频素材相关配置。

详见参数示例

TitleConfig

JSON

标题相关配置,支持配置字幕参数。

详见参数示例

SubHeadingConfig

JSON

多级副标题相关配置。支持设置字幕参数。

JSON字段说明:

详见参数示例

BackgroundMusicConfig

JSON

背景音乐相关配置。

详见参数示例

BackgroundImageConfig

JSON

背景图相关配置。如果InputConfig中已配置背景图,则此字段不生效。

详见参数示例

ProcessConfig

JSON

混剪处理配置。

详见参数示例

FECanvas

JSON

用于前端页面预览时的画布配置。

{"Width": 1080,"Height": 1920}

ProduceConfig

JSON

普通剪辑合成配置,字段详见:EditingProduceConfig

{"AutoRegisterInputVodMedia":true,"OutputWebmTransparentChannel":true,"CoverConfig":{"StartTime":3.3},"AudioChannelCopy":"left","PipelineId":"xxxd54a97cff4108b555b01166d4bxxx","MaxBitrate":5000,"KeepOriginMaxBitrate":false,"KeepOriginVideoMaxFps":false}

ProcessConfig 参数说明

参数

类型

说明

示例值

是否必填

AllowVfxEffect

Boolean

是否允许添加特效效果。

true

否,默认false

VfxEffectProbability

Float

特效应用在每个视频片段上的概率,取值:0.0 - 1.0,支持2位小数。

0.6

否,默认0.5

VfxFirstClipEffectList

List<String>

  • VfxFirstClipEffectList不为空时,成片的第一个片段的特效将从VfxFirstClipEffectList中选择。

  • VfxFirstClipEffectList为空时,成片第一个片段的特效将从以下特效中随机选择:"slightshow"、"starfieldshinee"、"starfieldshinee2"、"starsparkle"、"colorfulripples"、"starfield"。

  • 特效示例详见:特效效果示例

["slightshow","starfieldshinee"]

VfxNotFirstClipEffectList

List<String>

  • VfxNotFirstClipEffectList不为空时,成片中非第一个片段的特效将从VfxNotFirstClipEffectList中进行选择。

  • VfxNotFirstClipEffectList为空时,成片非第一个片段的特效将从以下特效中选择:"zoomslight"、"zoom"、"zoominout"、"slightshake"。

  • 特效示例详见:特效效果示例

["zoomslight","zoom"]

AllowTransition

Boolean

是否允许添加转场效果。

true

否,默认false

TransitionDuration

Float

转场时长,单位秒。如果转场时长 > 片段时长 - 1,则该片段上的转场效果不会生效。

0.5

否,默认0.5

TransitionList

List<String>

自定义转场效果列表,当AllowTransition=true时,随机选取列表中的一个转场效果进行合成。转场效果的可选范围详见转场效果库。如果此参数为空,则会从以下转场效果中随机选取:"linearblur", "colordistance", "crosshatch", "dreamyzoom", "doomscreentransition_up"

["directional", "linearblur"]

UseUniformTransition

Boolean

单个成片中是否使用一致的转场效果。

true

否,默认true

AllowFilter

Boolean

是否允许添加自定义滤镜。

false

否,默认false

FilterList

List<String>

自定义滤镜效果列表,当AllowFilter=true时,随机选取列表中的一个滤镜进行合成,滤镜效果的可选范围滤镜效果示例,如果此参数为空,则不会添加滤镜效果。

["m1", "m2"]

参数示例

{
  "MediaConfig": {
    "Volume": 0 // 默认视频素材静音
  },
  "TitleConfig": {
    "Alignment": "TopCenter",
    "AdaptMode": "AutoWrap",
    "Font": "Alibaba PuHuiTi 2.0 95 ExtraBold",
    "SizeRequestType": "Nominal",
    "Y": 0.1, // 成片为竖屏时,标题Y坐标值
    "Y": 0.05, // 成片为横屏时,标题Y坐标值
    "Y": 0.08 // 成片为方屏时,标题Y坐标值
  },
   "SubHeadingConfig": {
    "1": {
      "Y": 0.3,
      "FontSize": 40
    },
    "3": {
      "Y": 0.5,
      "FontSize": 30
    }
  },
  "BackgroundMusicConfig": {
    "Volume": 0.2,   // 背景音乐默认用20%音量,
    "Style": null
  },
  "ProcessConfig": {
    "AllowVfxEffect": false,	  // 是否添加特效效果
    "AllowTransition": false,	  // 是否添加转场效果
  }
}

TemplateConfig 参数说明

TemplateConfig为一键成片的公共参数,用于设置一键成片模板。详细参数说明和使用示例详见TemplateConfig 参数说明

OutputConfig 参数说明

用户可通过配置OutputConfig,指定成片输出地址、名称规则、成片的宽高、输出成片数量等合成参数。

参数

类型

说明

示例值

必填

MediaURL

String

输出视频地址,必须要有占位符{index}。

规则:http://[your-bucket].oss-[your-region-id].aliyuncs.com/[your-file-path]/[your-file-name]_{index}.mp4

示例:http://example.oss-cn-shanghai.aliyuncs.com/example/example_{index}.mp4

GeneratePreviewOnly=false时,且成片输出到OSS时必填

StorageLocation

String

指定输出到VOD的媒资文件存储地址。

规则:[your-vod-bucket].oss-[your-region-id].aliyuncs.com

示例:outin-****6c886b4549d481030f6e****.oss-cn-shanghai.aliyuncs.com

GeneratePreviewOnly=false时,且成片输出到VOD时必填

FileName

String

输出文件名称,必须要有占位符{index}。

规则:[your-file-name]__{index}.mp4

示例:example_{index}.mp4

GeneratePreviewOnly=false时,且成片输出到VOD时必填

GeneratePreviewOnly

Boolean

  • GeneratePreviewOnly = true时,表示当前任务仅生成预览用的时间线,不实际合成,可不填写输出视频的地址。

  • 一键成片任务完成后,通过GetBatchMediaProducingJob查询任务结果,返回的子任务列表中会包含剪辑工程projectId,再调用GetEditingProject可获取到预览时间线。

false

否,默认false

Count

Integer

输出视频数,当前版本只能为1。

1

否,默认1

Width

Integer

成片宽,px

1080

Height

Integer

成片高,px

1920

Video

JSONObject

输出视频流相关配置,Crf、Codec

{"Crf": 27}

参数示例

{
 	"MediaURL": "http://[your-bucket].oss-[your-region-id].aliyuncs.com/[your-file-name]_{index}.mp4",
 	"Count": 1,
 	"Width": 1080,
 	"Height": 1920,
 	"Video": {"Crf": 27},
        "GeneratePreviewOnly":false
}

处理逻辑

  • 根据MediaArray配置剪辑素材,对素材进行分析时应按照素材的顺序进行处理。

  • 根据HighlightStrategy配置高燃集锦部分的片头和片尾。

  • 根据OpeningArrayEndingArray来配置高燃集锦部分之前的固定开头(前贴片)、之后的固定结尾(后贴片)。

  • 一键成片API中的配置参数优先级高于模板中设置的参数。如果您已配置TemplateConfig,则会优先从一键成片任务API中读取非空参数,对于为空的部分参数,则将从模板中读取。

相关文档