KJPlayer 动态切换内核的播放器方案开源项目

我要开发同款
匿名用户2022年01月04日
68阅读
开发技术Swift
所属分类Objective-C、视频(Video)、iOS代码库
授权协议MIT

作品详情

KJPlayer是一个动态切换内核,支持边下边播的播放器方案

特性支持音/视频播放,midi文件播放支持在线播放/本地播放支持后台播放,音频提取播放支持视频边下边播,分片下载播放存储支持断点续载续播,下次直接优先从缓冲读取播放支持缓存管理,清除时间段缓存支持试看,自动跳过片头片尾支持记录上次播放时间支持自动播放,自动连续播放支持随机/重复/顺序播放支持重力感应,全屏/半屏切换支持基本手势操作,进度音量等支持锁定屏幕长按快进快退等操作支持倍速播放支持切换不同分辨率视频支持直播流媒体播放持续更新ing...视频支持格式:mp4、m3u8、wav、avi 音频支持格式:midi、mp3、

免费试看功能该功能类似于Vip会员观看性质,充值之后继续播放观看模式//MARK:-KJPlayerFreeDelegateextensionDetailsViewController:KJPlayerFreeDelegate{  ///获取免费试看时间  ///-Parameterplayer:播放器内核  ///-Returns:试看时间,返回零不限制  funckj_freeLookTime(withplayer:KJBasePlayer)->TimeInterval{    return50  }     ///试看结束响应  ///-Parameters:  /// -player:播放器内核  /// -currentTime:当前播放时间  funckj_freeLookTime(withplayer:KJBasePlayer,currentTime:TimeInterval){       }}充值之后恢复观看权限self.player.kj_closeFreeLookTimeLimit()CocoaPods安装尝试观看模块pod'KJPlayer/FreeTime'#vip尝试观看功能跳过片头片尾功能该功能很明确就是类似于观看视频跳过片头和片尾功能//MARK:-KJPlayerSkipDelegateextensionDetailsViewController:KJPlayerSkipDelegate{  ///跳过片头  ///-Parameterplayer:内核  ///-Returns:需要跳过的时间  funckj_skipOpeningTime(withplayer:KJBasePlayer)->TimeInterval{    return18  }     ///跳过片头响应  ///-Parameters:  /// -player:内核  /// -openingTime:跳过播放时间  funckj_skipOpeningTime(withplayer:KJBasePlayer,openingTime:TimeInterval){    self.backview.hintTextLayer.kj_displayHintText("跳过片头,自动播放",                            time:5,                            position:KJPlayerHintPositionBottom)  }}CocoaPods安装跳过片头片尾模块pod'KJPlayer/SkipTime'#vip跳过片头片尾功能记忆播放功能该功能会自动记忆上次播放时间,下次直接无缝开始继续播放//MARK:-KJPlayerRecordDelegateextensionDetailsViewController:KJPlayerRecordDelegate{  ///获取是否需要记录响应  ///-Parameterplayer:播放器内核  ///-Returns:是否需要记忆播放  funckj_recordTime(withplayer:KJBasePlayer)->Bool{    returntrue  }     ///获取到上次播放时间响应  ///-Parameters:  /// -player:播放器内核  /// -lastTime:上次播放时间  funckj_recordTime(withplayer:KJBasePlayer,lastTime:TimeInterval){       }}主动选择储存记忆self.player.kj_saveRecordLastTime()CocoaPods安装自动记忆播放模块pod'KJPlayer/RecordTime'#vip自动记忆播放功能备注提示:该功能大于跳过片头功能,简单讲就是该功能实现之后下次会直接从上次播放位置开始继续观看

其余功能模块1.播放器模块midi内核:pod'KJPlayer/MIDI'ijk内核:pod'KJPlayer/IJKPlayer'av内核:pod'KJPlayer/AVPlayer/AVCore'自定义UI:pod'KJPlayer/CustomView'数据库:pod'KJPlayer/Database'2.功能区域模块AVPlayer内核扩展功能  -边下边播边存分支:pod'KJPlayer/AVPlayer/AVDownloader'记忆播放:pod'KJPlayer/RecordTime'尝鲜播放:pod'KJPlayer/FreeTime'跳过片头片尾:pod'KJPlayer/SkipTime'缓存板块:pod'KJPlayer/Cache'视频截屏板块:pod'KJPlayer/Screenshots'切换内核:pod'KJPlayer/DynamicSource  -目前支持3种内核:AVPlayer内核、MIDI内核、IJKPlayer内核大致流程就差不多这样子,Demo也写的很详细,可以自己去看看
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论