GoForum🌐 V2EX

做了一个 iOS 全局屏幕翻译 App,基于 ReplayKit + PiP 技术

Maxwin · 2026-03-24 19:34 · 0 次点赞 · 2 条回复

各位好,最近做了一个 iOS App ,功能是全局屏幕实时翻译。简单来说就是:开启录屏 → OCR 识别屏幕文字 → 翻译 → 以画中画悬浮窗显示结果。任何 App 里都能用,不需要 root 、不需要辅助功能权限。

核心技术栈

  • ReplayKit Broadcast Extension — 捕获屏幕帧
  • Vision framework — OCR 文字识别
  • Apple Translation framework — 离线翻译
  • AVPictureInPictureVideoCallViewController — 画中画悬浮窗
  • 纯 SwiftUI,零第三方依赖

工作流程

屏幕录制 (ReplayKit)
  → 帧捕获 (CMSampleBuffer)
  → PiP 区域检测 & 排除
  → OCR 区域图像存入 App Group 容器
  → Darwin Notification 通知主 App
  → OCR (Vision) → 文本拼接 → 翻译 (Translation)
  → 文本排版引擎 → PiP 覆盖层更新

为什么做这个

市面上的翻译 App 要么只能翻译截图,要么需要复制粘贴文字。我想要的是:打开任何 App (游戏、Twitter 、网页),屏幕上的外语直接变中文,实时更新。

技术上最大的挑战是 PiP 自检测——画中画窗口本身也在屏幕上,OCR 不能把自己显示的翻译结果再识别一遍。这个问题花了不少时间,后面单独写一篇讲。

目前支持的语言

源语言:英、日、韩、法、德、西、葡(巴西)、俄、泰、越 目标语言:简中、繁中、英、日、韩、法、德、西

完全离线运行,翻译资源首次使用时下载,之后不需要网络。

App Store 搜 TransPeek 就能找到,免费有 30 分钟体验额度。有什么问题欢迎交流。

2 条回复
McGrady222 · 2026-03-24 19:59
#1

不错的想法

Maxwin · 2026-03-24 20:19
#2

@McGrady222 已经上线初始版本了 :)

添加回复
你还需要 登录 后发表回复

登录后可发帖和回复

登录 注册
主题信息
作者: Maxwin
发布: 2026-03-24
点赞: 0
回复: 0