Releases: SuperMonster003/AutoJs6-Plugin-MediaInfo
Releases · SuperMonster003/AutoJs6-Plugin-MediaInfo
Release list
AutoJs6-Plugin-MediaInfo v2.0.0 (2026/08/31)
Immutable
release. Only release title and notes can be modified.
v2.0.0 已通过 PR #1 合入
master;Release 与标签目标为合并提交636a83cf024725c049367d43c849c727a4a93aec。五个 APK 的服务器端大小与 SHA-256 已在发布前复核。
版本要点
- 原生解析引擎从冻结的 MediaInfoLib 0.7.83 切换为官方 MediaArea 源码构建:MediaInfoLib 26.05(
f23e69ce89581343f3b7a42e06828a5331e290d5)与 ZenLib 0.4.41(894980d3ecbc843d6ac685493f8f2ed5c2b6864c)。 - 四种 ABI(arm64-v8a、armeabi-v7a、x86、x86_64)及 universal APK 均由固定源码、Android NDK 29.0.14206865 与 CMake 3.22.1 可复现构建;来源锁、许可证、APK 内 provenance 和 ELF 审计已纳入门禁。
- 增加官方稳定版每周/手动检查流程:只生成固定版本的 Draft PR,检测上游标签移动,不会自动合并或发布。
- 修复 R8 对 JNI 包装类/方法的改写风险,并通过实际 minified Release APK 的公开 AIDL round-trip 测试。
- 保留 v1.1.0 已加入的常规 FD 直读、保守的进程内 LRU/10 分钟滑动缓存、超时/取消与 pipe 私有副本回退。
兼容性与已知差异
- v1.1.0 永久固定 MediaInfoLib 0.7.83;从 v2.0.0 起采用官方源码的固定版本更新路线。
- 对外 AIDL、
inform、get与autojs6-plugin-mediainfo-snapshot-v1契约保持不变。 - 使用同一批 4 个真实媒体样本比较 0.7.83 与 26.05:容器格式和有效核心流保持一致;日期/单位规范化、字段重命名、AAC 细化、H.264/VP9 HDR/色彩、FLAC 校验和与封面图元数据等差异均确认来自上游增强,无需兼容 shim。
- 损坏 MP4 仍识别为 General-only MPEG-4;26.05 不再输出旧版的
IsTruncated=Yes,该字段视为非稳定诊断信息。 - 原生
Output=JSON集成明确延后至 v2.1.x;v2.0.0 继续使用当前文本解析器生成 snapshot-v1。
验证摘要
- 提交
7592560287f6d9125f7b7b8188b1775d05a91a80的 push 与 pull_request CI 全绿:Markdown、单元测试、Debug/Release 构建、四 ABI 打包审计、API 35 x86_64 minified Release smoke 与 connectedDebug 均通过(6/6 checks)。 - 发布后回归同样全绿:
master合并 push(Build / Markdown)与v2.0.0标签 push(Build / Markdown)共四个 workflow 均为success;两组 minified Release 均再次输出OK (1 test)并完成connectedDebugAndroidTest。 - 本地最终生产构建:129 个 actionable tasks、121 个实际执行,
BUILD SUCCESSFUL(637 秒);签名证书 SHA-256 为31a681fcfffb3e428420cae280ded89292b12a3b0f59e19b7a73e32a8ae4c213,与 v1.1.0 一致。 - 四 ABI ELF
LOAD对齐为0x4000(16 KB),唯一导出符号为JNI_OnLoad;动态依赖限定为 libc/libdl/libm/libz。 - QV710AF65F(Sony XQ-AT72,API 31)安装并运行发布目录中精确字节的 ARM64 与 ARM32 APK:设备端 SHA-256、版本 2.0.0/10 均匹配,两个 Release smoke test 均为
OK (1 test),每轮后应用与测试包均已删除。 - QV770340J7(Sony XQ-DQ72,API 33)经显式大文件授权验证 19.37 GiB MP4 与 77.97 GiB MKV:冷/缓存结果一致,冷解析分别为 137.417 ms 与 177.211 ms;测试副本均已立即清理。
APK 与 SHA-256
| ABI | 文件 | 字节数 | SHA-256 |
|---|---|---|---|
| arm64-v8a | autojs6-plugin-mediainfo-v2.0.0-arm64-v8a-69e544cf.apk |
2,951,111 | d8d7c289c78f61aabbe459196475d5630618ca9b0e9d8ab865995a8d8d84bc7f |
| armeabi-v7a | autojs6-plugin-mediainfo-v2.0.0-armeabi-v7a-40397d24.apk |
2,721,393 | c1ea25922acbef6fc290a18520555c580f2ed917b2c76936735960447ccba25c |
| universal | autojs6-plugin-mediainfo-v2.0.0-universal-69a8a908.apk |
11,715,225 | f33bb09fad708635bee0776ba2a0a00220761d280f25e72fe07cb710efc6c3f8 |
| x86 | autojs6-plugin-mediainfo-v2.0.0-x86-70ec1b9b.apk |
3,338,929 | 83ab907437f3736cc84cb411f1624aefef814ca391b01ca5942bd13a627ef3f6 |
| x86_64 | autojs6-plugin-mediainfo-v2.0.0-x86_64-9cd62670.apk |
3,073,544 | eadfd1f89047017e7459aa0865875cbff0b1fb31cb08d19978e27ceb5e563f5b |
可追溯记录
- 已合并 PR:#1 feat(native): build MediaInfo from official sources
- v2.0.0 发布验证记录
- v1.1.0 / v2.0.0 解析差异记录
- Release/标签目标为
master合并提交636a83cf024725c049367d43c849c727a4a93aec;该提交的第二父提交是已通过 6/6 checks 的 feature head7592560287f6d9125f7b7b8188b1775d05a91a80。 - APK 构建源码修订为
c2e8c42c4ff020df9d6d12aa00095d29482e9298;其后的提交只更新验证文档与 CI 执行方式,不改变发布 APK 字节。
1.1.0 @ 2026/08/31
主要更新
新增免整文件拷贝解析: 可随机访问的常规文件描述符通过/proc/self/fd交由 MediaInfoLib 直读, 管道或直读失败时才使用私有临时副本新增进程内结果缓存: API 27+ 对完整报告, 字段查询与快照采用稳定文件身份, LRU, 10 分钟滑动有效期及低内存清理, 避免重复解析新增协作取消与超时: 每次 AIDL 调用设有 30 秒上限, 超时中止原生解析或回退复制, 释放临时资源并返回MEDIAINFO_TIMEOUT修复修复大文件常规描述符被不必要地整文件复制的问题, 并保证成功, 失败, 参数校验, 取消和超时路径均关闭描述符与回退文件修复修复缓存对快速文件修改的识别精度: 使用纳秒级 mtime / ctime, 并在 API 24-26 保守禁用缓存复用优化ABI 上报按已安装 base / split APK 中实际存在的libmediainfo.so动态生成, 并保留安全的进程 ABI 回退优化增强快照小节解析, 正确处理重复和编号流, 畸形行, 值内冒号, 重复字段与独立输出选项优化加入可复现的合成基准与真实媒体验证工具, 并记录 x86, x86_64 与 ARM64 的完整性能基线优化重建 10 语言 README, 插件使用说明与更新日志生成链路, 加入漂移校验和 GitHub Actions 门禁
发布验证
- GitHub Actions: Build integrity 与 Markdown integrity 全部通过
- JVM 单元测试 26/26 通过; API 36 x86_64 模拟器服务发现与 Binder 往返测试 3/3 通过
- API 29 x86, API 31 ARM64 与 API 36 x86_64 完整合成基准通过; ARM64 真实媒体矩阵通过
- QV770340J7 实体机验证 19.37 GiB MP4 与 77.97 GiB MKV: 冷解析分别为 137.417 ms 与 177.211 ms, 缓存命中分别为 0.258 ms 与 0.480 ms; 冷/热结果一致, 测试媒体已清理
- 五个 APK 均为
versionName=1.1.0,versionCode=9, 使用与 v1.0.0 相同证书签名并通过 16 KiB ZIP 对齐验证
APK SHA-256
| 安装包 | SHA-256 |
|---|---|
autojs6-plugin-mediainfo-v1.1.0-arm64-v8a-9cd4ab29.apk |
c75f71667cba5b3275dd19e899cca4610babea7350b2b8473ae3dd701a16962f |
autojs6-plugin-mediainfo-v1.1.0-armeabi-v7a-be9a4163.apk |
cfd7846f48e173cddeafbe20d857c672df416ce86ee67c173c7841b5c704e988 |
autojs6-plugin-mediainfo-v1.1.0-universal-70737cf9.apk |
a495e49bbfa75af5691bd42e6a834735af1d22fd4235f03e5f9fc6b677249f1c |
autojs6-plugin-mediainfo-v1.1.0-x86_64-d9c7c1f3.apk |
8fb79fbef75dc3e97ec40ad56efd824f4fe378457176c24b415216aa0d6ad5c1 |
autojs6-plugin-mediainfo-v1.1.0-x86-00b286eb.apk |
669e0ee418a1357c98696f3606f7c2c6707c3f9472df9b8a743c95c11f38b1b7 |
1.0.0 @ 2026/07/15
新增MediaInfo 插件服务, 插件 ID 为mediainfo, 引擎为mediainfo新增支持通过org.autojs.plugin.MEDIAINFO发现并调用插件新增支持inform/get/snapshot能力, 可生成完整媒体报告, 查询单个参数, 输出结构化 JSON 快照新增内置arm64-v8a/armeabi-v7a/x86_64/x86的libmediainfo.so, 并支持universal通用包新增插件运行时信息上报支持的 ABI 列表, 发布 APK 文件名包含版本号/ABI 变体和 CRC32 摘要新增插件信息, 使用说明, README 与 CHANGELOG 的多语言资源: 西班牙语/法语/俄语/阿拉伯语/日语/韩语/英语/简体中文/香港繁体/台湾繁体