UStackUStack
Compressor icon

Compressor

Compressor 为 Android 提供轻量无广告的原生视频压缩,基于 Media3,在兼容设备支持 H.265 与 AV1。

Compressor

Compressor 是什么?

Compressor 是专为 Android 设计的原生视频压缩应用。它旨在使用内置编解码器在设备上压缩视频文件,目标是生成更小的输出文件,而无需依赖缓慢、笨重的软件编码流程。

该项目开源,使用 Android Media3 库进行压缩,在兼容设备上支持 H.265 和 AV1。仓库还记录了使用一致输入视频和预设在多款 Android 设备上的性能测试。

主要特性

  • 使用 Android Media3(原生集成)而非 FFMpeg 包装器,旨在减少压缩开销
  • 在兼容设备上支持 H.265 和 AV1
  • 支持 Android Share Sheet,可直接从支持分享的工作流启动压缩
  • 无广告体验
  • 应用轻量(报告小于 10MB)
  • 使用 Kotlin 实现完全原生(非 React Native 方案)
  • 避免侵入性权限(无存储、无网络等,如页面所述)
  • 简单 UI,支持 Android 7.0 及以上版本运行

如何使用 Compressor

  1. 在 Android 7.0+ 设备上安装并打开 Compressor。
  2. 使用应用 UI(或 Android Share Sheet 支持)选择视频进行压缩。
  3. 选择应用提供的压缩选项/预设。
  4. 开始压缩,等待设备上生成压缩输出。

如果在支持 Share Sheet 的工作流中使用 Compressor,您可以直接从分享流程启动压缩,而无需在应用内手动选择文件。

使用场景

  • 压缩大体积 4K 视频以便分享:项目描述了使用 25 秒、200MB 4K 视频的中等预设测试,这适用于需要在保持实用质量水平的同时减小尺寸的情况。
  • 为带宽有限的连接准备上传视频:更小的文件尺寸可加速将视频从设备传输到其他服务或设备。
  • 减少老款 Android 设备存储占用:仓库包含多设备计时对比,为希望在自家硬件上快速完成压缩的用户提供参考。
  • 比较原生编解码器压缩与软件编码方案:页面将 Compressor 与另一款带广告的 Android 视频压缩应用对比,测试显示约 117 倍速度差异。
  • 本地/离线压缩工作流:应用声明无网络且无存储权限(“no storage, no internet etc”),适合专注于设备内处理的场景。

常见问题

Compressor 无广告吗?
是的。仓库声明“ad free”。

支持哪些 Android 版本?
页面表示 Compressor 支持 Android 7.0 及以上版本。

Compressor 支持 H.265 和 AV1 吗?
是的——包含 H.265 和 AV1 支持,适用于兼容设备。

Compressor 与基于 FFMpeg 的包装器相比压缩性能如何?
页面表示它使用原生 Media3 库而非另一款缓慢、笨重的 FFMpeg 包装器,并提供了文档化测试的计时对比。

Compressor 需要侵入性权限或网络访问吗?
页面声明“No invasive permissions (no storage, no internet etc)”。

替代方案

  • 其他原生 Android 视频压缩应用:许多应用使用设备编解码器压缩视频;工作流和 UI 会有差异,但速度和支持格式可能不同。
  • 使用通用媒体工具在 Android 上转码/压缩:如果使用依赖软件编码的应用或库,其运行时和设备兼容性可能不同。
  • 桌面或服务器端视频压缩工作流:对于偏好设备外处理的用户(如批量任务或更多控制),将压缩移至电脑或服务会改变设置和性能权衡。
  • 应用内分享/转码替代:如果想从 Android Share Sheet 启动压缩,可寻找与系统分享菜单集成的应用,避免打开单独文件选择器。