# screenMDC third-party notices

This development receiver is a combined GPL-3.0 work. See LICENSE.
No affiliation with Apple or Amazon. AirPlay names describe interoperability.

Protocol and Android rendering integration derived from:
https://github.com/gzhanlei/uxplay-android
Pinned commit: d9646d76cd416a79c5d800d7f306f1b11c7e4b2d
Original root license: GPL-3.0. Source under third_party/uxplay-android.
Java files NativeBridge, VideoSink, AudioSink and WorkerThread are derived from this project.

UxPlay: https://github.com/FDH2/UxPlay — GPL-3.0 root, individual file notices retained.
Vendored snapshot from the pinned Android port, not claimed to be latest upstream.
Derived from RPiPlay, shairplay, dsafa22 and other authors identified in source headers.
llhttp: MIT (license in uxplay/lib/llhttp/LICENSE-MIT).
playfair: included under the UxPlay combined-work license; per-file notices retained.
libplist 2.4.0: LGPL-2.1-or-later core; source, COPYING and COPYING.LESSER retained
in third_party/uxplay-android/deps/libplist. Not all upstream tools are linked.

OpenSSL 3.5.9: Apache-2.0, rebuilt locally from official source, no prebuilt library imported.
Archive SHA-256: 603f5602e2eef00d77fbd429d34dcd5822bb301757a1bc9cdb24c670f1eb859a
https://github.com/openssl/openssl/releases/tag/openssl-3.5.9
Build: android-arm API 24, no-shared no-tests no-docs no-legacy no-comp, NDK r27c.
Source archive/build instructions must accompany any public binary distribution.
Local source is currently in /tmp/screenmdc-tools/openssl-src; retain it before distributing.

Changes made for screenMDC on 2026-11-05:
- package/JNI renamed to it.screenmdc.tv; original Activity replaced with foreground-only UI;
- original discovery/service replaced; no boot startup, overlay permission or auto-launch;
- ARMv7 native build and persistent receiver identity; H.264 advertised initially;
- removed diagnostic PCM recording from AudioSink;
- fixed discovery public-key ownership and native-thread VM detach;
- added mirror payload/control allocation limits and safe fragmented protocol parsing;
- input checks and rendered-frame telemetry; new local build/native test scripts.

This is not a security certification or a completed license/provenance audit of every upstream file.
Before public release, assemble complete corresponding source, build dependencies and notices.

screenMDC 0.3.0 (2026-11-05): original coordinated TV UI/brand and static website;
OTA implementation adapted from the user's own CMDC streaMDC project, constrained to
screen.cmdc.it, with same-signer verification and OS installation consent.
Standalone release build now applies R8, AAPT2 optimization, native symbol stripping and
ZIP compression. JNI symbols and verifier public APIs are deliberately retained.
Public source bundles generated by scripts/prepare-release.mjs include the official
OpenSSL archive and the required corresponding source/build instructions.
