PLVChannelInfoModel

Objective-C

@interface PLVChannelInfoModel : NSObject

Swift

class PLVChannelInfoModel : NSObject

频道信息数据模型

基础信息

  • PLV账户 用户Id

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSString *_Nonnull accountUserId;

    Swift

    var accountUserId: String { get }
  • 频道ID

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSString *_Nonnull channelId;

    Swift

    var channelId: String { get }
  • 直播场次ID(仅当讲师‘正在推流时’,可拿到最新的场次ID)

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSString *_Nonnull sessionId;

    Swift

    var sessionId: String { get }
  • 直播频道名称

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSString *_Nonnull channelName;

    Swift

    var channelName: String { get }
  • 是否只支持音频观看

    Declaration

    Objective-C

    @property (nonatomic, readonly) BOOL isOnlyAudio;

    Swift

    var isOnlyAudio: Bool { get }

限制信息

多线路信息

  • 可选线路数量

    Declaration

    Objective-C

    @property (nonatomic, readonly) NSInteger lineNum;

    Swift

    var lineNum: Int { get }
  • 当前线路下标 (由 0 起始)

    Declaration

    Objective-C

    @property (nonatomic, readonly) NSInteger currentLineIndex;

    Swift

    var currentLineIndex: Int { get }

多码率信息

  • 多码率是否开启

    Declaration

    Objective-C

    @property (nonatomic, readonly) BOOL multirateEnabled;

    Swift

    var multirateEnabled: Bool { get }
  • 码率/清晰度 可选项字符串数组

    Declaration

    Objective-C

    @property (nonatomic, strong, readonly) NSArray<NSString *> *_Nonnull definitionNamesOptions;

    Swift

    var definitionNamesOptions: [String] { get }
  • 当前码率/清晰度 (仅 多码率开启时 有值)

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSString *_Nonnull currentDefinition;

    Swift

    var currentDefinition: String { get }

暖场信息

  • 暖场类型

    Declaration

    Objective-C

    @property (nonatomic, readonly) PLVChannelWarmUpType warmUpType;

    Swift

    var warmUpType: PLVChannelWarmUpType { get }
  • 暖场内容地址

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSString *_Nonnull warmUpContentUrlString;

    Swift

    var warmUpContentUrlString: String { get }
  • 图片类型暖场的跳转链接 (若无需跳转,则此值为空)

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSString *_Nonnull warmUpImageHREF;

    Swift

    var warmUpImageHREF: String { get }

跑马灯信息

  • 跑马灯类型

    Declaration

    Objective-C

    @property (nonatomic, readonly) PLVChannelMarqueeType marqueeType;

    Swift

    var marqueeType: PLVChannelMarqueeType { get }
  • TypeDefault:跑马灯内容;TypeURL:自定义地址

    Declaration

    Objective-C

    @property (nonatomic, copy) NSString *_Nonnull marquee;

    Swift

    var marquee: String { get set }
  • 跑马灯字体大小

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSNumber *_Nonnull marqueeFontSize;

    Swift

    @NSCopying var marqueeFontSize: NSNumber { get }
  • 跑马灯字体颜色

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSString *_Nonnull marqueeFontColor;

    Swift

    var marqueeFontColor: String { get }
  • 跑马灯透明度

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSString *_Nonnull marqueeOpacity;

    Swift

    var marqueeOpacity: String { get }
  • 跑马灯自定义缩放

    Declaration

    Objective-C

    @property (nonatomic, readonly) BOOL marqueeAutoZoomEnabled;

    Swift

    var marqueeAutoZoomEnabled: Bool { get }
  • 跑马灯动画类型

    Declaration

    Objective-C

    @property (nonatomic, readonly) NSInteger marqueeSetting;

    Swift

    var marqueeSetting: Int { get }
  • 跑马灯文字移动指定像素所需时间/显示时间(单位:秒)

    Declaration

    Objective-C

    @property (nonatomic, readonly) NSInteger marqueeSpeed;

    Swift

    var marqueeSpeed: Int { get }

防录屏水印

播放器LOGO

  • 图片链接

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSString *_Nonnull logoImageUrl;

    Swift

    var logoImageUrl: String { get }
  • 跳转链接

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSString *_Nonnull logoHref;

    Swift

    var logoHref: String { get }
  • 透明度

    Declaration

    Objective-C

    @property (nonatomic, readonly) CGFloat logoOpacity;

    Swift

    var logoOpacity: Double { get }
  • 位置

    Declaration

    Objective-C

    @property (nonatomic, readonly) NSUInteger logoPosition;

    Swift

    var logoPosition: UInt { get }

片头广告

  • 广告类型

    Declaration

    Objective-C

    @property (nonatomic, readonly) PLVChannelAdvertType advertType;

    Swift

    var advertType: PLVChannelAdvertType { get }
  • 广告图片展示链接

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSString *_Nonnull advertImageUrl;

    Swift

    var advertImageUrl: String { get }
  • 广告视频展示链接

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSString *_Nonnull advertFlvUrl;

    Swift

    var advertFlvUrl: String { get }
  • 跳转链接

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSString *_Nonnull advertHref;

    Swift

    var advertHref: String { get }
  • 广告时长

    Declaration

    Objective-C

    @property (nonatomic, readonly) NSUInteger advertDuration;

    Swift

    var advertDuration: UInt { get }

暂停广告

  • 暂停广告图片展示链接

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSString *_Nonnull stopAdvertImageUrl;

    Swift

    var stopAdvertImageUrl: String { get }
  • 暂停广告图片跳转链接

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSString *_Nonnull stopAdvertHref;

    Swift

    var stopAdvertHref: String { get }

弹幕信息

  • 弹幕模块是否启用

    Declaration

    Objective-C

    @property (nonatomic, readonly) BOOL closeDanmuEnable;

    Swift

    var closeDanmuEnable: Bool { get }
  • 弹幕文字移动指定像素所需时间(单位:秒)

    Declaration

    Objective-C

    @property (nonatomic, readonly) NSInteger barrageSpeed;

    Swift

    var barrageSpeed: Int { get }

流信息

  • 流ID

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSString *_Nonnull streamID;

    Swift

    var streamID: String { get }
  • 流类型(‘disk’表示硬盘推流)

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSString *_Nonnull streamType;

    Swift

    var streamType: String { get }

Qos

  • Qos 发送频率

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly) NSNumber *_Nonnull reportFreq;

    Swift

    @NSCopying var reportFreq: NSNumber { get }
  • 卡顿统计阈值,单位秒

    Declaration

    Objective-C

    @property (nonatomic, readonly) NSInteger stallingSendFrequency;

    Swift

    var stallingSendFrequency: Int { get }

[ 方法 ]

  • 根据数据字典,创建频道信息模型

    Declaration

    Objective-C

    + (nonnull instancetype)channelInfoModelWithDataDict:
        (nonnull NSDictionary *)dataDict;

    Swift

    convenience init(dataDict: [AnyHashable : Any])

    Parameters

    dataDict

    数据字典

  • 更新频道限制信息 (异步)

    Declaration

    Objective-C

    - (void)updateChannelRestrictInfo:
        (nonnull void (^)(PLVChannelRestrictState))completion;

    Swift

    func updateChannelRestrictInfo() async -> PLVChannelRestrictState

    Parameters

    completion

    请求完成Block