1. 接口描述
接口请求域名: cme.tencentcloudapi.com 。
创建多媒体创作引擎项目,目前支持的项目类型有:
默认接口请求频率限制:20次/秒。
推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。
2. 输入参数
以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。
参数名称 | 必选 | 类型 | 描述 |
---|---|---|---|
Action | 是 | String | 公共参数,本接口取值:CreateProject。 |
Version | 是 | String | 公共参数,本接口取值:2019-10-29。 |
Region | 否 | String | 公共参数,本接口不需要传递此参数。 |
Platform | 是 | String | 平台 Id,指定访问的平台。平台概念,请参见文档 平台。 示例值:test |
Name | 是 | String | 项目名称,不可超过30个字符。 示例值:新建项目 |
Owner | 是 | Entity | 项目归属者,即项目的所有者,后续操作只有该所有者有权限操作。 注:目前所有项目只能设置归属个人,暂不支持团队项目。 |
Category | 是 | String | 项目类别,取值有: 示例值:VIDEO_EDIT |
Mode | 否 | String | 项目模式,一个项目可以有多种模式并相互切换。 当 Category 为 VIDEO_EDIT 时,可选模式有: 注:不填则为默认模式。 |
AspectRatio | 否 | String | 画布宽高比。 该字段已经废弃,请使用具体项目输入中的 AspectRatio 字段。 示例值:16:9 |
Description | 否 | String | 项目描述信息。 示例值:新建 |
SwitcherProjectInput | 否 | SwitcherProjectInput | 导播台项目输入信息,仅当项目类型为 SWITCHER 时必填。 |
LiveStreamClipProjectInput | 否 | LiveStreamClipProjectInput | 直播剪辑项目输入信息,暂未开放,请勿使用。 |
VideoEditProjectInput | 否 | VideoEditProjectInput | 视频编辑项目输入信息,仅当项目类型为 VIDEO_EDIT 时必填。 |
VideoSegmentationProjectInput | 否 | VideoSegmentationProjectInput | 视频拆条项目输入信息,仅当项目类型为 VIDEO_SEGMENTATION 时必填。 |
StreamConnectProjectInput | 否 | StreamConnectProjectInput | 云转推项目输入信息,仅当项目类型为 STREAM_CONNECT 时必填。 |
RecordReplayProjectInput | 否 | RecordReplayProjectInput | 录制回放项目输入信息,仅当项目类型为 RECORD_REPLAY 时必填。 |
MediaCastProjectInput | 否 | MediaCastProjectInput | 媒体转推项目输入信息,仅当项目类型为 MEDIA_CAST 时必填。 |
3. 输出参数
参数名称 | 类型 | 描述 |
---|---|---|
ProjectId | String | 项目 Id。 示例值:60336ab29997a500019xxx |
RtmpPushInputInfoSet | Array of RtmpPushInputInfo | |
RequestId | String | 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 |
4. 示例
示例1 创建普通剪辑项目
输入示例
POST / HTTP/1.1
Host: cme.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateProject
<公共请求参数>
{
"Category": "VIDEO_EDIT",
"Platform": "test",
"Owner": {
"Type": "PERSON",
"Id": "user_id_61978823e6a253000100fb0f"
},
"Name": "first_project",
"AspectRatio": "16:9"
}
输出示例
{
"Response": {
"ProjectId": "cmepid_5f16967b64436100015fb025",
"RtmpPushInputInfoSet": [],
"RequestId": "c44cbb5b-b809-4061-8c45-7469b64e8e5x"
}
}
示例2 创建一个导播台项目
输入示例
POST / HTTP/1.1
Host: cme.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateProject
<公共请求参数>
{
"Category": "SWITCHER",
"Platform": "test",
"Owner": {
"Type": "PERSON",
"Id": "user_id_61978823e6a253000100fb0f"
},
"Name": "导播台",
"SwitcherProjectInput": {
"PgmOutputConfig": {
"TemplateId": "10001"
}
}
}
输出示例
{
"Response": {
"ProjectId": "3f1699f3f97b9f0001920f29",
"RtmpPushInputInfoSet": [],
"RequestId": "c44cbb5b-b809-4061-8c45-7469b64e8e5c"
}
}
示例3 使用初始轨道创建项目
输入示例
POST / HTTP/1.1
Host: cme.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateProject
<公共请求参数>
{
"Category": "VIDEO_EDIT",
"Platform": "test",
"Owner": {
"Type": "PERSON",
"Id": "user_id_61978823e6a253000100fb0f"
},
"Name": "视频剪辑项目并初始化轨道",
"VideoEditProjectInput": {
"InitTracks": [
{
"TrackItems": [
{
"Type": "Video",
"VideoItem": {
"Duration": "10",
"SourceMedia": "52858908113623182311",
"SourceMediaStartTime": "0",
"SourceType": "VOD"
}
}
],
"Type": "Video"
}
],
"AspectRatio": "16:9"
}
}
输出示例
{
"Response": {
"ProjectId": "3f1699f3f97b9f0001920f31",
"RtmpPushInputInfoSet": [],
"RequestId": "c44cbb5b-b809-4061-8c45-7469b64e8e6a"
}
}
示例4 使用剪辑模板创建项目
输入示例
POST / HTTP/1.1
Host: cme.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateProject
<公共请求参数>
{
"Category": "VIDEO_EDIT",
"Platform": "test",
"Owner": {
"Type": "PERSON",
"Id": "user_id_61978823e6a253000100fb0f"
},
"Name": "剪辑模板项目",
"VideoEditProjectInput": {
"AspectRatio": "16:9",
"VideoEditTemplateId": "61385efc24827f05859d3765@Public@CME"
}
}
输出示例
{
"Response": {
"ProjectId": "3f1699f3f97b9f0001920f30",
"RtmpPushInputInfoSet": [],
"RequestId": "c44cbb5b-b809-4061-8c45-7469b64e8e5a"
}
}
示例5 创建一个云转推项目,初始化输入源为直播拉流
云转推项目初始化输入输出源
输入示例
POST / HTTP/1.1
Host: cme.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateProject
<公共请求参数>
{
"Category": "STREAM_CONNECT",
"Platform": "test",
"Owner": {
"Type": "PERSON",
"Id": "user_id_61978823e6a253000100fb0f"
},
"Name": "stream_connect",
"StreamConnectProjectInput": {
"MainInput": {
"LivePullInputInfo": {
"InputUrl": "rtmp://liveplay.video-studio.myqcloud.com/output/1250000001-600e8e7fb1cc1c0001293759"
},
"InputType": "LivePull"
},
"Outputs": [
{
"PushUrl": "rtmp://livepush.video-studio.myqcloud.com/output/1250000001-600e8e66194ef500012d9b08"
}
]
}
}
输出示例
{
"Response": {
"ProjectId": "3f1699f3f97b9f0001920f29",
"RtmpPushInputInfoSet": [],
"RequestId": "c44cbb5b-b809-4061-8c45-7469b64e8e5x"
}
}
示例6 创建一个云转推项目,初始化输入源为直播推流
云转推项目初始化输入输出源
输入示例
POST / HTTP/1.1
Host: cme.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateProject
<公共请求参数>
{
"Category": "STREAM_CONNECT",
"Platform": "test",
"Owner": {
"Type": "PERSON",
"Id": "user_id_61978823e6a253000100fb0f"
},
"Name": "云转推",
"StreamConnectProjectInput": {
"MainInput": {
"InputType": "RtmpPush",
"RtmpPushInputInfo": {
"ExpiredSecond": "3600"
}
},
"Outputs": [
{
"PushUrl": "rtmp://livepush.video-studio.myqcloud.com/output/1250000001-600e8e66194ef500012d9b08"
}
]
}
}
输出示例
{
"Response": {
"ProjectId": "3f1699f3f97b9f0001920f29",
"RtmpPushInputInfoSet": [
{
"ExpiredSecond": 3600,
"PushUrl": "rtmp://livepush-xx.video-studio.myqcloud.com/output/1250000001-6086674e265b450001837f8e?txSecret=4478cfdfe0fd0eb3820705aebaa328xx&txTime=608FA1CE"
},
{
"ExpiredSecond": 0,
"PushUrl": ""
}
],
"RequestId": "c44cbb5b-b809-4061-8c45-7469b64e8e5x"
}
}
示例7 创建一个点播转直播项目,播放一次,输出视频的帧率为25帧,码率为2500K,视频大小为1920*1080。
输入示例
POST / HTTP/1.1
Host: cme.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateProject
<公共请求参数>
{
"Category": "MEDIA_CAST",
"Platform": "test",
"Owner": {
"Type": "PERSON",
"Id": "user_id_61978823e6a253000100fb0f"
},
"Name": "点播转直播项目",
"MediaCastProjectInput": {
"PlaySetting": {
"LoopCount": "1"
},
"OutputMediaSetting": {
"VideoSetting": {
"Width": "1920",
"FrameRate": "25",
"Bitrate": "2500",
"Height": "1080"
}
},
"SourceInfos": [
{
"Type": "VOD",
"FileId": "122"
},
{
"Type": "CME",
"MaterialId": "aaa12323"
}
],
"DestinationInfos": [
{
"PushUrl": "rtmp://livetest.com/live/a?t=11",
"Name": "test"
}
]
}
}
输出示例
{
"Response": {
"ProjectId": "3f1699f3f97b9f0001920f31",
"RtmpPushInputInfoSet": [],
"RequestId": "c44cbb5b-b809-4061-8c45-7469b64e8e6a"
}
}
5. 开发者资源
腾讯云 API 平台
腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。
API Inspector
用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。
SDK
云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。
- Tencent Cloud SDK 3.0 for Python: GitHub Gitee
- Tencent Cloud SDK 3.0 for Java: GitHub Gitee
- Tencent Cloud SDK 3.0 for PHP: GitHub Gitee
- Tencent Cloud SDK 3.0 for Go: GitHub Gitee
- Tencent Cloud SDK 3.0 for Node.js: GitHub Gitee
- Tencent Cloud SDK 3.0 for .NET: GitHub Gitee
- Tencent Cloud SDK 3.0 for C++: GitHub Gitee
- Tencent Cloud SDK 3.0 for Ruby: GitHub Gitee
命令行工具
6. 错误码
以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。
错误码 | 描述 |
---|---|
FailedOperation.CreateRecordTask | 创建录制任务失败。 |
FailedOperation.RecordNotSupport | 直播录制功能暂未对使用腾讯云点播存储的平台开放。 |
InvalidParameter | 参数错误。 |
InvalidParameterValue | 参数取值错误。 |
InvalidParameterValue.AspectRatio | 画布宽高比不合法。 |
InvalidParameterValue.Category | 项目类别不合法。 |
InvalidParameterValue.ExternalMediaInfoNotExist | 原始媒资信息不存在。 |
InvalidParameterValue.MaterialId | 媒体 ID 无效。 |
InvalidParameterValue.Name | 名称字段编辑错误,需使用 UTF8 编码。 |
InvalidParameterValue.NameLenLimt | 名称字段长度超长,限制 30 个中文字符。 |
InvalidParameterValue.OwnerId | 归属者 ID 不合法。 |
InvalidParameterValue.OwnerType | 归属者类型不合法。 |
InvalidParameterValue.Platform | 平台参数取值错误。 |
InvalidParameterValue.SwitcherProjectInput | 导播台项目输入信息无效。 |
InvalidParameterValue.TrackItem | 轨道元素无效。 |
InvalidParameterValue.VodSubAppid | 绑定的点播子应用无效。 |
OperationDenied.PermissionDeny | 权限不足,请检查对应操作者的权限。 |
ResourceNotFound | 资源不存在。 |
ResourceNotFound.Platform | 平台不存在。 |
UnauthorizedOperation | 未授权操作。 |