Skip to content

Releases: pili-engineering/PLDroidPlayer

v2.1.5

06 Sep 07:44
8fbd6bf
Compare
Choose a tag to compare

版本

  • 发布 pldroid-player-2.1.5.jar
  • 合并 libQPlayer.so、libqcCodec.so 为 libQPlayer.so

优化

  • 优化了视频首帧的打开速度
  • 优化了音频开始时间不为 0 的播放逻辑
  • 取消了直播流时的变速播放

新增

  • 新增 KEY_MP4_PRELOAD 的 AVOptions 设置
  • 新增了 getResponseInfo 方法

缺陷

  • 修复弱网时重复打开的崩溃
  • 修复 m4a 不能播放
  • 修复 mp4 缓存失败
  • 修复了多个播放实例场景下的偶现崩溃
  • 修复了 dns 解析造成的崩溃
  • 修复了播放时释放时偶现 ANR
  • 修复音画不同步问题
  • 修复纯音频循环播放问题
  • 修复 HLS 文件解析异常

v2.1.4

04 Jun 05:50
efee373
Compare
Choose a tag to compare

版本

  • 发布 pldroid-player-2.1.4.jar
  • 更新 libQPlayer.so

优化

  • 优化了 mp4 长视频的打开速度

新增

  • 新增 KEY_START_POSITION 的 AVOptions 设置
  • 添加了对 ffconcat 文件格式的支持

缺陷

  • 修复了设置 AVOptions.KEY_LIVE_STREAMING 后,暂停状态下切换播放地址画面不刷新的问题
  • 修复了部分停止时造成的 ANR 问题
  • 修复了 PLOnInfoListener 的 MEDIA_INFO_LOOP_DONE 回调不生效的问题
  • 修复了部分 seek 无效的问题
  • 修复了部分 HLS 文件音画不同步的问题
  • 修复了偶现网络状态改变造成的 ANR 问题
  • 修复个别视频播放到一半时提前结束的问题
  • 修复播放直播流偶现电流音的问题
  • 修复退出时 listener 泄漏的问题

v2.1.3

13 Apr 09:41
0e5ac39
Compare
Choose a tag to compare

版本

  • 发布 pldroid-player-2.1.3.jar
  • 更新 libQPlayer.so

缺陷

  • 修复了快速开始和停止会造成的 ANR 问题
  • 修复了 Video Only 视频无法播放的问题
  • 修复了循环播放时,某些视频结束时画面暂停,声音继续播放的问题
  • 修复了软解下,某些 HTTP 视频偶现无法循环播放的问题

v2.1.2

03 Apr 10:15
4d5b835
Compare
Choose a tag to compare

版本

  • 发布 pldroid-player-2.1.2.jar
  • 更新 libQPlayer.so
  • 更新 libqcCodec.so

优化

  • 极大优化了 mp4 长视频的打开速度

新增

  • 新增 setBufferingEnabled 方法
  • 新增 getHttpBufferSize 方法

缺陷

  • 修复了特殊情况下的 ANR 问题
  • 修复了一些情况下的空指针问题
  • 修复了在 OnCompletionListener 中调用 start 方法不生效的问题
  • 修复了一些情况下视频封面不刷新的问题
  • 修复了音频采样率较低时音画不同步的问题

移除

  • 移除 PLMediaPlayer.getMediaCodec 方法,可以在业务层记录设置的是硬解还是软解
  • 移除 PLMediaPlayer.reset 方法,请用 release 方法代替

更新注意事项

从 2.1.0 开始:

  • SDK 所有公开方法的参数名不再混淆,可以直接通过 IDE 查看
  • 所有 Listener 类与相关常量从 PLMediaPlayer 下调整为单独的接口,并添加 PL 前缀
  • 所有 Listener 类的回调方法中的 PLMediaPlayer 参数均被移除
  • PLOnInfoListener.onInfo 方法返回类型由 boolean 修改为 void
  • 在一次 seekTo 未完成时进行下一次 seekTo,SDK 的回调由 PLOnErrorListener.ERROR_SEEK_FAILED 更改为 PLOnInfoListener.MEDIA_INFO_IS_SEEKING,不会修改 PlayerState 的状态
  • PLNetworkManager 类被移除,请删除应用层的相关调用,并移除 happydns 的依赖。如需管理 DNS 缓存或自定义 DNS 服务器,请通过 AVOptions.KEY_DOMAIN_LISTAVOptions.KEY_DNS_SERVER 进行设置
  • 移除 setDebugLoggingEnabled 方法,日志选项统一通过 AVOptions.KEY_LOG_LEVEL 控制

v2.1.1

09 Mar 07:24
ba677b1
Compare
Choose a tag to compare

版本

  • 发布 pldroid-player-2.1.1.jar
  • 更新 libQPlayer.so

新增

  • PLVideoView 新增 setZOrderOnTop 方法
  • PLVideoView 新增 setZOrderMediaOverlay 方法

