Files

2.4 KiB
Raw Permalink Blame History

Velix-MPV-Core Memory

  • 项目:独立 HarmonyOS MPV 播放内核,禁止混入 Velix 主应用源码。
  • 当前阶段:Phase 5 CODE COMPLETE / emulator-network validation pending;GPU INTEROP MAPPER 未进入;默认软件解码与网络播放公共 API 已构建验证。
  • 基线:MPV 182fa6ca49f455cadb884858f386e2f00540aeb7,分支 harmony-port。
  • SDK:OpenHarmony API 24 / 6.1.1.125 / aarch64-linux-ohos / Clang 15.0.4。
  • 关键结论:首版 GLES+EGL+libmpv Render API;OHAudio AO;官方 FFmpeg OHCodec 路线。
  • Phase 1 产物:build/ohos-arm64/prefix/lib/libmpv.so.2.5.0,AArch64 ELF,OpenGL Render API symbols 完整;当前默认重建大小约 34.3 MB。
  • 远程:origin 为私有 Gitea 仓库,默认分支 harmony-port;upstream 为 MPV 官方仓库。
  • Phase 4.5:独立 ../Velix-FFmpeg-Harmony,分支 harmony-ohcodec-export,远程 tip 990614364f;MPV 通过 scripts/build-mpv-ohos-ffmpeg-harmony.sh 选择其 prefix。
  • Phase 2:playback_lab/ 独立 HAP,XComponent/OHNativeWindow/EGL/libmpv/软件解码已通;实体设备待验。
  • Phase 3:audio/out/ao_harmony.c + OHAudio pull callback、pause/flush/clock/metrics 已通;实体机路由/A-V sync/压力待验。
  • Phase 4:IMGFMT_OHCODEC、hwdec=ohcodec、API24 capability adapter、direct-surface experimental driver、软件构建矩阵、Playback Lab 诊断已提交;FFmpeg 保持 upstream。
  • Phase 4 边界:官方 OHCodec hwcontext/decoder 仅提供 surface 输出,NativeBuffer→EGL 仅做禁用默认 API probe,未宣称零拷贝/HDR/真实硬件帧;详见 DOCS/OHCODEC_GPU_INTEROP_DESIGN.md。
  • Phase 4.5 边界:FFmpeg export 模式不调用 RenderOutputBuffer,NativeBuffer/accessor/refcount/build probes 已完成;crop/fence/真实硬解仍需设备验证,harmony-ohcodec-gl 继续 disabled。
  • Phase 5:include/mpv/harmony_playback.h + player/harmony_playback.c 提供不暴露 mpv 类型的稳定 PlaybackRequest/Track/Media/Network/State/Error API;Playback Lab 已接入请求 headers、脱敏、轨道、字幕和诊断面板。
  • Phase 5 构建:默认、software、FFmpeg-Harmony 三套 AArch64 libmpv 构建及 Native/ArkTS 编译通过;HAP PackageHap 因当前环境缺 Java Runtime 未完成,网络/HLS/实体设备运行待验证。
  • 索引:memory/projects.md、memory/infra.md、memory/lessons.md、memory/2026-08-28.md。