P2PHlsConfig class

Annotations
  • @JS.new()
  • @anonymous

Constructors

P2PHlsConfig({Function xhrSetup})
factory

Properties

announce String?
默认:https://tracker.cdnbye.com/v1' tracker服务器地址。
getter/setter pair
announceLocation String?
默认:cn' tracker服务器地址的国家代号,分为'cn'、'hk'、'us'。
getter/setter pair
channelId String? Function(int m3u8Url)?
某些流媒体提供商的m3u8是动态生成的 不同节点的m3u8地址不一样 例如example.com/clientId1/streamId.m3u8和example.com/clientId2/streamId.m3u8 而本插件默认使用m3u8地址(去掉查询参数)作为channelId。 这时候就要构造一个共同的chanelId,使实际观看同一直播/视频的节点处在相同频道中。
getter/setter pair
geoIpPreflight bool?
默认:true 向在线IP数据库请求ASN等信息,从而获得更准确的调度,会延迟P2P启动时间。
getter/setter pair
getPeerId ↔ void Function(int peerId)?
获取本节点的Id
getter/setter pair
getPeersInfo ↔ void Function(int peers)?
获取成功连接的节点的信息
getter/setter pair
getStats ↔ void Function(Map<String, dynamic> data)?
获取p2p下载信息 该回调函数可以获取p2p信息,包括: totalHTTPDownloaded: 从HTTP(CDN)下载的数据量(单位KB) totalP2PDownloaded: 从P2P下载的数据量(单位KB) totalP2PUploaded: P2P上传的数据量(单位KB) p2pDownloadSpeed: P2P下载速度(单位KB/s)
getter/setter pair
hashCode int
The hash code for this object.
no setterinherited
httpLoadTime int?
默认:2.0 P2P下载超时后留给HTTP下载的时间。
getter/setter pair
live bool?
默认:true 设置直播或者点播模式,不同模式会自动设置不同的hls.js参数。
getter/setter pair
logLevel String?
默认:boolean 'error' log的等级,分为'warn'、'error'、'none',设为true等于'warn',设为false等于'none'。
getter/setter pair
memoryCacheLimit Object?
默认:{"pc": 800 * 1024 * 1024, "mobile": 500 * 1024 * 1024} p2p缓存的最大数据量,分为PC和mobile。
getter/setter pair
p2pEnabled bool?
默认:true 是否开启P2P。
getter/setter pair
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
segmentId String? Function(Map<String, dynamic> data)?
解决动态ts路径问题 类似动态m3u8路径问题,相同ts文件的路径也可能有差异 这时候需要忽略ts路径差异的部分 插件默认用ts的绝地路径(url)来标识每个ts文件 所以需要通过钩子函数重新构造标识符。
getter/setter pair
sharePlaylist bool?
默认:false 是否允许m3u8文件的P2P传输。
getter/setter pair
token String?
默认:undefined token用于控制台多域名数据汇总展示,另外如果自定义channelId也需要设置token。
getter/setter pair
useHttpRange bool?
默认:true 在可能的情况下使用Http Range请求来补足p2p下载超时的剩余部分数据。
getter/setter pair
waitForPeer bool?
默认:false 优先尝试从对等端下载前几片数据,可以提高P2P比例,但可能会增加起播延时。
getter/setter pair
waitForPeerTimeout int?
默认:4.5 waitForPeer的超时时间(单位秒),超时后恢复从http下载。
getter/setter pair
webRTCConfig Object?
默认:{} 用于配置stun和datachannel的字典 (opens new window)。
getter/setter pair
xhrSetup Function
no setter

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited