
# 修改视频源 - UpdateVideoSource
#### 功能介绍
修改视频源。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/VIAS/doc?api=UpdateVideoSource)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### URI
PUT /v2/{project_id}/source/{video_source_id}
表1路径参数 
| 参数              | 是否必选 | 参数类型   | 描述                                                                                                                                                      |
|:---|:---|:---|:---|
| project_id      | 是    | String | **参数解释：** 用户项目ID，获取方法参见[获取项目ID和名称](https://support.huaweicloud.com/api-vias/vias_03_0283.html)。 **约束限制：** 不涉及。 **取值范围：** 字符串长度\[0, 32\]。 **默认取值：** 不涉及。 |
| video_source_id | 是    | String | **参数解释：** 已创建成功的视频源id。 **约束限制：** 不涉及。 **取值范围：** 只能由小写英文字母(a\~z,)、数字(0\~9)、中划线(-)、下划线(_)长度范围为\[4, 36\]。 **默认取值：** 不涉及。                                   |
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                     |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | **参数解释：** 用户Token，获取方法参见[认证鉴权](https://support.huaweicloud.com/api-vias/vias_03_0009.html)。 **约束限制：** 不涉及。 **取值范围：** 字符串长度\[0, 32768\]。 **默认取值：** 不涉及。 |
   
表3请求Body参数 
| 参数                | 是否必选 | 参数类型             | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
|:---|:---|:---|:---|
| video_source_name | 是    | String           | **参数解释：** 视频源名称。 **约束限制：** 不涉及。 **取值范围：** 只支持中文、英文字母（a-z,A-Z）、数字、特殊字符（空格.-_() （）），不能以空格开头和结尾，长度范围\[1，100\]。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| latitude          | 否    | String           | **参数解释：** 视频源的地理位置信息，纬度，-90.00000\~90.00000。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| longitude         | 否    | String           | **参数解释：** 视频源的地理位置信息，经度，-180.00000\~180.00000。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| type_config       | 否    | String           | **参数解释：** 视频源配置信息xml。 **约束限制：** 不涉及。 **取值范围：** 长度范围\[1，1024\]。 url形式： ``` <type_config> <url_address></url_address> </type_config> ``` vcn形式： ``` <type_config> <data_source_id></data_source_id> <stream_type></stream_type> <ip></ip> <port></port> <user_name></user_name> <password></password> </type_config> ``` restful形式： ``` <type_config> <http_check></http_check> <url></url> <rtsp_url></rtsp_url> </type_config> ``` ivm形式： ``` <type_config> <device_id></device_id> <channel_id></channel_id> </type_config> ``` obs形式： ``` <type_config> <bucket></bucket> <path></path> </type_config> ``` camera形式： ``` <type_config> <device_id></device_id> <name></name> </type_config> ``` vcn_restful形式： ``` <type_config> <data_source_id></data_source_id> <stream_type></stream_type> <ip></ip> <port></port> <user_name></user_name> <password></password> <vcn_protocol>restful</vcn_protocol> </type_config> ``` **默认取值：** 不涉及。 |
| tag               | 否    | Array of strings | **参数解释：** 视频源标签。 **约束限制：** 不涉及。 **取值范围：** 列表长度最多为4，标签内容只能由中文， 英文字母(a\~z, A\~Z)、数字(0\~9)、中划线(-)、下划线(_)组成, 长度范围\[1，10\]。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
   
#### 响应参数
**状态码：200**
表4响应Body参数 
| 参数                       | 参数类型                                                                                                         | 描述                                                                                                                                                                                                                                                                                                         |
|:---|:---|:---|
| video_source_name        | String                                                                                                       | **参数解释：** 视频源名称。 **取值范围：** 只支持中文、英文字母（a-z,A-Z）、数字、特殊字符（空格.-_() （）），不能以空格开头和结尾。长度范围\[1，100\]。                                                                                                                                                                                                               |
| access_type              | String                                                                                                       | **参数解释：** 接入类型。 - cloud：云上。 - edge: 边缘。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                     |
| status                   | [VideoSourceStatusInfoDto] object                     | **参数解释：** 数据源状态。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                            |
| type                     | String                                                                                                       | **参数解释：** 类型。 - ivm - restful - url - vcn - obs - camera - vcn_restful **取值范围：** 不涉及。                                                                                                                                                                                                                      |
| latitude                 | String                                                                                                       | **参数解释：** 视频源的地理位置信息，纬度，-90.00000\~90.00000。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                |
| longitude                | String                                                                                                       | **参数解释：** 视频源的地理位置信息，经度，-180.00000\~180.00000。 **取值范围：** 不涉及。                                                                                                                                                                                                                                              |
| create_at                | Long                                                                                                         | **参数解释：** 创建时间。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                             |
| type_config              | String                                                                                                       | **参数解释：** 视频源配置信息xml。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                       |
| video_packages           | Array of [VideoGroupInfoDto] objects                         | **参数解释：** 视频源所在分组。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                          |
| service_config_templates | Array of [VideoServiceConfigTemplateDto] objects | **参数解释：** 算法模板体。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                            |
| stream_path              | String                                                                                                       | **参数解释：** 流地址。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                              |
| image                    | String                                                                                                       | **参数解释：** 视频源截图的base64转码。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                   |
| tag                      | Array of strings                                                                                             | **参数解释：** 视频源标签。 **取值范围：** 标签最多选择4个，标签内容只能由中文， 英文字母(a\~z, A\~Z)、数字(0\~9)、中划线(-)、下划线(_)组成。 最小长度：1 最大长度：10                                                                                                                                                                                                   |
| scene_recommend          | Array of strings                                                                                             | **参数解释：** 智能算法推荐的标签。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                        |
| video_source_quality     | Array of strings                                                                                             | **参数解释：** 视频源的视频流质量： - Blurry：画面模糊。 - ColorDistortion：画面颜色失真。 - AbnormalLight：画面光线异常。 - ScreenSplash：画面花屏异常。 - ScreenJitter：画面抖动。 - ScreenMovement：画面移动。 - SceneUpheaval：画面剧变。 - ScreenFreeze：画面冻结。 - BlackScreen：黑屏。 - SnowNoise：雪花噪声。 - Occlude：遮挡。 - GrayScreen：灰屏。 - ScreenSmudge：画面污迹。 **取值范围：** 不涉及。 |
   
 表5VideoSourceStatusInfoDto 
| 参数     | 参数类型   | 描述                                                                         |
|:---|:---|:---|
| status | String | **参数解释：** 视频源状态： - Online：在线。 - Offline：离线。 - exception：异常。 **取值范围：** 不涉及。 |
| name   | String | **参数解释：** 状态中文名。 **取值范围：** 不涉及。                                            |
| level  | String | **参数解释：** 状态等级（用于前端图片颜色匹配）。 **取值范围：** 不涉及。                                 |
   
 表6VideoGroupInfoDto 
| 参数               | 参数类型                                                                 | 描述                                                     |
|:---|:---|:---|
| video_group_id   | String                                                               | **参数解释：** 视频源所在分组id。 **取值范围：** 不涉及。                    |
| video_group_name | String                                                               | **参数解释：** 视频源所在分组名称。 **取值范围：** 不涉及。                    |
| description      | String                                                               | **参数解释：** 视频源所在分组描述。 **取值范围：** 不涉及。                    |
| access_type      | String                                                               | **参数解释：** 接入类型。 - cloud：云上。 - edge: 边缘。 **取值范围：** 不涉及。 |
| create_at        | Long                                                                 | **参数解释：** 创建时间。 **取值范围：** 不涉及。                         |
| modify_at        | Long                                                                 | **参数解释：** 修改时间。 **取值范围：** 不涉及。                         |
| num_video_source | Integer                                                              | **参数解释：** 视频源数量。 **取值范围：** 不涉及。                        |
| group_status     | [GroupStatusDto] object | **参数解释：** 视频源状态。 **取值范围：** 不涉及。                        |
| num_batch_task   | Integer                                                              | **参数解释：** 已配置批量作业数量。 **取值范围：** 不涉及。                    |
   
 表7GroupStatusDto 
| 参数            | 参数类型    | 描述                                |
|:---|:---|:---|
| num_online    | Integer | **参数解释：** 在线视频源数量。 **取值范围：** 不涉及。 |
| num_exception | Integer | **参数解释：** 异常视频源数量。 **取值范围：** 不涉及。 |
| num_offline   | Integer | **参数解释：** 离线视频源数量。 **取值范围：** 不涉及。 |
   
 表8VideoServiceConfigTemplateDto 
| 参数            | 参数类型    | 描述                                 |
|:---|:---|:---|
| name          | String  | **参数解释：** 算法服务名称。 **取值范围：** 不涉及。   |
| roi           | String  | **参数解释：** 公共roi。 **取值范围：** 不涉及。    |
| serviceConfig | String  | **参数解释：** 算法服务公共配置。 **取值范围：** 不涉及。 |
| createAt      | Long    | **参数解释：** 创建时间。 **取值范围：** 不涉及。     |
| modifyAt      | Long    | **参数解释：** 修改时间。 **取值范围：** 不涉及。     |
| numTask       | Integer | **参数解释：** 已运行算法数量。 **取值范围：** 不涉及。  |
   
**状态码：400**
表9响应Body参数 
| 参数         | 参数类型             | 描述                                        |
|:---|:---|:---|
| error_code | String           | **参数解释：** 错误码。 **取值范围：** 不涉及。             |
| error_msg  | String           | **参数解释：** 错误信息描述。 **取值范围：** 不涉及。          |
| detail     | String           | **参数解释：** 错误详情。 **取值范围：** 不涉及。            |
| params     | Array of strings | **参数解释：** 错误参数列举。 **取值范围：** 列表长度\[0, 1\]。 |
| reason     | String           | **参数解释：** 错误原因。 **取值范围：** 不涉及。            |
| advice     | String           | **参数解释：** 建议。 **取值范围：** 不涉及。              |
   
**状态码：500**
表10响应Body参数 
| 参数         | 参数类型             | 描述                                        |
|:---|:---|:---|
| error_code | String           | **参数解释：** 错误码。 **取值范围：** 不涉及。             |
| error_msg  | String           | **参数解释：** 错误信息描述。 **取值范围：** 不涉及。          |
| detail     | String           | **参数解释：** 错误详情。 **取值范围：** 不涉及。            |
| params     | Array of strings | **参数解释：** 错误参数列举。 **取值范围：** 列表长度\[0, 1\]。 |
| reason     | String           | **参数解释：** 错误原因。 **取值范围：** 不涉及。            |
| advice     | String           | **参数解释：** 建议。 **取值范围：** 不涉及。              |
   
#### 请求示例
修改视频源请求体
```
/v2/{project_id}/source/{video_source_id}
{
  "video_source_name" : "url_test",
  "access_type" : "cloud",
  "type" : "url",
  "longitude" : "",
  "latitude" : "",
  "tag" : [ "1" ],
  "video_group_ids" : [ ],
  "type_config" : "<type_config><url_address>rtsp://12.12.12.12:333</url_address></type_config>"
}
```
#### 响应示例
**状态码：200**
更新视频源响应体。
```
{
  "video_source_name" : "url_test",
  "access_type" : "cloud",
  "status" : {
    "status" : "Online",
    "name" : "在线",
    "level" : "1"
  },
  "type" : "url",
  "latitude" : "",
  "longitude" : "",
  "create_at" : 1680772763191,
  "type_config" : "<type_config><url_address>rtsp://12.12.12.12:333</url_address></type_config>",
  "stream_path" : "rtsp://12.12.12.12:333",
  "tag" : [ "1" ],
  "device_id" : "1680772763191",
  "scene_recommend" : [ ],
  "video_source_quality" : [ ]
}
```
#### 状态码
| 状态码 | 描述        |
|:---|:---|
| 200 | 更新视频源响应体。 |
| 400 | 请求错误。     |
| 500 | 内部错误。     |
   
