视频智能 API 最佳实践

本文涉及的产品
视频点播 VOD,流量+存储+转码
简介: 本文档主要介绍如何使用阿里云视频智能进行视频智能分析的最佳实践代码部署和使用流程。

简介

本文档主要介绍如何使用阿里云视频智能进行视频智能分析的最佳实践代码部署和使用流程。

环境要求

JDK 1.7+

Apache Tomcat 7.0+

操作系统不限

准备工作

开始部署代码之前,首先需要做如下工作:

1、视频点播,上传视频(注:在本代码中,可以自动上传视频,此步骤可以略过),如果视频点播没有开通的话,请开通视频点播权限。

 6e7045a8c45d68cbb2564ff60c29164eced547ea

2、视频点播,配置域名

6a60adab213bb3798b035f3b205eae66c69ad749

3、配置域名mx

4、在阿里云控制台获取AccessKeyId和AccessSecret,用来在程序中识别用户身份

 0002654cec0c9f5ab24bae42478134445697f855

安装代码

1、下载代码


2、导入

使用 intellij idea开发工具导入

 

配置&部署

1、代码中配置AccessKeyId和AccessSecret

TestOpenAPI,修改自己的AccessKeyId和AccessSecret,具体位置如下:

public static String access_key_id = "自己的accesskey";
public static String access_key_secret = "自己的secret";

 

2、配置Tomcat

a)  进入 Edit Configurations

4040a92935d2f5dafc46ede6e6aeb7453b1af202

b)点击 + ,选择 Tomcat 服务器,如果是本地Tomcat 选择 Local

9746fe163bc2840730056182a72930579ed6a846

c)Tomcat Server 

9c1cd0b5719dca5d53e5ba25d384092cebe10baa

d)选择要部署的war

27ec66dd5567c03254e667cd4d140c0ab6479604

e)运行

c86d638e1d6982798425e846906e8b44235fb51f

f)部署成功,使用上传测试自己的功能吧

69ec7ef10a2db5dc1303448dce75e24aeeef7eb1

 

代码基本结构及调用流程

代码主要有两个步骤组成:提交视频智能处理作业和查询视频智能处理作业:

1、提交视频智能处理作业

输入参数为视频点播的视频id,从视频点播页获取视频id,但在我们的项目代码中,这个视频id已经调用了视频点播的接口进行了自动获取,获取视频点播的api请查看视频点播相关的接口api说明。

TestOpenAPI.createJobUrl("5500a9e25f764b4dbcf8401db0a0397b");

参数里面的字符串是步骤1里面的视频id,使用这个方法会返回一个创建任务的url链接,这个链接只能访问一次,第二次访问就会无效。

返回的url举例:


vod.cn-shanghai.aliyuncs.com?AccessKeyId=xxxx&Action=SubmitAIJob&Format=JSON&MediaId=xxxx&SignatureMethod=HMAC-SHA1&SignatureNonce=xxxx&SignatureVersion=1.0&Timestamp=2018-02-27T11%3A28%3A40Z&Types=AIVideoCover%2CAIVideoCategory&Version=2017-03-21&Signature=xxxx

浏览器中可以直接访问这个url(注意,这个url只能访问一次),这个url会返回JobId,在查询视频智能处理作业中将使用这个JobId。


2、查询视频智能处理作业

根据第一步获取的JobId(这个为第一步产生的,请看贴图),进行视频智能处理

TestOpenAPI.listJobUrl("957b23b5198f4ac28afa8b7cadb83730,04a2ff20f679478581d54334bad09692");

这个方法使用的参数 就是上一步产生的JobId。

返回的url举例:


vod.cn-shanghai.aliyuncs.com/?AccessKeyId=xxxx&Action=ListAIJob&Format=JSON&JobIds=xxxx%2C04a2ff20f679478581d54334bad09692&SignatureMethod=HMAC-SHA1&SignatureNonce=cbdebcb1-c23c-4b55-a7fe-a3609c10968e&SignatureVersion=1.0&Timestamp=2018-02-27T11%3A32%3A01Z&Version=2017-03-21&Signature=XjN%2FpTe9IzXkarV4P68lYdKH3z0%3D

