高光成片功能的核心在于将用户提供的素材与预设的视频模板进行智能匹配,自动生成精彩的短视频。在旧有逻辑下,SDK仅从每段原始素材中提取一个最佳的高光片段用于后续匹配。
然而,在实际应用场景中,当用户导入的素材数量非常少(例如,少于模板所需的槽位数量)时,这一策略的局限性便凸显出来。有限的高光片段导致模板匹配成功率显著下降,甚至出现无法匹配到任何可用模板的情况,从而影响了用户体验和最终的出片率。
为解决上述问题,我们对高光成片的匹配策略进行了优化。核心思路是:在用户素材不足时,通过对长视频进行动态拆分,以生成更多的高光片段,从而提高模板匹配的成功率和覆盖度。

整体优化方案遵循“最小化拆分”原则,仅在必要时(即原始素材无法满足模板要求时)启动拆分逻辑。详细流程如下:
当检测到可匹配的模板数量小于用户设置的期望匹配模板数量时,将触发素材拆分逻辑。
拆分原则:当前采用的拆分策略为平均拆分,并优先选择时长最长的视频进行拆分,以保证新生成素材的质量和多样性
具体的拆分规则如下:
| 参数 | 说明 | 参考值 |
|---|---|---|
| 触发条件 | 用户素材总数 < 模板要求最小素材数 | 例如,素材2个,模板要求4个 |
拆分目标 | 从最长的单个视频开始平均拆分,直到总素材数量=模板需求的槽位素材数量 |
|
| 最小保留时长 | 为保证拆分后素材的可用性,拆分出的每个片段时长不应短于当前模板最长槽位的时长 | - |
| 循环逻辑 | 每次拆分后,将新生成的素材加入素材池。若仍不满足,则重复此过程,直至无法继续拆分或素材数量满足模板槽位数量。 | - |
拆分出的虚拟素材会和原始素材一同进入高光识别流程,各自生成高光片段。
此方案主要增加了在特定情况下的素材拆分与重新识别逻辑,计算开销集中在端侧。
性能影响:仅在用户素材较少时触发,单次拆分和识别的耗时在可接受范围内(通常为毫秒级),对整体流程性能影响可控。
体验提升:通过显著提高模板匹配成功率,避免了用户因素材不足而无法“一键成片”的尴尬,直接提升了核心功能可用性和用户满意度。