PLVVodMediaVideo
Objective-C
@interface PLVVodMediaVideo : NSObject
Swift
class PLVVodMediaVideo : NSObject
视频数据模型
-
视频 id
Declaration
Objective-C
@property (nonatomic, copy, readonly) NSString *vid;
Swift
var vid: String! { get }
-
视频标题
Declaration
Objective-C
@property (nonatomic, copy) NSString *title;
Swift
var title: String! { get set }
-
Undocumented
Declaration
Objective-C
@property (nonatomic) BOOL hasPPT
Swift
var hasPPT: Bool { get set }
-
viewlog 上报的频率
Declaration
Objective-C
@property (nonatomic, readonly) int reportFreq;
Swift
var reportFreq: Int32 { get }
-
可用清晰度数量
Declaration
Objective-C
@property (nonatomic, readonly) int qualityCount;
Swift
var qualityCount: Int32 { get }
-
默认播放清晰度
Declaration
Objective-C
@property (nonatomic) int preferredQuality;
Swift
var preferredQuality: PLVVodMediaQuality { get set }
-
视频时长
Declaration
Objective-C
@property (nonatomic, readonly) NSTimeInterval duration;
Swift
var duration: TimeInterval { get }
-
源文件大小
Declaration
Objective-C
@property (nonatomic, readonly) NSInteger sourcefilesize;
Swift
var sourcefilesize: Int { get }
-
源文件url
Declaration
Objective-C
@property (nonatomic, copy, readonly) NSString *play_source_url;
Swift
var play_source_url: String! { get }
-
各码率视频大小
Declaration
Objective-C
@property (nonatomic, strong, readonly) NSArray<NSNumber *> *filesizes;
Swift
var filesizes: [NSNumber]! { get }
-
视频快照URL
Declaration
Objective-C
@property (nonatomic, copy) NSString *snapshot;
Swift
var snapshot: String! { get set }
-
视频宽高比
Declaration
Objective-C
@property (nonatomic) CGFloat ratio;
Swift
var ratio: Double { get set }
-
源文件播放
Declaration
Objective-C
@property (nonatomic, readonly) BOOL keepSource;
Swift
var keepSource: Bool { get }
-
分类id
Declaration
Objective-C
@property (nonatomic, copy, readonly) NSString *categoryId;
Swift
var categoryId: String! { get }
-
分类树
Declaration
Objective-C
@property (nonatomic, strong, readonly) NSArray *categoryTree;
Swift
var categoryTree: [Any]! { get }
-
是否存在问答
Declaration
Objective-C
@property (nonatomic, readonly) BOOL interactive;
Swift
var interactive: Bool { get }
-
视频字幕
Declaration
Objective-C
@property (nonatomic, strong) NSArray<PLVVodMediaVideoSubtitleItem *> *srts;
Swift
var srts: [PLVVodMediaVideoSubtitleItem]! { get set }
-
视频双字幕
Declaration
Objective-C
@property (nonatomic, strong) NSArray<PLVVodMediaVideoDoubleSubtitleItem *> *match_srt;
Swift
var match_srt: [PLVVodMediaVideoDoubleSubtitleItem]! { get set }
-
播放器皮肤
Declaration
Objective-C
@property (nonatomic, strong) PLVVodMediaVideoPlayerSetting *player;
Swift
var player: PLVVodMediaVideoPlayerSetting! { get set }
-
字幕名称 支持双字幕且存在双字幕时 增加”双语“字幕名称
Declaration
Objective-C
@property (nonatomic, strong, readonly) NSArray<NSString *> *srtTitles;
Swift
var srtTitles: [String]! { get }
-
默认字幕文件
Declaration
Objective-C
@property (nonatomic, readonly) NSInteger defaultSrtIndex;
Swift
var defaultSrtIndex: Int { get }
-
视频打点信息
Declaration
Objective-C
@property (nonatomic, strong) NSArray<PLVVodMediaVideoKeyFrameItem *> *videokeyframes;
Swift
var videokeyframes: [PLVVodMediaVideoKeyFrameItem]! { get set }
-
广告信息
Declaration
Objective-C
@property (nonatomic, strong) NSArray<PLVVodMediaAd *> *ads;
Swift
var ads: [PLVVodMediaAd]! { get set }
-
片头URL
Declaration
Objective-C
@property (nonatomic, copy) NSString *teaser;
Swift
var teaser: String! { get set }
-
片头播放时长
Declaration
Objective-C
@property (nonatomic) NSTimeInterval teaserDuration;
Swift
var teaserDuration: TimeInterval { get set }
-
是否显示片头
Declaration
Objective-C
@property (nonatomic) BOOL teaserShow;
Swift
var teaserShow: Bool { get set }
-
片尾URL
Declaration
Objective-C
@property (nonatomic, copy) NSString *tailerUrl;
Swift
var tailerUrl: String! { get set }
-
片尾播放时长
Declaration
Objective-C
@property (nonatomic) NSTimeInterval tailerDuration;
Swift
var tailerDuration: TimeInterval { get set }
-
是否显示片尾
Declaration
Objective-C
@property (nonatomic) BOOL tailerShow;
Swift
var tailerShow: Bool { get set }
-
可用线路
Declaration
Objective-C
@property (nonatomic, strong, readonly) NSArray<NSString *> *availableRouteLines;
Swift
var availableRouteLines: [String]! { get }
-
Undocumented
Declaration
Objective-C
@property (nonatomic, strong, readonly) NSArray<NSString *> *tsCdns
Swift
var tsCdns: [String]! { get }
-
可用线路,音频文件
Declaration
Objective-C
@property (nonatomic, strong, readonly) NSArray<NSString *> *availableAudioRouteLines;
Swift
var availableAudioRouteLines: [String]! { get }
-
若视频不合法,可以从该属性获取不合法原因,否则为空
Declaration
Objective-C
@property (nonatomic, strong) NSError *error;
Swift
var error: Error! { get set }
-
若视频不合法,VOD-1676新增加的错误信息
Declaration
Objective-C
@property (nonatomic, strong, readonly) NSDictionary *playerError;
Swift
var playerError: [AnyHashable : Any]! { get }
-
音频文件链接
Declaration
Objective-C
@property (nonatomic, copy, readonly) NSString *aac_link;
Swift
var aac_link: String! { get }
-
音频文件大小
Declaration
Objective-C
@property (nonatomic, readonly) NSInteger aac_filesize;
Swift
var aac_filesize: Int { get }
-
ppt文件链接
Declaration
Objective-C
@property (nonatomic, copy, readonly) NSString *ppt_link;
Swift
var ppt_link: String! { get }
-
远端控制Httpdns模式,远端优先级大于本地enableHttpDNS的优先级
Declaration
Objective-C
@property (nonatomic, readonly) int httpDnsMode;
Swift
var httpDnsMode: PLVVodMediaHttpDnsMode { get }
-
302跳转
Declaration
Objective-C
@property (nonatomic, readonly) BOOL isHls302;
Swift
var isHls302: Bool { get }
-
预览图
Declaration
Objective-C
@property (nonatomic, copy, readonly) NSString *progressImage;
Swift
var progressImage: String! { get }
-
是否续播
Declaration
Objective-C
@property (nonatomic) BOOL keep_play;
Swift
var keep_play: Bool { get set }
-
视频或账号是否可用
Declaration
Objective-C
- (BOOL)available;
Swift
func available() -> Bool
-
视频是否为非加密视频
Declaration
Objective-C
- (BOOL)isPlain;
Swift
func isPlain() -> Bool
-
视频是否为hls视频
Declaration
Objective-C
- (BOOL)isHls;
Swift
func isHls() -> Bool
-
是否能够切换音视频模式
Declaration
Objective-C
- (BOOL)canSwithPlaybackMode;
Swift
func canSwithPlaybackMode() -> Bool
-
获取投屏使用的媒体URL
Declaration
Objective-C
- (NSString *)transformCastMediaURLStringWithQuality:(NSInteger)quality;
Swift
func transformCastMediaURLString(withQuality quality: Int) -> String!
Parameters
quality
播放清晰度
-
请求获取 PLVVodVideo 模型对象,(视频播放时使用)
Declaration
Objective-C
+ (void)requestVideoWithVid:(NSString *)vid completion:(void (^)(PLVVodMediaVideo *, NSError *))completion;
Swift
class func request(withVid vid: String!) async throws -> PLVVodMediaVideo?
Parameters
vid
vid
completion
PLVVodVideo 模型对象
-
请求获取 PLVVodVideo 模型对象,有网络时优先发送网络请求,无网络时返回本地数据 保存或更新数据到数据库 (视频下载时使用)
Declaration
Objective-C
+ (void)requestVideoPriorityCacheWithVid:(NSString *)vid completion:(void (^)(PLVVodMediaVideo *, NSError *))completion;
Swift
class func requestPriorityCache(withVid vid: String!) async throws -> PLVVodMediaVideo?
Parameters
vid
vid
completion
PLVVodVideo 模型对象
-
视频是否已经缓存
Declaration
Objective-C
+ (BOOL)isVideoCached:(NSString *)vid;
Swift
class func isVideoCached(_ vid: String!) -> Bool
Parameters
vid
视频ID