获取上传地址
设备端获取推流地址
Request
GET https://vsaas-domain/vsaas/api/v1/stream/stream_url/stream_url/{UDID}?stoken={stoken}&starttime={timestamp}&protocol=upload&event_id={event_id}[&event_file={event_file}][&media_type={media_type}][&tags={tag}]
参数
Required parameters
Response
Code
200
400
例子
Request
curl -vvv https://idc-stg-be-docker.kalay.us:8864/vsaas/api/v1/stream/stream_url/TC021LBP010000000001AAAAAAAAAAAAAAAAAAAA?stoken=dEmhotTRI7FG4ceJfZ1R7b6NwuJXhpclrGlm2LvkOguM4nPCjnZRN5zrltts-sPp0E5kdK_T6D9pJN5axFgnkX0QmiWfOm3-ybLmQy5Guwk=&protocol=upload\&event_id=999&starttime=1562048846
Response
{ "result": { "url":"https://idc-stg-stream01.kalay.us:8080/post_stream/v1/TC021LBP010000000001AAAAAAAAAAAAAAAAAAAA?OTP=202E457ED959CA934F3A&stoken=dEmhotTRI7FG4ceJfZ1R7b6NwuJXhpclrGlm2LvkOguM4nPCjnZRN5zrltts-sPp0E5kdK_T6D9pJN5axFgnkX0QmiWfOm3-ybLmQy5Guwk=&event_id=999&starttime=1562048846", "contract_type": "event" "recording_max_kbps": 10 "video_max_fps": 15 "event_recording_max_length": 10 "video_max_height": 360 "video_max_width": 480 }, "message": "", "code": 1 }.
推流
将视频流推向云端,推流的url来自于上一步获取到的地址。
Request
POST https://stream.server.domain/post_stream/v1/post_stream/v1/{UDID}?OTP={OTP}&stoken={stoken}&event_id={event_id}&starttime={timestamp}[&tags={tag}]
参数
Header parameters
Content-Type: multipart/form-data; boundary=
使用form data的方式上传事件视频
Required parameters
Required form-data: media_file
如果有多个文件,重复进行即可
Content-Disposition: form-data; name="media_file";filename="1570011960000_D5000.ts";file_start_time="1570011960000";file_duration="5000";event_end="0"
如果有完整填写file_start_time、 file_duration 和 event_end这三个,则可以不用填写filename,因为前三者优先级高于文件名。
各参数说明如下:
file_start_time: String
毫秒级时间戳,需为starttime*1000。
file_duration: String
文件时长
event_end: String 1 or 0
1为结束,0为正常推流中
filename: String
格式:
{13位毫秒时间戳}_D{毫秒级时长}.(ts/mp4/jpg)
如果是最后一个ts文件,则需要加上E
{13位毫秒时间戳}_D{毫秒级时长}E.(ts/mp4/jpg)
如果是jpg,则时长填0
Content-Type: video/MP2T, video/mp4, image/jpg .
Required body: 二进制数据
Response
Code
200
400
403
例子
Request dump
Host: ...... Accept-Encoding: gzip Content-Length: 7333310 Content-Type: multipart/form-data; boundary=cf58a91e1d88633dfb10e1c64ef494b9c69ecddc8ef903055835a73413ac User-Agent: Go-http-client/1.1 --cf58a91e1d88633dfb10e1c64ef494b9c69ecddc8ef903055835a73413ac Content-Disposition: form-data; name="media_file";file_start_time="1570011960000";file_duration="5000";event_end="0" Content-Type: video/MP2T ...... --cf58a91e1d88633dfb10e1c64ef494b9c69ecddc8ef903055835a73413ac Content-Disposition: form-data; name="media_file";file_start_time="1570011965000";file_duration="5000";event_end="1" Content-Type: video/MP2T ......
Request
curl -XPOST -F 'media_file=@1570237012000_D5000.ts;type=video/mp2t' -F 'media_file=@1570237017000_D5000E.ts;type=video/mp2t' http://localhost:55550/post_stream/v1/DRUUA974YFRC9MPGU1XJ?stoken=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9&starttime=1570237012&event_id=999&OTP=hahahaha
更新事件标签
增加标签
Request
HTTP request
GET https://vsaas-domain/vsaas/api/v1/stream/stream_event/{UDID}?stoken={stoken}&tags=a,b,c,d&starttime={timestamp}
参数
Header
Required parameters
Response
Code
200
400
例子
Request
curl -vvv "https://vsaas-stg.kalay.us/vsaas/api/v1/stream/stream_event/TC021LBP010000000001AAAAAAAAAAAAAAAAAAAA?stoken=dEmhotTRI7FG4ceJfZ1R7b6NwuJXhpclrGlm2LvkOguM4nPCjnZRN5zrltts-sPp0E5kdK_T6D9pJN5axFgnkX0QmiWfOm3-ybLmQy5Guwk=&tags=a,b,c,d&starttime=1562048846"