【API 进阶之路】太秃然了,老板要我一周内检测并导入一万个小时的视频
摘要:假期结束后回来上班,走进电梯都有一种特别的感觉,电梯那个植发广告里的大哥看我的眼神好像和之前不太一样…
上回说到,老板奖励7天带薪假,我就回家玩耍了几天,顺便还帮兄弟发不脱当了一回“AI大神”。
假期结束后回来上班,走进电梯都有一种特别的感觉,电梯某植发广告里的大哥看我的眼神好像和之前不太一样…到公司开了第一个会,原来,那个眼神像是一个预示。
老板在会上说,最近视频团队谈了个合作,和另一个短视频平台进行内容共享,这样可以为我们的视频网站提供将近1万个小时的视频内容,希望研发来支持导入视频。
我心想:“这个简单呀,不就是导入视频么?写个脚本不就行了。”我给了老板一个“交给我”的眼神,老板回了我一个“看好你”的笑容。就这么着,这事儿就落到我了头上。现在想想,可能是我回北京的时候,没给脑子买票,人回来了,脑子落在老家…
会后我找短视频运营老大对需求,他给提了3个点:
第一:导过来的视频要全部加上我们的水印;
第二:要导入的视频格式和我们现在网站要求的格式不相符,所有视频都要转格式;
第三:要对导过来的视频内容做检测,防止有违法违纪的内容出现。
最后他还补了一句:“最好能在一周内完成,老板想要尽早上线。”
你在逗我么?一万个小时的视频,要转格式、加水印还要做内容安全检测,一周完成?我突然有点明白电梯广告那大哥的眼神是啥意思了…
批量转格式和加水印倒是好解决,但是这个安全检测...一边懊恼得直薅头发,一边习惯性逛华为云找灵感。
我们之前用过图像内容检测API,可以用来检测图片是否有违法违纪的内容,但是视频貌似用不了。如果能把视频每一帧都截图,是不是就可以检测了?继续找,果然有一个“视频截图API”!
先用视频截图API设置自动截图的任务,再用图像内容检测API来判断是否有内容风险,同时利用媒体处理MPC提供的转码模板和水印模板来解决打水印和转格式的问题。完美解决!
提交视频截图任务的方式如下:
前提条件
获取需要创建截图任务区域的项目ID(获取项目ID)。
明确需要创建截图任务所在的区域信息,并获取该区域的Endpoint(地区和终端节点获取)。
调用OBS创建桶API创建用于存储截图文件的OBS桶,再调用OBS上传对象API将待截图处理的视频文件存储在OBS桶中。
操作步骤
步骤1:获取用户token。用于MPC接口时进行认证鉴权。
在“我的凭证”页面获取username、password、domainname、projectname,调用如下接口获取Token。
如图所示,红框中的信息为获取用户Token。
![](https://static001.geekbang.org/infoq/0f/0fa37104f6b81430d29b8caeaafb759c.png)
步骤2:创建截图任务
1、发送一条POST请求。
POST:https://{endpoint}/v1/{project_id}/thumbnails
2、请求消息头中增加“X-Auth-Token”,值设置为获取的用户token。
3、Request Body中传入参数如下:
4、请求响应成功后,反馈截图任务ID。
步骤3:查询视频截图执行情况
1、发送一条GET请求。
GET:https://{endpoint}/v1/{project_id}/thumbnails?task_id=2081
2、请求消息头中增加“X-Auth-Token”,值设置为获取的用户Token。请求响应成功后,返回视频截图的详情信息。
截图完成以后,截好的图都传入创建好的OBS桶中,再把截图做下图片内容审核就OK啦!
写完程序,自动传着视频,我下楼吃饭,在电梯里特意看了看广告牌的大哥,这下眼神正常了~
了解更多华为云API信息:免费下载创新加速利器《华为云API精选手册》。
版权声明: 本文为 InfoQ 作者【华为云开发者社区】的原创文章。
原文链接:【http://xie.infoq.cn/article/b6bcb7830a8db241d7a989f03】。文章转载请联系作者。
评论