
# RTMP视频流接入VIS（已下线）
VIS支持RTMP视频流接入，您需要在VIS控制台中创建RTMP视频流。
![](https://support.huaweicloud.com/usermanual-vis/public_sys-resources/note_3.0-zh-cn.png)
此功能已下线，若有RTMP视频流接入需求建议您使用[视频直播服务](https://support.huaweicloud.com/live/index.html)，如有问题，请[提交工单](https://console.huaweicloud.com/ticket/?ttl=960329618#/ticketindex/createIndex)咨询。
 #### 创建流程
1. 登录[VIS管理控制台](https://console.huaweicloud.com/vis/?locale=zh-cn)。

2. 选择"视频流管理 \> 新增视频流"，如[图1]所示。
   图1新增RTMP视频流   
   ![](https://support.huaweicloud.com/usermanual-vis/zh-cn_image_0000001161475392.png) 
3. 配置视频流详情，各参数说明如[表1]所示。
    表1RTMP视频流参数说明 
   | 参数     | 说明                                                                            | 取值样例          |
   |:---|:---|:---|
   | 名称     | 视频流的名称，所有用户的视频流名称不能重名，全局唯一。 后续推流与取流都以视频流名称作为标识。 | stream2       |
   | 编码格式   | 选择视频流的编码格式。                                                                   | H264          |
   | 视频接入类型 | 这里选择RTMP。                                                                     | RTMP          |
   | 标签     | 用于标识该视频流，一个视频流最多添加10个标签。                                                      | group=group#1 |
   | 描述     | 视频流的描述信息。                                                                     | -             |
      
   
4. 视频流创建之后，需要激活才能进行拉流。在"视频流管理"界面，单击RTMP视频流操作列的"激活"。
5. 视频流在激活之后，单击视频流名称，可以查看视频流详情，包括实时视频、推流地址以及取流地址。 视频流如果没有激活，则无法查看。
   ![](https://support.huaweicloud.com/usermanual-vis/public_sys-resources/note_3.0-zh-cn.png)
   - 推流地址：用户客户端可以通过该地址，将客户端的视频流推送到VIS平台。 例如推流地址为"rtmp://10.154.75.3:47/vis/huawei_rtmp"时，开源工具FFmpeg的推流命令为：
     **ffmpeg -stream_loop -1 -re -i huaweiyun.flv -vcodec copy -acodec aac -ar 44100 -f flv rtmp://10.154.75.3:47/vis/huawei_rtmp**
     
   
   - 取流地址：用户客户端可以通过该地址，获取该视频流。
     
 
 #### （可选）创建访问密钥
这里创建的访问密钥仅用于RTMP视频流的推流鉴权，具体请参见[推流鉴权规则]。若您不需要对推流进行鉴权，可跳过该操作。
1. 登录[VIS管理控制台](https://console.huaweicloud.com/vis/?locale=zh-cn)。

2. 在左侧导航栏选择"凭证与配置管理 \> 访问密钥 \> 新增"。
   图2凭证管理   
   ![](https://support.huaweicloud.com/usermanual-vis/zh-cn_image_0000001161634644.png) 
3. 在弹出框中，您可以自定义密钥名称和描述信息，单击"确定"后VIS会自动生成一个密钥，并自动下载为类似"credentials.csv"的文件，请妥善保管该文件。
4. 创建完成后，在"访问密钥"界面可以删除或者修改密钥，只能修改密钥名称和描述信息，密钥本身不能被修改。
 
 #### 推流鉴权规则
如果[创建RTMP视频流]时设置了访问密钥，创建完成后，在使用客户端进行推流时，需在RTMP视频流的原始推流地址的基础上拼接相关鉴权参数（Expires、AccessKeyId、Token），参数规则请参见[表2]。
RTMP视频流的原始推流地址查看方法：在VIS管理控制台选择"视频流管理"，单击RTMP视频流名称进入视频预览界面，查看推流地址，例如"rtmp://10.4.55.180:14201/vis/stream_name"或者 "rtmp://10.4.55.180:14201/vis/stream_name?project_id=c5648d9ee6b14xxxxxxxe6fc594e55df"，或者
需要鉴权的推流地址样例：
```
获取的推流地址不带有参数的，通过 ? 来拼接：
rtmp://xxx.xxx.xxx.xxx:xxxx/vis/stream_name?Expires=1472201595&AccessKeyId=J7UFQDxxxxxxNUV5LQK3CN&Token=bjKraxxxxxx%2FlM%3D
获取的推流地址带有参数的，通过 & 来拼接：
rtmp://xxx.xxx.xxx.xxx:xxxx/vis/stream_name?project_id=c5648d9ee6b14xxxxxxxe6fc594e55df&Expires=1472201595&AccessKeyId=J7UFQDxxxxxxNUV5LQK3CN&Token=bjKraxxxxxx%2FlM%3D
```
 表2RTMP推流鉴权查询参数说明 
| 参数          | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | 取值样例                      |
|:---|:---|:---|
| Expires     | RTMP视频流的过期时间戳，采用Unix时间戳。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | 1472201595                |
| AccessKeyId | 访问密钥的AK值。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | J7UFQDDxxxxxxLQK3CN       |
| Token       | 通过验证计算得到的token，计算规则： **Token=Base64(hmac-sha1(SecretKey, Tcurl + Expires))** 该计算规则固定采用hmac-sha1加密算法和Base64编码方式，其中的参数说明如下： - SecretKey为访问密钥的SK值，作为加密算法密钥。  - Tcurl + Expires由Tcurl和Expires进行字符串拼接得到，为加密算法消息数据。 - Tcurl为VIS控制台视频预览界面上原始推流地址（不包含参数部分），例如： **rtmp://xxx.xxx.xxx.xxx:xxxx/vis/stream_name**   - Expires同查询参数Expires，取值相同。     | KH48kBm6Bp0xxxxxx6rl904rq |
   
