Open
Conversation
61b7920 to
faa0c58
Compare
b1dfefc to
c885c1f
Compare
c885c1f to
1f2c3f6
Compare
03a9dc7 to
72ccf9a
Compare
72ccf9a to
183e2db
Compare
183e2db to
ed36b10
Compare
ed36b10 to
29a895b
Compare
29a895b to
a8bc48b
Compare
a8bc48b to
a1d6d93
Compare
296b61a to
950c8f5
Compare
c692368 to
7974942
Compare
7974942 to
5a8383b
Compare
7eea4da to
d802d5c
Compare
d802d5c to
9e0adff
Compare
9e0adff to
08086f7
Compare
08086f7 to
f793748
Compare
f793748 to
c6c42f9
Compare
c6c42f9 to
6633da7
Compare
6633da7 to
c332d9e
Compare
c332d9e to
44deec6
Compare
44deec6 to
793d701
Compare
793d701 to
eaf414d
Compare
eaf414d to
7ca75e9
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
v1.0.0→v4.5.36Release Notes
Tencent/libpag (libpag)
v4.5.36Compare Source
**主要修改内容: **
(1)iOS 平台减少 ApplicationWillResignActive 中 deviceLocker 持有时间,防止主线程阻塞
(2)Android 平台修复 JNI 异常处理和空指针问题
(3)Android 平台修复 SafeConvertToStdString 中 jBytes 为空时的 JNI crash
(4)鸿蒙平台修复 API14+ 上使用新 text module API 时的字体回退 crash 问题
(5)鸿蒙平台修复 PAGImageView setScaleMode(None) 未重置 matrix 的问题
**Main modifications: **
(1)Reduce deviceLocker hold time in ApplicationWillResignActive to prevent main thread blocking on iOS.
(2)Fix JNI exception and null pointer handling on Android.
(3)Fix JNI crash when jBytes is null in SafeConvertToStdString on Android.
(4)Fix font fallback crash by using the new text module API on API14+ for the HarmonyOS platform.
(5)Fix PAGImageView setScaleMode(None) not resetting matrix on HarmonyOS.
v4.5.27Compare Source
主要修改内容:
(1)Android 平台支持使用系统 Canvas API 渲染彩色矢量字体
(2)iOS 平台修复 PAGImageView 可能因为引用计数导致的 crash
(3)修复使用纹理 ID 创建 PAGSurface 时出现黑屏渲染的问题
(4)鸿蒙平台优化 NativeDisplayLink,将 VSync 回调执行在 UI 线程
(5)修复鸿蒙平台 NativeCodec 中的空指针检查和内存泄漏问题
(6)修复网页视频解码卡顿问题并提升 React 导入兼容性
(7)修复因 3D 图层缩放值计算错误导致深度测试失败且无法显示的问题
**Main modifications: **
(1) Support color vector font rendering using Android system Canvas API.
(2) Use the C++ interface in PAGImageView to avoid crashes caused by reference counting issues.
(3) Fix the issue of black screen rendering when creating PAGSurface with texture ID.
(4) Optimize NativeDisplayLink to execute VSync callback on UI thread for OHOS platform.
(5) Fix null pointer checks and memory leak in ohos NativeCodec.
(6) Fix web video decoding stuttering and improve React import compatibility.
(7) Fixed an issue where the incorrect calculation of the scaling value of the 3D layer caused the depth test to fail and was not displayed.
v4.5.12Compare Source
主要修改内容:
(1) 版本新增
(2) 接口变更
(3) 性能优化
tgfx 升级至 2.1.1 版本,基础图形渲染(如 Rect)的性能相比之前提升 10 倍,文本渲染性能相比之前提升 20 倍
主要优化:
(4)包体优化
(5)功能完善和稳定性提升
Main modifications:
(1) Version Additions
(2) Interface Changes
(3) Performance Optimization
Upgraded tgfx to version 2.1.1, achieving significant performance improvements: 10x faster for basic graphics rendering (e.g., Rect) and 20x faster for text rendering.
Key Optimizations:
(4) Package Size Optimization
(5) Feature Improvements and Stability Enhancements
v4.5.2Compare Source
主要修改内容:
(1) 版本新增
(2) 接口变更
(3) 性能优化
tgfx 升级至 2.1.1 版本,基础图形渲染(如 Rect)的性能相比之前提升 10 倍,文本渲染性能相比之前提升 20 倍
主要优化:
(4)包体优化
(5)功能完善和稳定性提升
Main modifications:
(1) Version Additions
(2) Interface Changes
(3) Performance Optimization
Upgraded tgfx to version 2.1.1, achieving significant performance improvements: 10x faster for basic graphics rendering (e.g., Rect) and 20x faster for text rendering.
Key Optimizations:
(4) Package Size Optimization
(5) Feature Improvements and Stability Enhancements
v4.4.43Compare Source
主要修改内容:
(1)iOS 平台修复进入后台时 deviceMap 非线程安全读取导致的 crash
(2)iOS 平台减少 ApplicationWillResignActive 中 deviceLocker 持有时间,防止主线程阻塞
(3)iOS 平台使用 C++ 接口替代 PAGImageView 中的实现,避免因引用计数问题导致的 crash
(4)修复 PAGLayer::removeFromParentOrOwner() 中的数据竞争问题
(5)Android 平台修复 JNI 异常处理和空指针问题,修复 SafeConvertToStdString 中 jBytes 为空时的 crash
(6)鸿蒙平台升级编译版本至 6.0.0,并仅保留 pag 相关符号在 .so 文件中
(7)鸿蒙平台修复 API14+ 上使用新 text module API 时的字体回退 crash 问题
(8)鸿蒙平台修复 PAGImageView setScaleMode(None) 未重置 matrix 的问题
**Main modifications: **
(1)Fix the crash caused by non-thread-safe reads of deviceMap when the iOS app enters background.
(2)Reduce deviceLocker hold time in ApplicationWillResignActive to prevent main thread blocking on iOS.
(3)Use the C++ interface in PAGImageView to avoid crashes caused by reference counting issues on iOS.
(4)Fix a data race in PAGLayer::removeFromParentOrOwner() by updating rootLocker after resetting the layer's parent.
(5)Fix JNI exception and null pointer handling on Android, fix JNI crash when jBytes is null in SafeConvertToStdString.
(6)Upgrade the HarmonyOS compilation version to 6.0.0, and retain only pag-related symbols in the .so file.
(7)Fix font fallback crash by using the new text module API on API14+ for the HarmonyOS platform.
(8)Fix PAGImageView setScaleMode(None) not resetting matrix on HarmonyOS.
v4.4.35Compare Source
主要修改内容:
(1) ffmpeg 升级至 7.0.2 版本,修复安全漏洞
(2) 支持 JPG 图片的 CMYK 色彩空间,并修复崩溃问题。
(3) 当图片未缩放时,使用 Nearest 纹理过滤选项避免出现渲染模糊。
Main modifications:
(1) Upgraded ffmpeg to version 7.0.2 to address security vulnerabilities
(2) Support CMYK color space for JPG images and fix the crash issues.
(3) Use Nearest as the texture filtering mode to avoid rendering blur when the image is not scaled.
v4.4.31Compare Source
主要修改内容:
(1) 将文本背景的默认边距系数从 0.2f 增加到 0.4f。
(2) 修复微信小程序中在同一个canvas上多次加载pag文件导致canvas尺寸异常增大的问题
Main modifications:
(1) Increase the default margin factor for text backgrounds from 0.2f to 0.4f.
(2) Fixes an issue in WeChat Mini Programs where loading PAG files multiple times on the same canvas causes the canvas size to increase unexpectedly.
v4.4.29Compare Source
主要修改内容:
(1)将鸿蒙平台中软件解码的最大送帧数量修改为 maxReorderSize + 1,修复解码异常。
(2)解码 PAG 文件时检查迭代过程中的异常,以防止内存溢出。
(3)修复在苹果平台上添加换行后部分文本无法显示的问题。
(4)修复 videoEnable 为 false 时运行 BMP 预合成素材 crash问题。
Main modifications:
(1)Modify the maximum number of software decoding frames to maxReorderSize + 1 on the HarmonyOS platform to fix decoding exceptions.
(2)Check for exceptions during iteration when decoding PAG files to prevent memory overflow.
(3)Fix the issue of partial text not displaying after adding line breaks on Apple platforms.
(4)Fix the issue of disabling videoEnable causes errors when running BMP precompositions.
v4.4.26Compare Source
主要修改内容:
(1)修复鸿蒙平台解码释放异常问题,临时将最大送帧数量增加到 16.
Main modifications:
(1)Fix the HarmonyOS decoding error and temporarily increase the frame wait limit to 16.
v4.4.25Compare Source
主要修改内容:
(1)鸿蒙平台 PAGViewController、PAGImageViewController、PAGPlayer、PAGSurface 增加 release,支持外部释放内存占用;
(2)修复鸿蒙平台内存泄漏,包含硬解、ArkTS 层对象释放;
(3)macOS 平台 autorelease 对象增加及时释放逻辑;
(4)修复 AE 中设置的图片伸缩模式没有应用问题;
(5)支持 Android 15 16KB 页面大小
Main modifications:
(1)Added release methods to PAGViewController, PAGImageViewController, PAGPlayer, and PAGSurface on the HarmonyOS platform to support external memory release.
(2)Memory leaks on the HarmonyOS platform were fixed, including hardware decoding and ArkTS object release.
(3)Add timely release logic for autorelease objects on the macOS platform.
(4)Fixed the issue where set image scaling mode in AE was not applied.
(5)Support Android 15 with a 16KB page size.
v4.4.20Compare Source
主要修改内容:
(1)版本新增
(2)接口变更
(3)性能优化
(4)稳定性提升
Main modifications:
(1)New supported platforms
(2)API Changes
(3)Performance Optimization
(4)Stability improvement
v4.4.15Compare Source
主要修改内容:
(1)修复部分 pag 素材播放过程中内存不断增长问题;
(2)修复 iOS 平台 PAGView、PAGImageView 异步加载相同网络文件异常释放问题,增强线程安全性;
(3)修复部分场景 PAGImageView 缓存失败问题;
(4)完善鸿蒙版本,增强稳定性
Main revisions:
(1) Fixed the memory issue continuously increasing during the playback of certain PAG assets.
(2) Fixed the abnormal release issue of PAGView and PAGImageView when asynchronously loading the same network file on the iOS platform, and enhanced thread safety.
(3) Fixed the issue of cache failure for PAGImageView in certain scenarios.
(4) Improved the HarmonyOS version and enhanced stability.
v4.4.8Compare Source
主要修改内容:
(1)鸿蒙版本完善:增加 PAGImageView,支持网络文件加载,完善鸿蒙硬件、软件解码
(2)iOS 平台移除 PAGDecoder 和 PAGImageView 对于部分方法的入参限制
(3)修改部分 pag 文件渲染异常问题
Main revisions:
(1) Improvements for HarmonyOS version: adding PAGImageView, supporting network file loading, enhancing HarmonyOS hardware and software decoding.
(2) Removing input parameter restrictions for certain methods in PAGDecoder and PAGImageView on the iOS platform.
(3) Fixing rendering anomalies in some pag files.
v4.4.1Compare Source
主要修改内容:
(1)修复使用 Freetype 渲染矢量 Path 时产生的内存访问越界问题。(#2224)
(2)修复 strlen() 相关调用产生的堆栈溢出安全问题。(#2232)
(3)重构渲染流程以最大化开启 glScissor 来减少不必要的像素渲染。 (#2141)
(4)简化矢量图形缓存机制,使用 TGFX 内置的 Path 缓存替代原先的 Shape 缓存。 (#2158)
(5)修改 PAGImageView 的一些接口,允许回调函数里的 PAGFile 传入空值。(#2191)
(6)通过缓存纹理而不是 Surface 来减少绘制次数,从而优化画面裁剪的绘制性能。(#2206)
(7)全局减少一次不必要的离屏渲染过程实现模糊滤镜的渲染性能提升。(#2098)
(8)在 Font 类上缓存确定尺寸的 Typeface 来提升文本渲染的性能。 (#2132)
(9)通过延迟 emoji 的图片解码过程实现并发解码,优化了 Emoji 的渲染性能。(#176)
(10)新增了对鸿蒙 Next 平台的首个版本适配。 (#2408)
Main revisions:
(1)Fix the out-of-bounds memory access crash when rendering paths with freetype. (#2224)
(2)Fix the heap-buffer-overflow issue by adding boundary check for the strlen() call. (#2232)
(3)Optimize performance by enabling glScissor whenever possible. (#2141)
(4)Replace tgfx::Shape with the built-in cache mechanism of the Path class. (#2158)
(5)Modify some interfaces of PAGImageView to allow PAGFile to be nullable. (#2191)
(6)Optimize clip performance by caching a texture instead of a surface to reduce draw calls. (#2206)
(7)Optimize the performance of blur filters by skipping one unnecessary offscreen rendering pass. (#2098)
(8)Improve text rendering performance by caching typeface size in the Font class. (#2132)
(9)Optimze color emoji drawing performance by deferring glyph image decoding. (#176)
(10)Add support for the ‘HarmonyOS Next’ platform. (#2408)
v4.3.71Compare Source
主要修改内容:
(1)支持 Android 15 16KB 页面大小
Main modifications:
(1)Support Android 15 with a 16KB page size.
v4.3.68Compare Source
主要修改内容:
(1)修复 iOS 平台 PAGView、PAGImageView 异步加载相同网络文件异常释放问题,增强线程安全性;
(2)修复部分场景 PAGImageView 缓存失败问题;
(3)修复Android 平台图片解码色差和闪退问题
Main modifications:
(1)Fixed the issue of abnormal release on the iOS platform for PAGView and PAGImageView when asynchronously loading the same network file, enhancing thread safety.
(2)Fixed the issue of cache failure in certain scenarios for PAGImageView.
(3)Fixed the issues of color deviation and crashes in image decoding on the Android platform.
v4.3.62Compare Source
主要修改内容:
(1)修复三星手机使用PAGImageView可能会白屏的问题 (#2362)
Main revisions:
(1)Fix the issue of blank rendering in PAGImageView on certain Samsung models (such as Galaxy S23 FE). (#2362)
v4.3.57Compare Source
主要修改内容:
(1)修复了多个 PAGView 实例加载同一个 pag 文件时内存越界的问题。
(2)修复了 iOS 平台渲染某些 pag 文件时内存泄漏的问题。
(3)修复了 iOS 和 Android 平台上从 PAGImageLayer 获取的 contentDuration 值不一致的问题。
(4)修复了堆缓冲区溢出问题。
(5)修复了由于解码错误或损坏的 pag 文件导致的崩溃。
Main revisions:
(1)Fixed a memory out-of-bounds issue when multiple PAGView instances load the same PAG file.
(2)Fixed a memory leak issue in rendering certain pag files on the iOS platform.
(3)Fixed the inconsistency in contentDuration values obtained from PAGImageLayer on iOS and Android platforms.
(4)Fixed a heap buffer overflow issue.
(5)Fixed crashes caused by decoding errors or corrupted pag files.
v4.3.51Compare Source
主要修改内容:
(1)修复形状缓存异常问题;
(2)修复 iOS 平台 PAGImageView 中使用 setPathAsync 时渲染失败的问题;
(3)修改 iOS 平台 PAGImageView init 初始化渲染异常问题;
(4)修改 Android 平台带 Mask 的文本渲染 crash 问题
Main revisions:
(1)Fixed the issue with shape cache abnormalities.
(2)Fixed the rendering failure issue in PAGImageView on the iOS platform when using setPathAsync.
(3)Modified the initialization rendering issue in PAGImageView on the iOS platform.
(4)Fixed the crash issue with text rendering with masks on the Android platform.
v4.3.47Compare Source
主要修改内容:
(1)稳定性提升
(2)性能优化
Main revisions:
(1)Stability improvement
(2)Performance optimization
v4.3.45Compare Source
主要修改内容:
(1)修复 iOS 平台 PAGImageView 部分场景无法显示内容或闪屏的问题
(2)修复 iOS 平台 PAGView 子线程使用可能导致的 crash 问题
(3)修复移动端 PAGView 设置 sync 时可能出现的死锁问题
Main revisions:
(1)Fixed the issue that PAGImageView on the iOS platform could not display content or had screen flickering in some scenarios.
(2)Fixed the potential crash issue when using PAGView on a sub-thread on the iOS platform.
(3)Fixed the potential deadlock issue when setting 'sync' on PAGView on mobile platforms.
v4.3.43Compare Source
主要修改内容:
(1)新增支持
(2)包体优化
(3)稳定性提升
Main revisions:
(1)New capabilities
(2)Size optimization
(3)Stability improvement
v4.3.33Compare Source
主要修改内容:
(1)AE 特性新增支持
(2)能力新增
(3)版本新增
(4)稳定性提升
Main revisions:
(1) New AE features
(2) New capabilities
(3) New versions
(4) Stability improvement
v4.3.3Compare Source
主要修改内容:
(1)版本新增
(2)AE 特性新增支持
(3)新增能力
(4)问题修复
Main revisions:
(1) New versions
(2) Added support for AE features
(3)New capabilities
(4) Issue fixes
v4.2.100Compare Source
主要修改内容:
(1)Android 平台问题修复
(2)iOS 平台问题修复
(3)macOS 平台
Main revisions:
(1)The fixes of Android platform issues
(2)The fixes of iOS platform issues
(3) macOS platform
v4.2.88Compare Source
主要修改内容:
(1)Android 平台问题修复
(2)iOS 平台问题修复
(3)微信小程序
Main revisions:
(1)The fixes of Android platform issues
(2)The fixes of iOS platform issues
(3)WeChat mini program
v4.2.80Compare Source
主要修改内容:
(1)PAGImageView 中磁盘缓存下沉至 C++ 层
(2)Web 和 QT 平台上新增支持创建离屏 PAGSurface
(3)Web 平台问题修复:
(4)iOS 平台问题修复
(5)Android 平台问题修复
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:
(4)The fixes of iOS platform issues
(5)The fixes of Android platform issues
v4.2.55Compare Source
主要修改内容:
(1)AE 特性新增支持
(2)接口新增
(3)能力新增
(4)桌面端配套工具
(5)能力优化
(6)问题修复:
Main revisions:
(1)New support for AE features
(2)New interface added
(3)New capabilities
(4) Desktop supporting tools
(5) Capability optimization
(6) Problem fix:
v4.2.20Compare Source
主要修改内容:
(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.17Compare Source
主要修改内容:
(1)版本新增
(2)AE 特性:
(3)接口新增:
(4)能力优化:
Main revisions:
(1)New version
(2)AE features:
(3) New interface:
(4) Capability optimization:
v4.1.49Compare Source
主要修改内容:
(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
v4.1.43Compare Source
主要修改内容:
(1)Android 平台当 Animator 时长伸缩关闭后,新增调用 PAGView play 方法直接触发 onAnimationEnd 回调
(2)Android 平台 PAGView 中 removeUpdateListener 操作更换位置,避免出现内存泄漏
(3)修复 iOS 平台的内存泄漏问题
(4)iOS 平台 PAGView 中 listener 的相关处理确保线程安全,避免出现 crash
(5)修复 Web 平台 FeatureMask 渲染异常问题
(6)Web 平台 onAnimationStart 触发完善
Main modifications:
(1)On the Android platform, after the Animator duration scaling is closed, the PAGView play method is newly called to directly trigger the onAnimationEnd callback.
(2) The removeUpdateListener operation in PAGView on the Android platform changes the position to avoid memory leaks.
(3) Fix memory leak problem on iOS platform
(4)Related processing of listener in PAGView on iOS platform ensures thread safety and avoids crashes
(5)Fix the abnormal rendering problem of FeatureMask on the Web platform
(6) Web platform onAnimationStart trigger improvement
v4.1.41Compare Source
主要修改内容:
(1)PAGView 渲染优化,确保首帧渲染,避免出现初始播放跳帧问题;
(2)修复 Android 平台 vivo V1901A 渲染异常问题;
(3)修复 Android 平台内存不足时文件解码失败引起的 crash;
(4)修复 Android 平台内存不足时线程创建 crash 问题
Main revisions:
(1)PAGView rendering optimization ensures the rendering of the first frame and avoids the problem of frame skipping during initial playback;
(2)Fix the abnormal rendering problem of vivo V1901A on Android platform;
(3) Fix the crash caused by file decoding failure when the Android platform has insufficient memory;
(4)Fix the thread creation crash problem when the Android platform has insufficient memory
v4.1.29Compare Source
4.1 正式版本发布,相对于 PAG 4.0 版本,主要修改内容:
(1)平台支持: 新增支持微信小程序(完整版本)
(2)AE 特性新增支持:
(3)API 更新:
(4)性能优化:“图层样式-投影” 使用新的模糊算法,相比之前,性能提升约 30%
(5)制品库变更:
(6)问题修复
The official version 4.1 is released. Compared with the PAG 4.0 version, the main revisions are:
(1)Platform support: Added support for WeChat Mini Program (full version)
(2)New support for AE features:
(3)API update:
(4)Performance optimization: "Layer Style - Projection" uses a new blur algorithm, which improves performance by about 30% compared to before.
(5) Prebuilt library changes:
(6) Issue fixes
v4.1.12Compare Source
主要修改内容:
(1)修复文本渲染模糊问题;
(2) Web 平台 BMP 预合成分辨率大于 4K 时关闭变速功能;
(3)修复 Android 平台外部字体注册获取失败 crash 问题;
(4)修复 Android 平台内存不足线程创建失败 crash 问题;
(5)修复 Android 平台 ManagerFragment 获取失败引起的 crash 问题
Main revisions:
(1) Fix text rendering blur problem;
(2)Turn off the variable speed function when the Web platform BMP composition resolution is greater than 4K;
(3)Fix the crash issue of failed registration and acquisition of external fonts on the Android platform;
(4)Fix the crash issue of thread creation failure due to insufficient memory on the Android platform;
(5)Fix the crash issue caused by failure to obtain ManagerFragment on Android platform
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.