这个url会返回包括封面图等视频智能分析结果数据。
目录
相关文章
|
2月前
|
JSON 算法 安全
探索RESTful API设计的最佳实践
【9月更文挑战第2天】在数字化时代的浪潮中,后端开发如同搭建一座桥梁,连接着用户与数据的无限可能。本文将深入探讨如何打造高效、可维护的RESTful API,从资源命名到状态码的巧妙运用,每一个细节都隐藏着提升用户体验的智慧。你将学会如何在浩瀚的代码海洋中,用简洁明了的设计原则,引领用户安全抵达数据的彼岸。让我们一起启航,探索API设计的奥秘,让后端开发成为艺术与科学的完美结合。
|
8天前
|
数据可视化 API 索引
ES常见Index API操作最佳实践!
【10月更文挑战第21天】
35 1
ES常见Index API操作最佳实践!
|
2月前
|
JSON 前端开发 API
打造高效后端:RESTful API 设计的最佳实践
【9月更文挑战第14天】在数字化时代,后端开发是构建强大、灵活和可维护应用程序的基石。本文将深入探讨如何设计高效的RESTful API,包括清晰的资源定义、合理的HTTP方法使用、URL结构规划、状态码的准确返回以及数据格式的设计。通过这些实践,开发者能够创建出既符合行业标准又易于维护和扩展的API,为前端提供强大的数据支持,确保整个应用的稳定性和性能。
164 74
|
5天前
|
API 数据安全/隐私保护 开发者
探索RESTful API设计的最佳实践
【10月更文挑战第25天】在数字时代的浪潮中,API成为了连接不同软件组件的桥梁。本文将深入探讨如何设计高效的RESTful API,通过实际代码示例揭示背后的逻辑和结构之美。我们将从基础原则出发,逐步展开到高级概念,旨在为读者提供一套完整的设计蓝图。
|
29天前
|
机器学习/深度学习 PyTorch 算法框架/工具
揭秘深度学习中的微调难题:如何运用弹性权重巩固(EWC)策略巧妙应对灾难性遗忘,附带实战代码详解助你轻松掌握技巧
【10月更文挑战第1天】深度学习中,模型微调虽能提升性能,但常导致“灾难性遗忘”,即模型在新任务上训练后遗忘旧知识。本文介绍弹性权重巩固(EWC)方法,通过在损失函数中加入正则项来惩罚对重要参数的更改,从而缓解此问题。提供了一个基于PyTorch的实现示例,展示如何在训练过程中引入EWC损失,适用于终身学习和在线学习等场景。
42 4
揭秘深度学习中的微调难题:如何运用弹性权重巩固(EWC)策略巧妙应对灾难性遗忘,附带实战代码详解助你轻松掌握技巧
|
9天前
|
缓存 监控 测试技术
获取API接口数据的最佳实践详解
在开发过程中,与API进行交互是获取数据和服务的关键步骤。本文详细介绍了10个最佳实践,包括明确需求和文档、错误处理、数据验证、性能优化、安全性、日志和监控、版本控制、代码复用和维护、测试以及遵守法律和道德规范,帮助开发者更高效地从API获取数据,确保数据的准确性、安全性和性能。
|
2月前
|
API 网络架构 UED
构建RESTful API的最佳实践
【8月更文挑战第54天】在数字化时代,RESTful API已成为连接不同软件系统、提供数据服务的关键桥梁。本文将深入探讨如何构建高效、可维护的RESTful API,涵盖设计原则、安全策略和性能优化等关键方面。通过具体代码示例,我们将一步步展示如何实现一个简洁、直观且功能强大的API。无论你是新手还是有经验的开发者,这篇文章都将为你提供宝贵的指导和启示。
76 33
|
28天前
|
存储 缓存 API
构建高效后端:RESTful API 设计的最佳实践
【10月更文挑战第2天】在数字化时代,后端开发是连接用户与数据的桥梁。本文将深入探讨如何设计一个高效、易于维护的后端系统,特别是围绕RESTful API的设计原则和最佳实践。我们将从基础概念出发,逐步深入到实际案例分析,最终通过代码示例具体展示如何实现这些设计原则。无论你是初学者还是有经验的开发者,这篇文章都将为你提供价值,帮助你构建更优秀的后端服务。
58 10
|
20天前
|
XML JSON API
深入理解RESTful API设计:最佳实践与实现
【10月更文挑战第9天】深入理解RESTful API设计:最佳实践与实现
31 1
|
27天前
|
人工智能 自然语言处理 PyTorch
Text2Video Huggingface Pipeline 文生视频接口和文生视频论文API
文生视频是AI领域热点,很多文生视频的大模型都是基于 Huggingface的 diffusers的text to video的pipeline来开发。国内外也有非常多的优秀产品如Runway AI、Pika AI 、可灵King AI、通义千问、智谱的文生视频模型等等。为了方便调用,这篇博客也尝试了使用 PyPI的text2video的python库的Wrapper类进行调用,下面会给大家介绍一下Huggingface Text to Video Pipeline的调用方式以及使用通用的text2video的python库调用方式。