短剧行业中,投放广告流的素材对于吸引用户和增长短剧的观众群体非常关键。这些素材通常是 2 至 5 分钟的视频,需包含引人入胜的剧情冲突和悬念,类似预告片的效果,有时还需要添加剧情解说来增强理解和吸引力。目前这些素材大多通过人工制作来完成,但效率较低,成本较高,制作周期较长,迫切需要一种更高效、更智能的方案来提升制作效率和降低成本。
为解决这一痛点,火山引擎视频点播提供短剧高光智剪能力,基于大模型的多模态高光提取算法,智能地从短剧正片视频中提取出最精彩的高光片段。用户还可通过火山引擎提供的视频剪辑功能,对这些高光片段进行二次剪辑和调整,生成单集摘要、剧集集锦、剧集宣传片等不同形式的视频素材,用于广告投放、短剧宣传等各种场景。
对输入视频存在以下限制:
短剧高光智剪会产生以下费用:
调用 StartExecution 接口提交高光分析任务,经大模型分析生成高光片段的时间信息。支持输入单个或多个短剧视频进行高光分析。将 Mode
设为 StorylineCuts
(故事线混剪模式),并通过 MaxDuration
、MinDuration
、MaxNumber
参数限制输出高光片段的最小时长、最大时长以及最多片段数。以下为通过 Vid 输入多个视频提交高光分析任务的示例:
{ "MultiInputs": [ { "Type": "Vid", "Vid": "v03399g10001d0v68mqljht18c45i6ng" }, { "Type": "Vid", "Vid": "v0d399g10001d0v68mqljht287ou4v6g" }, { "Type": "Vid", "Vid": "v02399g10001d0v68mqljht8cf5du1kg" } ], "Operation": { "Type": "Task", "Task": { "Type": "Highlight", "Highlight": { "Mode": "StorylineCuts", "StorylineCuts": { "MinDuration": 60, "MaxDuration": 180, "MaxNumber": 2 } } } } }
通过以下方式获取高光分析结果:
Output.Task.Highlight
参数获取高光分析结果。Output.OutputTask
参数获取高光分析结果。以下高光分析结果示例:
"Output": { "Type": "Task", "Task": { "Type": "Highlight", "Highlight": { "Duration": 350.44, "StorylineCuts": { "Segments": [ { "Start": 0, "End": 1.52, "Score": 4.5, "Description": "一对男女在床上有暧昧的接吻互动,同时伴有“大学时”的台词", "Location": "卧室", "Shot": "中景", "VideoIndex": 0 }, { "Start": 1.52, "End": 13.4, "Score": 4.2, "Ocr": "男朋友\"\"我曾买过一个男朋友。\"男朋\"直到\"\"我家破产的那天。\"陆斯年,我们分手吧。", "Description": "女主回忆大学时曾花钱买下贫困学霸男主做自己男朋友,两人相伴四年,直至女主家破产这天,女主向男主提出分手", "Location": "街道", "Shot": "特写", "VideoIndex": 0 }, // 其他片段因篇幅限制已省略 ], "Storylines": [ { "Title": "大学情侣分手", "Description": "大学时,女主花钱买下贫困学霸男主做男朋友,相伴四年。女主家破产后,为不拖累男主,在男主母亲的恳求下,女主向男主提出分手,男主痛苦不已。", "Score": 3.5, "Segments": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10] }, { "Title": "女主困境抉择", "Description": "女主家遭遇变故,需处理父亲后事和母亲住院费用。女主拿着医院诊断报告单,出于不想拖累男主的想法,决定不告知男主。", "Score": 3, "Segments": [11, 12, 13, 14, 15, 16, 17, 18] }, // 其他片段因篇幅限制已省略 ], "CutSegments": [ { "Segments": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 16, 17, 18, 19, 20, 21, 22, 23, 24] }, { "Segments": [50, 53, 54, 55, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79] } ] } } } }
高光分析结果具体说明如下:
Segments
是算法基于分镜理解得出的视频片段信息。每个片段涵盖片段开始时间、结束时间、高光打分、字幕信息、剧情描述、地点标签、景别标签以及片段源自哪个输入视频等信息。Storylines
是算法将 Segments
中属于同一故事情节的部分整理成的连贯故事线。CutSegments
是算法根据 StartExecution
接口请求参数 StorylineCuts
中输入的条件限制,从故事线中提取最精彩的片段。若请求参数中没有条件限制,则默认剔除视频中高光分数 ≤1 以及 1 < 高光分数 ≤2 且无台词的片段。获取高光分析结果后,可调用 SubmitDirectEditTaskAsync 接口提交剪辑任务,截取原始视频里的高光片段并重新合成一个视频,还能添加花字或图片 logo。具体方式如下:
CutSegments
中的片段索引确定各片段的起止时间,在调用 SubmitDirectEditTaskAsync
接口时传入这些起止时间。Storylines
和高光打分 Score
等信息进行自定义混剪。例如,若输出结果 Storylines.Segments
为 [0,1,3,4,5,7,8,9,10]
,可从中筛选出高光打分 ≥ 3.5 的片段,明确各片段的起止时间,然后在调用 SubmitDirectEditTaskAsync
接口时传入这些起止时间。调用 SubmitDirectEditTaskAsync
接口时,您需要设置以下参数:
Track
参数:
video
类型的资源,并在资源的 Extra
字段中添加 trim
类型的 Filter 截取高光片段。text
类型的资源添加花字。image
类型的资源添加图片 logo。您需要先将图片以素材形式上传至视频点播服务,然后获取图片的 Mid 或 FileName。详见上传素材。Upload
参数配置剪辑任务完成后输出的产物会被上传至哪个空间。Output
参数配置输出产物的封装格式、码率、帧率等。如果您需要生成多码率的高光片段,首先生成最高分辨率视频,然后再进行转码。如果只需要单一码率的高光片段,只需设置 Crf
参数和输出视频的宽高即可满足需求。假设高光片段为 0.52-5.32 秒、13.04-30.88 秒、39.76-75 秒,可参考以下示例代码生成高光片段视频:
{ "Application": "VideoTrackToB", "Uploader": "test-doc", "EditParam":{ "Upload":{ "SpaceName": "test-doc", "VideoName": "highlight" }, "Output":{}, "Track": [ [ { "Source": "vid://v0325cg10001cu917jaljht7ks0d60i0", "Type": "video", "TargetTime": [ 0, 4800 ], "Extra": [ { "StartTime": 520, "EndTime": 5320, "Type": "trim" } ] }, { "Source": "vid://v0325cg10001cu917jaljht7ks0d60i0", "Type": "video", "TargetTime": [ 4800, 22640 ], "Extra": [ { "StartTime": 13040, "EndTime": 30880, "Type": "trim" } ] }, { "Source": "vid://v0325cg10001cu917jaljht7ks0d60i0", "Type": "video", "TargetTime": [ 22640, 57880 ], "Extra": [ { "StartTime": 39760, "EndTime": 75000, "Type": "trim" } ] }, { "Type": "text", "TargetTime": [ 0, 57880 ], "Extra": [ { "Type": "transform", "PosX": 150, "PosY": 1024, "Width": 432, "Height": 256 } ], "Text": "短剧剧名", "TextRes": "1179433", "FontSize": 56 } ] ] } }
通过以下方式获取云剪辑输出的高光视频: