Skip to content

Releases: 706412584/orangeplayer

修复音量滑动手势显示负数问题

08 Jan 14:00

Choose a tag to compare

修复和增加一些功能

08 Jan 03:25

Choose a tag to compare

优化OCR识别:添加图像预处理以改善复杂背景识别;优化语音识别字幕显示:超过10字符自动清空
优化播放器功能和Demo界面

主要更新:

  1. 优化竖屏全屏时选集按钮显示(缩小字体和padding)
  2. 修复自动旋转设置同步问题(setAutoRotateOnFullscreen同步到PlayerSettingsManager和CustomFullscreenHelper)
  3. 修复文档中的API错误(exitFullScreen->stopFullScreen, getTitle->getVideoTitle, playIndex/playNext方法)
  4. Demo添加丰富的功能演示按钮:
    • 倍速测试、切换播放器、字幕测试、画中画
    • 添加选集、显示选集、下一集、播放方式
    • 投屏、下载视频、清空选集、更多测试
  5. 优化Demo布局:按钮区可滚动,日志区固定可见(150dp)
  6. 更多测试功能:循环播放、静音、亮度调节、音量调节、截图提示、播放信息

修复加载动画异常

07 Jan 16:14

Choose a tag to compare

修复选集标题更新和播放器内核自动检测,优化一些问题

07 Jan 14:51

Choose a tag to compare

修复问题:

  1. 选集切换时标题不更新

    • 原因:setTitle() 和 setVideoTitle() 只更新成员变量,未更新 TitleView 显示
    • 解决:添加 updateTitleViewDisplay() 方法,遍历父容器找到正确的 TitleView 实例
    • 避免全屏模式下的多实例问题
  2. 使用最小依赖时提示缺少 IJK so 库

    • 原因:播放器默认设置为 IJK 内核,但用户未添加 IJK so 库依赖
    • 解决:添加 isIjkPlayerAvailable() 方法检测 IJK so 库是否可用
    • 如果不可用,自动回退到系统播放器并更新设置

技术实现:

  1. OrangeVideoController.updateTitleViewDisplay()

    • 方案一:通过 VideoView 获取 TitleView(检查是否附加到窗口)
    • 方案二:遍历父容器找到正确的 TitleView 实例
    • 确保在全屏模式下也能正确更新标题
  2. OrangevideoView.isIjkPlayerAvailable()

    • 尝试加载 IJK 的 native 库(ijkffmpeg、ijksdl、ijkplayer)
    • 捕获 UnsatisfiedLinkError 判断 so 库是否存在
    • 返回检测结果
  3. OrangevideoView.initPlayerFactory() 增强

    • 检测 IJK 内核是否可用
    • 检测 ExoPlayer 是否可用
    • 检测阿里云播放器是否可用
    • 所有内核不可用时自动回退到系统播放器
    • 添加详细的日志输出,便于调试
    • 自动更新用户设置,避免下次启动再次尝试不可用的内核
      修复多个播放器问题并优化代码
  4. 修复 setUp 后立即播放时加载动画显示在准备视图上的问题

    • 在 startPlayLogic() 中检测 PrepareView 是否附加到窗口
    • 如果未附加,自动延迟到下一帧重新调用
    • 将 STATE_PREPARING 状态通知移到 PrepareView 附加后发送
    • 确保状态通知时序正确,PrepareView 能正确隐藏
  5. 修复横竖屏切换后误触发 PrepareView 点击事件的问题

    • 在点击事件中添加可见性检查
    • 在状态变化时控制 clickable 属性
    • STATE_IDLE 时启用点击,其他状态禁用点击
    • 双重保护机制防止误触发
  6. 修复 setUp 传入的标题不显示的问题

    • 添加 updateTitleView() 方法
    • 在所有 setUp() 方法中自动更新 TitleView 标题
    • 无需手动调用 getTitleView().setTitle()
  7. 优化重复代码

    • 提取 saveVideoUrl() 公共方法
    • 消除 setUp 方法中的重复代码
    • 代码更简洁易维护
  8. 优化全屏重力感应旋转逻辑

    • 全屏模式下只在横屏的两个方向之间切换
    • 忽略竖屏方向(0度和180度),防止误退出全屏
    • 只响应正横屏(270度)和反横屏(90度)
    • 避免左右旋转时切换到竖屏模式
  9. 优化倍速功能

    • 根据播放器内核动态调整倍速范围
    • IJK 内核: 普通倍速最高 2.0x, 长按倍速 1.5x-2.0x
    • 其他内核: 普通倍速最高 5.0x, 长按倍速 2.0x-3.0x
    • 长按时自动限制 IJK 内核倍速不超过 2.0x

增加语音识别字幕功能

06 Jan 16:13

Choose a tag to compare

修复和增加一些功能

06 Jan 07:38

Choose a tag to compare

1.添加重力自动旋转视频功能,添加锁定视频功能
2.修复exo和系统内核双击暂停会无法恢复进度的问题
3.设置增加硬件和软件解码选择

正式版

05 Jan 17:45

Choose a tag to compare

1.0.0

修复 CI 工作流:JDK 11 改为 JDK 17

demoApp

05 Jan 18:22

Choose a tag to compare

Full Changelog: 1.08...demo