这个项目能做什么

Textream 是一款免费、开源的提词器,专为 Mac、iPhone 和 iPad 设计,面向主播、采访者、演讲者和播客制作者。它提供三种阅读模式:单词跟踪(说话时高亮每个单词)、经典模式(恒定速度自动滚动)和语音激活(说话时滚动)。Mac 应用以灵动岛风格覆盖层、可拖动的浮动窗口或 Sidecar iPad 上的全屏模式显示文本。iOS 应用增加了近摄像头阅读和仅演示者摄像头录制功能。 主要功能包括: - **镜像模式**,适用于提词器玻璃,在横屏方向水平、垂直或双向翻转提示,并提供紧凑按钮用于实时镜像、位置、文本大小、速度和播放控制。 - **眼神接触阅读位置**——默认情况下,活动行位于前置摄像头正下方,也可居中显示。 - **阅读时可选摄像头**——在提示后显示或隐藏摄像头。 - **自拍视频录制**——捕获摄像头视频和麦克风音频,支持前后摄像头切换,保存到照片应用并带有录制画廊。 - **仅演示者提示**——滚动提示在屏幕上可见,但不会烧录到保存的视频中。 - **匹配字体**——两个平台均支持 Sans、Serif、Mono 和 OpenDyslexic。 - **语音识别**——根据 Mac、语言和系统可用性,在设备端或由 Apple 处理;经典模式无需麦克风。 - **显示选项**——固定到刘海、浮动窗口或选定显示器上的全屏;可调节文本区域高度(100–400 像素)和字体大小(XS 到 XL)。 - **从屏幕共享中隐藏**——防止覆盖层出现在屏幕录制或视频通话中。 - **远程连接**——通过本地网络浏览器(HTTP + WebSocket)在任何设备上查看提词器,支持二维码访问、实时同步,远程设备无需安装应用。 - **导演模式**——导演可从任何浏览器实时编写、编辑和推送脚本,配备专用 HTTP + WebSocket 服务器(默认端口 7575),支持实时文本编辑、读取锁定高亮和 10 Hz 实时状态流。 - **PowerPoint 备注导入**——拖入 .pptx 文件以提取演示者备注作为页面。 - **多页支持**——在页面之间导航并自动前进。 - **实时波形**——可视化语音活动指示器。 - **隐私**——无账户、无广告、无分析,也无 Textream 运营的云服务;语音识别可能将音频发送给 Apple 处理(请参阅隐私政策)。 - **开源**——MIT 许可。 对于开发者,导演模式 API 在本地网络暴露 HTTP 服务器和 WebSocket 服务器。内置 Web UI 位于 `http://<mac-ip>:<http-port>`,WebSocket 端点为 `ws://<mac-ip>:<ws-port>`。认证需要从导演页面 HTML 中提取的 64 字符令牌。客户端在连接后五秒内发送类似 `{"type":"auth","text":"<token>"}` 的 JSON 消息。命令包括 `start`(替换文本并开始单词跟踪)、`updateText`(编辑未读文本同时保留读取位置)和 `stop`。服务器每约 100 毫秒广播状态帧,包含 `words`、`highlightedCharCount`、`totalCharCount`、`fontColor`、`cueColor` 和 `audioLevels` 等字段。README 中提供了最小 Python 客户端示例。 从源码构建需要 Xcode 26 或更高版本,macOS 目标使用 Swift 5 语言模式。对于 iOS,需要 iOS 26 SDK 和模拟器运行时,以及物理设备来验证摄像头、麦克风、录制和照片保存。克隆仓库,打开 `Textream/Textream.xcodeproj`,选择适当的 scheme(macOS 用 Textream,iOS 用 TextreamiOS),然后按 ⌘R 运行。对于 iOS,如果 `dev.fka.textream` 不可用,可能需要更改包标识符,并在设备上启用开发者模式。 该应用还注册了 `textream://read?text=...` URL scheme 和 macOS 服务,允许将任何应用中的文本选择发送到 Textream。原始创意归功于 Semih Kışlar,应用由 Fatih Kadir Akin 制作。隐私和支持页面可在 textream.net 获取。