首页 > 编程语言 >heygen模型接口 简单使用 java版

heygen模型接口 简单使用 java版

时间:2023-09-26 14:57:43浏览次数:115  
标签:视频 java 接口 合成视频 heygen 生成 模板

HeyGen - AI Spokesperson Video Creator  官网地址

Create a video (heygen.com) api地址

简介:

  公司最近对ai方面业务比较感兴趣了,特别是aigc合成式人工智能方面。国内现在都还处于试用阶段,真正面向的c端,b端的产品还不够完善。

最的就是做了一些直播数字人,短视频数字人,数字人名片等边缘应用这种。现在我们的需求就是对接heygen的模型接口,比较重要的就是合成视频,

语言合成,根据模板生成视频的接口,下面贴出一些简单的示例工具类并列举一些我自己踩的坑,防止自己迭代的时候忘记。

 

工具类

 

对接接口很简单,但是有几个比较坑的点和需要补充的点

1.上传人脸的照片时,heygen的接口演示的是base64编码的格式,我还以为需要转成base64的格式才行,结果一直报错,其实是heygen那边自己的转换的,我们这边只需要把文件转为 字节数组就行了

2. 如果你的需求对于视频来说不繁杂,只需要一个生成出来的数字人视频的话,直接使用生成视频的接口就ok了,调用这个接口会返回给你一个视频的唯一id,然后根据视频id去查询视频状态,如果成功了

就会返回 视频的路径,视频缩略图的路径,但是需要注意这些链接都会过期,你可以自己转存oss或者是定时刷新链接就行。

3. 如果你想直接生成一些比较复杂的视频,我建议你还是在heygen官网的dome中去生成一些模板,然后根据模板中的格式去用代码替换比较简单,但是这个模板一但很多,就更加麻烦了,我的解决方案是使用的

策略者模式来较为优雅的解决使用很多模板的需要硬编码的问题。

4. 因为heygen主要对接的是海外市场,所以可以用来合成视频的中午音频会比较少,但是也包含了普通话,粤语,台湾腔调这种,现在全部的音频有 382条左右,直接请求会很慢,所以我索性在我这边做了一个索引

当然你也可以自己上传你自己的声音来合成视频。

ps:

最麻烦的就是 json格式的处理,一个模板返回的json就有160行左右,并且嵌套多层,我是使用的fastjson2 ,做一个对象来相互转换的。如果有更好的处理办法也可以留言告诉我

 

标签:视频,java,接口,合成视频,heygen,生成,模板
From: https://www.cnblogs.com/del-x/p/17730067.html

相关文章

  • Java 集合Array和ArrayList的区别
    Java集合,也叫作容器,主要是由两大接口派生而来:一个是Collection接口,主要用于存放单一元素;另一个是Map接口,主要用于存放键值对。对于Collection接口,下面又有三个主要的子接口:List、Set和Queue。Java集合框架如下图所示:ListArrayList:Object[] 数组Vector:Object[] 数组Li......
  • Java常见总结
    Java是一种广泛使用的编程语言,具有许多特性使其成为开发者的首选。以下是一些关键的Java特性:简单易学:Java的语法相对简单,易于理解和学习。它采用了C和C++的语法,去除了一些复杂的特性,使得编程变得更加简单。面向对象:Java是一种纯粹的面向对象编程语言。它支持封装、继承和多态等面向......
  • JavaScript 终于原生支持数组分组了!
    在日常开发中,很多时候需要对数组进行分组,每次都要手写一个分组函数,或者使用lodash的groupBy函数。好消息是,JavaScript现在正在引入全新的分组方法:Object.groupBy和Map.groupBy,以后再也不需要手写分组函数了,目前最新版本的Chrome(117)已经支持了这两个方法!以前的数组分组假设有一个......
  • java实现一个接口多个实现类,并且调用指定实现方法@Service
    接口packagecn.daenx.framework.notify.sms.service;importcn.daenx.framework.common.vo.system.utils.SmsSendResult;importjava.util.Map;/***短信接口*/publicinterfaceSmsService{SmsSendResultsendSms(Map<String,String>info,Stringphone......
  • 关于vite/cli构建项目的区别&环境变量配置&关于接口地址
    ####区别**Vite:**1.**开发服务器启动速度:**Vite通过利用ES模块的特性,实现了快速的冷启动和热模块替换。这意味着在开发环境中,启动开发服务器和应用程序的重新加载速度更快。1.**即时的按需编译:**Vite在开发过程中只会编译和打包当前正在编辑的文件,而不会重新构建整个......
  • 【遥遥领先】Eolink IDEA 插件:零代码入侵,自动生成接口
    省流版:Eolink有IDEA插件吗?有,而且遥遥领先!我们在一年半之前就发布了,而且功能更丰富!IDEA插件市场搜索“EolinkApikit”即可安装使用。......
  • 在线问诊 Python、FastAPI、Neo4j — 提供接口服务
    目录构建服务层接口路由层PostMan调用采用FastAPI搭建服务接口:https://www.cnblogs.com/vipsoft/p/17684079.htmlFastAPI文档:https://fastapi.tiangolo.com/zh/构建服务层qa_service.pyfromservice.question_classifierimport*fromservice.question_parserimpor......
  • 如何教会小白使用API接口获取商品数据
    在当今的数字化时代,API接口已经成为数据获取的重要通道。API,全称应用程序接口,是一种预定义的软件组件,用于提供特定的功能或数据。通过使用API接口,我们可以轻松地从各种数据源获取信息,包括商品数据。本文将指导小白如何使用API接口获取商品数据,从申请API接口、使用API接口到实际应用......
  • 解锁Java面试中的锁:深入了解不同类型的锁和它们的用途
    简介多线程编程在现代软件开发中扮演着至关重要的角色。它使我们能够有效地利用多核处理器和提高应用程序的性能。然而,多线程编程也伴随着一系列挑战,其中最重要的之一就是处理共享资源的线程安全性。在这个领域,锁(Lock)是一个关键的概念,用于协调线程之间对共享资源的访问。本文将深......
  • 80基于java在线婚纱定制系统设计与实现(含配套lun文,可参考做bi设)
    本章节给大家带来一个基于java在线婚纱定制系统设计与实现,可适用于在线婚纱摄影预定系统,基于web的婚纱影楼管理系统设计,基于web的婚纱影楼管理系统设计,婚纱摄影网系统,婚纱摄影网站系统,婚纱摄影网站系统,婚纱系统,婚纱管理系统等等;项目背景一件完美的婚纱相当于一件艺术品,婚纱设......