使用智能媒体生产ICE辅助H5实时视频生产

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,内容安全 1000 次 1年
对象存储 OSS,恶意文件检测 1000次 1年
简介: 在H5营销活动中,实时生成分享视频能促进活动的传播度,本篇介绍使用智能媒体生产ICE,通过云剪辑的方法,辅助H5活动实时生产传播视频。

在H5营销活动中,实时生成分享视频能促进活动的传播度,本篇介绍使用智能媒体生产ICE,通过云剪辑的方法,辅助H5活动实时生产传播视频。

概述

背景

使用H5做营销活动,是近年来常见的运营方法,由于技术成熟、跨平台性,H5活动有较高的用户基础和接受度。用户在H5页面可以参与直播、互动游戏,还可以把互动数据保存为图片,进行二次传播。

随着5G的发展,视频内容已经被越来越多的用户所接受,把互动数据保存为视频,并添加丰富的特效,更能提高传播度,但受限于前端性能和机型的影响,H5视频合成技术复杂,机型适配工作量大。本篇介绍使用智能媒体生产ICE,通过云剪辑的方法,辅助H5活动实时生产传播视频。

方案介绍

云端合成

智能媒体生产ICE(Intelligent Cloud Editing,以下简称ICE)主打云端视频生产能力,通过组织剪辑需要的Timeline结构,即可在云端对用户的音视频素材进行剪辑,可以理解ICE就是一款API版的iMovie。

用户在活动页面完成任务后,后端调用ICE进行视频合成,将成片地址返回给H5前端,从而达到视频生产的目的。也可以由前端提交剪辑合成,轮询任务结果,当任务执行成功后,前端即可拿到成片视频并进行保存、转发。

时序图

实时性

前端交互对实时性要求很高,用户提交合成后,一般要在几秒内拿到结果。智能媒体生产ICE依托于媒体处理服务MPS,可以从容应对高并发,高实时性的场景。ICE云端合成效率大约为1:1(即合成耗时等于成片时长),由于营销活动的分享视频一般不会太长(10~15s),云剪辑的合成速度基本能满足营销活动的实时性要求,在简单拼接、小分辨率等一些场景下,云剪辑能达到更高的合成速度。

目标读者

H5营销活动的运营、开发同学。

适用场景

场景1:用户输入文案,和活动方的视频素材做合成。

场景2:用户上传视频或图片,和活动方的视频素材做合成。

一些活动场景示例:

智能媒体生产ICE可满足更多更复杂的剪辑场景,可参考Timeline配置,设计更多的业务策略。

相关概念

1、时间线Timeline

和iMovie、Premiere一样,一次剪辑会包含多个轨道、素材以及对应的位置、时长等信息,ICE使用时间线Timeline来描述这些信息。用户组装好Timeline,调用提交剪辑合成作业接口,即可生产出视频。

2、对象存储OSS

阿里云对象存储OSS(Object Storage Service)是一款安全、低成本、高可靠的云存储服务。OSS提供了H5文件上传SDK,可承载H5活动的素材上传功能。ICE可以直接剪辑OSS上的音视频文件,Timeline中引用文件的OSS地址即可。OSS地址格式:http://[bucket].oss-[region].aliyuncs.com/[object].mp4。地址中包含了Bucket、Region、Object等信息,注意使用的OSS文件和ICE必须在相同region。

3、视频点播VOD

阿里云视频点播(VOD)是集音视频上传、自动化转码处理、媒资管理于一体的全链路音视频点播服务。VOD提供了JS上传SDK,可承载H5活动的素材上传能力。ICE可以直接剪辑VOD上的音视频媒资,Timeline中引用VOD的MediaId即可。注意使用的VOD媒资和ICE必须在相同region。

方案优势

1、跨平台

剪辑处理都在云端,免去了机型适配带来的复杂度,业务方可以“Write Once, Run Anywhere”,不但H5活动可以用,Native、PC端等都可以使用,且能保证效果一致。

2、高性能、低成本

智能媒体生产ICE依托于媒体处理服务MPS,可以从容应对并行几千路的视频合成,且能保证较高的实时性,对于更高的并发要求,也可做到高弹性及高性能。

ICE依据成片时长计费,用户即用即取,且能保证高可用性。

3、参数简单、灵活、易上手

ICE的Timeline结构符合大众对剪辑工程的理解,功能全面,业务方可以根据需求组装丰富的剪辑效果。当有新场景时,业务方修改Timeline配置即可,改动量小。

ICE还对很多场景做了Timeline简化,用户不用拼完整的Timeline参数,由ICE进行补全。

方案实施

前提条件

  • 开通ICE服务

  • 开通OSS服务或VOD服务

操作步骤

步骤一:准备素材

1、业务方需要准备视频的基础素材,并上传至OSS或VOD。

2、用户在H5页面把素材上传至OSS或VOD(如有需要)。

步骤二:组装时间线

示例1:用户提供视频、图片,和业务方的视频素材做混剪。

本示例为两个轨道,下方为业务方的背景图片,上面为用户的视频素材。timeline1

示例2:用户提供文字,和业务方的视频素材做混剪。

本示例为两个轨道,下方为业务方的背景视频,上面为用户的文案。timeline2

更多功能参考TimeLine配置

步骤三:提交剪辑合成作业

调用 提交剪辑合成作业 接口,传入Timeline,提交剪辑合成作业。

