面向个人本地视频观看与学习场景的手机端字幕解决方案。很多人手机里存着电影、网课、会议录音、访谈等本地视频,其中相当一部分没有字幕或只有外语字幕,观看门槛高、语言障碍大。本软件定位为「本地视频播放器 + 手机端离线字幕工作台」,覆盖以下典型场景:
外语影视 / 课程学习:无字幕的英文、日文视频,在手机上就能一键生成「原文 + 中文」双语字幕,边看边对照;
会议 / 访谈 / 录音整理:手机里的音视频自动转写成文字字幕,便于回看与检索;
隐私敏感场景:片源全程不出手机,本地处理 + 按需联网翻译,避免上传云端二次分发;
无电脑环境:出差、通勤等只有手机的场景,也能完成「抽音轨 → 识别 → 翻译 → 字幕叠加」全流程。
软件分为播放与字幕两大块。
播放能力:自动列出手机本地视频(按时间倒序、带缩略图预览)、手动选文件或加网络链接播放、断点续播、横屏全屏、点按播放/暂停、长按 2 倍速、深色界面。
字幕能力(核心亮点):
无字幕片源一键生成字幕:手机端自动抽取音轨并按停顿切句,调用语音识别得到原文,再按需翻译成中文;
双语叠加显示:播放时同步显示中英双语,可一键切换「双语 / 仅中文 / 仅原文 / 关闭」,字号可调;
导入现有字幕:支持 .srt / .ass / .vtt 字幕文件,导入后可继续翻译成中文;
智能缓存:识别与翻译结果自动落盘,二次打开秒加载;翻译只在用户点击时按量请求,不浪费额度。
技术栈:Expo SDK 58 + React Native(React 19 / RN 0.88)+ expo-video 播放器;原生模块用 Kotlin 自研;语音识别接入硅基流动 SenseVoice,翻译接入百度翻译开放平台。
关键实现:
原生音轨抽取模块(Kotlin):基于 Android 系统自带的 MediaExtractor + MediaCodec 解码音轨,重采样为 16 kHz 单声道 PCM 并做多声道下混;再通过能量 VAD(自适应噪声门限 + 停顿检测)把连续语音切成 2~15 秒的片段写出 WAV,同时记录每段的起止时间轴;
语音识别(ASR):切片按并发上传至硅基流动 FunAudioLLM/SenseVoiceSmall(免费模型,支持中/英/日),返回文本;时间轴以切句边界为准,长片段再按标点二次切分、按字数比例分配时间;
翻译:百度翻译 API,采用 MD5 签名(appid + q + salt + 密钥)、按字节分批、QPS 限速,先对台词去重再翻译、最后映射回字幕;
字幕渲染:自研 srt/vtt/ass 解析器,播放时按时间轴命中当前句,中英双语叠加渲染;
本地缓存与缩略图:识别/翻译结果用 AsyncStorage 持久化;列表缩略图由原生取帧生成并落盘缓存。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!

下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论