[关闭]
@sewise-dev 2017-10-16T01:18:32.000000Z 字数 2753 阅读 486

微录播资源发布流程

发布 微录播


目录


1. m3u8任务数据结构

{
//m3u8的id,也是任务id
hashid:"",
//m3u8任务状态,1:未处理;2:处理中;3:处理失败;4:成功
status:1,
//fullname
fullname:"",
//m3u8_cs地址
m3u8_cs:"",
//m3u8地址
m3u8_path: "",
//任务处理百分比
percent:"0%",
//任务参数
params:[],
//任务回调地址
callback_url:"",
//任务失败的信息
error:"",
//任务失败状态码
err_num:0,
//失败的任务次数
err_count:0,
//上载的资源列表
source_list:[],
//上载的资源信息
source_info:{},
//上载的总切片数
chunk_total:0,
//创建时间
time:common.formatDate(new Date()),
//更新时间
update_time:common.formatDate(new Date())
}

data eg: { "_id" : ObjectId("59e0a3fb1e44702ce2360b8d"), "hashid" : "5c7644021a70262b37c44d782e9fc0b4", "status" : 4, "fullname" : "storage/swlsource/m3u8/tmp/5c7644021a70262b37c44d782e9fc0b4.m3u8", "m3u8_cs" : "/sata/storage/swlsource/m3u8/cs/5c7644021a70262b37c44d782e9fc0b4.m3u8", "m3u8_path" : "http://vtest.sewise.com.cn/storage/swlsource/m3u8/tmp/5c7644021a70262b37c44d782e9fc0b4.m3u8", "percent" : "100%", "params" : [ { "filePath" : "/resource/c66241d91800c822a5c7ecace8801517", "startTime" : 0, "endTime" : 7298 }, { "filePath" : "/resource/f89c756b162dc3a88ce444aece33e1c8", "startTime" : 0, "endTime" : 74333 }, { "filePath" : "/resource/729e064c92ef5bb02d5743febcf9b57e", "startTime" : 0, "endTime" : 9361 }, { "filePath" : "/resource/a95f9b185865157ca6dd4dfc9d12c91d", "startTime" : 0, "endTime" : 10323 } ], "callback_url" : "http://vtest.sewise.com.cn/m3u8/task_ret?userinfo={\"username\":\"upyun\"}", "error" : "", "err_num" : 0, "err_count" : 0, "time" : "2017-10-13 19:31:07", "source_list" : [ "de34aff77aa742ef474a8e64ae5d690d", "773437ee46ece2409eb773996bfe1c41", "994ddcc6fc6acbd049c0eed67d2d2fcd", "bf1864c35988eba9fec89ebf50ee5e9e" ], "source_info" : { "de34aff77aa742ef474a8e64ae5d690d" : { "sn" : "sp05av100034711a", "lastIndex" : 1, "index" : 1, "complete" : true }, "773437ee46ece2409eb773996bfe1c41" : { "sn" : "sp05av100034711a", "lastIndex" : 7, "index" : 7, "complete" : true }, "994ddcc6fc6acbd049c0eed67d2d2fcd" : { "sn" : "sp05av100034711a", "lastIndex" : 1, "index" : 1, "complete" : true }, "bf1864c35988eba9fec89ebf50ee5e9e" : { "sn" : "sp05av100034711a", "lastIndex" : 1, "index" : 1, "complete" : true } }, "chunk_total" : 10, "update_time" : "2017-10-13 19:32:06" }

2. 云端相关代码文件以及方法

2.1 services/m3u8.js

2.1.1 checkM3u8Task :提交m3u8任务进行,检查是否需要上载与切片
2.1.2 checkTsTask :检查m3u8对应的ts资源是否已经同步
2.1.3 m3u8Task : 提交m3u8切片任务进行切片
2.1.4 updateTsProCo :更新m3u8中ts的上载进度

2.2 services/rpc.js

2.2.1 ts_process :更新ts的上传进度

2.3 routes/m3u8.js

2.3.1 task_ret :更新m3u8切片任务进度回调

3. 微录播相关代码文件以及方法

3.1 services/syncCloud.js

3.1.1 syncCs :云端调用该方法进行资源同步
3.1.2 checkUpToCs :判断是否执行同步任务,并将同步任务入库
3.1.2 upToCsBR :断点续传
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注