缺陷

  • 修复部分点播视频加载过慢的问题
  • 修复了销毁播放器后的内存泄漏问题
  • 修复 8.0+ 系统上播放 HLS 流时销毁播放器的 crash 问题
  • 修复部分 HLS 流打开失败的问题
  • 修复部分 HLS 流退出时 ANR 的问题
  • 修复一些情况下 PLOnBufferingUpdateListener 可能不准确的问题

更新注意事项

从 2.1.0 开始:

  • SDK 所有公开方法的参数名不再混淆,可以直接通过 IDE 查看
  • 所有 Listener 类与相关常量从 PLMediaPlayer 下调整为单独的接口,并添加 PL 前缀
  • 所有 Listener 类的回调方法中的 PLMediaPlayer 参数均被移除
  • PLOnInfoListener.onInfo 方法返回类型由 boolean 修改为 void
  • 在一次 seekTo 未完成时进行下一次 seekTo,SDK 的回调由 PLOnErrorListener.ERROR_SEEK_FAILED 更改为 PLOnInfoListener.MEDIA_INFO_IS_SEEKING,不会修改 PlayerState 的状态
  • PLNetworkManager 类被移除,请删除应用层的相关调用,并移除 happydns 的依赖。如需管理 DNS 缓存或自定义 DNS 服务器,请通过 AVOptions.KEY_DOMAIN_LISTAVOptions.KEY_DNS_SERVER 进行设置
  • 移除 setDebugLoggingEnabled 方法,日志选项统一通过 AVOptions.KEY_LOG_LEVEL 控制

v2.1.0

09 Feb 09:41
c7554d1
Compare
Choose a tag to compare

版本

  • 发布 pldroid-player-2.1.0.jar
  • 更新 libQPlayer.so
  • 更新 libqcCodec.so
  • 更新 libqcOpenSSL.so

新增

  • 新增 captureImage 方法
  • 新增 setVideoArea 方法
  • 新增 PLOnImageCapturedListener 接口
  • 新增 setVolume 参数大于 1.0 时增大音量的功能
  • 新增 setPlaySpeed(float) 方法
  • 新增 AVOptions.KEY_FAST_OPEN 字段
  • 新增 AVOptions.KEY_SEEK_MODE 字段
  • 新增 AVOptions.KEY_CACHE_EXT 字段
  • 新增 AVOptions.KEY_OPEN_RETRY_TIMES 字段
  • 新增 PLOnInfoListener.MEDIA_INFO_CACHED_COMPLETE 字段
  • 新增 PLOnInfoListener.MEDIA_INFO_IS_SEEKING 字段
  • 新增 PLMediaPlayer.ERROR_CODE_PLAYER_CREATE_AUDIO_FAILED 字段

缺陷

  • 修复 PLVideoTextureView 复用时可能 crash 的问题
  • 修复 PLVideoTextureView 部分场景下画面不刷新的问题
  • 修复部分场合下自动断网重连失效的问题
  • 修复开启离线缓存后断网时无法继续播放的问题
  • 修复部分设备上后台播放音频卡顿的问题
  • 修复循环播放时 buffer 时间较长的问题
  • 修复播放部分 http-flv 格式时 crash 的问题
  • 修复播放部分带有跳转的 URL 时crash 的问题
  • 修复倍速播放时音调不正常的问题
  • 修复播放本地文件时调用 seekTo 仍会出现 buffering 回调的问题
  • 修复部分场景下 seekTo 不生效的问题
  • 修复部分流中 SAR 与 DAR 字段不生效的问题
  • 修复 SEI 数据回调为 0 的问题

更新注意事项

从 2.1.0 开始:

  • SDK 所有公开方法的参数名不再混淆,可以直接通过 IDE 查看
  • 所有 Listener 类与相关常量从 PLMediaPlayer 下调整为单独的接口,并添加 PL 前缀
  • 所有 Listener 类的回调方法中的 PLMediaPlayer 参数均被移除
  • PLOnInfoListener.onInfo 方法返回类型由 boolean 修改为 void
  • 在一次 seekTo 未完成时进行下一次 seekTo,SDK 的回调由 PLOnErrorListener.ERROR_SEEK_FAILED 更改为 PLOnInfoListener.MEDIA_INFO_IS_SEEKING,不会修改 PlayerState 的状态
  • PLNetworkManager 类被移除,请删除应用层的相关调用,并移除 happydns 的依赖。如需管理 DNS 缓存或自定义 DNS 服务器,请通过 AVOptions.KEY_DOMAIN_LISTAVOptions.KEY_DNS_SERVER 进行设置
  • 移除 setDebugLoggingEnabled 方法,日志选项统一通过 AVOptions.KEY_LOG_LEVEL 控制

v2.0.6

26 Dec 12:50
7f994f7
Compare
Choose a tag to compare

版本

  • 发布 pldroid-player-2.0.6.jar

缺陷

  • 修复了一些场合下 MP4 离线缓存失效的问题
  • 修复了部分设备在移动 4G 网络下偶现的崩溃问题

