# Live Photo Studio > 将任意视频转换为 iOS Live Photo,支持锁屏动态壁纸 [![Platform](https://img.shields.io/badge/platform-iOS%20%7C%20iPadOS-blue.svg)](https://developer.apple.com/ios/) [![Swift](https://img.shields.io/badge/Swift-6.0-orange.svg)](https://swift.org/) [![License](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE) ## ✨ 功能特性 - 📹 **视频转 Live Photo** — 导入相册视频,一键生成系统可识别的 Live Photo - ✂️ **精准裁剪** — 时长裁剪(1~1.5s)+ 多比例模板(锁屏/全面屏/4:3/1:1) - 🎨 **AI 超分辨率** — 集成 Real-ESRGAN,智能提升画面清晰度(On-Demand Resources 按需下载) - 🖼️ **封面帧选择** — 滑杆精选最佳静态封面 - 📱 **壁纸引导** — 系统版本适配的设置步骤引导 - 🌍 **9 语言国际化** — 简/繁中文、英、日、韩、法、西、阿拉伯语,应用内切换 - 🎯 **首次引导** — 4 页 Onboarding 流程,快速了解核心功能 - ⚙️ **设置中心** — 语言切换、缓存管理、权限状态、隐私政策 - 🕐 **最近作品** — 自动记录历史作品,缩略图预览,一键设为壁纸 ## 📱 系统要求 - iOS / iPadOS 18.0+ - Xcode 16.0+ - Swift 6.0 ## 🚀 快速开始 ### 克隆项目 ```bash git clone https://git.let5see.xyz/let5see/to-live-photo.git cd to-live-photo ``` ### 构建运行 ```bash # 模拟器构建 xcodebuild -scheme to-live-photo \ -destination 'platform=iOS Simulator,name=iPhone 16 Pro' \ build # 真机 Archive xcodebuild -scheme to-live-photo \ -configuration Release \ -destination 'generic/platform=iOS' \ -archivePath build/to-live-photo.xcarchive \ archive ``` ## 🏗️ 项目结构 ``` to-live-photo/ ├── Sources/LivePhotoCore/ # Swift Package - 核心库 │ ├── LivePhotoCore.swift # 生成管线、数据模型 │ ├── AIEnhancer/ # Real-ESRGAN 超分辨率(5 个模块) │ └── Resources/ # metadata.mov ├── to-live-photo/ # iOS App │ ├── Views/ # SwiftUI 视图(8 个) │ │ ├── OnboardingView.swift # 首次引导 │ │ ├── HomeView.swift # 首页导入 + 最近作品 │ │ ├── EditorView.swift # 编辑裁剪 │ │ ├── ProcessingView.swift # 处理进度 │ │ ├── ResultView.swift # 保存结果 │ │ ├── WallpaperGuideView.swift # 壁纸引导 │ │ ├── SettingsView.swift # 设置中心 │ │ └── PrivacyPolicyView.swift # 隐私政策 / 使用条款 │ ├── AppState.swift # 全局状态 + 导航路由 │ ├── ContentView.swift # 根视图 + 截屏保护 │ ├── DesignSystem.swift # Soft UI 设计令牌 │ ├── LanguageManager.swift # 多语言切换 │ ├── RecentWorksManager.swift # 最近作品管理 │ ├── Analytics.swift # 埋点统计 │ ├── Localizable.xcstrings # 主国际化文件(9 语言) │ └── InfoPlist.xcstrings # Info.plist 国际化 ├── scripts/ # 构建 & 国际化脚本 ├── app-store-screenshots/ # App Store 截图(8 语言 × 6 张) ├── livephotomaker-pages/ # 官网子模块(8 语言) └── docs/ # 文档 ``` ## 🔧 技术架构 ### 生成管线 ``` normalize → extractKeyFrame → aiEnhance → writePhotoMetadata → writeVideoMetadata → saveToAlbum → validate ``` ### 核心参数 | 参数 | 默认值 | 说明 | |-----|-------|-----| | 时长 | 0.917s | 与 iPhone 原生 Live Photo 一致 | | 分辨率 | 1080×1920 | 竖屏最大,可配置兼容模式降至 720p | | 帧率 | 60fps | 兼容模式可降至 30fps | | 编码 | H.264 | 兜底策略确保兼容性 | | HDR | 转 SDR | 壁纸场景更稳定 | ### AI 超分辨率 - 模型:Real-ESRGAN x4plus(Core ML,通过 On-Demand Resources 按需下载) - 处理:512×512 分块 + 64px 重叠 + 流式线性混合(内存优化) - 格式转换:vImage 加速 BGRA↔RGBA - 放大:约 2.25x(输入 512→输出 2048) ## 🌍 国际化 支持 9 种语言,应用内实时切换: | 语言 | 代码 | |-----|------| | 简体中文 | zh-Hans | | 繁体中文 | zh-Hant | | English | en | | 日本語 | ja | | 한국어 | ko | | Français | fr | | Español | es | | العربية | ar | | 跟随系统 | — | ## 📋 开发规范 ### Git 提交类型 - `feat`: 新功能 - `fix`: 修复缺陷 - `refactor`: 重构(行为不变) - `chore`: 构建、依赖、工具 - `docs`: 仅文档 ### 代码规范 - 遵循 `DesignSystem.swift` 令牌,禁止硬编码颜色/间距 - 新增 View 必须包含 `accessibilityLabel` - 新增 View 必须适配深色模式和 iPad - 触控目标 ≥ 44pt ## 📄 文档 | 文档 | 说明 | |-----|-----| | [CLAUDE.md](CLAUDE.md) | AI 助手指令(宪法文档) | | [TASK.md](TASK.md) | 里程碑与任务追踪 | | [docs/USER_GUIDE.md](docs/USER_GUIDE.md) | 用户使用手册 | | [docs/TEST_MATRIX.md](docs/TEST_MATRIX.md) | 测试用例矩阵 | | [docs/APP_STORE_METADATA.md](docs/APP_STORE_METADATA.md) | 上架信息 | | [docs/APP_STORE_METADATA_I18N.md](docs/APP_STORE_METADATA_I18N.md) | 多语言上架信息 | ## 📜 许可证 MIT License - 详见 [LICENSE](LICENSE) ---

Made with ❤️ for iOS Live Photos