图文生成视频
更新时间:2023-03-07
各接口用途说明
图文生成视频涉及4个接口,分别为:网页转视频、图文素材转视频、视频任务查询、视频任务中止与删除。
创建视频任务涉及两个接口,您可根据需求选择不同的接口进行视频任务的创建;视频创建后,您可通过视频任务查询接口查看视频生成结果;若您不需要该视频,可以使用视频任务中止与删除接口进行删除操作。
- 网页转视频: 传入图文的url,创建视频任务。
- 图文素材转视频:传入字幕、图片等素材,创建视频任务。
- 视频任务查询:用于在视频任务创建后,查看视频生成状态。待视频生成完毕,通过查询接口即可查看生成视频的地址链接。
- 视频任务中止与删除:用于在视频任务创建后,中止并删除视频。
需要注意的是以上接口仍处于邀测状态,未授权的请求无法得到结果。可以通过主页右侧的合作咨询和我们联系,获取授权。
创建网页转视频
接口描述
用于创建图文生成视频任务,提供新闻链接和必要的参数,即可创建一个视频任务,得到任务id,用于后续的查询或中止操作。
请求说明
请求示例
- HTTP方法: POST
- 请求URL: https://aip.baidubce.com/rpc/2.0/brain/vidpress/v1/create_vidpress
- URL参数:
参数 | 值 |
---|---|
access_token | 通过API Key和Secret Key获取的access_token,参考“Access Token获取” |
- Header如下:
参数 | 值 |
---|---|
Content-Type | application/json |
- body请求参数:
参数 | 是否必选 | 类型 | 描述 |
---|---|---|---|
newsUrl | 是 | string | 网页地址链接 |
ttsPer | 是 | int | 发音人,支持范围如下。0:成熟女声;1:温润男声、3:磁性男声、4:乖巧女童、100:甜美女生、103:可爱女生、106:成熟男声 |
duration | 是 | int | 目标视频时长 30-300s |
resolution | 是 | string | 尺寸分辨率,360 <= 宽度 <= 1920,360 <= 高度 <= 1920 推荐使用1280x720以下分辨率,分辨率越高,需要生成的时间就越多。 |
videoBegin | 否 | string | 片头视频地址 |
videoBeginDuration | 否 | float | 可限制片头视频的时长,单位:秒(对片头视频做截断操作) |
videoEnd | 否 | string | 片尾视频地址,不需片尾时长 |
videoLogo | 否 | string | 角标链接 |
videoLogoMargin | 否 | int | 角标边缘距离,可选参数,默认为 0。会同时指定上方和左右的距离(传参示例:20) |
videoLogoPos | 否 | string | 角标位置,可选参数,支持左上角(top- left)、右上角(top-right)。默认为 top-left |
bgMusic | 否 | string | 背景音乐链接 |
captionBottomMargin | 否 | int | 字幕位置,距离视频底部的位置,单位px,如:10。字幕背景默认为黑色。 |
Body示例
{
"newsUrl":" ",
"duration":60,
"resolution":"1280x720",
"ttsPer":106
}
返回说明
返回参数
参数 | 类型 | 详细说明 |
---|---|---|
code | int | 错误码,0代表成功,其他代表失败 |
msg | string | 错误信息,成功时为空,失败返回错误原因 |
data | array | 成功时,返回的结果数组 |
+jobId | int | 任务id,用于后续查询或中止任务 |
+estimateStartTime | datetime | 任务预计开始时间 |
+estimateFinishTime | datetime | 任务预计结束时间 |
返回示例
成功返回示例:
{
"code": 0,
"data": {
"jobId": 111,
"estimateStartTime": "2020-01-07 12:00:00",
"estimateFinishTime": "2020-01-07 12:30:00"
},
"msg": "success"
}
失败返回示例:
{
"code": 84001,
"msg": "已有任务正在生成视频, 任务完成后可再次创建!",
}
创建图文素材转视频
接口描述
用于创建图文生成视频任务,提供素材(文本、图片素材等)信息作为参数,即可创建一个视频任务,得到任务 id,用于后续的查询或中止操作,支持多段图文组合。
请求说明
请求示例
- HTTP方法: POST
- 请求URL: https://aip.baidubce.com/rpc/2.0/brain/vidpress/v1/create_vidpress_alignment
- URL参数:
参数 | 值 |
---|---|
access_token | 通过API Key和Secret Key获取的access_token,参考“Access Token获取” |
- Header如下:
参数 | 值 |
---|---|
Content-Type | application/json |
- body请求参数:
参数 | 是否必选 | 类型 | 描述 |
---|---|---|---|
trackTexts | 是 | array | 图文信息 |
+TrackText.text | 是 | string | 原始文章内容 3000 字以内 |
+TrackText.tracks | 是 | Array | 图片素材数组,总时长范围 10-300s |
+Track.url | 是 | string | 图片素材地址 |
+Track.expectedDuration | 否 | float | 图片素材播放时长,单位:秒 |
+Track.type | 是 | string | 素材类型, 图片为“image” ,支持JPEG/JPG/PNG/GIF类型的图片 |
totalDuration | 是 | int | 素材总时长,单位:秒。若传入,以此值为准,范围为 10-300 秒 |
resolution | 是 | string | 尺寸分辨率,360 <=宽度 <= 1920,360 <= 高度 <= 1920 推荐使用1280x720以下分辨率,分辨率越高,需要生成的时间就越多 |
ttsPer | 是 | int | 发音人,支持的范围如下:1:温润男声、3:磁性男声、106:成熟男声、0:成熟女声、100:甜美女生、4:乖巧女童、103:可爱女生 |
videoTitle | 是 | string | 视频标题 |
videoBegin | 否 | string | 片头视频地址 |
videoBeginDuration | 否 | float | 可限制片头视频的时长,单位:秒(对片头视频做截断操作) |
videoEnd | 否 | string | 片尾视频地址,暂不需片尾时长 |
videoLogo | 否 | string | 角标链接 |
videoLogoMargin | 否 | int | 角标边缘距离,可选参数,默认为 0。会同时指定上方和左右的距离(传参示例:20) |
videoLogoPos | 否 | string | 角标位置,可选参数,支持左上角(top-left)、右上角(top-right)。默认为 top-left |
bgMusic | 否 | string | 背景音乐链接 |
captionBottomMargin | 否 | int | 字幕位置,距离视频底部的位置,单位px,例如:10。字幕背景默认为黑色。 |
Body示例
{
"totalDuration": 60,
"resolution": "1280x720",
"trackTexts": [
{
"text": "今日,人社部举行2022年一季度新闻发布会。会上,人力资源社会保障部就业促进司副司长陈勇嘉介绍,为进一步提升毕业生就业服务质量,促进他们顺利就业,今年3月—6月,人社部组织开展“公共就业服务进校园”活动,活动开展以来各地共组织各类活动1万余场,提供岗位信息近500万个,服务毕业生近600万人次。",
"tracks": [
{
"expectedDuration": 10,
"type": "image",
"url": "https://pics3.baidu.com/feed/9f510fb30f2442a73a14b6cd99119241d1130218.jpeg?token=82ebd16ec1a8e83328ed87290770cd26"
}
]
}
],
"videoTitle":"test",
"ttsPer": 0
}
返回说明
返回参数
参数 | 类型 | 详细说明 |
---|---|---|
code | int | 错误码,0 代表成功,其他代表失败 |
msg | string | 错误信息,成功时返回success,失败返回错误原因 |
data | array | 成功时,返回结果数组 |
+jobId | int | 任务 id,用于后续查询或中止任务 |
+estimateStartTime | datetime | 任务预计开始时间 |
+estimateFinishTime | datetime | 任务预计结束时间 |
返回示例
{
"code": 0,
"data": {
"jobId": 111,
"estimateStartTime": "2020-01-07 12:00:00",
"estimateFinishTime": "2020-01-07 12:30:00"
},
"msg": "success"
}
错误码详见错误码列表
视频任务查询
接口描述
用于查询视频任务列表信息,或某个任务 id 的当前信息。
请求说明
请求示例
- HTTP方法: POST
- 请求URL: https://aip.baidubce.com/rpc/2.0/brain/vidpress/v1/query
- URL参数:
参数 | 值 |
---|---|
access_token | 通过API Key和Secret Key获取的access_token,参考“Access Token获取” |
- Header如下:
参数 | 值 |
---|---|
Content-Type | application/json |
- body请求参数:
参数 | 是否必选 | 类型 | 描述 |
---|---|---|---|
jobId | 是 | int | 创建接口返回的任务id |
Body示例
{
"jobId": 111
}
返回说明
返回参数
参数 | 类型 | 详细说明 |
---|---|---|
code | int | 错误码,0代表成功,其他代表失败 |
msg | string | 错误信息 |
data | Object | 查询结果 |
+ jobId | int | 任务 id |
+ status | int | 任务状态 3:生成中,4:生成成功,5:生成失败,100:已删除 |
成功时的data参数 | ||
+ expireTime | Date | 视频文件过期时间 |
+ expire | int | 是否失效,1:已失效,2:未失效 |
+ videoAddr | string | 视频地址 |
+ videoDuration | int | 结果视频时长 |
失败时的data参数 | ||
+ failReason | string | 失败原因 |
生成中/排队中的data参数 | ||
+ estimateStartTime | date | 任务开始时间 |
+ estimateFinishTime | date | 任务结束时间 |
返回示例
成功返回示例
{
"code": 0,
"msg": "success",
"data": {
"jobId": 123,
"status": 4,
"expireTime": "2020-01-20 19:35:37",
"expire": 2,
"videoAddr": "http://bj.bcebos.com/nlpc-article-outer-
vidpress/3_d3b5ab1fb988cc19ef99d5b3d1ba17ee.mp4",
"videoCoverAddr": "http://bj.bcebos.com/nlpc-article-outer-
vidpress/3_8d87d78ace2de50ae3d8d9059eeb5d51.jpeg",
"videoDuration": "110"
}
}
失败返回示例
{
"code": 0,
"msg": "success",
"data": {
"jobId": 123,
"status": 5,
"failReson": "网络原因"
}
}
生成中返回示例
{
"code": 0,
"msg": "success",
"data": {
"jobId": 123,
"status": 3,
"estimateStartTime": "2020-12-12 00:00:00",
"estimateFinishTime": "2020-12-12 00:00:00"
}
}
视频任务中止与删除
接口描述
用于中止或删除已有的视频任务。
请求说明
请求示例
- HTTP方法: POST
- 请求URL: https://aip.baidubce.com/rpc/2.0/brain/vidpress/v1/delete
- URL参数:
参数 | 值 |
---|---|
access_token | 通过API Key和Secret Key获取的access_token,参考“Access Token获取” |
- Header如下:
参数 | 值 |
---|---|
Content-Type | application/json |
- body请求参数:
参数 | 是否必选 | 类型 | 描述 |
---|---|---|---|
jobId | 是 | int | 任务id |
Body示例
{
"jobId": 111
}
返回说明
返回参数
参数 | 类型 | 详细说明 |
---|---|---|
code | int | 状态码 |
msg | string | 错误信息 |
返回示例
成功返回示例
{
"code": 0,
"msg": "ok"
}
错误码
错误码 | 错误信息 |
---|---|
84001 | 创建视频生成任务失败, 请稍后重试! 已有任务正在生成视频, 任务完成后可再次创建! |
84002 | 创建视频生成任务失败, 请更换URL链接后再试! |
84003 | 查询视频生成任务失败, 请稍后重试! 任务不存在, 请检查输入数据后再试! |
84005 | 删除视频生成任务失败, 请稍后重试! 任务不存在, 请检查输入数据后再试! |