Skip to content

Releases: Tencent/libpag

v4.3.43

22 Dec 11:08
Compare
Choose a tag to compare

主要修改内容:
(1)新增支持

  • Android 平台增加 x86_64 架构,增加车机系统的架构支持

(2)包体优化

  • 相对于 4.3.33 版本,Web 平台减少 zip 后大小 65 KB(wasm), iOS 减少 zip 后大小 50 KB(arm64)

(3)稳定性提升

  • 修复移动端 PAGView 切换文件播放且循环次数重新设置无法播放问题
  • web 平台 BMP 预合成素材 seek 播放异常修复
  • 修复微信小程序 createCanvas2D 错误

Main revisions:
(1)New capabilities

  • Added x86_64 architecture for the Android platform, which could be used in the vehicle system.

(2)Size optimization

  • In comparison to version 4.3.33, the library's zipped size has been decreased by 65 KB (wasm) on the web platform and 50 KB (arm64) on the iOS platform.

(3)Stability improvement

  • Fixed an issue that PAGView on mobile devices couldn't play when switching files and resetting loop count.
  • Fixed seek playback issue with BMP pre-composited assets on the web platform.
  • Fixed an error with createCanvas2D in the WeChat Mini Program.

v4.3.33

13 Nov 09:09
Compare
Choose a tag to compare

主要修改内容:
(1)AE 特性新增支持

  • 图层样式-描边
  • 图层样式-外发光

(2)能力新增

  • 支持加载网络路径的 pag 文件
  • pag 文件中的 BMP 预合成支持渲染缓存至本地,进一步提升渲染性能
  • pag 文件导出的时候支持设置可编辑图层, 终端支持通过 getEditableIndices 获取到可编辑图层

(3)版本新增

  • 社区版新增发布 macOS 版本,支持通过 cocoapods、Carthage、Swift Package Manager 接入
  • iOS 平台新增支持 Carthage、Swift Package Manager 接入

(4)稳定性提升

  • 升级 WebP 修复漏洞 CVE-2023-4863
  • 修复 iOS 平台 XCFramework 本地直接引用时模拟器报错

Main revisions:

(1) New AE features

  • Layer Style - Stroke
  • Layer Style - Outer Glow

(2) New capabilities

  • Support loading pag file from network paths.
  • BMP compositions in PAG files now has the option to enable disk cache, which further improves rendering performance.
  • Artists now can specify editable layers in PAGExporter directly. The SDK also can get the editable layers by getEditableIndices() API.

(3) New versions

  • The community version adds the macOS version, which supports access through Cocoapods, Carthage, and Swift Package Manager.
  • iOS platform adds support for Carthage and Swift Package Manager.

(4) Stability improvement

  • Upgrade WebP to fix vulnerability CVE-2023-4863.
  • Fix the problem that iOS platform XCFramework reports an error when referencing locally in the simulator.

v4.3.3

14 Jul 06:31
Compare
Choose a tag to compare
v4.3.3 Pre-release
Pre-release

主要修改内容:
(1)版本新增

  • 社区版新增发布 macOS 版本,支持通过 cocoapods、Carthage、Swift Package Manager 接入
  • iOS 平台新增支持 Carthage、Swift Package Manager 接入

(2)AE 特性新增支持

  • 图层样式-描边
  • 图层样式-外发光

(3)新增能力

  • 支持加载网络路径的 pag 文件
  • pag 文件中的 BMP 预合成支持渲染缓存至本地,进一步提升渲染性能
  • pag 文件导出的时候支持设置可编辑图层, 终端支持通过 getEditableIndices 获取到可编辑图层

(4)问题修复

  • 修复 iOS 平台 XCFramework 单独引用时模拟器报错

Main revisions:
(1) New versions

  • The Community Edition has newly released a macOS version, which supports access through cocoapods, Carthage, and Swift Package Manager
  • IOS platform adds support for Carthage and Swift Package Manager access

(2) Added support for AE features

  • Layer Style - Stroke
  • Layer Style - Outer Glow

(3)New capabilities

  • Support for loading PAG files from network paths
  • The BMP compositions in the PAG file supports rendering to the local cache, further improving rendering performance
  • The PAG file supports setting editable layers when exporting, and the terminal supports getting editable layers through getEditableIndices

(4) Issue fixes

  • Fix the error reported by the simulator when XCFramework is referenced separately on the iOS platform

v4.2.100

12 Jul 10:51
Compare
Choose a tag to compare

