# moonlight-ohos **Repository Path**: Atian_Lee/moonlight-ohos ## Basic Information - **Project Name**: moonlight-ohos - **Description**: A Moonlight (https://moonlight-stream.org/) client implementation on HarmonyOS Next. - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 12 - **Created**: 2025-01-06 - **Last Updated**: 2025-01-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README MoonlightOH =========== ![showcase](docs/resources/showcase.gif) Yet another Sunshine client implementation on HarmonyOS Next. Other port(s) I know: * [moonlight-harmonyos](https://github.com/likuai2010/moonlight-harmonyos) Current state ------------- * [x] Add Sunshine server on LAN with static IP:port manually. * [x] Streaming 1080p with software H.264 decoder on Windows X86 emulator. * [x] Some ArkTS UI prompts are now triggered by Limelight runtime. * [x] Metrics overlay. * [x] Touch support. * [x] Decode and play streamed audio. * [x] Layered stream preference, global - server - app. * [x] Hook back action of streaming page to dialog for config and exit. * [x] Exit, or end streaming. * [x] Configure video stat hide or show. * [x] Configure control methods. * [x] Virtual trackpad. * [x] Hardware decoding & HDR10. * On Pura 70 Pro, H.256 HDR10 decoding latency 2K typical ~9ms, 4K typical ~15ms. * [x] Virtual text input, holdable modifier keys and function keys. Roadmap ------- __No HarmonyOS Next hardware required:__ * [ ] Configurable virtual macro buttons, remember it on a per-app basis. * [ ] Configurable layout, remember it on a per-app basis. * [ ] Rendering area. * [ ] Virtual buttons. * [ ] Configure default control method in stream preference page. * [ ] More metrics. * [ ] Report estimated RTT via `LiGetEstimatedRttInfo()`. * [ ] Report audio streaming stats. * [ ] Support 16:10 resolutions or negotiate with Sunshine server. __HarmonyOS Next hardware required:__ * [ ] mDNS discovery. * Currently the API is buggy, it returns empty-string for address and -1 for port, service name is correct though... * [ ] Physical mouse and keyboard support. * [ ] Performance optimizations. * [ ] Eliminate context switching, e.g. the render output thread. * [ ] Support pen event. __Possibly will be supported by HUAWEI in the future:__ * [ ] Controller over BLE / SLE, driver and wiring. __Personally not interested, however noted here anyway:__ * WAN streaming. * Virtual controller. * Vertical streaming and automatic orientation switching. * Handle stream change. * Controller over USB.