Files
Velix-MPV-Core/memory/projects.md
T

11 KiB
Raw Blame History

Projects

Velix-MPV-Core

  • 当前状态:Phase 7 CODE COMPLETE / EMULATOR INTEGRATION VERIFIED / DEVICE VALIDATION PENDING;Core 提交 14149854b8 已推送 origin/harmony-port。

  • Phase 7 产物:include/velix/core.h、sdk/native/、scripts/package-velix-core-sdk.sh、scripts/verify-velix-core-sdk.sh 与 DOCS/CORE_*.md/集成文档;SDK ABI 版本 0x000100,仅导出 3 个 velix_core_get_* C ABI 符号。

  • 主 App:../Velix 已通过 scripts/sync-velix-core-sdk.sh 接入预编译 Core,新增 PlaybackEngine、MpvPlaybackEngine、PlaybackController、PlayerPage;release/debug HAP 均可打包,产物为 Velix/entry/build/default/outputs/default/entry-default-unsigned.hap。

  • 模拟器验收:PlayerPage surface/EGL/mpv READY;打包 sample MP4 本地播放、暂停、seek、软件解码统计、release 通过;HTTP URL/headers 路径已接入但受控宿主 HTTP 试验未形成稳定成功证据,实体机与真实网络待补。主 App 已于 Phase 8 建立独立 Git。

  • Phase 8 UI:主 App ../Velix 已初始化独立 Git,提交 058c7a8;HomeSource、Discovery/Media Provider 边界、Mock/TMDB skeleton、RemoteImage/cache、Source Capsule/Sheet、Floating Navigation、Home/Detail、Player token integration 已完成。TMDB live credentials 已在本地注入并完成模拟器验证;Core 未修改。

  • Phase 8 模拟器:127.0.0.1:5555 已安装主 App HAP;首页远程图片、来源 Sheet、Hero → Detail、PlayerPage 本地 MP4 均已回归。截图见 ../Velix/design-qa.md。

  • Alpha 诊断基础:主 App 提交 33c39ff;VelixLogger 统一接入并自动脱敏,内存 ring 1000 条、本地日志 2 MiB/5 级轮转;LogViewer 支持实时刷新、暂停、Level/Category/关键词筛选、复制与清空;诊断模式支持 15/30 分钟;ZIP 导出已通过系统文件选择器在模拟器保存验证;播放异常结束 marker 已接入。debug/release unsigned HAP 均构建成功并启动无崩溃。

  • Alpha 当前阻塞:真实 Emby 4.8.11.0 账号已完成认证、库/详情/搜索/PlaybackInfo 及 HTTP/HTTPS Direct Play+Session E2E;4.9.x 目标版本、其他 CA 链、AGC .p7b Profile、真机与压力回归仍待完成。

  • VUI1:主 App 沉浸式视觉重构已完成;AmbientPalette 驱动全屏 Hero/页面氛围色,浮层共用 1–4 级 MaterialSurface,底部导航使用 HDS HdsTabs immersive material。Pura 90 Pro Max 已回归首页、Sheet、详情、播放器自动隐藏和深色;MatePad Pro 13 已回归宽屏首页与详情分栏。Core 未修改,主 App 等待提交。

  • VUI1 修正:首页的来源胶囊、搜索与个人入口已从 Scroll 抽离,与底部导航一样作为固定浮层;Pura 90 Pro Max 上滑回归通过。

  • VUI1 首页重构:首页改为 Full-Bleed Immersive Home;Hero 的 backdrop/transition/ambient browsing surface 三层连续,环境色改用语义 Ambient Palette,顶部与 HDS 底栏统一使用动态氛围材质;Pura 90 Pro Max 初始态与滚动回归通过,主 App 待提交。

  • VUI1 底栏修正:保留 HDS 沉浸光感底材,Tab 前景保持不透明,选中图标继续使用当前影片的环境取色;Pura 90 Pro Max 回归通过。

  • VUI1 Scene Continuity:首页背景重构为跨 Hero 与第一分区的单一 Background Scene;Backdrop 长尾衰减至正文,正文 Column 透明,Hero 轮播时背景 URL 与环境色同步刷新;Pura 90 Pro Max 已回归。

  • VUI1 Motion Handoff:保留双层 artwork 复用;Hero visual 底部加入纵向渐隐交接区,背景仅在原生 Swiper settle 后以 420ms 固定位置过渡;拖动/回弹/快速 flick 已在 127.0.0.1:5555 回归。

  • VUI1 VUI3:Hero 顶部保持原生 100% 跟手,底部 160–220vp 以 smoothstep 位移渐衰 + Alpha 交接固定同图背景;静止、30/50% 中帧、回弹、flick 与 settle 已回归。

  • VUI1 TMDB:生产首页已移除 Mock fallback,接入 API key/Bearer、统一 DTO/Mapper、内存+Preferences 缓存、详情/TV season/搜索;模拟器已验证无 key 与 401 错误态不崩溃,合法 Bearer Token 的 live feed 已回归。

  • VUI1 TMDB edge:详情等待凭据初始化,Hero 过滤 person,保存 imdbId/tvdbId,详情入口不再伪装播放,演员可展开查看全部;应用提交 c975fb2。

  • VUI1 TMDB search:搜索结果已接入 total_pages/total_results 与加载更多,应用提交 f98e7e8。

  • VUI1 TMDB detail completeness:补齐 TV 日期/Specials/外部 ID/相关推荐回退和详情错误重试态,应用提交 42c23e5。

  • VUI1 TMDB live verification:应用提交 4380ab9;模拟器实测首页 6 Hero/7 分区/130 项,Reacher TV 详情自动加载第 1 季与切换第 2 季各 8 集,the 搜索分页由 19 增至 39 条;映射数量以 [TMDB] 安全日志记录。

  • VUI1 详情页修正:详情页底部导航移除,剧照/海报保留;详情 Hero 优先显示 TMDB logo 艺术图,顶部按钮下移 22vp;CSR 已按 P-256 EC/SHA256withECDSA 重新生成。

  • VUI1 HTTP/打包验证:emulator 已播放公开 HTTP MP4;111.cer 已导入匹配 .p12,Release HAP 已构建,但正式签名包还缺 AGC 对应 .p7b Profile。

  • Emby 阶段:已完整解析项目根 embyapi.json(OpenAPI 3.0.1、356 paths、447 operations),生成 ../docs/emby/ 五份清单/模型/播放链路/风险文档;主 App 提交 2d3c255/ff28ae1 加入 EmbyApiClient、EmbyRequestContext、EmbyAuthProvider 与 DTO 基础骨架,未实现具体业务 endpoint;debug HAP 构建通过。

  • Emby Phase 8.1:主 App 提交 1cd396d。Source Capsule 已可打开添加 Emby 表单;EmbyServerUrlNormalizer 支持 host/host:port、http(s) 与单一 /emby 后缀;VelixDeviceIdentity 持久化安装级 DeviceId;EmbySecureTokenStore 使用 Asset persistent/accessibility tags(API 24 SDK 需目标签名确认 STORE_PERSISTENT_DATA);EmbyServerManager 支持多服务器、活动源、登出/移除与 Token 失效;EmbyRuntimeProbe 执行 PublicSystemInfo、AuthenticateByName、User、System、Views、MediaFolders、Items 和条件 PlaybackInfo,输出脱敏 EMBY_RUNTIME_VALIDATION.md。模拟器已安装并启动 debug HAP,表单必填错误态可见、无新增崩溃;真实 Emby 4.9.x 网络/ProviderIds/ticks/PlaybackInfo 仍待运行时验证。

  • Emby 连接实测:服务器返回 SaturDay.Lite、Emby 4.8.11.0;该实例要求 Pw 登录字段,修复后 /Users/AuthenticateByName、用户/库/Items/Resume/Latest/NextUp 均成功,Token 可在应用重启后恢复。/Search/Hints 空数组由 Items 搜索回退;Series Seasons/Episodes 与 PlaybackInfo 已验证。应用 CA bundle 已接入 Core,HTTP/HTTPS Direct Play 与 Playing/Progress/Stopped 204 均已在模拟器验证。

  • Alpha Emby foundation:主 App 提交 540aee5,补齐 Emby Resume/Latest/Next Up、Series Seasons/Episodes、/Search/Hints 分页搜索、ProviderIds 优先资源匹配、DirectPlay PlaybackInfo/URL/headers;PlaybackLaunch.remoteSession 已接入 PlayerPage 的 Start/8 秒节流 Progress/Stop。后续兼容修复尚未提交,当前产物仍为 unsigned debug HAP。

  • Alpha playback/settings:主 App 提交 30aa760,UserData.PlaybackPositionTicks 进入 PlaybackLaunch/Core 起播位置,详情页提供继续/从头,音轨/字幕选择会同步 Emby Session;暂停、Seek、切轨强制上报 Progress。新增持久化 Settings/About 入口,PlayerPage 读取快进/快退时长;Debug/Release HAP 与模拟器启动通过。

  • Alpha interactions:主 App 提交 b9380df;播放器加入 Slider、速度、音轨/字幕、双击快进/快退和长按临时倍速,前后台桥接按 Alpha 策略暂停并补报进度;详情骨架/错误重试、搜索/连接诊断入口、Emby 源退出/移除、媒体卡长按上下文菜单已完成。模拟器已验证长按菜单、详情跳转及真实 Emby HTTP/HTTPS Direct Play,无新增崩溃;真机横屏、压力和正式签名仍待完成。

  • Phase 6 产物:benchmark/runner/run_emulator.py 与场景 manifest;启动 P50/P95 506/1150ms,seek recovery P50/P95 277/631ms;100 load/stop、200 play/pause 无错误,PSS/精确 heap/CPU permille unavailable。

  • Phase 6 文档:DOCS/PHASE6_STATUS.md、PERFORMANCE_METRICS.md、PERFORMANCE_CHANGES.md、BENCHMARK_METHODOLOGY.md、STARTUP_PIPELINE.md、SEEK_PIPELINE.md、BUFFERING_MODEL.md。

  • 状态:Phase 5 CODE COMPLETE / emulator HTTP Range verified;GPU INTEROP MAPPER 未进入;HTTPS/HLS、网络字幕、鉴权、重定向运行验证与实体机验收未完成。

  • 已完成:远程闭环、固定依赖、隔离工具链、C/C++ 探针、FFmpeg/OpenSSL/字体栈/libplacebo、AArch64 libmpv.so.2.5.0、ABI/符号/污染/许可证审计。

  • 产物:build/ohos-arm64/prefix/lib/libmpv.so.2.5.0,当前重建 34,346,792 bytes;软件构建位于 build/ohos-arm64/build/mpv-software/libmpv.so.2.5.0,FFmpeg-Harmony 构建位于 build/ohos-arm64/build/mpv-ffmpeg-harmony/libmpv.so.2.5.0;DT_NEEDED 含 libohaudio.so。

  • 已完成:独立 HAP、XComponent/OHNativeWindow、EGL ES3、libmpv OpenGL Render、软件解码本地 MP4 首帧、播放控制与释放重入。

  • 已完成:ao_harmony PCM float32→S16 fallback、采样率/mono-stereo 协商、pause/resume/stop/flush/release、timestamp epoch、starvation/flush metrics;Phase 5 HAP 已用 DevEco JBR 完成打包并安装模拟器。

  • 已完成:OHCodec H.264/HEVC capability 查询、hwdec=ohcodec direct-surface 实验驱动、显式软件回退、Playback Lab requested/actual/metrics 诊断、软件/硬解/GL probe 构建矩阵;FFmpeg 未修改。

  • 边界:官方 OHCodec 上游没有非 surface 的可导入硬件帧路径,EGL/NativeBuffer 仅保留禁用默认探针;无零拷贝、HDR 或硬件帧产出声明。

  • Phase 4.5:../Velix-FFmpeg-Harmony branch harmony-ohcodec-export 已推送 tip f3a036c695;跨 origin 重定向丢弃敏感自定义头/cookie,scripts/build-mpv-ohos-ffmpeg-harmony.sh 已消费其 prefix 构建 MPV。

  • 待办:实体机 H.264/HEVC capability、surface 生命周期/stride/crop/fence、真实 GPU 互操作与 A/V sync;报告见两个仓库的 DOCS/OHCODEC_*.md 与 DOCS/PHASE4_5_STATUS.md。

  • Phase 5 已完成:稳定 C API、请求/headers 会话隔离、错误/状态、轨道/媒体/网络/字幕控制、Playback Lab 诊断 UI 与文档;C++ 外壳已统一委托 C API,默认/软件/FFmpeg-Harmony 构建及 HAP 打包通过;模拟器已完成本地 MP4 与宿主受控 HTTP Range MP4 播放,HTTPS/HLS/网络字幕/鉴权/重定向运行验证待补。