主要修改内容:
(1)Android 平台问题修复

  • 修复多线程操作时 PAGImageView 渲染 crash
  • 修复 PAGImageView 重置资源渲染异常
  • 修复 PAGViewListener 监听多线程 crash
  • 修复 PAGView JNI 方法加载 crash

(2)iOS 平台问题修复

  • 修复 iOS 平台同时集成百度地图 SDK 时 crash 问题
  • 修复 iOS 平台 XCFramework 运行模拟器 crash 问题

(3)macOS 平台

  • 修复 macOS 平台内存泄漏问题

Main revisions:
(1)The fixes of Android platform issues

  • Fix PAGImageView rendering crash during multi-threaded operation
  • Fix PAGImageView reset resource rendering exception
  • Fix PAGViewListener listening multi-thread crash
  • Fix PAGView JNI method loading crash

(2)The fixes of iOS platform issues

  • Fix the crash issues when the iOS platform integrates Baidu Map SDK at the same time
  • Fix the crash issues of XCFramework running simulator on iOS platform

(3) macOS platform

  • Fix memory leak issue on macOS platform

v4.2.88

30 May 03:31
Compare
Choose a tag to compare

主要修改内容:
(1)Android 平台问题修复

  • 修复 Android 5 和 Android 6 系统 onAnimationEnd 无法接收回调问题;
  • 修复 Android 平台频繁调用 play 方法渲染异常问题
  • 修复 SDK 混淆问题
  • 修复部分场景 java.util.ConcurrentModificationException crash
  • 完善 PAGImageView 及 PAGView,修复部分场景渲染异常问题
  • 修复 CallObjectMethod crash
  • 增加导出 C++ 层 pag 相关符号,修复 C++ API 无法使用问题

(2)iOS 平台问题修复

  • 修复进入后台 PAGImageView 某些情况下画面不显示的问题

(3)微信小程序

  • 增加对没有Unicode属性转义环境的支持

Main revisions:
(1)The fixes of Android platform issues

  • Fix the issue of onAnimationEnd not being able to receive callbacks in Android 5 and Android 6 systems;
  • Fix the abnormal rendering issue of frequently calling the play method on the Android platform
  • Fix SDK obfuscation issue
  • Fix java.util.ConcurrentModificationException crash in some scenarios
  • Improve PAGImageView and PAGView, fix abnormal rendering issue of some scenarios
  • Fix CallObjectMethod crash
  • Add the export of C++ layer PAG related symbols, and fix the problem that the C++ API cannot be used

(2)The fixes of iOS platform issues

  • Fix the problem that the screen does not display in some cases when entering the background PAGImageView

(3)WeChat mini program

  • Add support for escaping environments without Unicode properties

v4.2.80

12 May 06:58
Compare
Choose a tag to compare

主要修改内容:
(1)PAGImageView 中磁盘缓存下沉至 C++ 层
(2)Web 和 QT 平台上新增支持创建离屏 PAGSurface
(3)Web 平台问题修复:

  • 修复 Safari 16.4 以下版本缺少全局变量 OffscreenCanvas 导致的类型检查错误
  • 添加 isInstanceOf 方法来替换 instanceOf,防止 Web 平台未定义的全局类的问题
  • 在内置的 iOS 16.4 AppleWebKit 浏览器中为 OffscreenCanvas 添加回退
  • 修复 WebMask 纹理类型上传错误导致微信闪退
  • 更新 Safari 15 的 ImageBitmap 兼容性检查
  • Fix globalThis compatibility issue for older browsers, e.g. iOS 12.1 Safari
  • 修复 Safari 和 iOS 微信浏览器的用户代理检测

(4)iOS 平台问题修复

  • 修复 PAGImageView 通过路径加载渲染异常
  • 修复 PAGImageView 替换占位图渲染时 crash 问题
  • 修复 PAGImageView 在 iOS 14 之前无法渲染问题
  • 修复 repeatcount 设置为非无限循环播放,播放过程中进入后台后出现的无法再出触发 play 问题
  • 修复 PAGImageView 频繁调用 play 方法导致的卡在某一帧的的问题

(5)Android 平台问题修复

  • 修复 PAGImageView 渲染播放异常问题

