-
Notifications
You must be signed in to change notification settings - Fork 16
5_Improve
Sidney edited this page Dec 5, 2017
·
1 revision
当你要深入理解 SDK 的一些参数及有定制化需求时,可以从高级功能部分中查询阅读。
defaultDecodeMethod
解码方式分软解码和硬解码
UrlType
播放地址类型,区分为本地视频,网络视频,直播视频,使用UrlTypeAuto程序会根据相关规则为你选择播放类型,如果是http-flv直播,请必须设置为UrlTypeLive,hls点播必须设置为UrlTypeHttp;
currentPlaybackTime
当前播放时间点;
duration
视频总时间;
playableDuration
媒体可播放时长,主要用于表示网络媒体已下载视频时长
bufferingProgress
视频缓冲进度;
isPreparedToPlay
是否准备好可以播放
playbackState
媒体播放状态;
loadState
网络媒体加载状态
shouldAutoplay
是否自动播放
UCloudMediaPlayer.h
/**
* 初始化mediaPlayer
*
* @return UCloudMediaPlayer
*/
+ (instancetype)ucloudMediaPlayer;
/**
* 配置播放view
*
* @param url 播放url
* @param urltype 播放类型
* @param frame playerView视图大小,默认传入CGRectNull
* @param view player
* @param block 初始化完成
*/
- (void)showMediaPlayer:(NSString *)url urltype:(UrlType)urltype frame:(CGRect)frame view:(UIView *)view completion:(UCloudMediaCompletionBlock)block;
/**
* 配置播放view
*
* @param view 父view
* @param block 回掉清晰度信息
*/
- (void)showInview:(UIView *)view definition:(void(^)(NSInteger defaultNum, NSArray *data))block;
/**
* 切换解码方式
*
* @param decode 切换后的解码方式
*/
- (void)selectDecodeMthod:(DecodeMthod)decode;
/**
* 切换清晰度
*
* @param definition 切换后的清晰度
*/
- (void)selectDefinition:(Definition)definition;
/**
* 刷新视图
*/
- (void)refreshView;
UCloudPlayback.h
- (void)prepareToPlay;
- (void)play;
- (void)pause;
- (void)stop;
- (BOOL)isPlaying;
- (void)shutdown;
- (void)setPauseInBackground:(BOOL)pause;
typedef NS_ENUM(NSInteger, DecodeMthod)
{
DecodeMthodSoft,//软解
DecodeMthodHard,//硬解
};
typedef NS_ENUM(NSInteger, Definition)
{
Definition_fhd, //@"蓝光"
Definition_shd, //@"超清"
Definition_hd, //@"高清"
Definition_sd, //@"标清"
};
typedef NS_ENUM(NSInteger, ErrorNum)
{
ErrorNumShowViewIsNull = 1000,
ErrorNumUrlIsNull,
ErrorNumSaveShotError,
ErrorNumUrlIsWrong,
ErrorNumdrm,
ErrorNumCgiLostPars = 40021,
ErrorNumCgiRequest = 40022,
ErrorNumCgiAuthFail = 40023,
ErrorNumCgiMovieCannotFound = 40024,//不会构建videoview
ErrorNumCgiDomainError = 40025,
ErrorNumCgiServerError = 40026,
ErrorNumCgiTimeOut = 40027,
};
typedef NS_ENUM(NSInteger, UrlType)
{
UrlTypeAuto = 0,//自动,程序会根据相关规则为你选择播放类型,如果是http-flv直播,请必须设置为UrlTypeLive,hls点播必须设置为UrlTypeHttp
UrlTypeLocal = 1,//本地视频
UrlTypeHttp = 2,//网络视频(非直播)
UrlTypeLive = 3,//直播
};
// 播放错误时的子错误码
typedef NS_ENUM(NSInteger, SubErrorCode)
{
///默认错误
SubErrorCodeDefault = 0,
///准备播放超时
SubErrorCodePrepareTimeout = 6,
///获取音频或视频帧超时
SubErrorCodeAVFrameTimeout = 7,
};
// 丢帧模式
typedef enum : NSUInteger {
DropFrameModeOnlyAudio,
DropFrameModeAll,
} DropFrameMode;
- 日志等级
状态枚举 | 描述 |
---|---|
UVodLiveLogLevelOff | off |
UVodLiveLogLevelError | error |
UVodLiveLogLevelWarning | warn |
UVodLiveLogLevelInfo | info |
UVodLiveLogLevelDebug | debug |
UVodLiveLogLevelVerbose | verbose |
- enableLogFile: 是否开启日志文件,默认开启
- logFiles: 所有日志文件名
- logsDirectory: 日志文件路径,默认Documents/Logs/UCloud/UMedia/
- lastLogFilePath: 最近的日志文件路径
- lastLogFileName: 最近的日志文件名
- logFileSize: 每个日志文件的大小,每个日志文件如若达到该大小将会进行一次压缩保存,减少沙盒使用量,默认1M
- logFilesMaxSize: 日志文件夹大小,超过会清理日志,默认20M