String timeline = "{\"VideoTracks\":[{\"VideoTrackClips\":[{\"MediaURL\":\"" +
        "https://your-bucket.oss-cn-shanghai.aliyuncs.com/your_video.mp4\",\"X\":0,\"Y\":700," +
        "\"Width\":1080,\"Height\":500}]},{\"VideoTrackClips\":[{\"MediaURL\":" +
        "\"https://your-bucket.oss-cn-shanghai.aliyuncs.com/your_image.jpg\"\"Type\":\"Image\"}]}]}";
String mediaURL = "https://your-bucket.oss-cn-shanghai.aliyuncs.com/your-output.mp4";
String outputMediaConfig = "{\"MediaURL\":\"" + mediaURL + "\",\"Width\":1280,\"Height\":720}";

SubmitMediaProducingJobRequest request = new SubmitMediaProducingJobRequest();
request.setTimeline(timeline);
request.setOutputMediaConfig(outputMediaConfig);
iceClient.submitMediaProducingJob(request);
AI 代码解读

步骤四:等待剪辑合成作业完成

方案1:业务方轮询检查任务状态

轮询 查询剪辑合成作业 接口,监控任务状态。

由于视频合成一般需要5s以上的时间,建议提交合成后3~5s后再开始轮询任务状态。

Thread.sleep(3000);
while (true) {
    GetMediaProducingJobRequest getMediaProducingJobRequest = new GetMediaProducingJobRequest();
    getMediaProducingJobRequest.setJobId(jobId);
    GetMediaProducingJobResponse getMediaProducingJobResponse = iceClient.getMediaProducingJob(getMediaProducingJobRequest);
    System.out.println("GetMediaProducingJobResponse : " + JSONObject.toJSONString(getMediaProducingJobResponse.body));
    String status = getMediaProducingJobResponse.getBody().getMediaProducingJob().getStatus();
    if ("Success".equals(status) || "Failed".equals(status)) {
        break;
    }
    Thread.sleep(1000);
}
AI 代码解读

方案2:ICE支持配置剪辑完成回调,时效性更高,业务方收到剪辑成功回调后,主动或被动通知H5剪辑作业完成。

常见问题

影响合成效率的因素

  • 成片时长

ICE的合成耗时和成片时长大约为1:1关系,在H5活动场景,不宜合成较长视频。

短时间内促进分享意愿的视频素材,往往有更好的活动效果,建议成片时长不超过15s。

  • 成片分辨率

更高的分辨率带来更大的计算量,视频中的特效、转场会依据分辨率带来成倍数的计算量增加,建议成片分辨率不高于1920*1080。

  • 特效、缩放、转场、字幕

复杂的特效需要对视频进行逐帧合成并编码,建议控制视频中特效、转场的使用量。提前把可以合并的效果集成到素材中,能有效提高剪辑效率。

联系我们

由于H5交互对实时性要求极高,几秒的优化都是很大的提升,不同的素材、配置,对合成效率有较大影响,可提工单联系技术小哥哥给出更多优化建议。

当活动到达峰值时,轮询任务状态可能会触发接口QPS限制,也可联系技术同学进行调整。

欢迎加入智能媒体生产ICE官方答疑群咨询交流。二维码

目录
打赏
0
0
0
0
3
分享
相关文章
阿里云 在智能媒体服务中,智能生产制作时长包,可以批量混剪视频吗?
【1月更文挑战第15天】【1月更文挑战第73篇】阿里云 在智能媒体服务中,智能生产制作时长包,可以批量混剪视频吗?
609 5
成功解决“Run-Time Check Failure #2 - Stack around the variable ‘arr‘ was corrupted.“问题
成功解决“Run-Time Check Failure #2 - Stack around the variable ‘arr‘ was corrupted.“问题
625 1
手把手教你 WordPress 使用阿里云 CDN 教程,让你的网站飞起来
优化 WordPress 访问速度详细攻略,手把手教你优化过程
9748 0
手把手教你 WordPress 使用阿里云 CDN 教程,让你的网站飞起来
thinkphp6.0 集成Alipay 手机和电脑端支付的方法
第一步   下载 Alipay 的PHP SDK :https://docs.open.alipay.com/54/103419/ 第二步   解压下载都到的压缩包:   解压后得到的文件内容如图    第三步、上传得到的目录中的 aop 文件夹到 thinkphp 6.
6306 0
一键服务化:从魔搭开源模型到OpenAI API服务
在多样化大模型的背后,OpenAI得益于在领域的先发优势,其API接口今天也成为了业界的一个事实标准。
一键服务化:从魔搭开源模型到OpenAI API服务
阿里大鱼进行发短信业务---使用详细步骤-Java操作
这篇文章详细介绍了如何在Java中使用阿里大鱼服务来发送短信,包括开通短信服务、签名和模板管理,以及具体的Java开发步骤和代码示例。
672 0
阿里大鱼进行发短信业务---使用详细步骤-Java操作
数据库实时监控功能
【6月更文挑战第9天】数据库实时监控功能
284 4
连接池技术:简单而强大的加速数据库访问方法
连接池技术是一种简单而强大的方法,可用于加速数据库访问。在传统的数据库访问过程中,每次与数据库建立连接和关闭连接都需要耗费大量的时间和资源。而连接池技术通过事先建立一组可重复使用的数据库连接,有效地减少了连接和关闭连接的开销。本文将深入探讨连接池技术的工作原理和优势,以及如何正确配置和使用连接池来提高应用程序的性能。无论你是开发人员还是系统管理员,通过了解连接池技术,你将能够更好地利用数据库资源,使系统更加稳定和高效。
878 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等