Main revisions:
(1)The disk cache in PAGImageView sinks to the C++ layer
(2)Added support for creating off-screen PAGSurface on the Web and QT platforms
(3)The fixes of Web platform issues:

  • Fix the type checking error caused by the missing of global variable OffscreenCanvas in versions below Safari 16.4
  • Add isInstanceOf method to replace instanceOf to prevent problems with undefined global classes on the web platform
  • Add fallback for OffscreenCanvas in built-in iOS 16.4 AppleWebKit browser
  • Fix the error in uploading WebMask texture type that causes WeChat to crash
  • Updated ImageBitmap compatibility check for Safari 15
  • Fix globalThis compatibility issue for older browsers, e.g. iOS 12.1 Safari
  • Fix user agent detection for Safari and iOS WeChat browsers

(4)The fixes of iOS platform issues

  • Fix PAGImageView loading rendering exception through path
  • Fix the crash issue when PAGImageView replaces placeholder image rendering
  • Fix the issue that PAGImageView cannot render before iOS 14
  • Fixed the issue where repeatcount is set to non-infinite loop playback and the play cannot be triggered after entering the background during playback.
  • Fix the issue of PAGImageView getting stuck in a certain frame due to frequent calls to the play method.

(5)The fixes of Android platform issues

  • Fix the abnormal problem of PAGImageView rendering and playback

v4.2.55

12 Apr 12:11
Compare
Choose a tag to compare

主要修改内容:
(1)AE 特性新增支持

  • 3D 图层 (3D Layer)
  • 色相/饱和度(Hue/Saturation)
  • 亮度和对比度(Brightness & Contrast)

(2)接口新增

  • 新增 PAGImageView 类:针对 UI 场景设计的专用播放组件,基于图片解码器+磁盘缓存模式,能够避免 OpenGL 跟 UI 视图桥接的额外开销,大幅降低内存和 CPU 占用
  • 新增 PAGDecoder 类:支持通过 PAGFile 或 组合的 PAGComposition 创建,将 PAG 当做标准图片解码器使用,快捷获取某一帧的渲染内容
  • PAGSurface 类:新增 copyPixelsTo 接口,支持将 PAGSurface 渲染的像素内容拷贝至业务方给定的内存地址

(3)能力新增

  • 占位图替换视频,视频文件可以像普通图片一样一键替换到指定的占位图上,快速实现视频模板能力
  • 导出视频文件,替换占位图或修改文本之后的 PAG 动效可以快速导出成视频文件
  • 音频播放,内置音频播放能力,包含 PAG 素材自带的音频以及用户替换的视频包含的音频轨道
  • 素材加密播放,支持通过桌面 PAGViewer 工具加密后的 PAG 素材进行授权播放

(4)桌面端配套工具

  • macOS 平台导出插件和桌面预览工具全面支持苹果 M1 芯片架构
  • 桌面端预览工具支持素材加密以及批量添加水印的能力

(5)能力优化

  • 文本渲染支持含有多个 unicode 的 emoji 表情 (Android 端需要使用带 harfbuzz 后缀的版本)
  • DisplacementMap 现已支持所有图层类型,不限制用于 BMP 预合成图层
  • PAGView 首帧播放渲染优化,避免出现首帧跳帧的情况
  • 优化存在多个图层交错引用同一个 BMP 预合成情况下的播放卡顿问题

(6)问题修复:

  • iOS 平台前后台切换偶现 crash 修复
  • PAGImageView 反馈问题修复

Main revisions:
(1)New support for AE features

  • 3D Layer
  • Hue/Saturation
  • Brightness & Contrast

(2)New interface added

  • Added PAGImageView class: a dedicated playback component designed for UI scenarios. Based on the image decoder + disk cache mode, it can avoid the additional overhead of bridging OpenGL and UI views, and significantly reduce memory and CPU usage.
  • Added PAGDecoder class: it supports creation through PAGFile or PAGComposition combined, using PAG as a standard image decoder to quickly obtain the rendering content of a certain frame
  • PAGSurface class: added copyPixelsTo interface to support copying the pixel content rendered by PAGSurface to the memory address given by the business party

(3)New capabilities

  • Placeholder image replaces video. The video file can be replaced on the specified placeholder image with one click just like an ordinary image, quickly realizing the video template capability.
  • Export video files. The PAG animation after replacing the placeholder image or modifying the text can be quickly exported into a video file.
  • Audio playback. The built-in audio playback capability includes the audio that comes with the PAG material and the audio track contained in the user-replaced video
  • Encrypted material playback capability. It supports authorized playback of PAG materials encrypted through the desktop PAGViewer tool

(4) Desktop supporting tools

  • macOS platform export plug-in and desktop preview tool fully support Apple M1 chip architecture
  • The desktop preview tool supports material encryption and the ability to add watermarks in batches

