LinkvPlayerController Class Reference
Inherits from | NSObject |
---|---|
Declared in | LinkvPlayerController.h LinkvPlayerController.m |
+ initSDK:debugEnv:
初始化SDK
+ (void)initSDK:(NSString *)key debugEnv:(BOOL)env
Parameters
key |
请联系技术支持获取,测试阶段可传空 |
---|---|
env |
false:正式环境 true:测试环境 |
Discussion
初始化SDK
Declared In
LinkvPlayerController.h
+ getDefaultConfig
获取播放默认配置参数
+ (LinkvConfig *)getDefaultConfig
Discussion
获取播放默认配置参数
Declared In
LinkvPlayerController.h
– initWithConfig:
初始化播放器并设置播放地址
- (instancetype)initWithConfig:(LinkvConfig *)config
Parameters
config |
播放相关配置 |
---|
Return Value
返回LinkvPlayerController 实例
Declared In
LinkvPlayerController.h
contentURL
正在播放的视频文件的URL地址,该地址可以是本地地址或者服务器地址。
@property (nonatomic, readonly) NSString *contentURL
Declared In
LinkvPlayerController.h
view
包含视频播放内容的VIEW(只读)。
@property (nonatomic, readonly) UIView *view
See Also
Declared In
LinkvPlayerController.h
loadState
当前网络加载情况
@property (nonatomic, readonly) MPMovieLoadState loadState
Discussion
可以通过该属性获取视频加载情况:
typedef NS_OPTIONS(NSUInteger, MPMovieLoadState) {
MPMovieLoadStateUnknown = 0, // 加载情况未知
MPMovieLoadStatePlayable = 1 << 0, // 加载完成,可以播放
MPMovieLoadStatePlaythroughOK = 1 << 1, // 加载完成
MPMovieLoadStateStalled = 1 << 2, // 如果视频正在加载中
} NS_DEPRECATED_IOS(3_2, 9_0);
通知:
- MPMoviePlayerLoadStateDidChangeNotification,当加载状态变化时提供通知
Declared In
LinkvPlayerController.h
scalingMode
当前缩放显示模式。
@property (nonatomic) MPMovieScalingMode scalingMode
Discussion
当前支持四种缩放模式:
typedef NS_ENUM(NSInteger, MPMovieScalingMode) {
MPMovieScalingModeNone, // 无缩放
MPMovieScalingModeAspectFit, // 同比适配,某个方向会有黑边
MPMovieScalingModeAspectFill, // 同比填充,某个方向的显示内容可能被裁剪
MPMovieScalingModeFill // 满屏填充,与原始视频比例不一致
} NS_DEPRECATED_IOS(2_0, 9_0);
Declared In
LinkvPlayerController.h
duration
当前视频总时长
@property (nonatomic, readonly) NSTimeInterval duration
Discussion
视频总时长,单位是秒。
- 如果是直播视频源,总时长为0.
- 如果该信息未知,总时长默认为0.
Declared In
LinkvPlayerController.h
playableDuration
当前视频可播放长度
@property (nonatomic, readonly) NSTimeInterval playableDuration
Discussion
视频可播放时长,单位是秒。
- currentPlaybackTime 标记的是播放器当前已播放的时长。
- playableDuration 标记的是播放器缓冲的时间,会稍大于currentPlaybackTime,与currentPlaybackTime的差值则是缓冲长度。
- duration 是视频总时长。
Declared In
LinkvPlayerController.h
naturalSize
当前视频宽高
@property (nonatomic, readonly) CGSize naturalSize
Discussion
获取信息
- 监听MPMovieNaturalSizeAvailableNotification
- 播放过程中,宽高信息可能会产生更改
Declared In
LinkvPlayerController.h
bufferTimeMax
bufferTimeMax指定播放时的缓冲时长,单位秒
@property NSTimeInterval bufferTimeMax
Discussion
对于直播流,该属性用于直播延时控制;对于点播流,该属性用于缓冲时长控制
- 直播流该属性默认为2秒,设置为0或负值时为关闭直播追赶
- 点播流该属性默认为3600秒,且与bufferSizeMax同时生效,两者取小值
Declared In
LinkvPlayerController.h
bufferEmptyDuration
buffer为空时,拉取数据所耗的时长
@property (nonatomic, readonly) NSTimeInterval bufferEmptyDuration
Discussion
当buffer为空时,开始统计。单位为秒。
- 当MPMoviePlayerLoadStateDidChangeNotification 通知发起;
- MPMovieLoadState状态为MPMovieLoadStateStalled 开始计时;
- MPMovieLoadState状态为MPMovieLoadStatePlayable 或者 MPMovieLoadStatePlaythroughOK时,结束计时;
Declared In
LinkvPlayerController.h
bufferEmptyCount
发起cache的次数
@property (nonatomic, readonly) NSInteger bufferEmptyCount
Discussion
当buffer为空时,统计一次,统计的条件为
- 当MPMoviePlayerLoadStateDidChangeNotification 通知发起
- MPMovieLoadState 状态为MPMovieLoadStateStalled
Declared In
LinkvPlayerController.h
serverAddress
视频流server ip
@property (nonatomic, readonly) NSString *serverAddress
Discussion
当收到prepared后,即可以查询当前连接的视频流server ip
Declared In
LinkvPlayerController.h
qosInfo
视频流qos信息
@property (nonatomic, strong) PlayQosInfo *qosInfo
Discussion
在播放过程中,即可以查询当前连接的视频流qos信息
Declared In
LinkvPlayerController.h
– isPlaying
当前播放器是否在播放
- (BOOL)isPlaying
Return Value
正在播放返回TRUE。其他情况返回FASLE。
Declared In
LinkvPlayerController.h
– setDataSource:
设置播放地址,开始播放
- (void)setDataSource:(NSString *)url
Parameters
url |
播放地址 |
---|
Discussion
设置播放地址,开始播放
Declared In
LinkvPlayerController.h
currentPlaybackTime
播放视频的当前时刻,单位为秒。
@property (nonatomic) NSTimeInterval currentPlaybackTime
Discussion
currentPlaybackTime属性更改时机:
Declared In
LinkvPlayerController.h