Ikaros-521 / digital_human_video_player

带HTTP API的数字人视频播放器,使用gradio api对接Easy-Wav2Lip、Sadtalker、GeneFacePlusPlus、MuseTalk,也可以用于播放本地视频
https://www.bilibili.com/video/BV1iW421P7si
GNU General Public License v3.0
123 stars 26 forks source link
python

前言

项目名:数字人视频播放器
功能:可以通过HTTP API传入需要播放的视频,并排队在web页面自动播放
目前支持的项目:

环境

python:3.10.10

使用

安装依赖

pip install -r requirements.txt

修改配置文件

自行根据需求修改config.json

运行API

python api_server.py

API

运行后,可以查看API文档:http://127.0.0.1:8091/docs

播放视频

概述

请求参数

参数名 类型 是否必需 描述
type string 使用的视频合成技术类型(easy_wav2lip / sadtalker / genefaceplusplus / musetalk / local)
video_path string 视频文件的绝对路径(在local模式下必填)
audio_path string 音频文件的绝对路径
captions_printer dict 字幕打印机相关参数,不传则不发送。content显示文本内容 start_delay显示文本内容的延时显示时间(毫秒) keep_time字幕保持时间(毫秒) 例如:{"content": "你好", "start_delay": 1000, "keep_time": 3000}
insert_index int 插入索引值,队尾插入:-1,队首插入:0,其他自定义
move_file bool 是否移动合成或指定的视频文件到项目路径内。默认True

响应

参数名 类型 描述
code int 状态码,200为成功,小于0为错误代码,大于0为部分成功代码
msg string 响应消息,描述请求的处理结果

跳过当前播放的视频,播放下一个视频

概述

请求参数

参数名 类型 是否必需 描述

响应

参数名 类型 描述
code int 状态码,200为成功,小于0为错误代码,大于0为部分成功代码
msg string 响应消息,描述请求的处理结果

获取队列中非默认视频的个数

概述

请求参数

参数名 类型 是否必需 描述

响应

参数名 类型 描述
code int 状态码,200为成功,小于0为错误代码,大于0为部分成功代码
count int 队列中非默认视频的个数
msg string 响应消息,描述请求的处理结果

获取视频播放列表数据

概述

请求参数

参数名 类型 是否必需 描述

响应

参数名 类型 描述
code int 状态码,200为成功,小于0为错误代码,大于0为部分成功代码
data list 存储视频信息的数据列表
message string 响应消息,描述请求的处理结果

删除视频播放列表中指定索引的视频数据

概述

请求参数

参数名 类型 是否必需 描述
index int 删除索引值,从0开始,0就是首个待播放视频

响应

参数名 类型 描述
code int 状态码,200为成功,小于0为错误代码,大于0为部分成功代码
data list 存储视频信息的数据列表
message string 响应消息,描述请求的处理结果

设置相关配置

概述

请求参数

参数名 类型 是否必需 描述
captions_printer_api_url string 前端 字幕打印机API请求地址,例如:http://127.0.0.1:5500/send_message

响应

参数名 类型 描述
code int 状态码,200为成功,小于0为错误代码,大于0为部分成功代码
data list list数据,存储着转换为url路径的视频地址
msg string 响应消息,描述请求的处理结果

更新日志