5.Video Channel API
# 5.1 Video Upload Channel API
### **URL:/UploadChannel?channelId=[channelId]&imageWidth=[imageWidth]&imageHeight=[imageHeight]&pixelFormat=[pixelFormat]**
完整url示例:
```
ws://192.168.123.123:2626/UploadChannel?channelId=1&imageWidth=640&imageHeight=360&pixelFormat=2
```
### 说明
**此接口用于创建视频上传通道,使用时如果WebSocket连接可以成功打开则说明创建成功,否则创建失败。在建立连接后,待像素数据准备完毕即可直接通过WebSocket上发数据,不需要做任何处理。**
### 使用时按如下方式准备byte流:
假设某视频宽度640个像素,高度360个像素,若以RGB格式上传,需做如下处理:从图像左上角开始,从第一行开始,将各列像素的R,G,B通道像素值依次排列,将下一行拼接在此一维数组后面,逐行排列,直至所有像素排列完毕。则最终一维数组长度为640\*360\*3=691200。
|参数名称|参数值|说明|
|---|---|---|
|channelId|通道ID|任意数值
|imaegwidth|图像宽度|正整数
|imageHeight|图像高度|正整数
|pixelFormat|像素格式|见下表:支持的像素格式
**目前支持的像素格式**
|像素格式|pixelForamt值
|---|---|
|UNKNOWN|0(不可在创建上传通道时使用)
|RGB|1
|RGBA|2
|BGR|3
|BGRA|4
# 5.2 Video Download Channel API
### **URL:/DownloadChannel?id=[id]**
完整url示例:
```
ws://192.168.123.123:2626/DownloadChannel?id=1
```
### 说明
**此接口用于创建视频下载通道,使用时如果WebSocket连接可以成功打开说明创建成功,否则创建失败。在建立之前必须先使用Service接口获取该通道的图像格式。创建成功后即可直接读取像素数据流,将数据流按5.1所述方式解析图像数据即可获取每帧图像。**