更新注意事项

从 2.0.5 开始,PLNetworkManager 类被标记为 deprecated,无需引入 happydns 依赖,也无须调用 PLNetworkManager.startDnsCacheService,SDK 会根据 AVOptions 中的设置自动处理 DNS 缓存。

v2.0.5

25 Dec 05:54
c8d3110
Compare
Choose a tag to compare

版本

  • 发布 pldroid-player-2.0.5.jar
  • 更新 libQPlayer.so

新增

  • 新增 AVOptions.KEY_DNS_SERVER 字段
  • 新增 AVOptions.KEY_DOMAIN_LIST 字段
  • 新增视频 header 中 rotate 字段的支持,SDK 会自动旋转画面

缺陷

  • 修复了部分场景下视频 open failed 的问题
  • 修复了部分视频音画不同步的问题
  • 修复了部分视频开播时闪屏的问题
  • 修复了部分视频循环播放时进度异常的问题
  • 修复了部分 mp3 流打开失败的问题
  • 修复了部分场合下 OnCompletionListener 不触发的问题
  • 修复了部分场合下销毁播放器时 crash 的问题
  • 修复了部分场合下快速切换播放地址时 crash 的问题
  • 修复了连续调用 stopPlayback 时可能 crash 的问题
  • 修复了动态添加的 PLVideoTextureViewsetDisplayOrientation 不生效的问题

更新注意事项

从 2.0.5 开始,PLNetworkManager 类被标记为 deprecated,无需引入 happydns 依赖,也无须调用 PLNetworkManager.startDnsCacheService,SDK 会根据 AVOptions 中的设置自动处理 DNS 缓存。

v2.0.4

28 Nov 08:48
5c43980
Compare
Choose a tag to compare

说明

  • 从 v2.0.0 版本开始,全面升级为七牛自研的播放器内核,拥有更优异的性能

版本

  • 发布 pldroid-player-2.0.4.jar
  • 更新 libQPlayer.so

功能

  • 新增 AVOptions.KEY_LOG_LEVEL 字段
  • 新增 PLMediaPlayer.MEDIA_INFO_LOOP_DONE 字段
  • 新增 PLVideoTextureView.disableSplitMode 方法
  • 新增 getRtmpVideoTimestamp 与 getRtmpAudioTimestamp 方法

缺陷

  • 修复了一些情况下开启 PLNetowrkManager.startDnsCacheService 后无法播放的问题
  • 修复了一些设备上无法加载 libqcCodec.so 的问题
  • 修复了播放一些 flv 直播流时卡顿的问题
  • 修复了一些情况下循环播放时卡顿的问题
  • 修复了一些情况下 PLVideoTextureView 画面不刷新的问题
  • 修复了一些情况下不会收到 OnSeekComplete 的问题
  • 修复了一些情况下出现 ERROR_CODE_SEEK_FAILED 的问题
  • 修复了一些情况下开启 PLVideoTextureView.setSplitMode 后 view 尺寸错误的问题
  • 修复了一些情况下频繁 seekTo 可能 crash 的问题
  • 修复了播放地址过长时离线缓存失败的问题
  • 修复了播放完成后时间可能继续增长的问题
  • 修复了 setDebuggingLogEnabled 为 false 时仍会产生大量 log 的问题

v2.0.3

03 Nov 07:21
a95ae9d
Compare
Choose a tag to compare

版本

  • 发布 pldroid-player-2.0.3.jar
  • 更新 libopenssl.so,更名为 libqcopenssl.so
  • 更新 libQPlayer.so

功能

  • 新增 PLVideoTextureView.setSplitMode 方法
  • 新增 AVOptions.KEY_LIVE_STREAMING 字段
  • 新增 PlayerState.PLAYING_CACHE 字段
  • 新增 ERROR_CODE_PLAYER_DESTROYED 错误码
  • 新增 ERROR_CODE_PLAYER_VERSION_NOT_MATCH 错误码
  • 新增 PLNetworkManager.setDnsManager 方法

缺陷

  • 彻底修复一些场景下切换播放地址时的 crash 问题
  • 彻底修复一些场景下销毁播放器时的 crash 问题
  • 修复了 libopenssl 版本过低引发的问题
  • 修复了 PLVideoTextureView 播放直播流时暂停后可能不会追帧的问题
  • 修复了一些场景下画面不刷新的问题
  • 修复了部分纯视频 mp4 无法循环播放的问题
  • 修复了切换播放地址后,之前的 setVolume 没有继续生效的问题
  • 修复了部分 hls 流拖动时卡住的问题
  • 修复了部分 mp4 流循环播放时可能出现多次 COMPLETE 消息的问题
  • 修复了 OnBufferingUpdate 回调在一些情况下不会出现 100% 或大于 100% 的问题
  • 修复了断网后部分视频进度异常的问题
  • 修复了部分视频流与音频流的兼容性问题
  • 修复了 PLVideoView 与 PLVideoTextureView 被 remove 然后重新 add 后黑屏的问题