(5) Capability optimization

  • Text rendering supports emoji expressions containing multiple unicodes (Android needs to use the version with harfbuzz suffix)
  • DisplacementMap now supports all layer types and is not restricted to BMP composition layers
  • PAGView first frame playback rendering optimization to avoid frame skipping in the first frame
  • Optimize the playback lag problem when multiple layers interleave and reference the same BMP composition.

(6) Problem fix:

  • Fix for occasional crashes when switching between front and back on the iOS platform
  • Fix the PAGImageView feedback issues

v4.2.20

27 Mar 06:19
Compare
Choose a tag to compare
v4.2.20 Pre-release
Pre-release

主要修改内容:
(1)修复 Android 平台部分场景 PAGImageView 使用 crash 问题;
(2)修复企业版视频连续导出 crash 问题

Main revisions:
(1)Fix the crash issue when using PAGImageView in some scenarios on the Android platform;
(2)Fix the issue of continuous export crash of the Enterprise Edition videos

v4.2.17

24 Mar 06:46
Compare
Choose a tag to compare
v4.2.17 Pre-release
Pre-release

主要修改内容:
(1)版本新增

  • Android 端新增 harfbuzz 版本(带 -harfbuzz 后缀),用于支持多字节 emoji 表情的显示。
  • 新增企业版 SDK(带 -enterprise 后缀),包含音频播放、素材加密,占位图一键替换视频,导出视频文件等高阶功能。

(2)AE 特性:

  • 色相/饱和度(Hue/Saturation)
  • 亮度和对比度(Brightness & Contrast)
  • 3D 图层 (3D Layer)

(3)接口新增:

  • 新增 PAGImageView 类:针对 UI 场景设计的专用播放组件,基于图片解码器+磁盘缓存模式,能够避免 OpenGL 跟 UI 视图桥接的额外开销,大幅降低内存和 CPU 占用。
  • 新增 PAGDecoder 类:支持通过 PAGFile 或 组合的 PAGComposition 创建,将 PAG 当做标准图片解码器使用,快捷获取某一帧的渲染内容。
  • PAGSurface 类:新增 copyPixelsTo 接口,支持将 PAGSurface 渲染的像素内容拷贝至业务方给定的内存地址。

(4)能力优化:

  • 文本渲染支持含有多个 unicode 的 emoji 表情 (Android 侧需要使用 harfbuzz 版本)。
  • DisplacementMap 现已支持所有图层类型,不限制用于 BMP 预合成图层。
  • PAGView 播放首帧渲染优化,避免出现首帧跳帧播放。
  • 优化存在多个图层交错引用同一个 BMP 预合成情况下的播放卡顿问题。

Main revisions:
(1)New version

  • A new harfbuzz version (with -harfbuzz suffix) is added to Android to support the display of multi-byte emoji expressions.
  • A new enterprise version SDK (with -enterprise suffix) is added, including audio playback, material encryption, one-click replacement of video with placeholder image, export of video files and other advanced functions.

(2)AE features:

  • Hue/Saturation
  • Brightness & Contrast
  • 3D Layer

(3) New interface:

  • Added PAGImageView class: a dedicated playback component designed for UI scenes. Based on the image decoder + disk cache mode, it can avoid the additional overhead of bridging OpenGL and UI views, and significantly reduce memory and CPU usage.
  • Added PAGDecoder class: supports creation through PAGFile or PAGComposition combined, using PAG as a standard image decoder to quickly obtain the rendering content of a certain frame.
  • PAGSurface class: Added copyPixelsTo interface to support copying the pixel content rendered by PAGSurface to the memory address given by the business party.

(4) Capability optimization:

  • Text rendering supports emoji expressions containing multiple unicodes (the Android side requires the harfbuzz version).
  • DisplacementMap now supports all layer types and is not restricted to BMP precomposed layers.
  • The rendering of the first frame of PAGView playback is optimized to avoid skipping the first frame of playback.
  • Optimize the playback lag issue when multiple layers interleave reference to the same BMP pre-synthesis.

v4.1.49

22 Feb 03:12
Compare
Choose a tag to compare

主要修改内容:
(1)修复 PAGView makeSnapShot 接口部分 pag 文件获取异常问题;
(2)修复 Android 平台部分机型 ffavc 加载失败情况;
(3)修复 Android 平台部分场景 PAGView addListener crash 问题

Main revisions:
(1)Fix the abnormal issue in obtaining some pag files in the PAGView makeSnapShot interface;
(2)Fix the loading failure of ffavc on some models of the Android platform;
(3)Fix PAGView addListener crash issue in some scenarios on Android platform