A local desktop and iPad remote for the OPPO BDP-105D. The Windows computer hosts the touch-friendly interface and bridges browser requests to OPPO's MediaControl HTTP service.
This is an independent, unofficial project intended for owners of legacy OPPO players. It is not affiliated with or endorsed by OPPO Digital.
- Windows 10 or later
- Node.js 18 or later
- The computer, iPad and player connected to the same local network
Double-click start.ps1, then open http://localhost:8095. This is mock mode: the
interface works, but no commands are sent to the player.
-
Connect the computer and OPPO to the same home network.
-
Enable Quick Start on the OPPO if power-on control is required.
-
Open PowerShell in this folder and run:
.\start.ps1 -Apply -DebugMode -
Open the displayed iPad address in Safari.
If automatic discovery is blocked by the router or Windows firewall, enter the OPPO's
IP address in config.json, then start it again.
On iPad, use Safari's Share menu and choose Add to Home Screen.
- Complete network remote key surface, including setup, picture, Darbee, Pure Audio, disc and navigation controls.
- Verified live player discovery, MediaControl sign-in, firmware and volume status.
- OPPO callback listener for heartbeat and asynchronous playback/player events.
- Live USB folder browsing, direct file playback and real Now Playing metadata.
- Disc-aware status for CD, SACD, DVD and Blu-ray transport control.
- Audio CD track list, tap-to-play selection and live CD-Text metadata.
- Embedded USB artwork and OPPO-provided audio CD album covers.
- Automatic switching from USB playback back to an already-loaded disc.
- Responsive desktop and iPad interface with keyboard navigation.
- Local-only operation; no cloud account or external service.
- Safe mock mode by default. Live commands require
-Apply.
Run the complete syntax and automated test suite with:
npm run check
The application starts in mock mode unless -Apply is supplied, preventing accidental
commands during interface testing.
The remote operates entirely on the local network. It does not require a cloud service, analytics account or external API.
Released under the MIT License.
The connection uses the player HTTP service on port 436 and a local callback listener on port 4360. The media protocol and remote commands were recovered from OPPO's signed legacy client and verified against a live BDP-105D.